File: //home/arjun/projects/buyercall_new/buyercall/buyercall/templates/macros/items.jinja2
{% macro sort(field, name=None) -%}
{% set sort = request.args.get('sort', None) %}
{% set direction = request.args.get('direction', 'asc') %}
{% set q = request.args.get('q', '') %}
{% if name == None %}
{% set label = field | title %}
{% else %}
{% set label = name %}
{% endif %}
{% if sort == field and direction == 'asc' %}
{% set direction = 'desc' %}
{% else %}
{% set direction = 'asc' %}
{% endif %}
{% if sort == field %}
{% set css = direction %}
{% else %}
{% set css = 'sort' %}
{% endif %}
<a class="{{ css }}" href="{{ url_for(request.endpoint,
q=q,
sort=field,
direction=direction,
**request.view_args) }}">{{ label }}</a>
{%- endmacro %}
{% macro paginate(pagination) -%}
{% set args = request.args.to_dict() %}
<ul class="pagination">
<li class="{{ 'disabled' if not pagination.has_prev }}">
<a href="{{ url_for(request.endpoint, page=pagination.page - 1, **args) }}"
aria-label="Previous">
<i class="fa fa-chevron-left"></i>
</a>
</li>
{%- for page in pagination.iter_pages() %}
<li class="{{ 'active' if page and page == pagination.page }}">
{% if page %}
{% if page != pagination.page %}
<a href="{{ url_for(request.endpoint, page=page, **args) }}">{{ page }}</a>
{% else %}
<span class="text-muted">{{ page }}</span>
{% endif %}
{% else %}
<span class="ellipsis">…</span>
{% endif %}
</li>
{%- endfor %}
<li class="{{ 'disabled' if not pagination.has_next }}">
<a href="{{ url_for(request.endpoint, page=pagination.page + 1, **args) }}"
aria-label="Next">
<i class="fa fa-chevron-right"></i>
</a>
</li>
</ul>
{%- endmacro %}