// Load User private void listBoxControl1_SelectedIndexChanged(object sender, EventArgs e) { if (OnAddRole || listBoxControl1.SelectedIndex < 0) { return; } if (listBoxControl1.SelectedIndex == 0) { groupControl1.Text = "User Baru :"; textEdit1.Text = string.Empty; buttonEdit1.Text = string.Empty; checkEdit1.Checked = true; checkEdit2.Checked = false; checkEdit3.Checked = false; simpleButton2.Enabled = false; foreach (RoleSelection pr in ListRole) { pr.Select = false; } PeranGrid.RefreshDataSource(); CurrentUser = string.Empty; dateEdit1.DateTime = DateTime.Today; dateEdit2.DateTime = DateTime.Today; buttonEdit1.Properties.Buttons[0].Visible = false; buttonEdit1.Properties.ReadOnly = false; textEdit1.Focus(); } else { simpleButton2.Enabled = true; groupControl1.Text = "Edit User"; User User = BaseSecurity.CurrentLogin.Admin.User .QueryUser(listBoxControl1.Text); if (User == null) { XtraMessageBox.Show(string.Concat("User ", listBoxControl1.Text, " sudah dihapus dari database !"), "Error Baca User", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); RemoveSelectedUser(); } else { textEdit1.Text = User.UserName; checkEdit1.Checked = User.IsActive; checkEdit2.Checked = User.IsAdmin; checkEdit3.Checked = User.UseDateLimit; dateEdit1.DateTime = User.StartDate; dateEdit2.DateTime = User.EndDate; foreach (RoleSelection p in ListRole) { p.Select = User.ListRole.IndexOf(p.RoleName) >= 0; } PeranGrid.RefreshDataSource(); CurrentUser = User.UserName; buttonEdit1.Properties.ReadOnly = true; buttonEdit1.Properties.Buttons[0].Visible = true; } } }
private void RemoveSelectedRole() { if (listBoxControl2.SelectedIndex < 0) { return; } int idx; OnAddRole = true; try { string RoleName = listBoxControl2.Text; idx = listBoxControl2.SelectedIndex; listBoxControl2.Items.RemoveAt(idx); for (int i = 0; i < ListRole.Count; i++) { if (ListRole[i].RoleName == RoleName) { ListRole.RemoveAt(i); break; } } PeranGrid.RefreshDataSource(); } finally { OnAddRole = false; } int Cnt = listBoxControl2.Items.Count; if (idx >= Cnt) { idx = Cnt - 1; } if (listBoxControl2.SelectedIndex == idx) { listBoxControl2_SelectedIndexChanged(null, null); } else { listBoxControl2.SelectedIndex = idx; } }
// New User private void simpleButton1_Click(object sender, EventArgs e) { groupControl1.Text = "User Baru :"; textEdit1.Text = string.Empty; buttonEdit1.Text = string.Empty; checkEdit1.Checked = true; checkEdit2.Checked = true; checkEdit3.Checked = false; simpleButton2.Enabled = false; foreach (RoleSelection pr in ListRole) { pr.Select = false; } PeranGrid.RefreshDataSource(); listBoxControl1.SelectedIndex = -1; CurrentUser = string.Empty; dateEdit1.DateTime = DateTime.Today; dateEdit2.DateTime = DateTime.Today; buttonEdit1.Properties.Buttons[0].Visible = false; buttonEdit1.Properties.ReadOnly = false; textEdit1.Focus(); }
private void simpleButton6_Click(object sender, EventArgs e) { if (sender != null) { textEdit4.Focus(); } try { using (EntityTransaction tr = new EntityTransaction(BaseWinSecurity.DataPersistance)) { if (simpleButton3.Enabled == false) // Peran Baru { string RoleName = textEdit4.Text; BaseSecurity.CurrentLogin.Admin.Role.Add(RoleName, checkEdit4.Checked, checkEdit5.Checked, dateEdit4.DateTime, dateEdit3.DateTime); string SelUser = listBoxControl1.Text; bool AddSelUser = false; BaseSecurity.CurrentLogin.Admin.RoleUser.DeleteRole(RoleName); foreach (UserSelection us in ListUser) { if (us.Select) { if (us.UserName == SelUser) { AddSelUser = true; } BaseSecurity.CurrentLogin.Admin.RoleUser.Add( RoleName, us.UserName); } } foreach (clsModule mdl in ListModule.Values) { BaseSecurity.CurrentLogin.Admin .RoleModule.Add(RoleName, mdl.Ma.ModuleName, BaseUtility.Dictionary2String( mdl.Ma.Variables), mdl.AllDocumentData); foreach (ModuleDataField mdf in mdl.Ma.ListDataField) { BaseSecurity.CurrentLogin.Admin .RoleModule.UpdateDocumentVariable( RoleName, mdl.Ma.ModuleName, mdf.DataFieldName, mdf.DocumentName, mdl.ListKey[mdf.DataFieldName]); } } RoleSelection rs = new RoleSelection(RoleName); if (AddSelUser) { rs.Select = true; } ListRole.Add(rs); PeranGrid.RefreshDataSource(); OnAddRole = true; try { listBoxControl2.Items.Add(RoleName); } finally { OnAddRole = false; } //Peran Baru... if (sender != null) { simpleButton4_Click(null, null); } } else // Peran Lama { string RoleName = textEdit4.Text; BaseSecurity.CurrentLogin.Admin.RoleUser.DeleteRole(CurrentRole); BaseSecurity.CurrentLogin.Admin.Role.Update(CurrentRole, RoleName, checkEdit4.Checked, checkEdit5.Checked, dateEdit4.DateTime, dateEdit3.DateTime); string SelUser = listBoxControl1.Text; bool UpdateSelUser = false; foreach (UserSelection us in ListUser) { if (us.Select) { if (us.UserName == SelUser) { UpdateSelUser = true; } BaseSecurity.CurrentLogin.Admin.RoleUser.Add( RoleName, us.UserName); } } foreach (RoleSelection rs in ListRole) { if (rs.RoleName == CurrentRole) { rs.Select = UpdateSelUser; rs.RoleName = RoleName; break; } } foreach (clsModule mdl in ListModule.Values) { string newSecurityData = BaseUtility.Dictionary2String( mdl.Ma.Variables); BaseSecurity.CurrentLogin.Admin .RoleModule.Update(RoleName, mdl.Ma.ModuleName, newSecurityData, mdl.AllDocumentData); foreach (ModuleDataField mdf in mdl.Ma.ListDataField) { BaseSecurity.CurrentLogin.Admin .RoleModule.UpdateDocumentVariable( RoleName, mdl.Ma.ModuleName, mdf.DataFieldName, mdf.DocumentName, mdl.ListKey[mdf.DataFieldName]); } } PeranGrid.RefreshDataSource(); if (CurrentRole != RoleName) { listBoxControl2.Items[listBoxControl2.SelectedIndex] = RoleName; } CurrentRole = RoleName; textEdit4.Focus(); } tr.CommitTransaction(); } } catch (Exception ex) { XtraMessageBox.Show(ex.Message, "Error Simpan Peran", MessageBoxButtons.OK, MessageBoxIcon.Error); } }