/** * Instantiates the MDS Collivery class */ function init_mds_collivery() { $this->collivery_service = MdsColliveryService::getInstance($this->settings); $this->collivery = $this->collivery_service->returnColliveryClass(); $this->converter = $this->collivery_service->returnConverterClass(); $this->cache = $this->collivery_service->returnCacheClass(); }
function generate_suburbs() { // Here so we can auto select the clients state if (WC()->session->get_customer_id() > 0 && $_POST['type']) { global $wpdb; $table_name = $wpdb->prefix . 'usermeta'; $config = $wpdb->get_results("SELECT * FROM `" . $table_name . "` WHERE user_id=" . WC()->session->get_customer_id() . " and meta_key='" . $_POST['type'] . "city';", OBJECT); $selected_suburb = $config[0]->meta_value; } if (isset($_POST['town']) && $_POST['town'] != '') { /** @var \MdsSupportingClasses\MdsColliveryService $mds */ $mds = MdsColliveryService::getInstance(); $collivery = $mds->returnColliveryClass(); $town_id = array_search($_POST['town'], $collivery->getTowns()); $fields = $collivery->getSuburbs($town_id); if (!empty($fields)) { if (count($fields) == 1) { foreach ($fields as $value) { echo '<option value="' . $value . '">' . $value . '</option>'; } } else { if (isset($selected_suburb)) { foreach ($fields as $value) { if ($value != $selected_suburb) { echo '<option value="' . $value . '">' . $value . '</option>'; } else { echo '<option value="' . $value . '" selected="selected">' . $value . '</option>'; } } } else { echo "<option value=\"\" selected=\"selected\">Select Suburb</option>"; foreach ($fields as $value) { echo '<option value="' . $value . '">' . $value . '</option>'; } } } } else { echo '<option value="">Error retrieving data from server. Please try again later...</option>'; } } else { echo '<option value="">First Select Town...</option>'; } die; }
/** * Order actions process MDS Shipping */ function mds_register_collivery() { $order = new WC_Order($_GET['post_id']); $order_id = $_GET['post_id']; $custom_fields = $order->order_custom_fields; /** @var \MdsSupportingClasses\MdsColliveryService $mds */ $mds = MdsColliveryService::getInstance(); $collivery = $mds->returnColliveryClass(); $settings = $mds->returnPluginSettings(); $parcels = $mds->getOrderContent($order->get_items()); $defaults = $mds->returnDefaultAddress(); $addresses = $collivery->getAddresses(); $instructions = "Order number: " . $order_id; if (isset($settings['include_product_titles']) && $settings['include_product_titles'] == "yes") { $count = 1; $instructions .= ': '; foreach ($parcels as $parcel) { if (isset($parcel['description'])) { $ending = $count == count($parcels) ? '' : ', '; $instructions .= $parcel['quantity'] . ' X ' . $parcel['description'] . $ending; $count++; } } } include 'Views/order.php'; // Include our admin page }
/** * Automatically send MDS Collivery the delivery request when status changes to processing for cod, eft's and cheque * * @param $order_id * @return string */ function automated_add_collivery_status_processing($order_id) { /** @var \MdsSupportingClasses\MdsColliveryService $mds */ $mds = MdsColliveryService::getInstance(); $settings = $mds->returnPluginSettings(); if ($settings['enabled'] == 'yes' && $settings["toggle_automatic_mds_processing"] == 'yes') { $order = new WC_Order($order_id); if ($order->payment_method === "cod" || $order->payment_method === "cheque" || $order->payment_method === "bacs") { $mds->automatedAddCollivery($order_id, true); } } }