Example #1
0
//Se incluye la clase Acceso
include '../../Clases/Acceso.php';
//Se incluye la clase Alta Funcionalidad y Funcionalidad
include '../../Clases/Funcionalidad.php';
include '../Vistas/V_AltaFuncionalidades.php';
//Se incluye las clases ya que necesitaremos informacion sobre los roles y paginas
include '../../Clases/Rol.php';
include '../../Clases/Pagina.php';
//Debemos indicar en la variable correspondiente que estamos en un determinado apartado para
//cuando se cree la vista y muestra el menu lateral correctamente
$_SESSION['PosicionMenuLateral'] = 'F';
//Cargamos el idioma a utilizar en el controlador
$idioma = CargarIdioma();
//La funcion siguiente se encarga de comprobar los permisos del usuario en sesion para la pagina que esta visitando, en caso de que no los tenga
// se redirigira a la pagina que se le pasa como parametro
Acceso::ConPermisos($_SESSION['login'], $_SERVER['SCRIPT_NAME'], '../../Principal/Controladores/Principal.php');
//--------------------- RECUPERACION DATOS PREVIOS
//Se crea una variable que se usara como contenedor para los datos, para que, en caso de error
// y que se necesite recargar datos previos introducidos por el usuario, este objeto
// almacenara los datos que introduciera previamente el usuario para cargarlos automaticamente en
// la vista sin que el usuario tenga que introducirlos otra vez
$datosPrevios = new Funcionalidad();
if (isset($_SESSION['recargaAF'])) {
    //Si esta set la variable recarga significa que hubo un error -> recarga de datos
    $datosPrevios->CargarDatosSesion($_SESSION['recargaFuncionalidadAlta']);
}
//-------------------------- CARGA DE DATOS RELACIONADOS CON EL ALTA DE UN USUARIO
//Ya que al dar de alta un usuario podemos establecerle un rol, necesitaremos la lista de roles
// y mostrala en la vista
$rolesSistema = array();
$paginasSistema = array();
Example #2
0
<?php

//se incluyen las funciones comunes
include_once 'Comun/FuncionesComunes.php';
//Se incluye la clase Acceso y la clase encargada de la conexion con la BD
include_once 'Clases/BaseDatosControl.php';
include_once 'Clases/Acceso.php';
//En el modulo de errores de GESTAP la comprobacion de errores automatica se hace enviando la cookie TEST para que no haga session start
// ya que no funciona correctamente con la llamada automatica a las paginas.
// EDIT: Funcionar funciona correctamente, el problema esta en que en la llamada automatica se envia una cookie 'PHPSESSID=se81a37b2tqgqne1lg840ljat1' (Otro valor cualquiera que tenga en ese momento)
// que trata de indentificar la sesion actual durante la realizacion de los tests (Esto es para que se mire el usuario en sesion durante la realizacion de los test para control de permisos)
// El problema esta en que si se incluye esa cookie session_start() no funciona (Se queda bloqueado y es necesario reiniciar apache a veces). Y si la cookie no se incluye de nada
// sirve session_start() si va a iniciar una sesion independiente donde $_SESSION['login'] no esta instanciado. Ante esta situacion, se ha decidido enviar una cookie TEST adicional para
// asi en las paginas de la WEB no se realize session_start() ni control de permisos.
if (!isset($_COOKIE["TEST"])) {
    session_start();
    //La funcion siguiente se encarga de comprobar los permisos del usuario en sesion para la pagina que esta visitando, en caso de que no los tenga
    // se redirigira a la pagina que se le pasa como parametro, se diferencian dos casos, en caso de que no se haya especificado pagina por defecto redirige al login de GESTAPP
    // en otro caso redirige a la pagina de error especificada en $miPaginaPorDefecto
    if ($miPaginaPorDefecto == "") {
        Acceso::ConPermisos($_SESSION['login'], $_SERVER['REQUEST_URI'], 'GESTAPP/Principal/Controladores/Principal.php');
    } else {
        Acceso::ConPermisos($_SESSION['login'], $_SERVER['REQUEST_URI'], $miPaginaPorDefecto);
    }
}