Exemplo n.º 1
0
        public char PassResetAdd(PassResetAddViewModel user)
        {
            var passResult = ds.PasswordReset.SingleOrDefault(p => p.EMAIL == user.EMAIL);

            if (passResult == null)
            {
                var addedPassReset = ds.PasswordReset.Add(mapper.Map <PassResetAddViewModel, PasswordReset>(user));
                ds.SaveChanges();

                if (addedPassReset != null)
                {
                    return('A');
                }
                else
                {
                    return('E');
                }
            }
            else if (passResult != null)
            {
                var updatedPass = new PassResetAddViewModel();
                updatedPass.EMAIL       = user.EMAIL;
                updatedPass.TOKENEXPIRY = DateTime.Now.AddHours(24);

                ds.Entry(passResult).CurrentValues.SetValues(updatedPass);
                ds.SaveChanges();

                return('U');
            }
            else
            {
                return('E');
            }
        }
Exemplo n.º 2
0
        public ActionResult ForgotPassword(RegisterFormViewModel form)
        {
            var player = m.PlayerGetByEmail(form.Email);

            if (player != null)
            {
                var user = new PassResetAddViewModel();
                user.EMAIL       = form.Email;
                user.TOKENEXPIRY = DateTime.Now.AddHours(24);
                user.VERIFIED    = false;

                var passReset = m.PassResetAdd(user);

                if (passReset == 'A')
                {
                    try
                    {
                        SendEmailToUser(user.EMAIL, null, 'P', user.TOKEN);
                        ViewBag.Message = "An email has been sent to the user. Please check your email to change your password.";
                        return(View(form));
                    }
                    catch (Exception)
                    {
                        ViewBag.Message = "There was a problem sending the email. Please try again later.";
                        return(View(form));
                    }
                }
                else if (passReset == 'U')
                {
                    try
                    {
                        var newUser = m.PassResetGetByEmail(user.EMAIL);
                        SendEmailToUser(newUser.EMAIL, null, 'P', newUser.TOKEN);
                        ViewBag.Message = "An email has been sent to the user. Please check your email to change your password.";
                        return(View(form));
                    }
                    catch (Exception)
                    {
                        ViewBag.Message = "There was a problem sending the email. Please try again later.";
                        return(View(form));
                    }
                }
                else
                {
                    ViewBag.Message = "There was a problem sending the email. Please try again later.";
                    return(View(form));
                }
            }
            else
            {
                ViewBag.Message = "No account found using the providing email used. Please use another email.";
                return(View(form));
            }
        }