New source stats selection form
authorJean-Michel Nirgal Vourgère <jmv@nirgal.com>
Sun, 1 Aug 2010 19:50:20 +0000 (19:50 +0000)
committerJean-Michel Nirgal Vourgère <jmv@nirgal.com>
Sun, 1 Aug 2010 19:50:20 +0000 (19:50 +0000)
Announced changes

bin/djais/views.py
html_templates/index.html
html_templates/sources_index.html
html_templates/vessel_index.html

index 003e10206901ac2d896f70ce1afcd1468e0e8767..9726731614ff54fad6b0bf446a7bf616bb997225 100644 (file)
@@ -679,6 +679,11 @@ periods = ({
     'seconds': 90*24*60*60
     })
         
+class StatsSelectorForm(forms.Form):
+    peers = forms.ChoiceField(choices=[('', 'All')] + [(id4,source['name']) for id4,source in peers_get_config().iteritems()])
+    types = forms.ChoiceField(choices=[('', 'All'), ('bytes', 'Bandwidth'), ('counts', "Packet'izer")], initial='counts')
+    periods = forms.ChoiceField(choices=[(period['name_tiny'], period['name_long']) for period in periods] + [('', 'All')], initial='6h')
+
 @http_authenticate(auth, 'ais')
 def sources_index(request):
     peers_config = peers_get_config()
@@ -691,7 +696,9 @@ def sources_index(request):
         
     peers_display = sorted(peers_display, key=lambda k: k['id4'])
 
-    return render_to_response('sources_index.html', {'sources':peers_display, 'periods': periods}, RequestContext(request))
+    form = StatsSelectorForm()
+
+    return render_to_response('sources_index.html', {'sources':peers_display, 'periods': periods, 'form': form}, RequestContext(request))
 
 
 @http_authenticate(auth, 'ais')
index c528a5b86eed851146d4ab9d57a4aba033a43430..1bbee219d1668cfb527e5dfd73a03ce44e887c0d 100644 (file)
@@ -6,6 +6,10 @@
 
 <h3>News</h3>
 
+<b>2010-08-01</b><br>
+Web style was improved.<br>
+New source overview page.<br>
+<br>
 <b>2010-07-25</b><br>
 The server was unavailable today between 11:39 and 19:10 GMT, because of an electrical problem.<br>
 <br>
index 90ec25f114c5280c02d744439016aea2afe6d210..28e787387957bdf4f8acfa2f26cc65d0a385105c 100644 (file)
@@ -37,30 +37,8 @@ span.id2 {
 <p>
 
 <form action='stats' method='get'>
-Sources:
-<select name=peers>
-<option value="">All</option>
-{% for source in sources %}
-<option value={{source.id4}}>{{source.name}}</option>
-{% endfor %}
-</select>
-
-Types:
-<select name=types>
-<option value="">All</option>
-<option value=bytes>Bandwidth</option>
-<option value=counts selected>Packet'izer</option>
-</select>
-
-Periods:
-<select name=periods>
-{% for period in periods %}
-<option value={{period.name_tiny}} {% if period.default %}selected{%endif%}>{{period.name_long}}</option>
-{% endfor %}
-<option value="">All</option>
-
-</select>
-
+{% include "fragment_formerror.html" %}
 <input type=submit value="View stats">
 </form>
+
 {% endblock %}
index 01fd63bbad17ccda3c3af5237dcbff75f80e483e..788e79d79c81db09a8a77b7694cbb2d4469a0a6a 100644 (file)
@@ -13,6 +13,6 @@
 <table>
 {{ form.as_table }}
 </table>
-<input type=submit>
+<input type=submit value=Search>
 </form>
 {% endblock %}