LEFT | RIGHT |
1 # This file is part of the Adblock Plus web scripts, | 1 # This file is part of the Adblock Plus web scripts, |
2 # Copyright (C) 2006-2016 Eyeo GmbH | 2 # Copyright (C) 2006-2016 Eyeo GmbH |
3 # | 3 # |
4 # Adblock Plus is free software: you can redistribute it and/or modify | 4 # Adblock Plus is free software: you can redistribute it and/or modify |
5 # it under the terms of the GNU General Public License version 3 as | 5 # it under the terms of the GNU General Public License version 3 as |
6 # published by the Free Software Foundation. | 6 # published by the Free Software Foundation. |
7 # | 7 # |
8 # Adblock Plus is distributed in the hope that it will be useful, | 8 # Adblock Plus is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
(...skipping 11 matching lines...) Expand all Loading... |
22 import subprocess | 22 import subprocess |
23 import urlparse | 23 import urlparse |
24 import zipfile | 24 import zipfile |
25 import logging | 25 import logging |
26 | 26 |
27 | 27 |
28 class Source: | 28 class Source: |
29 def resolve_link(self, url, locale): | 29 def resolve_link(self, url, locale): |
30 parsed = urlparse.urlparse(url) | 30 parsed = urlparse.urlparse(url) |
31 page = parsed.path | 31 page = parsed.path |
32 # manually testing tel scheme because it is not recoginzed by urlparse | 32 if parsed.scheme != '' or page.startswith('/') or page.startswith('.'): |
33 if parsed.scheme != '' or url.startswith('tel:') or page.startswith('/')
or page.startswith('.'): | |
34 # Not a page link | 33 # Not a page link |
| 34 return None, None |
| 35 |
| 36 if url.startswith('tel:'): |
| 37 # Workaround for 'tel' scheme not recognized in Python <=2.7.3. |
35 return None, None | 38 return None, None |
36 | 39 |
37 if page == '' and url != '': | 40 if page == '' and url != '': |
38 # Page-relative link | 41 # Page-relative link |
39 return None, None | 42 return None, None |
40 | 43 |
41 config = self.read_config() | 44 config = self.read_config() |
42 default_locale = config.get('general', 'defaultlocale') | 45 default_locale = config.get('general', 'defaultlocale') |
43 default_page = config.get('general', 'defaultpage') | 46 default_page = config.get('general', 'defaultpage') |
44 alternative_page = '/'.join([page.rstrip('/'), default_page]).lstrip('/'
) | 47 alternative_page = '/'.join([page.rstrip('/'), default_page]).lstrip('/'
) |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
293 path = os.path.join(dir, filename) | 296 path = os.path.join(dir, filename) |
294 if os.path.isfile(path): | 297 if os.path.isfile(path): |
295 result.append(relpath + filename) | 298 result.append(relpath + filename) |
296 elif os.path.isdir(path): | 299 elif os.path.isdir(path): |
297 do_list(path, relpath + filename + '/') | 300 do_list(path, relpath + filename + '/') |
298 do_list(self.get_path(subdir), '') | 301 do_list(self.get_path(subdir), '') |
299 return result | 302 return result |
300 | 303 |
301 def get_cache_dir(self): | 304 def get_cache_dir(self): |
302 return os.path.join(self._dir, 'cache') | 305 return os.path.join(self._dir, 'cache') |
LEFT | RIGHT |