public static void RestoreTab(TabInfo objTab, PortalSettings PortalSettings, int UserId)
 {
     Services.Log.EventLog.EventLogController objEventLog = new Services.Log.EventLog.EventLogController();
     TabController objController = new TabController();
     objTab.IsDeleted = false;
     objController.UpdateTab(objTab);
     List<TabInfo> siblingTabs = objController.GetTabsByPortal(objTab.PortalID).WithParentId(objTab.ParentId);
     int siblingCount = siblingTabs.Count;
     objTab.TabOrder = 2 * siblingTabs.Count + 1;
     objController.UpdateTabOrder(objTab, false);
     objEventLog.AddLog(objTab, PortalSettings, UserId, "", Services.Log.EventLog.EventLogController.EventLogType.TAB_RESTORED);
     ModuleController objmodules = new ModuleController();
     ArrayList arrMods = objmodules.GetAllTabsModules(objTab.PortalID, true);
     foreach (ModuleInfo objModule in arrMods)
     {
         objmodules.CopyModule(objModule.ModuleID, objModule.TabID, objTab.TabID, "", true);
     }
     objController.ClearCache(objTab.PortalID);
 }
 public static bool DeleteTab(int tabId, PortalSettings PortalSettings, int UserId)
 {
     bool bDeleted = true;
     TabController objController = new TabController();
     TabInfo objTab = objController.GetTab(tabId, PortalSettings.PortalId, false);
     if (objTab != null)
     {
         List<TabInfo> siblingTabs = objController.GetTabsByPortal(objTab.PortalID).WithParentId(objTab.ParentId);
         int siblingCount = siblingTabs.Count;
         objController.UpdateTabOrder(siblingTabs, 2);
         int tabIndex = objController.GetIndexOfTab(objTab, siblingTabs);
         bDeleted = DeleteTab(objTab, PortalSettings, UserId);
         objTab.TabOrder = 0;
         objController.UpdateTabOrder(objTab, false);
         objController.UpdateTabOrder(siblingTabs, tabIndex + 1, siblingCount - 1, -2);
     }
     else
     {
         bDeleted = false;
     }
     return bDeleted;
 }