diff --git a/workflow/engine/methods/setup/main_init.php b/workflow/engine/methods/setup/main_init.php index fcf87df27..3adb0e8b4 100755 --- a/workflow/engine/methods/setup/main_init.php +++ b/workflow/engine/methods/setup/main_init.php @@ -23,50 +23,83 @@ * */ - $RBAC->requirePermissions('PM_SETUP', 'PM_USERS'); +$RBAC->requirePermissions("PM_SETUP", "PM_USERS"); - $oHeadPublisher =& headPublisher::getSingleton(); +/////// +$adminSelected = null; - global $G_TMP_MENU; - $oMenu = new Menu(); - $oMenu->load('setup'); - $items = Array(); +if (isset($_REQUEST["s"])) { + $adminSelected = $_REQUEST["s"]; +} +else { + if (isset($_SESSION["ADMIN_SELECTED"])) { + $adminSelected = $_SESSION["ADMIN_SELECTED"]; + } +} - $menuTypes = array_unique($oMenu->Types); - foreach($menuTypes as $i=>$v){ - if( $v == 'admToolsContent'){ - unset($menuTypes[$i]); +/////// +$oHeadPublisher = &headPublisher::getSingleton(); + +global $G_TMP_MENU; + +$oMenu = new Menu(); +$oMenu->load("setup"); +$items = array(); + +$menuTypes = array_unique($oMenu->Types); +foreach ($menuTypes as $i => $v) { + if ($v == "admToolsContent") { + unset($menuTypes[$i]); + break; + } +} + +//sort($menuTypes); + +$tabItems = array(); +$i = 0; + +foreach ($menuTypes as $menuType) { + $tabItems[$i]->id = $menuType; + $LABEL_TRANSLATION = G::LoadTranslation("ID_" . strtoupper($menuType)); + + if (substr($LABEL_TRANSLATION, 0, 2) !== "**") { + $title = $LABEL_TRANSLATION; + } + else { + $title = str_replace("_", " ", ucwords($menuType)); + } + + $tabItems[$i]->title = $title; + $i++; +} + +/////// +$tabActive = ""; + +if ($adminSelected != null) { + foreach ($oMenu->Options as $i => $option) { + if ($oMenu->Id[$i] == $adminSelected) { + $tabActive = (in_array($oMenu->Types[$i], array("", "admToolsContent")))? "plugins" : $oMenu->Types[$i]; break; } } - //sort($menuTypes); +} - $tabItems = Array(); - $i=0; - foreach( $menuTypes as $menuType ){ - $tabItems[$i]->id = $menuType; - $LABEL_TRANSLATION = G::LoadTranslation("ID_".strtoupper($menuType)); - - if( substr($LABEL_TRANSLATION,0,2) !== '**' ){ - $title = $LABEL_TRANSLATION; - } else { - $title = str_replace('_', ' ', ucwords($menuType)); - } - $tabItems[$i]->title = $title; - $i++; - } +/////// +$oHeadPublisher->addExtJsScript("setup/main", true); //adding a javascript file .js +$oHeadPublisher->addContent("setup/main"); //adding a html file .html. +$oHeadPublisher->assign("tabActive", $tabActive); +$oHeadPublisher->assign("tabItems", $tabItems); +$oHeadPublisher->assign("_item_selected", (($adminSelected != null)? $adminSelected : "")); - $oHeadPublisher->addExtJsScript('setup/main', true); //adding a javascript file .js - $oHeadPublisher->addContent('setup/main'); //adding a html file .html. - $oHeadPublisher->assign('tabItems', $tabItems); - $oHeadPublisher->assign('_item_selected', (isset($_SESSION['ADMIN_SELECTED'])?$_SESSION['ADMIN_SELECTED']:'')); +G::RenderPage("publish", "extJs"); - G::RenderPage('publish', 'extJs'); - // this patch enables the load of the plugin list panel inside de main admin panel iframe - if (isset($_GET['action'])&&$_GET['action']=='pluginsList'){ - print " - - "; - } +//this patch enables the load of the plugin list panel inside de main admin panel iframe +if (isset($_GET["action"]) && $_GET["action"] == "pluginsList") { + echo " + + "; +} diff --git a/workflow/engine/templates/setup/main.js b/workflow/engine/templates/setup/main.js index 4cb7c6635..f9715e707 100755 --- a/workflow/engine/templates/setup/main.js +++ b/workflow/engine/templates/setup/main.js @@ -5,11 +5,21 @@ var _NODE_SELECTED; var main = function(){ - Ext.state.Manager.setProvider(new Ext.state.CookieProvider()); + var cookiep = new Ext.state.CookieProvider(); var items = []; var nodeLoad = []; var i; + + if (tabActive != "") { + for(i = 0; i<= tabItems.length - 1; i++) { + if (tabItems[i].id == tabActive) { + cookiep.set("admin-tabpanel", {"activeTab": i}); + } + } + } + + Ext.state.Manager.setProvider(cookiep); for(i=0; i