mirror_details.html 4.48 KB
Newer Older
Dan McGee's avatar
Dan McGee committed
1
{% extends "base.html" %}
2
{% load static %}
Dan McGee's avatar
Dan McGee committed
3
{% load mirror_status %}
4
{% load admin_urls %}
Dan McGee's avatar
Dan McGee committed
5
6
7

{% block title %}Arch Linux - {{ mirror.name }} - Mirror Details{% endblock %}

8
{% block head %}<link rel="stylesheet" type="text/css" href="{% static "flags/fam.css" %}" media="screen" />{% endblock %}
9

Dan McGee's avatar
Dan McGee committed
10
{% block content %}
11
<div class="box">
Dan McGee's avatar
Dan McGee committed
12
13
    <h2>Mirror Details: {{ mirror.name }}</h2>

14
15
16
17
18
19
    {% if perms.mirrors.change_mirror %}
    <ul class="admin-actions">
        <li><a href="{% url 'admin:mirrors_mirror_change' mirror.pk %}" title="Edit mirror">Edit Mirror</a></li>
    </ul>
    {% endif %}

20
    <table class="compact">
Dan McGee's avatar
Dan McGee committed
21
22
23
        <tr>
            <th>Name:</th>
            <td>{{ mirror.name }}</td>
Dan McGee's avatar
Dan McGee committed
24
25
        </tr>
        <tr>
Dan McGee's avatar
Dan McGee committed
26
27
            <th>Tier:</th>
            <td>{{ mirror.get_tier_display }}</td>
Dan McGee's avatar
Dan McGee committed
28
29
30
        </tr>
        <tr>
            <th>Has ISOs:</th>
31
            <td>{{ mirror.isos|yesno|capfirst }}</td>
Dan McGee's avatar
Dan McGee committed
32
33
34
35
        </tr>
        {% if user.is_authenticated %}
        <tr>
            <th>Public:</th>
36
            <td>{{ mirror.public|yesno|capfirst }}</td>
Dan McGee's avatar
Dan McGee committed
37
38
39
        </tr>
        <tr>
            <th>Active:</th>
40
            <td>{{ mirror.active|yesno|capfirst }}</td>
Dan McGee's avatar
Dan McGee committed
41
        </tr>
Dan McGee's avatar
Dan McGee committed
42
43
44
45
        <tr>
            <th>Created:</th>
            <td>{{ mirror.created }}</td>
        </tr>
46
47
48
49
        <tr>
            <th>Last Modified:</th>
            <td>{{ mirror.last_modified }}</td>
        </tr>
Dan McGee's avatar
Dan McGee committed
50
51
52
53
        <tr>
            <th>Rsync IPs:</th>
            <td class="wrap">{{mirror.rsync_ips.all|join:', '}}</td>
        </tr>
54
        {% if perms.mirrors.change_mirror %}
Dan McGee's avatar
Dan McGee committed
55
56
        <tr>
            <th>Admin Email:</th>
Dan McGee's avatar
Dan McGee committed
57
            <td>{% if mirror.admin_email %}<a href="mailto:{{ mirror.admin_email }}">{{ mirror.admin_email }}</a>{% else %}None{% endif %}</td>
Dan McGee's avatar
Dan McGee committed
58
        </tr>
59
60
61
62
        <tr>
            <th>Alternate Email:</th>
            <td>{% if mirror.alternate_email %}<a href="mailto:{{ mirror.alternate_email }}">{{ mirror.alternate_email }}</a>{% else %}None{% endif %}</td>
        </tr>
63
        {% endif %}
64
65
66
67
        <tr>
            <th>Flyspray Issue:</th>
            <td>{% if mirror.bug %}<a href="https://bugs.archlinux.org/task/{{ mirror.bug }}">FS#{{ mirror.bug }}</a>{% endif %}</td>
        </tr>
Dan McGee's avatar
Dan McGee committed
68
69
        <tr>
            <th>Notes:</th>
Dan McGee's avatar
Dan McGee committed
70
            <td class="wrap">{{ mirror.notes|linebreaks }}</td>
Dan McGee's avatar
Dan McGee committed
71
72
        </tr>
        <tr>
Dan McGee's avatar
Dan McGee committed
73
74
75
76
77
            <th>Upstream:</th>
            <td>{% if mirror.upstream %}
                <a href="{{ mirror.upstream.get_absolute_url }}"
                    title="Mirror details for {{ mirror.upstream.name }}">{{ mirror.upstream.name }}</a>
                {% else %}None{% endif %}</td>
Dan McGee's avatar
Dan McGee committed
78
79
        </tr>
        <tr>
Dan McGee's avatar
Dan McGee committed
80
81
            <th>Downstream:</th>
            {% with mirror.downstream as ds_mirrors %}
82
            <td class="wrap">{% if ds_mirrors %}
Dan McGee's avatar
Dan McGee committed
83
84
                {% for ds in ds_mirrors %}
                <a href="{{ ds.get_absolute_url }}"
85
86
87
88
                    title="Mirror details for {{ ds.name }}">{{ ds.name }}</a>{% comment %}
                {% endcomment %}{% if not ds.active %} <span class="testing-dep">(inactive)</span>{% endif %}{% comment %}
                {% endcomment %}{% if not ds.public %} <span class="testing-dep">(private)</span>{% endif %}{% comment %}
                {% endcomment %}{% if not forloop.last %}, {% endif %}{% endfor %}
Dan McGee's avatar
Dan McGee committed
89
                {% else %}None{% endif %}</td>
Dan McGee's avatar
Dan McGee committed
90
91
            {% endwith %}
        </tr>
Dan McGee's avatar
Dan McGee committed
92
93
94
95
        {% endif %}
    </table>

    <h3>Available URLs</h3>
96
    {% include "mirrors/mirror_details_urls.html" %}
97
98

    <h3>Error Log</h3>
99
    {% include "mirrors/error_table.html" %}
100
101
102
103
</div>

<div class="box">
    <h2>Mirror Status Charts</h2>
104

105
106
107
    <p>Periodic checks of the mirrors are done from various geographic
    locations, IP addresses, and using IPv4 or IPv6. These results are
    summarized in graphical form below.</p>
108

109
    <div id="charts-container"></div>
Dan McGee's avatar
Dan McGee committed
110
</div>
111
112
113
{% endblock %}

{% block script_block %}
114
{% load cdn %}{% jquery %}{% jquery_tablesorter %}{% d3js %}
115
<script type="text/javascript" src="{% static "archweb.js" %}"></script>
116
<script type="text/javascript" src="{% static "mirror_status.js" %}"></script>
Jelle van der Waa's avatar
Jelle van der Waa committed
117
<script type="text/javascript" nonce={{ CSP_NONCE }}>
Dan McGee's avatar
Dan McGee committed
118
119
$(document).ready(function() {
    $("#available_urls:has(tbody tr)").tablesorter(
120
121
        {widgets: ['zebra'], sortList: [[1,0], [2,0]],
        headers: { 8: { sorter: 'mostlydigit' }, 9: { sorter: 'mostlydigit' }, 10: { sorter: 'mostlydigit' } } });
122
123
});
$(document).ready(function() {
124
    draw_graphs("/mirrors/locations/json/", "./json/", "#charts-container");
Dan McGee's avatar
Dan McGee committed
125
126
});
</script>
Dan McGee's avatar
Dan McGee committed
127
{% endblock %}