Delivery setup
This commit is contained in:
@@ -12,4 +12,68 @@
|
||||
*/
|
||||
function wiaas_db_update_enable_product_by_user_role() {
|
||||
update_option('wcj_product_by_user_role_enabled', 'yes');
|
||||
}
|
||||
|
||||
function wiaas_db_update_setup_gravity() {
|
||||
// Gravity Form settings
|
||||
update_option('gform_pending_installation', false);
|
||||
update_option( 'gform_enable_background_updates', false );
|
||||
update_option('rg_gforms_enable_akismet', 0);
|
||||
update_option('rg_gforms_currency', 'USD');
|
||||
|
||||
// Gravity Flow settings
|
||||
update_option('gravityflow_pending_installation', false);
|
||||
}
|
||||
|
||||
function wiaas_db_update_add_delivery_process_forms() {
|
||||
$action_type_forms_files = array(
|
||||
'delivery_action_customer_acceptance_form',
|
||||
'delivery_action_schedule_meeting',
|
||||
'delivery_action_validate_questionnaire_form',
|
||||
'delivery_action_manual_form',
|
||||
);
|
||||
|
||||
// Since import action will generate form with new id, we need to remember this mapping
|
||||
// so we can update process delivery steps to point to correct form ids
|
||||
$action_type_forms_ids_mappings = array();
|
||||
|
||||
$process_forms_files = array(
|
||||
'delivery_process_normal_delivery_form'
|
||||
);
|
||||
|
||||
$created_forms = array();
|
||||
|
||||
// import forms for delivery action types
|
||||
foreach ($action_type_forms_files as $action_type_form_file) {
|
||||
$form_json = file_get_contents( dirname( __FILE__ ) . "/data/delivery-forms/" . $action_type_form_file . '.json' );
|
||||
|
||||
$form_meta = json_decode( $form_json, true );
|
||||
$form_meta = $form_meta[0];
|
||||
|
||||
$form_id = GFAPI::add_form($form_meta);
|
||||
|
||||
$created_forms[] = GFAPI::get_form($form_id);
|
||||
|
||||
$action_type_forms_ids_mappings[$form_meta['id']] = $form_id;
|
||||
}
|
||||
|
||||
// import forms for delivery process
|
||||
foreach ($process_forms_files as $process_form_file) {
|
||||
$form_json = file_get_contents( dirname( __FILE__ ) . "/data/delivery-forms/" . $process_form_file . '.json' );
|
||||
|
||||
$form_meta = json_decode( $form_json, true );
|
||||
$form_meta = $form_meta[0];
|
||||
|
||||
// update delivery steps forms ids with correct values
|
||||
foreach ($form_meta['feeds']['gravityflow'] as $key => $process_step_meta) {
|
||||
$process_step_target_form_id = $form_meta['feeds']['gravityflow'][$key]['meta']['target_form_id'];
|
||||
$form_meta['feeds']['gravityflow'][$key]['meta']['target_form_id'] = $action_type_forms_ids_mappings[$process_step_target_form_id];
|
||||
}
|
||||
|
||||
$form_id = GFAPI::add_form($form_meta);
|
||||
|
||||
$created_forms[] = GFAPI::get_form($form_id);
|
||||
}
|
||||
|
||||
do_action('gform_forms_post_import', $created_forms);
|
||||
}
|
||||
Reference in New Issue
Block a user