示例#1
0
        public IActionResult Petition(string Name, string Orginization)
        {
            if (Name != null && Orginization != null)
            {
                var checkForDuplicates = _context.Petition.FirstOrDefault(n => n.Name == Name && n.Orginization == Orginization);

                if (checkForDuplicates == null)
                {
                    Petition petition = new Petition();

                    petition.Name = Name;

                    petition.Orginization = Orginization;

                    petition.Date = DateTime.Now;

                    _context.Petition.Add(petition);

                    _context.SaveChanges();

                    PetitionViewModel petitionViewModel1 = new PetitionViewModel();

                    petitionViewModel1.Signatures = _context.Petition.OrderByDescending(x => x.Date).ToList();

                    petitionViewModel1.SigCount = _context.Petition.Count();

                    petitionViewModel1.UniqueOrginizations = _context.Petition.GroupBy(g => g.Orginization).Count();

                    TempData["Success"] = "Thanks for the Support!";

                    return(View(petitionViewModel1));
                }

                PetitionViewModel petitionViewModel2 = new PetitionViewModel();

                petitionViewModel2.Signatures = _context.Petition.OrderByDescending(x => x.Date).ToList();

                petitionViewModel2.SigCount = _context.Petition.Count();

                petitionViewModel2.UniqueOrginizations = _context.Petition.GroupBy(g => g.Orginization).Count();

                ModelState.AddModelError("Name", "Sorry You Can Only Sign Once");

                return(View(petitionViewModel2));
            }

            PetitionViewModel petitionViewModel = new PetitionViewModel();

            petitionViewModel.Signatures = _context.Petition.OrderByDescending(x => x.Date).ToList();

            petitionViewModel.SigCount = _context.Petition.Count();

            petitionViewModel.UniqueOrginizations = _context.Petition.GroupBy(g => g.Orginization).Count();

            ModelState.AddModelError("Name", "All Fields Must Be Completed");

            return(View(petitionViewModel));
        }
示例#2
0
        /// <summary>
        /// Sends all petition signatures and counts to view
        /// </summary>
        /// <returns>view with object</returns>
        public IActionResult Petition()
        {
            PetitionViewModel petitionViewModel = new PetitionViewModel();

            petitionViewModel.Signatures = _context.Petition.OrderByDescending(x => x.Date).ToList();

            petitionViewModel.SigCount = _context.Petition.Count();

            petitionViewModel.UniqueOrginizations = _context.Petition.GroupBy(g => g.Orginization).Count();

            return(View(petitionViewModel));
        }