Exemple #1
0
        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));
        }
Exemple #2
0
        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"));
        }