<?php
echo '<font color="red" size="4">pnr::'.$pnr.'</font><br><br>';

require('/home/opshmfm/public_html/agencias/webs/cnt/tissels.php');

$req_token = "SELECT token FROM token_app_safarsys limit 1 ";
$exe_token=mysql_query($req_token);
//echo '<font color="green">'.$req_token.'</font><br><br>';
$res_token = mysql_fetch_assoc($exe_token);
$getTokenResponse= $res_token['token'];
//echo '<font color="green">'.$getTokenResponse.'</font><br><br>';
////////////////////////////////////////////////////////////////////////////

if (!$getTokenResponse) {
    die('Error: Failed to retrieve token');
}

echo '<font color="red" size="4">$traveller_id :'.$traveller_id.'</font><br><br>';
echo '<font color="red" size="4">pnr:'.$pnr.'</font><br><br>';
echo '<font color="red" size="4">doc_issue_location :'.$doc_issue_location.'</font><br><br>';
echo '<font color="red" size="4">doc_type :'.$doc_type.'</font><br><br>';
echo '<font color="red" size="4">doc_number :'.$doc_number.'</font><br><br>';
echo '<font color="red" size="4">doc_expired_at :'.$doc_expired_at.'</font><br><br>';
echo '<font color="red" size="4">firstName :'.$firstName.'</font><br><br>';
echo '<font color="red" size="4">lastName :'.$lastName.'</font><br><br>';

// Fetch order details
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.safarengine.com/app/get_ticket");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array(
    "reference" => $pnr
)));
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , "Authorization: Bearer ".$getTokenResponse ));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);

$orderDetails = json_decode($response);

if ($orderDetails->errors){
    die('Error: No flight data found for PNR.');
}

// Extract traveler ID
$traveller_id = null;

foreach ($orderDetails->flights as $flight) {
    if (!empty($flight->travelers)) {
        foreach ($flight->travelers as $traveler) {
            if (
                strtolower($traveler->data->firstName) === strtolower($firstName) &&
                strtolower($traveler->data->lastName) === strtolower($lastName)
            ) {
                $traveller_id = $traveler->id;
                break 2;
            }
        }
    }
}

if (!$traveller_id)
{
    //die('Error: Traveler not found');
    echo 'Error: Traveler not found<br>';
    continue;
}

echo '<font color="red" size="4">$traveller_id: '.$traveller_id.'</font><br><br>';


if($getTokenResponse)
{
    // *** Call API [create ticket]:
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://api.safarengine.com/app/update_order");
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array(
      "pnr" => $pnr,
      "formOfIdentifications" => true,
      "identificationType" => $doc_type,
      "number" => $doc_number,
      "travellerId" => $traveller_id,
    )));
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json' , "Authorization: Bearer ".$getTokenResponse ));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $json = curl_exec($ch);

    $status=curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close ($ch);
    $createTicketResponse = json_decode($json);

    echo "<p style='color:blue;'>$status</p>";
    echo "<hr>";
    echo $createTicketResponse->message;
    
    if($createTicketResponse->message == '' && $status){
        require('/home/opshmfm/public_html/agencias/webs/cnt/tissels_flight-safar-sys.php');
        $monsql = "UPDATE creat_tkt_gestion  set  ssr_foid = 1 where pnr='$pnr'";
        mysql_query($monsql) or die('Erreur SQL datetime!<br>');
        echo '<font color="blue">'.$monsql.'</font><br><br>';
    }

    echo "<hr>";

    var_dump($createTicketResponse);
}
else
{
    echo $getTokenResponse->message;
}

?>
