# HG changeset patch # User ymh # Date 1371545485 -7200 # Node ID ec738ea574a7a5c7af4dd323d9021df1a150e0db # Parent c65f3713c7bd129ed6f819479f6f9dc1924b6d9e improve pagination add total nb to request diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/__init__.py --- a/src/jocondelab/__init__.py Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/__init__.py Tue Jun 18 10:51:25 2013 +0200 @@ -1,4 +1,4 @@ -VERSION = (0, 2, 0, "final", 0) +VERSION = (0, 3, 0, "final", 0) def get_version(): diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/locale/en/LC_MESSAGES/django.mo Binary file src/jocondelab/locale/en/LC_MESSAGES/django.mo has changed diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/locale/en/LC_MESSAGES/django.po --- a/src/jocondelab/locale/en/LC_MESSAGES/django.po Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/locale/en/LC_MESSAGES/django.po Tue Jun 18 10:51:25 2013 +0200 @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-06-17 13:52+0200\n" +"POT-Creation-Date: 2013-06-18 10:42+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -88,13 +88,19 @@ msgid "Search" msgstr "Search" +# python-format #: templates/jocondelab/partial/pagination.html:6 -#: templates/jocondelab/partial/pagination.html:8 +#, python-format +msgid "Total number of term in the request : %(total_count)s" +msgstr "Total request: %(total_count)s" + +#: templates/jocondelab/partial/pagination.html:10 +#: templates/jocondelab/partial/pagination.html:12 msgid "previous" msgstr "previous" -#: templates/jocondelab/partial/pagination.html:24 -#: templates/jocondelab/partial/pagination.html:26 +#: templates/jocondelab/partial/pagination.html:27 +#: templates/jocondelab/partial/pagination.html:29 msgid "next" msgstr "next" diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/locale/fr/LC_MESSAGES/django.mo Binary file src/jocondelab/locale/fr/LC_MESSAGES/django.mo has changed diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/locale/fr/LC_MESSAGES/django.po --- a/src/jocondelab/locale/fr/LC_MESSAGES/django.po Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/locale/fr/LC_MESSAGES/django.po Tue Jun 18 10:51:25 2013 +0200 @@ -3,12 +3,11 @@ # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-06-17 13:52+0200\n" +"POT-Creation-Date: 2013-06-18 10:42+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -91,12 +90,17 @@ msgstr "Rech." #: templates/jocondelab/partial/pagination.html:6 -#: templates/jocondelab/partial/pagination.html:8 +#, python-format +msgid "Total number of term in the request : %(total_count)s" +msgstr "Total requête: %(total_count)s" + +#: templates/jocondelab/partial/pagination.html:10 +#: templates/jocondelab/partial/pagination.html:12 msgid "previous" msgstr "préc." -#: templates/jocondelab/partial/pagination.html:24 -#: templates/jocondelab/partial/pagination.html:26 +#: templates/jocondelab/partial/pagination.html:27 +#: templates/jocondelab/partial/pagination.html:29 msgid "next" msgstr "suiv." diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/settings.py --- a/src/jocondelab/settings.py Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/settings.py Tue Jun 18 10:51:25 2013 +0200 @@ -187,7 +187,7 @@ DBPEDIA_URI_TEMPLATE = "http://fr.dbpedia.org/resource/%s" TERM_LIST_PAGE_SIZE = 20 -PAGINATOR_VISIBLE_RANGE = 7 +PAGINATOR_VISIBLE_RANGE = 5 from .config import * # @UnusedWildImport diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/templates/jocondelab/partial/pagination.html --- a/src/jocondelab/templates/jocondelab/partial/pagination.html Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/templates/jocondelab/partial/pagination.html Tue Jun 18 10:51:25 2013 +0200 @@ -1,13 +1,16 @@ {% load i18n %} {% load core_extras %} {% with page_obj.number as current_page_nb %} +
+
+{% blocktrans with total_count=page_obj.paginator.count %}Total number of term in the request : {{ total_count }}{% endblocktrans %} +
-{% endwith %} \ No newline at end of file +
+{% endwith %} diff -r c65f3713c7bd -r ec738ea574a7 src/jocondelab/utils.py --- a/src/jocondelab/utils.py Mon Jun 17 14:26:45 2013 +0200 +++ b/src/jocondelab/utils.py Tue Jun 18 10:51:25 2013 +0200 @@ -39,19 +39,26 @@ class JocondePage(Page): + visible_range = getattr(settings, 'PAGINATOR_VISIBLE_RANGE', 5) + start_range = getattr(settings, 'PAGINATOR_START_RANGE', visible_range/2) + def __get_start_range(self): - return max(1,self.number-settings.PAGINATOR_VISIBLE_RANGE/2) + return max(1,self.number-self.visible_range/2) def __get_end_range(self): - return min(self.paginator.num_pages, self.number+settings.PAGINATOR_VISIBLE_RANGE/2) + 1 + return min(self.paginator.num_pages, self.number+self.visible_range/2) + 1 - def visible_page_range(self): + def visible_page_range(self): start = self.__get_start_range() end = self.__get_end_range() - return range(start , end) - - def ellipsis_before(self): - return self.__get_start_range() > 1 - - def ellipsis_after(self): - return self.__get_end_range() < self.paginator.num_pages + + ranges = set(range(1,self.start_range+1)) | set(range(start , end)) | set(range(self.paginator.num_pages - self.start_range +1, self.paginator.num_pages+1)) + prev = None + res = [] + for i in sorted(ranges): + if prev and i-prev > 1: + res.append(0) + res.append(i) + prev = i + return res + \ No newline at end of file