diff --git a/wagtail/wagtailadmin/utils.py b/wagtail/wagtailadmin/utils.py index a2dd39b8f..45d7c3512 100644 --- a/wagtail/wagtailadmin/utils.py +++ b/wagtail/wagtailadmin/utils.py @@ -1,21 +1,13 @@ from wagtail.wagtailcore.models import Page - - -def usage_count(self): - """The number of times that an obect has been used""" - count = 0 - relations = self._meta.get_all_related_objects( - include_hidden=True, - include_proxy_eq=True - ) - for relation in relations: - count += relation.model._base_manager.filter( - **{relation.field.name: self.id} - ).count() - return count +from django.conf import settings def used_by(self): + """Returns the pages that an object was used in.""" + + if not hasattr(settings, 'USAGE_COUNT') or not settings.USAGE_COUNT: + return [] + related_objects = [] result = [] @@ -34,3 +26,12 @@ def used_by(self): result.append(r.page) return result + + +def usage_count(self): + """Returns the number of times that an obect has been used in a page""" + + if not hasattr(settings, 'USAGE_COUNT') or not settings.USAGE_COUNT: + return None + + return len(used_by(self)) diff --git a/wagtail/wagtaildocs/templates/wagtaildocs/documents/usage.html b/wagtail/wagtaildocs/templates/wagtaildocs/documents/usage.html index 8db42fa07..b86571760 100644 --- a/wagtail/wagtaildocs/templates/wagtaildocs/documents/usage.html +++ b/wagtail/wagtaildocs/templates/wagtaildocs/documents/usage.html @@ -6,12 +6,45 @@ {% include "wagtailadmin/shared/header.html" with title="Usage" %}
-
{% endblock %} diff --git a/wagtail/wagtailimages/templates/wagtailimages/images/usage.html b/wagtail/wagtailimages/templates/wagtailimages/images/usage.html index e99ddc313..5f1c268fd 100644 --- a/wagtail/wagtailimages/templates/wagtailimages/images/usage.html +++ b/wagtail/wagtailimages/templates/wagtailimages/images/usage.html @@ -6,12 +6,45 @@ {% include "wagtailadmin/shared/header.html" with title="Usage" %}
-
{% endblock %} diff --git a/wagtail/wagtailsnippets/templates/wagtailsnippets/snippets/usage.html b/wagtail/wagtailsnippets/templates/wagtailsnippets/snippets/usage.html index 8db42fa07..bf1fc5eed 100644 --- a/wagtail/wagtailsnippets/templates/wagtailsnippets/snippets/usage.html +++ b/wagtail/wagtailsnippets/templates/wagtailsnippets/snippets/usage.html @@ -6,12 +6,46 @@ {% include "wagtailadmin/shared/header.html" with title="Usage" %}
-
+ {% endblock %}