init
This commit is contained in:
+41
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
if ( ! class_exists( 'WC_Connect_Extension_Compatibility' ) ) {
|
||||
class WC_Connect_Extension_Compatibility {
|
||||
/**
|
||||
* Function called when a new tracking number is added to the order
|
||||
*
|
||||
* @param $order_id - order ID
|
||||
* @param $carrier_id - carrier ID, as returned on the label objects returned by the server
|
||||
* @param $tracking_number - tracking number string
|
||||
*/
|
||||
public static function on_new_tracking_number( $order_id, $carrier_id, $tracking_number ) {
|
||||
// call WooCommerce Shipment Tracking if it's installed
|
||||
if ( function_exists( 'wc_st_add_tracking_number' ) ) {
|
||||
// note: the only carrier ID we use at the moment is 'usps', which is the same in WC_ST, but this might require a mapping
|
||||
wc_st_add_tracking_number( $order_id, $tracking_number, $carrier_id );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if WooCommerce Shipping & Tax should email the tracking details, or if another extension is taking care of that already
|
||||
*
|
||||
* @param $order_id - order ID
|
||||
* @return boolean true if WCS should send the tracking info, false otherwise
|
||||
*/
|
||||
public static function should_email_tracking_details( $order_id ) {
|
||||
if ( function_exists( 'wc_shipment_tracking' ) ) {
|
||||
$shipment_tracking = wc_shipment_tracking();
|
||||
if ( property_exists( $shipment_tracking, 'actions' )
|
||||
&& method_exists( $shipment_tracking->actions, 'get_tracking_items' ) ) {
|
||||
$shipment_tracking_items = $shipment_tracking->actions->get_tracking_items( $order_id );
|
||||
if ( ! empty( $shipment_tracking_items ) ) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user