diff --git a/docker/settings.py b/docker/settings.py index 2ea1c87..3d169f0 100644 --- a/docker/settings.py +++ b/docker/settings.py @@ -155,6 +155,7 @@ INSTALLED_APPS = ( 'axes', 'rest_framework', 'corsheaders', + 'bootstrap_pagination', ) AUTHENTICATION_BACKENDS = [ diff --git a/layerindex/templatetags/addurlparameter.py b/layerindex/templatetags/addurlparameter.py deleted file mode 100644 index deca130..0000000 --- a/layerindex/templatetags/addurlparameter.py +++ /dev/null @@ -1,29 +0,0 @@ -# Borrowed from http://djangosnippets.org/snippets/361/ -# Original author: johan de taeye -# With modifications from Ludwik Trammer -# -# Adds GET parameters to the current URL - -from django.template import Library, Node, TemplateSyntaxError, Variable - -register = Library() - -class AddParameter(Node): - def __init__(self, varname, value): - self.varname = Variable(varname) - self.value = Variable(value) - - def render(self, context): - req = Variable('request').resolve(context) - params = req.GET.copy() - params[self.varname.resolve(context)] = self.value.resolve(context) - return '%s?%s' % (req.path, params.urlencode()) - -def addurlparameter(parser, token): - from re import split - bits = split(r'\s+', token.contents, 2) - if len(bits) < 2: - raise TemplateSyntaxError("'%s' tag requires two arguments" % bits[0]) - return AddParameter(bits[1],bits[2]) - -register.tag('addurlparameter', addurlparameter) diff --git a/layerindex/templatetags/pagination.py b/layerindex/templatetags/pagination.py deleted file mode 100644 index aa3175f..0000000 --- a/layerindex/templatetags/pagination.py +++ /dev/null @@ -1,52 +0,0 @@ -# Borrowed from http://djangosnippets.org/snippets/2199/ -# -# Digg-like page numbering using inclusion tag - -from django import template - -register = template.Library() - -@register.inclusion_tag('pagination.html', takes_context=True) -def pagination(context, page, begin_pages=2, end_pages=2, before_current_pages=4, after_current_pages=4): - # Digg-like pages - before = max(page.number - before_current_pages - 1, 0) - after = page.number + after_current_pages - - begin = page.paginator.page_range[:begin_pages] - middle = page.paginator.page_range[before:after] - end = page.paginator.page_range[-end_pages:] - last_page_number = end[-1] - - def collides(firstlist, secondlist): - """ Returns true if lists collides (have same entries) - - >>> collides([1,2,3,4],[3,4,5,6,7]) - True - >>> collides([1,2,3,4],[5,6,7]) - False - """ - return any(item in secondlist for item in firstlist) - - # If middle and end has same entries, then end is what we want - if collides(middle, end): - end = range(max(page.number-before_current_pages, 1), last_page_number+1) - - middle = [] - - # If begin and middle ranges has same entries, then begin is what we want - if collides(begin, middle): - begin = range(1, min(page.number + after_current_pages, last_page_number)+1) - - middle = [] - - # If begin and end has same entries then begin is what we want - if collides(begin, end): - begin = range(1, last_page_number+1) - end = [] - - context.update({'page' : page, - 'begin' : begin, - 'middle' : middle, - 'end' : end}) - - return context diff --git a/requirements.txt b/requirements.txt index 61f529e..5777059 100644 --- a/requirements.txt +++ b/requirements.txt @@ -7,6 +7,7 @@ confusable-homoglyphs==3.2.0 Django>=1.11.20,<1.12 django-appconf==1.0.3 django-axes==4.5.4 +django-bootstrap-pagination==1.7.1 django-cors-headers==2.5.3 django-ipware==2.1.0 django-ranged-response==0.2.0 diff --git a/settings.py b/settings.py index 57cb64b..755759b 100644 --- a/settings.py +++ b/settings.py @@ -155,6 +155,7 @@ INSTALLED_APPS = ( 'axes', 'rest_framework', 'corsheaders', + 'bootstrap_pagination', ) AUTHENTICATION_BACKENDS = [ diff --git a/templates/layerindex/bulkchangesearch.html b/templates/layerindex/bulkchangesearch.html index 652ce23..7f6b8c9 100644 --- a/templates/layerindex/bulkchangesearch.html +++ b/templates/layerindex/bulkchangesearch.html @@ -90,8 +90,10 @@ {% if is_paginated %} - {% load pagination %} - {% pagination page_obj %} + {% load bootstrap_pagination %} +
No matching layers in database.
diff --git a/templates/layerindex/machines.html b/templates/layerindex/machines.html index 41054a3..ebbc158 100644 --- a/templates/layerindex/machines.html +++ b/templates/layerindex/machines.html @@ -64,8 +64,10 @@ {% if is_paginated %} - {% load pagination %} - {% pagination page_obj %} + {% load bootstrap_pagination %} +No unpublished layers to review.
diff --git a/templates/layerindex/updatelist.html b/templates/layerindex/updatelist.html index a6987b4..f4f786a 100644 --- a/templates/layerindex/updatelist.html +++ b/templates/layerindex/updatelist.html @@ -54,8 +54,10 @@ {% if is_paginated %} - {% load pagination %} - {% pagination page_obj %} + {% load bootstrap_pagination %} +