]> git.llucax.com Git - z.facultad/75.52/sercom.git/commitdiff
curso
authortailor <ndimov@gmail.com>
Tue, 27 Feb 2007 22:57:57 +0000 (22:57 +0000)
committertailor <ndimov@gmail.com>
Tue, 27 Feb 2007 22:57:57 +0000 (22:57 +0000)
* Un poco de curso como para ir tomandole la mano
* Sinceramente, es para mandar algo nomas..

sercom/subcontrollers/curso/__init__.py
sercom/subcontrollers/curso/templates/list.kid

index 2ee08159ee1963b1790c5d54ff2ad93eedee1c76..bd66334065bf348a9ef3742413107f3d72203db2 100644 (file)
@@ -10,7 +10,7 @@ from turbogears import identity
 from turbogears import paginate
 from docutils.core import publish_parts
 from sercom.subcontrollers import validate as val
-from sercom.model import Curso, Ejercicio, Alumno, Docente, Grupo
+from sercom.model import Curso, Ejercicio, Alumno, Docente, Grupo, DocenteInscripto
 #}}}
 
 #{{{ Configuración
@@ -57,16 +57,16 @@ class CursoForm(W.TableForm):
         descripcion = W.TextArea(name='descripcion', label=_(u'Descripcion'),
             help_text=_(u'Descripcion.'),
             validator=V.UnicodeString(not_empty=False, strip=True))
-#       docentes = W.MultipleSelectField(name="docentes", label=_(u'Docentes'),
-#           help_text=_(u'Docentes asignados al curso'), options=get_docentes,
-#           validator=V.Int(not_empty=True))
-#        alumnos = W.MultipleSelectField(name="alumnos", label=_(u'Alumnos'),
-#            help_text=_(u'Alumnos del curso'), options=get_alumnos,
-#            validator=V.Int(not_empty=True))
+        docentes = W.MultipleSelectField(name="docentes", label=_(u'Docentes'),
+            help_text=_(u'Docentes asignados al curso'), options=get_docentes,
+            validator=V.Int(not_empty=True))
+        alumnos = W.MultipleSelectField(name="alumnos", label=_(u'Alumnos'),
+            help_text=_(u'Alumnos del curso'), options=get_alumnos,
+            validator=V.Int(not_empty=True))
 #        grupos = W.MultipleSelectField(name="grupos", label=_(u'Grupos'),
-#           help_text=_(u'Grupos del curso'), options=get_grupos,
+#          help_text=_(u'Grupos del curso'), options=get_grupos,
 #           validator=V.Int(not_empty=False))
-#       ejercicios = W.MultipleSelectField(name="ejercicios", label=_(u'Ejercicios'),
+#        ejercicios = W.MultipleSelectField(name="ejercicios", label=_(u'Ejercicios'),
 #           help_text=_(u'Ejercicios'), options=get_ejercicios,
 #           validator=V.Int(not_empty=True))
     fields = Fields()
@@ -115,10 +115,23 @@ class CursoController(controllers.Controller, identity.SecureResource):
     @expose()
     def create(self, **kw):
         """Save or create record to model"""
-        validate_new(kw)
+        r = validate_new(kw)
+        docentes = kw.get('docentes', [])
+        alumnos = kw.get('alumnos', [])
+        """ Elimino todos los docentes asignados al curso y los agrego nuevamente""" 
+        for d in DocenteInscripto.selectBy(curso=r):
+            d.destroySelf()
+        """ Agrego la nueva seleccion """ 
+        for d in docentes:
+            r.add_docente(Docente(d))
+        """ Elimino a los alumnos y los vuelvo a agregar """
+        for a in AlumnoInscripto.selectBy(curso=r):
+            d.destroySelf()
+        for a in alumnos:
+            r.add_alumno(Alumno(a))
         flash(_(u'Se creó un nuevo %s.') % name)
         raise redirect('list')
-
+    
     @expose(template='kid:%s.templates.edit' % __name__)
     def edit(self, id, **kw):
         """Edit record in model"""
index d95f54264ee41d84b7e66106f741ec5464383112..52d7c1944eb1a415fa3f885124337c77f227604b 100644 (file)
         <td><span py:replace="record.cuatrimestre">cuatrimestre</span></td>
         <td><span py:replace="record.anio">anio</span></td>
         <td><span py:replace="record.descripcion">descripcion</span></td>
-        <td><span py:replace="record.docentes">docentes</span></td>
-        <td><span py:replace="record.alumnos">alumnos</span></td>
-        <td><span py:replace="record.grupos">grupos</span></td>
-        <td><span py:replace="record.ejercicios">ejercicios</span></td>
+        <td><a py:if="len(record.docentes)" href="${tg.url('/docente/list')}"><span py:replace="len(record.docentes)">Docentes</span></a></td>
+        <td><a py:if="len(record.alumnos)"  href="${tg.url('/alumno/list')}"><span py:replace="len(record.alumnos)">Alumnos</span></a></td>
+        <td><a py:if="len(record.grupos)"  href="${tg.url('/grupo/list')}"><span py:replace="len(record.grupos)">Grupos</span></a></td>
+        <td><a py:if="len(record.ejercicios)" href="${tg.url('/ejercicio/list')}"><span py:replace="len(record.ejercicios)">Ejercicio</span></a></td>
         <td><a href="${tg.url('/curso/edit/%d' % record.id)}">Editar</a>
             <a href="${tg.url('/curso/delete/%d' % record.id)}" onclick="if (confirm('${_(u'Estás seguro? Tal vez sólo quieras desactivarlo mejor...')}')) { var f = document.createElement('form'); this.parentNode.appendChild(f); f.method = 'POST'; f.action = this.href; f.submit(); };return false;">Eliminar</a></td>
     </tr>