public static bool CreatePortalUser(UserInfo obj, out UserCreationStatus status, UserCreationMode mode)
        {
            string sp = "[dbo].[usp_sf_CreateUser]";
            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@ApplicationName", obj.ApplicationName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserName", obj.UserName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@FirstName", obj.FirstName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@LastName", obj.LastName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@Password", obj.Password));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordSalt", obj.PasswordSalt));
                ParamCollInput.Add(new KeyValuePair<string, object>("@Email", obj.Email));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordQuestion", obj.SecurityQuestion));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordAnswer", obj.SecurityAnswer));
                ParamCollInput.Add(new KeyValuePair<string, object>("@IsApproved", obj.IsApproved));
                ParamCollInput.Add(new KeyValuePair<string, object>("@CurrentTimeUtc", obj.CurrentTimeUtc));
                ParamCollInput.Add(new KeyValuePair<string, object>("@CreateDate", obj.CreatedDate));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UniqueEmail", obj.UniqueEmail));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordFormat", obj.PasswordFormat));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", obj.PortalID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@AddedOn", obj.AddedOn));
                ParamCollInput.Add(new KeyValuePair<string, object>("@AddedBy", obj.AddedBy));
                ParamCollInput.Add(new KeyValuePair<string, object>("@RoleNames", obj.RoleNames));
                ParamCollInput.Add(new KeyValuePair<string, object>("@StoreID", obj.StoreID)); 

                List<KeyValuePair<string, object>> ParamCollOutput = new List<KeyValuePair<string, object>>();
                ParamCollOutput.Add(new KeyValuePair<string, object>("@UserId", obj.UserID));
                ParamCollOutput.Add(new KeyValuePair<string, object>("@ErrorCode", 0));
                ParamCollOutput.Add(new KeyValuePair<string, object>("@CustomerID", obj.CustomerID));             

                SageFrameSQLHelper sagesql = new SageFrameSQLHelper();

                List<KeyValuePair<int, string>> OutputValColl = new List<KeyValuePair<int, string>>();
                OutputValColl = sagesql.ExecuteNonQueryWithMultipleOutput(sp, ParamCollInput, ParamCollOutput);
                int CustomerID = int.Parse(OutputValColl[2].Value);
                int ErrorCode = int.Parse(OutputValColl[1].Value);
                Guid UserID = new Guid(OutputValColl[0].Value.ToString());

                switch (ErrorCode)
                {
                    case 3:
                        status = UserCreationStatus.DUPLICATE_EMAIL;
                        break;
                    case 6:
                        status = UserCreationStatus.DUPLICATE_USER;
                        break;
                    default:
                        status = UserCreationStatus.SUCCESS;
                        break;
                }
                return true;
            }
            catch (Exception)
            {
                throw;
            }


        }
 public bool ChangePassword(AspxCommonInfo aspxCommonObj, string newPassword, string retypePassword)
 {
     MembershipController m = new MembershipController();
     try
     {
         if (newPassword != "" && retypePassword != "" && newPassword == retypePassword && aspxCommonObj.UserName != "")
         {
             UserInfo sageUser = m.GetUserDetails(aspxCommonObj.PortalID, aspxCommonObj.UserName);
             // Guid userID = (Guid)member.ProviderUserKey;
             string password, passwordSalt;
             PasswordHelper.EnforcePasswordSecurity(m.PasswordFormat, newPassword, out password, out passwordSalt);
             UserInfo user = new UserInfo(sageUser.UserID, password, passwordSalt, m.PasswordFormat);
             m.ChangePassword(user);
             return true;
         }
         else
         {
             return false;
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
 public abstract bool ChangePassword(UserInfo user);
        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);
             }
        }
 protected void imgManageRoleSave_Click(object sender, EventArgs e)
 {
     try
     {
         string unselectedRoles = GetListBoxText(lstUnselectedRoles);
         string selectedRoles = GetListBoxText(lstSelectedRoles);
         if (hdnEditUsername.Value != "")
         {
             string userRoles = role.GetRoleNames(hdnEditUsername.Value, GetPortalID);
             string[] arrRoles = userRoles.Split(',');
             UserInfo user = new UserInfo(Membership.ApplicationName, new Guid(hdnEditUserID.Value), userRoles, GetPortalID);
             if (arrRoles.Length > 0 && selectedRoles.Length > 0)
             {
                 role.ChangeUserInRoles(Membership.ApplicationName, new Guid(hdnEditUserID.Value), userRoles, selectedRoles, GetPortalID);
                 ShowMessage(SageMessageTitle.Information.ToString(), GetSageMessage("UserManagement", "UserRolesUpdatedSuccessfully"), "", SageMessageType.Success);
                
             }
             
         }
     }
     catch (Exception ex)
     {
         ProcessException(ex);
        ShowMessage(SageMessageTitle.Information.ToString(), GetSageMessage("UserManagement", "UnknownErrorOccur"), "", SageMessageType.Error);
     }
 }
        protected void imgUserInfoSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (hdnEditUsername.Value != "")
                {
                    if (txtManageFirstName.Text != "" && txtManageLastName.Text != "" && txtManageEmail.Text != "")
                    {
                        MembershipUser member = Membership.GetUser(hdnEditUsername.Value);
                        member.Email = txtManageEmail.Text;
                        
                        if (!EmailAddressExists(txtManageEmail.Text,m.RequireUniqueEmail))
                        {
                            UserInfo user = new UserInfo(Membership.ApplicationName, hdnEditUsername.Value,new Guid(hdnEditUserID.Value), txtManageFirstName.Text,txtManageLastName.Text, txtManageEmail.Text, GetPortalID,chkIsActive.Checked, GetUsername, GetStoreID);
                            UserUpdateStatus status=new UserUpdateStatus();
                            m.UpdateUser(user, out status);
                            if (status == UserUpdateStatus.DUPLICATE_EMAIL_NOT_ALLOWED)
                            {
                                ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "EmailAddressAlreadyIsInUse"), "", SageMessageType.Alert);
                                
                            }
                            else if (status == UserUpdateStatus.USER_UPDATE_SUCCESSFUL)
                            {
                                BindUsers(string.Empty);
                                if(user.IsActive)
                                {
                                    SendActivateMail(user);
                                }
                                ShowMessage(SageMessageTitle.Notification.ToString(),GetSageMessage("UserManagement", "UserInformationSaveSuccessfully"), "",SageMessageType.Success);
                            }
                            
                        }
                        else
                        {
                            ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "EmailAddressAlreadyIsInUse"), "", SageMessageType.Alert);

                        }
                    }
                    else
                    {
                      ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "PleaseEnterTheRequiredFields"), "", SageMessageType.Alert);
                    }
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }
        public static bool ChangePassword(UserInfo obj)
        {
            string sp = "[dbo].[usp_sf_ResetPassword]";
            SageFrameSQLHelper sagesql = new SageFrameSQLHelper();

            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserID", obj.UserID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@NewPassword", obj.Password));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordSalt", obj.PasswordSalt));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PasswordFormat", obj.PasswordFormat));

                sagesql.ExecuteNonQuery(sp, ParamCollInput);
                return true;
            }
            catch (Exception)
            {

                throw;
            }
        }
        public static bool AddUserInRoles(UserInfo obj)
        {
            string sp = "[dbo].[usp_sf_UserInRolesAdd]";
            SageFrameSQLHelper sagesql = new SageFrameSQLHelper();
            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@ApplicationName", obj.ApplicationName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserID", obj.UserID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@RoleNames", obj.RoleNames));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", obj.PortalID));

                sagesql.ExecuteNonQuery(sp, ParamCollInput);


                return true;
            }
            catch (Exception)
            {

                throw;
            }

        }
        public static bool DeleteUser(UserInfo user)
        {
            string sp = "[dbo].[usp_UsersDelete]";
            SQLHandler sagesql = new SQLHandler();
            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@ApplicationName", user.ApplicationName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@Username", user.UserName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", user.PortalID));                
                ParamCollInput.Add(new KeyValuePair<string, object>("@StoreID", user.StoreID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@DeletedBy", user.AddedBy));
                sagesql.ExecuteNonQuery(sp, ParamCollInput);

                return true;
            }
            catch (Exception)
            {

                throw;
            }
        }
        protected void wzdPasswordRecover_NextButtonClick(object sender, WizardNavigationEventArgs e)
        {
            try
            {
                MessageTemplateDataContext dbMessageTemplate = new MessageTemplateDataContext(SystemSetting.SageFrameConnectionString);
                if (txtPassword.Text != null && txtRetypePassword.Text != "" && txtRetypePassword.Text == txtPassword.Text)
                {
                    if (txtPassword.Text.Length < 4)
                    {
                        ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("PasswordRecovery", "PasswordLength"), "", SageMessageType.Alert);
                        e.Cancel = true;
                    }
                    else
                    {
                        if (hdnRecoveryCode.Value != "")
                        {
                            UserManagementDataContext dbUser = new UserManagementDataContext(SystemSetting.SageFrameConnectionString);
                            var sageframeuser = dbUser.sp_GetUsernameByActivationOrRecoveryCode(hdnRecoveryCode.Value, GetPortalID).SingleOrDefault();
                            if (sageframeuser != null)
                            {
                                MembershipController m = new MembershipController();
                                UserInfo sageUser = m.GetUserDetails(GetPortalID, sageframeuser.CodeForUsername);
                                //MembershipUser user = Membership.GetUser(sageframeuser.CodeForUsername);
                                string Password, PasswordSalt;
                                PasswordHelper.EnforcePasswordSecurity(m.PasswordFormat, txtPassword.Text, out Password, out PasswordSalt);
                                UserInfo user1 = new UserInfo(sageUser.UserID, Password, PasswordSalt, m.PasswordFormat);
                                m.ChangePassword(user1);
                                //string oldPassword = user.ResetPassword();

                                //user.ChangePassword(oldPassword, txtPassword.Text);

                                var template = dbMessageTemplate.sp_MessageTemplateByMessageTemplateTypeID(SystemSetting.PASSWORD_RECOVERED_SUCESSFUL_INFORMATION, GetPortalID).SingleOrDefault();
                                if (template != null)
                                {
                                    ((Literal)WizardStep2.FindControl("litPasswordChangedSuccessful")).Text = template.Body;
                                }
                                var messageTemplates = dbMessageTemplate.sp_MessageTemplateByMessageTemplateTypeID(SystemSetting.PASSWORD_RECOVERED_SUCCESSFUL_EMAIL, GetPortalID);
                                foreach (var messageTemplate in messageTemplates)
                                {
                                    MessageTokenDataContext messageTokenDB = new MessageTokenDataContext(SystemSetting.SageFrameConnectionString);
                                    var messageTokenValues = messageTokenDB.sp_GetPasswordRecoverySuccessfulTokenValue(sageUser.UserName, GetPortalID);
                                    CommonFunction comm = new CommonFunction();
                                    DataTable dtTokenValues = comm.LINQToDataTable(messageTokenValues);
                                    string replacedMessageSubject = MessageToken.ReplaceAllMessageToken(messageTemplate.Subject, dtTokenValues);
                                    string replacedMessageTemplate = MessageToken.ReplaceAllMessageToken(messageTemplate.Body, dtTokenValues);
                                    MailHelper.SendMailNoAttachment(messageTemplate.MailFrom, sageUser.Email, replacedMessageSubject, replacedMessageTemplate, string.Empty, string.Empty);
                                }
                            }
                            else
                            {
                                var template = dbMessageTemplate.sp_MessageTemplateByMessageTemplateTypeID(SystemSetting.PASSWORD_RECOVERED_SUCESSFUL_INFORMATION, GetPortalID).SingleOrDefault();
                                if (template != null)
                                {
                                    ((Literal)WizardStep2.FindControl("litPasswordChangedSuccessful")).Text = template.Body;
                                }
                                e.Cancel = true;
                                ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("PasswordRecovery", "UnknownErrorPleaseTryAgaing"), "", SageMessageType.Alert);
                            }
                        }
                        else
                        {
                            var template = dbMessageTemplate.sp_MessageTemplateByMessageTemplateTypeID(SystemSetting.PASSWORD_RECOVERED_SUCESSFUL_INFORMATION, GetPortalID).SingleOrDefault();
                            if (template != null)
                            {
                                ((Literal)WizardStep2.FindControl("litPasswordChangedSuccessful")).Text = template.Body;
                            }
                            e.Cancel = true;
                            ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("PasswordRecovery", "UnknownError"), "", SageMessageType.Alert);
                        }
                    }
                }
                else
                {
                    ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("PasswordRecovery", "PleaseEnterAllRequiredFields"), "", SageMessageType.Alert);
                    e.Cancel = true;
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }
 private void CheckRegistrationType(int UserRegistrationType, ref UserInfo user)
 {
     switch (UserRegistrationType)
     {
         case 0:
             break;
         case 1:
             user.IsApproved = false;
             break;
         case 2:
             user.IsApproved = true;
             break;
         case 3:
             user.IsApproved = false;
             break;
     }
 }
 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 abstract bool DeleteUserInRoles(UserInfo user);
		public abstract void RemoveUserFromRole(int PortalID, UserInfo user, UserRoleInfo userRole);
 public abstract bool AddUserToRoles(UserInfo user);
		public abstract bool AddUserToRole(int PortalID, UserInfo user, UserRoleInfo UserRole);
