Beispiel #1
0
        private void LoadSettings()
        {
            foreach (SettingInfo obj in MembershipDataProvider.GetSettings())
            {
                switch (obj.SettingKey)
                {
                case "DUPLICATE_USERS_ACROSS_PORTALS":
                    chkEnableDupNames.Checked = obj.SettingValue.Equals("1")? true : false;
                    break;

                case "DUPLICATE_ROLES_ACROSS_PORTALS":
                    chkEnableDupRole.Checked = obj.SettingValue.Equals("1") ? true : false;
                    break;

                case  "SELECTED_PASSWORD_FORMAT":
                    SetPasswordFormat(int.Parse(obj.SettingValue));
                    break;

                case "DUPLICATE_EMAIL_ALLOWED":
                    chkEnableDupEmail.Checked = obj.SettingValue.Equals("1") ? true : false;
                    break;

                case "ENABLE_CAPTCHA":
                    chkEnableCaptcha.Checked = obj.SettingValue.Equals("1") ? true : false;
                    break;
                }
            }
        }
Beispiel #2
0
        public void CheckEmail(string email)
        {
            try
            {
                MembershipController member  = new MembershipController();
                UserInfo             objUser = member.GerUserByEmail(email, GetPortalID);
                if (objUser.IsApproved == true)
                {
                    SucessFullLogin(objUser);
                }
                else
                {
                    {
                        int  UserRegistrationType = pagebase.GetSettingIntByKey(SageFrameSettingKeys.PortalUserRegistration);
                        bool isUserActive         = UserRegistrationType == 2 ? true : false;
                        objUser.ApplicationName = Membership.ApplicationName;
                        objUser.FirstName       = FirstName;
                        objUser.UserName        = email;
                        objUser.LastName        = LastName;
                        string Pwd, PasswordSalt;
                        string newPassword = GenerateRandomPassword();
                        PasswordHelper.EnforcePasswordSecurity(member.PasswordFormat, newPassword, out Pwd, out PasswordSalt);
                        objUser.Password         = Pwd;
                        objUser.PasswordSalt     = PasswordSalt;
                        objUser.Email            = email;
                        objUser.SecurityQuestion = " ";
                        objUser.SecurityAnswer   = " ";
                        objUser.IsApproved       = true;
                        objUser.CurrentTimeUtc   = DateTime.Now;
                        objUser.CreatedDate      = DateTime.Now;
                        objUser.UniqueEmail      = 0;
                        objUser.StoreID          = GetStoreID;
                        objUser.PasswordFormat   = member.PasswordFormat;
                        objUser.PortalID         = GetPortalID;
                        objUser.AddedOn          = DateTime.Now;
                        objUser.AddedBy          = GetUsername;
                        objUser.UserID           = Guid.NewGuid();
                        objUser.RoleNames        = SystemSetting.REGISTER_USER_ROLENAME;

                        UserCreationStatus status = new UserCreationStatus();
                        CheckRegistrationType(UserRegistrationType, ref objUser);
                        MembershipDataProvider.CreatePortalUser(objUser, out status, UserCreationMode.REGISTER);
                        if (status == UserCreationStatus.SUCCESS)
                        {
                            SucessFullLogin(objUser);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }
        private static MembershipDataProvider GetMembershipProvider(XPathNavigator xpathNav)
        {
            const string           xpathQuery             = "/configuration/system.web/membership";
            XPathNavigator         node                   = xpathNav.SelectSingleNode(xpathQuery);
            MembershipDataProvider membershipDataProvider = MembershipDataProvider.Unknown;

            if (node != null)
            {
                try
                {
                    membershipDataProvider = (MembershipDataProvider)Enum.Parse(typeof(MembershipDataProvider), node.GetAttribute("defaultProvider", String.Empty), false);
                }
                catch (ArgumentException) { }
            }
            return(membershipDataProvider);
        }
Beispiel #4
0
        protected void btnSaveSetting_Click(object sender, EventArgs e)
        {
            List <SettingInfo> lstSettings = new List <SettingInfo>();
            SettingInfo        dupUsers    = new SettingInfo();

            dupUsers.SettingKey   = SettingsEnum.DUPLICATE_USERS_ACROSS_PORTALS.ToString();
            dupUsers.SettingValue = chkEnableDupNames.Checked ? "1" : "0";
            SettingInfo dupRoles = new SettingInfo();

            dupRoles.SettingKey   = SettingsEnum.DUPLICATE_ROLES_ACROSS_PORTALS.ToString();
            dupRoles.SettingValue = chkEnableDupRole.Checked ? "1" : "0";
            SettingInfo passwordFormat = new SettingInfo();

            passwordFormat.SettingKey   = SettingsEnum.SELECTED_PASSWORD_FORMAT.ToString();
            passwordFormat.SettingValue = GetPasswordFormat().ToString();
            SettingInfo dupEmail = new SettingInfo();

            dupEmail.SettingKey   = SettingsEnum.DUPLICATE_EMAIL_ALLOWED.ToString();
            dupEmail.SettingValue = chkEnableDupEmail.Checked ? "1" : "0";
            SettingInfo enableCaptcha = new SettingInfo();

            enableCaptcha.SettingKey   = SettingsEnum.ENABLE_CAPTCHA.ToString();
            enableCaptcha.SettingValue = chkEnableCaptcha.Checked ? "1" : "0";
            lstSettings.Add(dupUsers);
            lstSettings.Add(dupRoles);
            lstSettings.Add(passwordFormat);
            lstSettings.Add(dupEmail);
            lstSettings.Add(enableCaptcha);

            try
            {
                MembershipDataProvider.SaveSettings(lstSettings);
                ShowMessage(SageMessageTitle.Information.ToString(), GetSageMessage("UserManagement", "SettingSavedSuccessfully"), "", SageMessageType.Success);
            }
            catch (Exception)
            {
                throw;
            }
        }
        private void RegisterUser()
        {
            try
            {
                MessageTemplateDataContext dbMessageTemplate = new MessageTemplateDataContext(SystemSetting.SageFrameConnectionString);

                if (string.IsNullOrEmpty(UserName.Text) || string.IsNullOrEmpty(FirstName.Text) || string.IsNullOrEmpty(LastName.Text) || string.IsNullOrEmpty(Email.Text))
                {
                    ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserRegistration", "PleaseEnterAllRequiredFields"), "", SageMessageType.Alert);
                }
                else
                {
                    int UserRegistrationType = pagebase.GetSettingIntByKey(SageFrameSettingKeys.PortalUserRegistration);

                    bool isUserActive = UserRegistrationType == 2 ? true : false;

                    UserInfo objUser = new UserInfo();
                    objUser.ApplicationName = Membership.ApplicationName;
                    objUser.FirstName       = FirstName.Text;
                    objUser.UserName        = UserName.Text;
                    objUser.LastName        = LastName.Text;
                    string Pwd, PasswordSalt;
                    PasswordHelper.EnforcePasswordSecurity(_member.PasswordFormat, Password.Text, out Pwd, out PasswordSalt);
                    objUser.Password         = Pwd;
                    objUser.PasswordSalt     = PasswordSalt;
                    objUser.Email            = Email.Text;
                    objUser.SecurityQuestion = Question.Text;
                    objUser.SecurityAnswer   = Answer.Text;
                    objUser.IsApproved       = true;
                    objUser.CurrentTimeUtc   = DateTime.Now;
                    objUser.CreatedDate      = DateTime.Now;
                    objUser.UniqueEmail      = 0;
                    objUser.PasswordFormat   = _member.PasswordFormat;
                    objUser.PortalID         = GetPortalID;
                    objUser.AddedOn          = DateTime.Now;
                    objUser.AddedBy          = GetUsername;
                    objUser.UserID           = Guid.NewGuid();
                    objUser.RoleNames        = SystemSetting.REGISTER_USER_ROLENAME;
                    objUser.StoreID          = GetStoreID;
                    objUser.CustomerID       = 0;

                    UserCreationStatus status = new UserCreationStatus();
                    CheckRegistrationType(UserRegistrationType, ref objUser);

                    int customerId;
                    MembershipDataProvider.RegisterPortalUser(objUser, out status, out customerId, UserCreationMode.REGISTER);
                    if (status == UserCreationStatus.DUPLICATE_USER)
                    {
                        ShowMessage(SageMessageTitle.Notification.ToString(), UserName.Text.Trim() + " " + GetSageMessage("UserManagement", "NameAlreadyExists"), "", SageMessageType.Alert);
                        GenerateCaptchaImage();
                    }
                    else if (status == UserCreationStatus.DUPLICATE_EMAIL)
                    {
                        ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "EmailAddressAlreadyIsInUse"), "", SageMessageType.Alert);
                        GenerateCaptchaImage();
                    }
                    else if (status == UserCreationStatus.SUCCESS)
                    {
                        MembershipUser userInfo = Membership.GetUser(UserName.Text);
                        if (chkIsSubscribeNewsLetter.Checked)
                        {
                            int?newID = 0;
                            ManageNewsLetterSubscription(Email.Text, ref newID);
                        }

                        HandlePostRegistration(UserRegistrationType, dbMessageTemplate, customerId);
                    }
                }
            }

            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }
Beispiel #6
0
 /// <summary>
 /// Create role.
 /// </summary>
 /// <param name="role">Object of RoleInfo class.</param>
 /// <param name="status">Role creation status.<see cref="T: SageFrame.Security.Helpers.RoleCreationStatus"/></param>
 public override void CreateRole(RoleInfo role, out RoleCreationStatus status)
 {
     MembershipDataProvider.CreateRole(role, out status);
 }
Beispiel #7
0
 /// <summary>
 /// Change user in role.
 /// </summary>
 /// <param name="ApplicationName">Application name.</param>
 /// <param name="UserID">UserID</param>
 /// <param name="RoleNamesUnselected">Unselected role name.</param>
 /// <param name="RoleNamesSelected">Selected role name.</param>
 /// <param name="PortalID">PortalID</param>
 /// <returns>True for change user role successfully.</returns>
 public override bool ChangeUserInRoles(string ApplicationName, Guid UserID, string RoleNamesUnselected, string RoleNamesSelected, int PortalID)
 {
     return(MembershipDataProvider.ChangeUserInRoles(ApplicationName, UserID, RoleNamesUnselected, RoleNamesSelected, PortalID));
 }
Beispiel #8
0
 /// <summary>
 /// Add user in role.
 /// </summary>
 /// <param name="user">Object of UserInfo class.</param>
 /// <returns>True for add user in role successfully.</returns>
 public override bool AddUserToRoles(UserInfo user)
 {
     return(MembershipDataProvider.AddUserInRoles(user));
 }
Beispiel #9
0
 /// <summary>
 /// Delete user from roles.
 /// </summary>
 /// <param name="user">Object of UserInfo class.</param>
 /// <returns>True for deleted successfully.</returns>
 public override bool DeleteUserInRoles(UserInfo user)
 {
     return(MembershipDataProvider.DeleteUserInRoles(user));
 }
Beispiel #10
0
 /// <summary>
 /// Obtain roles name.
 /// </summary>
 /// <param name="UserName">User name.</param>
 /// <param name="PortalID">PortalID</param>
 /// <returns>Role names with comma separator.</returns>
 public override string GetRoleNames(string UserName, int PortalID)
 {
     return(MembershipDataProvider.GetRoleNames(UserName, PortalID));
 }
Beispiel #11
0
 /// <summary>
 /// Delete roles.
 /// </summary>
 /// <param name="RoleID">RoleID</param>
 /// <param name="PortalID">PortalID</param>
 /// <returns>True for deleted successfully.</returns>
 public override bool DeleteRole(Guid RoleID, int PortalID)
 {
     return(MembershipDataProvider.DeletePortalRole(RoleID, PortalID));
 }
Beispiel #12
0
 /// <summary>
 /// Obtain application portal roles.
 /// </summary>
 /// <param name="PortalID">PortalID</param>
 /// <param name="IsAll">1 for all roles.</param>
 /// <param name="UserName">User name.</param>
 /// <returns>List of RoleInfo class.</returns>
 public override List <RoleInfo> GetPortalRoles(int PortalID, int IsAll, string UserName)
 {
     return(MembershipDataProvider.GetPortalRoles(PortalID, IsAll, UserName));
 }
Beispiel #13
0
        /// <summary>
        /// Connect to the database and check condition for dashboard access.
        /// </summary>
        /// <param name="UserName">UserName</param>
        /// /// <param name="PortalID">PortalID</param>
        /// <returns></returns>
        public bool IsDashboardAccesible(string userName, int portalID)
        {
            MembershipDataProvider objProvider = new MembershipDataProvider();

            return(objProvider.IsDashboardAccesible(userName, portalID));
        }
 private void RegisterUser()
 {
     try
     {
         if (string.IsNullOrEmpty(UserName.Text) || string.IsNullOrEmpty(FirstName.Text) || string.IsNullOrEmpty(LastName.Text) || string.IsNullOrEmpty(Email.Text) || string.IsNullOrEmpty(Password.Text) || string.IsNullOrEmpty(ConfirmPassword.Text) || string.IsNullOrEmpty(CaptchaValue.Text))
         {
             ShowMessage("", GetSageMessage("UserRegistration", "PleaseEnterAllRequiredFields"), "", SageMessageType.Alert);
         }
         else if (UserName.Text.Length > 50)
         {
             ShowMessage("", "Username should not be greater than 50 characters", "", SageMessageType.Alert);
         }
         else
         {
             int      UserRegistrationType = pagebase.GetSettingIntValueByIndividualKey(SageFrameSettingKeys.PortalUserRegistration);
             bool     isUserActive         = UserRegistrationType == 2 ? true : false;
             UserInfo objUser = new UserInfo();
             objUser.ApplicationName = Membership.ApplicationName;
             objUser.FirstName       = Server.HtmlEncode(FirstName.Text);
             objUser.UserName        = Server.HtmlEncode(UserName.Text);
             objUser.LastName        = Server.HtmlEncode(LastName.Text);
             string Pwd, PasswordSalt;
             PasswordHelper.EnforcePasswordSecurity(_member.PasswordFormat, Password.Text, out Pwd, out PasswordSalt);
             objUser.Password         = Pwd;
             objUser.PasswordSalt     = PasswordSalt;
             objUser.Email            = Email.Text;
             objUser.SecurityQuestion = " ";
             objUser.SecurityAnswer   = " ";
             objUser.IsApproved       = true;
             objUser.CurrentTimeUtc   = DateTime.Now;
             objUser.CreatedDate      = DateTime.Now;
             objUser.UniqueEmail      = 0;
             objUser.PasswordFormat   = _member.PasswordFormat;
             objUser.PortalID         = GetPortalID;
             objUser.AddedOn          = DateTime.Now;
             objUser.AddedBy          = GetUsername;
             objUser.UserID           = Guid.NewGuid();
             objUser.RoleNames        = SystemSetting.REGISTER_USER_ROLENAME;
             objUser.StoreID          = GetStoreID;
             objUser.CustomerID       = 0;
             UserCreationStatus status = new UserCreationStatus();
             CheckRegistrationType(UserRegistrationType, ref objUser);
             MembershipDataProvider.CreatePortalUser(objUser, out status, UserCreationMode.REGISTER);
             if (status == UserCreationStatus.DUPLICATE_USER)
             {
                 ShowMessage("", GetSageMessage("UserManagement", "NameAlreadyExists"), "", SageMessageType.Alert);
                 GenerateCaptchaImage();
             }
             else if (status == UserCreationStatus.DUPLICATE_EMAIL)
             {
                 ShowMessage("", GetSageMessage("UserManagement", "EmailAddressAlreadyIsInUse"), "", SageMessageType.Alert);
                 GenerateCaptchaImage();
             }
             else if (status == UserCreationStatus.SUCCESS)
             {
                 try
                 {
                     IsModuleInstalled(1);
                     MembershipUser userInfo = Membership.GetUser(UserName.Text.Trim());
                     if (chkIsSubscribeNewsLetter.Checked)
                     {
                         int?newID = 0;
                         ManageNewsLetterSubscription(Email.Text, ref newID);
                         IsModuleInstalled(2);
                     }
                     HandlePostRegistration(UserRegistrationType);
                 }
                 catch (Exception)
                 {
                     ShowMessage("", GetSageMessage("UserManagement", "SecureConnection"), "", SageMessageType.Alert);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         ProcessException(ex);
     }
 }
    public void CreateUser()
    {
        try
        {
            if (SystemSetting.SYSTEM_DEFAULT_USERS.Contains(txtUserName.Text.Trim(), StringComparer.OrdinalIgnoreCase))
            {
                ltrWarning.Text = "Conflict  of UserName with RoleName so  please enter another UserName.";
            }
            else
            {
                if (txtUserName.Text != string.Empty && txtNewPassword.Text != string.Empty)
                {
                    string Uname = txtUserName.Text.Trim();
                    if (txtNewPassword.Text.Length >= 4)
                    {
                        SageFrameConfig objConfig = new SageFrameConfig();
                        string          Role      = SystemSetting.SYSTEM_SUPER_ROLES[0];
                        UserInfo        objUser   = new UserInfo();
                        objUser.ApplicationName = Membership.ApplicationName;
                        objUser.FirstName       = Uname;
                        objUser.UserName        = Uname;
                        objUser.LastName        = Uname;
                        string Password, PasswordSalt;
                        MembershipController m = new MembershipController();
                        PasswordHelper.EnforcePasswordSecurity(m.PasswordFormat, txtNewPassword.Text, out Password, out PasswordSalt);
                        objUser.Password         = Password;
                        objUser.PasswordSalt     = PasswordSalt;
                        objUser.Email            = Uname;
                        objUser.SecurityQuestion = string.Empty;
                        objUser.SecurityAnswer   = string.Empty;
                        objUser.IsApproved       = true;
                        objUser.CurrentTimeUtc   = DateTimeHelper.GetUtcTime(DateTime.Now);
                        objUser.CreatedDate      = DateTimeHelper.GetUtcTime(DateTime.Now);
                        objUser.UniqueEmail      = 0;
                        objUser.PasswordFormat   = m.PasswordFormat;
                        objUser.PortalID         = GetPortalID;
                        objUser.AddedOn          = DateTimeHelper.GetUtcTime(DateTime.Now);
                        objUser.AddedBy          = GetUsername;
                        objUser.UserID           = Guid.NewGuid();
                        objUser.RoleNames        = Role;
                        objUser.StoreID          = GetStoreID;
                        objUser.CustomerID       = CustomerID;

                        UserCreationStatus status = new UserCreationStatus();
                        try
                        {
                            MembershipDataProvider.CreatePortalUser(objUser, out status, UserCreationMode.CREATE);
                        }
                        catch (Exception ex)
                        {
                            throw ex;
                        }
                    }
                    else
                    {
                        ltrWarning.Text = "Password must be at least 4 characters long.";
                    }
                }
                else
                {
                    ltrWarning.Text = "Please enter all the required fields.";
                }
            }
        }
        catch (Exception ex)
        {
            ProcessException(ex);
        }
    }
Beispiel #16
0
        protected void imbCreateUser_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                if (txtUserName.Text != "" && txtSecurityQuestion.Text != "" && txtSecurityAnswer.Text != "" && txtFirstName.Text != "" && txtLastName.Text != "" && txtEmail.Text != "")
                {
                    if (lstAvailableRoles.SelectedIndex > -1)
                    {
                        UserInfo objUser = new UserInfo();
                        objUser.ApplicationName = Membership.ApplicationName;
                        objUser.FirstName       = txtFirstName.Text;
                        objUser.UserName        = txtUserName.Text;
                        objUser.LastName        = txtLastName.Text;
                        string Password, PasswordSalt;
                        PasswordHelper.EnforcePasswordSecurity(m.PasswordFormat, txtPassword.Text, out Password, out PasswordSalt);
                        objUser.Password         = Password;
                        objUser.PasswordSalt     = PasswordSalt;
                        objUser.Email            = txtEmail.Text;
                        objUser.SecurityQuestion = txtSecurityQuestion.Text;
                        objUser.SecurityAnswer   = txtSecurityAnswer.Text;
                        objUser.IsApproved       = true;
                        objUser.CurrentTimeUtc   = DateTime.Now;
                        objUser.CreatedDate      = DateTime.Now;
                        objUser.UniqueEmail      = 0;
                        objUser.PasswordFormat   = m.PasswordFormat;
                        objUser.PortalID         = GetPortalID;
                        objUser.AddedOn          = DateTime.Now;
                        objUser.AddedBy          = GetUsername;
                        objUser.UserID           = Guid.NewGuid();
                        objUser.RoleNames        = GetSelectedRoleNameString();
                        objUser.StoreID          = GetStoreID;
                        objUser.CustomerID       = 0;

                        UserCreationStatus status = new UserCreationStatus();
                        try
                        {
                            MembershipDataProvider.CreatePortalUser(objUser, out status, UserCreationMode.CREATE);

                            if (status == UserCreationStatus.DUPLICATE_USER)
                            {
                                ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "NameAlreadyExists"), "", SageMessageType.Alert);
                            }
                            else if (status == UserCreationStatus.DUPLICATE_EMAIL)
                            {
                                ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "EmailAddressAlreadyIsInUse"), "", SageMessageType.Alert);
                            }
                            else if (status == UserCreationStatus.SUCCESS)
                            {
                                PanelVisibility(false, true, false);
                                BindUsers(string.Empty);
                                ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "UserCreatedSuccessfully"), "", SageMessageType.Success);
                            }
                        }
                        catch (Exception)
                        {
                            throw;
                        }
                    }
                    else
                    {
                        ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "PleaseSelectRole"), "", SageMessageType.Alert);
                    }
                }
                else
                {
                    ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "PleaseEnterAllRequiredFields"), "", SageMessageType.Alert);
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }