]> git.llucax.com Git - software/sercom.git/blobdiff - sercom/templates/welcome.kid
Permitir pasar el el archivo de configuración por línea de comandos al tester.
[software/sercom.git] / sercom / templates / welcome.kid
index 606fe954b7def6ab657f91f13085a092ef292031..035decdb54377011587fde374983832c687f510e 100644 (file)
 <?python from turbogears import identity ?>
 
 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://purl.org/kid/ns#"
-       py:extends="'master.kid'">
+    py:extends="'master.kid'">
 <head>
 <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
 <title>Dashboard - SERCOM</title>
 </head>
 <body>
-       <div py:if="'admin' in identity.current.permissions">
-               <h1>Dashboard</h1>
-               <h2>Correcciones</h2>
-               <div>
-                       <span py:if="record['entregas_para_corregir'] != 0">
-                               En este momento tenes <a href="${tg.url('/correccion/')}">${record['entregas_para_corregir']}</a> entregas para corregir.
-                       </span> 
-                       <span py:if="record['entregas_para_corregir'] == 0">
-                               No hay entregas que corregir.
-                       </span> 
-               </div>
-               <h2>Instancias de Entrega</h2>
-               <div>
-                       <span py:if="record['proxima_entrega'] is not None">La proxima Entrega vence el ${record['proxima_entrega']}.</span>
-                       <span py:if="record['proxima_entrega'] is None">En este momento no hay ninguna Entrega en curso.</span>
-               </div>
-       </div>
+    <div py:if="'admin' in identity.current.permissions">
+        <h1>Dashboard</h1>
+        <h2>Correcciones</h2>
+        <div py:if="a_corregir">
+            En este momento tenes <a href="${tg.url('/correccion/')}">${a_corregir}</a> entregas para corregir.
+        </div>
+        <div py:if="not a_corregir">
+            En este momento no tenés entregas para corregir.
+        </div>
+        <h2>Instancias de Entrega</h2>
+        <div py:if="len(instancias_activas)">
+            <ul py:for="instancia in instancias_activas">
+                <li>
+                <?python delta = instancia.fin - now ?>
+                La entrega ${instancia.numero} del
+                ejercicio ${instancia.ejercicio.numero} vence
+                el ${instancia.fin.strftime(r'%A %d de %B a las %R')}
+                (falta ${delta.days} días,
+                ${delta.seconds//3600} horas y
+                ${delta.seconds//60%60} minutos) y tiene
+                ${len(instancia.entregas)} entregas realizadas.
+                </li>
+            </ul>
+        </div>
+        <div py:if="not len(instancias_activas)">
+            No hay Ejercicios con entregas en curso en este momento.
+        </div>
+    </div>
 
-
-       <div py:if="'entregar' in identity.current.permissions and 'admin' not in identity.current.permissions">
-               <h1>Soy entregar</h1>
-       </div>
+    <div py:if="'entregar' in identity.current.permissions and 'admin' not in identity.current.permissions">
+        <h2>Instancias de Entrega</h2>
+        <div py:if="len(instancias_activas)">
+            <ul py:for="instancia in instancias_activas">
+                <li>
+                <?python delta = instancia.fin - now ?>
+                La entrega ${instancia.numero} del
+                ejercicio ${instancia.ejercicio.numero} vence
+                el ${instancia.fin.strftime(r'%A %d de %B a las %R')}
+                                                               <br />
+                                                               (falta ${delta.days} días,
+                ${delta.seconds//3600} horas y
+                ${delta.seconds//60%60} minutos).
+                </li>
+            </ul>
+        </div>
+        <div py:if="not len(instancias_activas)">
+                                       No hay fechas de entrega a vencer.
+                               </div>  
+                               <h2>Últimas entregas realizadas</h2>
+        <table py:if="len(entregas)">
+            <tr>
+                <th>Curso</th>
+                <th>Ejercicio</th>
+                <th>Fecha Entrega</th>
+            </tr>
+            <tr py:for="e in entregas">
+                <td>${e.instancia.ejercicio.curso.shortrepr()}</td>
+                <td>${e.instancia.ejercicio.enunciado.nombre}</td>
+                <td>${e.fecha}</td>
+                                               </tr>
+                                               <tr>
+                                                       <td colspan="3" align="right">
+                                                               <a href="${tg.url('/mis_entregas/list')}">Ver todas</a>
+                                                       </td>
+                                               </tr>
+        </table>
+                               <h2 py:if="len(correcciones)">Te han corregido los siguientes ejercicios</h2>
+        <table py:if="len(correcciones)">
+            <tr>
+                <th>Curso</th>
+                <th>Ejercicio</th>
+                <th>Fecha</th>
+                <th>Corrector</th>
+                <th>Nota</th>
+            </tr>
+            <tr py:for="e in correcciones">
+                <td>${e.instancia.ejercicio.curso.shortrepr()}</td>
+                <td>${e.instancia.ejercicio.enunciado.nombre}</td>
+                <td>${e.corregido}</td>
+                <td>${e.corrector.shortrepr()}</td>
+                                                               <td>${e.nota}</td>
+                                               </tr>
+                                               <tr>
+                                                       <td colspan="5" align="right">
+                                                               <a href="${tg.url('/mis_correcciones/list')}">Ver todas</a>
+                                                       </td>
+                                               </tr>
+        </table>
+    </div>
 </body>
 </html>