Esempio n. 17
0
        public static SageFrameUserCollection SearchUsers(string RoleID, string SearchText, int PortalID, string UserName)
        {
            string sp = "[dbo].[usp_SageFrameUserListSearch]";
            SageFrameSQLHelper sagesql = new SageFrameSQLHelper();

            SageFrameUserCollection userColl = new SageFrameUserCollection();
            List<UserInfo> lstUsers = new List<UserInfo>();

            List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
            ParamCollInput.Add(new KeyValuePair<string, object>("@RoleID", RoleID));
            ParamCollInput.Add(new KeyValuePair<string, object>("@SearchText", SearchText));
            ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", PortalID));
            ParamCollInput.Add(new KeyValuePair<string, object>("@Username", UserName));
            try
            {
                SqlDataReader reader;
                reader = sagesql.ExecuteAsDataReader(sp, ParamCollInput);
                while (reader.Read())
                {
                    UserInfo obj = new UserInfo();
                    obj.UserID = new Guid(reader["userid"].ToString());
                    obj.UserName = reader["username"].ToString();
                    obj.FirstName = reader["firstname"].ToString();
                    obj.LastName = reader["lastname"].ToString();
                    obj.Email = reader["email"].ToString();
                    obj.IsActive = bool.Parse(reader["IsActive"].ToString());
                    lstUsers.Add(obj);
                }
                reader.Close();
                userColl.UserList = lstUsers;
                return userColl;

            }
            catch (Exception ex)
            {

                throw (ex);
            }

        }
 /// <summary>
 /// Assigne role to user.
 /// </summary>
 /// <param name="PortalID">PortalID</param>
 /// <param name="user">Object of UserInfo class.</param>
 /// <param name="UserRole">Object of UserRoleInfo class.</param>
 /// <returns>True for assigne role to user successfully.</returns>
 public override bool AddUserToRole(int PortalID, UserInfo user, UserRoleInfo UserRole)
 {
     throw new NotImplementedException();
 }
