| @@ -1,12 +1,12 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | /** |
| 3 | 3 | * @package FireBox |
| 4 | - * @version 3.1.13 Free | |
| 4 | + * @version 2.1.23 Free | |
| 5 | 5 | * |
| 6 | 6 | * @author FirePlugins <info@fireplugins.com> |
| 7 | 7 | * @link https://www.fireplugins.com |
| 8 | - * @copyright Copyright © 2026 FirePlugins All Rights Reserved | |
| 8 | + * @copyright Copyright © 2024 FirePlugins All Rights Reserved | |
| 9 | 9 | * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later |
| 10 | 10 | */ |
| 11 | 11 | |
| 12 | 12 | namespace FireBox\Core\Controllers; |
| @@ -149,17 +149,13 @@ | ||
| 149 | 149 | { |
| 150 | 150 | return; |
| 151 | 151 | } |
| 152 | 152 | |
| 153 | - // Sanitize | |
| 154 | - $submission_id = absint($data['submission_id']); | |
| 155 | - $form_id = sanitize_key($data['form_id']); | |
| 156 | - | |
| 157 | 153 | // Ensure a submission record with given Submission ID and Form ID exist |
| 158 | 154 | $payload = [ |
| 159 | 155 | 'where' => [ |
| 160 | - 'id' => ' = ' . $submission_id, | |
| 161 | - 'form_id' => ' = "' . $form_id . '"' | |
| 156 | + 'id' => ' = ' . esc_sql($data['submission_id']), | |
| 157 | + 'form_id' => ' = "' . esc_sql($data['form_id']) . '"' | |
| 162 | 158 | ] |
| 163 | 159 | ]; |
| 164 | 160 | if (!firebox()->tables->submission->getResults($payload, true, true)) |
| 165 | 161 | { |
| @@ -166,9 +162,9 @@ | ||
| 166 | 162 | return; |
| 167 | 163 | } |
| 168 | 164 | |
| 169 | 165 | // Get Form |
| 170 | - if (!$form = Form::getFormByID($form_id)) | |
| 166 | + if (!$form = Form::getFormByID($data['form_id'])) | |
| 171 | 167 | { |
| 172 | 168 | return; |
| 173 | 169 | } |
| 174 | 170 | |
| @@ -173,9 +169,9 @@ | ||
| 173 | 169 | } |
| 174 | 170 | |
| 175 | 171 | $controller_settings = $data[self::settings_name]; |
| 176 | 172 | $form_fields = $form['fields']; |
| 177 | - $fields_values = is_array($data['fb_form']) ? $data['fb_form'] : []; | |
| 173 | + $fields_values = $data['fb_form']; | |
| 178 | 174 | $submission_state = isset($controller_settings['submission_state']) ? $controller_settings['submission_state'] : 'published'; |
| 179 | 175 | |
| 180 | 176 | // Make the form fields not required |
| 181 | 177 | foreach ($form_fields as $key => $field) |
| @@ -202,15 +198,15 @@ | ||
| 202 | 198 | 'modified_at' => gmdate('Y-m-d H:i:s'), |
| 203 | 199 | 'state' => $submission_state === 'published' ? 1 : 0 |
| 204 | 200 | ]; |
| 205 | 201 | $where = [ |
| 206 | - 'id' => $submission_id, | |
| 207 | - 'form_id' => $form_id | |
| 202 | + 'id' => $data['submission_id'], | |
| 203 | + 'form_id' => $data['form_id'] | |
| 208 | 204 | ]; |
| 209 | 205 | firebox()->tables->submission->update($replace, $where); |
| 210 | 206 | |
| 211 | 207 | // Update submission meta for each field |
| 212 | - foreach ((is_array($valid) ? $valid : []) as $key => $field) | |
| 208 | + foreach ($valid as $key => $field) | |
| 213 | 209 | { |
| 214 | 210 | $field_name = $field->getOptionValue('name'); |
| 215 | 211 | $meta_value = isset($fields_values[$field_name]) ? $fields_values[$field_name] : ''; |
| 216 | 212 | |
| @@ -223,9 +219,9 @@ | ||
| 223 | 219 | 'meta_value' => $meta_value, |
| 224 | 220 | 'modified_at' => gmdate('Y-m-d H:i:s') |
| 225 | 221 | ]; |
| 226 | 222 | $where = [ |
| 227 | - 'submission_id' => $submission_id, | |
| 223 | + 'submission_id' => $data['submission_id'], | |
| 228 | 224 | 'meta_key' => $field->getOptionValue('id') |
| 229 | 225 | ]; |
| 230 | 226 | |
| 231 | 227 | $updated = firebox()->tables->submissionmeta->update($replace, $where); |