Пример #1
0
    public static Dictionary <EB.Language, string> DownloadTranslations()
    {
        string stoken = WWWUtils.AdminLogin();

        if (string.IsNullOrEmpty(stoken))
        {
            return(null);
        }

        var transData = new Dictionary <EB.Language, string>();

        var langs = new List <EB.Language>();

        langs.Add(EB.Language.English);
        langs.Add(EB.Language.ChineseSimplified);
        langs.Add(EB.Language.ChineseTraditional);

        foreach (var lang in langs)
        {
            var code = EB.Localizer.GetSparxLanguageCode(lang);
            var url  = WWWUtils.AdminUrl(string.Format("/localization/export/{0}?stoken={1}&format=csv&status=1&code=1", code, stoken));
            var csv  = WWWUtils.Get(url);
            if (string.IsNullOrEmpty(csv))
            {
                Debug.LogWarning("LocalizationUtils.WWWUtils.Get(" + url + ") = null");
                continue;
            }
            csv = csv.Replace(@"\\n", @"\n");
            transData.Add(lang, csv);
        }

        return(transData);
    }
Пример #2
0
    public static bool UploadTranslations()
    {
        string stoken = WWWUtils.AdminLogin();

        if (string.IsNullOrEmpty(stoken))
        {
            return(false);
        }

        var url = WWWUtils.AdminUrl("/localization/upload/english");

        EB.Localizer.Clear();
        var result = LoadAllFromResources(EB.Language.English, new string[] { "all" });
        // fixup all the \n
        var data = new Hashtable();

        foreach (var entry in result)
        {
            data[entry.Key] = entry.Value.Trim().Replace("\n", "\\n");
        }

        EB.Debug.Log(" source string count: " + data.Count);

        var form = new WWWForm();

        form.AddField("body", EB.JSON.Stringify(data));
        form.AddField("stoken", stoken);
        form.AddField("format", "json");
        return(WWWUtils.PostJson(url, form) != null);
    }