diff options
Diffstat (limited to 'templates/packages')
-rw-r--r-- | templates/packages/details.html | 43 | ||||
-rw-r--r-- | templates/packages/differences.html | 31 | ||||
-rw-r--r-- | templates/packages/files-list.html | 6 | ||||
-rw-r--r-- | templates/packages/files.html | 2 | ||||
-rw-r--r-- | templates/packages/flag.html | 22 | ||||
-rw-r--r-- | templates/packages/flag_confirmed.html | 15 | ||||
-rw-r--r-- | templates/packages/flagged.html | 12 | ||||
-rw-r--r-- | templates/packages/flaghelp.html | 5 | ||||
-rw-r--r-- | templates/packages/packages_list.html | 6 | ||||
-rw-r--r-- | templates/packages/search.html | 19 | ||||
-rw-r--r-- | templates/packages/signoff_cell.html | 25 | ||||
-rw-r--r-- | templates/packages/signoff_options.html | 18 | ||||
-rw-r--r-- | templates/packages/signoff_report.txt | 41 | ||||
-rw-r--r-- | templates/packages/signoffs.html | 96 |
14 files changed, 256 insertions, 85 deletions
diff --git a/templates/packages/details.html b/templates/packages/details.html index d1e6eee9..4570627f 100644 --- a/templates/packages/details.html +++ b/templates/packages/details.html @@ -1,5 +1,6 @@ {% extends "base.html" %} {% load cache %} +{% load package_extras %} {% block title %}Parabola - {{ pkg.pkgname }} {{ pkg.full_version }} - Package Details{% endblock %} {% block navbarclass %}anb-packages{% endblock %} @@ -18,6 +19,7 @@ <li><a href="{% bugs_list pkg %}" title="View existing bug tickets for {{ pkg.pkgname }}">Bug Reports</a></li> <li><a href="{% bug_report pkg %}" title="Report bug for {{ pkg.pkgname }}">Report a Bug</a></li> <li><a href="{% flag_unfree pkg %}" title="Report {{ pkg.pkgname }} as unfree">Report as unfree</a></li> + <li><a href="{% get_wiki_link pkg %}" title="Search wiki for {{ pkg.pkgname }}">Search Wiki</a></li> {% if pkg.flag_date %} <li><span class="flagged">Flagged out-of-date on {{ pkg.flag_date|date }}</span></li> {% with pkg.in_testing as tp %}{% if tp %} @@ -37,6 +39,7 @@ onclick="return !window.open('/packages/flaghelp/','FlagHelp', 'height=350,width=450,location=no,scrollbars=yes,menubars=no,toolbars=no,resizable=no');">(?)</a></li> {% endif %} + <li><a href="{% get_download_link pkg %}" rel="nofollow" title="Download {{ pkg.pkgname }} from mirror">Download From Mirror</a></li> </ul> {% if perms.main.change_package %} @@ -80,20 +83,14 @@ {% with pkg.split_packages as splits %}{% if splits %} <tr> <th>Split Packages:</th> - <td> - {% for s in splits %} - <a href="{{ s.get_absolute_url }}" - title="Package details for {{ s.pkgname }}">{{ s.pkgname }}</a><br/> - {% endfor %} - </td> + <td>{% for s in splits %}{% pkg_details_link s %}<br/>{% endfor %}</td> </tr> {% endif %}{% endwith %} {% else %} <tr> <th>Base Package:</th> {% if pkg.base_package %} - <td><a href="{{ pkg.base_package.get_absolute_url }}" - title="Package details for {{ pkg.base_package.pkgname }}">{{ pkg.pkgbase }}</a></td> + <td>{% pkg_details_link pkg.base_package %}</td> {% else %} <td><a href="../{{ pkg.pkgbase }}/" title="Split package details for {{ pkg.pkgbase }}">{{ pkg.pkgbase }}</a></td> @@ -106,7 +103,7 @@ </tr><tr> <th>Upstream URL:</th> <td>{% if pkg.url %}<a href="{{ pkg.url }}" - title="Visit the website for {{ pkg.pkgname }}">{{ pkg.url }}</a>{% endif %}</td> + title="Visit the website for {{ pkg.pkgname }}">{{ pkg.url|url_unquote }}</a>{% endif %}</td> </tr><tr> <th>License(s):</th> <td>{{ pkg.licenses.all|join:", " }}</td> @@ -121,7 +118,16 @@ {% else %}None{% endif %} </td> {% endwith %} - </tr><tr> + </tr> + {% with pkg.provides.all as provides %} + {% if provides %} + <tr> + <th>Provides:</th> + <td>{% for p in provides %}{{ p.name }}{% if p.version %}={{ p.version }}{% endif %}<br/>{% endfor %}</td> + </tr> + {% endif %} + {% endwith %} + <tr> <th>Maintainers:</th> {% with pkg.maintainers as maints %} <td>{% if maints %} @@ -141,8 +147,11 @@ <th>Last Packager:</th> <td>{% with pkg.packager as pkgr %}{% if pkgr %}{% userpkgs pkgr %}{% else %}{{ pkg.packager_str }}{% endif %}{% endwith %}</td> </tr><tr> + <th>Signed:</th> + <td>{{ pkg.is_signed|yesno|capfirst }}</td> + </tr><tr> <th>Build Date:</th> - <td>{{ pkg.build_date }} UTC</td> + <td>{{ pkg.build_date|date:"DATETIME_FORMAT" }} UTC</td> </tr><tr> <th>Last Updated:</th> <td>{{ pkg.last_update|date }}</td> @@ -161,10 +170,12 @@ <ul> {% for depend in deps %} {% ifequal depend.pkg None %} - <li>{{ depend.dep.depname }} <span class="virtual-dep">(virtual)</span></li> + {% if depend.providers %} + <li>{{ depend.dep.depname }} <span class="virtual-dep">({% multi_pkg_details depend.providers %})</span></li> + {% else %}<li>{{ depend.dep.depname }} <span class="virtual-dep">(virtual)</span></li> + {% endif %} {% else %} - <li><a href="{{ depend.pkg.get_absolute_url }}" - title="View package details for {{ depend.dep.depname }}">{{ depend.dep.depname }}</a>{{ depend.dep.depvcmp|default:"" }} + <li>{% pkg_details_link depend.pkg %}{{ depend.dep.depvcmp|default:"" }} {% if depend.pkg.repo.testing %}<span class="testing-dep">(testing)</span>{% endif %} {% if depend.dep.optional %}<span class="opt-dep">(optional)</span>{% endif %} {% if depend.dep.description %}- <span class="dep-desc">{{ depend.dep.description }}</span>{% endif %} @@ -186,8 +197,8 @@ {% if rqdby %} <ul> {% for req in rqdby %} - <li><a href="{{ req.pkg.get_absolute_url }}" - title="View package details for {{ req.pkg.pkgname }}">{{ req.pkg.pkgname }}</a> + <li>{% pkg_details_link req.pkg %} + {% if req.depname != pkg.pkgname %}<span class="virtual-dep">(requires {{ req.depname }})</span>{% endif %} {% if req.pkg.repo.testing %}<span class="testing-dep">(testing)</span>{% endif %} {% if req.optional %}<span class="opt-dep">(optional)</span>{% endif %} </li> diff --git a/templates/packages/differences.html b/templates/packages/differences.html index 69c39756..0412f8c2 100644 --- a/templates/packages/differences.html +++ b/templates/packages/differences.html @@ -6,6 +6,35 @@ {% if differences %} <div id="differences-filter" class="box filter-criteria"> <h2>Package Differences by Architecture</h2> + <h3>Select architectures</h3> + <form id="arch_selector" method="get" action="."> + <fieldset> + <legend>Select arches</legend> + <div><label for="arch_a" title="Architecture A">Architecture A</label> + <select name="arch_a" id="arch_a"> + {% for arch in arches %} + <option + {% if arch == arch_a %} + selected="selected" + {% endif %} + >{{ arch }}</option> + {% endfor %} + </select> + </div> + <div><label for="arch_b" title="Architecture B">Architecture B</label> + <select name="arch_b" id="arch_b"> + {% for arch in arches %} + <option + {% if arch == arch_b %} + selected="selected" + {% endif %} + >{{ arch }}</option> + {% endfor %} + </select> + </div> + <div><label> </label><input type="submit" title="Show difference between selected architectures"></div> + </fieldset> + </form> <h3>Filter Differences View</h3> <form id="diff_filter" method="post" action="."> <fieldset> @@ -65,7 +94,7 @@ $(document).ready(function() { $('.results').tablesorter({widgets: ['zebra'], sortList: [[1,0], [0,0]]}); $('#diff_filter select').change(filter_packages); $('#diff_filter input').change(filter_packages); - $('#criteria_reset').click(filter_reset); + $('#criteria_reset').click(filter_packages_reset); // fire function on page load to ensure the current form selections take effect filter_packages(); }); diff --git a/templates/packages/files-list.html b/templates/packages/files-list.html index bb89b663..95a85d24 100644 --- a/templates/packages/files-list.html +++ b/templates/packages/files-list.html @@ -2,12 +2,16 @@ <p class="message">Note: This file list was generated from a previous version of the package; it may be out of date.</p> {% endif %} -{% if files.count %} +{% if pkg.files_last_update %} +{% if files|length %} <ul> {% for file in files %} <li>{{ file.directory }}{{ file.filename|default:'' }}</li> {% endfor %} </ul> {% else %} +<p class="message">Package has no files.</p> +{% endif %} +{% else %} <p class="message">No file list available.</p> {% endif %} diff --git a/templates/packages/files.html b/templates/packages/files.html index 149154a6..78a40def 100644 --- a/templates/packages/files.html +++ b/templates/packages/files.html @@ -1,5 +1,5 @@ {% extends "base.html" %} -{% block title %}Parabola - {{ pkg.pkgname }} {{ pkg.full_version }} - Package File List{% endblock %} +{% block title %}Parabola - {{ pkg.pkgname }} {{ pkg.full_version }} ({{ pkg.arch.name }}) - File List{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} diff --git a/templates/packages/flag.html b/templates/packages/flag.html index 74f6982c..bb6b274f 100644 --- a/templates/packages/flag.html +++ b/templates/packages/flag.html @@ -1,32 +1,36 @@ {% extends "base.html" %} -{% block title %}Parabola - Flag Package - {{ package.pkgname }}{% endblock %} +{% load package_extras %} + +{% block title %}Arch Linux - Flag Package - {{ package.pkgname }} {{ package.full_version }} ({{ package.arch.name }}){% endblock %} +{% block head %}<meta name="robots" content="noindex"/>{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} <div id="pkg-flag" class="box"> - <h2>Flag Package: {{ package.pkgname }}</h2> + <h2>Flag Package: {{ package.pkgname }} {{ package.full_version }} ({{ package.arch.name }})</h2> <p>If you notice a package is out-of-date (i.e., there is a newer <strong>stable</strong> release available), then please notify us using - the form below.</p> + the form below. Do <em>not</em> report bugs via this form!</p> - <p>Note that all of the following packages will be marked out of date:</p> + <p>Note that the following {{ packages|length }} package{{ packages|pluralize }} will be marked out of date:</p> <ul> {% for pkg in packages %} - <li>{{ pkg.pkgname }} {{ pkg.full_version }} [{{ pkg.repo.name|lower }}] ({{ pkg.arch.name }})</li> + <li>{% pkg_details_link pkg %} {{ pkg.full_version }} [{{ pkg.repo.name|lower }}] ({{ pkg.arch.name }})</li> {% endfor %} </ul> <p>The message box portion of the flag utility is optional, and meant for short messages only. If you need more than 200 characters for your message, then file a bug report, email the maintainer directly, or send - an email to the <a href="http://list.parabolagnulinux.org/listinfo.cgi/dev-parabolagnulinux.org" + an email to the <a href="//lists.parabolagnulinux.org/mailman/listinfo/dev" title="Visit the dev mailing list">Parabola Development mailing list</a> with your additional text.</p> - <p><strong>Note:</strong> Please do <em>not</em> use this facility if the - package is broken! Please <a href="https://bugs.parabolagnulinux.org" - title="Parabola Bugtracker">file a bug</a> instead.</p> + <p><strong>Note:</strong> Do <em>not</em> use this facility if the + package is broken! The package will be unflagged and the report will be ignored! + <a href="//bugs.parabolagnulinux.org/" title="Parabola Bugtracker">Use the + bugtracker to file a bug</a> instead.</p> <p>Please confirm your flag request for {{package.pkgname}}:</p> diff --git a/templates/packages/flag_confirmed.html b/templates/packages/flag_confirmed.html index baa466dd..62080d62 100644 --- a/templates/packages/flag_confirmed.html +++ b/templates/packages/flag_confirmed.html @@ -1,19 +1,22 @@ {% extends "base.html" %} -{% block title %}Parabola - Package Flagged - {{ package.pkgname }}{% endblock %} +{% load package_extras %} + +{% block title %}Parabola - Package Flagged - {{ package.pkgname }} {{ package.full_version }} ({{ package.arch.name }}){% endblock %} +{% block head %}<meta name="robots" content="noindex"/>{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} <div id="pkg-flag" class="box"> - <h2>Package Flagged - {{ package.pkgname }}</h2> + <h2>Package Flagged - {{ package.pkgname }}</h2> - <p>Thank you, the maintainers have been notified the following packages are out-of-date:</p> + <p>Thank you, the maintainers have been notified the following + {{ packages|length }} package{{ packages|pluralize }} are out-of-date:</p> <ul> {% for pkg in packages %} - <li>{{ pkg.pkgname }} {{ pkg.full_version }} [{{ pkg.repo.name|lower }}] ({{ pkg.arch.name }})</li> + <li>{% pkg_details_link pkg %} {{ pkg.full_version }} [{{ pkg.repo.name|lower }}] ({{ pkg.arch.name }})</li> {% endfor %} </ul> - <p>You can return to the package details page for - <a href="{{ package.get_absolute_url }}" title="Package details for {{package.pkgname}}">{{package.pkgname}}</a>.</p> + <p>You can return to the package details page for {% pkg_details_link package %}.</p> </div> {% endblock %} diff --git a/templates/packages/flagged.html b/templates/packages/flagged.html index 97a14ff2..f7940cd1 100644 --- a/templates/packages/flagged.html +++ b/templates/packages/flagged.html @@ -1,16 +1,16 @@ {% extends "base.html" %} -{% block title %}Parabola - Flag Package - {{ pkg.pkgname }}{% endblock %} +{% load package_extras %} + +{% block title %}Parabola - Flag Package - {{ pkg.pkgname }} {{ pkg.full_version }} ({{ pkg.arch.name }}){% endblock %} +{% block head %}<meta name="robots" content="noindex"/>{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} <div id="pkg-flagged-error" class="box"> - - <h2>Error: Package already flagged</h2> + <h2>Package {{ pkg.pkgname }} {{ pkg.full_version }} ({{ pkg.arch.name }}) already flagged</h2> <p><strong>{{pkg.pkgname}}</strong> has already been flagged out-of-date.</p> - <p>You can return to the package details page for - <a href="{{ pkg.get_absolute_url }}" title="Package details for {{pkg.pkgname}}">{{pkg.pkgname}}</a>.</p> - + <p>You can return to the package details page for {% pkg_details_link pkg %}.</p> </div> {% endblock %} diff --git a/templates/packages/flaghelp.html b/templates/packages/flaghelp.html index 4a9d1cdf..eac13f83 100644 --- a/templates/packages/flaghelp.html +++ b/templates/packages/flaghelp.html @@ -25,13 +25,12 @@ <p>The message box portion of the flag utility is optional, and meant for short messages only. If you need more than 200 characters for your message, then file a bug report, email the maintainer directly, or send - an email to the <a target="_blank" - href="http://list.parabolagnulinux.org/listinfo.cgi/dev-parabolagnulinux.org" + an email to the <a target="_blank" href="//lists.parabolagnulinux.org/mailman/listinfo/dev" title="Visit the parabola dev mailing list">parabola mailing list</a> with your additional text.</p> <p><strong>Note:</strong> Please do <em>not</em> use this facility if the - package is broken! Use the <a target="_blank" href="https://bugs.parabolagnulinux.org" + package is broken! Use the <a target="_blank" href="//bugs.parabolagnulinux.org" title="Parabola Bugtracker">bugtracker</a> instead.</p> </body> diff --git a/templates/packages/packages_list.html b/templates/packages/packages_list.html index 2508d8fd..ed376705 100644 --- a/templates/packages/packages_list.html +++ b/templates/packages/packages_list.html @@ -1,10 +1,13 @@ {% extends "base.html" %} +{% load package_extras %} + {% block title %}Parabola - {{ name }} ({{ arch.name }}) - {{ list_title }}{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} <div class="box"> <h2>{{ list_title }} - {{ name }} ({{ arch.name }})</h2> + <p>{{ packages|length }} package{{ packages|pluralize }} found.</p> <table class="results"> <thead> <tr> @@ -22,8 +25,7 @@ <tr class="{% cycle 'odd' 'even' %}"> <td>{{ pkg.arch.name }}</td> <td>{{ pkg.repo.name|capfirst }}</td> - <td><a href="{{ pkg.get_absolute_url }}" - title="Package details for {{ pkg.pkgname }}">{{ pkg.pkgname }}</a></td> + <td>{% pkg_details_link pkg %}</td> {% if pkg.flag_date %} <td><span class="flagged">{{ pkg.full_version }}</span></td> {% else %} diff --git a/templates/packages/search.html b/templates/packages/search.html index ae9e55f2..bb5c1c8b 100644 --- a/templates/packages/search.html +++ b/templates/packages/search.html @@ -1,10 +1,12 @@ {% extends "base.html" %} {% load package_extras %} +{% load adminmedia %} + {% block title %}Parabola - Package Database{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block head %} -<link rel="stylesheet" type="text/css" href="/media/admin_media/css/widgets.css" /> +<link rel="stylesheet" type="text/css" href="{% admin_media_prefix %}css/widgets.css" /> {% endblock %} {% block content %} @@ -154,21 +156,20 @@ </div><!-- #pkglist-results --> {% else %} <div class="box"> - <p>We couldn't find any packages matching your query. Try searching again - using different criteria.</p> + <p>We couldn't find any packages matching your query. Try searching again + using different criteria.</p> </div> {% endif %} <div id="pkglist-about" class="box"> - <p>You are browsing the Parabola package database. From here you can - find detailed information about packages located in the official - supported repositories. If you need the sourceball from where a - package is built, you can look at our <a - href='http://repo.parabolagnulinux.org/sources/packages' + <p>You are browsing the Parabola package database. From here you can find + detailed information about packages located in the official supported repositories. + If you need the sourceball from where a package is built, you can look at our <a + href='//repo.parabolagnulinux.org/sources/packages' title='Sourceballed packages'>sources repo</a>.</p> </div> <script type="text/javascript" src="/jsi18n/"></script> -{% load adminmedia %}<script type="text/javascript" src="{% admin_media_prefix %}js/core.js"></script> <script type="text/javascript">window.__admin_media_prefix__ = "{% filter escapejs %}{% admin_media_prefix %}{% endfilter %}";</script> +<script type="text/javascript" src="{% admin_media_prefix %}js/core.js"></script> {{search_form.media}} {% endblock %} diff --git a/templates/packages/signoff_cell.html b/templates/packages/signoff_cell.html new file mode 100644 index 00000000..01a5d58d --- /dev/null +++ b/templates/packages/signoff_cell.html @@ -0,0 +1,25 @@ +{% spaceless %} +{% if group.signoffs %} +<ul class="signoff-list"> + {% for signoff in group.signoffs %} + <li class="signed-username" title="Signed off by {{ signoff.user }}">{{ signoff.user }}{% if signoff.revoked %} (revoked){% endif %}</li> + {% endfor %} +</ul> +{% endif %} +{% if group.user_signed_off %} +<div> + <a class="signoff-link" href="{{ group.package.get_absolute_url }}signoff/revoke/" + title="Revoke signoff {{ group.pkgbase }} for {{ group.arch }}">Revoke Signoff</a></div> +{% else %} +{% if not group.specification.known_bad and group.specification.enabled %} +<div> + <a class="signoff-link" href="{{ group.package.get_absolute_url }}signoff/" + title="Signoff {{ group.pkgbase }} for {{ group.arch }}">Signoff</a></div> +{% endif %} +{% endif %} +{% if user == group.packager or user in group.maintainers %} +<div> + <a class="signoff-options" href="{{ group.package.get_absolute_url }}signoff/options/">Signoff Options</a> +</div> +{% endif %} +{% endspaceless %} diff --git a/templates/packages/signoff_options.html b/templates/packages/signoff_options.html new file mode 100644 index 00000000..ee9b8b47 --- /dev/null +++ b/templates/packages/signoff_options.html @@ -0,0 +1,18 @@ +{% extends "base.html" %} + +{% block title %}Arch Linux - Package Signoff Options - {{ package.pkgbase }} {{ package.full_version }} ({{ package.arch.name }}){% endblock %} +{% block head %}<meta name="robots" content="noindex"/>{% endblock %} +{% block navbarclass %}anb-packages{% endblock %} + +{% block content %} +<div id="signoff-options" class="box"> + <h2>Package Signoff Options: {{ package.pkgbase }} {{ package.full_version }} ({{ package.arch.name }})</h2> + <form id="signoff-options-form" method="post">{% csrf_token %} + <fieldset> + {{ form.as_p }} + </fieldset> + <p><label></label> <input title="Set Signoff Options" type="submit" value="Set Signoff Options" /></p> + </form> + +</div> +{% endblock %} diff --git a/templates/packages/signoff_report.txt b/templates/packages/signoff_report.txt new file mode 100644 index 00000000..046c2f1e --- /dev/null +++ b/templates/packages/signoff_report.txt @@ -0,0 +1,41 @@ +=== {% autoescape off %}Signoff report for [{{ repo|lower }}] === +{{ signoffs_url }} + +There are currently: +* {{ new|length }} new package{{ new|length|pluralize }} in last {{ new_hours }} hours +* {{ bad|length }} known bad package{{ bad|length|pluralize }} +* {{ disabled|length }} package{{ disabled|length|pluralize }} not accepting signoffs +* {{ complete|length }} fully signed off package{{ complete|length|pluralize }} +* {{ incomplete|length }} package{{ incomplete|length|pluralize }} missing signoffs +* {{ old|length }} package{{ old|length|pluralize }} older than {{ old_days }} days + +(Note: the word 'package' as used here refers to packages as grouped by +pkgbase, architecture, and repository; e.g., one PKGBUILD produces one +package per architecture, even if it is a split package.) + + +{% if new %}== New packages in [{{ repo|lower}}] in last {{ new_hours }} hours ({{ new|length }} total) == +{% for group in new %} +* {{ group.pkgbase }}-{{ group.version }} ({{ group.arch }}){% endfor %} + +{% endif %}{% regroup incomplete by target_repo as by_repo %}{% for target_repo in by_repo %} +== Incomplete signoffs for [{{ target_repo.grouper|lower }}] ({{ target_repo.list|length }} total) == +{% for group in target_repo.list %} +* {{ group.pkgbase }}-{{ group.version }} ({{ group.arch }}) + {{ group.completed }}/{{ group.required }} signoffs{% endfor %} +{% endfor %} + +{% if complete %}== Completed signoffs ({{ complete|length }} total) == +{% for group in complete %} +* {{ group.pkgbase }}-{{ group.version }} ({{ group.arch }}){% endfor %} + + +{% endif %}{% if old %}== All packages in [{{ repo|lower }}] for more than {{ old_days }} days ({{ old|length }} total) == +{% for group in old %} +* {{ group.pkgbase }}-{{ group.version }} ({{ group.arch }}), since {{ group.last_update|date }}{% endfor %} + + +{% endif %}== Top five in signoffs in last {{ new_hours }} hours == +{% for leader in leaders %} +{{ forloop.counter }}. {{ leader.user }} - {{ leader.count }} signoffs{% endfor %} +{% endautoescape %} diff --git a/templates/packages/signoffs.html b/templates/packages/signoffs.html index 157843ac..c24774a9 100644 --- a/templates/packages/signoffs.html +++ b/templates/packages/signoffs.html @@ -1,49 +1,80 @@ {% extends "base.html" %} +{% load package_extras %} + {% block title %}Parabola - Package Signoffs{% endblock %} {% block navbarclass %}anb-packages{% endblock %} {% block content %} -{% if packages %} <div id="dev-signoffs" class="box"> <h2>Package Signoffs</h2> + <p>{{ signoff_groups|length }} total signoff group{{ signoff_groups|pluralize }} found. + A "signoff group" consists of packages grouped by pkgbase, architecture, and repository.</p> + + <div class="box filter-criteria"> + <h3>Filter Displayed Signoffs</h3> + <form id="signoffs_filter" method="post" action="."> + <fieldset> + <legend>Select filter criteria</legend> + {% for arch in arches %} + <div><label for="id_arch_{{ arch.name }}" title="Architecture {{ arch.name }}">Arch {{ arch.name }}</label> + <input type="checkbox" name="arch_{{ arch.name }}" id="id_arch_{{ arch.name }}" class="arch_filter" value="{{ arch.name }}" checked="checked"/></div> + {% endfor %} + {% for repo_name in repo_names %} + <div><label for="id_repo_{{ repo_name|lower }}" title="Target Repository {{ repo_name }}">[{{ repo_name|lower }}]</label> + <input type="checkbox" name="repo_{{ repo_name|lower }}" id="id_repo_{{ repo_name|lower }}" class="repo_filter" value="{{ repo_name|lower }}" checked="checked"/></div> + {% endfor %} + <div><label for="id_pending" title="Packages with not enough signoffs">Only Pending Approval</label> + <input type="checkbox" name="pending" id="id_pending" value="pending"/></div> + <div><label> </label><input title="Reset search criteria" type="button" id="criteria_reset" value="Reset"/></div> + <div class="clear"></div> + <div id="filter-info"><span id="filter-count">{{ signoff_groups|length }}</span> signoff groups displayed.</div> + </fieldset> + </form> + </div> + <table id="signoffs" class="results"> <thead> <tr> + <th>Package Base/Version</th> <th>Arch</th> - <th>Package</th> - <th>Version</th> - <th>Last Updated</th> <th>Target Repo</th> + <th>Packager</th> + <th># of Packages</th> + <th>Last Updated</th> <th>Approved</th> - <th>Signoff</th> + <th>Signoffs</th> + <th>Notes</th> </tr> </thead> - <tbody> - {% for pkg,target in packages %} - <tr class="{% cycle 'odd' 'even' %}"> - <td>{{ pkg.arch.name }}</td> - <td><a href="{{ pkg.get_absolute_url }}" - title="View package details for {{ pkg.pkgname }}">{{ pkg.pkgname }}</a></td> - <td>{{ pkg.full_version }}</td> - <td>{{ pkg.last_update }}</td> - <td>{{ target }}</td> - <td class="signoff-{{pkg.approved_for_signoff|yesno}}"> - {{ pkg.approved_for_signoff|yesno:"Yes,No" }}</td> - <td> - <ul> - <li><a class="signoff-link" href="/packages/signoff_package/{{pkg.arch}}/{{pkg.pkgname}}/" - title="Signoff {{pkg.pkgname}} for {{pkg.arch}}">Signoff</a> - </li> - {% for signoff in pkg.signoffs %} - <li class="signed-username" title="Signed off by {{signoff.packager}}"> - {{signoff.packager}}</li> - {% endfor %} - </ul> - </td> + <tbody id="tbody_signoffs"> + {% for group in signoff_groups %} + <tr class="{% cycle 'odd' 'even' %} {{ group.arch.name }} {{ group.target_repo|lower }}"> + <td>{% pkg_details_link group.package %} {{ group.version }}</td> + <td>{{ group.arch.name }}</td> + <td>{{ group.target_repo }}</td> + <td>{{ group.packager|default:"Unknown" }}</td> + <td>{{ group.packages|length }}</td> + <td class="epoch-{{ group.last_update|date:'U' }}">{{ group.last_update|date }}</td> + {% if group.specification.known_bad %} + <td class="approval signoff-bad">Bad</td> + {% else %} + {% if not group.specification.enabled %} + <td class="approval signoff-disabled">Disabled</td> + {% else %} + <td class="approval signoff-{{ group.approved|yesno }}">{{ group.approved|yesno|capfirst }}</td> + {% endif %} + {% endif %} + <td>{% include "packages/signoff_cell.html" %}</td> + <td class="wrap">{% if not group.default_spec %}{% with group.specification as spec %} + {% if spec.required != 2 %}Required signoffs: {{ spec.required }}<br/>{% endif %} + {% if not spec.enabled %}Signoffs are not currently enabled<br/>{% endif %} + {% if spec.known_bad %}Package is known to be bad<br/>{% endif %} + {{ spec.comments|default:""|linebreaksbr }} + {% endwith %}{% endif %}</td> </tr> - {% endfor %} + {% endfor %} </tbody> </table> </div> @@ -53,9 +84,12 @@ <script type="text/javascript"> $(document).ready(function() { $('a.signoff-link').click(signoff_package); - $(".results").tablesorter({widgets: ['zebra'], sortList: [[1,0]], - headers: { 6: { sorter: false } } }); + $(".results").tablesorter({widgets: ['zebra'], sortList: [[0,0]], + headers: { 5: { sorter: 'epochdate' }, 7: { sorter: false }, 8: {sorter: false } } }); + $('#signoffs_filter input').change(filter_signoffs); + $('#criteria_reset').click(filter_signoffs_reset); + // fire function on page load to ensure the current form selections take effect + filter_signoffs(); }); </script> -{% endif %} {% endblock %} |