public ActionResult AnswerEvent(int groupId, int eventId, bool answer) { var service = new Service(); User user = service.GetUser(User.Identity.Name); if (service.IsInvitedToEvent(user.UserID, eventId)) { Event theEvent = service.GetEventById(eventId); EventViewModel model = service.CastToViewModel(theEvent, null); if (model.State == State.FULL) { TempData["message"] = new Message("This event is already full", MessageType.INFORMATION); } else if (answer && (model.State == State.OFF || model.State == State.ON)) { TempData["message"] = new Message("This event has expired", MessageType.INFORMATION); } else if (service.AnswerEvent(user.UserID, eventId, answer)) { if (answer) { TempData["message"] = new Message("You are listed as an attendee of " + theEvent.Name, MessageType.SUCCESS); } else { TempData["message"] = new Message("You declined the invitation to " + theEvent.Name, MessageType.SUCCESS); } } else { TempData["message"] = new Message("An error occured when processing your request, please try again later.", MessageType.ERROR); } } else { TempData["message"] = new Message("Either the event you are trying to access doesn't exist or you do not have sufficient access to it.", MessageType.INFORMATION); } if (Request.IsAjaxRequest()) { return Json(new { id = eventId, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet); } return RedirectToAction("Index"); }
public ActionResult Comment(int eventId, string content) { var service = new Service(); User user = service.GetUser(User.Identity.Name); if (String.IsNullOrEmpty(content)) { } else if (service.IsInvitedToEvent(user.UserID, eventId)) { Comment myComment = new Comment(); myComment.Content = content; myComment.Active = true; myComment.OwnerId = user.UserID; myComment.CreationTime = DateTime.Now; if (!service.CreateComment(eventId, ref myComment)) { TempData["Message"] = new Message("An Error occured when processing your event, please try again later", MessageType.ERROR); } } else { TempData["message"] = new Message("Either the event you are trying to access doesn't exist or you do not have sufficient access to it.", MessageType.INFORMATION); } if (Request.IsAjaxRequest()) { return Json(new { id = eventId, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet); } return RedirectToAction("Index"); }