public ActionResult Create(ArticleModel model, bool continueEditing) { if (ModelState.IsValid) { var article = model.ToEntity(); article.CreateDate = DateTime.Now; article.UpdateDate = DateTime.Now; if (model.CategoryId == 0) { article.CategoryId = null; } //标签 foreach (var id in model.SelectedTags) { article.Tags.Add(_articleService.GetTagById(id)); } _articleService.InsertArticle(article); SuccessNotification("添加成功"); return(continueEditing ? RedirectToAction("Edit", new { id = article.Id }) : RedirectToAction("List")); } PrepareModel(model); return(View(model)); }
public ActionResult Edit(ArticleModel model, bool continueEditing) { var article = _articleService.GetArticleById(model.Id); if (ModelState.IsValid) { int prevPictureId = article.PictureId; article = model.ToEntity(article); article.UpdateDate = DateTime.Now; if (model.CategoryId == 0) { article.CategoryId = null; } //标签 var allTags = _articleService.GetAllTag().ToList(); foreach (var tag in allTags) { if (model.SelectedTags != null && model.SelectedTags.Contains(tag.Id)) { if (article.Tags.Count(t => t.Id == tag.Id) == 0) { article.Tags.Add(tag); } } else { if (article.Tags.Count(t => t.Id == tag.Id) > 0) { article.Tags.Remove(tag); } } } _articleService.UpdateArticle(article); //图片处理, 删除旧图片 if (prevPictureId > 0 && prevPictureId != article.PictureId) { var prevPicture = _pictureService.GetPictureById(prevPictureId); if (prevPicture != null) { _pictureService.DeletePicture(prevPicture); } } SuccessNotification("保存成功"); return(continueEditing ? RedirectToAction("Edit", new { id = article.Id }) : RedirectToAction("List")); } PrepareModel(model, article); return(View(model)); }
public ActionResult Edit(ArticleModel articleModel) { if (ModelState.IsValid) { articleModel.UpdateAt = DateTime.Now; Article article = articleModel.ToEntity(); articleCRUD.Update(article); return(RedirectToAction("Index")); } articleModel.CategorySelectItems = getCateGorys(); return(View(articleModel)); }
public ActionResult Create(ArticleModel articleModel) { if (ModelState.IsValid) { articleModel.ArticleID = Guid.NewGuid().ToString(); articleModel.CreateAt = DateTime.Now; articleModel.UpdateAt = DateTime.Now; string userID = HttpContext.Session["UserID"] as string; articleModel.UserID = userID; Article article = articleModel.ToEntity(); articleCRUD.Create(article); return(RedirectToAction("Index")); } articleModel.CategorySelectItems = getCateGorys(); return(View(articleModel)); }
public async Task <ArticleModel> CreateArticle(Guid userId, Guid courseId, ArticleModel articleModel) { // TODO work with files var userCourse = await Db.ApplicationUserCourses.Include(uc => uc.Course) .Where(uc => uc.ApplicationUserId == userId && uc.CourseId == courseId && uc.IsOwner) .SingleOrDefaultAsync(); if (userCourse == null) { return(null); } var article = articleModel.ToEntity(); userCourse.Course.Articles.Add(article); await Db.SaveChangesAsync(); return(article.ToDto(article.InformationBlocks)); }
public async Task <ArticleModel> UpdateArticleAsync(ArticleModel model) { model = model ?? throw new ArgumentNullException(nameof(model)); try { Article entity = await this.repo.UpdateArticleAsync(model.ToEntity()).ConfigureAwait(false); if (entity == null) { return(null); } ArticleModel updatedModel = new ArticleModel(); updatedModel.ToModel(entity); return(updatedModel); } catch { throw; } }
public string NewsEdit(ArticleModel model) { //#region 操作日志 ////yungchu ////敏感字-无 //BizLog bizlog = new BizLog() //{ // Summary = "新闻编辑", // KeywordType = KeywordType.ArticleId, // Keyword = model.ArticleID.ToString(), // UserCode = _workContext.User.UserUame, // UserRealName = _workContext.User.UserUame, // UserType = UserType.LMS_User, // SystemCode = SystemType.LMS, // ModuleName = "新闻管理" //}; //_operateLogServices.WriteLog(bizlog, model); //#endregion model.LastUpdatedBy = _workContext.User == null ? "" : _workContext.User.UserUame; model.LastUpdatedOn = DateTime.Now; return(_newService.UpdateNews(model.ToEntity <Article>())); }
/// <summary> /// /// </summary> /// <param name="model"></param> /// <param name="fileFolderPath">Need folders {fileFolderPath}/Files/ArticleFiles</param> /// <returns></returns> public async Task <ArticleModel> CreateArticleAsync(ArticleModel model, string fileFolderPath) { model = model ?? throw new ArgumentNullException(nameof(model)); fileFolderPath = fileFolderPath ?? throw new ArgumentNullException(nameof(fileFolderPath)); try { Article entity = await this.repo.CreateArticleAsync(model.ToEntity(), fileFolderPath).ConfigureAwait(false); if (entity == null) { return(null); } ArticleModel addedModel = new ArticleModel(); addedModel.ToModel(entity); return(addedModel); } catch { throw; } }
public ActionResult Create(ArticleModel model, HttpPostedFileBase datafile) { string command = Request.Form["submit"].ToString(); switch (command) { case "Save": case "SaveAndContinueEdit": var alias = Util.GetSEOAlias(model.Name); var checkArticle = _articleService.GetArticleByAlias(alias, model.CategoryId); if (checkArticle != null) { ModelState.AddModelError("Name", "Alias đã được sử dụng"); } if (ModelState.IsValid) { if (model.CategoryId > 0) { var category = _categoryService.GetCategoryById(model.CategoryId); if (category == null) { ErrorNotification("Danh mục không tồn tại."); return(View(model)); } } var now = DateTime.Now; if (datafile != null) { string[] fileExtensions = { ".jpg", ".jpeg", ".gif", ".png" }; string extension = Path.GetExtension(datafile.FileName).ToLower(); if (fileExtensions.Contains(extension)) { string currentDir = _rootDir; var filePath = _rootDir + datafile.FileName; if (!Directory.Exists(Server.MapPath(currentDir))) { Directory.CreateDirectory(Server.MapPath(currentDir)); } var path = Path.Combine(Server.MapPath(currentDir), Path.GetFileName(datafile.FileName)); datafile.SaveAs(path); model.ImgPath = filePath; } } if (model.Description == null) { model.Description = ""; } try { var article = model.ToEntity(); article.CategoryId = model.CategoryId; article.Name = model.Name; article.CreatedOn = now; article.ModifiedOn = now; article.Content = model.Content; article.Status = model.Status; article.Description = model.Description; article.ImgPath = model.ImgPath; article.MetaTitle = model.MetaTitle; article.MetaDescription = model.MetaDescription; article.Alias = Util.GetSEOAlias(model.Name); model.IsHighlight = model.IsHighlight; _articleService.AddArticle(article); SuccessNotification("Thêm mới bài viết thành công!"); if (command == "SaveAndContinueEdit") { Title = "Thêm mới bài viết : " + article.Name; } else { return(RedirectToAction("Index")); } } catch (Exception e) { ErrorNotification(e.ToString()); } } else { AddModelStateErrors(); } break; default: ErrorNotification("Không rõ phương thức submit dữ liệu"); return(RedirectToAction("Index")); } model.ListCategories = _categoryService.GetAllCategory().ToList(); Title = "Thêm mới danh mục"; ViewData["ToolbarTitle"] = Title; return(View(model)); }
public string AddNews(ArticleModel model) { model.CreatedBy = _workContext.User == null?"": _workContext.User.UserUame; model.CreatedOn = DateTime.Now; return(_newService.AddNews(model.ToEntity <Article>())); }
public ActionResult Edit(ArticleModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageNews)) return AccessDeniedView(); var article = _articleService.GetArticleById(model.Id); if (article == null) //No news item found with the specified id return RedirectToAction("List"); if (ModelState.IsValid) { article = model.ToEntity(article); article.StartDateUtc = model.StartDate; article.EndDateUtc = model.EndDate; _articleService.UpdateArticle(article); //search engine name model.SeName = article.ValidateSeName(model.SeName, article.Title, true); _urlRecordService.SaveSlug(article, model.SeName, 0); //locales UpdateLocales(article, model); _articleService.UpdateArticle(article); SuccessNotification(_localizationService.GetResource("Toi.Plugin.Misc.Articles.Article.Updated")); return continueEditing ? RedirectToAction("Edit", new { id = article.Id }) : RedirectToAction("List"); } PrepareArticleModel(model); return View(model); }
public ActionResult Create(ArticleModel model, bool continueEditing) { if (ModelState.IsValid) { var article = model.ToEntity(); article.StartDateUtc = model.StartDate; article.EndDateUtc = model.EndDate; article.CreatedOnUtc = DateTime.UtcNow; _articleService.InsertArticle(article); //search engine name model.SeName = article.ValidateSeName(model.SeName, article.Title, true); _urlRecordService.SaveSlug(article, model.SeName, 0); //locales UpdateLocales(article, model); _articleService.UpdateArticle(article); SuccessNotification(_localizationService.GetResource("Toi.Plugin.Misc.Articles.Article.Added")); return continueEditing ? RedirectToAction("Edit", new { id = article.Id }) : RedirectToAction("List"); } return View(model); }