Interface details
authorGuillaume Subiron <maethor@subiron.org>
Thu, 7 Jun 2012 12:32:18 +0000 (14:32 +0200)
committerJulien Rabier <taziden@flexiden.org>
Thu, 7 Jun 2012 17:34:33 +0000 (19:34 +0200)
main.py
templates/admin_groups.html
templates/admin_users.html
templates/admin_vote_edit.html
templates/admin_vote_new.html

diff --git a/main.py b/main.py
index 3effbb2..d7bb5e9 100755 (executable)
--- a/main.py
+++ b/main.py
@@ -287,7 +287,7 @@ def admin_user_add():
 def admin_groups():
     if not session.get('user').get('is_admin'):
         abort(401)
-    groups = query_db('select * from groups')
+    groups = query_db('select groups.*, count(user_group.id_user) as nb_users from (select groups.*, count(votes.id) as nb_votes from groups left join votes on votes.id_group = groups.id group by groups.id) as groups left join user_group on user_group.id_group = groups.id group by groups.id')
     return render_template('admin_groups.html', groups=groups)
 
 @app.route('/admin/groups/add', methods=['POST'])
index 966372e..adb8656 100644 (file)
@@ -21,8 +21,8 @@
     {% for group in groups %}
     <tr>
         <td><strong>{{ group.name }}</strong></td>
-        <td>TODO</td>
-        <td>TODO</td>
+        <td>{{ group.nb_users }}</td>
+        <td>{{ group.nb_votes }}</td>
         <td>{% if group.system %}<span class="label label-warning">system</span>{% else %}<a href="{{ url_for('admin_group_del', idgroup=group.id) }}" class="btn btn-danger btn-mini">Supprimer</a>{% endif %}</td>
     </tr>
     {% endfor %}
@@ -38,7 +38,9 @@
   <form action="{{ url_for('admin_group_add') }}" method="post" class="form-inline">
   <fieldset><legend>Ajouter un groupe</legend>
       <br />
-      <input type="text" name="name" id="name" value="Nom" />
+      <input type="text" name="name" id="name" value="Nom" 
+        onfocus="if(this.value=='Nom')this.value='';"
+        onblur="if(this.value=='')this.value='Nom';" />
       <input type="submit" class="btn btn-primary" value="Ajouter" />
   </fieldset>
   </form>
index 3c39bf0..2593ae0 100644 (file)
@@ -2,7 +2,7 @@
 {% block subtitle %}Administrer les utilisateurs{% endblock %}
 {% block body %}
 <div class="row">
-  <hr />
+  <a class="pull-right btn btn-primary" href="{{ url_for('admin_user_add') }}">+ Ajouter un utilisateur</a>
   {% if not users %}
   <div class="alert">Il n'y a aucun user.</div>
   {% else %}
@@ -33,5 +33,6 @@
   </table>
   <p>
   {% endif %}
+  <a class="pull-right btn btn-primary" href="{{ url_for('admin_user_add') }}">+ Ajouter un utilisateur</a>
 {% endblock %}
 
index a0adb07..215814c 100644 (file)
         <tfoot>
           <tr>
             <form action="{{ url_for('admin_vote_addchoice', voteid=vote.id) }}" method="post">
-              <td><input type="text" name="title" value="Nouveau choix" /></td>
+              <td><input type="text" name="title" value="Nouveau choix"
+                onfocus="if(this.value=='Nouveau choix')this.value='';"
+                onblur="if(this.value=='')this.value='Nouveau choix';" /></td>
               <td><input type="submit" class="btn btn-small btn-primary" value="+ Ajouter" />
             </form>
           </tr>
         <tfoot>
           <tr>
             <form action="{{ url_for('admin_vote_addattachment', voteid=vote.id) }}" method="post">
-              <td><input type="text" name="url" value="Nouveau document" /></td>
+              <td><input type="text" name="url" value="Nouveau document" 
+                onfocus="if(this.value=='Nouveau document')this.value='';"
+                onblur="if(this.value=='')this.value='Nouveau document';" /></td>
               <td><input type="submit" class="btn btn-small btn-primary" value="+ Ajouter" />
             </form>
           </tr>
index 165fece..8ae0b9a 100644 (file)
     <label class="control-label">Options</label>
     <div class="controls">
       <label class="checkbox">
-        <input type="checkbox" name="transparent" />
+        <input type="checkbox" name="transparent" checked />
         Les votants peuvent-ils voir le choix des autres ?
       </label>
       <label class="checkbox">
-        <input type="checkbox" name="public" />
+        <input type="checkbox" name="public" checked />
         Le vote est-il visible par tous ?
       </label>
       <label class="checkbox">