Ejemplo n.º 1
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"};
 }
Ejemplo n.º 2
0
        public static List<Dinner> CreateTestDinners()
        {
            List<Dinner> dinners = new List<Dinner>();

            for (int i = 1; i <= 100; i++)
            {

                Dinner sampleDinner = new Dinner()
                                      {
                                              Title = "Sample Dinner",
                                              HostedBy = "SomeUser",
                                              Address = "California",
                                              Country = "USA",
                                              ContactPhone = "425-555-1212",
                                              Description = "Some description",
                                              EventDate = DateTime.Now.AddDays(i),
                                              Latitude = 99,
                                              Longitude = -99
                                      };

                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = "SomeUser";
                sampleDinner.AddRsvp(rsvp);

                dinners.Add(sampleDinner);
            }

            return dinners;
        }
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    dinner.HostedBy = User.Identity.Name;

                    var rsvp = new RSVP();
                    rsvp.AttendeeName = User.Identity.Name;
                    dinner.RSVPs.Add(rsvp);

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

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

            return View(new DinnerFormViewModel(dinner));
        }
Ejemplo n.º 4
0
 public ActionResult Register(int id)
 {
     Dinner dinner = dinnerRepository.GetDinner(id);
     if (!dinner.IsUserRegistered(User.Identity.Name))
     {
         var rsvp = new RSVP {AttendeeName = User.Identity.Name};
         dinner.RSVPs.Add(rsvp);
         dinnerRepository.Save();
     }
     return Content("Thanks - we’ll see you there!");
 }
Ejemplo n.º 5
0
        private void RegisterForDinner(int id)
        {
            Dinner dinner = db.Dinners.Find(id);

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

                dinner.RSVPs.Add(rsvp);
                db.SaveChanges();
            }
        }
Ejemplo n.º 6
0
 public ActionResult Create(Dinner dinner)
 {
     if (ModelState.IsValid) {
         dinner.HostedBy = User.Identity.Name;
         RSVP rsvp = new RSVP();
         rsvp.AttendeeName = User.Identity.Name;
         dinner.RSVPs.Add(rsvp);
         dinnerrepository.Add(dinner);
         dinnerrepository.Save();
         return RedirectToAction("Details", new { id = dinner.DinnerID });
     }
     return View(new DinnerFormViewModel(dinner));
 }
Ejemplo n.º 7
0
        public static void HostDinner(HostDinner command, Models.Dinner dinner, NerdDinnerContext db)
        {
            dinner.HostedBy = command.HostedBy;

            RSVP rsvp = new RSVP();
            rsvp.AttendeeName = command.HostedBy;

            dinner.RSVPs = new List<RSVP>();
            dinner.RSVPs.Add(rsvp);

            db.Dinners.Add(dinner);
            db.SaveChanges();
        }
Ejemplo n.º 8
0
        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 Content("Thanks! See you there...");
        }
Ejemplo n.º 9
0
        public ActionResult Register(int id)
        {
            Dinner dinner = dinnerRepository.Find(id);

            if (!dinner.IsUserRegistered(User.Identity.Name)) {

                RSVP rsvp = new RSVP();
                NerdIdentity nerd = (NerdIdentity)User.Identity;
                rsvp.AttendeeNameId = nerd.Name;
                rsvp.AttendeeName = nerd.FriendlyName;

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

            return Content("Thanks - we'll see you there!");
        }
Ejemplo n.º 10
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                dinner.HostedBy = User.Identity.Name;

                RSVP rsvp = new RSVP();
                rsvp.AttendeeName = User.Identity.Name;

                dinner.RSVPs = new List<RSVP>();
                dinner.RSVPs.Add(rsvp);

                db.Dinners.Add(dinner);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(dinner);
        }
Ejemplo n.º 11
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid) {
                dinner.HostedById = this.nerdIdentity.Name;
                dinner.HostedBy = this.nerdIdentity.FriendlyName;

                RSVP rsvp = new RSVP();
                rsvp.AttendeeNameId = this.nerdIdentity.Name;
                rsvp.AttendeeName = this.nerdIdentity.FriendlyName;

                dinner.RSVPs = new List<RSVP>();
                dinner.RSVPs.Add(rsvp);

                dinnerRepository.InsertOrUpdate(dinner);
                dinnerRepository.Save();

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

            return View(dinner);
        }
Ejemplo n.º 12
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid) {
                NerdIdentity nerd = (NerdIdentity)User.Identity;
                dinner.DinnerID = MvcApplication.NewDinnerId().ToString();
                dinner.HostedById = nerd.Name;
                dinner.HostedBy = nerd.FriendlyName;

                RSVP rsvp = new RSVP();
                rsvp.DinnerID = dinner.DinnerID;
                rsvp.AttendeeNameId = nerd.Name;
                rsvp.AttendeeName = nerd.FriendlyName;
                dinner.RSVPs.Add(rsvp);

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

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

            return View(new DinnerFormViewModel(dinner));
        }
Ejemplo n.º 13
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid) {
                try {
                    using (var tx = _session.BeginTransaction())
                    {
                        dinner.HostedBy = User.Identity.Name;

                        RSVP rsvp = new RSVP();
                        rsvp.AttendeeName = User.Identity.Name;
                        dinner.AddRsvp(rsvp);
                        _dinnerRepository.Save(dinner);
                        tx.Commit();
                        return RedirectToAction("Details", new { id = dinner.DinnerID });
                    }
                }
                catch {
                    ModelState.AddModelErrors(dinner.GetRuleViolations());
                }
            }

            return View(new DinnerFormViewModel(dinner));
        }
