function uc_ups_request_pickup in Ubercart 8.4
Same name and namespace in other branches
- 5 shipping/uc_ups/uc_ups.module \uc_ups_request_pickup()
- 6.2 shipping/uc_ups/uc_ups.ship.inc \uc_ups_request_pickup()
- 7.3 shipping/uc_ups/uc_ups.ship.inc \uc_ups_request_pickup()
Constructs an XML label and pickup request.
Parameters
string $digest: Base-64 encoded shipment request.
int $order_id: The order id of the shipment.
array $packages: An array of package ids to be shipped.
Return value
string ShipmentAcceptRequest XML document to send to UPS.
1 call to uc_ups_request_pickup()
- uc_ups_confirm_shipment_submit in shipping/
uc_ups/ src/ Plugin/ Ubercart/ FulfillmentMethod/ uc_ups.ship.inc - Generates label and schedules pickup of the shipment.
File
- shipping/
uc_ups/ src/ Plugin/ Ubercart/ FulfillmentMethod/ uc_ups.ship.inc, line 713 - UPS functions for label generation.
Code
function uc_ups_request_pickup($digest, $order_id = 0, array $packages = []) {
$packages = (array) $packages;
$schema = uc_ups_access_request();
$schema .= "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<ShipmentAcceptRequest>\n <Request>\n <RequestAction>ShipAccept</RequestAction>";
if ($order_id || count($packages)) {
$schema .= "\n<TransactionReference>\n <CustomerContext>";
if ($order_id) {
$schema .= "<OrderId>" . $order_id . "</OrderId>\n";
}
foreach ($packages as $pkg_id) {
$schema .= "<PackageId>" . $pkg_id . "</PackageId>\n";
}
$schema .= "</CustomerContext>\n</TransactionReference>\n";
}
$schema .= " </Request>\n <ShipmentDigest>" . $digest . "</ShipmentDigest>\n</ShipmentAcceptRequest>";
return $schema;
}