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
← All changes | includes/Core/WorkFlow/Actions.php +26 -38 3.1.22.9.1 View file →
@@ -5,8 +5,10 @@
5 5 namespace BitCode\BitForm\Core\WorkFlow;
6 6
7 7 use BitCode\BitForm\Core\Integration\IntegrationHandler;
8 8 use BitCode\BitForm\Core\Messages\SuccessMessageHandler;
9 +use BitCode\BitForm\Core\Util\Log;
10 +use BitCode\BitForm\Core\Util\Utilities;
9 11
10 12 final class Actions
11 13 {
12 14 private static $_formID;
@@ -43,9 +45,9 @@
43 45 }
44 46
45 47 public function getActiveListIndex($actionDetail, $fieldData, $fields)
46 48 {
47 - $activeList = $this->getActionValue($actionDetail, $fieldData, $fields);
49 + $activeList = $this->getActionValue($actionDetail, $fieldData, $fields);
48 50 $optionsList = $fields->{$fieldData[$actionDetail->field]['key']}->optionsList;
49 51 $activeListIndex = 0;
50 52 foreach ($optionsList as $key => $optionObj) {
51 53 $valueArr = (array) $optionObj;
@@ -54,9 +56,9 @@
54 56 $activeListIndex = $key;
55 57 break;
56 58 }
57 59 }
58 -
60 +
59 61 return $activeListIndex;
60 62 }
61 63
62 64 public function show($fields, $fieldData, $actionDetail)
@@ -69,13 +71,12 @@
69 71
70 72 public function setFieldProperty($actions, $fieldData, $fields)
71 73 {
72 74 if (empty($actions)) {
73 - return [$fields, $fieldData];
75 + return $fields;
74 76 }
75 77 foreach ($actions as $actionDetail) {
76 - if (!empty($actionDetail->action) && !empty($actionDetail->field) && isset($fields->{$fieldData[$actionDetail->field]['key']}) && !empty($fields->{$fieldData[$actionDetail->field]['key']})) {
77 - $fk = $fieldData[$actionDetail->field]['key'];
78 + if (!empty($actionDetail->action) && !empty($actionDetail->field)) {
78 79 switch ($actionDetail->action) {
79 80 case 'value':
80 81 $data = $this->setValue($actionDetail, $fieldData, $fields);
81 82 $fields = $data[0];
@@ -81,56 +82,52 @@
81 82 $fields = $data[0];
82 83 $fieldData = $data[1];
83 84 break;
84 85 case 'hide':
85 - // $fields->{$fk}->valid->hide = true;
86 - Helper::setNestedProperty($fields, "{$fk}->valid->hide", true);
86 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->hide = true;
87 87 break;
88 88 case 'disable':
89 - $fields->{$fk}->valid->disabled = true;
89 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->disabled = true;
90 90 break;
91 91 case 'show':
92 92 $this->show($fields, $fieldData, $actionDetail);
93 93 break;
94 94 case 'enable':
95 - $fields->{$fk}->valid->disabled = false;
95 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->disabled = false;
96 96 break;
97 97 case 'readonly':
98 - $fields->{$fk}->valid->readonly = true;
98 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->readonly = true;
99 99 break;
100 100 case 'writeable':
101 - $fields->{$fk}->valid->readonly = false;
102 - break;
101 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->readonly = false;
102 + break;
103 103 case 'required':
104 - $fields->{$fk}->valid->required = true;
104 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->required = true;
105 105 break;
106 106 case 'limit':
107 - $fields->{$fk}->valid->limit = true;
107 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->limit = true;
108 108 break;
109 109 case 'min':
110 - $fields->{$fk}->valid->min = true;
110 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->min = true;
111 111 break;
112 112 case 'max':
113 - $fields->{$fk}->valid->max = true;
113 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->max = true;
114 114 break;
115 115 case 'activelist':
116 - $fields->{$fk}->config->activeList = $this->getActiveListIndex($actionDetail, $fieldData, $fields);
116 + $fields->{$fieldData[$actionDetail->field]['key']}->config->activeList = $this->getActiveListIndex($actionDetail, $fieldData, $fields);
117 117 break;
118 118 case 'lbl':
119 119 case 'ct':
120 - $fields->{$fk}->lbl = $this->getActionValue($actionDetail, $fieldData, $fields);
120 + $fields->{$fieldData[$actionDetail->field]['key']}->lbl = $this->getActionValue($actionDetail, $fieldData, $fields);
121 121 break;
122 122 case 'sub-titl':
123 - $fields->{$fk}->subtitle = $this->getActionValue($actionDetail, $fieldData, $fields);
123 + $fields->{$fieldData[$actionDetail->field]['key']}->subtitle = $this->getActionValue($actionDetail, $fieldData, $fields);
124 124 break;
125 125 case 'hlp-txt':
126 - $fields->{$fk}->helperTxt = $this->getActionValue($actionDetail, $fieldData, $fields);
126 + $fields->{$fieldData[$actionDetail->field]['key']}->helperTxt = $this->getActionValue($actionDetail, $fieldData, $fields);
127 127 break;
128 - case 'placeholder':
129 - $fields->{$fk}->ph = $this->getActionValue($actionDetail, $fieldData, $fields);
130 - break;
131 128 case 'title':
132 - $fields->{$fk}->title = $this->getActionValue($actionDetail, $fieldData, $fields);
129 + $fields->{$fieldData[$actionDetail->field]['key']}->title = $this->getActionValue($actionDetail, $fieldData, $fields);
133 130 break;
134 131 }
135 132 }
136 133 }
@@ -157,9 +154,9 @@
157 154 }
158 155 return $fieldValue;
159 156 }
160 157
161 - public function setOnFormSuccess($data, $actions, $fieldValue, $entryID)
158 + public function setOnFormSuccess($data, $actions, $fieldValue)
162 159 {
163 160 if (empty($actions)) {
164 161 return $data;
165 162 }
@@ -168,9 +165,9 @@
168 165 $id = $successActionDetail->details->id;
169 166 if (!empty($id)) {
170 167 switch ($successActionDetail->type) {
171 168 case 'successMsg':
172 - $data['workFlowReturnable'] = $this->confirmationMessage($data['workFlowReturnable'], $id, $fieldValue, $entryID);
169 + $data['workFlowReturnable'] = $this->confirmationMessage($data['workFlowReturnable'], $id, $fieldValue);
173 170 break;
174 171 case 'redirectPage':
175 172 $data['workFlowReturnable'] = $this->redirectPage($data['workFlowReturnable'], $id, $fieldValue);
176 173 break;
@@ -196,25 +193,16 @@
196 193 }
197 194 return $data;
198 195 }
199 196
200 - public function confirmationMessage($workFlowReturnable, $successActionDetailId, $fieldValue, $entryID = null)
197 + public function confirmationMessage($workFlowReturnable, $successActionDetailId, $fieldValue)
201 198 {
202 199 $id = json_decode($successActionDetailId)->id;
203 200 $messageHandler = new SuccessMessageHandler(static::$_formID);
204 201 $message = $messageHandler->getAMessage($id);
205 202 if (!is_wp_error($message) && !empty($message)) {
206 - $messageContent = $message[0]->message_content;
207 -
208 - // replace pdf link and password
209 - if (class_exists('\BitCode\BitFormPro\Admin\DownloadFile') && !empty($entryID)) {
210 - $downloadFile = new \BitCode\BitFormPro\Admin\DownloadFile();
211 - $messageContent = $downloadFile->replacePdfShortCodeToLink($messageContent, static::$_formID, $entryID);
212 - $messageContent = $downloadFile->replaceShortCodeToPdfPassword($messageContent, static::$_formID, $entryID);
213 - }
214 -
215 - $workFlowReturnable['message'] = Helper::replaceFieldWithValue($messageContent, $fieldValue, true, static::$_formID);
216 - if (!empty($workFlowReturnable['message'])) {
203 + $workFlowReturnable['message'] = Helper::replaceFieldWithValue($message[0]->message_content, $fieldValue);
204 + if (!empty($workFlowReturnable['message']) && Utilities::isPro()) {
217 205 $workFlowReturnable['message'] = do_shortcode($workFlowReturnable['message']);
218 206 }
219 207 $workFlowReturnable['msg_id'] = $message[0]->id;
220 208 $msgConfig = json_decode($message[0]->message_config);