mirror of
https://github.com/ae-utbm/sith.git
synced 2026-03-28 22:39:43 +00:00
Add request argument to paginate_jinja and paginate_htmx
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% from "core/macros.jinja" import paginate_htmx with context %}
|
{% from "core/macros.jinja" import paginate_htmx %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{% trans %}File moderation{% endtrans %}
|
{% trans %}File moderation{% endtrans %}
|
||||||
@@ -48,6 +48,6 @@
|
|||||||
>{% trans %}Delete{% endtrans %}</button></p>
|
>{% trans %}Delete{% endtrans %}</button></p>
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{{ paginate_htmx(page_obj, paginator) }}
|
{{ paginate_htmx(request, page_obj, paginator) }}
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -118,26 +118,21 @@
|
|||||||
</nav>
|
</nav>
|
||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
{% macro paginate_jinja(current_page, paginator) %}
|
{% macro paginate_jinja(request, current_page, paginator) %}
|
||||||
{# Add pagination buttons for pages without Alpine.
|
{# Add pagination buttons for pages without Alpine.
|
||||||
|
|
||||||
This must be coupled with a view that handles pagination
|
This must be coupled with a view that handles pagination
|
||||||
with the Django Paginator object.
|
with the Django Paginator object.
|
||||||
|
|
||||||
Warnings:
|
|
||||||
This macro must be imported with context :
|
|
||||||
```jinja
|
|
||||||
{% from "core/macros.jinja" import paginate_jinja with context %}
|
|
||||||
```
|
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
|
request (django.http.request.HttpRequest): the current django request
|
||||||
current_page (django.core.paginator.Page): the current page object
|
current_page (django.core.paginator.Page): the current page object
|
||||||
paginator (django.core.paginator.Paginator): the paginator object
|
paginator (django.core.paginator.Paginator): the paginator object
|
||||||
#}
|
#}
|
||||||
{{ paginate_server_side(current_page, paginator, False) }}
|
{{ paginate_server_side(request, current_page, paginator, False) }}
|
||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
{% macro paginate_htmx(current_page, paginator) %}
|
{% macro paginate_htmx(request, current_page, paginator) %}
|
||||||
{# Add pagination buttons for pages without Alpine but supporting fragments.
|
{# Add pagination buttons for pages without Alpine but supporting fragments.
|
||||||
|
|
||||||
This must be coupled with a view that handles pagination
|
This must be coupled with a view that handles pagination
|
||||||
@@ -145,31 +140,26 @@
|
|||||||
|
|
||||||
The replaced fragment will be #content so make sure you are calling this macro inside your content block.
|
The replaced fragment will be #content so make sure you are calling this macro inside your content block.
|
||||||
|
|
||||||
Warnings:
|
|
||||||
This macro must be imported with context :
|
|
||||||
```jinja
|
|
||||||
{% from "core/macros.jinja" import paginate_jinja with context %}
|
|
||||||
```
|
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
|
request (django.http.request.HttpRequest): the current django request
|
||||||
current_page (django.core.paginator.Page): the current page object
|
current_page (django.core.paginator.Page): the current page object
|
||||||
paginator (django.core.paginator.Paginator): the paginator object
|
paginator (django.core.paginator.Paginator): the paginator object
|
||||||
#}
|
#}
|
||||||
{{ paginate_server_side(current_page, paginator, True) }}
|
{{ paginate_server_side(request, current_page, paginator, True) }}
|
||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
{% macro paginate_server_side(current_page, paginator, use_htmx) %}
|
{% macro paginate_server_side(request, current_page, paginator, use_htmx) %}
|
||||||
<nav class="pagination">
|
<nav class="pagination">
|
||||||
{% if current_page.has_previous() %}
|
{% if current_page.has_previous() %}
|
||||||
<a
|
<a
|
||||||
{% if use_htmx -%}
|
{% if use_htmx -%}
|
||||||
hx-get="?{{ querystring(page=current_page.previous_page_number()) }}"
|
hx-get="?{{ querystring(request, page=current_page.previous_page_number()) }}"
|
||||||
hx-swap="innerHTML"
|
hx-swap="innerHTML"
|
||||||
hx-target="#content"
|
hx-target="#content"
|
||||||
hx-push-url="true"
|
hx-push-url="true"
|
||||||
hx-trigger="click, keyup[key=='ArrowLeft'] from:body"
|
hx-trigger="click, keyup[key=='ArrowLeft'] from:body"
|
||||||
{%- else -%}
|
{%- else -%}
|
||||||
href="?{{ querystring(page=current_page.previous_page_number()) }}"
|
href="?{{ querystring(request, page=current_page.previous_page_number()) }}"
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
>
|
>
|
||||||
<button>
|
<button>
|
||||||
@@ -187,12 +177,12 @@
|
|||||||
{% else %}
|
{% else %}
|
||||||
<a
|
<a
|
||||||
{% if use_htmx -%}
|
{% if use_htmx -%}
|
||||||
hx-get="?{{ querystring(page=i) }}"
|
hx-get="?{{ querystring(request, page=i) }}"
|
||||||
hx-swap="innerHTML"
|
hx-swap="innerHTML"
|
||||||
hx-target="#content"
|
hx-target="#content"
|
||||||
hx-push-url="true"
|
hx-push-url="true"
|
||||||
{%- else -%}
|
{%- else -%}
|
||||||
href="?{{ querystring(page=i) }}"
|
href="?{{ querystring(request, page=i) }}"
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
>
|
>
|
||||||
<button>{{ i }}</button>
|
<button>{{ i }}</button>
|
||||||
@@ -202,13 +192,13 @@
|
|||||||
{% if current_page.has_next() %}
|
{% if current_page.has_next() %}
|
||||||
<a
|
<a
|
||||||
{% if use_htmx -%}
|
{% if use_htmx -%}
|
||||||
hx-get="?{{querystring(page=current_page.next_page_number())}}"
|
hx-get="?{{querystring(request, page=current_page.next_page_number())}}"
|
||||||
hx-swap="innerHTML"
|
hx-swap="innerHTML"
|
||||||
hx-target="#content"
|
hx-target="#content"
|
||||||
hx-push-url="true"
|
hx-push-url="true"
|
||||||
hx-trigger="click, keyup[key=='ArrowRight'] from:body"
|
hx-trigger="click, keyup[key=='ArrowRight'] from:body"
|
||||||
{%- else -%}
|
{%- else -%}
|
||||||
href="?{{querystring(page=current_page.next_page_number())}}"
|
href="?{{querystring(request, page=current_page.next_page_number())}}"
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
><button>
|
><button>
|
||||||
<i class="fa fa-caret-right"></i>
|
<i class="fa fa-caret-right"></i>
|
||||||
@@ -259,7 +249,7 @@
|
|||||||
{% endmacro %}
|
{% endmacro %}
|
||||||
|
|
||||||
|
|
||||||
{% macro querystring() %}
|
{% macro querystring(request) %}
|
||||||
{%- set qs = request.GET.copy() -%}
|
{%- set qs = request.GET.copy() -%}
|
||||||
{%- do qs.update(kwargs) -%}
|
{%- do qs.update(kwargs) -%}
|
||||||
{{- qs | urlencode -}}
|
{{- qs | urlencode -}}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% from 'core/macros.jinja' import user_profile_link %}
|
{% from 'core/macros.jinja' import user_profile_link, paginate_jinja %}
|
||||||
{% from 'core/macros.jinja' import paginate_jinja with context %}
|
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{% trans %}Cash register summary list{% endtrans %}
|
{% trans %}Cash register summary list{% endtrans %}
|
||||||
@@ -58,7 +57,7 @@
|
|||||||
</table>
|
</table>
|
||||||
<br>
|
<br>
|
||||||
{% if is_paginated %}
|
{% if is_paginated %}
|
||||||
{{ paginate_jinja(page_obj, paginator) }}
|
{{ paginate_jinja(request, page_obj, paginator) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% trans %}There is no cash register summary in this website.{% endtrans %}
|
{% trans %}There is no cash register summary in this website.{% endtrans %}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% from "core/macros.jinja" import paginate_jinja with context %}
|
{% from "core/macros.jinja" import paginate_jinja %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{%- trans %}Reloads list{% endtrans %} -- {{ counter.name }}
|
{%- trans %}Reloads list{% endtrans %} -- {{ counter.name }}
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
</table>
|
</table>
|
||||||
{% if is_paginated %}
|
{% if is_paginated %}
|
||||||
{{ paginate_jinja(page_obj, paginator) }}
|
{{ paginate_jinja(request, page_obj, paginator) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{%- endblock %}
|
{%- endblock %}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% from "core/macros.jinja" import paginate_jinja with context %}
|
{% from "core/macros.jinja" import paginate_jinja %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{%- trans %}Election list{% endtrans %}
|
{%- trans %}Election list{% endtrans %}
|
||||||
@@ -46,7 +46,7 @@
|
|||||||
</section>
|
</section>
|
||||||
{%- endfor %}
|
{%- endfor %}
|
||||||
{% if is_paginated %}
|
{% if is_paginated %}
|
||||||
{{ paginate_jinja(page_obj, paginator) }}
|
{{ paginate_jinja(request, page_obj, paginator) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{%- endblock %}
|
{%- endblock %}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% from 'core/macros.jinja' import user_profile_link %}
|
{% from 'core/macros.jinja' import user_profile_link %}
|
||||||
{% from 'forum/macros.jinja' import display_message, display_breadcrumb, display_search_bar %}
|
{% from 'forum/macros.jinja' import display_message, display_breadcrumb, display_search_bar %}
|
||||||
{% from 'core/macros.jinja' import paginate_jinja with context %}
|
{% from 'core/macros.jinja' import paginate_jinja %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{{ topic }}
|
{{ topic }}
|
||||||
@@ -27,7 +27,7 @@
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
{{ display_search_bar(request) }}
|
{{ display_search_bar(request) }}
|
||||||
{{ paginate_jinja(msgs, msgs.paginator) }}
|
{{ paginate_jinja(request, msgs, msgs.paginator) }}
|
||||||
|
|
||||||
<main class="message-list">
|
<main class="message-list">
|
||||||
{% for m in msgs %}
|
{% for m in msgs %}
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
<p><a class="ib button" href="{{ url('forum:new_message', topic_id=topic.id) }}">{% trans %}Reply{% endtrans %}</a></p>
|
<p><a class="ib button" href="{{ url('forum:new_message', topic_id=topic.id) }}">{% trans %}Reply{% endtrans %}</a></p>
|
||||||
|
|
||||||
{% if is_paginated %}
|
{% if is_paginated %}
|
||||||
{{ paginate_jinja(msgs, msgs.paginator) }}
|
{{ paginate_jinja(request, msgs, msgs.paginator) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
{% extends "core/base.jinja" %}
|
{% extends "core/base.jinja" %}
|
||||||
{% from "core/macros.jinja" import paginate_jinja with context %}
|
{% from "core/macros.jinja" import paginate_jinja %}
|
||||||
|
|
||||||
{% block title %}
|
{% block title %}
|
||||||
{% trans %}Operation logs{% endtrans %}
|
{% trans %}Operation logs{% endtrans %}
|
||||||
@@ -29,6 +29,6 @@
|
|||||||
|
|
||||||
<br>
|
<br>
|
||||||
{% if is_paginated %}
|
{% if is_paginated %}
|
||||||
{{ paginate_jinja(page_obj, paginator) }}
|
{{ paginate_jinja(request, page_obj, paginator) }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
Reference in New Issue
Block a user