Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 2438b3c7 authored by Noémi Ványi's avatar Noémi Ványi Committed by GitHub
Browse files

Merge pull request #1475 from kvch/add-all-language-option-again

Revert "remove 'all' option from search languages"
parents 491792c1 97351a2c
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -36,7 +36,7 @@ def locale_to_lang_code(locale):
# wikis for some languages were moved off from the main site, we need to make
# wikis for some languages were moved off from the main site, we need to make
# requests to correct URLs to be able to get results in those languages
# requests to correct URLs to be able to get results in those languages
lang_urls = {
lang_urls = {
    'en': {
    'all': {
        'base': 'https://wiki.archlinux.org',
        'base': 'https://wiki.archlinux.org',
        'search': '/index.php?title=Special:Search&offset={offset}&{query}'
        'search': '/index.php?title=Special:Search&offset={offset}&{query}'
    },
    },
@@ -67,7 +67,7 @@ lang_urls = {
def get_lang_urls(language):
def get_lang_urls(language):
    if language in lang_urls:
    if language in lang_urls:
        return lang_urls[language]
        return lang_urls[language]
    return lang_urls['en']
    return lang_urls['all']




# Language names to build search requests for
# Language names to build search requests for
+4 −1
Original line number Original line Diff line number Diff line
@@ -34,6 +34,9 @@ search_string = 'search?{query}&first={offset}'
def request(query, params):
def request(query, params):
    offset = (params['pageno'] - 1) * 10 + 1
    offset = (params['pageno'] - 1) * 10 + 1


    if params['language'] == 'all':
        lang = 'EN'
    else:
        lang = match_language(params['language'], supported_languages, language_aliases)
        lang = match_language(params['language'], supported_languages, language_aliases)


    query = u'language:{} {}'.format(lang.split('-')[0].upper(), query.decode('utf-8')).encode('utf-8')
    query = u'language:{} {}'.format(lang.split('-')[0].upper(), query.decode('utf-8')).encode('utf-8')
+4 −1
Original line number Original line Diff line number Diff line
@@ -71,6 +71,9 @@ def request(query, params):


    offset = (params['pageno'] - 1) * 10 + 1
    offset = (params['pageno'] - 1) * 10 + 1


    if params['language'] == 'all':
        language = 'en-US'
    else:
        language = match_language(params['language'], supported_languages, language_aliases)
        language = match_language(params['language'], supported_languages, language_aliases)


    params['url'] = _get_url(query, language, offset, params['time_range'])
    params['url'] = _get_url(query, language, offset, params['time_range'])
+4 −1
Original line number Original line Diff line number Diff line
@@ -33,6 +33,9 @@ supported_languages_url = 'https://api.dailymotion.com/languages'


# do search-request
# do search-request
def request(query, params):
def request(query, params):
    if params['language'] == 'all':
        locale = 'en-US'
    else:
        locale = match_language(params['language'], supported_languages)
        locale = match_language(params['language'], supported_languages)


    params['url'] = search_url.format(
    params['url'] = search_url.format(
+9 −3
Original line number Original line Diff line number Diff line
@@ -54,6 +54,9 @@ content_xpath = './/a[@class="result__snippet"]'


# match query's language to a region code that duckduckgo will accept
# match query's language to a region code that duckduckgo will accept
def get_region_code(lang, lang_list=[]):
def get_region_code(lang, lang_list=[]):
    if lang == 'all':
        return None

    lang_code = match_language(lang, lang_list, language_aliases, 'wt-WT')
    lang_code = match_language(lang, lang_list, language_aliases, 'wt-WT')
    lang_parts = lang_code.split('-')
    lang_parts = lang_code.split('-')


@@ -61,7 +64,6 @@ def get_region_code(lang, lang_list=[]):
    return lang_parts[1].lower() + '-' + lang_parts[0].lower()
    return lang_parts[1].lower() + '-' + lang_parts[0].lower()




# do search-request
def request(query, params):
def request(query, params):
    if params['time_range'] and params['time_range'] not in time_range_dict:
    if params['time_range'] and params['time_range'] not in time_range_dict:
        return params
        return params
@@ -69,8 +71,12 @@ def request(query, params):
    offset = (params['pageno'] - 1) * 30
    offset = (params['pageno'] - 1) * 30


    region_code = get_region_code(params['language'], supported_languages)
    region_code = get_region_code(params['language'], supported_languages)
    if region_code:
        params['url'] = url.format(
        params['url'] = url.format(
            query=urlencode({'q': query, 'kl': region_code}), offset=offset, dc_param=offset)
            query=urlencode({'q': query, 'kl': region_code}), offset=offset, dc_param=offset)
    else:
        params['url'] = url.format(
            query=urlencode({'q': query}), offset=offset, dc_param=offset)


    if params['time_range'] in time_range_dict:
    if params['time_range'] in time_range_dict:
        params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
        params['url'] += time_range_url.format(range=time_range_dict[params['time_range']])
Loading