public void CopyPermissionsToChildren(ArrayList tabs, TabPermissionCollection newPermissions) { TabPermissionController objTabPermissionController = new TabPermissionController(); foreach (TabInfo objTab in tabs) { TabPermissionCollection objCurrentTabPermissions = objTabPermissionController.GetTabPermissionsCollectionByTabID(objTab.TabID, objTab.PortalID); if (!(objCurrentTabPermissions.CompareTo(newPermissions))) { objTabPermissionController.DeleteTabPermissionsByTabID(objTab.TabID); foreach (TabPermissionInfo objTabPermission in newPermissions) { if (objTabPermission.AllowAccess) { objTabPermission.TabID = objTab.TabID; objTabPermissionController.AddTabPermission(objTabPermission); } } } } if (tabs.Count > 0) { DataCache.ClearTabsCache(((TabInfo)(tabs[0])).PortalID); } }
private int SaveAllSelectedRights() { string UserId = null; int TabId = 0, PermissionId = 0, AllowAccess = 0, result = 0; string RoleId = ddlRoleList.SelectedValue; string strPermissionId = ddlPermissionList.SelectedValue; if (strPermissionId != string.Empty) { PermissionId = Convert.ToInt32(strPermissionId); } foreach (GridViewRow row in GridView1.Rows) { // Selected Permission Right =============================================================================================== bool resultSelectedPermissionRight = ((CheckBox)row.FindControl("chkSelectedPermissionRight")).Checked; if (resultSelectedPermissionRight) { TabId = (int)GridView1.DataKeys[row.RowIndex].Value; } //UserId ====================================================================================================== DropDownList ddlUserList = (DropDownList)row.FindControl("ddlUserList"); if (ddlUserList != null) { UserId = ddlUserList.SelectedValue; } else { UserId = Session["UserId"].ToString(); } // AllowAccess Right ======================================================================================== CheckBox chkSelectedAllowAccessRight = (CheckBox)row.FindControl("chkSelectedAllowAccessRight"); if (chkSelectedAllowAccessRight != null) { bool resultAllowAccessRight = chkSelectedAllowAccessRight.Checked; if (resultAllowAccessRight) { AllowAccess = 1; //============================================================================================================== result = tab_permission_obj.AddTabPermission(TabId, PermissionId, RoleId, AllowAccess, UserId); //============================================================================================================== } else { AllowAccess = 0; } } } return(result); }
public int AddTab(TabInfo objTab, bool AddAllTabsModules) { int intTabId; objTab.TabPath = Globals.GenerateTabPath(objTab.ParentId, objTab.TabName); intTabId = DataProvider.Instance().AddTab(objTab.PortalID, objTab.TabName, objTab.IsVisible, objTab.DisableLink, objTab.ParentId, objTab.IconFile, objTab.Title, objTab.Description, objTab.KeyWords, objTab.Url, objTab.SkinSrc, objTab.ContainerSrc, objTab.TabPath, objTab.StartDate, objTab.EndDate, objTab.RefreshInterval, objTab.PageHeadText); TabPermissionController objTabPermissionController = new TabPermissionController(); if (objTab.TabPermissions != null) { TabPermissionCollection objTabPermissions = objTab.TabPermissions; foreach (TabPermissionInfo objTabPermission in objTabPermissions) { objTabPermission.TabID = intTabId; if (objTabPermission.AllowAccess) { objTabPermissionController.AddTabPermission(objTabPermission); } } } if (!(Null.IsNull(objTab.PortalID))) { UpdatePortalTabOrder(objTab.PortalID, intTabId, objTab.ParentId, 0, 0, objTab.IsVisible, true); } else // host tab { ArrayList arrTabs = GetTabsByParentId(objTab.ParentId, objTab.PortalID); UpdateTabOrder(objTab.PortalID, intTabId, (arrTabs.Count * 2) - 1, 1, objTab.ParentId); } if (AddAllTabsModules) { ModuleController objmodules = new ModuleController(); ArrayList arrMods = objmodules.GetAllTabsModules(objTab.PortalID, true); foreach (ModuleInfo objModule in arrMods) { objmodules.CopyModule(objModule.ModuleID, objModule.TabID, intTabId, "", true); } } ClearCache(objTab.PortalID); return(intTabId); }
public void UpdateTab(TabInfo objTab) { bool updateChildren = false; TabInfo objTmpTab = GetTab(objTab.TabID, objTab.PortalID, false); if (objTmpTab.TabName != objTab.TabName | objTmpTab.ParentId != objTab.ParentId) { updateChildren = true; } UpdatePortalTabOrder(objTab.PortalID, objTab.TabID, objTab.ParentId, 0, 0, objTab.IsVisible); DataProvider.Instance().UpdateTab(objTab.TabID, objTab.TabName, objTab.IsVisible, objTab.DisableLink, objTab.ParentId, objTab.IconFile, objTab.Title, objTab.Description, objTab.KeyWords, objTab.IsDeleted, objTab.Url, objTab.SkinSrc, objTab.ContainerSrc, objTab.TabPath, objTab.StartDate, objTab.EndDate, objTab.RefreshInterval, objTab.PageHeadText); TabPermissionController objTabPermissionController = new TabPermissionController(); TabPermissionCollection objTabPermissions = objTab.TabPermissions; TabPermissionCollection objCurrentTabPermissions = objTabPermissionController.GetTabPermissionsCollectionByTabID(objTab.TabID, objTab.PortalID); if (!(objCurrentTabPermissions.CompareTo(objTab.TabPermissions))) { objTabPermissionController.DeleteTabPermissionsByTabID(objTab.TabID); foreach (TabPermissionInfo objTabPermission in objTabPermissions) { if (objTabPermission.AllowAccess) { objTabPermissionController.AddTabPermission(objTabPermission); } } } if (updateChildren) { UpdateChildTabPath(objTab.TabID, objTab.PortalID); } ClearCache(objTab.PortalID); }
private int SaveAllSelectedRights() { int i = 0, result = 0; i = DeleteOldData(); switch (i) { case -3: lblErrorMsg.Text = "Không tồn tại Id này"; ClientScript.RegisterStartupScript(this.GetType(), "onload", "onError();", true); MultiView1.ActiveViewIndex = 2; break; case -2: lblErrorMsg.Text = "Tiến trình xử lý bị lỗi"; ClientScript.RegisterStartupScript(this.GetType(), "onload", "onError();", true); MultiView1.ActiveViewIndex = 2; break; case 1: string UserId = null; int TabId = 0, PermissionId = 0, AllowAccess = 0; string RoleId = ddlRoleList.SelectedValue; string strPermissionId = ddlPermissionList.SelectedValue; if (strPermissionId != string.Empty) { PermissionId = Convert.ToInt32(strPermissionId); } foreach (GridViewRow row in GridView1.Rows) { // Selected Permission Right =============================================================================================== bool resultSelectedPermissionRight = ((CheckBox)row.FindControl("chkSelectedPermissionRight")).Checked; if (resultSelectedPermissionRight) { TabId = (int)GridView1.DataKeys[row.RowIndex].Value; } //UserId ====================================================================================================== DropDownList ddlUserList = (DropDownList)row.FindControl("ddlUserList"); if (ddlUserList != null) { UserId = ddlUserList.SelectedValue; } // AllowAccess Right ======================================================================================== CheckBox chkSelectedAllowAccessRight = (CheckBox)row.FindControl("chkSelectedAllowAccessRight"); if (chkSelectedAllowAccessRight != null) { bool resultAllowAccessRight = chkSelectedAllowAccessRight.Checked; if (resultAllowAccessRight) { AllowAccess = 1; //============================================================================================================== result = tab_permission_obj.AddTabPermission(TabId, PermissionId, RoleId, AllowAccess, UserId); //============================================================================================================== } else { AllowAccess = 0; } } } break; } return(result); }
private TabInfo CreateSubTab(string tabName, int departmentId, string settingsName = "department", int?parentTabID = null) { //Create Tab TabController tabController = new TabController(); TabInfo tab = new TabInfo(); tab.PortalID = PortalId; tab.TabName = tabName; tab.Title = tabName; //works for include in menu option. if true, will be shown in menus, else will not be shown, we have to redirect internally tab.IsVisible = true; tab.DisableLink = false; //if this tab has any parents provide parent tab id, so that it will be shown in parent tab menus sub menu list, else is NULL //and will be in main menu list if (parentTabID == null) { tab.ParentId = TabId; } else { tab.ParentId = parentTabID.Value; } tab.IsDeleted = false; tab.Url = ""; tab.IsSuperTab = false; //if true, it has no parents, else false tab.SkinSrc = "[G]Skins/Artfolio001/page.ascx"; //provide skin src, else will take default skin tab.ContainerSrc = "[G]Containers/Artfolio001/Block.ascx"; int tabId = tabController.AddTab(tab, true); //true to load defalut modules //Set Tab Permission TabPermissionController objTPC = new TabPermissionController(); TabPermissionInfo tpi = new TabPermissionInfo(); tpi.TabID = tabId; tpi.PermissionID = 3; //for view tpi.PermissionKey = "VIEW"; tpi.PermissionName = "View Tab"; tpi.AllowAccess = true; tpi.RoleID = 0; //Role ID of administrator objTPC.AddTabPermission(tpi); TabPermissionInfo tpi1 = new TabPermissionInfo(); tpi1.TabID = tabId; tpi1.PermissionID = 4; //for edit tpi1.PermissionKey = "EDIT"; tpi1.PermissionName = "Edit Tab"; tpi1.AllowAccess = true; tpi1.RoleID = 0; //Role ID of administrator objTPC.AddTabPermission(tpi1); TabPermissionInfo tpi4 = new TabPermissionInfo(); tpi4.TabID = tabId; tpi4.PermissionID = 3; tpi4.PermissionKey = "VIEW"; tpi4.PermissionName = "View Tab"; tpi4.AllowAccess = true; tpi4.RoleID = -1; //All users objTPC.AddTabPermission(tpi4); //Add Module DesktopModuleController objDMC = new DesktopModuleController(); DesktopModuleInfo desktopModuleInfo = objDMC.GetDesktopModuleByName("Clothes"); ModuleDefinitionInfo moduleDefinitionInfo = new ModuleDefinitionInfo(); ModuleInfo moduleInfo = new ModuleInfo(); moduleInfo.PortalID = PortalId; moduleInfo.TabID = tabId; moduleInfo.ModuleOrder = 1; moduleInfo.ModuleTitle = "Clothes"; moduleInfo.PaneName = "Clothes"; moduleInfo.ModuleDefID = 160; moduleInfo.CacheTime = moduleDefinitionInfo.DefaultCacheTime; //Default Cache Time is 0 moduleInfo.InheritViewPermissions = true; //Inherit View Permissions from Tab moduleInfo.AllTabs = false; moduleInfo.ModuleSettings[settingsName] = departmentId; ModuleController moduleController = new ModuleController(); int moduleId = moduleController.AddModule(moduleInfo); //Set Module Permission ModulePermissionController objMPC = new ModulePermissionController(); ModulePermissionInfo mpi1 = new ModulePermissionInfo(); mpi1.ModuleID = moduleId; mpi1.PermissionID = 1; //View Permission mpi1.AllowAccess = true; mpi1.RoleID = 0; //Role ID of Administrator objMPC.AddModulePermission(mpi1); ModulePermissionInfo mpi2 = new ModulePermissionInfo(); mpi2.ModuleID = moduleId; mpi2.PermissionID = 2; //Edit Permission mpi2.AllowAccess = true; mpi2.RoleID = 0; //Role ID of Administrator objMPC.AddModulePermission(mpi2); ModulePermissionInfo mpi5 = new ModulePermissionInfo(); mpi5.ModuleID = moduleId; mpi5.PermissionID = 1; //View Permission mpi5.AllowAccess = true; mpi5.RoleID = 1; //Role ID of Registered User objMPC.AddModulePermission(mpi5); return(tab); }
private TabInfo CreateTab(string tabName, bool isSuperTab = true) { //Create Tab TabController tabController = new TabController(); TabInfo tab = new TabInfo(); tab.PortalID = PortalId; tab.TabName = tabName; tab.Title = tabName; //works for include in menu option. if true, will be shown in menus, else will not be shown, we have to redirect internally tab.IsVisible = true; tab.DisableLink = false; //if this tab has any parents provide parent tab id, so that it will be shown in parent tab menus sub menu list, else is NULL //and will be in main menu list if (!isSuperTab) { tab.ParentId = TabId; } tab.IsDeleted = false; tab.Url = ""; //if true, it has no parents, else false tab.IsSuperTab = isSuperTab; tab.SkinSrc = "[G]Skins/Artfolio001/page.ascx"; //provide skin src, else will take default skin tab.ContainerSrc = "[G]Containers/Artfolio001/Block.ascx"; int tabId = tabController.AddTab(tab, true); //true to load defalut modules //Set Tab Permission TabPermissionController objTPC = new TabPermissionController(); TabPermissionInfo tpi = new TabPermissionInfo(); tpi.TabID = tabId; tpi.PermissionID = 3; //for view tpi.PermissionKey = "VIEW"; tpi.PermissionName = "View Tab"; tpi.AllowAccess = true; tpi.RoleID = 0; //Role ID of administrator objTPC.AddTabPermission(tpi); TabPermissionInfo tpi1 = new TabPermissionInfo(); tpi1.TabID = tabId; tpi1.PermissionID = 4; //for edit tpi1.PermissionKey = "EDIT"; tpi1.PermissionName = "Edit Tab"; tpi1.AllowAccess = true; tpi1.RoleID = 0; //Role ID of administrator objTPC.AddTabPermission(tpi1); TabPermissionInfo tpi4 = new TabPermissionInfo(); tpi4.TabID = tabId; tpi4.PermissionID = 3; tpi4.PermissionKey = "VIEW"; tpi4.PermissionName = "View Tab"; tpi4.AllowAccess = true; tpi4.RoleID = -1; //All users objTPC.AddTabPermission(tpi4); return(tab); }