Parcourir la source

[fix] save unknown preferences parameters to cookies

Without this courgette color selector can not work
Adam Tauber il y a 8 ans
Parent
révision
237d251d14
1 fichiers modifiés avec 5 ajouts et 0 suppressions
  1. 5
    0
      searx/preferences.py

+ 5
- 0
searx/preferences.py Voir le fichier

229
 
229
 
230
         self.engines = EnginesSetting('engines', choices=engines)
230
         self.engines = EnginesSetting('engines', choices=engines)
231
         self.plugins = PluginsSetting('plugins', choices=plugins)
231
         self.plugins = PluginsSetting('plugins', choices=plugins)
232
+        self.unknown_params = {}
232
 
233
 
233
     def parse_cookies(self, input_data):
234
     def parse_cookies(self, input_data):
234
         for user_setting_name, user_setting in input_data.iteritems():
235
         for user_setting_name, user_setting in input_data.iteritems():
254
                 enabled_categories.append(user_setting_name[len('category_'):])
255
                 enabled_categories.append(user_setting_name[len('category_'):])
255
             elif user_setting_name.startswith('plugin_'):
256
             elif user_setting_name.startswith('plugin_'):
256
                 disabled_plugins.append(user_setting_name)
257
                 disabled_plugins.append(user_setting_name)
258
+            else:
259
+                self.unknown_params[user_setting_name] = user_setting
257
         self.key_value_settings['categories'].parse_form(enabled_categories)
260
         self.key_value_settings['categories'].parse_form(enabled_categories)
258
         self.engines.parse_form(disabled_engines)
261
         self.engines.parse_form(disabled_engines)
259
         self.plugins.parse_form(disabled_plugins)
262
         self.plugins.parse_form(disabled_plugins)
268
             user_setting.save(user_setting_name, resp)
271
             user_setting.save(user_setting_name, resp)
269
         self.engines.save(resp)
272
         self.engines.save(resp)
270
         self.plugins.save(resp)
273
         self.plugins.save(resp)
274
+        for k, v in self.unknown_params.items():
275
+            resp.set_cookie(k, v, max_age=COOKIE_MAX_AGE)
271
         return resp
276
         return resp