Browse Source

[fix] backwards compatibility with old language cookies

marc 8 years ago
parent
commit
727c287856
1 changed files with 12 additions and 1 deletions
  1. 12 1
      searx/preferences.py

+ 12 - 1
searx/preferences.py

@@ -59,7 +59,18 @@ class EnumStringSetting(Setting):
         self._validate_selection(self.value)
 
     def parse(self, data):
-        self._validate_selection(data)
+        if data not in self.choices and data != self.value:
+            # hack to give some backwards compatibility with old language cookies
+            data = str(data).replace('_', '-')
+            lang = data[:2]
+            if data in self.choices:
+                pass
+            elif lang in self.choices:
+                data = lang
+            elif data == 'ar-XA':
+                data = 'ar-SA'
+            else:
+                data = 'all'
         self.value = data