PluginProbe
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder / 2.9.1
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder v2.9.1
V-3.3.0 3.2.2 3.2.1 3.2.0 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 V3.0.3 V3.0.2 -3.0.1 V_3.0.0 1.1.1 1.1.8 1.2 1.3 1.4 1.4.18 1.5.2 1.9 2.0 2.10.0 2.10.1 2.10.2 All 137 releases
bit-form / includes / Core / Migration / WorkFlows.php

WorkFlows.php in Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder 2.9.1, at includes/Core/Migration/WorkFlows.php

68 lines 2.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace BitCode\BitForm\Core\Migration;
4
5 class WorkFlows
6 {
7 public static function migrate($workFlowsData)
8 {
9 $migrateWorkFlows = [];
10 foreach ($workFlowsData as $workflow) {
11 $migrateWorkFlows[] = self::updateWorkflow($workflow);
12 }
13 return $migrateWorkFlows;
14 }
15
16 public static function updateWorkflow($workflow)
17 {
18 $workflow = (object) $workflow;
19 $flow = [
20 'id' => $workflow->id,
21 'title' => $workflow->title,
22 'action_type' => $workflow->action_type,
23 'action_behaviour' => $workflow->action_behaviour,
24 'action_run' => $workflow->action_run,
25 ];
26 $flowProps = [];
27
28 if ('cond' === $workflow->action_behaviour) {
29 $flowProps['cond_type'] = 'if';
30 $flowProps['logics'] = $workflow->logics;
31 if ('onvalidate' === $workflow->action_type) {
32 // $flowProps['actions']['fields'] = $workflow->actions;
33 $flowProps['actions']['failure'] = $workflow->validateMsg;
34 }
35
36 if ('oninput' === $workflow->action_type) {
37 $flowProps['actions']['fields'] = $workflow->actions;
38 // $flowProps['actions']['success'] = $workflow->successAction;
39 $flowProps['actions']['success'] = [];
40 }
41
42 if ('onload' === $workflow->action_type) {
43 $flowProps['actions']['fields'] = $workflow->actions;
44 // $flowProps['actions']['success'] = $workflow->successAction;
45 }
46 if ('onsubmit' === $workflow->action_type) {
47 $flowProps['actions']['fields'] = $workflow->actions;
48 $flowProps['actions']['success'] = $workflow->successAction;
49 // integration, webhook,
50 }
51 } else {
52 if ('onload' === $workflow->action_type) {
53 $flowProps['cond_type'] = 'always';
54 $flowProps['actions']['fields'] = $workflow->actions;
55 // $flowProps['actions']['success'] = $workflow->successAction;
56 }
57 if ('onsubmit' === $workflow->action_type) {
58 $flowProps['actions']['fields'] = $workflow->actions;
59 $flowProps['actions']['success'] = $workflow->successAction;
60 }
61 }
62
63 $flow['conditions'][] = (object) $flowProps;
64
65 return (object) $flow;
66 }
67 }
68