protected function createComponentAddEdit($name) { $form = new NAppForm($this, $name); $access = array(1 => 'Allow', 0 => 'Deny'); // roles $mroles = new RolesModel(); $roles = $mroles->getTreeValues(); // resources $resources[0] = '- All resources -'; $mresources = new ResourcesModel(); $rows = $mresources->getTreeValues(); foreach ($rows as $key => $row) { // function array_merge does't work correctly with integer indexes // manual array merge $resources[$key] = $row; } // privileges $privileges[0] = '- All privileges -'; $rows = dibi::fetchAll('SELECT id, name FROM [gui_acl_privileges] ORDER BY name;'); foreach ($rows as $row) { // function array_merge does't work correctly with integer indexes // manual array merge $privileges[$row->id] = $row->name; } //$renderer = $form->getRenderer(); //$renderer->wrappers['label']['suffix'] = ':'; //$form->addGroup('Add'); $form->addMultiSelect('role_id', 'Role', $roles, 15)->addRule(NForm::FILLED, 'You have to fill roles.'); $form->addMultiSelect('resource_id', 'Resources', $resources, 15)->addRule(NForm::FILLED, 'You have to fill resources.'); $form->addMultiSelect('privilege_id', 'Privileges', $privileges, 15)->addRule(NForm::FILLED, 'You have to fill privileges.'); //$form->addSelect('access', 'Access', $access) $form->addRadioList('access', 'Access', $access)->addRule(NForm::FILLED, 'You have to fill access.'); $form->addSubmit('assign', 'Assign'); $form->onSuccess[] = array($this, 'addEditOnFormSubmitted'); }
public function Reporte() { //Creamos el objeto usuario $roles = new RolesModel(); //Conseguimos todos los usuarios session_start(); if (isset($_SESSION['usuario'])) { $resultRep = $roles->getByPDF("id_rol, nombre_rol", " nombre_rol != '' "); $this->report("Roles", array("resultRep" => $resultRep)); } }
public function login() { if ($this->_router->isPostRequest()) { if ($_POST['login'] != '' && $_POST['passwd'] != '') { $db = Zend_Db_Table::getDefaultAdapter(); // tworzymy instancję adaptera autoryzacji $authAdapter = new Zend_Auth_Adapter_DbTable($db, 'cms_user', 'user_login', 'user_passwd'); $authAdapter->setIdentity($_POST['login']); $authAdapter->setCredential(sha1($_POST['passwd'])); // sprawdzamy, czy użytkownik jest aktywny $authAdapter->setCredentialTreatment("? AND user_active = '1'"); // autoryzacja $result = $authAdapter->authenticate(); if ($result->isValid()) { $user_data = $authAdapter->getResultRowObject(); /* zapisanie roli zalogowanego uzytkownika */ $this->_roles = RolesModel::Instance(); $role = $this->_roles->getRoleData($user_data->role_id); $user_data->role_code = $role['role_code']; $this->_storage->write($user_data); // ustawienie ACL dla użytkownika $this->_engine->addHttpHeader("Location: /" . $this->_router->getUrl('cms', 'index')); } else { $this->_view->error = '1'; } } else { $this->_view->error = '1'; } } $this->_engine->setToRender('login.tpl'); }
public function Instance() { if (!isset(RolesModel::$_instance)) { RolesModel::$_instance = new RolesModel(); } return RolesModel::$_instance; }
public function index() { session_start(); if (isset($_SESSION['usuario_usuario'])) { $permisos_rol = new PermisosRolesModel(); $nombre_controladores = "PermisosRoles"; $id_rol = $_SESSION['id_rol']; $resultPer = $permisos_rol->getPermisosVer(" controladores.nombre_controladores = '{$nombre_controladores}' AND permisos_rol.id_rol = '{$id_rol}' "); if (!empty($resultPer)) { //roles $rol = new RolesModel(); $resultRol = $rol->getAll("nombre_rol"); $controladores = new ControladoresModel(); $resultCon = $controladores->getAll("nombre_controladores"); $acciones = new AccionesModel(); $resultAcc = $acciones->getAll("id_controladores"); $resultEdit = ""; $resul = ""; if (isset($_GET["id_permisos_rol"])) { $nombre_controladores = "PermisosRoles"; $id_rol = $_SESSION['id_rol']; $resultPer = $permisos_rol->getPermisosEditar(" controladores.nombre_controladores = '{$nombre_controladores}' AND permisos_rol.id_rol = '{$id_rol}' "); if (!empty($resultPer)) { $_id_permisos_rol = $_GET["id_permisos_rol"]; $resultEdit = $permisos_rol->getBy("id_permisos_rol = '{$_id_permisos_rol}' "); } else { $this->view("Error", array("resultado" => "No tiene Permisos de Editar Permisos Roles")); exit; } } $columnas = "permisos_rol.id_permisos_rol, rol.nombre_rol, permisos_rol.nombre_permisos_rol, controladores.nombre_controladores, permisos_rol.ver_permisos_rol, permisos_rol.editar_permisos_rol, permisos_rol.borrar_permisos_rol "; $tablas = "public.controladores, public.permisos_rol, public.rol"; $where = " controladores.id_controladores = permisos_rol.id_controladores AND permisos_rol.id_rol = rol.id_rol"; $id = " permisos_rol.nombre_permisos_rol, controladores.nombre_controladores"; $permisos_rol = new PermisosRolesModel(); $resultSet = $permisos_rol->getCondiciones($columnas, $tablas, $where, $id); $this->view("PermisosRoles", array("resultCon" => $resultCon, "resultAcc" => $resultAcc, "resultSet" => $resultSet, "resultEdit" => $resultEdit, "resultRol" => $resultRol)); } else { $this->view("Error", array("resultado" => "No tiene Permisos de Acceso a Permisos Rol")); } } else { $this->view("ErrorSesion", array("resultSet" => "")); } }
public function __construct($engine) { parent::__construct($engine); if (!$this->_auth->hasIdentity()) { $this->engine->addHttpHeader("Location: " . $this->router->getUrl('auth')); exit; } $this->_roles = RolesModel::Instance(); $this->view->page_sidebar = $this->view->render('modules/role/sidebar.tpl'); }
public function index_dos() { session_start(); $_id_usuario = 0; $resultEdit = ""; $_usuario_usuario = ""; $_nuevo_usuario = FALSE; $usuario = new UsuariosModel(); $resultSet = $usuario->getAll("id_usuario"); $provincias = new ProvinciasModel(); $resultProv = $provincias->getAll("nombre_provincia"); $paises = new PaisesModel(); $resultPais = $paises->getAll("nombre_pais"); $roles = new RolesModel(); $resultRol = $roles->getAll("nombre_rol"); $estados = new EstadosModel(); $resultEst = $estados->getAll("nombre_estado"); if (isset($_GET["id_usuario"])) { $_id_usuario = $_GET["id_usuario"]; $where = "rol.id_rol = usuarios.id_rol AND estado.id_estado = usuarios.id_estado AND usuarios.id_usuario = '{$_id_usuario}' "; $resultEdit = $usuario->getCondiciones($columnas, $tablas, $where, $id); } if (isset($_POST["usuario_usuario"])) { $_usuario_usuario = $_POST["usuario_usuario"]; } //AGREGO EL NOMBRE Y DEVUELVO EL ID if (isset($_POST["btn_agregar_usuario"])) { $_nuevo_usuario = TRUE; $_usuario_usuario = $_POST["usuario_usuario"]; $funcion = "ins_usuarios"; $parametros = " '{$_usuario_usuario}' "; $usuario->setFuncion($funcion); $usuario->setParametros($parametros); try { $resultado = $usuario->Insert(); } catch (Exception $e) { $this->view("Resultado", array("resultado" => "No se puedo insertar el Usuario")); exit; } } $res_usuario = $usuario->getBy("usuario_usuario = '{$_usuario_usuario}' "); foreach ($res_usuario as $res) { $_id_usuario = $res->id_usuario; } //editando if (isset($_GET["id_usuario_edit"])) { $_id_usuario = $_GET["id_usuario_edit"]; $where = "id_usuario = '{$_id_usuario}' "; $resultEdit = $usuario->getBy($where); } //guardamos el distribuidores if (isset($_POST["btn_guardar"])) { $_nombres_usuario = strtoupper($_POST["nombres_usuario"]); $_apellidos_usuario = strtoupper($_POST["apellidos_usuario"]); $_usuario_usuario = $_POST["correo_usuario"]; $_clave_usuario = $_POST["clave_usuario"]; $_id_pais = $_POST["paises"]; $_id_provincia = $_POST["provincias"]; $_telefono_usuario = $_POST["telefono_usuario"]; $_celular_usuario = $_POST["celular_usuario"]; $_correo_usuario = $_POST["correo_usuario"]; $_id_rol = 3; // afiliados $_id_estado = 2; //sin activar $_clave_activacion_usuario = $usuario->encrypt($_POST["correo_usuario"]); $_fecha_nacimiento = $_POST["fecha_nacimiento_usuario"]; $funcion = "ins_usuarios"; $parametros = " '{$_nombres_usuario}','{$_apellidos_usuario}', '{$_usuario_usuario}', '{$_clave_usuario}'\n\t\t\t,'{$_id_pais}', '{$_id_provincia}', '{$_telefono_usuario}', '{$_celular_usuario}'\n\t\t\t,'{$_correo_usuario}', '{$_id_rol}','{$_id_estado}', '{$_clave_activacion_usuario}'\n\t\t\t, '{$_fecha_nacimiento}' "; $usuario->setFuncion($funcion); $usuario->setParametros($parametros); $resultado = $usuario->Insert(); $baseUrl = URLVADEMANO; $controladorAccion = "controller=Afiliaciones&action=ValidarAfiliado&clave_activacion=" . $_clave_activacion_usuario; $email_to = $_POST['correo_usuario']; $email_from = "*****@*****.**"; $email_subject = "Bienvenido a Vademano"; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $email_message = '<html><body>'; $email_message .= '<h1 style="color:#f40;">Hi Jane!</h1>'; $email_message .= '<p style="color:#080;font-size:18px;">Will you marry me?</p>'; $email_message = "Bienvenid@ !!! \n\n"; $email_message .= "" . $_POST['nombres_usuario'] . " " . $_POST['apellidos_usuario'] . " ya te encuentras registrado en vademano.com " . "\n"; $email_message .= "Tus datos pra acceder al sistema son: " . "\n"; $email_message .= "Usuario: " . $_POST['correo_usuario'] . "\n"; $email_message .= "Clave: " . $_POST['clave_usuario'] . "\n"; $email_message .= "Ingresa a la siguiente url para que valides tu cuenta " . $baseUrl . $controladorAccion . "\n"; $email_message .= '</body></html>'; // Ahora se envía el e-mail usando la función mail() de PHP $headers = 'From: ' . $email_from . "\r\n" . 'Reply-To: ' . $email_from . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if (mail($email_to, $email_subject, $email_message, $headers)) { } $this->redirect("Usuarios", "index"); } $this->view("UsuariosAdd", array("resultSet" => "", "resultPais" => $resultPais, "resultProv" => $resultProv, "resultEdit" => "", "id_usuario" => $_id_usuario, "usuario_usuario" => $_usuario_usuario, "nuevo_usuario" => $_nuevo_usuario, "resultRol" => $resultRol, "resultEst" => $resultEst)); }
public function actionAccess($id) { $nodes = new RolesModel(); $this->template->nodes = $nodes; $this->template->parents = $nodes->getChildNodes(NULL); $role = dibi::fetch('SELECT key_name, name FROM [' . TABLE_ROLES . '] WHERE id=%i;', $id); $this->template->role = $role->name; $access = new AccessModel(array($role)); $this->template->access = $access->getAccess(); }
public function actionAccess($id) { $nodes = new RolesModel(); $this->template->nodes = $nodes; $this->template->parents = $nodes->getChildNodes(NULL); $user = dibi::fetchSingle('SELECT login FROM [' . TABLE_USERS . '] WHERE id=%i;', $id); $this->template->user_name = $user; $roles = dibi::fetchAll('SELECT r.key_name FROM [' . TABLE_ROLES . '] AS r RIGHT JOIN [' . TABLE_USERS_ROLES . '] AS ur ON r.id=ur.role_id WHERE ur.user_id=%i;', $id); $access = new AccessModel($roles); $this->template->access = $access->getAccess(); }