/// <summary> /// Set Grid Data source /// </summary> /// <param name="addRow"></param> /// <param name="deleteRow"></param>e private void GenerateMenuItems() { RolePrivilegesLst = new RolePrivilegesList(); RolePrivilegesBLL objRolePrivBLL = new RolePrivilegesBLL(); DataTable mainMenuTable = objRolePrivBLL.GetRolePrivileges(); subMenuTable = mainMenuTable.Copy(); DataView MainMenuView = mainMenuTable.AsDataView(); DataView SubMenuView = subMenuTable.AsDataView(); MainMenuView.RowFilter = "PARENTMENUID=0"; for (int i = 0; i < MainMenuView.Count; i++) { objPriv = new RolePrivilegesBO(); objPriv.MenuID = Convert.ToInt32(MainMenuView[i]["CHILDMENUID"]); objPriv.MenuDescription = MainMenuView[i]["MENUDESCRIPTION"].ToString(); objPriv.ChildMenuCount = Convert.ToInt32(MainMenuView[i]["CHILDMENUCOUNT"]); objPriv.MenuLevel = Convert.ToInt32(MainMenuView[i]["CHILDLEVEL"]); objPriv.ParentMenuID = Convert.ToInt32(MainMenuView[i]["PARENTMENUID"]); RolePrivilegesLst.Add(objPriv); GenerateChildMenu(MainMenuView[i]["CHILDMENUID"].ToString()); } mainMenuTable = null; rptRolePrivileges.DataSource = RolePrivilegesLst; rptRolePrivileges.DataBind(); }
/// <summary> /// Chek User permitions and set his menu controls /// </summary> private void CheckPrivilege() { RolePrivilegesBLL privBLL = new RolePrivilegesBLL(); PrivilegeList = privBLL.GetROLEPRIId(Convert.ToInt32(Session["USER_ID"])); MenuItem navMenuItem = null; for (int mnuItmIDX = NavigationMenu.Items.Count - 1; mnuItmIDX > 0; mnuItmIDX--) { navMenuItem = NavigationMenu.Items[mnuItmIDX]; CheckChildNavigationMenus(navMenuItem); if (navMenuItem.Value.ToUpper() != "Help".ToUpper() && navMenuItem.Value.ToUpper() != "AboutUs".ToUpper() && navMenuItem.Value.ToUpper() != "onlinehelp".ToUpper()) { result = HasViewPermission(navMenuItem.Value); if ((result != null && result.CanView == "N" && result.CanUpdate == "N") || navMenuItem.ChildItems.Count == 0) { NavigationMenu.Items.RemoveAt(mnuItmIDX); } else if (result != null && Session["PROJECT_ID"] == null) { if (result.ProjectDependent != null) { if (result.ProjectDependent == "Y") { //navMenuItem.NavigateUrl = ResolveUrl(projectURL + projectParams); navMenuItem.Selectable = false; navMenuItem.ToolTip = "Select a Project to continue."; //NavigationMenu.Items.RemoveAt(mnuItmIDX); } } } else if (result != null && Session["HH_ID"] == null) { if (result.PAPDependent != null) { if (result.PAPDependent == "Y") { //navMenuItem.NavigateUrl = ResolveUrl("~/UI/Compensation/PAPList.aspx"); navMenuItem.Selectable = false; navMenuItem.ToolTip = "Select a PAP to continue."; //NavigationMenu.Items.RemoveAt(mnuItmIDX); } } } } } }
/// <summary> /// Tofetch role privileges based on userID /// </summary public void getRolePrivByUserID() { int userID = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value.ToString()); if (userID > 0) { CheckBox chkView = null; CheckBox chkUpdate = null; RolePrivilegesBO objRolePrivileges = new RolePrivilegesBO(); RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL(); RolePrivilegesList RolePrivilegesList = new RolePrivilegesList(); RolePrivilegesList = RolePrivilegesBLLobj.GetROLEPRIId(userID); Literal litMenuID = null; // Clear the controls. ClearGridSelections(); // Populate the controls foreach (RolePrivilegesBO oRolePrivilegesList in RolePrivilegesList) { foreach (RepeaterItem rptRow in rptRolePrivileges.Items) { litMenuID = (Literal)rptRow.FindControl("litMenuID"); chkView = (CheckBox)rptRow.FindControl("chkView"); chkUpdate = (CheckBox)rptRow.FindControl("chkUpdate"); if (oRolePrivilegesList.MenuID.ToString() == litMenuID.Text) { if (oRolePrivilegesList.CanView == "Y") { chkView.Checked = true; } if (oRolePrivilegesList.CanUpdate == "Y") { chkUpdate.Checked = true; } break; } } } } }
/// <summary> /// To bind values to dropdownlist /// </summary> private void BindUser() { RolePrivilegesBO objRolePrivileges = new RolePrivilegesBO(); RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL(); UserBLL objUserBLL = new UserBLL(); UserList objUserList = new UserList(); UserBO oBOUser = null; oBOUser = new UserBO(); oBOUser.UserName = string.Empty; oBOUser.UserID = 0; oBOUser.RoleID = 0; ddlAssignTo.DataSource = objUserBLL.GetUsers(oBOUser); ddlAssignTo.DataTextField = "UserName"; ddlAssignTo.DataValueField = "UserID"; ddlAssignTo.DataBind(); }
/// <summary> /// to set values to dropdownlist from database /// </summary> public void getuserName() { RolePrivilegesBO objRolePrivileges = new RolePrivilegesBO(); RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL(); UserBLL objUserBLL = new UserBLL(); UserList objUserList = new UserList(); UserBO oBOUser = null; oBOUser = new UserBO(); oBOUser.UserName = string.Empty; oBOUser.UserID = 0; oBOUser.RoleID = 0; objUserList = objUserBLL.GetUsers(oBOUser); UserIDDropDownList.DataSource = objUserBLL.GetUsers(oBOUser); UserIDDropDownList.DataTextField = "UserName"; UserIDDropDownList.DataValueField = "UserID"; UserIDDropDownList.DataBind(); UserIDDropDownList.Items.Insert(0, new ListItem("-- Select --", "0")); UserIDDropDownList.SelectedIndex = 0; }
/// <summary> /// To delete roleprivileges /// </summary private void DeleteRolePrivileges(int DeletedID) { RolePrivilegesBLL RolePrivilegesBLLobj = new RolePrivilegesBLL(); RolePrivilegesBLLobj.DeleteRolePrivileges(DeletedID); }
/// <summary> /// To save details to database /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void SaveButton_Click(object sender, EventArgs e) { string message = string.Empty; int userID = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value.ToString()); int count = 0; string noneValue = String.Empty; CheckBox chkView = null; CheckBox chkUpdate = null; RolePrivilegesBLL RolePrivilegesBLLOBJ = new RolePrivilegesBLL(); RolePrivilegesBO objRolePrivileges = null; RolePrivilegesList RolePrivilegesList = new RolePrivilegesList(); DeleteRolePrivileges(userID); try { foreach (RepeaterItem rptItem in rptRolePrivileges.Items) { if (rptItem.ItemType == ListItemType.Item || rptItem.ItemType == ListItemType.AlternatingItem) { int menuID = Convert.ToInt32(((Literal)rptItem.FindControl("litMenuID")).Text); chkView = (CheckBox)rptItem.FindControl("chkView"); chkUpdate = (CheckBox)rptItem.FindControl("chkUpdate"); if (menuID > 0) { objRolePrivileges = new RolePrivilegesBO(); objRolePrivileges.MenuID = menuID; if (chkView != null && chkView.Checked) { objRolePrivileges.CanView = "Y"; } if (chkUpdate != null && chkUpdate.Checked) { objRolePrivileges.CanUpdate = "Y"; } objRolePrivileges.UserID = Convert.ToInt32(UserIDDropDownList.SelectedItem.Value); objRolePrivileges.UpdatedBy = Convert.ToInt32(Session["USER_ID"]); count = RolePrivilegesBLLOBJ.InsertRolePrivilages(objRolePrivileges); } } } if (count == -1) { message = "Data saved successfully"; System.Collections.IDictionaryEnumerator cacheDict = Cache.GetEnumerator(); while (cacheDict.MoveNext()) { if (cacheDict.Key.ToString().IndexOf("PRIV_") >= 0) { Cache.Remove(cacheDict.Key.ToString()); } } ; GenerateMenuItems(); getRolePrivByUserID(); } else { message = "Data could not be saved"; } } catch (Exception ex) { throw ex; } finally { RolePrivilegesBLLOBJ = null; } ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Added", "alert('" + message + "');", true); }