private async Task DownloadPackage(Language language, Package package, TranslationConfigs translationService, PageTranslations pageTranslationService, bool update) { IList<Page> pages = await translationService.GetTranslationConfig(language.code, package.code, true); foreach (Page page in pages) { await pageTranslationService.GetPageTranslationsFromService(language.code, package.code, page.filename, update); } ChangeVersion(language.code, languageListFileName, package); }
public async Task DeleteLanguage(string language) { Language downloadLanguage = new Language(); TranslationConfigs translationService = new TranslationConfigs(); PageTranslations pageTranslationService = new PageTranslations(); downloadLanguage = await GetLanguage(language); foreach (Package package in downloadLanguage.packages) { IList<Page> pages = await translationService.GetTranslationConfig(downloadLanguage.code, package.code); foreach (Page page in pages) { pageTranslationService.DeletePageTranslation(downloadLanguage.code, package.code, page.filename); } } if (ApplicationData.Current.RoamingSettings.Values["primary"].ToString() == language) { string listLanguage = CultureInfo.CurrentUICulture.TwoLetterISOLanguageName; if (!await IsLanguageDownloaded(listLanguage)) { await DownloadLanguage(listLanguage); ChangeLanguageDownloadedFlag(listLanguage, languageListFileName, true); ChangeLanguageUpToDateFlag(listLanguage, languageListFileName, true); } ApplicationData.Current.RoamingSettings.Values["primary"] = listLanguage; } if (ApplicationData.Current.RoamingSettings.Values["current"].ToString() == language) { ApplicationData.Current.RoamingSettings.Values["current"] = ApplicationData.Current.RoamingSettings.Values["primary"]; } if (ApplicationData.Current.RoamingSettings.Values["parallel"].ToString() == language) { ApplicationData.Current.RoamingSettings.Values["parallel"] = ApplicationData.Current.RoamingSettings.Values["primary"]; } ChangeLanguageDownloadedFlag(language, languageListFileName, false); }
public async Task DownloadLanguage(string language, Package package, bool refresh = false) { Language downloadLanguage = new Language(); TranslationConfigs translationService = new TranslationConfigs(); PageTranslations pageTranslationService = new PageTranslations(); downloadLanguage = await GetLanguage(language); IList<Page> pages = await translationService.GetTranslationConfig(downloadLanguage.code, package.code, true); foreach (Page page in pages) { await pageTranslationService.GetPageTranslationsFromService(downloadLanguage.code, package.code, page.filename, refresh); } ChangeVersion(language, languageListFileName, package); ChangeLanguageDownloadedFlag(language, languageListFileName, true); ChangeLanguageUpToDateFlag(language, languageListFileName, true); }