r1738 + introduce and process tabextraclass (ticket:18)
authorDenis Ovsienko <infrastation@yandex.ru>
Wed, 27 Feb 2008 17:06:20 +0000 (17:06 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Wed, 27 Feb 2008 17:06:20 +0000 (17:06 +0000)
+ toss CSS classes around to get 4 tab classes

inc/navigation.php
pi.css

index 72e555c..4d2bca2 100644 (file)
@@ -24,6 +24,7 @@ $trigger['rackspace']['firstrow'] = 'trigger_emptyRackspace';
 $tabhandler['rackspace']['default'] = 'renderRackspace';
 $tabhandler['rackspace']['history'] = 'renderRackspaceHistory';
 $tabhandler['rackspace']['firstrow'] = 'renderFirstRowForm';
+$tabextraclass['rackspace']['firstrow'] = 'attn';
 
 $page['objects']['title'] = 'Objects';
 $page['objects']['parent'] = 'index';
@@ -87,6 +88,8 @@ $tabhandler['object']['switchvlans'] = 'renderVLANMembership';
 $tabhandler['object']['snmpportfinder'] = 'renderSNMPPortFinder';
 $tabhandler['object']['lvsconfig'] = 'renderLVSConfig';
 $tabhandler['object']['autoports'] = 'renderAutoPortsForm';
+$tabextraclass['object']['snmpportfinder'] = 'attn';
+$tabextraclass['object']['autoports'] = 'attn';
 $trigger['object']['network'] = 'trigger_ipv4';
 $trigger['object']['portfwrd'] = 'trigger_natv4';
 $trigger['object']['switchvlans'] = 'trigger_switchvlans';
@@ -360,7 +363,7 @@ function getTitle ($pageno, $tabno)
 
 function showTabs ($pageno, $tabno)
 {
-       global $tab, $root, $page, $remote_username, $trigger;
+       global $tab, $root, $page, $remote_username, $trigger, $tabextraclass;
        if (!isset ($tab[$pageno]['default']))
                return;
        echo "<td><div class=greynavbar><ul id=foldertab style='margin-bottom: 0px; padding-top: 10px;'>";
@@ -376,7 +379,9 @@ function showTabs ($pageno, $tabno)
                        $trigger[$pageno][$tabidx] () != TRUE
                )
                        continue;
-               echo '<li><a' . (($tabidx == $tabno) ? ' class=current' : '');
+               $class = ($tabidx == $tabno) ? 'current' : 'std';
+               $extra = (isset ($tabextraclass[$pageno][$tabidx])) ? $tabextraclass[$pageno][$tabidx] : '';
+               echo "<li><a class=${class}{$extra}";
                echo " href='${root}?page=${pageno}&tab=${tabidx}";
                if (isset ($page[$pageno]['bypass']) and isset ($_REQUEST[$page[$pageno]['bypass']]))
                {
diff --git a/pi.css b/pi.css
index ca28877..d841e16 100644 (file)
--- a/pi.css
+++ b/pi.css
@@ -260,26 +260,28 @@ display: inline;
 padding: 3px 0.5em;
 margin-left: 3px;
 border: 1px solid #3c78b5;
-border-bottom: none;
-background: #3c78b5;
 text-decoration: none;
 }
 
-#foldertab li a:link { color: #ffffff; }
-#foldertab li a:visited { color: #ffffff; }
-
-#foldertab li a:hover {
-color: #ffffff;
+/* Standard tab, inactive. */
+#foldertab li a.std {
+border-bottom: none;
+background: #3c78b5;
+}
+#foldertab li a.std:link { color: white; }
+#foldertab li a.std:visited { color: white; }
+#foldertab li a.std:hover {
+color: white;
 background: #003366;
 border-color: #003366;
 }
 
+/* Standard tab, selected. */
 #foldertab li a.current {
 background: white;
 border-bottom: 1px solid white;
 color: black;
 }
-
 #foldertab li a.current:link { color: black; }
 #foldertab li a.current:visited { color: black; }
 #foldertab li a.current:hover {
@@ -288,6 +290,34 @@ border-bottom: 1px solid white;
 color: black;
 }
 
+/* "Attention" tab, inactive. */
+#foldertab li a.stdattn {
+border-bottom: none;
+background: #ffa500;
+border-color: #ffa500;
+}
+#foldertab li a.stdattn:link { color: white; }
+#foldertab li a.stdattn:visited { color: white; }
+#foldertab li a.stdattn:hover {
+color: white;
+background: #ff8c00;
+border-color: #ff8c00;
+}
+
+/* "Attention" tab, selected. */
+#foldertab li a.currentattn {
+background: white;
+border-bottom: 1px solid white;
+color: black;
+}
+#foldertab li a.currentattn:link { color: black; }
+#foldertab li a.currentattn:visited { color: black; }
+#foldertab li a.currentattn:hover {
+background: white;
+border-bottom: 1px solid white;
+color: black;
+}
+
 .greynavbar {background-color: #f0f0f0; border-top: 1px solid #3c78b5; margin-top: 0px}
 
 .miniracks {