]> git.llucax.com Git - software/sercom-old.git/blobdiff - src/sc_suwi
Se ordenan correcciones por padron.
[software/sercom-old.git] / src / sc_suwi
index fe9c5fc9016f50a63a646b8047973c0c005cc85a..a6b23bcd97c9fbbc0eead69a9235f43dabdd8b82 100755 (executable)
@@ -21,6 +21,10 @@ import cgitb; cgitb.enable()
 #XXX HORRIBLE
 PASSWD = conf.get('general', 'cgipw')
 
+def cmp_correccion_padron(e1, e2):
+    'Compara 2 entregas, según el padrón del alumno.'
+    return cmp(e1.inscripto.padron, e2.inscripto.padron)
+
 def http_header_html(req):
     return 'Content-type: text/html\r\n\r\n'
 
@@ -246,7 +250,7 @@ def zip(req, entrega_id):
     def zip_path(path, base, zipfd):
         paths = os.listdir(path)
         for p in paths:
-            if os.path.isdir(p):
+            if os.path.isdir(os.path.join(path, p)):
                 zip_path(os.path.join(path, p), os.path.join(base, p), zipfd)
             else:
                 zipfd.write(os.path.join(path, p), os.path.join(base, p))
@@ -303,7 +307,9 @@ def correcciones(req, entrega_id):
     r = '<h1>Entrega %d.%d del curso %d-%d-%d</h1>\n' \
         % (e.nroEjercicio, e.entrega, c.anio, c.cuatrimestre, c.curso)
     r += header()
-    for c in e.correcciones:
+    correcciones = list(e.correcciones)
+    correcciones.sort(cmp_correccion_padron)
+    for c in correcciones:
         r += row(c)
     r += footer()
     return r