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); }
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); }