public ActionResult Create(Event @event) { ModelState.Remove("UserId"); if (ModelState.IsValid) { var newEvent = new Event(); HTMLHelper.BindModel(newEvent); newEvent.UserId = User.Identity.GetUserId(); if (newEvent.SaveOrUpdate()) { // save uploaded file var uploadedFiles = ImageHelper.SaveImageMultiple(); if (uploadedFiles.Count > 0) { foreach (var uploadFile in uploadedFiles) { ImageHelper.CompressImage(uploadFile, 360, 270); var eventImage = new EventImage(); eventImage.EventId = newEvent.Id; eventImage.ImagePath = uploadFile; eventImage.Title = "N/A"; eventImage.SaveOrUpdate(); // todo: use batch insert. } CacheHelper <EventImage> .Clear(); } SetSuccessMessage("Event created!"); CacheHelper <Event> .Clear(); return(Redirect("/Event/Create")); } } SetErrorMessage("Failed to create your event..."); return(View(@event)); }
public ActionResult Edit(int id, Event @event) { ModelState.Remove("UserId"); if (ModelState.IsValid) { var newEvent = db.Event.Find(id); if (newEvent == null || newEvent.UserId != User.Identity.GetUserId() || newEvent.State == -1) { return(HttpNotFound()); } HTMLHelper.BindModel(newEvent); newEvent.UserId = User.Identity.GetUserId(); if (newEvent.SaveOrUpdate()) { // save uploaded file var uploadedFiles = ImageHelper.SaveImageMultiple(); if (uploadedFiles.Count > 0) { foreach (var uploadFile in uploadedFiles) { ImageHelper.CompressImage(uploadFile, 360, 270); var eventImage = new EventImage(); eventImage.EventId = newEvent.Id; eventImage.ImagePath = uploadFile; eventImage.Title = "N/A"; eventImage.SaveOrUpdate(); // todo: use batch insert. } CacheHelper <EventImage> .Clear(); } SetSuccessMessage("Event Saved!"); CacheHelper <Event> .Clear(); return(Redirect("/Event/MyEvents")); } } SetErrorMessage("Failed to save your event..."); ViewData.Model = @event; return(View("Create")); }