summaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
Diffstat (limited to 'templates')
-rw-r--r--templates/mirrors/status.html53
-rw-r--r--templates/mirrors/status_table.html29
2 files changed, 82 insertions, 0 deletions
diff --git a/templates/mirrors/status.html b/templates/mirrors/status.html
new file mode 100644
index 00000000..8dd6fa11
--- /dev/null
+++ b/templates/mirrors/status.html
@@ -0,0 +1,53 @@
+{% extends "base.html" %}
+
+{% block title %}Arch Linux - Mirror Status{% endblock %}
+
+{% block content %}
+<div id="mirrorstatus" class="box">
+ <h2>Mirror Status</h2>
+
+ <h3>Out of Sync Mirrors</h3>
+ {% with bad_urls as urls %}
+ {% include "mirrors/status_table.html" %}
+ {% endwith %}
+
+ <h3>Successfully Syncing Mirrors</h3>
+ {% with good_urls as urls %}
+ {% include "mirrors/status_table.html" %}
+ {% endwith %}
+
+ <h3>Mirror Syncing Error Log</h3>
+ <table class="results">
+ <thead>
+ <tr>
+ <th>Mirror URL</th>
+ <th>Protocol</th>
+ <th>Country</th>
+ <th>Error Message</th>
+ <th>Last Occurred</th>
+ <th>Occurrences (last 24 hours)</th>
+ </tr>
+ </thead>
+ <tbody>
+ {% for log in error_logs %}
+ <tr class="{% cycle 'odd' 'even' %}">
+ <td>{{ log.url__url }}</td>
+ <td>{{ log.url__protocol__protocol }}</td>
+ <td>{{ log.url__mirror__country }}</td>
+ <td>{{ log.error }}</td>
+ <td>{{ log.check_time__max|date:'Y-m-d H:i' }}</td>
+ <td>{{ log.error__count }}</td>
+ </tr>
+ {% endfor %}
+ </tbody>
+ </table>
+
+</div>
+{% load cdn %}{% jquery %}
+<script type="text/javascript" src="/media/jquery.tablesorter.min.js"></script>
+<script type="text/javascript">
+$(document).ready(function() {
+ $(".results").tablesorter({widgets: ['zebra']});
+});
+</script>
+{% endblock %}
diff --git a/templates/mirrors/status_table.html b/templates/mirrors/status_table.html
new file mode 100644
index 00000000..d7f5b0ec
--- /dev/null
+++ b/templates/mirrors/status_table.html
@@ -0,0 +1,29 @@
+{% load mirror_status %}
+<table class="results">
+ <thead>
+ <tr>
+ <th>Mirror URL</th>
+ <th>Protocol</th>
+ <th>Country</th>
+ <th>Last Sync</th>
+ <th>Delay (hh:mm)</th>
+ <th>μ Duration (secs)</th>
+ <th>σ Duration (secs)</th>
+ <th>Mirror Score</th>
+ </tr>
+ </thead>
+ <tbody>
+ {% for m_url in urls %}
+ <tr class="{% cycle 'odd' 'even' %}">
+ <td>{{ m_url.url }}</td>
+ <td>{{ m_url.protocol }}</td>
+ <td>{{ m_url.mirror.country }}</td>
+ <td>{{ m_url.last_sync|date:'Y-m-d H:i'|default:'unknown' }}</td>
+ <td>{{ m_url.delay|duration|default:'unknown' }}</td>
+ <td>{{ m_url.duration_avg|floatformat:2|default:'unknown' }}</td>
+ <td>{{ m_url.duration_stddev|floatformat:2|default:'unknown' }}</td>
+ <td>{{ m_url.score|floatformat:1|default:'unknown' }}</td>
+ </tr>
+ {% endfor %}
+ </tbody>
+</table>