protected void uiButtonUpdate_Click(object sender, EventArgs e) { if (CurrentUser != null) { //CurrentUser.Email = uiTextBoxMail.Text; List<string> stringListToAdd = new List<string>(); List<string> stringListToRemove = new List<string>(); if (!CurrentUser.IsLockedOut) { if (CurrentUser.GetPassword() != uiTextBoxPass.Text && !string.IsNullOrEmpty(uiTextBoxPass.Text)) { CurrentUser.ChangePassword(CurrentUser.GetPassword(), uiTextBoxPass.Text); } } foreach (ListItem item in uiCheckBoxListRoles.Items) { if (item.Selected) { if (!Roles.IsUserInRole(CurrentUser.UserName, item.Text)) { stringListToAdd.Add(item.Text); } } else { if (Roles.IsUserInRole(CurrentUser.UserName, item.Text)) { stringListToRemove.Add(item.Text); } } } string[] stringArrayToAdd = stringListToAdd.ToArray(); string[] stringArrayToRemove = stringListToRemove.ToArray(); if (stringArrayToAdd.Length > 0) Roles.AddUserToRoles(CurrentUser.UserName, stringArrayToAdd); if (stringArrayToRemove.Length > 0) Roles.RemoveUserFromRoles(CurrentUser.UserName, stringArrayToRemove); // UsersProfiles usPr = new UsersProfiles(); usPr.getUserByGUID(new Guid(CurrentUser.ProviderUserKey.ToString())); usPr.FullName = txtFullName.Text; usPr.Email = txtEmail.Text; usPr.Telephone = txtTelephone.Text; usPr.GroupID = int.Parse(DropDownListGroups.SelectedValue); if (fileUploadPhoto.HasFile) { Bitmap UpImg = (Bitmap)Bitmap.FromStream(fileUploadPhoto.PostedFile.InputStream); string path = "/FileUploads/ProfilePics/" + DateTime.Now.ToString("ddMMyyyyhhmmss") + fileUploadPhoto.FileName; UpImg.Save(MapPath(path), System.Drawing.Imaging.ImageFormat.Png); usPr.Photo= path; } usPr.Save(); } else { List<string> stringListToAdd = new List<string>(); MembershipCreateStatus obj; MembershipUser objUser = Membership.CreateUser(uiTextBoxUserName.Text, uiTextBoxPass.Text, "*****@*****.**", null, null, true, out obj); bool success = true; switch (obj) { case MembershipCreateStatus.DuplicateUserName: uiLabelError.Text = "duplicate username"; uiLabelError.Visible = true; success = false; break; case MembershipCreateStatus.InvalidPassword: uiLabelError.Text = "invalid password. password must be (6) characters or more."; uiLabelError.Visible = true; success = false; break; case MembershipCreateStatus.ProviderError: case MembershipCreateStatus.UserRejected: uiLabelError.Text = "an error occurred. please try again."; uiLabelError.Visible = true; success = false; break; default: break; } if (success) { foreach (ListItem item in uiCheckBoxListRoles.Items) { if (item.Selected) { if (!Roles.IsUserInRole(objUser.UserName, item.Text)) { stringListToAdd.Add(item.Text); } } } string[] stringArrayToAdd = stringListToAdd.ToArray(); if (stringArrayToAdd.Length > 0) Roles.AddUserToRoles(objUser.UserName, stringArrayToAdd); // UsersProfiles usPr = new UsersProfiles(); usPr.AddNew(); usPr.UserID = new Guid(objUser.ProviderUserKey.ToString()); usPr.FullName = txtFullName.Text; usPr.Email = txtEmail.Text; usPr.Telephone = txtTelephone.Text; usPr.GroupID = int.Parse(DropDownListGroups.SelectedValue); if (fileUploadPhoto.HasFile) { Bitmap UpImg = (Bitmap)Bitmap.FromStream(fileUploadPhoto.PostedFile.InputStream); string path = "/FileUploads/ProfilePics/" + DateTime.Now.ToString("ddMMyyyyhhmmss") + fileUploadPhoto.FileName; UpImg.Save(MapPath(path), System.Drawing.Imaging.ImageFormat.Png); usPr.Photo = path; } usPr.Save(); } } uiPanelEdit.Visible = false; uiPanelAll.Visible = true; ClearFields(); CurrentUser = null; BindData(); }
protected void uiRadGridUsers_ItemCommand(object sender, Telerik.Web.UI.GridCommandEventArgs e) { if (e.CommandName == "EditUser") { MembershipUser ObjData = Membership.GetUser(e.CommandArgument.ToString()); uiTextBoxUserName.Text = ObjData.UserName; uiTextBoxUserName.Enabled = false; if(!ObjData.IsLockedOut) uiTextBoxPass.Text = ObjData.GetPassword(); //uiTextBoxPass.Enabled = false; // uiCheckBoxIsLocked.Checked = ObjData.IsLockedOut; RequiredFieldValidator2.Enabled = false; RequiredFieldValidator6.Enabled = false; CompareValidator1.Enabled = false; uiTextBoxConfirm.Enabled = false; //uiLinkButtonEditPassword.Enabled = true; //uiTextBoxMail.Text = ObjData.Email; foreach (string role in Roles.GetRolesForUser(ObjData.UserName)) { foreach (ListItem item in uiCheckBoxListRoles.Items) { if (role == item.Text) { item.Selected = true; break; } } } uiPanelEdit.Visible = true; uiPanelAll.Visible = false; UsersProfiles usPr = new UsersProfiles(); usPr.getUserByGUID(new Guid(ObjData.ProviderUserKey.ToString())); txtFullName.Text = usPr.FullName; txtEmail.Text = usPr.Email; txtTelephone.Text = usPr.Telephone; if (!usPr.IsColumnNull(UsersProfiles.ColumnNames.Photo)) userImg.Src = usPr.Photo; if (!usPr.IsColumnNull(UsersProfiles.ColumnNames.GroupID)) DropDownListGroups.SelectedValue = usPr.GroupID.ToString(); CurrentUser = ObjData; } else if (e.CommandName == "DeleteUser") { MembershipUser ObjData = Membership.GetUser(e.CommandArgument.ToString()); if (ObjData != null) { UsersProfiles usPr = new UsersProfiles(); usPr.getUserByGUID(new Guid(ObjData.ProviderUserKey.ToString())); usPr.MarkAsDeleted(); usPr.Save(); Membership.DeleteUser(ObjData.UserName, true); } BindData(); } }