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