@@ -211,16 +211,19 @@ public function reset_statistics(): void
211
211
public function save_settings (): void
212
212
{
213
213
check_admin_referer ('koko_analytics_save_settings ' );
214
- $ new_settings = $ _POST ['koko_analytics_settings ' ];
214
+ $ posted = $ _POST ['koko_analytics_settings ' ];
215
215
$ settings = get_settings ();
216
- $ settings ['exclude_ip_addresses ' ] = array_filter (array_map ('trim ' , explode (PHP_EOL , str_replace (', ' , PHP_EOL , strip_tags ($ new_settings ['exclude_ip_addresses ' ])))), function ($ value ) {
216
+
217
+ $ settings ['exclude_ip_addresses ' ] = array_filter (array_map ('trim ' , explode (PHP_EOL , str_replace (', ' , PHP_EOL , strip_tags ($ posted ['exclude_ip_addresses ' ])))), function ($ value ) {
217
218
return $ value !== '' ;
218
219
});
219
- $ settings ['exclude_user_roles ' ] = $ new_settings ['exclude_user_roles ' ] ?? array ();
220
- $ settings ['prune_data_after_months ' ] = abs ((int ) $ new_settings ['prune_data_after_months ' ]);
221
- $ settings ['use_cookie ' ] = (int ) $ new_settings ['use_cookie ' ];
222
- $ settings ['is_dashboard_public ' ] = (int ) $ new_settings ['is_dashboard_public ' ];
223
- $ settings ['default_view ' ] = trim ($ new_settings ['default_view ' ]);
220
+ $ settings ['exclude_user_roles ' ] = $ posted ['exclude_user_roles ' ] ?? array ();
221
+ $ settings ['prune_data_after_months ' ] = abs ((int ) $ posted ['prune_data_after_months ' ]);
222
+ $ settings ['use_cookie ' ] = (int ) $ posted ['use_cookie ' ];
223
+ $ settings ['is_dashboard_public ' ] = (int ) $ posted ['is_dashboard_public ' ];
224
+ $ settings ['default_view ' ] = trim ($ posted ['default_view ' ]);
225
+
226
+ $ settings = apply_filters ('koko_analytics_sanitize_settings ' , $ settings , $ posted );
224
227
update_option ('koko_analytics_settings ' , $ settings , true );
225
228
wp_safe_redirect (add_query_arg (array ('settings-updated ' => true ), wp_get_referer ()));
226
229
exit ;
0 commit comments