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 }));
        }
Ejemplo n.º 2
0
        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());
        }