{% extends "base.html" %}
{% load cycle from future %}
{% load static from staticfiles %}
{% load package_extras %}

{% block title %}{{ BRANDING_DISTRONAME }} - Package Differences Reports{% endblock %}
{% block navbarclass %}anb-packages{% endblock %}

{% block content %}
<div class="box">
    <h2>Package Differences by Architecture</h2>
    <div class="filter-criteria">
        <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>&nbsp;</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>
            <legend>Select filter criteria</legend>
            <div><label for="id_archonly" title="Limit packages to selected architecture">Architecture Limitation</label>
                <select name="archonly" id="id_archonly">
                    <option value="all">Show All</option>
                    <option value="both" selected="selected">Only In Both</option>
                    <option value="{{ arch_a.name }}">In {{ arch_a.name }} Only</option>
                    <option value="{{ arch_b.name }}">In {{ arch_b.name }} Only</option>
                </select>
            </div>
            <div><label for="id_multilib" title="Show multilib packages"><tt>[multilib]</tt> Visible</label>
                <input type="checkbox" name="multilib" id="id_multilib" value="multilib"/></div>
            <div><label for="id_minor" title="Show minor version mismatches">Minor Version Mismatches</label>
                <input type="checkbox" name="minor" id="id_minor" value="minor"/></div>
            <div ><label>&nbsp;</label><input title="Reset search criteria" type="button" id="criteria_reset" value="Reset"/></div>
        </fieldset>
        </form>
    </div>

    <table id="table_differences" class="results">
        <thead>
            <tr>
                <th>Package Name</th>
                <th>Repository</th>
                <th>{{ arch_a.name }} Version</th>
                <th>{{ arch_b.name }} Version</th>
            </tr>
        </thead>
        <tbody id="tbody_differences">
            {% for diff in differences %}
            <tr class="{% cycle 'odd' 'even' %} {{ diff.classes }}">
                <td>{{ diff.pkgname }}</td>
                <td>{{ diff.repo.name }}</td>
                {% if diff.pkg_a %}
                <td>{% pkg_details_link diff.pkg_a diff.pkg_a.full_version True %}</td>
                {% else %}<td>-</td>{% endif %}
                {% if diff.pkg_b %}
                <td>{% pkg_details_link diff.pkg_b diff.pkg_b.full_version True %}</td>
                {% else %}<td>-</td>{% endif %}
            </tr>
            {% endfor %}
        </tbody>
    </table>
</div>

<div class="box">
    <h2>Multilib Differences to Main Packages</h2>

    <table id="table_multilib_differences" class="results">
        <thead>
            <tr>
                <th>Multilib Name</th>
                <th>Multilib Version</th>
                <th>i686 Version</th>
                <th>i686 Name</th>
                <th>i686 Repo</th>
                <th>Multilib Last Updated</th>
                <th>i686 Last Updated</th>
            </tr>
        </thead>
        <tbody>
            {% for pkg1, pkg2 in multilib_differences %}
            <tr class="{% cycle 'odd' 'even' %}">
                <td>{% pkg_details_link pkg1 %}</td>
                <td><span{% if pkg1.flag_date %} class="flagged"{% endif %}>{{ pkg1.full_version }}</span></td>
                <td><span{% if pkg2.flag_date %} class="flagged"{% endif %}>{{ pkg2.full_version }}</span></td>
                <td>{% pkg_details_link pkg2 %}</td>
                <td>{{ pkg2.repo }}</td>
                <td>{{ pkg1.last_update|date }}</td>
                <td>{{ pkg2.last_update|date }}</td>
            </tr>
            {% endfor %}
        </tbody>
    </table>

</div>
{% endblock %}

{% block script_block %}
{% load cdn %}{% jquery %}{% jquery_tablesorter %}
<script type="text/javascript" src="{% static "archweb.js" %}"></script>
<script type="text/javascript">
$(document).ready(function() {
    $('#table_differences').tablesorter({widgets: ['zebra'], sortList: [[1,0], [0,0]]});
    $('#table_multilib_differences').tablesorter({widgets: ['zebra'], sortList: [[5, 0]]});
});
$(document).ready(function() {
    $('#diff_filter select').change(filter_packages);
    $('#diff_filter input').change(filter_packages);
    $('#criteria_reset').click(filter_packages_reset);
    // fire function on page load to ensure the current form selections take effect
    filter_packages();
});
</script>
{% endblock %}
