| Index: sitescripts/subscriptions/bin/updateStatusPage.py |
| diff --git a/sitescripts/subscriptions/bin/updateStatusPage.py b/sitescripts/subscriptions/bin/updateStatusPage.py |
| deleted file mode 100644 |
| index 31bf70f273a37d9e72b4ff244a12ca0306f4d9a5..0000000000000000000000000000000000000000 |
| --- a/sitescripts/subscriptions/bin/updateStatusPage.py |
| +++ /dev/null |
| @@ -1,100 +0,0 @@ |
| -# This file is part of the Adblock Plus web scripts, |
| -# Copyright (C) 2006-present eyeo GmbH |
| -# |
| -# Adblock Plus is free software: you can redistribute it and/or modify |
| -# it under the terms of the GNU General Public License version 3 as |
| -# published by the Free Software Foundation. |
| -# |
| -# Adblock Plus is distributed in the hope that it will be useful, |
| -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
| -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| -# GNU General Public License for more details. |
| -# |
| -# You should have received a copy of the GNU General Public License |
| -# along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
| - |
| -import re |
| -import sys |
| -import os |
| -from urlparse import urlparse |
| -import eventlet |
| -from eventlet.green import urllib2 |
| -from sitescripts.utils import get_config, get_template, setupStderr |
| -import sitescripts.subscriptions.subscriptionParser as subscriptionParser |
| - |
| - |
| -def checkURL(url): |
| - try: |
| - result = urllib2.urlopen(url, timeout=60).read(1) |
| - return (url, True) |
| - except urllib2.HTTPError as e: |
| - return (url, e.code) |
| - except: |
| - return (url, False) |
| - |
| - |
| -def checkSite(site): |
| - try: |
| - result = urllib2.urlopen('http://downforeveryoneorjustme.com/' + site, timeout=60).read() |
| - if re.search(r'\blooks down\b', result): |
| - return (site, False) |
| - else: |
| - return (site, True) |
| - except: |
| - return (site, True) |
| - |
| - |
| -def checkSubscriptions(): |
| - subscriptions = subscriptionParser.readSubscriptions().values() |
| - subscriptions.sort(key=lambda s: s.name.lower()) |
| - |
| - urls = {} |
| - sites = {} |
| - for subscription in subscriptions: |
| - for key in ('homepage', 'forum', 'blog', 'faq', 'contact', 'changelog', 'policy'): |
| - url = getattr(subscription, key) |
| - if url != None: |
| - urls[url] = True |
| - for title, url, complete in subscription.variants: |
| - urls[url] = True |
| - |
| - pool = eventlet.GreenPool() |
| - for url, result in pool.imap(checkURL, urls.iterkeys()): |
| - urls[url] = result |
| - if result is False: |
| - sites[urlparse(url).netloc] = True |
| - for site, result in pool.imap(checkSite, sites.iterkeys()): |
| - sites[site] = result |
| - |
| - result = [] |
| - for subscription in subscriptions: |
| - s = {'name': subscription.name, 'links': []} |
| - result.append(s) |
| - for key in ('homepage', 'forum', 'blog', 'faq', 'contact', 'changelog', 'policy'): |
| - url = getattr(subscription, key) |
| - if url != None: |
| - site = urlparse(url).netloc |
| - s['links'].append({ |
| - 'url': url, |
| - 'title': key[0].upper() + key[1:], |
| - 'result': urls[url], |
| - 'siteResult': site in sites and sites[site], |
| - }) |
| - for title, url, complete in subscription.variants: |
| - site = urlparse(url).netloc |
| - s['links'].append({ |
| - 'url': url, |
| - 'title': title, |
| - 'result': urls[url], |
| - 'siteResult': site in sites and sites[site], |
| - }) |
| - return result |
| - |
| - |
| -if __name__ == '__main__': |
| - setupStderr() |
| - |
| - subscriptions = checkSubscriptions() |
| - outputFile = get_config().get('subscriptions', 'statusPage') |
| - template = get_template(get_config().get('subscriptions', 'statusTemplate')) |
| - template.stream({'subscriptions': subscriptions}).dump(outputFile, encoding='utf-8') |