function form_agregar() { $respuesta = new stdClass(); $this->form_validation->set_rules('email', 'E-mail', 'trim|required|valid_email|callback_valida_existe_usuario'); $this->form_validation->set_rules('nombres', 'Nombres', 'trim|required'); $this->form_validation->set_rules('servicio_codigo', 'Servicio', 'required'); $this->form_validation->set_rules('rol', 'Rol', 'required'); $this->form_validation->set_rules('password', 'Password', 'trim|required|matches[confirm_password]'); $this->form_validation->set_rules('confirm_password', 'Confirmar', 'trim|required'); if ($this->form_validation->run() == TRUE) { $usuario = new UsuarioBackend(); $usuario->email = $this->input->post('email'); $usuario->nombres = $this->input->post('nombres'); $usuario->apellidos = $this->input->post('apellidos'); $usuario->ministerial = $this->input->post('ministerial') ? 1 : 0; $usuario->interministerial = $this->input->post('interministerial') ? 1 : 0; $usuario->setServiciosFromArray($this->input->post('servicio_codigo')); $usuario->password = $this->input->post('password'); $usuario->activo = $this->input->post('activo') ? 1 : 0; $usuario->setRolesFromArray($this->input->post('rol')); $usuario->save(); $this->session->set_flashdata('message', 'Usuario actualizado exitosamente! :)'); $respuesta->validacion = TRUE; $respuesta->redirect = site_url('backend/usuariosbackend/'); } else { $respuesta->validacion = FALSE; $respuesta->errores = validation_errors('<p class="error">', '</p>'); } echo json_encode($respuesta); }
public static function validar_acceso($email, $password) { $u = Doctrine::getTable('UsuarioBackend')->findOneByEmail($email); if ($u) { // this mutates (encrypts) the input password $u_input = new UsuarioBackend(); $u_input->setPasswordWithSalt($password, $u->salt); // password match (comparing encrypted passwords) if ($u->password == $u_input->password) { unset($u_input); return TRUE; } unset($u_input); } // login failed return FALSE; }
public function editar_form($usuario_id = null) { if ($usuario_id) { $usuario = Doctrine::getTable('UsuarioBackend')->find($usuario_id); } else { $usuario = new UsuarioBackend(); } $this->form_validation->set_rules('email', 'Correo Electrónico', 'required|valid_email'); $this->form_validation->set_rules('nombre', 'Nombre', 'required'); $this->form_validation->set_rules('apellidos', 'Apellidos', 'required'); $this->form_validation->set_rules('cuenta_id', 'Cuenta', 'required'); $this->form_validation->set_rules('rol', 'Rol', 'required'); if (!$usuario->id) { $this->form_validation->set_rules('password', 'Contraseña', 'required|min_length[6]|matches[password_confirm]'); } if ($this->input->post('password')) { $this->form_validation->set_rules('password', 'Contraseña', 'required|min_length[6]|matches[password_confirm]'); $this->form_validation->set_rules('password_confirm', 'Confirmar contraseña', 'required'); } $respuesta = new stdClass(); if ($this->form_validation->run() == true) { $usuario->email = $this->input->post('email'); $usuario->nombre = $this->input->post('nombre'); $usuario->apellidos = $this->input->post('apellidos'); $usuario->Cuenta = Doctrine::getTable('Cuenta')->find($this->input->post('cuenta_id')); $usuario->rol = implode(",", $this->input->post('rol')); if ($this->input->post('password')) { $usuario->setPasswordWithSalt($this->input->post('password')); } $usuario->save(); $this->session->set_flashdata('message', 'Usuario guardado con éxito.'); $respuesta->validacion = true; $respuesta->redirect = site_url('manager/usuarios'); } else { $respuesta->validacion = false; $respuesta->errores = validation_errors(); } echo json_encode($respuesta); }
public function backend_usuario_editar_form($usuario_id = NULL) { $usuario = NULL; if ($usuario_id) { $usuario = Doctrine::getTable('UsuarioBackend')->find($usuario_id); if ($usuario->cuenta_id != UsuarioBackendSesion::usuario()->cuenta_id) { echo 'Usuario no tiene permisos para editar este usuario.'; exit; } } if (!$usuario) { $this->form_validation->set_rules('email', 'E-Mail', 'required|valid_email|callback_check_existe_usuario_backend'); $this->form_validation->set_rules('password', 'Contraseña', 'required|min_length[6]|matches[password_confirm]'); } if ($this->input->post('password')) { $this->form_validation->set_rules('password', 'Contraseña', 'required|min_length[6]|matches[password_confirm]'); $this->form_validation->set_rules('password_confirm', 'Confirmar contraseña'); } $this->form_validation->set_rules('nombre', 'Nombre', 'required'); $this->form_validation->set_rules('apellidos', 'Apellidos', 'required'); $this->form_validation->set_rules('rol', 'Rol', 'required'); $respuesta = new stdClass(); if ($this->form_validation->run() == TRUE) { if (!$usuario) { $usuario = new UsuarioBackend(); $usuario->email = $this->input->post('email'); } if ($this->input->post('password')) { $usuario->setPasswordWithSalt($this->input->post('password')); } $usuario->nombre = $this->input->post('nombre'); $usuario->apellidos = $this->input->post('apellidos'); $usuario->rol = $this->input->post('rol'); $usuario->cuenta_id = UsuarioBackendSesion::usuario()->cuenta_id; $usuario->save(); $respuesta->validacion = TRUE; $respuesta->redirect = site_url('backend/configuracion/backend_usuarios'); } else { $respuesta->validacion = FALSE; $respuesta->errores = validation_errors(); } echo json_encode($respuesta); }