public string Edit([FromBody] CreateCarouselModel model) { if (ModelState.IsValid) { var carousel = db.Carousel.Where(p => p.Id == model.Id).FirstOrDefault(); if (carousel != null) { carousel.Title = model.Title; carousel.Description = model.Description; carousel.Display = model.Display; carousel.DisplayDate = model.DisplayDate; carousel.TextLocation = (int)model.TextLocation; carousel.FreeTextArea = model.FreeTextArea; carousel.LastModifiedBy = model.LastModifiedBy; carousel.LastModifiedDate = DateTime.Now; db.Entry(carousel).State = EntityState.Modified; //files 1 var attachments1 = db.CarouselFile.Where(s => s.ParentId == model.Id).ToList(); if (attachments1 != null) { if (model.CoverPictures == null) { foreach (var attachment in attachments1) { attachment.FileDocument.Display = false; db.FileDocument.Attach(attachment.FileDocument); db.Entry(attachment.FileDocument).Property(m => m.Display).IsModified = true; db.CarouselFile.Remove(attachment); } } else { foreach (var attachment in attachments1) { if (!model.CoverPictures.Any(u => u.Id == attachment.FileDocument.Id)) { attachment.FileDocument.Display = false; db.FileDocument.Attach(attachment.FileDocument); db.Entry(attachment.FileDocument).Property(m => m.Display).IsModified = true; db.CarouselFile.Remove(attachment); } } } } foreach (var fileid in model.CoverFilesId) { var coverfile = new CarouselFile { FileId = fileid, ParentId = carousel.Id }; db.CarouselFile.Add(coverfile); } db.SaveChanges(); return(model.Title); } } return(""); }
// GET: CarouselManagement/Carousel/Create public ActionResult Create() { var model = new CreateCarouselModel(); return(View(model)); }
public async Task <ActionResult> Create(CreateCarouselModel model, string Submittype) { if (model.CoverPictures.Count() == 0 && model.CoverPictureFiles.Count() == 0) { ModelState.AddModelError("CoverPictures", "Please upload an image"); } else { //validate file foreach (var file in model.CoverPictureFiles) { if (!FileMethod.IsValidType(file, filter_imgs)) { ModelState.AddModelError("CoverPictures", Language.Carousel.ValidAttachment); break; } } } if (ModelState.IsValid) { var apimodel = new CreateCarouselModelNoFile { Title = model.Title, Description = model.Description, Display = model.Display, DisplayDate = model.DisplayDate, TextLocation = model.TextLocation, FreeTextArea = model.FreeTextArea, CoverPictures = model.CoverPictures, CreatedBy = model.CreatedBy, CreatedDate = model.CreatedDate }; if (model.CoverPictureFiles.Count() > 0) { var files = await FileMethod.UploadFile(model.CoverPictureFiles.ToList(), CurrentUser.UserId, "carousel"); if (files != null) { apimodel.CoverFilesId = files.Select(f => f.Id).ToList(); } } var response = await WepApiMethod.SendApiAsync <string>(HttpVerbs.Post, $"Carousels/Carousel/Create", apimodel); if (response.isSuccess) { string[] resparray = response.Data.Split('|'); string newid = resparray[0]; string title = resparray[1]; if ((model.CoverPictureFiles.Count() > 0)) { await UploadImageFiles(int.Parse(newid), model.CoverPictureFiles.First()); } await LogActivity(Modules.CarouselManagement, "Create New Carousel: " + title); if (Submittype == "Save") { TempData["SuccessMessage"] = "New Carousel titled " + title + " created successfully and saved as draft."; return(RedirectToAction("Index", "Carousel", new { area = "CarouselManagement" })); } else { return(RedirectToAction("Details", "Carousel", new { area = "CarouselManagement", @id = newid })); } } else { TempData["SuccessMessage"] = "Failed to create new Carousel."; return(RedirectToAction("Index", "Carousel", new { area = "CarouselManagement" })); } } return(View(model)); }
public async Task <ActionResult> Edit(CreateCarouselModel model, string Submittype) { if (model.CoverPictures.Count() == 0 && model.CoverPictureFiles.Count() == 0) { ModelState.AddModelError("CoverPictures", "Please upload an image"); } else { //validate file foreach (var file in model.CoverPictureFiles) { if (!FileMethod.IsValidType(file, filter_imgs)) { ModelState.AddModelError("CoverPictures", Language.Carousel.ValidAttachment); break; } } } if (ModelState.IsValid) { var apimodel = new CreateCarouselModel { Id = model.Id, Title = model.Title, Description = model.Description, Display = model.Display, DisplayDate = model.DisplayDate, TextLocation = model.TextLocation, FreeTextArea = model.FreeTextArea, LastModifiedBy = CurrentUser.UserId, CoverPictures = model.CoverPictures }; //attachment 1: cover pics if (model.CoverPictureFiles.Count() > 0) { var files = await FileMethod.UploadFile(model.CoverPictureFiles.ToList(), CurrentUser.UserId, "carousel"); if (files != null) { apimodel.CoverFilesId = files.Select(f => f.Id).ToList(); } } var response = await WepApiMethod.SendApiAsync <string>(HttpVerbs.Post, $"Carousels/Carousel/Edit", apimodel); if (response.isSuccess) { await LogActivity(Modules.CarouselManagement, "Edit Carousel: " + response.Data, model); if (Submittype == "Save") { TempData["SuccessMessage"] = "Carousel titled " + response.Data + " updated successfully and saved as draft."; return(RedirectToAction("Index", "Carousel", new { area = "CarouselManagement" })); } else { TempData["SuccessMessage"] = "Carousel titled " + response.Data + " updated successfully."; return(RedirectToAction("Details", "Carousel", new { area = "CarouselManagement", @id = model.Id })); } } else { TempData["ErrorMessage"] = "Failed to edit Publication."; return(RedirectToAction("Edit", "Carousel", new { area = "CarouselManagement", @id = model.Id })); } } return(View(model)); }