Esempio n. 19
0
        public static UserInfo GetUserDetails(string UserName, int PortalID)
        {
            string sp = "[dbo].[usp_GetUserDetails]";
            SQLHandler sagesql = new SQLHandler();

            List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
            ParamCollInput.Add(new KeyValuePair<string, object>("@UserName", UserName));
            ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", PortalID));

            List<UserInfo> lstUser = new List<UserInfo>();
            try
            {
                SqlDataReader reader;
                reader = sagesql.ExecuteAsDataReader(sp, ParamCollInput);
                while (reader.Read())
                {
                    UserInfo obj = new UserInfo();
                    obj.UserID = new Guid(reader["userid"].ToString());
                    obj.UserName = reader["Username"].ToString();
                    obj.Password = reader["Password"].ToString();
                    obj.PasswordSalt = reader["PasswordSalt"].ToString();
                    obj.PasswordFormat = int.Parse(reader["PasswordFormat"].ToString());
                    obj.FirstName = reader["FirstName"].ToString();
                    obj.LastName = reader["LastName"].ToString();
                    obj.Email = reader["Email"].ToString();
                    obj.LastPasswordChangeDate = DateTime.Parse(reader["LastPasswordChangedDate"].ToString());
                    obj.LastActivityDate = DateTime.Parse(reader["LastActivityDate"].ToString());
                    obj.LastLoginDate = DateTime.Parse(reader["LastLoginDate"].ToString());
                    obj.IsApproved = bool.Parse(reader["IsApproved"].ToString());
                    obj.UserExists = true;
                    lstUser.Add(obj);
                }
                reader.Close();
                UserInfo userObj = lstUser.Count > 0 ? lstUser[0] : new UserInfo(false);
                return userObj;

            }
            catch (Exception ex)
            {

                throw (ex);
            }
        }
 /// <summary>
 /// Remove user from application role.
 /// </summary>
 /// <param name="PortalID">PortalID</param>
 /// <param name="user">User name.</param>
 /// <param name="userRole">User role.</param>
 public override void RemoveUserFromRole(int PortalID, UserInfo user, UserRoleInfo userRole)
 {
     throw new NotImplementedException();
 }
