Changeset 2691138
- Timestamp:
- 03/09/2022 01:33:08 AM (4 years ago)
- Location:
- delyvax/trunk
- Files:
-
- 5 edited
-
delyvax.php (modified) (2 diffs)
-
functions.php (modified) (7 diffs)
-
includes/delyvax-shipping.php (modified) (3 diffs)
-
includes/delyvax-webhook.php (modified) (4 diffs)
-
readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
delyvax/trunk/delyvax.php
r2672618 r2691138 4 4 Plugin URI: https://delyva.com 5 5 description: The official Delyva plugin helps store owners to integrate WooCommerce with [Delyva](https://delyva.com) for seamless service comparison and order processing. 6 Version: 1.1.2 66 Version: 1.1.27 7 7 Author: Delyva 8 8 Author URI: https://delyva.com … … 13 13 defined( 'ABSPATH' ) or die( 'No script kiddies please!' ); 14 14 define('DELYVAX_API_ENDPOINT', 'https://api.delyva.app/'); 15 define('DELYVAX_PLUGIN_VERSION', '1.1.2 6');15 define('DELYVAX_PLUGIN_VERSION', '1.1.27'); 16 16 17 17 require_once plugin_dir_path(__FILE__) . 'functions.php'; -
delyvax/trunk/functions.php
r2672618 r2691138 910 910 $main_order->save(); 911 911 912 $main_order->update_status('ready-to-collect'); 913 912 914 $count = 0; 913 915 foreach ($sub_orders as $sub) … … 919 921 $sub_order->save(); 920 922 923 $sub_order->update_status('ready-to-collect'); 924 921 925 $consignmentNo = $trackingNo."-".($count+1); 922 926 … … 930 934 $main_order->update_meta_data( 'DelyvaXTrackingCode', $trackingNo ); 931 935 $main_order->save(); 936 937 $main_order->update_status('ready-to-collect'); 932 938 933 939 $consignmentNo = $trackingNo."-1"; … … 968 974 969 975 $consignmentNo = $trackingNo."-1"; 970 971 976 } 972 977 } … … 1056 1061 ) ); 1057 1062 register_post_status( 'wc-ready-to-collect', array( 1058 'label' => _x(' Ready to collect', 'Order status', 'default' ),1063 'label' => _x('Package is Ready', 'Order status', 'default' ), 1059 1064 'public' => true, 1060 1065 'exclude_from_search' => false, 1061 1066 'show_in_admin_all_list' => true, 1062 1067 'show_in_admin_status_list' => true, 1063 'label_count' => _n_noop( ' Ready to collect (%s)', 'Ready to collect(%s)' )1068 'label_count' => _n_noop( 'Package is Ready (%s)', 'Package is Ready (%s)' ) 1064 1069 ) ); 1065 1070 register_post_status( 'wc-courier-accepted', array( … … 1145 1150 if ( 'wc-processing' === $key ) { 1146 1151 $new_order_statuses['wc-preparing'] = _x('Preparing', 'Order status', 'woocommerce'); 1147 $new_order_statuses['wc-ready-to-collect'] = _x(' Ready to collect', 'Order status', 'woocommerce');1152 $new_order_statuses['wc-ready-to-collect'] = _x('Package is Ready', 'Order status', 'woocommerce'); 1148 1153 $new_order_statuses['wc-courier-accepted'] = _x('Courier accepted', 'Order status', 'woocommerce'); 1149 1154 $new_order_statuses['wc-start-collecting'] = _x('Pending pick up', 'Order status', 'woocommerce'); … … 1172 1177 { 1173 1178 $new_actions['mark_preparing'] = __( 'Mark as Preparing', 'woocommerce'); 1174 $new_actions['mark_ready-to-collect'] = __( 'Mark as Ready to collect', 'woocommerce');1179 $new_actions['mark_ready-to-collect'] = __( 'Mark as Package is Ready', 'woocommerce'); 1175 1180 $new_actions['mark_courier-accepted'] = __( 'Mark as Courier accepted', 'woocommerce'); 1176 1181 $new_actions['mark_start-collecting'] = __( 'Mark as Pending pick up', 'woocommerce'); -
delyvax/trunk/includes/delyvax-shipping.php
r2672618 r2691138 323 323 $multivendor_option = $settings['multivendor']; 324 324 325 $checkout_pricing_enable = $settings['enable']; 326 327 if($checkout_pricing_enable != 'yes') 328 { 329 return; 330 } 331 325 332 $weight_unit = get_option('woocommerce_weight_unit'); 326 333 … … 605 612 //$service_label = str_replace('(COD)', '', $service_label); 606 613 614 $service_code = $shipper['service']['serviceCompany']['companyCode'] ? $shipper['service']['serviceCompany']['companyCode'] : $shipper['service']['code']; 615 607 616 $rate = array( 608 'id' => $s hipper['service']['code'],617 'id' => $service_code, 609 618 'label' => $service_label, 610 619 'cost' => $cost, … … 612 621 'calc_tax' => 'per_order', 613 622 'meta_data' => array( 614 'service_code' => $s hipper['service']['code'],623 'service_code' => $service_code, 615 624 ), 616 625 ); -
delyvax/trunk/includes/delyvax-webhook.php
r2581190 r2691138 2 2 defined( 'ABSPATH' ) or die( 'No script kiddies please!'); 3 3 add_action( 'woocommerce_update_options', 'delyvax_woocommerce_update_options', 10, 1 ); 4 add_action( 'woocommerce_after_register_post_type', 'delyvax_webhook_order_created'); 4 5 add_action( 'woocommerce_after_register_post_type', 'delyvax_webhook_get_tracking'); 5 6 … … 64 65 65 66 $valid_url = get_site_url()."/?delyvax=webhook"; 66 $needed_event = ['order_tracking.update' ];67 $needed_event = ['order_tracking.update','order.created']; 67 68 68 69 try { … … 84 85 85 86 } 87 } 88 89 90 function delyvax_webhook_order_created() 91 { 92 $raw = file_get_contents('php://input'); 93 // var_dump($raw); 94 // throw new Exception(); 95 96 if($raw) 97 { 98 $json = json_decode($raw, true); 99 100 if( isset($json) ) 101 { 102 $data = $json; 103 $settings = get_option( 'woocommerce_delyvax_settings'); 104 105 if( isset($data['id']) && isset($data['consignmentNo']) && isset($data['statusCode']) 106 && intval($settings['customer_id']) === intval($data['customerId']) ) 107 { 108 if ($settings['api_webhook_enable'] == 'yes') 109 { 110 $shipmentId = $data['id']; 111 $consignmentNo = $data['consignmentNo']; 112 $statusCode = $data['statusCode']; 113 114 global $woocommerce; 115 116 ///find order_id by $shipmentId 117 $orders = wc_get_orders( array( 118 // 'limit' => -1, // Query all orders 119 // 'orderby' => 'date', 120 // 'order' => 'DESC', 121 'meta_key' => 'DelyvaXOrderID', // The postmeta key field 122 'meta_value' => $shipmentId, // The comparison argument 123 )); 124 125 for($i=0; $i < sizeof($orders); $i++) 126 { 127 $order = wc_get_order($orders[$i]->get_id()); 128 129 $order->get_status(); 130 131 // $order->update_meta_data( 'DelyvaXOrderID', $shipmentId ); 132 $order->update_meta_data( 'DelyvaXTrackingCode', $consignmentNo ); 133 $order->save(); 134 135 if (!empty($order)) 136 { 137 //on the way to pick up 138 if( !$order->has_status('wc-ready-to-collect') ) 139 { 140 $order->update_status('ready-to-collect', 'Order status changed to Ready.', false); // order note is optional, if you want to add a note to order 141 // $order->update_status('courier-accepted'); 142 143 wp_update_post(['ID' => $order->get_id(), 'post_status' => 'wc-ready-to-collect']); 144 145 //start update sub orders 146 $sub_orders = get_children( array( 'post_parent' => $order->get_id(), 'post_type' => 'shop_order' ) ); 147 148 if ( $sub_orders ) { 149 foreach ($sub_orders as $sub) 150 { 151 $sub_order = wc_get_order($sub->ID); 152 $sub_order->update_status('ready-to-collect'); 153 wp_update_post(['ID' => $sub->ID, 'post_status' => 'wc-ready-to-collect']); 154 } 155 } 156 //end update sub orders 157 } 158 } 159 } 160 161 } 162 } 163 164 } 165 } 86 166 } 87 167 … … 134 214 $order->save(); 135 215 136 if($statusCode == 100 )216 if($statusCode == 100 || $statusCode == 110) 137 217 { 138 218 if (!empty($order)) -
delyvax/trunk/readme.txt
r2672618 r2691138 4 4 Requires at least: 5.4 5 5 Tested up to: 5.7 6 Stable tag: 1.1.2 66 Stable tag: 1.1.27 7 7 Requires PHP: 7.2 8 8 License: GPLv3 … … 33 33 == Changelog == 34 34 35 = 1.1.27 = 36 *Release Date - 8th March 2022* 37 38 * Change order status to Package is Ready after delivery order has been created. 39 35 40 = 1.1.26 = 36 41 *Release Date - 3rd February 2022*
Note: See TracChangeset
for help on using the changeset viewer.