<?php
  include_once("conn.php");

  $jsondata = array();
  if (!isset($_POST['xUsua']) || !isset($_POST['xPass'])) {
    $jsondata['success'] = false;
    $jsondata['message'] = 'Información de entrada mal definida.';
    header('Content-type: application/json; charset=utf-8');
    echo json_encode($jsondata);
    exit();
  }
  
  $sql = "SELECT UU.USUARIO, UU.NOMBRE, UU.ID_USUARIO, UU.EMAIL, U.ADMIN
          FROM (select UP.ID_USUARIO, P.ADMIN
                from OBJETOS O
                     inner join PERFILESOBJETOS PO 
                         inner join USUARIOSPERFILES UP
                             inner join PERFILES P
                             on P.PERFIL = UP.PERFIL
                          on UP.PERFIL = PO.PERFIL
                     on PO.OBJETO = O.OBJETO
                where O.NOMBRE = 'Tablero_Web' and isnull(P.ADMIN,0) = 0
                union all
                select U.ID_USUARIO, P.ADMIN
                from USUARIOS U
                     inner join USUARIOSPERFILES UP
                         inner join PERFILES P
                         on P.PERFIL = UP.PERFIL
                     on UP.ID_USUARIO = U.ID_USUARIO
                where isnull(P.ADMIN,0) = 1) U
               inner join Usuarios UU
               ON U.id_usuario = UU.id_usuario
          WHERE UPPER(UU.USUARIO) = UPPER('".$_POST['xUsua']."')
            AND UU.INHABILITADO = 0 
            AND ".$_SESSION['currBaseSeguridad']."decripta(UU.PWD)='".$_POST['xPass']."' ";
  $RsUsuario = $DBSegu->Execute($sql);
  $resu = true;
  if (!$RsUsuario) {
    $jsondata['success'] = false;
    $jsondata['message'] = 'Ha ocurrido un error. Intente nuevamente.';
    $resu = false;
    $msg = 'Ha ocurrido un error durante su registro. Intente nuevamente.';
  }
  if ($resu) {
    if ($RsUsuario->RecordCount() > 0) {
	    $_SESSION['UsuarioValidado'] = 'SI';
      $_SESSION['CurrentUser'] = $RsUsuario->fields['NOMBRE'];
	    $_SESSION['CurrentIdUser'] = $RsUsuario->fields['ID_USUARIO'];
      $_SESSION['CurrentCorreo'] = $RsUsuario->fields['EMAIL'];
      $_SESSION['CurrentAdmin']  = $RsUsuario->fields['ADMIN'];
      $_SESSION['CurrentPortal'] = '';

      $sql = "select NOMBRE_BASE  
              from BASES 
              where isnull(PRINCIPAL,0) = 1 ";
      $RsBase = $DBSegu->Execute($sql);
      if (!$RsBase) {
        print $DBSegu->ErrorMsg();
      }
      $_SESSION['BaseMadre'] = ($RsBase->Recordcount() == 0)?'pixoSeg.dbo.':$RsBase->fields['NOMBRE_BASE'].'.dbo.';

      $jsondata['success'] = true;
      $jsondata['message'] = '';

      if ($_POST['xReco'] == 1) {
        mt_srand (time());
        //generamos un número aleatorio
        $numero_aleatorio = mt_rand(1000000,999999999);
        //2) meto la marca aleatoria en la tabla de usuario
        $ssql = " update USUARIOS SET COOKIE='".$numero_aleatorio."' WHERE ID_USUARIO=" . $_SESSION['CurrentIdUser'];
        $RsLogin = $DBSegu->Execute($ssql);
        //3) ahora meto una cookie en el ordenador del usuario con el identificador del usuario y la cookie aleatoria
        setcookie("cCodigo", $_SESSION['CurrentIdUser'], time()+(60*60*24*365));
        setcookie("cMarca", $numero_aleatorio, time()+(60*60*24*365));  
      }
    }
    else {
      $jsondata['success'] = false;
      $jsondata['message'] = 'Usuario o contraseña incorrectos.';
    }
  }

  header('Content-type: application/json; charset=utf-8');
  echo json_encode($jsondata);
  exit();
?>