Exemple #1
0
        public ActionResult ForgotPassword(string Email)
        {
            if (!UserAccount.EmailExist(Email))
            {
                TempData["AlertTag"]     = "danger";
                TempData["AlertLabel"]   = "Error: ";
                TempData["AlertMessage"] = "Invalid Email Address";

                return(View());
            }

            string Password = System.Web.Security.Membership.GeneratePassword(10, 1);

            using (BankDB db = new BankDB())
            {
                var User = db.User.Where(userRow => userRow.Email == Email).FirstOrDefault();

                User.Password = GLOBAL.Hash(Password, UserAccount.PasswordSalt);
                User.Email    = User.Email.Trim();

                User.Save();
            }

            TempData["AlertTag"]     = "info";
            TempData["AlertLabel"]   = "";
            TempData["AlertMessage"] = "A new password has been sent to <b>" + Email + "</b> <div class=\"pull-right\">" + Password + "</div>";

            return(View());
        }
Exemple #2
0
        public static dynamic SetEmailConfirmation(int ID)
        {
            EmailConfirmation Confirmation = new EmailConfirmation().New();

            Confirmation.UserID = ID;
            Confirmation.Token  = GLOBAL.Hash(ID + DateTime.Now.ToString(), EmailConfirmation.Salt);

            Confirmation.Add();

            return(Confirmation);
        }
Exemple #3
0
        public static int Register(dynamic Account)
        {
            //JDR: Setup User
            User User = new User().New();

            User.FirstName   = Account.FirstName.Trim();
            User.MiddleName  = (Account.MiddleName ?? "").Trim();
            User.LastName    = Account.LastName.Trim();
            User.Email       = Account.Email.Trim();
            User.Telephone   = Account.Telephone.Trim();
            User.Password    = GLOBAL.Hash(Account.Password, UserAccount.PasswordSalt);
            User.UserStatus  = 0;
            User.CreatedDate = DateTime.Now;

            //JDR: Setup Address
            Address Address = new Address().New();

            Address.Address1 = Account.Address;
            Address.City     = Account.City;
            Address.State    = Account.State;
            Address.ZipCode  = Account.Zip;

            Address.Add();  //JDR: Add Address to DB

            User.AddressID = Address.ID;
            User.Add();     //JDR: Add User to DB

            //JDR: Get User CreditScore
            CreditScore.UpdateCreditScore(User.ID);

            //JDR: Create User confirmation code in DB
            var Confirmation = EmailConfirmation.SetEmailConfirmation(User.ID);

            /*#################################### REMOE /*####################################*/
            //JDR: TODO: REMOVE: This is here just to fake user email confirmation link
            HttpContext.Current.Session["ConfirmEmail"] = User.Email;
            HttpContext.Current.Session["ConfirmCode"]  = Confirmation.Token;
            /*#################################### REMOE /*####################################*/

            return(User.ID);
        }
Exemple #4
0
        public static bool Login(ref User user)
        {
            using (BankDB db = new BankDB())
            {
                string Email        = user.Email;
                string HashPassword = GLOBAL.Hash(user.Password, UserAccount.PasswordSalt);

                var activeUser = db.User.Where(userRow => userRow.Email == Email && userRow.Password == HashPassword).FirstOrDefault();

                if (activeUser == null)
                {
                    return(false);
                }

                user = activeUser;

                UserAccount.SetSession(activeUser);     //JDR: Store user login credentials in global Session
                UserAccount.SetActiveUser(activeUser);  //JDR: Set static variable for active user for all to call

                return(true);
            }
        }