{% load querystring from django_tables2 %}
{% load i18n %}
{% load blocktrans trans from i18n %}

<div class="table-container">
    {% block table %}
        <table class="table table-bordered table-striped"{% if table.attrs %} {{ table.attrs.as_html }}{% endif %}>
            {% block table.thead %}
                <thead>
                <tr>
                    {% for column in table.columns %}
                        {% if column.orderable %}
                            <th {{ column.attrs.th.as_html }}>
                                <a href="{% querystring table.prefixed_order_by_field=column.order_by_alias.next %}">{{ column.header }}</a>
                            </th>
                        {% else %}
                            <th {{ column.attrs.th.as_html }}>{{ column.header }}</th>
                        {% endif %}
                    {% endfor %}
                </tr>
                </thead>
            {% endblock table.thead %}
            {% block table.tbody %}
                <tbody>
                {% for row in table.page.object_list|default:table.rows %} {# support pagination #}
                    {% block table.tbody.row %}
                        <tr class="{% cycle "odd" "even" %}">
                            {% for column, cell in row.items %}
                                <td {{ column.attrs.td.as_html }}>{{ cell }}</td>
                            {% endfor %}
                        </tr>
                    {% endblock table.tbody.row %}
                {% empty %}
                    {% block table.tbody.empty_text %}
                        {% trans "no results" as table_empty_text %}
                        <tr>
                            <td colspan="{{ table.columns|length }}">{{ table.empty_text|default:table_empty_text }}</td>
                        </tr>
                    {% endblock table.tbody.empty_text %}
                {% endfor %}
                </tbody>
            {% endblock table.tbody %}
            {% block table.tfoot %}
                <tfoot></tfoot>
            {% endblock table.tfoot %}
        </table>
    {% endblock table %}

    {% if table.page and table.paginator.num_pages > 1 %}
        {% block pagination %}
        <ul class="pager">
            {% if table.page.has_previous %}
            <li class="previous">
                <a href="{% querystring table.prefixed_page_field=table.page.previous_page_number %}" class="btn btn-default">
                    {% trans 'previous' %}
                </a>
            {% endif %}
            <li class="cardinality">
                {% blocktrans with table.page.number as current and table.paginator.num_pages as total %}
                    Page {{ current }} of {{ total }}
                {% endblocktrans %}
            </li>
            {% if table.page.has_next %}
            <li class="next">
                <a href="{% querystring table.prefixed_page_field=table.page.next_page_number %}" class="btn btn-default">
                    {% trans 'next' %}
                </a>
            </li>
            {% endif %}
        </ul>

        {% endblock pagination %}
    {% endif %}
</div>
