mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
When a user selects an unknown or invalid locale by using the search syntax:
!qw siemens :de-TW
Before this patch a UnknownLocaleError exception will be rasied:
```
Traceback (most recent call last):
File "SearXNG/searx/search/processors/online.py", line 154, in search
search_results = self._search_basic(query, params)
File "SearXNG/searx/search/processors/online.py", line 128, in _search_basic
self.engine.request(query, params)
File "SearXNG/searx/engines/qwant.py", line 98, in request
q_locale = get_engine_locale(params['language'], supported_languages, default='en_US')
File "SearXNG/searx/locales.py", line 216, in get_engine_locale
locale = babel.Locale.parse(searxng_locale, sep='-')
File "SearXNG/local/py3/lib/python3.8/site-packages/babel/core.py", line 330, in parse
raise UnknownLocaleError(input_id)
```
This patch implements a simple exception handling, since e.g. `de-TW` does not
exists `de` will be used to get engines locale. On invalid terms like `xy-XY`
the default will be returned.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
|
||
|---|---|---|
| .. | ||
| answerers | ||
| data | ||
| engines | ||
| infopage | ||
| metrics | ||
| network | ||
| plugins | ||
| search | ||
| shared | ||
| static | ||
| templates/simple | ||
| translations | ||
| __init__.py | ||
| autocomplete.py | ||
| babel_extract.py | ||
| compat.py | ||
| exceptions.py | ||
| external_bang.py | ||
| external_urls.py | ||
| flaskfix.py | ||
| languages.py | ||
| locales.py | ||
| preferences.py | ||
| query.py | ||
| redislib.py | ||
| results.py | ||
| searxng.msg | ||
| settings.yml | ||
| settings_defaults.py | ||
| settings_loader.py | ||
| unixthreadname.py | ||
| utils.py | ||
| version.py | ||
| webadapter.py | ||
| webapp.py | ||
| webutils.py | ||