<?php
// app/api/session/entry

    header("Content-Type:application/json");
    include("../dbconn.php");
    include("../utils.php");
    
    // parametros obligatorios
    $parmsob = array("sessionid");
    if (!parametrosValidos($_GET, $parmsob)){
        badEnd("400", array("msg"=>"Parametros obligatorios " . implode(",", $parmsob)));
    }
    
    //Definicion de variables y almacenamiento de valores enviados por GET
    $out = new stdClass();
    $sessionid = $_GET["sessionid"];
    
    //Obtenemos el lenguaje del usuario
    $lang = updateLang($db,$sessionid);
    
    // Validamos que existe la sesion
    $sql = "SELECT COUNT(id) AS qty FROM users ".
    "       WHERE sessionid = '".$sessionid."'";
    if (!$rs = $db->query($sql)){
        badEnd("500", array("msg"=>$db->error));
    }
    
    $row = $rs->fetch_assoc();
    
    if($row['qty'] == 0){
        badEnd("401", array("msg"=>determinateMsgFail(array(
            "esp"=>"Clave inválida",
            "eng"=>"Invalid password"), $lang, "Clave inválida")));
    }
    
    //Actualizamos la sesion
    $sql = "UPDATE users SET ".
    "       sessionexpires = DATE_ADD(NOW(), INTERVAL 15 MINUTE) ".
    "       WHERE sessionid = '".$sessionid."'";
    if (!$db->query($sql)){
        badEnd("500", array("msg"=>$db->error));
    }
    
    $sql = "SELECT  id, sessionid,  DATE_FORMAT(validthru, '%Y%m%d%H%i%s') vt ".
    "       FROM users ".
    "       WHERE sessionid = '".$sessionid."'";
    if (!$rs = $db->query($sql)){
        badEnd("500", array("sql"=>$sql,"msg"=>$db->error));
    }
    
    $row = $rs->fetch_assoc();
    
    $out->id =(int)$row["id"];
    $out->sessionid = $row["sessionid"];
    $out->validthru = $row["vt"];
    
    header("HTTP/1.1 200");
    echo (json_encode($out));
    die();
?>