diff --git a/contrib/scripts/process_messages.py b/contrib/scripts/process_messages.py index 577d54c2e5..53cda3ab4f 100755 --- a/contrib/scripts/process_messages.py +++ b/contrib/scripts/process_messages.py @@ -18,8 +18,9 @@ makemessages = makemessages.bake('makemessages') compilemessages = sh.Command('django-admin.py') compilemessages = compilemessages.bake('compilemessages') -pull_translations = sh.Command('tx') -pull_translations = pull_translations.bake('pull') +transifex_client = sh.Command('tx') +pull_translations = transifex_client.bake('pull') +push_translations = transifex_client.bake('push') BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '..', '..', 'mayan')) @@ -31,6 +32,8 @@ def process(command, app_list, language_list): print 'Compiling messages' elif command == pull_translations: print 'Pulling translation files' + elif command == push_translations: + print 'Pushing translation files' if command in [compilemessages, makemessages]: for app in app_list: @@ -44,6 +47,10 @@ def process(command, app_list, language_list): for lang in language_list: print 'Doing language: %s' % lang command('-f', '-l', lang) + elif command == push_translations: + for lang in language_list: + print 'Doing language: %s' % lang + command('-s', '-l', lang) if __name__ == '__main__': @@ -51,6 +58,7 @@ if __name__ == '__main__': parser.add_option('-m', '--make', help='create message sources file', dest='make', default=False, action='store_true') parser.add_option('-c', '--compile', help='compile message files', dest='compile', default=False, action='store_true') parser.add_option('-p', '--pull', help='pull translation files', dest='pull', default=False, action='store_true') + parser.add_option('-u', '--push', help='push translation files', dest='push', default=False, action='store_true') parser.add_option('-a', '--app', help='specify which app to process', dest='app', action='store', metavar='appname') parser.add_option('-l', '--lang', help='specify which language to process', dest='lang', action='store', metavar='language') (opts, args) = parser.parse_args() @@ -74,3 +82,5 @@ if __name__ == '__main__': process(compilemessages, app_list, language_list) elif opts.pull: process(pull_translations, app_list, language_list) + elif opts.push: + process(push_translations, app_list, language_list)