Esempio n. 21
0
        public static bool DeleteUserInRoles(UserInfo obj)
        {
            string sp = "[dbo].[usp_sf_UserInRolesDelete]";
            SageFrameSQLHelper sagesql = new SageFrameSQLHelper();
            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@ApplicationName", obj.ApplicationName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserID", obj.UserID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@RoleNames", obj.RoleNames));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", obj.PortalID));

                List<KeyValuePair<string, object>> ParamCollOutput = new List<KeyValuePair<string, object>>();
                ParamCollOutput.Add(new KeyValuePair<string, object>("@ErrorCode", 0));

                List<KeyValuePair<int, string>> OutPutColl = new List<KeyValuePair<int, string>>();
                OutPutColl = sagesql.ExecuteNonQueryWithMultipleOutput(sp, ParamCollInput, ParamCollOutput);

                return true;
            }
            catch (Exception)
            {

                throw;
            }

        }
 /// <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));
 }
        protected void gdvUser_RowCommand(object sender, GridViewCommandEventArgs e)
        {         
            try
            {
                int rownum = Convert.ToInt32(e.CommandArgument);
                string username = gdvUser.DataKeys[rownum]["Username"].ToString();
                string userId = gdvUser.DataKeys[rownum]["UserId"].ToString();

                hdnEditUsername.Value = username;
                hdnEditUserID.Value = userId;

                switch (e.CommandName)
                {
                    case "EditUser":
                        string[] userRoles = Roles.GetRolesForUser(username);

                        UserInfo sageUser = m.GetUserDetails(GetPortalID, hdnEditUsername.Value);
                        hdnCurrentEmail.Value = sageUser.Email;
                        txtManageEmail.Text = sageUser.Email;
                        txtManageFirstName.Text = sageUser.FirstName;
                        txtManageLastName.Text = sageUser.LastName;
                        txtManageUsername.Text = sageUser.UserName;
                        chkIsActive.Checked = sageUser.IsApproved == true ? true : false;

                        if (SystemSetting.SYSTEM_USERS.Contains(hdnEditUsername.Value) || hdnEditUsername.Value == GetUsername)
                        {
                            chkIsActive.Enabled = false;
                            chkIsActive.Attributes.Add("class", "disabledClass");
                        }

                        txtCreatedDate.Text = sageUser.AddedOn.ToString();
                        txtLastActivity.Text = sageUser.LastActivityDate.ToShortDateString();
                        txtLastLoginDate.Text = sageUser.LastLoginDate.ToShortDateString();
                        txtLastPasswordChanged.Text = sageUser.LastPasswordChangeDate.ToShortDateString();
                        lstSelectedRoles.Items.Clear();
                        lstUnselectedRoles.Items.Clear();
                        RolesManagementDataContext dbRoles = new RolesManagementDataContext(SystemSetting.SageFrameConnectionString);
                        var roles = dbRoles.sp_PortalRoleList(GetPortalID, false, GetUsername);
                        foreach (var role in roles)
                        {
                            string roleName = role.RoleName;
                            if (SystemSetting.SYSTEM_ROLES.Contains(roleName, StringComparer.OrdinalIgnoreCase))
                            {
                                if (userRoles.Contains(roleName, StringComparer.OrdinalIgnoreCase))
                                {
                                    lstSelectedRoles.Items.Add(new ListItem(roleName, roleName));
                                }
                                else
                                {
                                    lstUnselectedRoles.Items.Add(new ListItem(roleName, roleName));
                                }
                            }
                            else
                            {
                                if (userRoles.Contains(roleName, StringComparer.OrdinalIgnoreCase))
                                {
                                    string rolePrefix = GetPortalSEOName + "_";
                                    roleName = roleName.Replace(rolePrefix, "");
                                    lstSelectedRoles.Items.Add(new ListItem(roleName, roleName));
                                }
                                else
                                {
                                    string rolePrefix = GetPortalSEOName + "_";
                                    roleName = roleName.Replace(rolePrefix, "");
                                    lstUnselectedRoles.Items.Add(new ListItem(roleName, roleName));
                                }
                            }
                        }
                        PanelVisibility(false, false, true);
                        userProfile1.EditUserName = hdnEditUsername.Value;
                        break;
                    case "DeleteUser":
                        if (hdnEditUsername.Value != "")
                        {
                            UserInfo user = new UserInfo(hdnEditUsername.Value, GetPortalID, Membership.ApplicationName, GetUsername, GetStoreID);
                            m.DeleteUser(user);
                            ShowMessage(SageMessageTitle.Information.ToString(), GetSageMessage("UserManagement", "UserDeletedSuccessfully"), "", SageMessageType.Success);
                            BindUsers(string.Empty);
                        }
                        else
                        {
                            ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "SelectDeleteButtonOnceAgain"), "", SageMessageType.Alert);
                        }
                        break;
                }
            }
            catch (Exception ex)
            {
                ProcessException(ex);
            }
        }
 /// <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));
 }
        private void SendActivateMail(UserInfo user)
        {
            var dbMessageTemplate = new MessageTemplateDataContext(SystemSetting.SageFrameConnectionString);
            MessageTokenDataContext messageTokenDB = new MessageTokenDataContext(SystemSetting.SageFrameConnectionString);
             
            var messageTemplates = dbMessageTemplate.sp_MessageTemplateByMessageTemplateTypeID(SystemSetting.ACTIVATION_SUCCESSFUL_EMAIL, GetPortalID);
            foreach (var messageTemplate in messageTemplates)
            {
                var linqActivationTokenValues = messageTokenDB.sp_GetActivationSuccessfulTokenValue(user.UserName, GetPortalID);
                CommonFunction comm = new CommonFunction();
                DataTable dtActivationSuccessfulTokenValues = comm.LINQToDataTable(linqActivationTokenValues);
                string replaceMessageSubject = MessageToken.ReplaceAllMessageToken(messageTemplate.Subject, dtActivationSuccessfulTokenValues);
                string replacedMessageTemplate = MessageToken.ReplaceAllMessageToken(messageTemplate.Body, dtActivationSuccessfulTokenValues);
                try
                {
                    MailHelper.SendMailNoAttachment(messageTemplate.MailFrom, user.Email, replaceMessageSubject, replacedMessageTemplate, string.Empty, string.Empty);
                }
                catch (Exception)
                {

                    ShowMessage("", GetSageMessage("UserRegistration", "SecureConnectionUAEmailError"), "", SageMessageType.Alert);
                    return;
                }
            }                      
        }
