public ActionResult Create(DiyProjectModel model, bool continueEditing) { if (ModelState.IsValid) { var diyProject = model.ToEntity(); diyProject.CreatedOnUtc = DateTime.UtcNow; _diyService.InsertDiyProject(diyProject); //search engine name model.SeName = diyProject.ValidateSeName(model.SeName, diyProject.Title, true); _urlRecordService.SaveSlug(diyProject, model.SeName, 0); //locales UpdateLocales(diyProject, model); _diyService.UpdateDiyProject(diyProject); SuccessNotification(_localizationService.GetResource("Toi.Plugin.Misc.DoItYourself.DiyProject.Added")); return continueEditing ? RedirectToAction("Edit", new { id = diyProject.Id }) : RedirectToAction("List"); } //parent diyProjectGroups model.DiyGroups = new List<DropDownItem> { new DropDownItem { Text = "[None]", Value = "0" } }; if (model.DiyGroupId > 0) { var parentBranchGroup = _diyService.GetDiyGroupById(model.DiyGroupId); if (parentBranchGroup != null && !parentBranchGroup.Deleted) model.DiyGroups.Add(new DropDownItem { Text = parentBranchGroup.GetFormattedBreadCrumb(_diyService), Value = parentBranchGroup.Id.ToString() }); else model.DiyGroupId = 0; } return View(model); }
public ActionResult Create() { ViewBag.AllLanguages = _languageService.GetAllLanguages(true); var model = new DiyProjectModel(); AddLocales(_languageService, model.Locales); model.Published = true; model.DiyGroups = new List<DropDownItem> { new DropDownItem { Text = "[None]", Value = "0" } }; return View(model); }
public ActionResult Detail(int id) { var project = _diyService.GetDiyProjectById(id); if (project == null) return InvokeHttp404(); var model = new DiyProjectModel(); model.Id = project.Id; model.Full = project.GetLocalized(x => x.Full); model.Short = project.GetLocalized(x => x.Short); model.SeName = project.GetLocalized(x => x.SeName); model.MetaDescription = project.GetLocalized(x => x.MetaDescription); model.MetaKeywords = project.GetLocalized(x => x.MetaKeywords); model.MetaTitle = project.GetLocalized(x => x.MetaTitle); model.Title = project.GetLocalized(x => x.Title); model.PictureModel = new PictureModel { FullSizeImageUrl = _pictureService.GetPictureUrl(model.PictureId), ImageUrl = _pictureService.GetPictureUrl(model.PictureId, _diySettings.DiyProjectThumbPictureSize) }; return View(model); }
private void PrepareDiyProjectModel(DiyProjectModel model) { if (model == null) { throw new ArgumentNullException("DiyProjectModel"); } model.NumberOfAvailableGroups = _diyService.GetAllDiyGroups().Count; }
protected void UpdateLocales(DiyProject diyProject, DiyProjectModel model) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(diyProject, x => x.Title, localized.Title, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.Short, localized.MetaKeywords, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.Full, localized.MetaKeywords, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.MetaKeywords, localized.MetaKeywords, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.MetaDescription, localized.MetaDescription, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.MetaTitle, localized.MetaTitle, localized.LanguageId); _localizedEntityService.SaveLocalizedValue(diyProject, x => x.SeName, localized.SeName, localized.LanguageId); } }
public ActionResult Edit(DiyProjectModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageNews)) return AccessDeniedView(); var diyProject = _diyService.GetDiyProjectById(model.Id); if (diyProject == null) //No news item found with the specified id return RedirectToAction("List"); if (ModelState.IsValid) { diyProject = model.ToEntity(diyProject); _diyService.UpdateDiyProject(diyProject); //search engine name model.SeName = diyProject.ValidateSeName(model.SeName, diyProject.Title, true); _urlRecordService.SaveSlug(diyProject, model.SeName, 0); //locales UpdateLocales(diyProject, model); _diyService.UpdateDiyProject(diyProject); SuccessNotification(_localizationService.GetResource("Toi.Plugin.Misc.DoItYourself.DiyProject.Updated")); return continueEditing ? RedirectToAction("Edit", new { id = diyProject.Id }) : RedirectToAction("List"); } PrepareDiyProjectModel(model); //parent diyProjectGroups model.DiyGroups = new List<DropDownItem> { new DropDownItem { Text = "[None]", Value = "0" } }; if (model.DiyGroupId > 0) { var parentBranchGroup = _diyService.GetDiyGroupById(model.DiyGroupId); if (parentBranchGroup != null && !parentBranchGroup.Deleted) model.DiyGroups.Add(new DropDownItem { Text = parentBranchGroup.GetFormattedBreadCrumb(_diyService), Value = parentBranchGroup.Id.ToString() }); else model.DiyGroupId = 0; } return View(model); }