]> git.llucax.com Git - software/sercom.git/commitdiff
Muestro ultimas entregas y fix al uso de Zipfile
authorRicardo Markiewicz <rmarkie@fi.uba.ar>
Sat, 10 Mar 2007 22:49:52 +0000 (22:49 +0000)
committerRicardo Markiewicz <rmarkie@fi.uba.ar>
Sat, 10 Mar 2007 22:49:52 +0000 (22:49 +0000)
sercom/controllers.py
sercom/subcontrollers/misentregas/__init__.py
sercom/templates/welcome.kid

index 4954d5625fe9c7ed7e5a46dc44956a5058c07892..048a7b506c32fe6e4f402892e45481cc1330ec82 100644 (file)
@@ -6,7 +6,7 @@ from turbogears import identity, redirect
 from cherrypy import request, response
 from turbogears.toolbox.catwalk import CatWalk
 import model
 from cherrypy import request, response
 from turbogears.toolbox.catwalk import CatWalk
 import model
-from model import InstanciaDeEntrega, Correccion, AND, DateTimeCol
+from model import InstanciaDeEntrega, Correccion, AND, DateTimeCol, Entrega
 # from sercom import json
 
 from subcontrollers import *
 # from sercom import json
 
 from subcontrollers import *
@@ -47,11 +47,13 @@ class Root(controllers.RootController):
                 instancias_activas=instancias, now=now)
         
         if 'entregar' in identity.current.permissions:
                 instancias_activas=instancias, now=now)
         
         if 'entregar' in identity.current.permissions:
+            # Proximas instancias de entrega
             instancias = list(InstanciaDeEntrega.select(
                 AND(InstanciaDeEntrega.q.inicio <= now,
             instancias = list(InstanciaDeEntrega.select(
                 AND(InstanciaDeEntrega.q.inicio <= now,
-                    InstanciaDeEntrega.q.fin > now))
-                        .orderBy(InstanciaDeEntrega.q.fin))
-            return dict(instancias_activas=instancias, now=now)
+                    InstanciaDeEntrega.q.fin > now)).orderBy(InstanciaDeEntrega.q.fin))
+            # Ultimas N entregas realizadas
+            entregas = list(Entrega.select(Entrega.q.entregadorID == identity.current.user.id))
+            return dict(instancias_activas=instancias, now=now, entregas=entregas)
         return dict()
 
     @expose(template='.templates.login')
         return dict()
 
     @expose(template='.templates.login')
index e6f97fb1ba0c517aaeb83577bccca67cda7d6c9a..1ca20cbfac8796353b311b4f9bbc81c67f492157 100644 (file)
@@ -142,7 +142,7 @@ class MisEntregasController(controllers.Controller, identity.SecureResource):
     def create(self, archivo, ejercicio, **kw):
         """Save or create record to model"""
         try:
     def create(self, archivo, ejercicio, **kw):
         """Save or create record to model"""
         try:
-            zfile = ZipFile(StringIO(archivo.file.read()), 'r')
+            zfile = ZipFile(archivo.file)
         except BadZipfile:
             flash(_(u'El archivo ZIP no es valido'))
             raise redirect('list')
         except BadZipfile:
             flash(_(u'El archivo ZIP no es valido'))
             raise redirect('list')
index cb2819359a02a3998909da3906537ef0cf848761..603637b3044e1cd857ce775656c2f69707425490 100644 (file)
@@ -38,7 +38,6 @@
     </div>
 
     <div py:if="'entregar' in identity.current.permissions and 'admin' not in identity.current.permissions">
     </div>
 
     <div py:if="'entregar' in identity.current.permissions and 'admin' not in identity.current.permissions">
-                       <h1>Soy entregar</h1>
         <h2>Instancias de Entrega</h2>
         <div py:if="len(instancias_activas)">
             <ul py:for="instancia in instancias_activas">
         <h2>Instancias de Entrega</h2>
         <div py:if="len(instancias_activas)">
             <ul py:for="instancia in instancias_activas">
                 </li>
             </ul>
         </div>
                 </li>
             </ul>
         </div>
-        <div py:if="not len(instancias_activas)">
-            No hay Ejercicios con entregas en curso en este momento.
-        </div>
+        <h2>Últimas entregas realizadas</h2>
+        <table py:if="len(entregas)">
+            <tr>
+                <th>Ejercicio</th>
+                <th>Fecha Entrega</th>
+            </tr>
+            <tr py:for="e in entregas">
+                <td>${e.instancia.ejercicio.shortrepr()}</td>
+                <td>${e.fecha}</td>
+            </tr>
+        </table>
     </div>
 </body>
 </html>
     </div>
 </body>
 </html>