2 # GNU MediaGoblin -- federated, autonomous media hosting
3 # Copyright (C)
2011 MediaGoblin contributors. See AUTHORS.
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU Affero General Public License as published by
7 # the Free Software Foundation, either version
3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU Affero General Public License for more details.
15 # You should have received a copy of the GNU Affero General Public License
16 # along with this program. If not, see
<http://www.gnu.org/licenses
/>.
19 {% macro render_pagination(request, pagination,
20 base_url=None, preserve_get_params=True) %}
21 {# only display if {{pagination}} is defined #}
22 {% if pagination and pagination.pages
> 1 %}
24 {% set base_url = request.path_info %}
27 {% if preserve_get_params %}
28 {% set get_params = request.GET %}
30 {% set get_params = {} %}
33 <div class=
"pagination">
35 {% if pagination.has_prev %}
36 {% set prev_url = pagination.get_page_url_explicit(
38 pagination.page -
1) %}
39 <a href=
"{{ prev_url }}"><img class=
"pagination_arrow" src=
"/mgoblin_static/images/pagination_left.png" alt=
"Previous page" /></a>
40 <a href=
"{{ prev_url }}">{% trans %}Newer{% endtrans %}
</a>
42 {% if pagination.has_next %}
43 {% set next_url = pagination.get_page_url_explicit(
45 pagination.page +
1) %}
46 <a href=
"{{ next_url }}">{% trans %}Older{% endtrans %}
</a>
47 <a href=
"{{ next_url }}"><img class=
"pagination_arrow" src=
"/mgoblin_static/images/pagination_right.png" alt=
"Next page" /></a>
51 {%- for page in pagination.iter_pages() %}
53 {% if page != pagination.page %}
54 <a href=
"{{ pagination.get_page_url_explicit(
56 page) }}">{{ page }}
</a>
61 <span class=
"ellipsis">…
</span>