|
|
|
@ -48,6 +48,10 @@ class Tracking_UPS {
|
|
|
|
|
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($trackrequest));
|
|
|
|
|
$response = curl_exec($ch);
|
|
|
|
|
|
|
|
|
|
//header("Content-Type: application/json");
|
|
|
|
|
//echo json_encode(json_decode($response), JSON_PRETTY_PRINT);
|
|
|
|
|
//exit();
|
|
|
|
|
|
|
|
|
|
// CHECK TO SEE IF WE GOT AN ERROR
|
|
|
|
|
// IF SO, FORMAT IT LIKE THIS ::28::Operation timed out afterseconds
|
|
|
|
|
if ((curl_errno($ch)) && (curl_errno($ch) != 0)) {
|
|
|
|
@ -84,8 +88,21 @@ class Tracking_UPS {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$info = new TrackingInfo();
|
|
|
|
|
|
|
|
|
|
$info->setCode($trackinfo["Package"]["TrackingNumber"]);
|
|
|
|
|
if (!empty($trackinfo["Package"]["TrackingNumber"])) {
|
|
|
|
|
$info->setCode($trackinfo["Package"]["TrackingNumber"]);
|
|
|
|
|
} else if (is_array($trackinfo["Package"])) {
|
|
|
|
|
// More than one linked package in one shipment, get rid of the extra and make the
|
|
|
|
|
// schema match what we expect
|
|
|
|
|
$package = [];
|
|
|
|
|
for ($i = 0; $i < count($trackinfo["Package"]); $i++) {
|
|
|
|
|
if ($trackinfo["Package"][$i]["TrackingNumber"] == $code) {
|
|
|
|
|
$info->setCode($trackinfo["Package"][$i]["TrackingNumber"]);
|
|
|
|
|
$package = $trackinfo["Package"][$i];
|
|
|
|
|
$trackinfo["Package"] = $package;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$info->setCarrier("ups");
|
|
|
|
|
$info->setService(new Service($trackinfo["Service"]["Code"], $trackinfo["Service"]["Description"]));
|
|
|
|
|