summaryrefslogtreecommitdiff
path: root/searx/utils.py
diff options
context:
space:
mode:
authorMathieu Brunot <mathieu.brunot@monogramm.io>2019-10-16 19:30:02 +0200
committerGitHub <noreply@github.com>2019-10-16 19:30:02 +0200
commita51b2b6c20c1346748c09aec051d78f6822c580c (patch)
tree5f08fadc14de64e86c5582ebbdc928e4abe7475b /searx/utils.py
parent4d17d453bf99641797dcbfa1f1a35dd5b21dcab4 (diff)
parent12f42d1572311a56401637ac5c7dc66008eb979c (diff)
Merge branch 'master' into feature/accessibility
Diffstat (limited to 'searx/utils.py')
-rw-r--r--searx/utils.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/searx/utils.py b/searx/utils.py
index d88bc9897..e61a134f7 100644
--- a/searx/utils.py
+++ b/searx/utils.py
@@ -308,14 +308,15 @@ def int_or_zero(num):
def is_valid_lang(lang):
is_abbr = (len(lang) == 2)
+ lang = lang.lower().decode('utf-8')
if is_abbr:
for l in language_codes:
- if l[0][:2] == lang.lower():
+ if l[0][:2] == lang:
return (True, l[0][:2], l[3].lower())
return False
else:
for l in language_codes:
- if l[1].lower() == lang.lower():
+ if l[1].lower() == lang or l[3].lower() == lang:
return (True, l[0][:2], l[3].lower())
return False
@@ -434,3 +435,18 @@ def ecma_unescape(s):
# "%20" becomes " ", "%F3" becomes "รณ"
s = ecma_unescape2_re.sub(lambda e: unichr(int(e.group(1), 16)), s)
return s
+
+
+def get_engine_from_settings(name):
+ """Return engine configuration from settings.yml of a given engine name"""
+
+ if 'engines' not in settings:
+ return {}
+
+ for engine in settings['engines']:
+ if 'name' not in engine:
+ continue
+ if name == engine['name']:
+ return engine
+
+ return {}