public Entities.ActionResponses.VoteToKick Execute(Entities.GamePlayerKickVote vote)
{
Entities.ActionResponses.VoteToKick response = new Entities.ActionResponses.VoteToKick();
Entities.Filters.Game.Select filter = new Entities.Filters.Game.Select();
filter.DataToSelect = Entities.Enums.Game.Select.None;
filter.GameID = vote.GameID;
Entities.Game game = _selectGame.Execute(filter);
if (game.IsCurrentPlayer(vote.VotedUserId))
{
response = _insert.Execute(vote);
response.ResponseCode = Entities.ActionResponses.Enums.VoteToKick.VoteSuccessful;
response.Game = game;
if (vote.Vote)
{
response.VotesToKick++;
}
else
{
response.VotesToStay++;
}
return response;
}
else
{
response.ResponseCode = Entities.ActionResponses.Enums.VoteToKick.IneligiblePlayerToVote;
return response;
}
}