| @@ -2,30 +2,46 @@ | ||
| 2 | 2 | |
| 3 | 3 | namespace FluentSupport\App\Http\Controllers; |
| 4 | 4 | |
| 5 | 5 | use FluentSupport\App\Modules\IntegrationSettingsModule; |
| 6 | -use FluentSupport\Framework\Request\Request; | |
| 6 | +use FluentSupport\Framework\Http\Request\Request; | |
| 7 | 7 | |
| 8 | +/** | |
| 9 | + * SlackController class is responsible for getting and save Slack settings | |
| 10 | + * @package FluentSupport\App\Http\Controllers | |
| 11 | + * | |
| 12 | + * @version 1.0.0 | |
| 13 | + */ | |
| 8 | 14 | class SlackController extends Controller |
| 9 | 15 | { |
| 16 | + /** | |
| 17 | + * getSettings method will generate data for Slack settings | |
| 18 | + * @param Request $request | |
| 19 | + * @return false | |
| 20 | + */ | |
| 10 | 21 | public function getSettings(Request $request) |
| 11 | 22 | { |
| 12 | - $settingsKey = $request->get('integration_key'); | |
| 23 | + $settingsKey = $request->getSafe('integration_key', 'sanitize_text_field'); | |
| 13 | 24 | |
| 14 | 25 | return IntegrationSettingsModule::getSettings($settingsKey, true); |
| 15 | 26 | } |
| 16 | 27 | |
| 28 | + /** | |
| 29 | + * saveSettings method will save settings data for Slack | |
| 30 | + * @param Request $request | |
| 31 | + * @return array | |
| 32 | + */ | |
| 17 | 33 | public function saveSettings(Request $request) |
| 18 | 34 | { |
| 19 | - $settingsKey = $request->get('integration_key'); | |
| 20 | - $settings = wp_unslash($request->get('settings')); | |
| 21 | - | |
| 35 | + $settingsKey = $request->getSafe('integration_key' , 'sanitize_text_field'); | |
| 36 | + $settings = wp_unslash($request->get('settings', null)); | |
| 37 | + $settings = is_array($settings) ? map_deep($settings, 'sanitize_text_field') : []; | |
| 22 | 38 | $settings = IntegrationSettingsModule::saveSettings($settingsKey, $settings); |
| 23 | 39 | |
| 24 | 40 | if(!$settings || is_wp_error($settings)) { |
| 25 | - $errorMessage = (is_wp_error($settings)) ? $settings->get_error_message() : 'Settings failed to save'; | |
| 41 | + $errorMessage = (is_wp_error($settings)) ? $settings->get_error_message() : __('Settings failed to save', 'fluent-support'); | |
| 26 | 42 | return $this->sendError([ |
| 27 | - 'message' => __($errorMessage, 'fluent-support') | |
| 43 | + 'message' => $errorMessage | |
| 28 | 44 | ]); |
| 29 | 45 | } |
| 30 | 46 | |
| 31 | 47 | return [ |