class CrearCuentaUsuario(wx.Frame): def __init__(self, *args, **kw): super(CrearCuentaUsuario, self).__init__(*args, **kw) self.xml = xrc.XmlResource('../View/crear_cuenta_usuario.xml') self.frame = self.xml.LoadFrame(None, 'CrearCuenta_Frame') self.panel = xrc.XRCCTRL(self.frame, 'CrearCuenta_Panel') self.nombre = xrc.XRCCTRL(self.panel, 'Textctrl_Nombre') self.apellido = xrc.XRCCTRL(self.panel, 'Textctrl_Apellido') self.username = xrc.XRCCTRL(self.panel, 'Textctrl_Username') self.password = xrc.XRCCTRL(self.panel, 'Textctrl_Password') self.foto = xrc.XRCCTRL(self.panel, 'Filepicker_Foto') self.button_crear = xrc.XRCCTRL(self.panel, 'wxID_OK') self.button_cancelar = xrc.XRCCTRL(self.panel, 'wxID_CANCEL') self.frame.SetIcon(wx.Icon("../view/System_Images/icon.png")) self.frame.Bind(wx.EVT_BUTTON, self.crear_usuario, self.button_crear) self.frame.Bind(wx.EVT_BUTTON, self.cerrar_frame, self.button_cancelar) self.user_controller = UserController() self.frame.Show() def crear_usuario(self, evt): nombre = self.nombre.GetValue() apellido = self.apellido.GetValue() username = self.username.GetValue() password = self.password.GetValue() foto = self.foto.GetPath() if foto == "": foto = None if nombre and apellido and username and password: if self.user_controller.buscar_usuario(username) == False: if self.user_controller.create_user(nombre, apellido, username, password, foto): wx.MessageBox('El usuario se creo con exito', 'Information', wx.OK | wx.ICON_INFORMATION) self.limpiar_campos() else: msg = "El nombre de usuario %s" % username + " ya existe ingrese otro diferente" wx.MessageBox(msg, 'Error', wx.OK | wx.ICON_ERROR) self.limpiar_usuario() else: wx.MessageBox( 'Todos los campos excepto la foto deben ser completados', 'Error', wx.OK | wx.ICON_ERROR) def limpiar_usuario(self): self.username.Clear() def limpiar_campos(self): self.nombre.Clear() self.apellido.Clear() self.username.Clear() self.password.Clear() def cerrar_frame(self, evt): self.frame.Close()
class ModificFrame(wx.Frame): def __init__(self, frame_father=None, id_user=None): super(ModificFrame, self).__init__() self.res = xrc.XmlResource('../view/modific.xrc') self.frame = self.res.LoadFrame(None, 'ModificFrame') self.panel = xrc.XRCCTRL(self.frame, 'InicioModific') self.user_controller = UserController() self.id_user = id_user self.first_name = xrc.XRCCTRL(self.panel, 'textModFirstName') self.last_name = xrc.XRCCTRL(self.panel, 'textModLastName') self.username = xrc.XRCCTRL(self.panel, 'textModUsername') self.password = xrc.XRCCTRL(self.panel, 'textModPassword') self.button_save = xrc.XRCCTRL(self.panel, 'wxID_OK') self.button_cancel = xrc.XRCCTRL(self.panel, 'wxID_CANCEL') self.frame.Bind(wx.EVT_BUTTON, self.close_frame, self.button_cancel) self.frame.Bind(wx.EVT_BUTTON, self.update_user, self.button_save) self.frame.Show() if frame_father is not None: self.frame_father = frame_father if self.id_user is not None: self.load_data_user() def update_user(self, evt): first_name = self.first_name.GetValue() last_name = self.last_name.GetValue() username = self.username.GetValue() password = self.password.GetValue() if first_name and last_name and username and password: if self.id_user is not None: data = { 'first_name': first_name, 'last_name': last_name, 'username': username, 'password': password } self.user_controller.edit_user(self.id_user, data) wx.MessageBox('The user has been update successfully', 'Information', wx.OK | wx.ICON_INFORMATION) self.load_data_user() else: self.user_controller.create_user(first_name, last_name, username, password) self.frame_father.load_data_listctrl_user() else: wx.MessageBox('Fields not entered', 'Error', wx.OK | wx.ICON_ERROR) self.frame_father.load_data_listctrl_user() def close_frame(self, evt): self.frame.Close() def load_data_user(self): user = self.user_controller.get_user(self.id_user) self.first_name.SetValue(user.first_name) self.last_name.SetValue(user.last_name) self.username.SetValue(user.username) self.password.SetValue(user.password)
class RegistroFrame(wx.Frame): def __init__(self, frame_father=None, id_user=None): super(RegistroFrame, self).__init__() self.res = xrc.XmlResource('../view/registro.xrc') self.user_controller = UserController() self.id_user = id_user self.frame = self.res.LoadFrame(None, 'RegistroFrame') self.panel = xrc.XRCCTRL(self.frame, 'InicioRegistro') self.first_name = xrc.XRCCTRL(self.panel, 'textCtrlFirstName') self.last_name = xrc.XRCCTRL(self.panel, 'textCtrlLastname') self.username = xrc.XRCCTRL(self.panel, 'textCtrlUsername') self.password = xrc.XRCCTRL(self.panel, 'textCtrlPassword') self.button_save = xrc.XRCCTRL(self.panel, 'wxID_OK') self.button_cancel = xrc.XRCCTRL(self.panel, 'wxID_CANCEL') self.frame.Bind(wx.EVT_BUTTON, self.close_frame, self.button_cancel) self.frame.Bind(wx.EVT_BUTTON, self.create_user, self.button_save) self.frame_father = frame_father if self.id_user is not None: self.load_data_user() self.frame.Show() def close_frame(self, evt): self.frame.Close() def create_user(self, evt): first_name = self.first_name.GetValue() last_name = self.last_name.GetValue() username = self.username.GetValue() password = self.password.GetValue() search_data = self.user_controller.search_username(username) if first_name and last_name and username and password: if self.id_user is not None: data = { 'first_name': first_name, 'last_name': last_name, 'username': username, 'password': password } self.user_controller.edit_user(self.id_user, data) self.load_data_user() else: if search_data is None: self.user_controller.create_user(first_name, last_name, username, password) wx.MessageBox('The user has been created successfully', 'Information', wx.OK | wx.ICON_INFORMATION) self.clear_fields() else: wx.MessageBox( 'The username already exist in the database.', 'Error', wx.OK | wx.ICON_ERROR) if not self.frame_father is None: self.frame_father.load_data_listctrl_user() else: wx.MessageBox('Fields not entered', 'Error', wx.OK | wx.ICON_ERROR) def clear_fields(self): self.first_name.Clear() self.last_name.Clear() self.username.Clear() self.password.Clear() def load_data_user(self): user = self.user_controller.get_user(self.id_user) self.first_name.SetValue(user.first_name) self.last_name.SetValue(user.last_name) self.username.SetValue(user.username) self.password.SetValue(user.password)