Пример #1
0
        public ActionResult GenerateTokenFor(GenerateTokenViewModel model)
        {
            CallService(() =>
            {
                TempData["ElectionId"] = model.SelectedElectionId;
                TempData["WahlkreisId"] = model.SelectedWahlkreisId;
                TempData["Amount"] = model.Amount;

                if (!model.Password.Equals("ichdarfdasschon"))
                {
                    throw new Exception("Sie dürfen mit diesem Passwort keine Token generieren.");
                }

                var election = Service.GetElection(model.SelectedElectionId);
                var wahlkreis = Service.GetWahlkreis(model.SelectedWahlkreisId);

                var infoToken = string.Format("Bundestagswahl: {0}\nWahlkreis: {1}\n\nErstellte Token:",
                    election.Date.ToShortDateString(), wahlkreis.Name);

                for (var i = 0; i < model.Amount; i++)
                {
                    infoToken += string.Format("\n    {0}",
                        TokenValidation.GenerateTokenString(model.SelectedElectionId, model.SelectedWahlkreisId));
                }

                GetMessageBag().Info.Add(infoToken);
            });

            return RedirectToAction("GenerateToken");
        }
Пример #2
0
        public GenerateTokenViewModel GetGenerateTokenModel()
        {
            var model = new GenerateTokenViewModel();

            using (var context = new ElectionDBEntities())
            {
                var elections = context.Elections.Where(e => e.Id >= 3);
                var electionVms = ViewModelMap.ViewModelMap.GetElectionViewModels(elections).ToList();

                var wahlkreise = context.Wahlkreis;
                var wahlkreiseVms = ViewModelMap.ViewModelMap.GetWahlkreisViewModels(wahlkreise).ToList();

                model.Election = electionVms.OrderBy(r => r.Date);
                model.SelectedElectionId = elections.Any() ? elections.OrderByDescending(r => r.Date).First().Id : 0;
                model.Wahlkreise = wahlkreiseVms.OrderBy(w => w.Name);
                model.Amount = 1;
            }

            return model;
        }