Incam_Intranet/seguridad.php
david 9e87e5eb38 Tarea #647 -> Nueva entrada de menú para ver la lista de ofertas
Tarea #646 -> Crear la acción "Creación de oferta" que cree una oferta relacionada con la solicitud de oferta que se está mostrando.
Tarea #607 -> Nueva entidad 'Oferta' con estados nuevos
Tarea #606 -> Nuevos estados y transiciones para una solicitud de oferta
Tarea #601 -> Nuevos estados y transiciones para un candidato
Tarea #599 -> Repasar los registros que se meten en el historial de cambios
Tarea #586 -> Cuando una solicitud tiene varios perfiles, hay que visualizarlos ocupando las menos filas posibles
Tarea #585 -> Cuando un candidato tiene varios perfiles, hay que visualizarlos ocupando las menos filas posibles

git-svn-id: https://192.168.0.254/svn/Proyectos.Incam_Intranet/trunk/src@65 e2b1556b-49f8-d141-9351-52d6861a72d9
2011-05-19 08:46:58 +00:00

88 lines
2.8 KiB
PHP

<?php
//si es necesario cambiar la config. del php.ini desde tu script
ini_set("session.use_only_cookies","1");
ini_set("session.use_trans_sid","0");
//iniciamos la sesión
session_name("loginUsuario");
include_once("Objects/Usuario.php");
include_once("Objects/Semaforo.php");
session_start();
//FICHERO DE IDIOMAS
define("LOCALE", "idiomas/");
define("LOCALESET", "sp/");
include LOCALE.LOCALESET."lenguaje.php";
include_once("functions_util.php");
// Definimos según el sistema operativo la barra para separar rutas
$path = dirname( __FILE__ );
$slash = "\\";
strpos( $path, $slash ) ? '' : $slash = '/';
define("SLASH",$slash );
//Evitamos ataques de sql injection
foreach($_POST as $key => $value){
if(gettype($value) != "array"){
$value = stripinput($value);
}
$_POST[$key] = $value;
}
foreach($_GET as $key => $value){
if(gettype($value) != "array"){
$value = stripinput($value);
}
$_GET[$key] = $value;
}
session_set_cookie_params(0, "/", $_SERVER["HTTP_HOST"], 0);
//cambiamos la duración a la cookie de la sesión
//antes de hacer los cálculos, compruebo que el usuario está logueado
//utilizamos el mismo script que antes
if ($_SESSION["autentificado"] != "SI") {
//si no está logueado lo envío a la página de autentificación
header("Location: index.php");
} else {
//sino, calculamos el tiempo transcurrido
$fechaGuardada = $_SESSION["ultimoAcceso"];
$duracion = $_SESSION["duracion"];
$usuario = $_SESSION["usuario"];
$idioma = $_SESSION["idioma"];
if($idioma != ""){
if (!defined("LOCALESET")) {
define("LOCALESET", "$idioma/");
}
}
$ahora = date("Y-n-j H:i:s");
$tiempo_transcurrido = (strtotime($ahora)-strtotime($fechaGuardada));
$tiempo_transcurrido = $tiempo_transcurrido/60;
//comparamos el tiempo transcurrido
//----------IMPORTANTE AÑADIR LA CONSTANTE AL SISTEMA---------------//
//echo "-------------------------------------------------- Transcurrido: $tiempo_transcurrido<br>";
//$restante = $duracion - $transcurrido;
//echo "-------------------------------------------------- Tiempo restante: $restante<br>";
//echo "-------------------------------------------------- Duración: $duracion<br>";
if($tiempo_transcurrido >= $duracion) {
//si pasó el tiempo
session_destroy(); // destruyo la sesión
header("Location: index.php"); //envío al usuario a la pag. de autenticación
//sino, actualizo la fecha de la sesión
}else {
$_SESSION["ultimoAcceso"] = $ahora;
}
// Semáforos
$semaforo=new Semaforo($usuario,$locale);
try{
$semaforo->regular($_SERVER['REQUEST_URI']);
}catch (Exception $e){
header("Location: ".$e->getMessage());
exit();
}
}
?>