| LEFT | RIGHT | 
|---|
| 1 # This Source Code Form is subject to the terms of the Mozilla Public | 1 # This Source Code Form is subject to the terms of the Mozilla Public | 
| 2 # License, v. 2.0. If a copy of the MPL was not distributed with this | 2 # License, v. 2.0. If a copy of the MPL was not distributed with this | 
| 3 # file, You can obtain one at http://mozilla.org/MPL/2.0/. | 3 # file, You can obtain one at http://mozilla.org/MPL/2.0/. | 
| 4 | 4 | 
| 5 import argparse | 5 import argparse | 
| 6 import logging | 6 import logging | 
| 7 import os | 7 import os | 
| 8 import re | 8 import re | 
| 9 import shutil | 9 import shutil | 
| 10 import subprocess | 10 import subprocess | 
| (...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 189     with ZipFile(file, 'r') as zip_file: | 189     with ZipFile(file, 'r') as zip_file: | 
| 190         zip_file.extractall(devenv_dir) | 190         zip_file.extractall(devenv_dir) | 
| 191 | 191 | 
| 192 | 192 | 
| 193 project_key_argument = make_argument( | 193 project_key_argument = make_argument( | 
| 194     'project_key', help='The crowdin project key.', | 194     'project_key', help='The crowdin project key.', | 
| 195 ) | 195 ) | 
| 196 | 196 | 
| 197 | 197 | 
| 198 @argparse_command( | 198 @argparse_command( | 
| 199     arguments=(project_key_argument, ), | 199     arguments=(project_key_argument,), | 
| 200 ) | 200 ) | 
| 201 def setuptrans(base_dir, project_key, platform, **kwargs): | 201 def setuptrans(base_dir, project_key, platform, **kwargs): | 
| 202     """ | 202     """ | 
| 203     Set up translation languages. | 203     Set up translation languages. | 
| 204 | 204 | 
| 205     Set up translation languages for the project on crowdin.com. | 205     Set up translation languages for the project on crowdin.com. | 
| 206     """ | 206     """ | 
| 207     from buildtools.packager import readMetadata | 207     from buildtools.packager import readMetadata | 
| 208     metadata = readMetadata(base_dir, platform) | 208     metadata = readMetadata(base_dir, platform) | 
| 209 | 209 | 
| 210     basename = metadata.get('general', 'basename') | 210     basename = metadata.get('general', 'basename') | 
| 211     locale_config = read_locale_config(base_dir, platform, metadata) | 211     locale_config = read_locale_config(base_dir, platform, metadata) | 
| 212 | 212 | 
| 213     import buildtools.localeTools as localeTools | 213     import buildtools.localeTools as localeTools | 
| 214     localeTools.setupTranslations(locale_config, basename, project_key) | 214     localeTools.setupTranslations(locale_config, basename, project_key) | 
| 215 | 215 | 
| 216 | 216 | 
| 217 @argparse_command( | 217 @argparse_command( | 
| 218     arguments=(project_key_argument, ), | 218     arguments=(project_key_argument,), | 
| 219 ) | 219 ) | 
| 220 def translate(base_dir, project_key, platform, **kwargs): | 220 def translate(base_dir, project_key, platform, **kwargs): | 
| 221     """ | 221     """ | 
| 222     Update translation master files. | 222     Update translation master files. | 
| 223 | 223 | 
| 224     Update the translation master files in the project on crowdin.com. | 224     Update the translation master files in the project on crowdin.com. | 
| 225     """ | 225     """ | 
| 226     from buildtools.packager import readMetadata | 226     from buildtools.packager import readMetadata | 
| 227     metadata = readMetadata(base_dir, platform) | 227     metadata = readMetadata(base_dir, platform) | 
| 228 | 228 | 
| 229     basename = metadata.get('general', 'basename') | 229     basename = metadata.get('general', 'basename') | 
| 230     locale_config = read_locale_config(base_dir, platform, metadata) | 230     locale_config = read_locale_config(base_dir, platform, metadata) | 
| 231 | 231 | 
| 232     default_locale_dir = os.path.join(locale_config['base_path'], | 232     default_locale_dir = os.path.join(locale_config['base_path'], | 
| 233                                       locale_config['default_locale']) | 233                                       locale_config['default_locale']) | 
| 234 | 234 | 
| 235     import buildtools.localeTools as localeTools | 235     import buildtools.localeTools as localeTools | 
| 236     localeTools.updateTranslationMaster(locale_config, metadata, | 236     localeTools.updateTranslationMaster(locale_config, metadata, | 
| 237                                         default_locale_dir, basename, | 237                                         default_locale_dir, basename, | 
| 238                                         project_key) | 238                                         project_key) | 
| 239 | 239 | 
| 240 | 240 | 
| 241 @argparse_command( | 241 @argparse_command( | 
| 242     arguments=(project_key_argument, ), | 242     arguments=(project_key_argument,), | 
| 243 ) | 243 ) | 
| 244 def uploadtrans(base_dir, project_key, platform, **kwargs): | 244 def uploadtrans(base_dir, project_key, platform, **kwargs): | 
| 245     """ | 245     """ | 
| 246     Upload existing translations. | 246     Upload existing translations. | 
| 247 | 247 | 
| 248     Upload already existing translations to the project on crowdin.com. | 248     Upload already existing translations to the project on crowdin.com. | 
| 249     """ | 249     """ | 
| 250     from buildtools.packager import readMetadata | 250     from buildtools.packager import readMetadata | 
| 251     metadata = readMetadata(base_dir, platform) | 251     metadata = readMetadata(base_dir, platform) | 
| 252 | 252 | 
| 253     basename = metadata.get('general', 'basename') | 253     basename = metadata.get('general', 'basename') | 
| 254     locale_config = read_locale_config(base_dir, platform, metadata) | 254     locale_config = read_locale_config(base_dir, platform, metadata) | 
| 255 | 255 | 
| 256     import buildtools.localeTools as localeTools | 256     import buildtools.localeTools as localeTools | 
| 257     for locale, locale_dir in locale_config['locales'].iteritems(): | 257     for locale, locale_dir in locale_config['locales'].iteritems(): | 
| 258         if locale != locale_config['default_locale'].replace('_', '-'): | 258         if locale != locale_config['default_locale'].replace('_', '-'): | 
| 259             localeTools.uploadTranslations(locale_config, metadata, locale_dir, | 259             localeTools.uploadTranslations(locale_config, metadata, locale_dir, | 
| 260                                            locale, basename, project_key) | 260                                            locale, basename, project_key) | 
| 261 | 261 | 
| 262 | 262 | 
| 263 @argparse_command( | 263 @argparse_command( | 
| 264     arguments=(project_key_argument, ), | 264     arguments=(project_key_argument,), | 
| 265 ) | 265 ) | 
| 266 def gettranslations(base_dir, project_key, platform, **kwargs): | 266 def gettranslations(base_dir, project_key, platform, **kwargs): | 
| 267     """ | 267     """ | 
| 268     Download translation updates. | 268     Download translation updates. | 
| 269 | 269 | 
| 270     Download updated translations from crowdin.com. | 270     Download updated translations from crowdin.com. | 
| 271     """ | 271     """ | 
| 272     from buildtools.packager import readMetadata | 272     from buildtools.packager import readMetadata | 
| 273     metadata = readMetadata(base_dir, platform) | 273     metadata = readMetadata(base_dir, platform) | 
| 274 | 274 | 
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 379     if build_available_subcommands(base_dir): | 379     if build_available_subcommands(base_dir): | 
| 380         MAIN_PARSER.set_defaults(base_dir=base_dir) | 380         MAIN_PARSER.set_defaults(base_dir=base_dir) | 
| 381 | 381 | 
| 382         # If no args are provided, this module is run directly from the command | 382         # If no args are provided, this module is run directly from the command | 
| 383         # line. argparse will take care of consuming sys.argv. | 383         # line. argparse will take care of consuming sys.argv. | 
| 384         arguments = MAIN_PARSER.parse_args(args if len(args) > 0 else None) | 384         arguments = MAIN_PARSER.parse_args(args if len(args) > 0 else None) | 
| 385 | 385 | 
| 386         function = arguments.function | 386         function = arguments.function | 
| 387         del arguments.function | 387         del arguments.function | 
| 388         function(**vars(arguments)) | 388         function(**vars(arguments)) | 
| LEFT | RIGHT | 
|---|