[Alba-desarrollo] SVN Alba r6161 - in prosistem/alba/trunk/alba:
apps/principal/lib apps/principal/modules/default/actions
apps/principal/modules/default/templates
apps/principal/modules/rol/actions
apps/principal/modules/rol/templates
apps/principal/modules/seguridad/actions
apps/principal/modules/usuario/actions
apps/principal/modules/usuario/templates data/fixtures
commits en pressenter.com.ar
commits en pressenter.com.ar
Mar Mayo 5 08:39:30 CEST 2009
Author: ftoledo
Date: 2009-05-05 03:39:29 -0300 (Tue, 05 May 2009)
New Revision: 6161
Modified:
prosistem/alba/trunk/alba/apps/principal/lib/albaUser.class.php
prosistem/alba/trunk/alba/apps/principal/modules/default/actions/actions.class.php
prosistem/alba/trunk/alba/apps/principal/modules/default/templates/indexSuccess.php
prosistem/alba/trunk/alba/apps/principal/modules/rol/actions/actions.class.php
prosistem/alba/trunk/alba/apps/principal/modules/rol/templates/editPermisoSuccess.php
prosistem/alba/trunk/alba/apps/principal/modules/seguridad/actions/actions.class.php
prosistem/alba/trunk/alba/apps/principal/modules/usuario/actions/actions.class.php
prosistem/alba/trunk/alba/apps/principal/modules/usuario/templates/editPermisoSuccess.php
prosistem/alba/trunk/alba/data/fixtures/00_datos_desde_cero.yml
Log:
mejora en los permisos de los fixtures
fix varios en albaUser
mejora en los modulos de usuario y rol para la nueva arquitectura de permisos
Modified: prosistem/alba/trunk/alba/apps/principal/lib/albaUser.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/lib/albaUser.class.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/lib/albaUser.class.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -1,31 +1,121 @@
<?php
+/**
+ * This file is part of Alba.
+ *
+ * Alba is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Alba is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Alba; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+/**
+ * Clase albaUser
+ * Maneja la autenticacion del usuario
+ *
+ * @package alba
+ * @author José Luis Di Biase <josx en interorganic.com.ar>
+ * @author Héctor Sanchez <hsanchez en pressenter.com.ar>
+ * @author Fernando Toledo <ftoledo en pressenter.com.ar>
+ * @version SVN: $Id$
+ * @filesource
+ * @license GPL
+ */
+
class albaUser extends sfBasicSecurityUser
{
+ /**
+ * deuelve el establecimento del usuario
+ * @return array $establecimientos
+ * @todo: tienen que ser varios!
+ */
public function getEstablecimientos() {
-
- $establecimientos = array();
- $e = EstablecimientoPeer::retrieveByPk($this->getAttribute('fk_establecimiento_id'));
- array_push($establecimientos,$e);
- return $establecimientos;
-
-
-
+ $establecimientos = array();
+ $e = EstablecimientoPeer::retrieveByPk($this->getAttribute('fk_establecimiento_id'));
+ array_push($establecimientos,$e);
+ return $establecimientos;
}
/**
- * obtiene el tema del la interfaz del usuario
- */
+ * obtiene el tema del la interfaz del usuario
+ */
public function getTheme() {
- return $this->getAttribute('theme');
+ return $this->getAttribute('theme');
}
/**
- * Asigna un tema al usuario
- */
+ * Asigna un tema al usuario
+ */
public function setTheme($theme) {
- $this->setAttribute('theme',$theme);
+ $this->setAttribute('theme',$theme);
}
+
+ /**
+ * Carga las credenciales del usuario
+ * en la session del usuario
+ *
+ * @param integer $usuario_id identificador del usuario a cargar
+ * en la session
+ */
+ public function cargarCredenciales($usuario_id)
+ {
+ //limpio las credenciales actuales si las hay
+ $this->clearCredentials();
+
+ /* asigno las credenciales x rol */
+ $crol = new Criteria();
+ $crol->add(UsuarioRolPeer::FK_USUARIO_ID, $usuario_id);
+ $roles = UsuarioRolPeer::doSelect($crol);
+ $user_roles = array();
+ //por cada rol los cargo y tambien busco los permisos y los asigno
+ foreach ($roles as $rol) {
+ $user_rol['id'] = $rol->getRol()->getId();
+ $user_rol['nombre'] = $rol->getRol();
+ array_push($user_roles, $user_rol);
+ $this->log('obteniendo rol: ' . $rol->getRol()->getNombre());
+ $permisos = $rol->getRol()->getRolPermisos();
+ foreach ($permisos as $permiso) {
+ $this->log(sprintf('permiso desde rol: %s', $permiso->getPermiso()));
+ $this->addCredential($permiso->getPermiso()->getNombre());
+ }
+ }
+ $this->setAttribute('roles', $user_roles);
+ /* asign credenciales por usuario */
+ $this->log('obteniendo permisos x usuario:');
+ $cuser = new Criteria();
+ $cuser->add(UsuarioPermisoPeer::FK_USUARIO_ID, $usuario_id);
+ $permisos = UsuarioPermisoPeer::doSelect($cuser);
+ foreach ($permisos as $permiso) {
+ $this->log('permiso desde usuario: ' . $permiso->getPermiso());
+ $this->addCredential($permiso->getPermiso()->getNombre());
+ }
+
+ // quitando credenciales para la demo
+ if(sfConfig::get('sf_environment') =='demo'){
+ $this->log('{DEMO} quitando credenciales');
+ $this->removeCredential('usuario');
+ $this->removeCredential('rol');
+ }
+
+ }
+
+ /***
+ * Log para debug
+ *
+ * @param string $msg texto
+ */
+ private function log($msg)
+ {
+ sfContext::getInstance()->getLogger()->debug($msg);
+ }
}
-?>
\ No newline at end of file
+?>
Modified: prosistem/alba/trunk/alba/apps/principal/modules/default/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/default/actions/actions.class.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/default/actions/actions.class.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -13,7 +13,11 @@
public function executeIndex(sfWebRequest $request)
{
}
+ public function executeLogin(sfWebRequest $request)
+ {
+ }
+ public function executeSecure(sfWebRequest $request)
+ {
+ }
- public function executeLogin($request) {
- }
}
Modified: prosistem/alba/trunk/alba/apps/principal/modules/default/templates/indexSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/default/templates/indexSuccess.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/default/templates/indexSuccess.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -1,98 +1,105 @@
<?php if ($sf_user->isAuthenticated()): ?>
-<div align="center">
-<h1>¡Bienvenidos al Sistema Libre de Gestión Educativa ALBA!</h1>
-<h3>Versión <?php echo link_to(sfConfig::get("app_alba_version"),"http://www.proyectoalba.com.ar/",array('title'=> 'Comprobar Versión...')) ?><h3>
-</div>
-<br/>
-<div align="center">
-El Proyecto Alba, es un proyecto de desarrollo de Software para la realización de un<br><b>"Sistema Libre de Gestión Educativa"</b>
-</div>
-<br>
-<br>
-<table align="center">
- <tr>
- <td>
- <?php echo image_tag("gnu-head-banner.png");?>
- </td>
- <td>
-
- </td>
- <td>
- Éste aplicativo es <b><a href="http://es.wikipedia.org/wiki/Software_Libre">Software Libre</a></b>, de acuerdo con tal definición, el software es <b>"libre"</b> si garantiza las siguientes libertades:
- <ul>
- <li><b>"libertad 0"</b>, ejecutar el programa con cualquier propósito (privado, educativo, público, comercial, etc.)</li>
- <li><b>"libertad 1"</b>, estudiar y modificar el programa (para lo cual es necesario poder acceder al código fuente)</li>
- <li><b>"libertad 2"</b>, copiar el programa de manera que se pueda ayudar al vecino o a cualquiera</li>
- <li><b>"libertad 3"</b>, mejorar el programa, y hacer públicas las mejoras, de forma que se beneficie toda la comunidad.</li>
- </ul>
- </td>
- </tr>
-</table>
+ <div align="center">
+ <h1>¡Bienvenidos al Sistema Libre de Gestión Educativa ALBA!</h1>
+ <h3>Versión <?php echo link_to(sfConfig::get("app_alba_version"),"http://www.proyectoalba.com.ar/",array('title'=> 'Comprobar Versión...')) ?><h3>
+ </div>
+ <br/>
+ <div align="center">
+ El Proyecto Alba, es un proyecto de desarrollo de Software para la realización de un<br><b>"Sistema Libre de Gestión Educativa"</b>
+ </div>
+ <br>
+ <br>
+ <table align="center">
+ <tr>
+ <td>
+ <?php echo image_tag("gnu-head-banner.png");?>
+ </td>
+ <td>
+
+ </td>
+ <td>
+ Éste aplicativo es <b><a href="http://es.wikipedia.org/wiki/Software_Libre">Software Libre</a></b>, de acuerdo con tal definición, el software es <b>"libre"</b> si garantiza las siguientes libertades:
+ <ul>
+ <li><b>"libertad 0"</b>, ejecutar el programa con cualquier propósito (privado, educativo, público, comercial, etc.)</li>
+ <li><b>"libertad 1"</b>, estudiar y modificar el programa (para lo cual es necesario poder acceder al código fuente)</li>
+ <li><b>"libertad 2"</b>, copiar el programa de manera que se pueda ayudar al vecino o a cualquiera</li>
+ <li><b>"libertad 3"</b>, mejorar el programa, y hacer públicas las mejoras, de forma que se beneficie toda la comunidad.</li>
+ </ul>
+ </td>
+ </tr>
+ </table>
-<br>
-<br>
+ <br>
+ <br>
-<table align="center">
- <tr>
- <td>
- <?php echo image_tag("bug.jpg");?>
- </td>
- <td>
-
- </td>
- <td>
- Como está en continuo desarrollo, puede encontrar errores que todavía no han sido descubiertos. <br>
- Si encuentra alguno, por favor repórtelo en nuestro sitio de seguimientos de errores: <b><a target="_blank" href="http://alba.pressenter.com.ar">http://alba.pressenter.com.ar</a></b>
- <br/>
- </td>
- </tr>
+ <table align="center">
+ <tr>
+ <td>
+ <?php echo image_tag("bug.jpg");?>
+ </td>
+ <td>
+
+ </td>
+ <td>
+ Como está en continuo desarrollo, puede encontrar errores que todavía no han sido descubiertos. <br>
+ Si encuentra alguno, por favor repórtelo en nuestro sitio de seguimientos de errores: <b><a target="_blank" href="http://alba.pressenter.com.ar">http://alba.pressenter.com.ar</a></b>
+ <br/>
+ </td>
+ </tr>
- <tr>
- <td>
+ <tr>
+ <td>
- </td>
- <td>
-
- </td>
- <td>
- <i>Para más información visite el Sitio Web del Proyecto Alba. <b><a href="http://www.proyectoalba.com.ar">Página Web del Proyecto.</a></b></i>
- </td>
- </tr>
+ </td>
+ <td>
+
+ </td>
+ <td>
+ <i>Para más información visite el Sitio Web del Proyecto Alba. <b><a href="http://www.proyectoalba.com.ar">Página Web del Proyecto.</a></b></i>
+ </td>
+ </tr>
-</table>
- <?php if (sfConfig::get('sf_debug')):?>
- <ul>
- <li>Información del Sistema
- <ul>
- <li>PHP: <?php echo phpversion()?></li>
- </ul>
- </li>
- <li>Permisos:
- <ul>
- <?php foreach ($sf_user->listCredentials() as $permiso):?>
- <li><?php echo $permiso?></li>
- <?php endforeach;?>
- </ul>
- </li>
- <li>Establecimientos:
- <ul>
- <?php $establecimientos = $sf_user->getEstablecimientos()?>
- <?php foreach ($establecimientos as $establecimiento): ?>
- <li><?php echo $establecimiento?></li>
- <?php endforeach; ?>
- </ul>
- </li>
- <li>Organización
- <ul>
- <?php echo "[" .$sf_user->getAttribute('fk_organizacion_id'). "] " . $sf_user->getAttribute('organizacion_nombre')?>
- </ul>
- </li>
- <li>Tema (interfaz):
- <ul>
- <?php echo $sf_user->getTheme()?>
- </ul>
- </li>
- </ul>
- <?php endif;?>
+ </table>
+ <?php if (sfConfig::get('sf_debug')):?>
+ <ul>
+ <li>Información del Sistema
+ <ul>
+ <li>PHP: <?php echo phpversion()?></li>
+ </ul>
+ </li>
+ <li>Roles:
+ <ul>
+ <?php foreach ($sf_user->getAttribute('roles') as $rol):?>
+ <li><?php printf("[%d] %s",$rol['id'],$rol['nombre'])?></li>
+ <?php endforeach;?>
+ </ul>
+ </li>
+ <li>Permisos efectivos:
+ <ul>
+ <?php foreach ($sf_user->listCredentials() as $permiso):?>
+ <li><?php echo $permiso?></li>
+ <?php endforeach;?>
+ </ul>
+ </li>
+ <li>Establecimientos:
+ <ul>
+ <?php $establecimientos = $sf_user->getEstablecimientos()?>
+ <?php foreach ($establecimientos as $establecimiento): ?>
+ <li><?php echo $establecimiento?></li>
+ <?php endforeach; ?>
+ </ul>
+ </li>
+ <li>Organización
+ <ul>
+ <?php echo "[" .$sf_user->getAttribute('fk_organizacion_id'). "] " . $sf_user->getAttribute('organizacion_nombre')?>
+ </ul>
+ </li>
+ <li>Tema (interfaz):
+ <ul>
+ <?php echo $sf_user->getTheme()?>
+ </ul>
+ </li>
+ </ul>
+ <?php endif;?>
<?php endif; ?>
Modified: prosistem/alba/trunk/alba/apps/principal/modules/rol/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/rol/actions/actions.class.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/rol/actions/actions.class.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -2,7 +2,7 @@
/**
* This file is part of Alba.
- *
+ *
* Alba is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
@@ -37,13 +37,18 @@
function executeEditPermiso() {
// estos son los permisos que tiene el rol
$c = new Criteria();
- $c->add(RelRolPermisoPeer::FK_ROL_ID, $this->getRequestParameter('id'));
- $rolPermisos = RelRolPermisoPeer::doSelectJoinPermiso($c);
-
- // esto puede ser descartado usando en el select_tag, objects_for_select
+ $c->add(RolPermisoPeer::FK_ROL_ID, $this->getRequestParameter('id'));
+ $c->addAscendingOrderByColumn(PermisoPeer::NOMBRE);
+ $rolPermisos = RolPermisoPeer::doSelectJoinPermiso($c);
+
+ // esto puede ser descartado usando en el select_tag, objects_for_select
$optionsRolPermisos = array();
foreach($rolPermisos as $rolPermiso) {
- $optionsRolPermisos[$rolPermiso->getFkPermisoId()] = $rolPermiso->getPermiso()->getNombre();
+ $optionsRolPermisos[$rolPermiso->getFkPermisoId()] =
+ sprintf("%s (%s)",
+ $rolPermiso->getPermiso()->getNombre(),
+ $rolPermiso->getPermiso()->getDescripcion()
+ );
}
//estos son todos los permisos existentes
@@ -52,53 +57,48 @@
foreach($permisos as $permiso) {
$todosLosPermisos[$permiso->getId()] = $permiso->getNombre();
}
-
+
// estos son los permisos existentes menos los del usuario
$this->optionsPermisos = array_diff_key($todosLosPermisos, $optionsRolPermisos);
-
+
$c = new Criteria();
- //$c->clearSelectColumns()->addSelectColumn(RolPeer::NOMBRE);
- //$c->addSelectColumn(RolPeer::ID);
-
$c->add(RolPeer::ACTIVO, 1);
$roles = RolPeer::doSelect($c);
$optionsRol = array();
foreach($roles as $rol) {
- $optionsRol[$rol->getId()] = $rol->getNombre();
+ $optionsRol[$rol->getId()] = $rol->getNombre();
}
$this->optionsRol = $optionsRol;
$this->optionsRolPermisos = $optionsRolPermisos;
- }
-
+ }
+
function executeSavePermiso() {
-
+
// borrar todo los permisos para un usuarios determinado
$rolId = $this->getRequestParameter('id');
$aPermiso = $this->getRequest()->getParameterHolder()->get('rolPermisos');
$c = new Criteria();
- $c->add(RelRolPermisoPeer::FK_ROL_ID, $rolId);
- RelRolPermisoPeer::doDelete($c);
+ $c->add(RolPermisoPeer::FK_ROL_ID, $rolId);
+ RolPermisoPeer::doDelete($c);
if(count($aPermiso) > 0) {
// grabar todos los que vienen seleccionados
// aqui se debe poder grabar haciendo un solo insert
-
+
$c = new Criteria();
foreach($aPermiso as $permisoId) {
- $p = new RelRolPermiso();
+ $p = new RolPermiso();
$p->setFkRolId($rolId);
$p->setFkPermisoId($permisoId);
$p->save();
unset($p);
}
}
+ $this->getUser()->setFlash('notice', 'Los permisos para este Rol fueron actualizados correctamente.');
return $this->redirect('rol/editPermiso?id='.$rolId);
-
- }
-
-
+ }
}
?>
Modified: prosistem/alba/trunk/alba/apps/principal/modules/rol/templates/editPermisoSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/rol/templates/editPermisoSuccess.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/rol/templates/editPermisoSuccess.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -1,16 +1,17 @@
-
- <script>
- function linkTo() {
- var obj = document.getElementById('id');
- location.href = "<?php echo url_for('rol/editPermiso', false);?>/id/"+obj.options[obj.selectedIndex].value;
- }
- </script>
+<script>
+ function linkTo() {
+ var obj = document.getElementById('id');
+ location.href = "<?php echo url_for('rol/editPermiso', false);?>/id/"+obj.options[obj.selectedIndex].value;
+ }
+</script>
<div id="sf_admin_container">
+ <?php include_partial('global/flashes')?>
+ <div id="sf_admin_content">
<h1>Permisos por Roles</h1>
<br>
<?php echo form_tag('rol/savePermiso', 'onSubmit="selectItem()"')?>
Rol: <?php echo select_tag('id', options_for_select($optionsRol, $sf_params->get('id')), 'onChange=linkTo()'); ?><br> <br>
- <?php
+ <?php
echo select_tag('permisos', options_for_select($optionsPermisos), 'multiple=multiple id="fromBox"');
echo select_tag('rolPermisos[]', options_for_select($optionsRolPermisos), 'multiple=multiple id="toBox"');
// echo select_tag('rolPermisos[]', objects_for_select($optionsRolPermisos,'getFkPermisoId','getPermiso()->getNombre',''), 'multiple=multiple id="toBox"');
@@ -20,8 +21,8 @@
<li><?php echo button_to('Listado de Roles','rol/list',array('class'=>'sf_admin_action_list'))?></li>
</ul>
</form>
-
- <script type="text/javascript">
- createMovableOptions("fromBox","toBox",500,300,'Permisos Disponibles','Permisos Seleccionados');
- </script>
+ </div>
</div>
+<script type="text/javascript">
+createMovableOptions("fromBox","toBox",500,300,'Permisos Disponibles','Permisos Seleccionados');
+</script>
Modified: prosistem/alba/trunk/alba/apps/principal/modules/seguridad/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/seguridad/actions/actions.class.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/seguridad/actions/actions.class.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -77,41 +77,10 @@
$this->getUser()->setAttribute('usuario',$user->getUsuario());
$this->getUser()->setCulture('es_AR');
- /* asigno las credenciales x rol*/
- $crol = new Criteria();
- $crol->add(UsuarioRolPeer::FK_USUARIO_ID, $user->getId());
- $roles = UsuarioRolPeer::doSelect($crol);
+ //cargo las credenciales del usuario ylos roles
+ $this->getUser()->cargarCredenciales($user->getId());
- //por cada rol busco los permisos y los asigno
- foreach ($roles as $rol) {
-
- $this->logMessage(' obteniendo rol: ' . $rol->getRol()->getNombre(), 'debug');
- $permisos = $rol->getRol()->getRolPermisos();
- foreach ($permisos as $permiso) {
- $this->logMessage(sprintf('permiso desde rol: %s', $permiso->getPermiso()),'debug');
- $this->getUser()->addCredential($permiso->getPermiso()->getNombre());
- }
- }
-
- /* asign credenciales por usuario */
- $this->logMessage('obteniendo permisos x usuario:', 'debug');
- $cuser = new Criteria();
- $cuser->add(UsuarioPermisoPeer::FK_USUARIO_ID, $user->getId());
- $permisos = UsuarioPermisoPeer::doSelect($cuser);
- foreach ($permisos as $permiso) {
- $this->logMessage('permiso desde usuario: ' . $permiso->getPermiso(),'debug');
- $this->getUser()->addCredential($permiso->getPermiso()->getNombre());
- }
-
- // quitando credenciales para la demo
- if(sfConfig::get('sf_environment') =='demo'){
- $this->logMessage('{DEMO} quitando credenciales');
- $this->getUser()->removeCredential('usuario');
- $this->getUser()->removeCredential('permiso');
- $this->getUser()->removeCredential('modulo');
- $this->getUser()->removeCredential('rol');
- }
- $this->debugMessage('Login ok');
+ $this->logMessage('Login ok','debug');
return $this->redirect($this->getRequestParameter('referer', '@homepage'));
}
else {
@@ -121,7 +90,7 @@
}
else {
- $this->debugMessage('Login Error');
+ $this->logMessage('Login Error','debug');
$this->error_inicio_sesion = true;
return sfView::SUCCESS;
}
@@ -134,7 +103,7 @@
/* cierre de session */
public function executeLogout() {
- $this->debugMessage("Logout");
+ $this->logMessage("Logout", 'debug');
$this->getUser()->clearCredentials();
$this->getUser()->setAuthenticated(false);
$this->redirect('default/index');
@@ -190,7 +159,7 @@
/* capturo el error de login */
public function handleErrorLogin()
{
- $this->debugMessage("Error inicio de sesion");
+ $this->logMessage("Error inicio de sesion", 'debug');
$this->error_inicio_sesion = true;
return sfView::SUCCESS;
}
Modified: prosistem/alba/trunk/alba/apps/principal/modules/usuario/actions/actions.class.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/usuario/actions/actions.class.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/usuario/actions/actions.class.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -2,7 +2,7 @@
/**
* This file is part of Alba.
- *
+ *
* Alba is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
@@ -33,63 +33,63 @@
class usuarioActions extends autousuarioActions
{
-
- function updateUsuarioFromRequest() {
- $usuario = $this->getRequestParameter('usuario');
-
- if (isset($usuario['usuario'])) {
- $this->usuario->setUsuario($usuario['usuario']);
- }
-
- if (isset($usuario['clave']) && $usuario['clave'] != '') {
- $this->usuario->setClave(md5($usuario['clave']));
- }
-
- if (isset($usuario['correo_publico'])) {
+
+ function updateUsuarioFromRequest() {
+ $usuario = $this->getRequestParameter('usuario');
+
+ if (isset($usuario['usuario'])) {
+ $this->usuario->setUsuario($usuario['usuario']);
+ }
+
+ if (isset($usuario['clave']) && $usuario['clave'] != '') {
+ $this->usuario->setClave(md5($usuario['clave']));
+ }
+
+ if (isset($usuario['correo_publico'])) {
$this->usuario->setCorreoPublico(isset($usuario['correo_publico']) ? $usuario['correo_publico'] : 0);
- }
-
- if (isset($usuario['email'])) {
+ }
+
+ if (isset($usuario['email'])) {
$this->usuario->setEmail($usuario['email']);
- }
-
- if (isset($usuario['activo'])) {
- $this->usuario->setActivo(isset($usuario['activo']) ? $usuario['activo'] : 0);
- }
-
- if ($this->usuario->isNew()) {
- $this->usuario->setFechaCreado(date("Y-m-d"));
- }
+ }
- $this->usuario->setFechaActualizado(date("Y-m-d H:i:s"));
+ if (isset($usuario['activo'])) {
+ $this->usuario->setActivo(isset($usuario['activo']) ? $usuario['activo'] : 0);
+ }
- if (isset($usuario['seguridad_pregunta'])) {
- $this->usuario->setSeguridadPregunta($usuario['seguridad_pregunta']);
- }
-
- if (isset($usuario['seguridad_respuesta'])) {
- $this->usuario->setSeguridadRespuesta($usuario['seguridad_respuesta']);
- }
-
- if (isset($usuario['fk_establecimiento_id'])) {
- $this->usuario->setFkEstablecimientoId($usuario['fk_establecimiento_id']);
- }
- }
-
-
+ if ($this->usuario->isNew()) {
+ $this->usuario->setFechaCreado(date("Y-m-d"));
+ }
+
+ $this->usuario->setFechaActualizado(date("Y-m-d H:i:s"));
+
+ if (isset($usuario['seguridad_pregunta'])) {
+ $this->usuario->setSeguridadPregunta($usuario['seguridad_pregunta']);
+ }
+
+ if (isset($usuario['seguridad_respuesta'])) {
+ $this->usuario->setSeguridadRespuesta($usuario['seguridad_respuesta']);
+ }
+
+ if (isset($usuario['fk_establecimiento_id'])) {
+ $this->usuario->setFkEstablecimientoId($usuario['fk_establecimiento_id']);
+ }
+ }
+
+
public function executeDelete($request) {
$this->usuario = UsuarioPeer::retrieveByPk($this->getRequestParameter('id'));
$this->forward404Unless($this->usuario);
- $this->usuario->setBorrado(1);
- $this->usuario->save();
+ $this->usuario->setBorrado(1);
+ $this->usuario->save();
return $this->redirect('usuario/list');
}
-
-
+
+
public function executeList($request) {
$this->processSort();
$this->processFilters();
- $this->filters = $this->getUser()->getAttributeHolder()->getAll('sf_admin/usuario/filters');
+ $this->filters = $this->getUser()->getAttributeHolder()->getAll('sf_admin/usuario/filters');
// pager
$this->pager = new sfPropelPager('Usuario', 20);
$c = new Criteria();
@@ -103,61 +103,58 @@
$this->pager->setPage($this->getRequestParameter('page', 1));
$this->pager->init();
}
-
-
+ /**
+ * Modificar los roles y permisos del usuario
+ */
function executeEditPermiso($request) {
-
+
+ $this->usuario = UsuarioPeer::retrieveByPk($this->getRequestParameter('id'));
+ $this->forward404Unless($this->usuario);
+
// estos son los permisos que tiene el usuario
$c = new Criteria();
- $c->add(RelUsuarioPermisoPeer::FK_USUARIO_ID, $this->getRequestParameter('id'));
- $usuarioPermisos = RelUsuarioPermisoPeer::doSelectJoinPermiso($c);
+ $c->add(UsuarioPermisoPeer::FK_USUARIO_ID, $this->usuario->getId());
+ $usuarioPermisos = UsuarioPermisoPeer::doSelectJoinPermiso($c);
$optionsUsuarioPermisos = array();
foreach($usuarioPermisos as $usuarioPermiso) {
$optionsUsuarioPermisos[$usuarioPermiso->getFkPermisoId()] = $usuarioPermiso->getPermiso()->getNombre();
}
$this->optionsUsuarioPermisos = $optionsUsuarioPermisos;
-
// estos son todos los permisos existentes
$todosLosPermisos = array();
- if($this->getRequestParameter('rolId')) {
- // permisos por rol
- $c = new Criteria();
- $c->add(RelRolPermisoPeer::FK_ROL_ID, $this->getRequestParameter('rolId'));
- $rolPermisos = RelRolPermisoPeer::doSelectJoinPermiso($c);
- foreach($rolPermisos as $rolPermiso) {
- $todosLosPermisos[$rolPermiso->getFkPermisoId()] = $rolPermiso->getPermiso()->getNombre();
- }
- } else {
- // permisos
- $permisos = PermisoPeer::doSelect(new Criteria());
- foreach($permisos as $permiso) {
- $todosLosPermisos[$permiso->getId()] = $permiso->getNombre();
- }
+ $c = new Criteria();
+ // permisos
+ $permisos = PermisoPeer::doSelect(new Criteria());
+ foreach($permisos as $permiso) {
+ $todosLosPermisos[$permiso->getId()] = $permiso->getNombre();
+ }
- }
-
// estos son los permisos existentes menos los del usuario
- $this->optionsPermisos = array_diff_key($todosLosPermisos, $this->optionsUsuarioPermisos);
-
-
+ $this->optionsPermisos = array_diff_key($todosLosPermisos, $this->optionsUsuarioPermisos);
+
+ //cargo todos roles
$c = new Criteria();
- //$c->clearSelectColumns()->addSelectColumn(RolPeer::NOMBRE);
- //$c->addSelectColumn(RolPeer::ID);
$c->add(RolPeer::ACTIVO, 1);
- $roles = RolPeer::doSelect($c);
-
- $optionsRol = array( '' => 'Todos'); // muy feo
+ $roles = RolPeer::doSelect($c);
+
+ $optionsRol = array();
foreach($roles as $rol) {
$optionsRol[$rol->getId()] = $rol->getNombre();
}
$this->optionsRol = $optionsRol;
- $this->usuario = UsuarioPeer::retrieveByPk($this->getRequestParameter('id'));
+ //cargo roles del usuario
+ $c = new Criteria();
+ $c->add(UsuarioRolPeer::FK_USUARIO_ID, $this->usuario->getId());
+ $this->usuarioroles = UsuarioRolPeer::doSelectJoinRol($c);
}
-
+
+ /**
+ * Guarda los permisos del usuario
+ */
function executeSavePermiso($request) {
// borrar todo los permisos para un usuarios determinado
@@ -165,41 +162,86 @@
$aPermiso = $this->getRequest()->getParameterHolder()->get('usuarioPermisos');
$c = new Criteria();
- $c->add(RelUsuarioPermisoPeer::FK_USUARIO_ID, $usuarioId);
- RelUsuarioPermisoPeer::doDelete($c);
+ $c->add(UsuarioPermisoPeer::FK_USUARIO_ID, $usuarioId);
+ UsuarioPermisoPeer::doDelete($c);
-
if(count($aPermiso) > 0) {
// grabar todos los que vienen seleccionados
// aqui se debe poder grabar haciendo un solo insert
$c = new Criteria();
foreach($aPermiso as $permisoId) {
- $p = new RelUsuarioPermiso();
+ $p = new UsuarioPermiso();
$p->setFkUsuarioId($usuarioId);
$p->setFkPermisoId($permisoId);
$p->save();
unset($p);
}
- }
- //si los permisos que se estan guardando son del
+ }
+ //si los permisos que se estan guardando son del
//usuario actual refresco las credenciales para evitar el logout/login
- $this->logMessage("{debug} Comprobar si el usuario es es actual: " . $this->getUser()->getAttribute('id'));
+ $this->logMessage("Comprobar si el usuario es el actual: " . $this->getUser()->getAttribute('id'), 'debug');
if ($this->getUser()->getAttribute('id') == $usuarioId) {
- $this->logMessage("Modificando permisos del usuario actual");
- /* asigno las credenciales */
- $cperm = new Criteria();
- $cperm->add(RelUsuarioPermisoPeer::FK_USUARIO_ID, $usuarioId);
- $usuarioPermisos = RelUsuarioPermisoPeer::doSelectJoinPermiso($cperm);
- foreach ($usuarioPermisos as $usuarioPermiso) {
- $this->getUser()->addCredential($usuarioPermiso->getPermiso()->getCredencial());
- $message = "{Credenciales} " . $usuarioPermiso->getPermiso()->getCredencial();
- $this->logMessage($message);
- }
- }
+ $this->logMessage("Modificando permisos del usuario actual", 'debug');
+ $this->getUser()->cargarCredenciales($usuarioId);
+ }
return $this->redirect('usuario/editPermiso?id='.$usuarioId);
}
-
+
+ /**
+ * 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());
+ }
+
+ /**
+ * Elimina un rol del usuario
+ *
+ * @param integer $user_id identificador del usuari
+ * @param integer $rol_id identificador del rol
+ *
+ */
+ public function executeDeleteRol(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->delete();
+ //si el Rol que se estan eliminando 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());
+
+ }
}
?>
Modified: prosistem/alba/trunk/alba/apps/principal/modules/usuario/templates/editPermisoSuccess.php
===================================================================
--- prosistem/alba/trunk/alba/apps/principal/modules/usuario/templates/editPermisoSuccess.php 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/apps/principal/modules/usuario/templates/editPermisoSuccess.php 2009-05-05 06:39:29 UTC (rev 6161)
@@ -1,27 +1,66 @@
<div id="sf_admin_container">
- <script>
+ <script>
function linkTo() {
var obj = document.getElementById('rolId');
location.href = "<?php echo url_for('usuario/editPermiso', false);?>/id/<?php echo $sf_params->get('id');?>/rolId/"+obj.options[obj.selectedIndex].value;
}
- </script>
+ </script>
+<div id="sf_admin_content">
+ <h1>Permisos del Usuario (<?php echo $usuario->getUsuario()?>)</h1>
+ <br/>
+ <h2>Roles:</h2>
+ <?php echo form_tag('usuario/saveRol')?>
+ <?php echo input_hidden_tag('usuario_id', $usuario->getId())?>
+ <p>
+ <?php if(count($usuarioroles)> 0):?>
+ <table class="sf_admin_list" cellspacing="0" style="width:40%">
+ <thead>
+ <tr>
+ <th>Roles asignados:</th>
+ <th width="1%">Acciones</th>
+ </tr>
+ </thead>
+ <tfoot>
+ <th colspan="2"> </th>
+ </tfoot>
+ <?php $row = 0?>
+ <?php foreach ($usuarioroles as $rol):?>
+ <tr class="sf_admin_row_<?php echo $row?>">
+ <td><?php echo $rol->getRol()?></td>
+ <td><?php echo link_to(image_tag('../sf/sf_admin/images/delete_icon.png',array('alt'=>'Eliminar rol', 'title'=>'Eliminar rol')),'usuario/deleteRol?usuario_id='.$usuario->getId().'&rol_id=' . $rol->getRol()->getId(),'confirm=Eliminar el rol del usuario?')?></td>
+ </tr>
+ <?php $row = ! $row;?>
+ <?php endforeach;?>
-<h1>Permisos por Usuario (<?php echo $usuario->getUsuario()?>) </h1>
-<br>
-<?php echo form_tag('usuario/savePermiso', 'onSubmit="selectItem()"')?>
-Rol: <?php echo select_tag('rolId', options_for_select($optionsRol, $sf_params->get('rolId')), 'onChange=linkTo()'); ?><br><br>
-<?php
- echo select_tag('permisos', options_for_select($optionsPermisos), 'multiple=multiple id="fromBox"');
- echo select_tag('usuarioPermisos[]', options_for_select($optionsUsuarioPermisos), 'multiple=multiple id="toBox"');
- echo input_hidden_tag('id', $sf_params->get('id'));
-?>
-<ul class="sf_admin_actions">
-<li><?php echo submit_tag('submit', 'class=sf_admin_action_save value=Grabar');?></li>
-<li><?php echo button_to('Listado de usuarios','usuario/list',array('class'=>'sf_admin_action_list'))?></li>
-</ul>
-</form>
-<script type="text/javascript">
-createMovableOptions("fromBox","toBox",500,300,'Permisos Disponibles','Permisos Seleccionados');
-</script>
-
-</div>
\ No newline at end of file
+ </table>
+ <?php else:?>
+ <div class="error">No se ha asignado ningun Rol al usuario.</div>
+ <?php endif;?>
+ </p>
+ <br/>
+ <p>
+ Agregar el rol <?php echo select_tag('rol_id', options_for_select($optionsRol)) ?>
+ <?php echo submit_tag('Aceptar')?>
+ </p>
+ </form>
+ <br/>
+ <br/>
+ <h2>Permisos</h2>
+ <p>
+ <?php echo form_tag('usuario/savePermiso', 'onSubmit="selectItem()"')?>
+ <?php
+ echo select_tag('permisos', options_for_select($optionsPermisos), 'multiple=multiple id="fromBox"');
+ echo select_tag('usuarioPermisos[]', options_for_select($optionsUsuarioPermisos), 'multiple=multiple id="toBox"');
+ echo input_hidden_tag('id', $sf_params->get('id'));
+ ?>
+ <ul class="sf_admin_actions">
+ <li><?php echo submit_tag('submit', 'class=sf_admin_action_save value=Grabar');?></li>
+ <li><?php echo button_to('Listado de usuarios','usuario/list',array('class'=>'sf_admin_action_list'))?></li>
+ </ul>
+ </form>
+ </p>
+ <script type="text/javascript">
+ createMovableOptions("fromBox","toBox",500,300,'Permisos Disponibles','Permisos Seleccionados');
+ </script>
+ </div>
+</div>
Modified: prosistem/alba/trunk/alba/data/fixtures/00_datos_desde_cero.yml
===================================================================
--- prosistem/alba/trunk/alba/data/fixtures/00_datos_desde_cero.yml 2009-05-05 02:32:07 UTC (rev 6160)
+++ prosistem/alba/trunk/alba/data/fixtures/00_datos_desde_cero.yml 2009-05-05 06:39:29 UTC (rev 6161)
@@ -401,357 +401,333 @@
borrado: 0
Permiso:
- Permiso_1:
+ Permiso_usuario:
nombre: usuario
descripcion: Modulo de usuario
- Permiso_2:
- nombre: permiso
- descripcion: Administrar permisos de usuario
- Permiso_3:
- nombre: modulo
- descripcion: Administración de módulos
- Permiso_4:
+ Permiso_actividad:
nombre: actividad
descripcion:
- Permiso_5:
+ Permiso_alumno:
nombre: alumno
descripcion:
- Permiso_6:
+ Permiso_anio:
nombre: anio
descripcion:
- Permiso_7:
+ Permiso_calendario:
nombre: calendario
descripcion:
- Permiso_8:
+ Permiso_calendariovacunacion:
nombre: calendariovacunacion
descripcion:
- Permiso_9:
+ Permiso_ciclolectivo:
nombre: ciclolectivo
descripcion:
- Permiso_10:
+ Permiso_concepto:
nombre: concepto
descripcion:
- Permiso_11:
- nombre: creditos
- descripcion:
- Permiso_12:
+ Permiso_cuenta:
nombre: cuenta
descripcion:
- Permiso_13:
+ Permiso_division:
nombre: division
descripcion:
- Permiso_14:
+ Permiso_docente:
nombre: docente
descripcion:
- Permiso_15:
- nombre: docenteHorario
+ Permiso_docentehorario:
+ nombre: docentehorario
descripcion:
- Permiso_16:
+ Permiso_escalanota:
nombre: escalanota
descripcion:
- Permiso_17:
+ Permiso_establecimiento:
nombre: establecimiento
descripcion:
- Permiso_18:
+ Permiso_feriado:
nombre: feriado
descripcion:
- Permiso_19:
+ Permiso_legajocategoria:
nombre: legajocategoria
descripcion:
- Permiso_20:
+ Permiso_locacion:
nombre: locacion
descripcion:
- Permiso_21:
+ Permiso_pais:
nombre: pais
descripcion:
- Permiso_22:
+ Permiso_preferencia:
nombre: preferencia
descripcion:
- Permiso_23:
+ Permiso_provincia:
nombre: provincia
descripcion:
- Permiso_24:
- nombre: relActividadDocente
+ Permiso_relactividaddocente:
+ nombre: relactividaddocente
descripcion:
- Permiso_25:
- nombre: relAnioActividad
+ Permiso_relactividad:
+ nombre: relactividad
descripcion:
- Permiso_26:
- nombre: relCalendariovacunacionAlumno
+ Permiso_relcalendariovacunacionalumno:
+ nombre: relcalendariovacunacionalumno
descripcion:
- Permiso_27:
+ Permiso_responsable:
nombre: responsable
descripcion:
- Permiso_28:
+ Permiso_rol:
nombre: rol
descripcion:
- Permiso_29:
+ Permiso_tipoiva:
nombre: tipoiva
descripcion:
- Permiso_30:
+ Permiso_turno:
nombre: turno
descripcion:
- Permiso_31:
+ Permiso_tipolocacion:
nombre: tipolocacion
descripcion:
- Permiso_32:
+ Permiso_tipoespacio:
nombre: tipoespacio
descripcion:
- Permiso_33:
+ Permiso_espacio:
nombre: espacio
descripcion:
- Permiso_34:
+ Permiso_cargobaja:
nombre: cargoabaja
descripcion:
- Permiso_35:
+ Permiso_conceptobaja:
nombre: conceptobaja
descripcion:
- Permiso_36:
+ Permiso_distritoescolar:
nombre: distritoescolar
descripcion:
- Permiso_37:
+ Permiso_horarioescolar:
nombre: horarioescolar
descripcion:
- Permiso_38:
+ Permiso_horarioescolartipo:
nombre: horarioescolartipo
descripcion:
- Permiso_39:
+ Permiso_tipodocente:
nombre: tipodocente
descripcion:
- Permiso_40:
+ Permiso_organizacion:
nombre: organizacion
descripcion:
- Permiso_41:
- nombre: Asistencia
- descripcion: Asistencia
- Permiso_42:
- nombre: distrito
- descripcion: distrito
- Permiso_43:
- nombre: distritoescolar
- descripcion: Distrito Escolar
- Permiso_44:
+ Permiso_asistencia:
+ nombre: asistencia
+ descripcion: Asistencias
+ Permiso_legajopedagogico:
nombre: legajopedagogico
descripcion:
- Permiso_45:
+ Permiso_tipoasistencia:
nombre: tipoasistencia
descripcion:
- Permiso_46:
+ Permiso_formatofecha:
nombre: formatofecha
descripcion:
- Permiso_47:
- nombre: relLocacionEspacio
+ Permiso_rellocacionespacio:
+ nombre: rellocacionespacio
descripcion:
- Permiso_48:
- nombre: relAlumnoDivision
+ Permiso_relalumnodivision:
+ nombre: relalumnodivision
descripcion:
- Permiso_49:
+ Permiso_boletin:
nombre: boletin
descripcion:
- Permiso_50:
+ Permiso_boletinconcepto:
nombre: boletinconcepto
descripcion: boletinconcepto
- Permiso_51:
+ Permiso_boletinnotas:
nombre: boletinnotas
descripcion: boletinnotas
- Permiso_52:
+ Permiso_tipodocumento:
nombre: tipodocumento
descripcion: tipodocumento
- Permiso_53:
- nombre: informes
+ Permiso_informe:
+ nombre: informe
descripcion: informes
- Permiso_54:
- nombre: rolResponsable
+ Permiso_rolresponsable:
+ nombre: rolresponsable
descripcion: Rol de Responsables
- Permiso_55:
+ Permiso_orientacion:
nombre: orientacion
descripcion: Orientacion
- Permiso_56:
+ Permiso_tiponivel:
nombre: tiponivel
descripcion: Tipo de Nivel
- Permiso_57:
+ Permiso_carrera:
nombre: carrera
descripcion: Carreras
+ Permiso_legajosalud:
+ nombre: legajosalud
+ descripcion: Legajo de Salud
Rol:
- Rol_1:
+ Rol_administrador:
nombre: Administrador
descripcion: Administrador del sistema
activo: 1
RolPermiso:
Rol_permiso_1_1:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_1
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_actividad
Rol_permiso_1_2:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_2
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_alumno
Rol_permiso_1_3:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_3
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_anio
Rol_permiso_1_4:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_4
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_asistencia
Rol_permiso_1_5:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_5
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_boletin
Rol_permiso_1_6:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_6
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_boletinconcepto
Rol_permiso_1_7:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_7
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_boletinnotas
Rol_permiso_1_8:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_8
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_calendario
Rol_permiso_1_9:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_9
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_calendariovacunacion
Rol_permiso_1_10:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_10
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_cargobaja
Rol_permiso_1_11:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_11
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_carrera
Rol_permiso_1_12:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_12
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_ciclolectivo
Rol_permiso_1_13:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_13
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_conceptobaja
Rol_permiso_1_14:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_14
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_concepto
Rol_permiso_1_15:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_15
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_cuenta
Rol_permiso_1_16:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_16
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_distritoescolar
Rol_permiso_1_17:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_17
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_division
Rol_permiso_1_18:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_18
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_docente
Rol_permiso_1_19:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_19
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_docentehorario
Rol_permiso_1_20:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_20
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_escalanota
Rol_permiso_1_21:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_21
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_espacio
Rol_permiso_1_22:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_22
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_establecimiento
Rol_permiso_1_23:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_23
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_feriado
Rol_permiso_1_24:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_24
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_formatofecha
Rol_permiso_1_25:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_25
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_horarioescolar
Rol_permiso_1_26:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_26
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_horarioescolartipo
Rol_permiso_1_27:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_27
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_informe
Rol_permiso_1_28:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_28
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_legajocategoria
Rol_permiso_1_29:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_29
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_legajopedagogico
Rol_permiso_1_30:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_30
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_legajosalud
Rol_permiso_1_31:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_31
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_locacion
Rol_permiso_1_32:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_32
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_organizacion
Rol_permiso_1_33:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_33
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_orientacion
Rol_permiso_1_34:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_34
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_pais
Rol_permiso_1_35:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_35
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_preferencia
Rol_permiso_1_36:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_36
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_provincia
Rol_permiso_1_37:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_37
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_relactividad
Rol_permiso_1_38:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_38
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_relactividaddocente
Rol_permiso_1_39:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_39
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_relalumnodivision
Rol_permiso_1_40:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_40
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_relcalendariovacunacionalumno
Rol_permiso_1_41:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_41
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_rellocacionespacio
Rol_permiso_1_42:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_42
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_responsable
Rol_permiso_1_43:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_43
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_rol
Rol_permiso_1_44:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_44
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_rolresponsable
Rol_permiso_1_45:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_45
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipoasistencia
Rol_permiso_1_46:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_46
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipodocente
Rol_permiso_1_47:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_47
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipodocumento
Rol_permiso_1_48:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_48
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipoespacio
Rol_permiso_1_49:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_49
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipoiva
Rol_permiso_1_50:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_50
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tipolocacion
Rol_permiso_1_51:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_51
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_tiponivel
Rol_permiso_1_52:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_52
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_turno
Rol_permiso_1_53:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_53
- Rol_permiso_1_54:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_54
- Rol_permiso_1_55:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_55
- Rol_permiso_1_56:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_56
- Rol_permiso_1_57:
- fk_rol_id: Rol_1
- fk_permiso_id: Permiso_57
+ fk_rol_id: Rol_administrador
+ fk_permiso_id: Permiso_usuario
UsuarioRol:
- Usuario_rol_1_1:
+ Usuario_Rol_administrador_1:
fk_usuario_id: Usuario_1
- fk_rol_id: Rol_1
+ fk_rol_id: Rol_administrador
Más información sobre la lista de distribución Alba-desarrollo