Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/EjercitarClient
diff options
context:
space:
mode:
authorceci <caggsld@gmail.com>2013-08-08 01:59:40 (GMT)
committer ceci <caggsld@gmail.com>2013-08-08 01:59:40 (GMT)
commit9445d7cebe5eef1aad40fb6bba019ee48be2beec (patch)
tree5282a7ad7a97353249e86a0afcea60b0c800f970 /EjercitarClient
parentc19b8104b0c17ad747ad664f6f3827423621c25f (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.py23
-rw-r--r--EjercitarClient/gui/Ejercitario.py24
-rw-r--r--EjercitarClient/gui/Login.py71
-rw-r--r--EjercitarClient/gui/Temas.py9
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)