|
3 | 3 | import os |
4 | 4 | import json |
5 | 5 | from os.path import dirname, join as pjoin |
| 6 | +from boltons.fileutils import mkdir_p |
6 | 7 |
|
7 | 8 | DEBUG = False |
8 | 9 |
|
|
15 | 16 | _CUR_PATH = dirname(os.path.abspath(__file__)) |
16 | 17 |
|
17 | 18 | LANG_MAP = json.load(open(pjoin(_CUR_PATH, 'language_codes.json'))) |
18 | | -LOCAL_LANG_MAP = {'en': u'English'} |
19 | | - # 'de': u'Deutsch', |
20 | | - # 'fr': u'Français', |
21 | | - # 'ko': u'한국어', |
22 | | - # 'et': u'Eesti', |
23 | | - # 'sv': u'Svenska', |
24 | | - # 'da': u'Dansk', |
25 | | - # 'it': u'Italiano', |
26 | | - # 'ca': u'Català', |
27 | | - # 'es': u'Español', |
28 | | - # 'fa': u'فارسی', |
29 | | - # 'ur': u'اردو', |
30 | | - # 'zh': u'中文', |
31 | | - # 'kn': u'ಕನ್ನಡ', |
32 | | - # 'lv': u'Latvian', |
33 | | - # 'el': u'ελληνική', |
34 | | - # 'te': u'తెలుగు', |
35 | | - # 'oc': 'Occitan', |
36 | | - # 'ru': 'Russian', |
37 | | - # 'uk': 'Ukrainian'} |
| 19 | +LOCAL_LANG_MAP = {'en': u'English', |
| 20 | + 'de': u'Deutsch', |
| 21 | + 'eo': u'Esperanto', |
| 22 | + 'fr': u'Français', |
| 23 | + 'ko': u'한국어', |
| 24 | + 'et': u'Eesti', |
| 25 | + 'sv': u'Svenska', |
| 26 | + 'da': u'Dansk', |
| 27 | + 'it': u'Italiano', |
| 28 | + 'ca': u'Català', |
| 29 | + 'es': u'Español', |
| 30 | + 'fa': u'فارسی', |
| 31 | + 'ur': u'اردو', |
| 32 | + 'zh': u'中文', |
| 33 | + 'kn': u'ಕನ್ನಡ', |
| 34 | + 'lv': u'Latvian', |
| 35 | + 'el': u'ελληνική', |
| 36 | + 'te': u'తెలుగు', |
| 37 | + 'oc': 'Occitan', |
| 38 | + 'ru': 'Russian', |
| 39 | + 'uk': 'Ukrainian'} |
38 | 40 | SENDKEY = json.load(open(os.path.join(_CUR_PATH, 'secrets.json'))).get('key') |
39 | | -SUPPORTED_LANGS = ['en'] |
40 | | -# 'de', 'fr', 'ko', 'et', 'sv', 'da', 'it', 'ca', 'es', |
41 | | -# 'fa', 'zh', 'ur', 'kn', 'lv', 'el', 'te', 'oc', 'ru', 'uk'] |
| 41 | + |
| 42 | +SENDY_IDS = {'ca': '9sW1OtFlCbJlYgxSXuahHQ', |
| 43 | + 'zh': 'aSQ6TT0VKpw0tmzBPaRZDg', |
| 44 | + 'da': '0cs1zVQp3892EjjL0763350TeQ', |
| 45 | + 'en': 'rFf1E97OGw9qMfZh1F81KA', |
| 46 | + #'en': 'VN7NFOFUPp5WjrbMSH7Puw', # debug |
| 47 | + 'es': 'HTPao3LPmzm0UrCNxfBUgA', |
| 48 | + 'eo': 'H804892jOtJrNTukmVWOlrbA', |
| 49 | + 'et': 'db8mkJ2Tl6pnNUIIVfMFog', |
| 50 | + 'fr': 'ELz1OOSd3olC6LSCJmCqhw', |
| 51 | + 'de': 't0892Imxu8HTkzoPkrow11MQ', |
| 52 | + 'it': 'EkOruTQZ64fx7V5k9heZNw', |
| 53 | + 'kn': 'Dn9KffuyqLRKSY9XAwPCHQ', |
| 54 | + 'ko': '65Y8dYqreq2Frkav2WmJ9Q', |
| 55 | + 'lv': 'zgfaJH8Jskz7VxNai9zc763A', |
| 56 | + 'sv': 'bqpefw4ZBxMBHxrTz9dPKg', |
| 57 | + 'fa': 'mRGhgpBb4RnwDe25RtP8fA', |
| 58 | + 'el': 'Ts6mbUlmOCiD0mlWPL8T4A', |
| 59 | + 'oc': 'OrhmrHkNlTRR9KWNMAgDMQ', |
| 60 | + 'ru': 'IUDkAYoiJDQ7P3AQtLIAhQ', |
| 61 | + 'es': '5EzGTlwChgHME1TDa763nncA', |
| 62 | + 'te': 'rp4VkbQ1p2QXi560nIrF3w', |
| 63 | + 'ur': 'QiUlnjE3S9kPdvpzWQdK5Q', |
| 64 | + 'uk': 'gYfAtFPIVbJgVLkEfpO892Uw '} |
| 65 | + |
| 66 | +SUPPORTED_LANGS = SENDY_IDS.keys() |
| 67 | + |
42 | 68 | API_BASE_URL = 'http://weeklypedia.toolforge.org/fetch/' |
43 | 69 |
|
44 | 70 | ARCHIVE_BASE_PATH = pjoin(dirname(_CUR_PATH), 'static', 'archive') |
| 71 | +ARCHIVE_URL = 'https://weekly.hatnote.com/archive/%s/index.html' |
45 | 72 |
|
46 | 73 | DATA_BASE_PATH = pjoin(dirname(_CUR_PATH), 'static', 'data') |
47 | 74 | DATA_PATH_TMPL = '{lang_shortcode}/{date_str}{dev_flag}/weeklypedia_{lang_shortcode}_{date_str}{dev_flag}.json' |
|
72 | 99 | 'uk': 'http://eepurl.com/dxJKwf'} |
73 | 100 |
|
74 | 101 |
|
75 | | -def mkdir_p(path): |
76 | | - # bolton |
77 | | - import errno |
78 | | - try: |
79 | | - os.makedirs(path) |
80 | | - except OSError as exc: |
81 | | - if exc.errno == errno.EEXIST and os.path.isdir(path): |
82 | | - return |
83 | | - raise |
| 102 | +# def mkdir_p(path): |
| 103 | +# # bolton |
| 104 | +# import errno |
| 105 | +# try: |
| 106 | +# os.makedirs(path) |
| 107 | +# except OSError as exc: |
| 108 | +# if exc.errno == errno.EEXIST and os.path.isdir(path): |
| 109 | +# return |
| 110 | +# raise |
0 commit comments