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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 if 'targets' in notification: | 85 if 'targets' in notification: |
86 current['targets'].append(target) | 86 current['targets'].append(target) |
87 else: | 87 else: |
88 current['targets'] = [target] | 88 current['targets'] = [target] |
89 elif key == 'sample' and is_variant: | 89 elif key == 'sample' and is_variant: |
90 current['sample'] = float(value) | 90 current['sample'] = float(value) |
91 elif key in ['start', 'end']: | 91 elif key in ['start', 'end']: |
92 current[key] = datetime.datetime.strptime(value, '%Y-%m-%dT%H:%M') | 92 current[key] = datetime.datetime.strptime(value, '%Y-%m-%dT%H:%M') |
93 elif key == 'interval': | 93 elif key == 'interval': |
94 current[key] = int(value) | 94 current[key] = int(value) |
| 95 elif key == 'urls': |
| 96 current['urlFilters'] = [ |
| 97 v.upper() + '^$document' |
| 98 for v in value.split() |
| 99 ] |
95 else: | 100 else: |
96 raise Exception("Unknown parameter '%s' in file '%s'" % (key, name)) | 101 raise Exception("Unknown parameter '%s' in file '%s'" % (key, name)) |
97 | 102 |
98 for text_key in ('title', 'message'): | 103 for text_key in ('title', 'message'): |
99 def has_default_locale(variant): | 104 def has_default_locale(variant): |
100 return 'en-US' in variant[text_key] | 105 return 'en-US' in variant[text_key] |
101 if not has_default_locale(notification): | 106 if not has_default_locale(notification): |
102 variants = notification.get('variants', []) | 107 variants = notification.get('variants', []) |
103 if not all(map(has_default_locale, variants)): | 108 if not all(map(has_default_locale, variants)): |
104 raise Exception('No %s for en-US (default language) ' | 109 raise Exception('No %s for en-US (default language) ' |
(...skipping 21 matching lines...) Expand all Loading... |
126 if not 'inactive' in notification: | 131 if not 'inactive' in notification: |
127 current_time = datetime.datetime.now() | 132 current_time = datetime.datetime.now() |
128 start = notification.pop('start', current_time) | 133 start = notification.pop('start', current_time) |
129 end = notification.pop('end', current_time) | 134 end = notification.pop('end', current_time) |
130 if not start <= current_time <= end: | 135 if not start <= current_time <= end: |
131 notification['inactive'] = True | 136 notification['inactive'] = True |
132 notifications.append(notification) | 137 notifications.append(notification) |
133 except: | 138 except: |
134 traceback.print_exc() | 139 traceback.print_exc() |
135 return notifications | 140 return notifications |
OLD | NEW |