Ejemplo n.º 1
0
 public Boolean[] IsEmailExist(string email, string username)
 {
     using (DrinkDBEntities dc = new DrinkDBEntities())
     {
         var       equery = dc.Users.Where(u => u.Email == email).FirstOrDefault();
         var       uquery = dc.Users.Where(u => u.Username == username).FirstOrDefault();
         Boolean[] exists = { true, true };
         if (equery == null)
         {
             exists[0] = false;
         }
         if (uquery == null)
         {
             exists[1] = false;
         }
         return(exists);
     }
 }
Ejemplo n.º 2
0
        public ActionResult Login(UserCredentials user)
        {
            UserLogin login = user.UserLogin;

            ViewBag.Page = "Login";
            string message = "";

            using (DrinkDBEntities dc = new DrinkDBEntities())
            {
                var queryResult = dc.Users.Where(u => u.Username == login.Username).FirstOrDefault();
                if (queryResult != null)
                {
                    if (string.Compare(PasswordHashing.Hash(login.Password), queryResult.Password) == 0)
                    {
                        #region Cookie to stay logged in
                        int    timeout   = login.RememberMe ? 10000 : 60;
                        var    ticket    = new FormsAuthenticationTicket(login.Username, login.RememberMe, timeout);
                        string encrypted = FormsAuthentication.Encrypt(ticket);
                        var    cookie    = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
                        cookie.Expires  = DateTime.Now.AddMinutes(timeout);
                        cookie.HttpOnly = true;
                        Response.Cookies.Add(cookie);
                        #endregion

                        return(RedirectToAction("Home", "Home"));
                    }
                    else
                    {
                        message = "Password is incorrect!";
                    }
                }
                else
                {
                    message = "Invalid credentials";
                }
            }

            ViewBag.Message = message;
            return(View("Account"));
        }
Ejemplo n.º 3
0
        public ActionResult VerifyAccount(string id)
        {
            bool Status = false;

            using (DrinkDBEntities dc = new DrinkDBEntities())
            {
                dc.Configuration.ValidateOnSaveEnabled = false;
                var query = dc.Users.Where(a => a.ActivationCode == new Guid(id)).FirstOrDefault();
                if (query != null)
                {
                    // TODO: See if the user already activated the account!

                    query.isVerified = true;
                    dc.SaveChanges();
                    Status = true;
                }
                else
                {
                    ViewBag.Message = "Invalid Request!";
                }
            }
            ViewBag.Status = Status;
            return(View());
        }
Ejemplo n.º 4
0
        public ActionResult Registration([Bind(Exclude = "IsVerified, ActivationCode, Role")] UserCredentials userCred)
        {
            ViewBag.Page = "Registration";
            User user = new User();

            user = userCred.UserRegistration;

            bool   isSuccessful = false;
            string message      = "";


            if (ModelState.IsValid)
            {
                #region Check if email and username are taken
                var isExists = IsEmailExist(user.Email, user.Username);
                if (isExists[0])
                {
                    ModelState.AddModelError("EmailExists", "Email already Exists");

                    return(View("Account"));
                }
                if (isExists[1])
                {
                    ModelState.AddModelError("UsernameExists", "Username is taken!");
                    return(View("Account"));
                }
                #endregion

                #region Generate Activation Code

                user.ActivationCode = Guid.NewGuid();

                #endregion

                #region Pw hashing
                user.Password        = PasswordHashing.Hash(user.Password);
                user.ConfirmPassword = PasswordHashing.Hash(user.ConfirmPassword);
                #endregion

                user.isVerified = false;
                user.Role       = "user";

                //cHxY2:)CoCkTaIlFiNdeR

                #region Save to DB
                using (DrinkDBEntities dc = new DrinkDBEntities())
                {
                    dc.Users.Add(user);
                    dc.SaveChanges();

                    SendEmailVerification(user.Username, user.Email, user.ActivationCode.ToString());
                    message      = "Successful Registration! Check your email and verify your account!";
                    isSuccessful = true;
                }
                #endregion
            }
            else
            {
                message = "Invalid request!";
            }
            ViewBag.Status  = isSuccessful;
            ViewBag.Message = message;
            return(View("Account"));
        }
Ejemplo n.º 5
0
 public CocktailsRepository()
 {
     this.db = new DrinkDBEntities();
 }
Ejemplo n.º 6
0
 public CreatorRepository()
 {
     this.db = new DrinkDBEntities();
 }
Ejemplo n.º 7
0
 public SearchRepository()
 {
     db = new DrinkDBEntities();
 }
Ejemplo n.º 8
0
 public UserRepository()
 {
     this.db = new DrinkDBEntities();
 }
 public IngredientsRepository()
 {
     this.db = new DrinkDBEntities();
 }