public Publication EditPublication(PublicationBindingModel model) { var publication = this.DbContext.Publications .Include(p => p.Section) .FirstOrDefault(p => p.Id == model.Id); publication.Section.Name = model.Section; publication.Title = model.Title; publication.Description = model.Description; this.DbContext.Publications.Update(publication); this.DbContext.SaveChanges(); return(publication); }
[Authorize] // To use this for API makes AuthControler public IActionResult CreatePublication([FromBody] PublicationBindingModel model) { if (!this.ModelState.IsValid) { return(BadRequest(this.ModelState)); } User author = this.userManager.GetUserAsync(this.User).Result; var section = this.identityService.GetSectionByName(model.Section); if (author == null || section == null) { return(NotFound()); } var publication = this.identityService.CreatePublication(author, section, model.Title, model.Description); return(CreatedAtAction("Details", new { id = publication.Id })); }
public IActionResult Edit(PublicationBindingModel model) { if (!ModelState.IsValid) { return(View()); } var publication = this.adminPublicationsService.EditPublication(model); if (publication == null) { return(NotFound()); } this.TempData.Put("__Message", new MessageModel() { Type = MessageType.Success, Message = WebConstants.PublicationEditSuccess }); return(Redirect($"/Publications/Details/{model.Id}")); }
public PublicationBindingModel GetPublication(int id) { var publiction = this.DbContext.Publications .Include(p => p.Author) .Include(p => p.Section) .FirstOrDefault(s => s.Id == id); if (publiction == null) { return(null); } var model = new PublicationBindingModel() { Title = publiction.Title, Section = publiction.Section.Name, Description = publiction.Description, Author = publiction.Author.UserName }; return(model); }
public ActionResult NewPublication(Guid profileId, PublicationBindingModel form) { var profile = _uow.Profiles.FindById(profileId); profile.AddUserPublication(form.ISSN, form.Title, form.Brief, form.Authors, form.Publisher, form.PublishedDate); _uow.Save(); return RedirectToAction<UserProfileController>(c => c.Index()); }
public ActionResult NewPublication(Guid profileId) { var vm = new PublicationBindingModel() { ProfileId = profileId, PublishedDate = DateTime.Today }; return View(vm); }