{% extends "todo/todo_base.html" %} {% block title %} Topics to be Added {% endblock %} {% block content %} <div class="float-right"> <div class="btn-group btn-group-sm mr-2"> <a class="btn btn-secondary {% if sort_by=='date' %}active{% endif %}" href="{{ url_for('todo.topics', q=query, show_discarded=show_discarded, n=n, sort='date') }}"> {{ _("Sort by date") }} </a> <a class="btn btn-secondary {% if sort_by=='name' %}active{% endif %}" href="{{ url_for('todo.topics', q=query, show_discarded=show_discarded, n=n, sort='name') }}"> {{ _("Sort by name") }} </a> <a class="btn btn-secondary {% if sort_by=='views' %}active{% endif %}" href="{{ url_for('todo.topics', q=query, show_discarded=show_discarded, n=n, sort='views') }}"> {{ _("Sort by views") }} </a> </div> <div class="btn-group btn-group-sm"> {% if current_user.rank.atLeast(current_user.rank.APPROVER) %} {% if n >= 10000 %} <a class="btn btn-secondary" href="{{ url_for('todo.topics', q=query, show_discarded=show_discarded, n=100, sort=sort_by) }}"> {{ _("Paginated list") }} </a> {% else %} <a class="btn btn-secondary" href="{{ url_for('todo.topics', q=query, show_discarded=show_discarded, n=10000, sort=sort_by) }}"> {{ _("Unlimited list") }} </a> {% endif %} {% endif %} <a class="btn btn-secondary" href="{{ url_for('todo.topics', q=query, show_discarded=not show_discarded, n=n, sort=sort_by) }}"> {% if not show_discarded %} {{ _("Show discarded topics") }} {% else %} {{ _("Hide discarded topics") }} {% endif %} </a> </div> </div> <h1>{{ _("Topics to be Added") }}</h1> {% if topic_count > 0 %} <p> {{ total - topic_count }} / {{ total }} topics have been added as packages to CDB. {{ topic_count }} remaining. </p> <div class="progress"> {% set perc = 100 * (total - topic_count) / total %} <div class="progress-bar bg-success" role="progressbar" style="width: {{ perc }}%" aria-valuenow="{{ perc }}" aria-valuemin="0" aria-valuemax="100"></div> </div> {% else %} <p> The forum topic crawler needs to run at least once for this section to work. </p> {% endif %} <form method="GET" action="{{ url_for('todo.topics') }}" class="my-4"> <input type="hidden" name="show_discarded" value={{ show_discarded and "True" or "False" }} /> <input type="hidden" name="n" value={{ n }} /> <input type="hidden" name="sort" value={{ sort_by or "date" }} /> <input name="q" type="text" placeholder="Search topics" value="{{ query or ''}}"> <input class="btn btn-secondary my-2 my-sm-0 mr-sm-2" type="submit" value="Search" /> </form> {% from "macros/topics.html" import render_topics_table %} {{ render_topics_table(topics, show_discard=True, current_user=current_user) }} <ul class="pagination mt-4"> <li class="page-item {% if not prev_url %}disabled{% endif %}"> <a class="page-link" {% if prev_url %}href="{{ prev_url }}"{% endif %}>«</a> </li> {% for i in range(1, page_max+1) %} <li class="page-item {% if i == page %}active{% endif %}"> <a class="page-link" href="{{ url_for('todo.topics', page=i, query=query, show_discarded=show_discarded, n=n, sort=sort_by) }}"> {{ i }} </a> </li> {% endfor %} <li class="page-item {% if not next_url %}disabled{% endif %}"> <a class="page-link" {% if next_url %}href="{{ next_url }}"{% endif %}>»</a> </li> </ul> {% endblock %} {% block scriptextra %} <script> const csrf_token = "{{ csrf_token() }}"; </script> <script src="/static/topic_discard.js"></script> {% endblock %}