Esempio n. 1
0
        public ActionResult Edit(int id, FormCollection formValues)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (!dinner.IsHostedBy(User.Identity.Name))
            {
                return(View("InvalidOwner"));
            }
            else
            {
                try
                {
                    UpdateModel(dinner);

                    dinnerRepository.Save();

                    return(RedirectToAction("Details", new { id = dinner.DinnerID }));
                }
                catch
                {
                    ModelState.AddRuleViolations(dinner.GetRuleViolations());

                    return(View(new DinnerFormViewModel(dinner)));
                }
            }
        }
Esempio n. 2
0
        public ActionResult Edit(int id, FormCollection formValues)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (!dinner.IsHostedBy(User.Identity.Name))
            {
                return(View("InvalidOwner"));
            }

            try
            {
                UpdateModel(dinner);
                dinnerRepository.Save();

                return(RedirectToAction("Details", new { id = dinner.DinnerID }));
            }
            catch
            {
                foreach (var issue in dinner.GetRuleViolations())
                {
                    ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage);

                    //ViewData["Countries"] = new SelectList(PhoneValidator.Countries, dinner.Country);
                }


                return(View(new DinnerFormViewModel(dinner)));
            }
        }
Esempio n. 3
0
 public ActionResult Create(Dinner dinner)
 {
     if (ModelState.IsValid)
     {
         repo.Add(dinner);
         repo.Save();
         return(RedirectToAction("Index"));
     }
     return(View(dinner));
 }
Esempio n. 4
0
        public ActionResult Edit(int id, FormCollection formValues)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (TryUpdateModel(dinner))
            {
                dinnerRepository.Save();
                return(RedirectToAction("Details", new { id = dinner.DinnerID }));
            }

            return(View(new DinnerFormViewModel(dinner)));
        }
Esempio n. 5
0
    public ActionResult Edit(int id, FormCollection formValues)
    {
        Dinner dinner = dinnerRepository.GetDinner(id);

        try {
            UpdateModel(dinner);

            dinnerRepository.Save();

            return(RedirectToAction("Details", new { id = dinner.DinnerID }));
        }
        catch {
            ModelState.AddRuleViolations(dinner.GetRuleViolations());

            return(View(dinner));
        }
    }
        private ViewResult DeletePost(int id)
        {
            Dinner dinner = _dinnerRepository.TryGetDinner(id);

            if (dinner == null)
            {
                return(View(ViewNames.NotFound));
            }

            ViewResult viewResult = ModificationNotAuthorized(dinner);

            if (viewResult != null)
            {
                return(viewResult);
            }

            _dinnerRepository.Delete(dinner);
            _dinnerRepository.Save();

            return(View(ViewNames.Deleted));
        }
Esempio n. 7
0
        public ActionResult Register(int id)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (!dinner.IsUserRegistered(User.Identity.Name))
            {
                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = User.Identity.Name;
                dinner.RSVPs.Add(rsvp);
                dinnerRepository.Save();
            }
            return(Content("Thanks - we'll see you there!"));
        }
        public ActionResult Register(int id)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (!dinner.IsUserRegistered(User.Identity.Name))
            {
                RSVP rsvp = new RSVP();
                rsvp.AttendeeEmail = User.Identity.Name;

                dinner.RSVPs.Add(rsvp);
                dinnerRepository.Save();
            }
            return(View("~/Views/Dinners/Details.cshtml", dinner));
        }
Esempio n. 9
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    dinner.HostedBy = "SomeUser";

                    dinnerRepository.Add(dinner);
                    dinnerRepository.Save();

                    return(RedirectToAction("Details", new { id = dinner.DinnerID }));
                }
                catch
                {
                    foreach (var issue in dinner.GetRuleViolations())
                    {
                        ModelState.AddModelError(issue.PropertyName, issue.ErrorMessage);
                    }
                }
            }

            return(View(new DinnerFormViewModel(dinner)));
        }
