]>
Commit | Line | Data |
---|---|---|
d72a55be | 1 | {% extends "../base.html" %} |
f6e6ff79 MT |
2 | |
3 | {% block title %}{{ _("Mirrors") }}{% end block %} | |
4 | ||
5 | {% block body %} | |
6 | <ul class="breadcrumb"> | |
7 | <li> | |
8 | <a href="/">{{ _("Home") }}</a> | |
9 | <span class="divider">/</span> | |
10 | </li> | |
11 | <li class="active"> | |
12 | <a href="/mirrors">{{ _("Mirrors") }}</a> | |
13 | </li> | |
14 | </ul> | |
15 | ||
25afb794 MT |
16 | {% if current_user and current_user.has_perm("manage_mirrors") %} |
17 | <div class="btn-group pull-right"> | |
18 | <a class="btn dropdown-toggle" data-toggle="dropdown" href="#"> | |
19 | {{ _("Actions") }} <span class="caret"></span> | |
20 | </a> | |
21 | <ul class="dropdown-menu"> | |
22 | <li> | |
23 | <a href="/mirror/new"> | |
24 | <i class="icon-asterisk"></i> {{ _("Add new mirror") }} | |
25 | </a> | |
26 | </li> | |
27 | </ul> | |
28 | </div> | |
29 | {% end %} | |
30 | ||
f6e6ff79 | 31 | <div class="page-header"> |
25afb794 | 32 | <h2>{{ _("Mirrors") }}</h2> |
f6e6ff79 MT |
33 | </div> |
34 | ||
25afb794 MT |
35 | <p> |
36 | {{ _("On this page, you will see a list of all mirror servers.") }} | |
37 | </p> | |
f6e6ff79 | 38 | |
25afb794 MT |
39 | {% if mirrors %} |
40 | <table class="table table-striped table-hover"> | |
41 | <thead> | |
42 | <tr> | |
43 | <th>{{ _("Hostname") }} / {{ _("Owner") }}</th> | |
44 | <th></th> | |
45 | <th>{{ _("Last check") }}</th> | |
46 | </tr> | |
47 | </thead> | |
48 | <tbody> | |
49 | {% for mirror in mirrors %} | |
50 | <tr> | |
51 | <td> | |
52 | <a href="/mirror/{{ mirror.hostname }}"> | |
53 | {{ mirror.hostname }} | |
54 | </a> | |
55 | <p class="muted"> | |
56 | {{ mirror.owner or _("N/A") }} | |
57 | </p> | |
58 | </td> | |
59 | <td> | |
60 | [{{ mirror.country_code }}] - | |
f6e6ff79 | 61 | |
c660ff59 | 62 | {% if mirror.status == "OK" %} |
25afb794 MT |
63 | <span class="text-success"> |
64 | {{ _("Up") }} | |
65 | </span> | |
c660ff59 MT |
66 | {% elif mirror.status == "OUTOFSYNC" %} |
67 | <span class="text-warning"> | |
68 | {{ _("Out Of Sync") }} | |
69 | </span> | |
70 | {% elif mirror.status == "ERROR" %} | |
25afb794 MT |
71 | <span class="text-error"> |
72 | {{ _("Down") }} | |
73 | </span> | |
74 | {% else %} | |
75 | <span class="muted"> | |
76 | {{ _("Unknown") }} | |
77 | </span> | |
78 | {% end %} | |
79 | </td> | |
80 | ||
81 | <td> | |
82 | {% if mirror.last_check %} | |
c660ff59 | 83 | {{ format_date(mirror.last_check.timestamp, relative=True) }} |
25afb794 MT |
84 | {% else %} |
85 | {{ _("N/A") }} | |
86 | {% end %} | |
87 | </td> | |
88 | </tr> | |
89 | {% end %} | |
90 | </tbody> | |
91 | </table> | |
92 | {% else %} | |
93 | <p class="muted"> | |
94 | {{ _("There are no mirrors configured, yet.") }} | |
95 | </p> | |
f6e6ff79 MT |
96 | {% end %} |
97 | ||
25afb794 MT |
98 | {% if log %} |
99 | <h2>{{ _("Log") }}</h2> | |
100 | {% module Log(log) %} | |
101 | {% end %} | |
f6e6ff79 | 102 | {% end block %} |