Ejemplo n.º 1
0
        public ActionResult FacebookCallback(string code)
        {
            var fb = new FacebookClient();
            dynamic result = fb.Post("oauth/access_token", new
            {
                client_id = System.Configuration.ConfigurationManager.AppSettings["FacebookAppID"],
                client_secret = System.Configuration.ConfigurationManager.AppSettings["FacebookAppSecret"],
                redirect_uri = RedirectUri.AbsoluteUri,
                code = code
            });

            var accessToken = result.access_token;
            fb.AccessToken = accessToken;
            dynamic me = fb.Get("me?fields=email");

            if (!IsUserRegistered(me.mail))
            {

                using (TicketBookingEntities db = new TicketBookingEntities())
                {
                    string password = DateTime.Now.ToString();
                    RegisteredUser user = new Models.RegisteredUser() { Username = me.email, Password = password, Email = me.email };
                    db.RegisteredUsers.Add(user);
                    db.Memberships.Add(new Models.Membership() { UserID = user.ID, Role = db.Roles.Single(x => x.ID == 1).Name });
                    db.SaveChanges();
                }
            }

            FormsAuthentication.SetAuthCookie(me.email, false);
            Session["login"] = true;
            Session["username"] = me.email;
            return RedirectToAction("Index", "Home");
        }
Ejemplo n.º 2
0
        public ActionResult Create(CardInfo card)
        {
            if (ModelState.IsValid)
            {
                string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
                TicketBookingEntities db = new TicketBookingEntities();
                int userid = db.RegisteredUsers.Single(x => x.Username == username).ID;
                card.UserID = userid;
                db.CardInfoes.Add(card);
                db.SaveChanges();
                return RedirectToAction("Details", "Account");
            }

            ModelState.AddModelError("error", "Check your data input!!!");
            return View(card);
        }
Ejemplo n.º 3
0
        public ActionResult Register(RegisteredUser user)
        {
            if (ModelState.IsValid)
            {
                using (TicketBookingEntities db = new TicketBookingEntities())
                {
                    if (!db.RegisteredUsers.Any(x => x.Username == user.Username))
                    {
                        db.RegisteredUsers.Add(user);
                        db.Memberships.Add(new Models.Membership() { UserID = user.ID, Role = db.Roles.Single(x => x.ID == 1).Name });
                        db.SaveChanges();

                        return RedirectToAction("Login", "Account");
                    }
                }
            }

            ModelState.AddModelError("error", "Something's wrong!!!");
            return View(user);
        }