diff options
author | ceci <caggsld@gmail.com> | 2013-08-08 01:59:40 (GMT) |
---|---|---|
committer | ceci <caggsld@gmail.com> | 2013-08-08 01:59:40 (GMT) |
commit | 9445d7cebe5eef1aad40fb6bba019ee48be2beec (patch) | |
tree | 5282a7ad7a97353249e86a0afcea60b0c800f970 /EjercitarClient | |
parent | c19b8104b0c17ad747ad664f6f3827423621c25f (diff) |
Se modificó la interfaz del cliente, donde se agrego registro de Sesion.class
Se agregar registarSesion y se modifico la entidad Sesion.
Diffstat (limited to 'EjercitarClient')
-rw-r--r-- | EjercitarClient/gui/ContenedorTareas.py | 23 | ||||
-rw-r--r-- | EjercitarClient/gui/Ejercitario.py | 24 | ||||
-rw-r--r-- | EjercitarClient/gui/Login.py | 71 | ||||
-rw-r--r-- | EjercitarClient/gui/Temas.py | 9 |
4 files changed, 108 insertions, 19 deletions
diff --git a/EjercitarClient/gui/ContenedorTareas.py b/EjercitarClient/gui/ContenedorTareas.py index 58414b0..4e8be99 100644 --- a/EjercitarClient/gui/ContenedorTareas.py +++ b/EjercitarClient/gui/ContenedorTareas.py @@ -5,14 +5,17 @@ Created on Feb 4, 2013 '''
import gtk
from gui.Ejercitario import Ejercitario
+from suds.client import Client
+
class ContenedorTareas(gtk.HBox):
# This is a callback function. The data arguments are ignored
# in this example. More on callbacks below.
+ WSDL_URL = 'http://localhost:8080/EjercitarServer/EjercitarWSBean?wsdl'
- def __init__(self, id_alumno, id_tarea, descripcion, ventana_padre, vista_temas, cliente_WS):
+ def __init__(self, id_alumno, id_tarea, descripcion, ventana_padre, vista_temas, cliente_WS,ayuda_padres, desde_hogar, estado_animo):
# create a new window
super(ContenedorTareas, self).__init__()
self.ventana_padre = ventana_padre
@@ -20,6 +23,9 @@ class ContenedorTareas(gtk.HBox): self.cliente_WS = cliente_WS
self.id_alumno = id_alumno
self.id_tarea = id_tarea
+ self.ayuda_padres = ayuda_padres
+ self.desde_hogar = desde_hogar
+ self.estado_animo = estado_animo
label_descripcion = gtk.Label(descripcion)
separador = gtk.HSeparator()
@@ -43,6 +49,17 @@ class ContenedorTareas(gtk.HBox): def __comenzar_cb(self, boton):
self.ventana_padre.remove(self.vista_temas)
- ejercitario = Ejercitario(self.cliente_WS, self.id_tarea, self.id_alumno)
+
+ cliente_WS = self.__sincronizar_WS()
+
+ cliente_WS.service.registrarSesion(1,self.id_tarea, self.ayuda_padres, self.desde_hogar, self.estado_animo)
+ ejercitario = Ejercitario(self.cliente_WS, self.id_tarea, self.id_alumno, self.estado_animo)
self.ventana_padre.add (ejercitario)
-
\ No newline at end of file +
+ def __sincronizar_WS(self):
+ try:
+ cliente_WS = Client(self.WSDL_URL)
+
+ except:
+ print "\n\nERROR al instanciar el SINCRONIZAR PROXY:"
+ return cliente_WS
\ No newline at end of file diff --git a/EjercitarClient/gui/Ejercitario.py b/EjercitarClient/gui/Ejercitario.py index 945eb78..a7cbfb8 100644 --- a/EjercitarClient/gui/Ejercitario.py +++ b/EjercitarClient/gui/Ejercitario.py @@ -14,8 +14,9 @@ class Ejercitario(gtk.VBox): # This is a callback function. The data arguments are ignored # in this example. More on callbacks below. - - def __init__(self, cliente_WS, id_tarea, id_alumno): + WSDL_URL = 'http://localhost:8080/EjercitarServer/EjercitarWSBean?wsdl' + + def __init__(self, cliente_WS, id_tarea, id_alumno, estado_animo): # create a new window super(Ejercitario, self).__init__() @@ -23,13 +24,13 @@ class Ejercitario(gtk.VBox): self.id_alumno = id_alumno self.cliente_WS = cliente_WS - self.__inicializar_componentes(id_alumno) + self.__inicializar_componentes(id_alumno, estado_animo) self.siguiente_ejercicio = self.__obtener_siguiente_ejercicio(cliente_WS, 0) self.__organizar_gui(self.siguiente_ejercicio) #self.__sincronizar_temas() self.show_all() - def __inicializar_componentes(self, id_alumno): + def __inicializar_componentes(self, id_alumno, estado_animo): self.table = gtk.Table(6, 6, gtk.TRUE) @@ -47,11 +48,15 @@ class Ejercitario(gtk.VBox): barra_sider = gtk.VBox() - boton_lecciones = gtk.Button("Lecciones") - boton_ejercicios = gtk.Button("Ejercicios") - barra_sider.add(boton_lecciones) - barra_sider.add(boton_ejercicios) - barra_sider.add(gtk.Label("2")) + #boton_lecciones = gtk.Button("Lecciones") + #boton_ejercicios = gtk.Button("Ejercicios") + #barra_sider.add(boton_lecciones) + #barra_sider.add(boton_ejercicios) + estado = gtk.Image() + estado.set_from_file(estado_animo+".png") + barra_sider.add(gtk.Label("Asi estoy hoy")) + barra_sider.add(estado) + self.table.attach(barra_sider, 0,1,1, 4) @@ -124,7 +129,6 @@ class Ejercitario(gtk.VBox): self.solucion2.set_label(siguiente_ejercicio.respuestaList.respuestaList[1].descripcion) self.solucion3.set_label(siguiente_ejercicio.respuestaList.respuestaList[2].descripcion) self.solucion4.set_label(siguiente_ejercicio.respuestaList.respuestaList[3].descripcion) - self.label_enunciado.set_label(siguiente_ejercicio.enunciado) diff --git a/EjercitarClient/gui/Login.py b/EjercitarClient/gui/Login.py index 38d6151..4ede00e 100644 --- a/EjercitarClient/gui/Login.py +++ b/EjercitarClient/gui/Login.py @@ -6,6 +6,11 @@ Created on Feb 2, 2013 import gtk
from gui.Temas import Temas
+
+
+
+
+
class Login(gtk.VBox):
# This is a callback function. The data arguments are ignored
@@ -164,7 +169,67 @@ class Login(gtk.VBox): contenedor_ayuda_casa.add(contenedor_casa)
def __ingresar_cb(self, boton):
- self.ventana_padre.remove(self)
+
id_alumno = int(self.id_estudiante_entry.get_text())
- temas = Temas(self.ventana_padre, id_alumno)
- self.ventana_padre.add(temas)
+
+ #obtener el valor de ayuda padres
+ ayuda_padres = self.obtenerAyudaPadres()
+ desde_hogar = self.obtenerDesdeHogar()
+ estado_animo = self.obtenerEstadoAnimo()
+
+ if(ayuda_padres!=None and desde_hogar!=None and estado_animo!= None):
+ self.ventana_padre.remove(self)
+ temas = Temas(self.ventana_padre, id_alumno, ayuda_padres, desde_hogar, estado_animo)
+ self.ventana_padre.add(temas)
+ else:
+ self.pedir_confirmacion("Debe elegir: (*) su estado de animo, (*) Si hoy le van a ayudar sus padres y (*) Si esta en su casa.","Informe")
+
+ def obtenerEstadoAnimo(self):
+ animoMarcado = ""
+ f = self.feliz.get_active()
+ t = self.triste.get_active()
+ e = self.enamorado.get_active()
+ s = self.suenho.get_active()
+ ning = self.ninguno.get_active()
+ if (not ning):
+ if(f): animoMarcado = "Feliz"
+ if(t): animoMarcado = "Triste"
+ if(e): animoMarcado = "Enamorado"
+ if(s): animoMarcado = "Suenho"
+ return animoMarcado
+ else:
+ return None
+ def obtenerAyudaPadres(self):
+ ret = None
+ si = self.ayuda_padres_si.get_active()
+ no = self.ayuda_padres_no.get_active()
+ ninguno = self.ayuda_padres_ninguno.get_active()
+ if (ninguno == False):
+ if(si): ret = True
+ if(no): ret = False
+ return ret
+ else:
+ return None
+
+ def obtenerDesdeHogar(self):
+ ret = None
+ si = self.desde_hogar_si.get_active()
+ no = self.desde_hogar_no.get_active()
+ ninguno = self.desde_hogar_ninguno.get_active()
+ if (ninguno == False):
+ if(si): ret = True
+ if(no): ret = False
+ return ret
+ else:
+ return None
+
+ def pedir_confirmacion(self,texto,titulo):
+ dialog = gtk.MessageDialog(None, gtk.DIALOG_MODAL,gtk.MESSAGE_INFO, gtk.BUTTONS_OK,texto)
+ dialog.set_title(titulo)
+ response = dialog.run()
+ dialog.destroy()
+ if response == gtk.RESPONSE_YES:
+ print "A respondido que si!"
+
+
+
diff --git a/EjercitarClient/gui/Temas.py b/EjercitarClient/gui/Temas.py index 7511a51..3a0b3cc 100644 --- a/EjercitarClient/gui/Temas.py +++ b/EjercitarClient/gui/Temas.py @@ -16,12 +16,15 @@ class Temas(gtk.VBox): WSDL_URL = 'http://localhost:8080/EjercitarServer/EjercitarWSBean?wsdl'
- def __init__(self, ventana_padre, id_alumno):
+ def __init__(self, ventana_padre, id_alumno, ayuda_padres, desde_hogar, estado_animo):
# create a new window
+
super(Temas, self).__init__()
self.ventana_padre = ventana_padre
self.id_alumno = id_alumno
-
+ self.ayuda_padres = ayuda_padres
+ self.desde_hogar = desde_hogar
+ self.estado_animo = estado_animo
self.__inicializar_componentes()
self.cliente_WS = self.__sincronizar_temas()
self.__organizar_gui(self.cliente_WS)
@@ -46,7 +49,7 @@ class Temas(gtk.VBox): lista_tareas = cliente_WS.service.getTareas(self.id_alumno)
for tarea in lista_tareas:
- nueva_tarea = ContenedorTareas(self.id_alumno, tarea.idTarea, tarea.descripcion, self.ventana_padre, self, self.cliente_WS)
+ nueva_tarea = ContenedorTareas(self.id_alumno, tarea.idTarea, tarea.descripcion, self.ventana_padre, self, self.cliente_WS, self.ayuda_padres, self.desde_hogar, self.estado_animo)
contenedor_lista.add(nueva_tarea)
|