Files
2026-04-28 15:13:50 +02:00

53 lines
1.5 KiB
PHP

<?php
/**
* Additional services.
*
* @package PaczkomatyInpost
*/
/**
* Handles additional services functionality on shipment.
*/
class WPDesk_Paczkomaty_Additional_Service extends WPDesk_Paczkomaty_Abstract_Shipment_Field_Checkbox {
/**
* Additional service.
*
* @var string
*/
private $additional_service;
/**
* WPDesk_Paczkomaty_Notification constructor.
*
* @param string $field_name .
* @param string $meta_name .
* @param WPDesk_Flexible_Shipping_Shipment_Paczkomaty $shipment .
* @param string $additional_service .
*/
public function __construct( $field_name, $meta_name, $shipment, $additional_service ) {
parent::__construct( $field_name, $meta_name, $shipment );
$this->additional_service = $additional_service;
}
/**
* .
*
* @param stdClass $shipment_data .
*
* @return stdClass
* @throws WPDesk_Paczkomaty_ShipX_Exception .
*/
public function modify_shipment_data( $shipment_data ) {
if ( WPDesk_Flexible_Shipping_Shipment_Paczkomaty::SERVICE_KURIER === $this->shipment->get_inpost_service() ) {
if ( intval( $this->shipment->get_meta( $this->meta_name, '0' ) ) === 1 ) {
if ( ! isset( $shipment_data->additional_services ) ) {
$shipment_data->additional_services = array();
}
$shipment_data->additional_services[] = $this->additional_service;
}
}
return $shipment_data;
}
}