summaryrefslogblamecommitdiff
path: root/web/fetch.py
blob: c5fbeea4bc50d159524f2b4998ba27345832777b (plain) (tree)





























































                                                                                                                                                          
#! /usr/bin/env python2.7
# -*- coding: utf8 -*-
#
# Copyright (C) 2018  TMW-2
# Author: Jesusalva

from transifex.api import TransifexAPI
#import sys

#if len(sys.argv) == 2:
#    if sys.argv[1] == "AllFilesVerified":
#        pass
#    else:
#        print("Rejected: Incorrect magic word.")
#        exit(1)
#else:
#    print("Rejected: As this script is VULNERABLE TO CODE INJECTION, you cannot run this command without verifying all files at Transifex first.")
#    exit(1)
print("\033[1mThis script is VULNERABLE TO CODE INJECTION. Git diff before deploying!\033[0m")

project='moubootaur-legends'

print("Loading user credentials (login.txt/password.txt) from lang/ folder...")

# Load credentials from login.txt and password.txt
login=open('../lang/login.txt', 'r')
for i in login:
    username=i.replace('\n', '').replace('\r', '')

login.close()

passw=open('../lang/password.txt', 'r')
for i in passw:
    password=i.replace('\n', '').replace('\r', '')

passw.close()

t=TransifexAPI(username, password, 'https://www.transifex.com')

if (not t.ping):
    print("ERROR: Ping failed, this may be due incorrect username/password in login.txt and password.txt. Ensure there is NO newline at the end of file.")
    exit(1)

if (not t.project_exists(project)):
    print("ERROR: Invalid project name")
    exit(1)

# Load languages
langs=[]
vcx=open("langs.txt", "r")
for i in vcx:
    if i != "en":
        langs.append(i.replace('\n', ''))
vcx.close()

# Fetch all translations and record them at in/
for i in langs:
    print("Fetching %s..." %(i))
    t.get_translation(project, 'website', i, 'po/'+str(i)+'.po')

print("All translations were retrieved.")
print("Please sanitize files removing \"\\n\", or updatelang.py won't parse properly.")