public Response Confirm(int id) { var meetingRep = new MeetingRepository(); var meetingAccept = meetingRep.MeetingAccepts.FirstOrDefault(x => x.Id == id); if (meetingAccept == null) { return new BadRequestError("No such accept"); } var meeting = meetingRep.Meetings.FirstOrDefault(x => x.Id == meetingAccept.meetingId); if (meeting == null ) { return new InternalError("No such meeting"); } meeting.checkPermissions(GetUserId()); if (meeting.isOwner) { meeting.confirmer = meetingAccept.acceptorId; meetingRep.Update(meeting); } else { return new UnauthorizedError("Not owner"); } Notify.Confirm(meetingAccept); return Response(true); // todo: return }
public ActionResult Confirm(int id) { var meetingRep = new MeetingRepository(); var meetingAccept = meetingRep.MeetingAccepts.FirstOrDefault(x => x.Id == id); var meeting = meetingRep.Meetings.FirstOrDefault(x => x.Id == meetingAccept.meetingId); if (meeting == null || meetingAccept == null) { throw new Exception(); } meeting.checkPermissions(User.Identity.GetUserId()); if (meeting.isOwner) { meeting.confirmer = meetingAccept.acceptorId; meetingRep.Update(meeting); } else { throw new Exception(); } Notify.Confirm(meetingAccept); return PartialView(); }
public ActionResult Test() { ViewBag.Connection = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString; try{ var meetingRep = new MeetingRepository(); ViewBag.Message = meetingRep.Meetings.Count(); }catch(Exception exp){ ViewBag.Message = exp.Message; } ViewBag.Message += " \r\n "+ Request.ServerVariables["LOCAL_ADDR"]; ViewBag.Message += " \r\n " + Environment.MachineName; ViewBag.Message += " \r\n " + Environment.UserDomainName.ToString(); ViewBag.Message += " \r\n " + Environment.UserName; ViewBag.Message += " \r\n " + Environment.OSVersion.ToString(); ViewBag.Message += " \r\n " + (Environment.TickCount / (1000 * 60 * 60)) + "Hours"; ViewBag.Message += " \r\n " + DateTime.Now.ToLongDateString(); ViewBag.Message += " \r\n " + Request.ServerVariables["SERVER_SOFTWARE"]; ViewBag.Message += " \r\n " + Request.ServerVariables["HTTPS"]; ViewBag.Message += " \r\n " + Request.ServerVariables["PATH_INFO"]; ViewBag.Message += " \r\n " + Request.ServerVariables["PATH_TRANSLATED"]; ViewBag.Message += " \r\n " + Request.ServerVariables["SERVER_PORT"]; ViewBag.Message += " \r\n " + Session.SessionID; return View(); }
public Response Accept(int id, string message) { var accept = new MeetingAccept() { meetingId = id, acceptorId = GetUserId(), message = message }; var meetingRep = new MeetingRepository(); var meeting = meetingRep.Meetings.FirstOrDefault(x => x.Id == accept.meetingId); if (meeting == null) { return new BadRequestError("No such meeting"); } meeting.checkPermissions(GetUserId()); if (meeting.isOwner) { return new UnauthorizedError("Not for owner"); } if (meeting.IsAccepter) { return new BadRequestError("Already accepted"); } if (meeting.confirmer != null) { return new BadRequestError("Already confirmed"); } int acceptId = meetingRep.Create(accept); if (acceptId > 0) { return Response(acceptId); } return new InternalError(); }
public Response AcceptsList(int id) { var meetingRep = new MeetingRepository(); var meeting = meetingRep.Meetings.FirstOrDefault(x=> x.Id == id); if(meeting ==null){ return new BadRequestError(""); } meeting.checkPermissions(GetUserId()); if(!meeting.isOwner){ return new UnauthorizedError("Not owner"); } var acceptsList = CommonMapper.Map(meeting.MeetingAccepts.AsQueryable()); return Response(acceptsList); }
public Response test() { try { var accept = new MeetingRepository().MeetingAccepts.First(); var result = "hello"; Service.Notify.NewAccept(accept); return Response(new { result = true, message = result }); } catch (Exception exp) { return Response(new { result = false, message = exp.Message }); } }
public ActionResult Accept(MeetingAccept accept) { var meetingRep = new MeetingRepository(); var meeting = meetingRep.Meetings.FirstOrDefault(x => x.Id == accept.meetingId); if (meeting == null) { throw new Exception(); } if (meeting.confirmer != null) { throw new Exception(); } int id = meetingRep.Create(accept); if (id > 0) { Notify.NewAccept(accept); return View(true); } throw new Exception(); }
public ActionResult Create(MeetingViewModel meetingModel) { if (ModelState.IsValid) { int id = -1; var userId = User.Identity.GetUserId(); var meeting = CommonMapper.Map(meetingModel); meeting.creator = userId; var meetingRep = new MeetingRepository(); id = meetingRep.Create(meeting); if (id > -1) { Notify.NewMeeting(meeting); return RedirectToAction("Get", new { id = id }); } throw new Exception(); } else return View(meetingModel); }
public ActionResult Index() { var meetingRep = new MeetingRepository(); return View(meetingRep.Meetings); }
public ActionResult Details(int id) { var meeting = new MeetingRepository().Meetings.First(x=>x.Id == id); meeting.checkPermissions(User.Identity.GetUserId()); return View(meeting); }
public Response List(bool? confirmed=null) { var meetingRep = new MeetingRepository(); IQueryable<Meeting> meetings = null; if (!confirmed.HasValue) meetings = meetingRep.Meetings; else { if (confirmed.Value) { meetings = meetingRep.Meetings.Where(x => x.confirmer != null); } else { meetings = meetingRep.Meetings.Where(x => x.confirmer == null); } } var meetingsResponse = CommonMapper.Map(meetings); return Response(meetingsResponse); }
public Response History(string id = null) { if (id == null) { id = GetUserId(); } var meetingRep = new MeetingRepository(); var meetings = meetingRep.Meetings.Where( meeting => meeting.creator == GetUserId() || meeting.confirmer == GetUserId() || meeting.MeetingAccepts.Any(accept => accept.acceptorId == GetUserId()) ); foreach (var meeting in meetings) { meeting.checkPermissions(GetUserId()); } var meetingsResponse = CommonMapper.Map(meetings); return Response(meetingsResponse); }
public Response Get(int id) { var meeting = new MeetingRepository().Meetings.First(x => x.Id == id); meeting.checkPermissions(GetUserId()); var meetingApi = Mappers.CommonMapper.Map(meeting); return Response(meetingApi); }
public Response Create(float latitude, float longitude, int time, string description) { var meeting = new Meeting() { latitude = latitude.ToString(), longitude = longitude.ToString(), time = time, description = description }; if (ModelState.IsValid) { int id = -1; var userId = GetUserId(); meeting.creator = userId; var meetingRep = new MeetingRepository(); id = meetingRep.Create(meeting); if (id > -1) { Notify.NewMeeting(meeting); return Response(new { id = id }); } } else { return new BadRequestError(); } return new InternalError(); }