From 90551807190ea3e9d2c62352562342c8155987a9 Mon Sep 17 00:00:00 2001 From: Warren Baker Date: Wed, 25 Aug 2010 18:18:08 +0200 Subject: New Package XML tag 'tab_level' allows for multiple rows of tab displays. --- usr/local/www/pkg.php | 62 ++++++++++++++++++++++++++----------------- usr/local/www/pkg_edit.php | 66 +++++++++++++++++++++++++--------------------- 2 files changed, 74 insertions(+), 54 deletions(-) (limited to 'usr/local') diff --git a/usr/local/www/pkg.php b/usr/local/www/pkg.php index df42a15..52e6fe3 100755 --- a/usr/local/www/pkg.php +++ b/usr/local/www/pkg.php @@ -131,31 +131,45 @@ include("fbegin.inc"); "") { - echo ''; } - display_top_tabs($tab_array); - echo ''; } ?>
'; - $tab_array = array(); - foreach($pkg['tabs']['tab'] as $tab) { - if(isset($tab['active'])) { - $active = true; - } else { - $active = false; - } - $urltmp = ""; - if($tab['url'] <> "") - $urltmp = $tab['url']; - if($tab['xml'] <> "") - $urltmp = "pkg_edit.php?xml=" . $tab['xml']; - - $myurl = getenv("HTTP_HOST"); - // eval url so that above $myurl item can be processed if need be. - $url = str_replace('$myurl', $myurl, $urltmp); - $tab_array[] = array( - $tab['text'], - $active, - $url - ); + $tab_array = array(); + foreach($pkg['tabs']['tab'] as $tab) { + if($tab['tab_level']) + $tab_level = $tab['tab_level']; + else + $tab_level = 1; + if(isset($tab['active'])) { + $active = true; + } else { + $active = false; + } + $urltmp = ""; + if($tab['url'] <> "") $urltmp = $tab['url']; + if($tab['xml'] <> "") $urltmp = "pkg_edit.php?xml=" . $tab['xml']; + + $addresswithport = getenv("HTTP_HOST"); + $colonpos = strpos($addresswithport, ":"); + if ($colonpos !== False) { + //my url is actually just the IP address of the pfsense box + $myurl = substr($addresswithport, 0, $colonpos); + } else { + $myurl = $addresswithport; + } + // eval url so that above $myurl item can be processed if need be. + $url = str_replace('$myurl', $myurl, $urltmp); + + $tab_array[$tab_level][] = array( + $tab['text'], + $active, + $url + ); + } + + ksort($tab_array); + foreach($tab_array as $tab) { + echo '
'; + display_top_tabs($tab); + echo '