Esempio n. 10
0
        public ActionResult Index(int dinnerCount = 100)
        {
            const string name = "Nerd";
            var          membershipService = new AccountMembershipService();

            if (membershipService.ValidateUser(name, "password") == false)
            {
                membershipService.CreateUser(name, "password", "*****@*****.**");
            }
            var repo = new DinnerRepository();

            foreach (var d in repo.All)
            {
                repo.Delete(d.DinnerID);
            }
            for (var i = 0; i < dinnerCount; i++)
            {
                var dinner = new Dinner {
                    Title        = "Nerd-Out",
                    Description  = "Nerding out with the nerds",
                    EventDate    = DateTime.Now.Add(new TimeSpan(30, 0, 0, 0)),
                    ContactPhone = "403-999-9999",
                    Address      = "Calgary, AB",
                    Country      = "Canada",
                    HostedById   = name,
                    HostedBy     = name
                };
                var rsvp = new RSVP {
                    AttendeeNameId = name, AttendeeName = name
                };
                dinner.RSVPs = new List <RSVP> {
                    rsvp
                };
                repo.InsertOrUpdate(dinner);
            }
            try {
                repo.Save();
            }
            catch (DbEntityValidationException e) {
                var error = e.EntityValidationErrors.First().ValidationErrors.First();
                return(new ContentResult {
                    Content = string.Format("{0}: {1}", error.PropertyName, error.ErrorMessage)
                });
            }
            return(new ContentResult {
                Content = "Success"
            });
        }
Esempio n. 11
0
        public ActionResult Register(int id)
        {
            Dinner dinner = dinnerRepository.GetDinner(id);

            if (!dinner.IsUserRegistered(User.Identity.Name))
            {
                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = User.Identity.Name;

                dinner.RSVPs.Add(rsvp);
                dinnerRepository.Save();
            }

            return(Content("GJ you have RSVP'd"));
            //return View(ReservationMade);
        }
Esempio n. 12
0
        public ContentResult Rsvp(int dinnerID)
        {
            Dinner dinner = _dinnerRepository.GetDinner(dinnerID);

            string userName = User.Identity.Name;

            if (!dinner.UserHasRsvp(userName))
            {
                var rsvp = new RSVP
                {
                    AttendeeName = userName
                };

                dinner.RSVPs.Add(rsvp);
                _dinnerRepository.Save();
            }

            return(Content(Messages.RsvpConfirmation));
        }
Esempio n. 13
0
        public ActionResult RsvpFinish()
        {
            IAuthenticationResponse response = relyingParty.GetResponse();

            if (response == null)
            {
                return(RedirectToAction("Index"));
            }

            if (response.Status == AuthenticationStatus.Authenticated)
            {
                var    dinnerRepository = new DinnerRepository();
                int    id     = int.Parse(response.GetUntrustedCallbackArgument("DinnerId"));
                Dinner dinner = dinnerRepository.GetDinner(id);

                // The alias we're getting here is NOT a secure identifier, but a friendly one,
                // which is all we need for this scenario.
                string alias = response.FriendlyIdentifierForDisplay;
                var    sreg  = response.GetExtension <ClaimsResponse>();
                if (sreg != null && sreg.MailAddress != null)
                {
                    alias = sreg.MailAddress.User;
                }

                // NOTE: The alias we've generated for this user isn't guaranteed to be unique.
                // Need to trim to 30 characters because that's the max for Attendee names.
                if (!dinner.IsUserRegistered(alias))
                {
                    RSVP rsvp = new RSVP();
                    rsvp.AttendeeName   = alias;
                    rsvp.AttendeeNameId = response.ClaimedIdentifier;

                    dinner.RSVPs.Add(rsvp);
                    dinnerRepository.Save();
                }
            }

            return(RedirectToAction("Details", "Dinners", new { id = response.GetUntrustedCallbackArgument("DinnerId") }));
        }
Esempio n. 14
0
        public ActionResult Edit(int id, FormCollection formValues)
        {
            // Retrieve existing dinner
            Dinner dinner = dinnerRepository.GetDinner(id);

            try
            {
                UpdateModel(dinner);

                // Persist changes back to db
                dinnerRepository.Save();

                // Perform HTTP redirect to details page for the saved Dinner
                return(RedirectToAction("Details", new { id = dinner.DinnerID }));
            }

            catch
            {
                ModelState.AddRuleViolations(dinner.GetRuleValidations());
                return(View(dinner));
            }
        }
Esempio n. 15
0
        // GET: /RSVP/RsvpTwitterFinish

        public ActionResult RsvpTwitterFinish(int id)
        {
            string screenName;
            int    userId;

            if (TwitterConsumer.TryFinishSignInWithTwitter(out screenName, out userId))
            {
                var    dinnerRepository = new DinnerRepository();
                Dinner dinner           = dinnerRepository.GetDinner(id);

                // NOTE: The alias we've generated for this user isn't guaranteed to be unique.
                string alias = "@" + screenName;
                if (!dinner.IsUserRegistered(alias))
                {
                    RSVP rsvp = new RSVP();
                    rsvp.AttendeeName = alias;

                    dinner.RSVPs.Add(rsvp);
                    dinnerRepository.Save();
                }
            }

            return(RedirectToAction("Details", "Dinners", new { id = id }));
        }