public ActionResult EditContentItem(long?contentItemId = null, int?contentTypeId = null) { pageResourceManager.InsertTitlePart("编辑资讯"); var metadataService = new MetadataService(); ContentTypeDefinition contentType = null; ContentItem item = null; if (contentItemId.HasValue && contentItemId.Value > 0) { item = contentItemService.Get(contentItemId.Value); if (item == null) { return(HttpNotFound()); } contentType = item.ContentType; } else { if (contentTypeId.HasValue && contentTypeId.Value > 0) { contentType = metadataService.GetContentType(contentTypeId.Value); } else { contentType = metadataService.GetContentTypes(true).FirstOrDefault(); } if (contentType == null) { return(HttpNotFound()); } } ContentItemEditModel model = TempData.Get <ContentItemEditModel>("ContentItemEditModel", null); if (model == null) { if (item != null) { model = item.AsEditModel(); } else { model = new ContentItemEditModel { ContentTypeId = contentType.ContentTypeId, ReleaseDate = DateTime.Now }; } } else { TempData.Remove("ContentItemEditModel"); } ViewData["contentItem"] = item; return(View(contentItemId.HasValue ? contentType.Page_Edit : contentType.Page_New, model)); }
public ActionResult EditContentItem(ContentItemEditModel model) { ContentItem item = model.AsContentItem(Request); try { if (item.ContentItemId > 0) { contentItemService.Update(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "更新成功"); //清除标签 tagService.ClearTagsFromItem(item.ContentItemId, item.UserId); } else { item.GlobalStickyDate = ValueUtility.GetSafeSqlDateTime(DateTime.MinValue); item.FolderStickyDate = ValueUtility.GetSafeSqlDateTime(DateTime.MinValue); contentItemService.Create(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "创建成功"); } } catch (Exception) { TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Error, "创建或者更新失败,请重试"); TempData["ContentItemEditModel"] = model; return(Redirect(SiteUrls.Instance().EditContentItem(item.ContentItemId))); } if (model.TagNames != null) { string tags = string.Join(",", model.TagNames); if (!string.IsNullOrEmpty(tags)) { tagService.AddTagsToItem(tags, item.UserId, item.ContentItemId); } } if (item.ContentType != null && item.ContentType.ContentTypeKey == ContentTypeKeys.Instance().NewsLink()) { return(Redirect(SiteUrls.Instance().FolderDetail(item.ContentFolderId))); } return(Redirect(SiteUrls.Instance().ContentItemDetail(item.ContentItemId))); }
public ActionResult Contribute(ContentItemEditModel model) { ContentItem item = model.AsContentItem(Request); var contentItemService = new ContentItemService(); string errorMessage = string.Empty; if (item.ContentItemId > 0) { if (!authorizer.CMS_EditContentItem(item)) { errorMessage = "没有权限编辑资讯:" + item.Title; return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl))); } } else { if (!authorizer.CMS_Contribute(out errorMessage)) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl))); } } try { if (item.ContentItemId > 0) { contentItemService.Update(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "更新成功"); //清除标签 tagService.ClearTagsFromItem(item.ContentItemId, item.UserId); } else { if (!authorizer.CMS_ManageContentFolder(item.ContentFolder)) { item.IsContributed = true; } item.ReleaseDate = DateTime.UtcNow; contentItemService.Create(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "创建成功"); } } catch { TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Error, "创建或者更新失败,请重试"); TempData["ContentItemEditModel"] = model; return(Redirect(SiteUrls.Instance().Contribute(item.ContentItemId))); } string tags = string.Join(",", model.TagNames); if (!string.IsNullOrEmpty(tags)) { tagService.AddTagsToItem(tags, item.UserId, item.ContentItemId); } return(Redirect(SiteUrls.Instance().ContentItemDetail(item.ContentItemId))); }
/// <summary> /// 投稿 /// </summary> /// <param name="contentItemId"></param> /// <returns></returns> public ActionResult Contribute(long?contentItemId = null) { pageResourceManager.InsertTitlePart("编辑资讯"); var metadataService = new MetadataService(); ContentTypeDefinition contentType = metadataService.GetContentType(ContentTypeKeys.Instance().News()); if (contentType == null) { return(HttpNotFound()); } if (UserContext.CurrentUser == null) { return(Redirect(SiteUrls.Instance().Login(true))); } ContentItemEditModel model = TempData.Get <ContentItemEditModel>("ContentItemEditModel", null); if (model == null) { ContentItem item = null; string errorMessage = string.Empty; if (contentItemId.HasValue && contentItemId.Value > 0) { item = new ContentItemService().Get(contentItemId.Value); if (item == null) { return(HttpNotFound()); } model = item.AsEditModel(); if (!authorizer.CMS_EditContentItem(item)) { errorMessage = "没有权限编辑资讯:" + item.Title; return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl))); } } else { model = new ContentItemEditModel { ContentTypeId = contentType.ContentTypeId }; if (!authorizer.CMS_Contribute(out errorMessage)) { return(Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl))); } } } else { TempData.Remove("ContentItemEditModel"); } return(View(contentItemId.HasValue ? contentType.Page_Edit : contentType.Page_New, model)); }
public ActionResult EditContentItem(ContentItemEditModel model) { ContentItem item = model.AsContentItem(Request); try { if (item.ContentItemId > 0) { contentItemService.Update(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "更新成功"); //清除标签 tagService.ClearTagsFromItem(item.ContentItemId, item.UserId); } else { item.GlobalStickyDate = ValueUtility.GetSafeSqlDateTime(DateTime.MinValue); item.FolderStickyDate = ValueUtility.GetSafeSqlDateTime(DateTime.MinValue); contentItemService.Create(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "创建成功"); } } catch (Exception) { TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Error, "创建或者更新失败,请重试"); TempData["ContentItemEditModel"] = model; return Redirect(SiteUrls.Instance().EditContentItem(item.ContentItemId)); } if (model.TagNames != null) { string tags = string.Join(",", model.TagNames); if (!string.IsNullOrEmpty(tags)) { tagService.AddTagsToItem(tags, item.UserId, item.ContentItemId); } } if (item.ContentType != null && item.ContentType.ContentTypeKey == ContentTypeKeys.Instance().NewsLink()) return Redirect(SiteUrls.Instance().FolderDetail(item.ContentFolderId)); return Redirect(SiteUrls.Instance().ContentItemDetail(item.ContentItemId)); }
public ActionResult EditContentItem(long? contentItemId = null, int? contentTypeId = null) { pageResourceManager.InsertTitlePart("编辑资讯"); var metadataService = new MetadataService(); ContentTypeDefinition contentType = null; ContentItem item = null; if (contentItemId.HasValue && contentItemId.Value > 0) { item = contentItemService.Get(contentItemId.Value); if (item == null) return HttpNotFound(); contentType = item.ContentType; } else { if (contentTypeId.HasValue && contentTypeId.Value > 0) contentType = metadataService.GetContentType(contentTypeId.Value); else contentType = metadataService.GetContentTypes(true).FirstOrDefault(); if (contentType == null) return HttpNotFound(); } ContentItemEditModel model = TempData.Get<ContentItemEditModel>("ContentItemEditModel", null); if (model == null) { if (item != null) { model = item.AsEditModel(); } else { model = new ContentItemEditModel { ContentTypeId = contentType.ContentTypeId, ReleaseDate = DateTime.Now }; } } else { TempData.Remove("ContentItemEditModel"); } ViewData["contentItem"] = item; return View(contentItemId.HasValue ? contentType.Page_Edit : contentType.Page_New, model); }
public ActionResult Contribute(ContentItemEditModel model) { ContentItem item = model.AsContentItem(Request); var contentItemService = new ContentItemService(); string errorMessage = string.Empty; if (item.ContentItemId > 0) { if (!authorizer.CMS_EditContentItem(item)) { errorMessage = "没有权限编辑资讯:" + item.Title; return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl)); } } else { if (!authorizer.CMS_Contribute(out errorMessage)) { return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl)); } } try { if (item.ContentItemId > 0) { contentItemService.Update(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "更新成功"); //清除标签 tagService.ClearTagsFromItem(item.ContentItemId, item.UserId); } else { if (!authorizer.CMS_ManageContentFolder(item.ContentFolder)) item.IsContributed = true; item.ReleaseDate = DateTime.UtcNow; contentItemService.Create(item); TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Success, "创建成功"); } } catch { TempData["StatusMessageData"] = new StatusMessageData(StatusMessageType.Error, "创建或者更新失败,请重试"); TempData["ContentItemEditModel"] = model; return Redirect(SiteUrls.Instance().Contribute(item.ContentItemId)); } string tags = string.Join(",", model.TagNames); if (!string.IsNullOrEmpty(tags)) { tagService.AddTagsToItem(tags, item.UserId, item.ContentItemId); } return Redirect(SiteUrls.Instance().ContentItemDetail(item.ContentItemId)); }
/// <summary> /// 投稿 /// </summary> /// <param name="contentItemId"></param> /// <returns></returns> public ActionResult Contribute(long? contentItemId = null) { pageResourceManager.InsertTitlePart("编辑资讯"); var metadataService = new MetadataService(); ContentTypeDefinition contentType = metadataService.GetContentType(ContentTypeKeys.Instance().News()); if (contentType == null) return HttpNotFound(); if (UserContext.CurrentUser == null) return Redirect(SiteUrls.Instance().Login(true)); ContentItemEditModel model = TempData.Get<ContentItemEditModel>("ContentItemEditModel", null); if (model == null) { ContentItem item = null; string errorMessage = string.Empty; if (contentItemId.HasValue && contentItemId.Value > 0) { item = new ContentItemService().Get(contentItemId.Value); if (item == null) return HttpNotFound(); model = item.AsEditModel(); if (!authorizer.CMS_EditContentItem(item)) { errorMessage = "没有权限编辑资讯:" + item.Title; return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl)); } } else { model = new ContentItemEditModel { ContentTypeId = contentType.ContentTypeId }; if (!authorizer.CMS_Contribute(out errorMessage)) { return Redirect(SiteUrls.Instance().SystemMessage(TempData, new SystemMessageViewModel { Body = errorMessage, Title = "没有权限", StatusMessageType = StatusMessageType.Hint }, Request.RawUrl)); } } } else { TempData.Remove("ContentItemEditModel"); } return View(contentItemId.HasValue ? contentType.Page_Edit : contentType.Page_New, model); }