Пример #1
0
        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 );
            }
        }
Пример #2
0
        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 );
        }