Esempio n. 26
0
        public static bool UpdateUser(UserInfo obj, out UserUpdateStatus status)
        {
            string sp = "[dbo].[usp_sf_UsersUpdate]";
            try
            {
                List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
                ParamCollInput.Add(new KeyValuePair<string, object>("@ApplicationName", obj.ApplicationName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserName", obj.UserName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UserID", obj.UserID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@FirstName", obj.FirstName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@LastName", obj.LastName));
                ParamCollInput.Add(new KeyValuePair<string, object>("@Email", obj.Email));
                ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", obj.PortalID));
                ParamCollInput.Add(new KeyValuePair<string, object>("@IsApproved", obj.IsApproved));
                ParamCollInput.Add(new KeyValuePair<string, object>("@UpdatedBy", obj.UpdatedBy));
                ParamCollInput.Add(new KeyValuePair<string, object>("@StoreID", obj.StoreID));

                List<KeyValuePair<string, object>> ParamCollOutput = new List<KeyValuePair<string, object>>();
                ParamCollOutput.Add(new KeyValuePair<string, object>("@ErrorCode", 0));

                SageFrameSQLHelper sagesql = new SageFrameSQLHelper();

                List<KeyValuePair<int, string>> OutputValColl = new List<KeyValuePair<int, string>>();
                OutputValColl = sagesql.ExecuteNonQueryWithMultipleOutput(sp, ParamCollInput, ParamCollOutput);

                int ErrorCode = int.Parse(OutputValColl[0].Value);

                switch (ErrorCode)
                {
                    case 1:
                        status = UserUpdateStatus.DUPLICATE_EMAIL_NOT_ALLOWED;
                        break;
                    default:
                        status = UserUpdateStatus.USER_UPDATE_SUCCESSFUL;
                        break;
                }
                return true;
            }
            catch (Exception)
            {
                throw;
            }


        }
 protected void btnManagePasswordSave_Click(object sender, EventArgs e)
 {
     try
     {
         if (txtNewPassword.Text != "" && txtRetypeNewPassword.Text != "" && txtNewPassword.Text == txtRetypeNewPassword.Text && hdnEditUsername.Value != "")
         {
              MembershipUser member = Membership.GetUser(hdnEditUsername.Value);
              string Password, PasswordSalt;
              PasswordHelper.EnforcePasswordSecurity(m.PasswordFormat, txtNewPassword.Text, out Password, out PasswordSalt);
              UserInfo user = new UserInfo(new Guid(hdnEditUserID.Value), Password, PasswordSalt,m.PasswordFormat);
              m.ChangePassword(user);
              ShowMessage(SageMessageTitle.Information.ToString(), GetSageMessage("UserManagement", "UserPasswordChangedSuccessfully"), "", SageMessageType.Success);
         }
         else
         {
           ShowMessage(SageMessageTitle.Notification.ToString(), GetSageMessage("UserManagement", "PleaseEnterTheRequiredField"), "", SageMessageType.Alert);
         }
     }
     catch (Exception ex)
     {
         ProcessException(ex);
     }
 }
