PluginProbe
Fluent Support – Helpdesk & Customer Support Ticket System / 2.2.0
Fluent Support – Helpdesk & Customer Support Ticket System v2.2.0
2.3.2 2.3.1 2.3.0 2.2.1 2.2.0 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.10.5 1.4.0 1.4.1 1.4.2 1.4.5 1.4.6 1.4.7 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 All 67 releases
fluent-support / app / Http / Controllers / IntegrationController.php

IntegrationController.php in Fluent Support – Helpdesk & Customer Support Ticket System 2.2.0, at app/Http/Controllers/IntegrationController.php

54 lines 1.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FluentSupport\App\Http\Controllers;
4
5 use FluentSupport\App\Modules\IntegrationSettingsModule;
6 use FluentSupport\Framework\Http\Request\Request;
7
8 class IntegrationController extends Controller
9 {
10 /**
11 * getSettings method will fetch the list of integration settings by integration key
12 * @param Request $request
13 * @return false
14 */
15 public function getSettings(Request $request)
16 {
17 $settingsKey = $request->getSafe('integration_key', 'sanitize_text_field');
18 return IntegrationSettingsModule::getSettings($settingsKey, true);
19 }
20
21 /**
22 * saveSettings method will save the integration settings by integration key
23 * @param Request $request
24 * @return array
25 */
26 public function saveSettings(Request $request)
27 {
28 $settingsKey = $request->getSafe('integration_key', 'sanitize_text_field');
29
30 $settings = $request->get('settings', []);
31
32 foreach ($settings as $key => $value) {
33 $settings[$key] = is_array($value) ? map_deep($value, 'sanitize_text_field') : sanitize_text_field($value);
34 }
35
36 $settings = wp_unslash($settings);
37
38 $settings = IntegrationSettingsModule::saveSettings($settingsKey, $settings);
39
40 if(!$settings || is_wp_error($settings)) {
41 $errorMessage = (is_wp_error($settings)) ? $settings->get_error_message() : __('Settings failed to save', 'fluent-support');
42 return $this->sendError([
43 'message' => $errorMessage
44 ]);
45 }
46
47
48 return [
49 'message' => __('Settings has been updated', 'fluent-support'),
50 'settings' => $settings
51 ];
52 }
53 }
54