コード例 #1
0
        public void CanAcceptCongressCandidatesAsPresident()
        {
            var president = citizenCreator.Create();

            partyCreator.AddMember(president, PartyRoleEnum.President);
            var party = partyCreator.Create();

            Assert.IsTrue(partyService.CanAcceptCongressCandidates(president, party));
        }
コード例 #2
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());
        }
コード例 #3
0
        public PartyCongressCandidateSectionViewModel(Entities.Party party, IPartyService partyService) : base(party.Country)
        {
            Info    = new PartyInfoViewModel(party);
            PartyID = party.ID;

            var entity     = SessionHelper.CurrentEntity;
            var lastVoting = party.Country.GetLastCongressCandidateVoting();


            var candidate = lastVoting.CongressCandidates.FirstOrDefault(c => c.CandidateID == entity.EntityID);

            if (candidate != null)
            {
                PlayerCongressCandidateStatus = (CongressCandidateStatusEnum)candidate.CongressCandidateStatusID;
            }
            if (entity.Citizen != null)
            {
                if (partyService.CanAcceptCongressCandidates(entity.Citizen, party))
                {
                    CanAcceptCandidates = true;
                }

                if (partyService.CanCandidateToCongress(entity.Citizen, party))
                {
                    CanCandidate        = true;
                    CandidateRegionName = entity.GetCurrentRegion().Name;
                }
            }
        }
コード例 #4
0
 public PartyCongressCandidatesListViewModel(List <CongressCandidate> candidates, IPartyService partyService, Entities.Party party)
     : base(candidates)
 {
     PartyRole = PartyRoleEnum.NotAMember;
     if (SessionHelper.CurrentEntity.Citizen != null)
     {
         PartyRole = partyService.GetPartyRole(SessionHelper.LoggedCitizen, party);
         if (partyService.CanAcceptCongressCandidates(SessionHelper.CurrentEntity.Citizen, party))
         {
             CanAcceptCandidates = true;
         }
     }
 }