Esempio n. 28
0
        public static List<UserInfo> GetPortalUsers(int PortalID)
        {
            string sp = "[dbo].[usp_PortalUserListGet]";
            SQLHandler sagesql = new SQLHandler();

            List<KeyValuePair<string, object>> ParamCollInput = new List<KeyValuePair<string, object>>();
            ParamCollInput.Add(new KeyValuePair<string, object>("@PortalID", PortalID));

            List<UserInfo> lstUsers = new List<UserInfo>();
            try
            {
                SqlDataReader reader;
                reader = sagesql.ExecuteAsDataReader(sp, ParamCollInput);
                while (reader.Read())
                {
                    UserInfo obj = new UserInfo();
                    obj.UserID = new Guid(reader["UserID"].ToString());
                    obj.UserName = reader["UserName"].ToString();
                    obj.IsApproved = bool.Parse(reader["IsActive"].ToString());
                    lstUsers.Add(obj);
                }
                reader.Close();
                return lstUsers;

            }
            catch (Exception ex)
            {

                throw (ex);
            }

        }
 private void LogInPublicModeRegistration(UserInfo user)
 {
     string strRoles = string.Empty;
     RoleController role = new RoleController();
     SageFrameConfig sfConfig = new SageFrameConfig();
     string userRoles = role.GetRoleNames(user.UserName, GetPortalID);
     strRoles += userRoles;
     if (strRoles.Length > 0)
     {
         SetUserRoles(strRoles);
         SessionTracker sessionTracker = (SessionTracker)Session[SessionKeys.Tracker];
         sessionTracker.PortalID = GetPortalID.ToString();
         sessionTracker.Username = user.UserName;
         Session[SessionKeys.Tracker] = sessionTracker;
         SageFrame.Web.SessionLog SLog = new SageFrame.Web.SessionLog();
         SLog.SessionTrackerUpdateUsername(sessionTracker, sessionTracker.Username, GetPortalID.ToString());
         {
             FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
                 user.UserName,
                 DateTime.Now,
                 DateTime.Now.AddMinutes(30),
                 true,
                 GetPortalID.ToString(),
                 FormsAuthentication.FormsCookiePath);
             // Encrypt the ticket.
             string encTicket = FormsAuthentication.Encrypt(ticket);
             // Create the cookie.
             Response.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName + "_" + GetApplicationName + "_" + GetPortalID, encTicket));
             bool IsUseFriendlyUrls = sfConfig.GetSettingBollByKey(SageFrameSettingKeys.UseFriendlyUrls);
             if (IsUseFriendlyUrls)
             {
                 if (GetPortalID > 1)
                 {
                     Response.Redirect(ResolveUrl("~/portal/" + GetPortalSEOName + "/" + sfConfig.GetSettingsByKey(SageFrameSettingKeys.PortalDefaultPage) + SageFrameSettingKeys.PageExtension), false);
                 }
                 else
                 {
                     Response.Redirect(ResolveUrl("~/" + sfConfig.GetSettingsByKey(SageFrameSettingKeys.PortalDefaultPage) + SageFrameSettingKeys.PageExtension), false);
                 }
             }
             else
             {
                 Response.Redirect(ResolveUrl("~/Default.aspx?ptlid=" + GetPortalID + "&ptSEO=" + GetPortalSEOName + "&pgnm=" + sfConfig.GetSettingsByKey(SageFrameSettingKeys.PortalDefaultPage)), false);
             }
         }
     }
 }
Esempio n. 30
0
        public static SageFrameUserCollection GetAllUsers()
        {
            string sp = "[dbo].[usp_UsersGetAll]";
            SQLHandler sagesql = new SQLHandler();

            SageFrameUserCollection userColl = new SageFrameUserCollection();
            List<UserInfo> lstUsers = new List<UserInfo>();
            try
            {
                SqlDataReader reader;
                reader = sagesql.ExecuteAsDataReader(sp);
                while (reader.Read())
                {
                    UserInfo obj = new UserInfo();
                    obj.UserID = new Guid(reader["userid"].ToString());
                    obj.UserName = reader["username"].ToString();
                    obj.FirstName = reader["firstname"].ToString();
                    obj.LastName = reader["lastname"].ToString();
                    obj.Email = reader["email"].ToString();
                    lstUsers.Add(obj);
                }
                reader.Close();
                userColl.UserList = lstUsers;
                return userColl;

            }
            catch (Exception ex)
            {

                throw (ex);
            }

        }