public ActionResult Current() { var current = voteRepository.FindCurrent(); if ( current == null ) return View(); var answers = voteRepository.FindVoteAnswers( current.id ); var votesByUsers = voteRepository.FindVotesByUser( current.id ); var total = votesByUsers.Count(); foreach (var answer in answers) { var orderN = answer.order_n; var answerCount = votesByUsers.Where( a => a.answer_n == orderN ).Count(); ViewData["CountOfAnswer" + orderN] = answerCount; var percent = total != 0 ? answerCount * 100 / total : 0; ViewData["PercentOfAnswer" + orderN] = percent; } ViewData["AlreadyVoted"] = false; if (User.Identity.IsAuthenticated) { var currentUserId = voteRepository.GetUserId( User.Identity.Name ); if (votesByUsers.Where( v => v.user_id == currentUserId ).Count() != 0) { ViewData["AlreadyVoted"] = true; } } var voting = new Voting{ Vote = current, Answers = answers }; return View( voting ); }
public ActionResult Edit(Int64 id) { var vote = voteRepository.GetVote( id ); var voteAnswers = voteRepository.FindVoteAnswers( id ); var voting = new Voting {Vote = vote, Answers = voteAnswers}; return View( voting ); }