public virtual async Task <ActionResult> ImportResources(int langId, HttpPostedFileBase xmlFile) { var language = await LanguagesService.FindByIdAsync(langId); if (language == null) { return(RedirectToAction("PageNotFound", "Error")); } try { string xmlContent = new StreamReader(xmlFile.InputStream).ReadToEnd(); await _localizationService.ImportResourcesFromXmlAsync(language.Id, xmlContent); SuccessNotification(_localizationService.GetResource("StringResourcesImportedSuccessfully")); } catch (Exception e) { var errorCode = ErrorLog.GetDefault(System.Web.HttpContext.Current).Log(new Error(e, System.Web.HttpContext.Current)); ErrorNotification(string.Format(_localizationService.GetResource("ErrorOnOperation"), e.Message, errorCode)); } return(RedirectToAction("Index", new { langId = langId })); }
public virtual async Task <ActionResult> Editor(int?id) { if (id != null) { var record = await LanguagesService.FindByIdAsync(id.Value); if (record != null) { return(View(await _languageModelFactory.PrepareLanguageModelAsync(record))); } } return(View(await _languageModelFactory.PrepareLanguageModelAsync(null))); }
public virtual async Task <ActionResult> ExportResources(int langId) { var language = await LanguagesService.FindByIdAsync(langId); if (language == null) { return(RedirectToAction("PageNotFound", "Error")); } var xmlString = await _localizationService.ExportResourcesToXmlAsync(language); var contentType = "text/xml"; var bytes = Encoding.UTF8.GetBytes(xmlString); var result = new FileContentResult(bytes, contentType); result.FileDownloadName = $"DigiCommerce.StringResources.{language.IsoCode}.xml"; return(result); }
public virtual async Task <ActionResult> Index(int langId) { var language = await LanguagesService.FindByIdAsync(langId); if (language == null) { return(RedirectToAction("PageNotFound", "Error")); } ViewBag.LangId = langId; ViewBag.LangName = language.LanguageName; ViewBag.LanguagesDropDown = LanguagesService.GetAsEnumerable().Select(p => new { text = p.LanguageName, value = p.Id.ToString() }).ToList(); return(View()); }