Browse Source

Merge pull request #2707 from return42/fix-doi-default

[fix] default_doi_resolver in preferences
Noémi Ványi 4 years ago
parent
commit
0c68f2ee5f

+ 2 - 2
searx/plugins/oa_doi_rewrite.py

@@ -29,7 +29,7 @@ def get_doi_resolver(args, preference_doi_resolver):
     doi_resolvers = settings['doi_resolvers']
     doi_resolver = args.get('doi_resolver', preference_doi_resolver)[0]
     if doi_resolver not in doi_resolvers:
-        doi_resolvers = settings['default_doi_resolver']
+        doi_resolver = settings['default_doi_resolver']
     doi_resolver_url = doi_resolvers[doi_resolver]
     return doi_resolver_url
 
@@ -40,7 +40,7 @@ def on_result(request, search, result):
 
     doi = extract_doi(result['parsed_url'])
     if doi and len(doi) < 50:
-        for suffix in ('/', '.pdf', '/full', '/meta', '/abstract'):
+        for suffix in ('/', '.pdf', '.xml', '/full', '/meta', '/abstract'):
             if doi.endswith(suffix):
                 doi = doi[:-len(suffix)]
         result['url'] = get_doi_resolver(request.args, request.preferences.get_value('doi_resolver')) + doi

+ 1 - 1
searx/preferences.py

@@ -387,7 +387,7 @@ class Preferences:
                 }
             ),
             'doi_resolver': MultipleChoiceSetting(
-                ['oadoi.org'],
+                [settings['default_doi_resolver'], ],
                 is_locked('doi_resolver'),
                 choices=DOI_RESOLVERS
             ),

+ 1 - 1
searx/settings.yml

@@ -1395,4 +1395,4 @@ doi_resolvers :
   doai.io  : 'https://dissem.in/'
   sci-hub.tw : 'https://sci-hub.tw/'
 
-default_doi_resolver : 'sci-hub.tw'
+default_doi_resolver : 'oadoi.org'

+ 1 - 1
searx/templates/oscar/preferences.html

@@ -165,7 +165,7 @@
                     {{ preferences_item_header(info, label, rtl, 'doi_resolver') }}
                         <select class="form-control {{ custom_select_class(rtl) }}" name="doi_resolver" id="doi_resolver">
                             {% for doi_resolver_name,doi_resolver_url in doi_resolvers.items() %}
-                            <option value="{{ doi_resolver_name }}" {% if doi_resolver_name == current_doi_resolver %}selected="selected"{% endif %}>
+                            <option value="{{ doi_resolver_name }}" {% if doi_resolver_url == current_doi_resolver %}selected="selected"{% endif %}>
                                     {{ doi_resolver_name }} - {{ doi_resolver_url }}
                             </option>
                              {% endfor %}

+ 1 - 1
searx/templates/simple/preferences.html

@@ -96,7 +96,7 @@
     <p class="value">
       <select id='doi_resolver' name='doi_resolver'>
       {%- for doi_resolver_name,doi_resolver_url in doi_resolvers.items() -%}
-         <option value="{{ doi_resolver_name }}" {% if doi_resolver_name == current_doi_resolver %}selected="selected"{% endif %}>
+         <option value="{{ doi_resolver_name }}" {% if doi_resolver_url == current_doi_resolver %}selected="selected"{% endif %}>
          {{- doi_resolver_name }} - {{ doi_resolver_url -}}
          </option>
       {%- endfor -%}