diff options
Diffstat (limited to 'templates/packages/stale_relations.html')
-rw-r--r-- | templates/packages/stale_relations.html | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/templates/packages/stale_relations.html b/templates/packages/stale_relations.html new file mode 100644 index 00000000..8e2f8930 --- /dev/null +++ b/templates/packages/stale_relations.html @@ -0,0 +1,112 @@ +{% extends "base.html" %} +{% block title %}Arch Linux - Stale Package Relations{% endblock %} +{% block navbarclass %}anb-packages{% endblock %} + +{% block content %} +<div class="box"> + <h2>Stale Package Relations</h2> + + <form id="stale-relations-form" method="post" action="update/">{% csrf_token %} + <h3>Inactive User Relations ({{ inactive_user|length }})</h3> + + <table class="results" id="inactive-user"> + <thead> + <tr> + <th> </th> + <th>Package Base</th> + <th>Packages</th> + <th>User</th> + <th>Type</th> + </tr> + </thead> + <tbody> + {% for relation in inactive_user %} + <tr class="{% cycle 'odd' 'even' %}"> + <td><input type="checkbox" name="relation_id" value="{{ relation.id }}" /></td> + <td>{{ relation.pkgbase }}</td> + <td class="wrap">{% for pkg in relation.get_associated_packages %} + <a href="{{ pkg.get_absolute_url }}" + title="View package details for {{ pkg.pkgname }}">{{ pkg.repo|lower }}/{{ pkg.pkgname }} ({{ pkg.arch }})</a>{% if not forloop.last %}, {% endif %} + {% endfor %}</td> + <td>{{ relation.user.get_full_name }}</td> + <td>{{ relation.get_type_display }}</td> + </tr> + {% empty %} + <tr class="empty"><td colspan="5"><em>No inactive user relations.</em></td></tr> + {% endfor %} + </tbody> + </table> + + <h3>Relations with Non-existent <tt>pkgbase</tt> ({{ missing_pkgbase|length }})</h3> + + <table class="results" id="missing-pkgbase"> + <thead> + <tr> + <th> </th> + <th>Package Base</th> + <th>User</th> + <th>Type</th> + </tr> + </thead> + <tbody> + {% for relation in missing_pkgbase %} + <tr class="{% cycle 'odd' 'even' %}"> + <td><input type="checkbox" name="relation_id" value="{{ relation.id }}" /></td> + <td>{{ relation.pkgbase }}</td> + <td>{{ relation.user.get_full_name }}</td> + <td>{{ relation.get_type_display }}</td> + </tr> + {% empty %} + <tr class="empty"><td colspan="4"><em>No non-existent pkgbase relations.</em></td></tr> + {% endfor %} + </tbody> + </table> + + <h3>Maintainers with Wrong Permissions ({{ wrong_permissions|length }})</h3> + + <table class="results" id="wrong-permissions"> + <thead> + <tr> + <th> </th> + <th>Package Base</th> + <th>Packages</th> + <th>User</th> + <th>Allowed Repos</th> + <th>Currently in Repos</th> + </tr> + </thead> + <tbody> + {% for relation in wrong_permissions %} + <tr class="{% cycle 'odd' 'even' %}"> + <td><input type="checkbox" name="relation_id" value="{{ relation.id }}" /></td> + <td>{{ relation.pkgbase }}</td> + <td class="wrap">{% for pkg in relation.get_associated_packages %} + <a href="{{ pkg.get_absolute_url }}" + title="View package details for {{ pkg.pkgname }}">{{ pkg.repo|lower }}/{{ pkg.pkgname }} ({{ pkg.arch }})</a>{% if not forloop.last %}, {% endif %} + {% endfor %}</td> + <td>{{ relation.user.get_full_name }}</td> + <td class="wrap">{{ relation.user.userprofile.allowed_repos.all|join:", " }}</td> + <td class="wrap">{{ relation.repositories|join:", " }}</td> + </tr> + {% empty %} + <tr class="empty"><td colspan="6"><em>No relations with wrong permissions.</em></td></tr> + {% endfor %} + </tbody> + </table> + + <p><input title="Delete selected relations" type="submit" id="delete-relations" + name="delete" value="Delete Selected Relations" /> + </form> + +</div> +{% load cdn %}{% jquery %} +<script type="text/javascript" src="/media/jquery.tablesorter.min.js"></script> +<script type="text/javascript" src="/media/archweb.js"></script> +<script type="text/javascript"> +$(document).ready(function() { + $('#inactive-user:not(:has(tbody tr.empty))').tablesorter({widgets: ['zebra'], headers: { 0: { sorter: false } }, sortList: [[3,0]]}); + $('#missing-pkgbase:not(:has(tbody tr.empty))').tablesorter({widgets: ['zebra'], headers: { 0: { sorter: false } }, sortList: [[1,0]]}); +}); + $('#wrong-permissions:not(:has(tbody tr.empty))').tablesorter({widgets: ['zebra'], headers: { 0: { sorter: false } }, sortList: [[3,0]]}); +</script> +{% endblock %} |