public void Update(MiniSiteTextPage page) { _repository.Update(page); _eventPublisher.EntityUpdated(page); _cacheManager.RemoveByPattern(MINISITETEXT_PATTERN_KEY); }
public ActionResult TextPageSetup(MiniSiteTextPagesModel model) { if (!_workContext.CurrentCustomer.IsRegistered()) { return(RedirectToRoute("HomePage")); } if (_workContext.CurrentCustomer.UserMiniSite == null) { return(RedirectToRoute("HomePage")); } if (ModelState.IsValid) { if (model.Id != 0) { var oldTextPage = _miniSiteTextPageService.GetById(model.Id); _localizedEntityService.SaveLocalizedValue(oldTextPage, x => x.Html, model.PageHtml, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(oldTextPage, x => x.MenuTitle, model.PageMenuTitle, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(oldTextPage, x => x.PageTitle, model.PageTitleTag, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(oldTextPage, x => x.Title, model.PageTitle, model.SelectedLanguageId); var seName = oldTextPage.ValidateSeName(oldTextPage.GetLocalized(x => x.Title, model.SelectedLanguageId), null, true); _urlRecordService.SaveSlug(oldTextPage, seName, model.SelectedLanguageId); } else { var textpage = new MiniSiteTextPage(); textpage.UserMiniSiteId = _workContext.CurrentCustomer.UserMiniSite.Id; _miniSiteTextPageService.Insert(textpage); _localizedEntityService.SaveLocalizedValue(textpage, x => x.Html, model.PageHtml, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(textpage, x => x.MenuTitle, model.PageMenuTitle, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(textpage, x => x.PageTitle, model.PageTitleTag, model.SelectedLanguageId); _localizedEntityService.SaveLocalizedValue(textpage, x => x.Title, model.PageTitle, model.SelectedLanguageId); var seName = textpage.ValidateSeName(textpage.GetLocalized(x => x.Title, model.SelectedLanguageId), null, true); _urlRecordService.SaveSlug(textpage, seName, model.SelectedLanguageId); } } var lang = _languageService.GetLanguageById(model.SelectedLanguageId); model.CurrentLanguage = new LanguageModel() { Name = lang.Name, LanguageCulture = lang.LanguageCulture, Id = lang.Id }; model.AviableLanguages = new List <LanguageModel>(); var language = _languageService.GetAllLanguages().Where(x => x.UniqueSeoCode == "ru").FirstOrDefault(); model.AviableLanguages.Add(new LanguageModel() { Name = language.Name, LanguageCulture = language.LanguageCulture, Id = language.Id }); language = _languageService.GetAllLanguages().Where(x => x.UniqueSeoCode == "en").FirstOrDefault(); model.AviableLanguages.Add(new LanguageModel() { Name = language.Name, LanguageCulture = language.LanguageCulture, Id = language.Id }); model.SelectedLanguageId = lang.Id; return(RedirectToAction("TextPageSetup", new { languageId = model.SelectedLanguageId })); }