| OLD | NEW | 
|    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-present eyeo GmbH |    2 # Copyright (C) 2006-present 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 163 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  174         if callback: |  174         if callback: | 
|  175             callback(page, locale, name, result, comment, fixed_strings) |  175             callback(page, locale, name, result, comment, fixed_strings) | 
|  176  |  176  | 
|  177         # Insert fixed strings |  177         # Insert fixed strings | 
|  178         for i, fixed_string in enumerate(fixed_strings, 1): |  178         for i, fixed_string in enumerate(fixed_strings, 1): | 
|  179             result = result.replace('{{{}}}'.format(i), fixed_string) |  179             result = result.replace('{{{}}}'.format(i), fixed_string) | 
|  180  |  180  | 
|  181         # Insert attributes |  181         # Insert attributes | 
|  182         result = escape(result) |  182         result = escape(result) | 
|  183  |  183  | 
|  184         def stringify_attribute((name, value)): |  184         def stringify_attribute(attribute): | 
 |  185             name, value = attribute | 
|  185             return '{}="{}"'.format( |  186             return '{}="{}"'.format( | 
|  186                 escape(name), |  187                 escape(name), | 
|  187                 escape(self.insert_localized_strings(value, {})) |  188                 escape(self.insert_localized_strings(value, {})) | 
|  188             ) |  189             ) | 
|  189  |  190  | 
|  190         for tag in self.whitelist: |  191         for tag in self.whitelist: | 
|  191             allowed_contents = '(?:[^<>]|{})'.format('|'.join( |  192             allowed_contents = '(?:[^<>]|{})'.format('|'.join( | 
|  192                 '<(?:{}[^<>]*?|/{})>'.format(t, t) |  193                 '<(?:{}[^<>]*?|/{})>'.format(t, t) | 
|  193                 for t in map(re.escape, self.whitelist - {tag}) |  194                 for t in map(re.escape, self.whitelist - {tag}) | 
|  194             )) |  195             )) | 
| (...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  528             stack[-1]['subitems'].append(item) |  529             stack[-1]['subitems'].append(item) | 
|  529             stack.append(item) |  530             stack.append(item) | 
|  530         return structured |  531         return structured | 
|  531  |  532  | 
|  532  |  533  | 
|  533 converters = { |  534 converters = { | 
|  534     'html': RawConverter, |  535     'html': RawConverter, | 
|  535     'md': MarkdownConverter, |  536     'md': MarkdownConverter, | 
|  536     'tmpl': TemplateConverter, |  537     'tmpl': TemplateConverter, | 
|  537 } |  538 } | 
| OLD | NEW |