private void UpdateLocales(ForumGroupModel model, ForumGroup forumGroup) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(forumGroup, x => x.Name, localized.Name, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(forumGroup, x => x.Description, localized.Description, localized.LanguageId); var seName = forumGroup.ValidateSeName(localized.SeName, localized.Name, false, localized.LanguageId); _urlRecordService.SaveSlug(forumGroup, seName, localized.LanguageId); } }
public ActionResult CreateForumGroup(ForumGroupModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageForums)) return AccessDeniedView(); if (ModelState.IsValid) { var forumGroup = model.ToEntity(); forumGroup.CreatedOnUtc = DateTime.UtcNow; forumGroup.UpdatedOnUtc = DateTime.UtcNow; _forumService.InsertForumGroup(forumGroup); NotifySuccess(_localizationService.GetResource("Admin.ContentManagement.Forums.ForumGroup.Added")); return continueEditing ? RedirectToAction("EditForumGroup", new { forumGroup.Id }) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form return View(model); }
private void PrepareForumGroupModel(ForumGroupModel model, ForumGroup forumGroup, bool excludeProperties) { if (model == null) throw new ArgumentNullException("model"); var allStores = _commonServices.StoreService.GetAllStores(); model.AvailableStores = allStores.Select(s => s.ToModel()).ToList(); if (forumGroup != null) { model.CreatedOn = _dateTimeHelper.ConvertToUserTime(forumGroup.CreatedOnUtc, DateTimeKind.Utc); } if (!excludeProperties) { if (forumGroup != null) model.SelectedStoreIds = _storeMappingService.GetStoresIdsWithAccess(forumGroup); else model.SelectedStoreIds = new int[0]; } ViewBag.StoreCount = allStores.Count; }
public ActionResult EditForumGroup(ForumGroupModel model, bool continueEditing) { if (!_services.Permissions.Authorize(StandardPermissionProvider.ManageForums)) return AccessDeniedView(); var forumGroup = _forumService.GetForumGroupById(model.Id); if (forumGroup == null) return RedirectToAction("List"); if (ModelState.IsValid) { forumGroup = model.ToEntity(forumGroup); forumGroup.UpdatedOnUtc = DateTime.UtcNow; _forumService.UpdateForumGroup(forumGroup); model.SeName = forumGroup.ValidateSeName(model.SeName, forumGroup.Name, true); _urlRecordService.SaveSlug(forumGroup, model.SeName, 0); UpdateLocales(model, forumGroup); _storeMappingService.SaveStoreMappings<ForumGroup>(forumGroup, model.SelectedStoreIds); NotifySuccess(_services.Localization.GetResource("Admin.ContentManagement.Forums.ForumGroup.Updated")); return continueEditing ? RedirectToAction("EditForumGroup", forumGroup.Id) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form PrepareForumGroupModel(model, forumGroup, true); return View(model); }
public ActionResult CreateForumGroup() { if (!_services.Permissions.Authorize(StandardPermissionProvider.ManageForums)) return AccessDeniedView(); var model = new ForumGroupModel { DisplayOrder = 1 }; AddLocales(_languageService, model.Locales); PrepareForumGroupModel(model, null, false); return View(model); }