public ActionResult RegisterVote(int id, VoteModel sessionVoteModel = null) { var cookie = controllerInformationProvider.GetVotingCookie(); var vote = new RegisterVoteCommand { SessionId = id, CookieId = cookie.Id, TimeRecorded = controllerInformationProvider.UtcNow, IPAddress = controllerInformationProvider.GetIPAddress(), UserAgent = controllerInformationProvider.UserAgent, Referrer = controllerInformationProvider.Referrer, WebSessionId = controllerInformationProvider.SessionId }; if (controllerInformationProvider.IsLoggedIn()) { vote.UserId = controllerInformationProvider.GetCurrentUser().UserId; } if (sessionVoteModel != null) { if (sessionVoteModel.Width != 0 || sessionVoteModel.Height != 0) { vote.ScreenResolution = string.Format("{0}x{1}", sessionVoteModel.Width, sessionVoteModel.Height); } vote.PositionInList = sessionVoteModel.PositionInList; } messageBus.Send(vote); controllerInformationProvider.SaveVotingCookie(cookie); return RedirectOrReturnPartialView(id); }
public ActionResult RemoveVote(int id, VoteModel sessionVoteModel = null) { var cookie = controllerInformationProvider.GetVotingCookie(); var cookieId = cookie.Id; messageBus.Send(new DeleteVoteCommand { SessionId = id, CookieId = cookieId }); controllerInformationProvider.SaveVotingCookie(cookie); return RedirectOrReturnPartialView(id); }