/* * ******************************************************
Aplicacion: Control Salas
Archivo: terminarSesion.php
Objetivo: Modulo en el cual se listan las sesiones actuales de una sala y a partir de la seleccion hecha por
el monitor se termina una sesion en un computador. Este modulo se encarga de actualizar la BD para
que el computador este libre para futuras sesiones.
Autor: Angela Benavides
Año: 2006
* ******************************************************* */
session_start();
if (!isset($_SESSION['monitor'])) {
header("Location: /Comunidad/Informatica/ControlUsuarios/control.php");
die();
}
$rootPath = '../../..';
require '../../../functions.php';
require 'varfunctions.php';
date_default_timezone_set('GMT-4'); //Establece zona horaria, evita desfaces
$_GET['submenu_control'] = true;
$sala = $_SESSION['idsala'];
if ($sala == 'auditorio') {
header("Location: /Comunidad/Informatica/ControlUsuarios/salir.php");
}
if ($_POST['terminar']) {
if (empty($_POST['seleccion']))
$_GET['vacios'] = true;
else {
$fallo = false;
$conexion = DBConnect('controlsalas');
if (!$conexion)
echo("
No se pudo lograr la conexión con la BD. | ");
else {
db_query('begin');
$horaactual = date(G) . ":" . date(i) . ":" . date(s);
$sel = pg_escape_string($_POST['seleccion']);
$rs = db_query("select * from registro where indice = $sel");
$obj = pg_fetch_object($rs);
$equipo = pg_escape_string($obj->equipo);
$fechasalida = date(Y) . "-" . date(n) . "-" . date(d);
if (datebigger($fechasalida, $obj->fecha)) {
if (actual_tomorrow($obj->horaing)) {
$horaactual = '13:00:00';
} else if (actual_afternoon($obj->horaing)) {
$horaactual = '18:00:00';
} else {
$horaactual = '21:00:00';
}
$fechasalida = $obj->fecha;
}
if (actual_tomorrow($obj->horaing) && !actual_tomorrow($horaactual)) {
$horaactual = '13:00:00';
}
$fecha_sal = pg_escape_string($fechasalida);
$sel = pg_escape_string($_POST['seleccion']);
$rs = db_query("update registro set horarealsal = '$horaactual',
sesion = 'Terminada',
fechasalida='$fecha_sal'
where indice = $sel");
if (!$rs)
$fallo = true;
$rs = db_query("update computador set disponible = 'true' where codigosala = '$sala' and codigopc = '$equipo'");
if (!$rs)
$fallo = true;
if ($fallo) {
db_query('rollback');
?>
} else {
db_query('commit');
}
}
}
}
$fechaGuardada = $_SESSION['ultimoAcceso'];
$ahora = date("Y-n-j H:i:s");
$tiempo_transcurrido = (strtotime($ahora) - strtotime($fechaGuardada));
if ($tiempo_transcurrido >= 900 and getIP() != '192.168.221.63') {
session_destroy();
header("Location: control.php");
} else {
PageInit("Terminar Sesión Usuario Sala $sala", "menu.php");
//print_r($_SESSION);
?>
Terminar Sesión
Monitor:
Hora Actual:
21:05:46
}
if (isset($_GET['vacios'])) {
?>
}
?>
function terminar (){
?>
}
?>
PageEnd();
?>