Exemplo n.º 1
0
        public ActionResult Registration([Bind(Exclude = "IsEmailVerified, ActivationCode")] UserRegistration model)

        {
            var user = new Users()
            {
                UserName        = model.UserName,
                Password        = model.Password,
                Email           = model.Email,
                ConfirmPassword = model.ConfirmPassword,
                ActivationCode  = model.ActivationCode,
                IsEmailVerified = model.IsEmailVerified,
                Role            = model.Role
            };
            bool   Status  = false;
            string message = "";

            //Model Validation
            if (ModelState.IsValid)
            {
                #region Email is already exist
                var isExist = IsEmailExist(user.Email);
                if (isExist)
                {
                    ModelState.AddModelError("EmailExist", "Email alrerady exist");
                    return(View(model));
                }
                #endregion

                #region Generate Activation Code
                user.ActivationCode = Guid.NewGuid();
                #endregion

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

                user.IsEmailVerified = false;

                #region Save to DataBAse
                using (DuomenuBazeEntities db = new DuomenuBazeEntities())
                {
                    db.Users.Add(user);
                    db.SaveChanges();

                    //Send email to user
                    SendeVerificationEmail(user.Email, user.ActivationCode.ToString());
                    message = "Jūs užsiregistravote sėkmingai. Aktyvacijos nuoroda buvo išsiųstas jūsų paštu:" +
                              user.Email;
                    Status = true;
                }
                #endregion
            }
            else
            {
                message = "Invalid request";
            }

            ViewBag.Message = message;
            ViewBag.Status  = Status;
            return(View(model));
        }
Exemplo n.º 2
0
        public ActionResult Create([Bind(Exclude = "IsEmailVerified, ActivationCode")] CreateViewModel model)
        {
            var user = new Users()
            {
                UserName        = model.UserName,
                FirstName       = model.FirstName,
                LastName        = model.LastName,
                Password        = model.Password,
                Email           = model.Email,
                BirthDate       = model.BirthDate,
                PhoneNumber     = model.PhoneNumber,
                ConfirmPassword = model.ConfirmPassword,
                ActivationCode  = model.ActivationCode,
                IsEmailVerified = model.IsEmailVerified,
                Subscriptions   = model.Subscriptions,
                Role            = model.Role
            };
            bool   Status  = false;
            string message = "";

            //Model Validation
            if (ModelState.IsValid)
            {
                #region Email is already exist
                var isExist = IsEmailExist(user.Email);
                if (isExist)
                {
                    ModelState.AddModelError("EmailExist", "Email alrerady exist");
                    return(View(model));
                }
                #endregion

                #region Generate Activation Code
                user.ActivationCode = Guid.NewGuid();
                #endregion

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

                user.IsEmailVerified = false;

                #region Save to DataBAse
                db.Users.Add(user);
                db.SaveChanges();

                //Send email to user
                SendeVertificationEmail(user.Email, user.ActivationCode.ToString());
                Status = true;
                return(RedirectToAction("UsersList"));

                #endregion
            }
            else
            {
                message = "Invalid request";
            }

            ViewBag.Message = message;
            ViewBag.Status  = Status;
            return(View(model));
        }