Ejemplo n.º 1
0
        public ActionResult ForgotPassword(string emailValue, int Type)
        {
            try
            {
                using (var ctx = new LicenseApplicationContext())
                {
                    string link = string.Empty;
                    var    user = ctx.Users.Where(a => a.Email == emailValue).FirstOrDefault();
                    if (user != null && user.UsersID > 0)
                    {
                        string resetPasswordParameter        = string.Format("{0}#{1}#{2}", SystemEnum.RoleType.User.GetHashCode(), user.UsersID, DateTime.Now.AddMinutes(ProjectConfiguration.ResetPasswordExpireTime).ToString(ProjectConfiguration.EmailDateTimeFormat));
                        string encryptResetPasswordParameter = EncryptionDecryption.GetEncrypt(resetPasswordParameter);
                        string encryptResetPasswordUrl       = string.Format("{0}?q={1}", ProjectConfiguration.SiteUrlBase + TradingLicense.Web.Pages.Controllers.Account + "/" + Actions.ResetPassword, encryptResetPasswordParameter);

                        if (UserMail.SendForgotPassword(user.Email, user.Username, encryptResetPasswordUrl))
                        {
                            return(Json(new object[] { Convert.ToInt32(MessageType.success), MessageType.success.ToString(), Messages.Mailsend }, JsonRequestBehavior.AllowGet));
                        }
                        else
                        {
                            return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.ContactToAdmin }, JsonRequestBehavior.AllowGet));
                        }
                    }
                    else
                    {
                        return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.InvalidEmail }, JsonRequestBehavior.AllowGet));
                    }
                }
            }
            catch (Exception ex)
            {
                // ErrorLogHelper.Log(ex);
                return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.ContactToAdmin }, JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 2
0
        public ActionResult ForgotPassword(Login model)
        {
            User userModel = this.userDataBL.GetUsersList(new User()).Where(m => m.Email == model.Email).FirstOrDefault();

            if (userModel != null)
            {
                string         resetPasswordParameter        = string.Format("{0}#{1}", userModel.Id, DateTime.Now.AddMinutes(ProjectConfiguration.ResetPasswordExpireTime).ToString(ProjectConfiguration.EmailDateTimeFormat));
                string         encryptResetPasswordParameter = EncryptionDecryption.EncryptByTripleDES(resetPasswordParameter);
                string         encryptResetPasswordUrl       = string.Format("{0}?q={1}", ProjectConfiguration.SiteUrlBase + Controllers.Account + "/" + Actions.ResetPassword, encryptResetPasswordParameter);
                EmailViewModel emailModel = new EmailViewModel()
                {
                    Email      = userModel.Email,
                    Name       = userModel.FirstName + " " + userModel.LastName,
                    ResetUrl   = encryptResetPasswordUrl,
                    LanguageId = ConvertTo.ToInteger(ProjectSession.AdminPortalLanguageId)
                };
                if (UserMail.SendForgotPassword(emailModel))
                {
                    this.AddToastMessage(Resources.General.Success, Messages.EmailSent, SystemEnumList.MessageBoxType.Success);
                    return(this.RedirectToAction(Actions.Index, Controllers.Account));
                }
                else
                {
                    this.AddToastMessage(Resources.General.Error, Messages.PasswordEmailSendFail, SystemEnumList.MessageBoxType.Error);
                    return(this.View(Views.ForgotPassword, model));
                }
            }
            else
            {
                this.AddToastMessage(Resources.General.Error, Messages.UserAccountNotmatched, SystemEnumList.MessageBoxType.Error);
                return(this.View(Views.ForgotPassword, model));
            }
        }