Ejemplo n.º 14
0
        public static void HostDinner(HostDinner command, NerdDinnerContext db)
        {
            var dinner = new Models.Dinner
                {
                    DinnerID = command.Id.Id,
                    HostedBy = command.HostedBy,
                    Address = command.Address,
                    ContactPhone = command.ContactPhone,
                    Country = command.Country,
                    Description = command.Description,
                    EventDate = command.EventDate,
                    Title = command.Title
                };

            RSVP rsvp = new RSVP();
            rsvp.AttendeeName = command.HostedBy;

            dinner.RSVPs = new List<RSVP>();
            dinner.RSVPs.Add(rsvp);

            db.Dinners.Add(dinner);
            db.SaveChanges();
        }
Ejemplo n.º 15
0
        public ActionResult Create(Dinner dinner)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    dinner.Rsvps = new List<RSVP>();
                    var rsvp = new RSVP {AttendeeName = User.Identity.Name};
                    dinner.Rsvps.Add(rsvp);

                    dinnerRepository.AddDinner(dinner);
                    dinnerRepository.Save();

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

            return View(new DinnerFormViewModel(dinner));
        }
Ejemplo n.º 16
0
        private static void CreateDinnerInDB(HostDinner command)
        {
            var db = new NerdDinnerContext();
            var dinner = new Models.Dinner
                {
                    Address = command.Address,
                    ContactPhone = command.ContactPhone,
                    Country = command.Country,
                    Description = command.Description,
                    DinnerID = command.Id.Id,
                    EventDate = command.EventDate,
                    HostedBy = command.HostedBy,
                    Title = command.Title
                };

            var rsvp = new RSVP();
            rsvp.AttendeeName = command.HostedBy;

            dinner.RSVPs = new List<RSVP>();
            dinner.RSVPs.Add(rsvp);

            db.Dinners.Add(dinner);
            db.SaveChanges();
        }
Ejemplo n.º 17
0
        public ActionResult RsvpFinish()
        {
            IAuthenticationResponse response = relyingParty.GetResponse();
            if (response == null)
            {
                return RedirectToAction("Index");
            }

            if (response.Status == AuthenticationStatus.Authenticated)
            {
                var dinnerRepository = new DinnerRepository();
                string id = 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") });
        }
Ejemplo n.º 18
0
 public void DeleteRsvp(RSVP rsvp)
 {
     db.RSVPs.Remove(rsvp);
     db.SaveChanges();
 }
Ejemplo n.º 19
0
        // GET: /RSVP/RsvpTwitterFinish
        public ActionResult RsvpTwitterFinish(string 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.DinnerID = dinner.DinnerID;
                    rsvp.AttendeeName = alias;

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

            return RedirectToAction("Details", "Dinners", new { id = id });
        }
Ejemplo n.º 20
0
 private void detach_RSVPs(RSVP entity)
 {
     this.SendPropertyChanging();
     entity.Dinner = null;
 }
Ejemplo n.º 21
0
 partial void InsertRSVP(RSVP instance);
Ejemplo n.º 22
0
 partial void UpdateRSVP(RSVP instance);
 partial void DeleteRSVP(RSVP instance);
Ejemplo n.º 24
0
 /// <summary>
 /// Deprecated Method for adding a new object to the RSVPs EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToRSVPs(RSVP rSVP)
 {
     base.AddObject("RSVPs", rSVP);
 }
Ejemplo n.º 25
0
 /// <summary>
 /// Create a new RSVP object.
 /// </summary>
 /// <param name="rsvpID">Initial value of the RsvpID property.</param>
 /// <param name="dinnerID">Initial value of the DinnerID property.</param>
 /// <param name="attendeeName">Initial value of the AttendeeName property.</param>
 public static RSVP CreateRSVP(global::System.Int32 rsvpID, global::System.Int32 dinnerID, global::System.String attendeeName)
 {
     RSVP rSVP = new RSVP();
     rSVP.RsvpID = rsvpID;
     rSVP.DinnerID = dinnerID;
     rSVP.AttendeeName = attendeeName;
     return rSVP;
 }
Ejemplo n.º 26
0
 partial void DeleteRSVP(RSVP instance);
Ejemplo n.º 27
0
 private void attach_RSVPs(RSVP entity)
 {
     this.SendPropertyChanging();
     entity.Dinner = this;
 }
Ejemplo n.º 28
0
 public void DeleteRsvp(RSVP rsvp)
 {
     db.RSVPs.Remove(rsvp);
     db.SaveChanges();
 }
 partial void InsertRSVP(RSVP instance);
		private void detach_RSVPs(RSVP entity)
		{
			this.SendPropertyChanging();
			entity.Dinner = null;
		}
 partial void UpdateRSVP(RSVP instance);
Ejemplo n.º 32
0
 void ApplyEvent(Event<RSVPed> @event)
 {
     var rsvp = new RSVP();
     rsvp.DinnerID       = this.DinnerID;
     rsvp.AttendeeName   = @event.Data.FriendlyName;
     rsvp.AttendeeNameId = @event.Data.Name;
     _rsvps.Add(rsvp);
 }
		private void attach_RSVPs(RSVP entity)
		{
			this.SendPropertyChanging();
			entity.Dinner = this;
		}
Ejemplo n.º 34
0
 public virtual void AddRsvp(RSVP rsvp)
 {
     _rsvps.Add(rsvp);
     rsvp.Dinner = this;
 }
 public void DeleteRsvp(RSVP rsvp)
 {
 }
Ejemplo n.º 36
0
 void ApplyEvent(RSVPed rsvpedEvent)
 {
     var rsvp = new RSVP();
     rsvp.DinnerID = this.DinnerID;
     rsvp.AttendeeName = rsvpedEvent.FriendlyName;
     rsvp.AttendeeNameId = rsvpedEvent.Name;
     _rsvps.Add(rsvp);
 }