1 {% extends "base.html" %}
8 <h2 class="mb-4">Approval Queue</h2>
11 {% if canApproveNew and packages %}
12 <div class="col-sm-6">
14 <h3 class="card-header">Packages</h3>
15 <div class="list-group list-group-flush">
16 {% for p in packages %}
17 <a href="{{ p.getDetailsURL() }}" class="list-group-item list-group-item-action">
18 {% if p.getState() == "thread" %}
19 <span class="mr-2 badge badge-danger">Thread</span>
20 {% elif p.getState() == "ready" %}
21 <span class="mr-2 badge badge-success">Ready</span>
22 {% elif p.getState() == "wip" %}
23 <span class="mr-2 badge badge-warning">WIP</span>
24 {% elif p.getState() == "license" %}
25 <span class="mr-2 badge badge-info">WIP</span>
28 {{ p.title }} by {{ p.author.display_name }}
31 <li class="list-group-item"><i>No packages need reviewing.</i></li>
38 {% if canApproveRel and releases %}
39 <div class="col-sm-6">
41 <h3 class="card-header">Releases</h3>
42 <ul class="list-group list-group-flush">
43 {% for r in releases %}
44 <li class="list-group-item">
46 <span class="mr-2 badge badge-warning">Importing</span>
48 <a href="{{ r.getEditURL() }}">{{ r.title }}</a>
50 <a href="{{ r.package.getDetailsURL() }}">
51 {{ r.package.title }} by {{ r.package.author.display_name }}
55 <li class="list-group-item"><i>No releases need reviewing.</i></li>
63 {% if canApproveScn and screenshots %}
64 <div class="card my-4">
65 <h3 class="card-header">Screenshots
66 <form class="float-right" method="post" action="{{ url_for('todo.view') }}">
67 <input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
68 <input type="hidden" name="action" value="screenshots_approve_all" />
69 <input class="btn btn-sm btn-primary" type="submit" value="Approve All" />
72 <ul class="card-body d-flex p-0 flex-row flex-wrap justify-content-start align-content-start p-4">
73 {% for s in screenshots %}
74 <li class="packagetile flex-fill"><a href="{{ s.getEditURL() }}"
75 style="background-image: url({{ s.getThumbnailURL(3) or '/static/placeholder.png' }});">
76 <div class="packagegridscrub"></div>
77 <div class="packagegridinfo">
81 <small>{{ s.package.title }} by {{ s.package.author.display_name }}</small>
87 <li><i>No screenshots need reviewing.</i></li>
89 {% for i in range(4) %}
90 <li class="packagetile flex-fill"></li>
96 {% if not (packages or screenshots or releases) %}
103 <h2 class="mt-5">Tag Packages</h2>
106 {{ total_to_tag }} / {{ total_packages }} packages don't have any tags.
109 <div class="progress my-4">
110 {% set perc = 100 * (total_packages - total_to_tag) / total_packages %}
111 <div class="progress-bar bg-success" role="progressbar"
112 style="width: {{ perc }}%" aria-valuenow="{{ perc }}" aria-valuemin="0" aria-valuemax="100"></div>
115 <a class="btn btn-primary" href="{{ url_for('todo.tags') }}">View Tags</a>
118 <h2 class="mt-5">Unadded Topic List</h2>
120 {% if total_topics > 0 %}
122 {{ total_topics - topics_to_add }} / {{ total_topics }} packages have been been added to cdb,
123 based on cdb's forum parser. {{ topics_to_add }} remaining.
126 <div class="progress my-4">
127 {% set perc = 100 * (total_topics - topics_to_add) / total_topics %}
128 <div class="progress-bar bg-success" role="progressbar"
129 style="width: {{ perc }}%" aria-valuenow="{{ perc }}" aria-valuemin="0" aria-valuemax="100"></div>
132 <a class="btn btn-primary" href="{{ url_for('todo.topics') }}">View Unadded Topic List</a>
135 The forum topic crawler needs to run at least once for this section to work.