<?php 
if($_GET['token'] == "4pLjKk05idEriEDpPaScl5vT3"){
$db = new SQLite3("./api/.anspanel.db");

$query = "SELECT * FROM mercadopago_requests WHERE id_transaction is not null and id_transaction != '' AND status='0' ORDER BY id DESC";
$result = $db->query($query);



if($result){
    $resultConfig = $db->query("SELECT * FROM mercadopago_config");
    $config = $resultConfig->fetchArray(SQLITE3_ASSOC);
    $access_token = $config['access_token'];
   
    while($row = $result->fetchArray(SQLITE3_ASSOC)){
        $id_transaction = $row['id_transaction'];
        $status = $row['status'];
        echo "<pre>";
        print_r($row);
        // die;
        if($status != "1"){
            $apiUrl = "https://api.mercadopago.com/checkout/preferences/$id_transaction";


            $curl = curl_init();

            curl_setopt_array($curl, array(
                CURLOPT_URL => $apiUrl,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_HTTPHEADER => array(
                    "Authorization: Bearer $access_token"
                )
            ));

            $response = curl_exec($curl);

            if(curl_errno($curl)){
                echo 'Erro ao enviar requisição: ' . curl_error($curl);
            }

            curl_close($curl);

            $paymentInfo = json_decode($response, true);

            if($paymentInfo["external_reference"]){
                $apiUrl = "https://api.mercadopago.com/v1/payments/search?external_reference=".$paymentInfo["external_reference"];


                $curl = curl_init();
    
                curl_setopt_array($curl, array(
                    CURLOPT_URL => $apiUrl,
                    CURLOPT_RETURNTRANSFER => true,
                    CURLOPT_HTTPHEADER => array(
                        "Authorization: Bearer $access_token"
                    )
                ));
    
                $response = curl_exec($curl);
    
                if(curl_errno($curl)){
                    echo 'Erro ao enviar requisição: ' . curl_error($curl);
                }
    
                curl_close($curl);
    
                $paymentInfoApi = json_decode($response, true);
                if(isset($paymentInfoApi['results']) && count($paymentInfoApi['results']) > 0){
                    $paymentStatus = $paymentInfoApi['results'][0]['status'];
                    
                    if($paymentStatus == "approved"){
                        $query2 = "UPDATE USERS SET expire_date = DATE(expire_date, '+1 month') WHERE id='". $row['user_id'] ."'";
                        
                        $db->exec($query2);
                        
                        $query = "UPDATE mercadopago_requests SET status = '1' WHERE id_transaction = '$id_transaction'";
                        
                        $db->exec($query);
                    }
                }
            }
        }
    }
}

$db->close();

}
?>