order delivery process
This commit is contained in:
@@ -19,8 +19,6 @@ class Wiaas_Delivery_Process {
|
||||
}
|
||||
|
||||
private static function _init_hooks() {
|
||||
add_action('woocommerce_new_order', array( __CLASS__, 'create_delivery_process_for_order' ));
|
||||
|
||||
add_filter( 'gform_entry_meta', array(__CLASS__, 'extend_gravity_form_entry_meta'), 10, 2 );
|
||||
add_action( 'gravityflow_workflow_complete', array(__CLASS__, 'maybe_complete_parent_process_step'), 5, 3 );
|
||||
|
||||
@@ -80,7 +78,25 @@ class Wiaas_Delivery_Process {
|
||||
$order = wc_get_order($order_id);
|
||||
$order->update_status('completed', 'Completed order delivery process.', true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* List available delivery processes
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public static function get_available_delivery_processes(){
|
||||
$forms = GFFormsModel::search_forms( self::$process_form_title_prefix, true );
|
||||
$result = array();
|
||||
foreach($forms as $form){
|
||||
$result[] = array(
|
||||
'title' => str_replace(self::$process_form_title_prefix, '', $form->title),
|
||||
'id' => $form->id
|
||||
);
|
||||
}
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieves delivery process instance for order
|
||||
@@ -92,7 +108,7 @@ class Wiaas_Delivery_Process {
|
||||
public static function get_order_delivery_process($order_id) {
|
||||
|
||||
$process_entry_id = get_post_meta($order_id, 'wiaas_delivery_process_entry_id');
|
||||
if (!isset($process_entry_id)) {
|
||||
if (empty($process_entry_id)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -132,13 +148,13 @@ class Wiaas_Delivery_Process {
|
||||
}
|
||||
|
||||
/**
|
||||
* Automatically create delivery process instance when order is created
|
||||
* create delivery process instance
|
||||
* @param $order_id
|
||||
*/
|
||||
public static function create_delivery_process_for_order($order_id) {
|
||||
public static function create_delivery_process_for_order($order_id, $form_id) {
|
||||
$process_form = null;
|
||||
$forms = GFFormsModel::search_forms( self::$process_form_title_prefix, true );
|
||||
$process_form = $forms[0];
|
||||
$process_form = GFFormsModel::get_form($form_id);
|
||||
if(isset($process_form)) {
|
||||
$order = wc_get_order( $order_id );
|
||||
$new_process_entry = array(
|
||||
@@ -150,7 +166,10 @@ class Wiaas_Delivery_Process {
|
||||
|
||||
add_post_meta($order_id, 'wiaas_delivery_process_id', $process_form->id);
|
||||
add_post_meta($order_id, 'wiaas_delivery_process_entry_id', $process_entry_id);
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user