// +----------------------------------------------------------------------+ // // $Id$ // //Require_once {{{ //PEAR{{{ require_once 'HTML/Table.php'; //}}} //Mecon {{{ require_once 'MECON/HTML/Tabla.php'; require_once 'MECON/HTML/Image.php'; require_once 'MECON/HTML/Link.php'; require_once 'MECON/Usuario.php'; require_once 'MECON/Dependencia.php'; require_once 'MECON/HTML/QuickForm.php'; //}}} //Samurai {{{ require_once 'SAMURAI/Sistema.php'; require_once 'SAMURAI/Usuario.php'; require_once 'SAMURAI/Perfil.php'; require_once 'SAMURAI/Permiso.php'; //}}} //}}} //VERIFICO SI SE TIENE ACCESO A LA PAGINA{{{ $SAMURAI_PERM->setSistema(SAMURAI_PERM); if (!$SAMURAI_PERM->tiene(SAMURAI_PERM_DEVELOPER)) { $SAMURAI_PERM->chequear(SAMURAI_PERM_DEVELOPER); } $MARCO =& new MECON_Marco ('/var/www/sistemas/samurai/sistema/conf/confSecciones.php', $SAMURAI_PERM); //}}} //Obtengo la accion y el id del usuario {{{ $accion = (@$_REQUEST['accion']) ? $_REQUEST['accion'] : 'listado'; $subaccion = (@$_REQUEST['subaccion']) ? $_REQUEST['subaccion'] : null; $login = (@$_REQUEST['login']) ? $_REQUEST['login'] : null; $filtro = (@$_REQUEST['filtro']) ? $_REQUEST['filtro'] : null; $id_sistema = (@$_REQUEST['id_sistema']) ? $_REQUEST['id_sistema'] : null; $id_perfil = (@$_REQUEST['id_perfil']) ? $_REQUEST['id_perfil'] : null; //}}} //Creo la tabla volver {{{ $T_VOLVER =& new HTML_Table('width="760"'); $IMG_VOLVER =& new MECON_HTML_Image('/MECON/images/general_anterior.gif'); $LINK_VOLVER =& new MECON_HTML_Link('', $IMG_VOLVER); //}}} //Filtrar Usuarios {{{ if (@!$accion || $accion == 'filtrar') { //Creo los objetos necesarios {{{ $FORM =& new MECON_HTML_QuickForm ('usuarios_filtrar','post','usuarios'); $T_USUARIOS = new MECON_HTML_Tabla ('width="400"'); $FORM->renderer->setTable($T_USUARIOS); //}}} //Agrego los elementos al form {{{ $FORM->addElement ('header', 'cabecera', 'Filtrar Usuarios'); $f_accion =& $FORM->addElement ('hidden', 'accion', 'listado'); $f_texto =& $FORM->addElement ('text', 'filtro', 'Login@Organismo', array('size' => '20')); $group[] = HTML_QuickForm::createElement('submit', 'filtrar', 'Filtrar'); $FORM->addGroup($group,'botones'); //}}} //Agrego la informacion al marco {{{ $LINK_VOLVER->setHref('consultas'); $MARCO->addBodyContent($FORM); $MARCO->addTitle('Ver informacion de los usuarios'); $MARCO->addBodyContent('
'); $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"'); $MARCO->addBodyContent($T_VOLVER); //}}} } //}}} //Listado de usuarios filtrados {{{ elseif ($accion == 'listado') { //Creo los objetos necesarios {{{ $T_USUARIOS =& new MECON_HTML_Tabla(); $IMG_SEL =& new MECON_HTML_Image('/MECON/images/general_ir4.gif'); $LINK_SEL =& new MECON_HTML_Link('usuarios', $IMG_SEL); //}}} //Filtro los usuarios {{{ $usu_res = MECON_Usuario::filtrarUsuarios($DB, $filtro, null); while ($usu_res->fetchInto($row)){ $usu[$row['login']] = $row['nombre']; } //}}} //Armo la tabla de Usuarios {{{ $T_USUARIOS->addRow(array('Listado de Usuarios'), 'colspan="4" cabecera align="left"'); $T_USUARIOS->addRow(array('Login', 'Nombre', 'Dependencia', 'Sel.'), 'titulo'); if (@count($usu)) { foreach ($usu as $key => $value) { $u =& new MECON_Usuario(null, $key); //BUSCO EL NOMBRE DE LA DEPENDENCIA {{{ $depen = MECON_Dependencia::buscarPorCodigo ($DB, $u->getCodep()); while ($depen->fetchInto($row)){ $dep = $row['nombre']; } //}}} $LINK_SEL->setGetVars(array('accion'=>'info_usuario', 'login' => $key)); $T_USUARIOS->addRow(array($key, $value, $dep, $LINK_SEL->toHtml())); } } else { $T_USUARIOS->addRow(array('No se encontraron coincidencias.'), 'colspan="4" align="left"'); } //}}} //Agrego la informacion al marco {{{ $LINK_VOLVER->setHref('usuarios'); $LINK_VOLVER->setGetVars(array('accion' => 'filtrar')); $MARCO->addBodyContent($T_USUARIOS); $MARCO->addTitle('Seleccionar Usuario'); $MARCO->addBodyContent('
'); $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"'); $MARCO->addBodyContent($T_VOLVER); //}}} } //}}} //Informacion del usuario seleccionado {{{ elseif ($accion == 'info_usuario') { //Creo los objetos necesarios {{{ $USUARIO =& new SAMURAI_Usuario($DB, $login); $T_USUARIO =& new MECON_HTML_Tabla(); $T_SISTEMAS =& new MECON_HTML_Tabla(); $IMG_SEP =& new MECON_HTML_Image('../images/linea_separacion.gif'); $IMG_SEL =& new MECON_HTML_Image('/MECON/images/general_ir4.gif'); $LINK_SEL =& new MECON_HTML_Link('usuarios', $IMG_SEL); //}}} //Agrego la informacion a la tabla de usuario {{{ $T_USUARIO->addRow(array('Datos del Usuario'), 'colspan="3" cabecera align="left"'); $T_USUARIO->addRow(array('Login', 'Nombre', 'Dependencia'), 'titulo'); $u =& new MECON_Usuario(null, $login); //BUSCO EL NOMBRE DE LA DEPENDENCIA {{{ $depen = MECON_Dependencia::buscarPorCodigo ($DB, $u->getCodep()); while ($depen->fetchInto($row)){ $dep = $row['nombre']; } //}}} $T_USUARIO->addRow(array($login, $USUARIO->getNombre(), $dep)); //}}} //Obtengo la informacion de la base {{{ $informacion = $USUARIO->informacionGeneral(); //}}} //Agrego la informacion de los sistemas {{{ $T_SISTEMAS->addRow(array('Sistemas en los que esta asociado el usuario'), 'colspan="4" cabecera align="left"'); $T_SISTEMAS->addRow(array('Id', 'Nombre', 'Descripcion', 'Perfiles'), 'titulo'); foreach ($informacion as $key => $value) { $SISTEMA =& new SAMURAI_Sistema($DB, $key); $LINK_SEL->setGetVars(array('accion' => 'info_usuario_sistema', 'id_sistema'=>$key, 'login'=>$login)); $T_SISTEMAS->addRow(array( $key, $value['nombre_sistema'], $SISTEMA->getDescripcion(), $LINK_SEL->toHtml() ) ); } $T_SISTEMAS->updateColAttributes(0, 'width="5%" align="center"'); $T_SISTEMAS->updateColAttributes(1, 'width="20%" align="center"'); $T_SISTEMAS->updateColAttributes(3, 'width="5%" align="center"'); $T_SISTEMAS->updateRowAttributes(0, 'align="left"'); //}}} //Agrego la informacion al marco {{{ $LINK_VOLVER->setHref('usuarios'); $LINK_VOLVER->setGetVars(array('accion' => 'filtrar')); $MARCO->addBodyContent($T_USUARIO); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_SISTEMAS); $MARCO->addTitle('Informacion Usuario'); $MARCO->addBodyContent('
'); $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"'); $MARCO->addBodyContent($T_VOLVER); //}}} } //}}} //Informacion del usuario y sistema seleccionado {{{ elseif ($accion == 'info_usuario_sistema') { //Creo los objetos necesarios {{{ $USUARIO =& new SAMURAI_Usuario($DB, $login); $SISTEMA =& new SAMURAI_Sistema($DB, $id_sistema); $T_USUARIO =& new MECON_HTML_Tabla(); $T_SISTEMA =& new MECON_HTML_Tabla(); $T_PERFILES =& new MECON_HTML_Tabla('width="400"'); $IMG_SEP =& new MECON_HTML_Image('../images/linea_separacion.gif'); $IMG_SEL =& new MECON_HTML_Image('/MECON/images/general_ir4.gif'); $LINK_SEL =& new MECON_HTML_Link('usuarios', $IMG_SEL); //}}} //Agrego la informacion a la tabla de usuario {{{ $T_USUARIO->addRow(array('Datos del Usuario'), 'colspan="3" cabecera align="left"'); $T_USUARIO->addRow(array('Login', 'Nombre', 'Dependencia'), 'titulo'); $u =& new MECON_Usuario(null, $login); //BUSCO EL NOMBRE DE LA DEPENDENCIA {{{ $depen = MECON_Dependencia::buscarPorCodigo ($DB, $u->getCodep()); while ($depen->fetchInto($row)){ $dep = $row['nombre']; } //}}} $T_USUARIO->addRow(array($login, $USUARIO->getNombre(), $dep)); //}}} //Agrego la informacion de la tabla sistema {{{ $T_SISTEMA->addRow(array('Datos del sistema'), 'colspan="3" cabecera align="left"'); $T_SISTEMA->addRow(array('Id', 'Nombre', 'Descripcion'), 'titulo'); $T_SISTEMA->addRow(array($id_sistema, $SISTEMA->getNombre(), $SISTEMA->getDescripcion())); $T_SISTEMA->updateColAttributes(0, 'width="5%" align="center"'); $T_SISTEMA->updateColAttributes(1, 'width="20%" align="center"'); $T_SISTEMA->updateRowAttributes(0, 'align="left"'); //}}} //Obtengo la informacion de la base {{{ $informacion = $USUARIO->informacionGeneral(); //}}} //Agrego la informacion de los perfiles {{{ $T_PERFILES->addRow(array('Perfiles del usuario en este sistema'), 'colspan="3" cabecera align="left"'); $T_PERFILES->addRow(array('Id', 'Descripcion', 'Permisos'), 'titulo'); $informacion = $informacion[$id_sistema]['perfiles']; foreach ($informacion as $key => $value) { $PERFIL =& new SAMURAI_Perfil($DB, $key); $LINK_SEL->setGetVars(array('accion' => 'info_usuario_sistema_perfil', 'id_sistema'=>$id_sistema, 'login'=>$login, 'id_perfil'=>$key)); $T_PERFILES->addRow(array( $key, $value['desc_perfil'], $LINK_SEL->toHtml() ) ); } $T_PERFILES->updateColAttributes(0, 'width="5%" align="center"'); $T_PERFILES->updateColAttributes(2, 'width="5%" align="center"'); $T_PERFILES->updateRowAttributes(0, 'align="left"'); //}}} //Agrego la informacion al marco {{{ $LINK_VOLVER->setHref('usuarios'); $LINK_VOLVER->setGetVars(array('accion' => 'info_usuario', 'login' => $login)); $MARCO->addBodyContent($T_USUARIO); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_SISTEMA); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_PERFILES); $MARCO->addTitle('Informacion Usuario'); $MARCO->addBodyContent('
'); $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"'); $MARCO->addBodyContent($T_VOLVER); //}}} } //}}} //Informacion del usuario, sistema y perfli seleccionado {{{ elseif ($accion == 'info_usuario_sistema_perfil') { //Creo los objetos necesarios {{{ $USUARIO =& new SAMURAI_Usuario($DB, $login); $SISTEMA =& new SAMURAI_Sistema($DB, $id_sistema); $PERFIL =& new SAMURAI_Perfil($DB, $id_perfil); $T_USUARIO =& new MECON_HTML_Tabla(); $T_SISTEMA =& new MECON_HTML_Tabla(); $T_PERFIL =& new MECON_HTML_Tabla('width="400"'); $T_PERMISOS =& new MECON_HTML_Tabla('width="400"'); $IMG_SEP =& new MECON_HTML_Image('../images/linea_separacion.gif'); $IMG_SEL =& new MECON_HTML_Image('/MECON/images/general_ir4.gif'); $LINK_SEL =& new MECON_HTML_Link('usuarios', $IMG_SEL); //}}} //Agrego la informacion a la tabla de usuario {{{ $T_USUARIO->addRow(array('Datos del Usuario'), 'colspan="3" cabecera align="left"'); $T_USUARIO->addRow(array('Login', 'Nombre', 'Dependencia'), 'titulo'); $u =& new MECON_Usuario(null, $login); //BUSCO EL NOMBRE DE LA DEPENDENCIA {{{ $depen = MECON_Dependencia::buscarPorCodigo ($DB, $u->getCodep()); while ($depen->fetchInto($row)){ $dep = $row['nombre']; } //}}} $T_USUARIO->addRow(array($login, $USUARIO->getNombre(), $dep)); //}}} //Agrego la informacion de la tabla sistema {{{ $T_SISTEMA->addRow(array('Datos del sistema'), 'colspan="3" cabecera align="left"'); $T_SISTEMA->addRow(array('Id', 'Nombre', 'Descripcion'), 'titulo'); $T_SISTEMA->addRow(array($id_sistema, $SISTEMA->getNombre(), $SISTEMA->getDescripcion())); $T_SISTEMA->updateColAttributes(0, 'width="5%" align="center"'); $T_SISTEMA->updateColAttributes(1, 'width="20%" align="center"'); $T_SISTEMA->updateRowAttributes(0, 'align="left"'); //}}} //Agrego la informacion de la tabla perfil {{{ $T_PERFIL->addRow(array('Datos del perfil'), 'colspan="2" cabecera align="left"'); $T_PERFIL->addRow(array('Id', 'Descripcion'), 'titulo'); $T_PERFIL->addRow(array($id_perfil, $PERFIL->getDescripcion())); $T_PERFIL->updateColAttributes(0, 'width="5%" align="center"'); $T_PERFIL->updateRowAttributes(0, 'align="left"'); //}}} //Obtengo la informacion de la base {{{ $informacion = $USUARIO->informacionGeneral(); //}}} //Agrego la informacion de los permisos {{{ $T_PERMISOS->addRow(array('Permisos del usuario con este perfil'), 'colspan="3" cabecera align="left"'); $T_PERMISOS->addRow(array('Id', 'Descripcion', 'Observaciones'), 'titulo'); $informacion = $informacion[$id_sistema]['perfiles'][$id_perfil]['permisos']; foreach ($informacion as $key => $value) { foreach ($value as $obs) { $T_PERMISOS->addRow(array( $key, $obs['desc_permiso'], $obs['observaciones'] ) ); } } $T_PERMISOS->updateColAttributes(0, 'width="5%" align="center"'); $T_PERMISOS->updateColAttributes(1, 'width="20%" align="center"'); $T_PERMISOS->updateRowAttributes(0, 'align="left"'); //}}} //Agrego la informacion al marco {{{ $LINK_VOLVER->setHref('usuarios'); $LINK_VOLVER->setGetVars(array('accion' => 'info_usuario_sistema', 'login' => $login, 'id_sistema'=>$id_sistema)); $MARCO->addBodyContent($T_USUARIO); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_SISTEMA); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_PERFIL); $MARCO->addBodyContent($IMG_SEP); $MARCO->addBodyContent($T_PERMISOS); $MARCO->addTitle('Informacion Usuario'); $MARCO->addBodyContent('
'); $T_VOLVER->addRow(array($LINK_VOLVER->toHtml()), 'align="left"'); $MARCO->addBodyContent($T_VOLVER); //}}} } //}}} //MUESTRO LA INFORMACION {{{ $MARCO->display(); exit; //}}} ?>