PluginProbe
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder / 2.15.3
Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator & Custom Form Builder v2.15.3
3.3.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 All 138 releases
← All changes | includes/Core/WorkFlow/Actions.php +21 -31 3.1.12.15.3 View file →
@@ -5,8 +5,9 @@
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\Utilities;
9 10
10 11 final class Actions
11 12 {
12 13 private static $_formID;
@@ -73,9 +74,8 @@
73 74 return [$fields, $fieldData];
74 75 }
75 76 foreach ($actions as $actionDetail) {
76 77 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 78 switch ($actionDetail->action) {
79 79 case 'value':
80 80 $data = $this->setValue($actionDetail, $fieldData, $fields);
81 81 $fields = $data[0];
@@ -81,56 +81,55 @@
81 81 $fields = $data[0];
82 82 $fieldData = $data[1];
83 83 break;
84 84 case 'hide':
85 - // $fields->{$fk}->valid->hide = true;
86 - Helper::setNestedProperty($fields, "{$fk}->valid->hide", true);
85 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->hide = true;
87 86 break;
88 87 case 'disable':
89 - $fields->{$fk}->valid->disabled = true;
88 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->disabled = true;
90 89 break;
91 90 case 'show':
92 91 $this->show($fields, $fieldData, $actionDetail);
93 92 break;
94 93 case 'enable':
95 - $fields->{$fk}->valid->disabled = false;
94 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->disabled = false;
96 95 break;
97 96 case 'readonly':
98 - $fields->{$fk}->valid->readonly = true;
97 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->readonly = true;
99 98 break;
100 99 case 'writeable':
101 - $fields->{$fk}->valid->readonly = false;
100 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->readonly = false;
102 101 break;
103 102 case 'required':
104 - $fields->{$fk}->valid->required = true;
103 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->required = true;
105 104 break;
106 105 case 'limit':
107 - $fields->{$fk}->valid->limit = true;
106 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->limit = true;
108 107 break;
109 108 case 'min':
110 - $fields->{$fk}->valid->min = true;
109 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->min = true;
111 110 break;
112 111 case 'max':
113 - $fields->{$fk}->valid->max = true;
112 + $fields->{$fieldData[$actionDetail->field]['key']}->valid->max = true;
114 113 break;
115 114 case 'activelist':
116 - $fields->{$fk}->config->activeList = $this->getActiveListIndex($actionDetail, $fieldData, $fields);
115 + $fields->{$fieldData[$actionDetail->field]['key']}->config->activeList = $this->getActiveListIndex($actionDetail, $fieldData, $fields);
117 116 break;
118 117 case 'lbl':
119 118 case 'ct':
120 - $fields->{$fk}->lbl = $this->getActionValue($actionDetail, $fieldData, $fields);
119 + $fields->{$fieldData[$actionDetail->field]['key']}->lbl = $this->getActionValue($actionDetail, $fieldData, $fields);
121 120 break;
122 121 case 'sub-titl':
123 - $fields->{$fk}->subtitle = $this->getActionValue($actionDetail, $fieldData, $fields);
122 + $fields->{$fieldData[$actionDetail->field]['key']}->subtitle = $this->getActionValue($actionDetail, $fieldData, $fields);
124 123 break;
125 124 case 'hlp-txt':
126 - $fields->{$fk}->helperTxt = $this->getActionValue($actionDetail, $fieldData, $fields);
125 + $fields->{$fieldData[$actionDetail->field]['key']}->helperTxt = $this->getActionValue($actionDetail, $fieldData, $fields);
127 126 break;
128 127 case 'placeholder':
129 - $fields->{$fk}->ph = $this->getActionValue($actionDetail, $fieldData, $fields);
128 + $fields->{$fieldData[$actionDetail->field]['key']}->ph = $this->getActionValue($actionDetail, $fieldData, $fields);
130 129 break;
131 130 case 'title':
132 - $fields->{$fk}->title = $this->getActionValue($actionDetail, $fieldData, $fields);
131 + $fields->{$fieldData[$actionDetail->field]['key']}->title = $this->getActionValue($actionDetail, $fieldData, $fields);
133 132 break;
134 133 }
135 134 }
136 135 }
@@ -157,9 +156,9 @@
157 156 }
158 157 return $fieldValue;
159 158 }
160 159
161 - public function setOnFormSuccess($data, $actions, $fieldValue, $entryID)
160 + public function setOnFormSuccess($data, $actions, $fieldValue)
162 161 {
163 162 if (empty($actions)) {
164 163 return $data;
165 164 }
@@ -168,9 +167,9 @@
168 167 $id = $successActionDetail->details->id;
169 168 if (!empty($id)) {
170 169 switch ($successActionDetail->type) {
171 170 case 'successMsg':
172 - $data['workFlowReturnable'] = $this->confirmationMessage($data['workFlowReturnable'], $id, $fieldValue, $entryID);
171 + $data['workFlowReturnable'] = $this->confirmationMessage($data['workFlowReturnable'], $id, $fieldValue);
173 172 break;
174 173 case 'redirectPage':
175 174 $data['workFlowReturnable'] = $this->redirectPage($data['workFlowReturnable'], $id, $fieldValue);
176 175 break;
@@ -196,25 +195,16 @@
196 195 }
197 196 return $data;
198 197 }
199 198
200 - public function confirmationMessage($workFlowReturnable, $successActionDetailId, $fieldValue, $entryID = null)
199 + public function confirmationMessage($workFlowReturnable, $successActionDetailId, $fieldValue)
201 200 {
202 201 $id = json_decode($successActionDetailId)->id;
203 202 $messageHandler = new SuccessMessageHandler(static::$_formID);
204 203 $message = $messageHandler->getAMessage($id);
205 204 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'])) {
205 + $workFlowReturnable['message'] = Helper::replaceFieldWithValue($message[0]->message_content, $fieldValue);
206 + if (!empty($workFlowReturnable['message']) && Utilities::isPro()) {
217 207 $workFlowReturnable['message'] = do_shortcode($workFlowReturnable['message']);
218 208 }
219 209 $workFlowReturnable['msg_id'] = $message[0]->id;
220 210 $msgConfig = json_decode($message[0]->message_config);