public function saveUsuarioRolList($con = null) { if (!$this->isValid()) { throw $this->getErrorSchema(); } if (!isset($this->widgetSchema['usuario_rol_list'])) { // somebody has unset this widget return; } if (is_null($con)) { $con = $this->getConnection(); } $c = new Criteria(); $c->add(UsuarioRolPeer::FK_ROL_ID, $this->object->getPrimaryKey()); UsuarioRolPeer::doDelete($c, $con); $values = $this->getValue('usuario_rol_list'); if (is_array($values)) { foreach ($values as $value) { $obj = new UsuarioRol(); $obj->setFkRolId($this->object->getPrimaryKey()); $obj->setFkUsuarioId($value); $obj->save(); } } }
/** * Asigna un rol al usuario * * @param integer $rol_id identificador del rol * @param integer $usuario_id identificador del usuario */ public function executeSaveRol(sfWebRequest $request) { $this->usuario = UsuarioPeer::retrieveByPk($request->getParameter('usuario_id')); $this->forward404Unless($this->usuario); $this->rol = RolPeer::retrieveByPk($request->getParameter('rol_id')); $this->forward404Unless($this->rol); $ur = new UsuarioRol(); $ur->setRol($this->rol); $ur->setUsuario($this->usuario); $ur->save(); //si el Rol que se estan guardando son del //usuario actual refresco las credenciales para evitar el logout/login $this->logMessage("Comprobar si el usuario es el actual: " . $this->getUser()->getAttribute('id'), 'debug'); if ($this->getUser()->getAttribute('id') == $this->usuario->getId()) { $this->logMessage("Modificando permisos del usuario actual", 'debug'); $this->getUser()->cargarCredenciales($this->usuario->getId()); } return $this->redirect('usuario/editPermiso?id=' . $this->usuario->getId()); }
public function crearusuario() { $keys = array('id', 'nombre', 'apellidop', 'apellidom', 'correo', 'password', 'cel', 'rol'); $post = $this->app->request->post(); $response = array('codigo' => '', 'mensaje' => ''); if (count($post) > 0) { $isValid = true; /*foreach ($keys as $key => $value) { if (!array_key_exists($value, $post)) { $isValid = false; } }*/ if ($isValid) { $usuario = Usuarios::where('correo', '=', $post['correo'])->get(); if ($post['id'] == 0) { if (count($usuario) > 0) { $response['codigo'] = 2; $response['mensaje'] = 'Ya existe un usuario asociado a la cuenta de correo'; } else { $db = Connection::getConnection(); $db::beginTransaction(); try { $user = new Usuarios(); $user->nombre = $post['nombre']; $user->apellidop = $post['apellidop']; $user->apellidom = $post['apellidom']; $user->correo = $post['correo']; $user->password = $post['password']; $user->cel = $post['cel']; $user->save(); $usuario_rol = new UsuarioRol(); $usuario_rol->usuarios_id = $user->id; $usuario_rol->rol_id = $post['rol']; $usuario_rol->save(); $db::commit(); $response['codigo'] = 1; $response['mensaje'] = 'Se guardó correctamente'; } catch (Exception $e) { $db::rollback(); $response['codigo'] = 3; $response['mensaje'] = $e->getMessage(); } } } else { if (count($usuario) > 0) { $db = Connection::getConnection(); $db::beginTransaction(); try { $usuario[0]->nombre = $post['nombre']; $usuario[0]->apellidoP = $post['apellidop']; $usuario[0]->apellidoM = $post['apellidom']; $usuario[0]->correo = $post['correo']; $usuario[0]->cel = $post['cel']; $usuario[0]->save(); $maestro = new Maestro(); $maestro->id_maestro = $usuario->id; $maestro->estados_id = $post['estados_id']; $maestro->save(); $db::commit(); $response['codigo'] = 1; $response['mensaje'] = 'Se guardó correctamente2'; } catch (Exception $e) { $db::rollback(); $response['codigo'] = 3; $response['mensaje'] = $e->getMessage(); } } else { $response['codigo'] = 4; $response['mensaje'] = 'Usuario no encontrado'; } } } else { $response['codigo'] = 0; $response['mensaje'] = 'Debe enviar todos los parámetros'; } } else { $response['codigo'] = 0; $response['mensaje'] = 'Debe enviar todos los parámetros'; } echo json_encode($response); }
} else { $db::beginTransaction(); try { $user = new Usuarios(); $user->nombre = $post['nombre']; $user->apellidop = $post['apellidop']; $user->apellidom = $post['apellidom']; $user->correo = $post['correo']; $user->password = $post['password']; $user->cel = $post['cel']; $user->activo = 1; $user->save(); $usuario_rol = new UsuarioRol(); $usuario_rol->usuarios_id = $user->id; $usuario_rol->rol_id = $post['rol']; $usuario_rol->save(); $db::commit(); $response['codigo'] = 1; $response['mensaje'] = 'Se guardó correctamente'; } catch (Exception $e) { $db::rollback(); $response['codigo'] = 3; $response['mensaje'] = $e->getMessage(); } } } else { if (count($usuario) > 0) { $db::beginTransaction(); try { $usuario[0]->nombre = $post['nombre']; $usuario[0]->apellidop = $post['apellidop'];