From: Ricardo Markiewicz Date: Tue, 13 Mar 2007 02:39:38 +0000 (+0000) Subject: Manejo de notas de AlumnoInscripto X-Git-Tag: 0_9~16 X-Git-Url: https://git.llucax.com/software/sercom.git/commitdiff_plain/591b29da42fc78012736a095361d37f14af11634?ds=inline Manejo de notas de AlumnoInscripto --- diff --git a/sercom/model.py b/sercom/model.py index 2a7f472..6724e87 100644 --- a/sercom/model.py +++ b/sercom/model.py @@ -670,6 +670,10 @@ class AlumnoInscripto(Entregador): #{{{ membresias = MultipleJoin('Miembro', joinColumn='alumno_id') entregas = MultipleJoin('Entrega', joinColumn='alumno_id') correcciones = MultipleJoin('Correccion', joinColumn='alumno_id') + # Notas de la cursada + nota_practica = DecimalCol(size=3, precision=1, default=None) + nota_final = DecimalCol(size=3, precision=1, default=None) + nota_libreta = DecimalCol(size=3, precision=1, default=None) def _get_nombre(self): return self.alumno.padron diff --git a/sercom/subcontrollers/alumno_inscripto/__init__.py b/sercom/subcontrollers/alumno_inscripto/__init__.py index 0ba860f..80f892c 100644 --- a/sercom/subcontrollers/alumno_inscripto/__init__.py +++ b/sercom/subcontrollers/alumno_inscripto/__init__.py @@ -35,14 +35,11 @@ def validate_new(data): #{{{ Formulario class AlumnoInscriptoForm(W.TableForm): class Fields(W.WidgetsList): - linstancia = W.Label(label=_(u'Instancia de Entrega')) - lentregador = W.Label(label=_(u'Entregador')) - lentrega = W.Label(label=_(u'Entrega')) - lcorrector = W.Label(label=_(u'Corrector')) - nota = W.TextField(label=_(u'Nota'), validator=V.Number(not_empty=True, strip=True)) - observaciones = W.TextArea(label=_(u'Observaciones'), validator=V.UnicodeString(not_empty=False, strip=True)) + nota_practica = W.TextField(label=_(u'Nota Practica'), validator=V.Number(not_empty=True, strip=True)) + nota_final = W.TextField(label=_(u'Nota Final'), validator=V.Number(not_empty=True, strip=True)) + nota_libreta = W.TextField(label=_(u'Nota Libreta'), validator=V.Number(not_empty=True, strip=True)) fields = Fields() - javascript = [W.JSSource("MochiKit.DOM.focusOnLoad('form_instancia');")] + javascript = [W.JSSource("MochiKit.DOM.focusOnLoad('form_nota_practica');")] def get_cursos(): return [(0, u'---')] + [(fk1.id, fk1.shortrepr()) for fk1 in Curso.select()] @@ -81,26 +78,18 @@ class AlumnoInscriptoController(controllers.Controller, identity.SecureResource) r = cls.select(cls.q.cursoID == cursoID) return dict(records=r, name=name, namepl=namepl, form=filtro, vfilter=vfilter) - @expose(template='kid:%s.templates.edit' % __name__) - def edit(self, id, **kw): + @expose(template='kid:%s.templates.notas' % __name__) + def notas(self, id, **kw): """Edit record in model""" r = validate_get(id) - r.linstancia = r.instancia.shortrepr() - r.lentregador = r.entregador.shortrepr() - r.lentrega = r.entrega.shortrepr() - r.lcorrector = r.corrector.shortrepr() return dict(name=name, namepl=namepl, record=r, form=form) @validate(form=form) - @error_handler(edit) + @error_handler(notas) @expose() def update(self, id, **kw): """Save or create record to model""" - from sqlobject import DateTimeCol - r = Correccion.get(id) - r.nota = kw['nota'] - r.observaciones = kw['observaciones'] - r.corregido = DateTimeCol.now() + r = validate_set(id, kw) flash(_(u'El %s fue actualizado.') % name) raise redirect('../list') @@ -110,11 +99,5 @@ class AlumnoInscriptoController(controllers.Controller, identity.SecureResource) r = validate_get(id) return dict(name=name, namepl=namepl, record=r) - @expose(template='kid:%s.templates.entregas' % __name__) - @paginate('records') - def entregas(self, id): - r = validate_get(id) - return dict(records=r.entregas, correccion = id) - #}}} diff --git a/sercom/subcontrollers/alumno_inscripto/templates/list.kid b/sercom/subcontrollers/alumno_inscripto/templates/list.kid index d407d2f..fb2fd7c 100644 --- a/sercom/subcontrollers/alumno_inscripto/templates/list.kid +++ b/sercom/subcontrollers/alumno_inscripto/templates/list.kid @@ -27,6 +27,7 @@ Tutor Ver + Notas