Пример #1
0
        public ActionResult AcceptCongressCandidate(int candidateID)
        {
            var entity = SessionHelper.CurrentEntity;

            if (!entity.Is(EntityTypeEnum.Citizen))
            {
                return(RedirectToHomeWithError());
            }

            var citizen = entity.Citizen;

            if (citizen.PartyMember == null)
            {
                return(RedirectToHomeWithError());
            }

            var candidate = congressCandidateVotingRepository.GetCandidate(candidateID);
            var party     = candidate.Party;

            if (partyService.CanAcceptCongressCandidates(citizen, party))
            {
                partyService.AcceptCongressCandidate(candidate);
                AddInfo(string.Format("You accepted {0} as congress candidate", candidate.Citizen.Entity.Name));

                return(RedirectToAction("CongressCandidates", new { partyID = party.ID }));
            }

            return(RedirectToHomeWithError());
        }