66use App \Controller \Core \Application ;
77use App \Controller \Core \Controllers ;
88use App \DTO \Settings \Dashboard \Widget \SettingsWidgetVisibilityDTO ;
9- use App \DTO \Settings \Lock \Subsettings \SettingsModuleLockDTO ;
109use Exception ;
1110use Symfony \Bundle \FrameworkBundle \Controller \AbstractController ;
1211use Symfony \Component \HttpFoundation \Request ;
@@ -27,22 +26,17 @@ class SettingsDashboardAction extends AbstractController {
2726 */
2827 private Controllers $ controllers ;
2928
30- /**
31- * @var SettingsViewAction $settingsViewAction
32- */
33- private SettingsViewAction $ settingsViewAction ;
34-
35- public function __construct (Controllers $ controllers , Application $ app , SettingsViewAction $ settingsViewAction ) {
36- $ this ->app = $ app ;
37- $ this ->controllers = $ controllers ;
38- $ this ->settingsViewAction = $ settingsViewAction ;
29+ public function __construct (Controllers $ controllers , Application $ app ) {
30+ $ this ->app = $ app ;
31+ $ this ->controllers = $ controllers ;
3932 }
4033
4134 /**
4235 * Handles updating settings of dashboard - widgets visibility
4336 * In this case it's not single row update but entire setting string
4437 * So the data passed in is not single row but all rows in table
4538 * It's important to understand that import is done for whole setting name record
39+ *
4640 * @Route("/api/settings-dashboard/update-widgets-visibility", name="settings_dashboard_update_widgets_visibility", methods="POST")
4741 * @param Request $request
4842 * @return Response
@@ -85,62 +79,8 @@ public function updateWidgetsVisibility(Request $request): Response
8579 }
8680
8781 $ this ->app ->settings ->settingsSaver ->saveSettingsForDashboardWidgetsVisibility ($ widgetsVisibilitiesSettingsDtos );
88- $ templateContent = $ this ->settingsViewAction ->renderSettingsTemplate ()->getContent ();
89-
90- return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_OK , "" , $ templateContent );
91- }
92-
93- /**
94- * Handles updating settings of module - lock
95- * In this case it's not single row update but entire setting string
96- * So the data passed in is not single row but all rows in table
97- * It's important to understand that import is done for whole setting name record
98- *
99- * @Route("/api/settings-module/update-lock", name="settings_module_update_module_lock", methods="POST")
100- * @param Request $request
101- * @return Response
102- * @throws Exception
103- */
104- public function updateModuleLock (Request $ request ): Response
105- {
106-
107- if (!$ request ->request ->has (self ::KEY_ALL_ROWS_DATA )) {
108- $ message = $ this ->app ->translator ->translate ('responses.general.missingRequiredParameter ' ) . self ::KEY_ALL_ROWS_DATA ;
109- $ this ->app ->logger ->warning ($ message );
110- return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_BAD_REQUEST , $ message );
111- }
112-
113- $ allRowsData = $ request ->request ->get (self ::KEY_ALL_ROWS_DATA );
114- $ settingsModuleLockDtos = [];
115-
116- foreach ($ allRowsData as $ rowData ){
117-
118- if ( !array_key_exists (SettingsModuleLockDTO::KEY_IS_LOCKED , $ rowData )){
119- $ message = $ this ->app ->translator ->translate ('responses.general.arrayInResponseIsMissingParameterNamed ' ) . SettingsModuleLockDTO::KEY_IS_LOCKED ;
120- $ this ->app ->logger ->warning ($ message );
121- return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_BAD_REQUEST , $ message );
122- }
123-
124- if ( !array_key_exists (SettingsModuleLockDTO::KEY_NAME , $ rowData )){
125- $ message = $ this ->app ->translator ->translate ('responses.general.arrayInResponseIsMissingParameterNamed ' ) . SettingsModuleLockDTO::KEY_NAME ;
126- $ this ->app ->logger ->warning ($ message );
127- return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_BAD_REQUEST , $ message );
128- }
129-
130- $ isLocked = filter_var ($ rowData [SettingsModuleLockDTO::KEY_IS_LOCKED ], FILTER_VALIDATE_BOOLEAN );;
131- $ name = trim ($ rowData [SettingsModuleLockDTO::KEY_NAME ]);
132-
133- $ settingsModuleLockDto = new SettingsModuleLockDTO ();
134- $ settingsModuleLockDto ->setName ($ name );
135- $ settingsModuleLockDto ->setLocked ($ isLocked );
136-
137- $ settingsModuleLockDtos [] = $ settingsModuleLockDto ;
138- }
139-
140- $ this ->app ->settings ->settingsSaver ->saveSettingsForModulesLock ($ settingsModuleLockDtos );
141- $ templateContent = $ this ->settingsViewAction ->renderSettingsTemplate ()->getContent ();
14282
143- return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_OK , "" , $ templateContent );
83+ return AjaxResponse::buildJsonResponseForAjaxCall (Response::HTTP_OK , "" , "" );
14484 }
14585
14686}
0 commit comments