]> git.llucax.com Git - software/sercom.git/blobdiff - sercom/menu.py
Hago el navbar dinamico para tener menos mantenimiento.
[software/sercom.git] / sercom / menu.py
index c85b8176d695d2abac2d4c96067f19a65afdfdad..ef9f5909ed5eb315756c4f65e7be026eba0c4c82 100644 (file)
@@ -1,11 +1,27 @@
 
 from turbogears import url
+from turbogears import controllers
+
+class Menu:
+    def __init__(self, controller):
+        # Armo la lista de subcontrollers
+        self.items = []
+        for i in controller.__dict__:
+            if isinstance(getattr(controller, i),controllers.Controller):
+                self.items.append(i)
+        self.items.sort()
+
+    def __repr__(self):
+        t = """
+        <div id="navbar">
+                       Ir a :
+                       <select OnChange="window.location=this.options[this.selectedIndex].value;">
+                               %s
+                       </select>
+               </div>
+        """
+        s = ''
+        for i in self.items:
+            s = s + u"""<option value="%s" %s>%s</option>" """ % (url('/' + i), i.capitalize().replace('_', ' '))
+        return t % s
 
-menu = []
-menu.append({'name': 'Alumnos', 'url':url('/alumno')})
-menu.append({'name': 'Docentes', 'url':url('/docente')})
-menu.append({'name': 'Grupos', 'url':url('/grupo')})
-menu.append({'name': 'Enunciados', 'url':url('/enunciado')})
-menu.append({'name': 'Ejercicios', 'url':url('/ejercicio')})
-menu.append({'name': 'Casos de Prueba', 'url':url('/caso_de_prueba')})
-menu.append({'name': 'Cursos', 'url':url('/curso')})