Files
old-new-wiaas/backend/app/plugins/wiaas/includes/admin/delivery-process/class-wiaas-admin-delivery-process-flow.php
2018-11-03 07:35:39 +01:00

74 lines
2.4 KiB
PHP

<?php
class Wiaas_Admin_Order_Process_Flow {
public static function init() {
add_action('woocommerce_admin_order_data_after_order_details', array(__CLASS__, 'add_custom_fields_after_order_details'), 10, 1 );
add_action('add_meta_boxes', array(__CLASS__, 'create_process_flow_meta_box'), 100);
add_action('gravityflow_entry_detail', array(__CLASS__, 'add_delivery_dates_box'), 11, 3);
}
public static function create_process_flow_meta_box(){
add_meta_box(
'order_process_flow_meta_box',
__('Order Process Flow', 'cmb'),
'Wiaas_Admin_Order_Process_Flow::add_process_flow_meta_box',
'shop_order',
'normal',
'high'
);
}
public static function add_delivery_dates_box($form, $entry, $current_step){
$order_id = $entry['wiaas_delivery_order_id'];
$suppliers = Wiaas_Order::get_suppliers($order_id);
$final_estimated_date = Wiaas_Order::get_final_estimated_date($order_id);
$final_confirmed_date = Wiaas_Order::get_final_confirmed_date($order_id);
$earliest_installation_date = Wiaas_Order::get_earliest_installation_date($order_id);
require 'views/html-order-delivery-dates.php';
}
public static function add_process_flow_meta_box(){
global $post;
$order_id = $post->ID;
$process = Wiaas_Delivery_Process::get_order_delivery_process($order_id);
if ($process === NULL){
$list_of_delivery_processes = Wiaas_Delivery_Process::get_available_delivery_processes();
echo '<div>
<h1>Please select a process for the order:</h1>
<br/>
<select id="delivery-process-selector">
<option value="" disabled selected>Select ... </option>';
foreach($list_of_delivery_processes as $index => $process){
echo '<option value=' . $process['id'] . '>' . $process['title'] . '</option>';
}
echo '</select>
</div>';
wp_nonce_field( 'wiaas_create_order_delivery_process', 'wiaas_create_order_delivery_process_nonce' );
echo '<input type="hidden" id="wiaas_order_id" name="wiaas_order_id" value="' . $order_id . '"/>';
}else{
$workflow_url = "";
echo '<div>
<a href=' . $workflow_url . '>Go to process flow</a>
</div>';
}
}
public static function add_custom_fields_after_order_details($order){
$global_estimated_delivery_date = Wiaas_Order::get_global_estimated_date($order->id);
$order_id = $order->id;
require 'views/html-order-global-delivery-date.php';
}
}
Wiaas_Admin_Order_Process_Flow::init();