r2215 - finally stick with dragons
authorDenis Ovsienko <infrastation@yandex.ru>
Tue, 16 Sep 2008 11:24:47 +0000 (11:24 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Tue, 16 Sep 2008 11:24:47 +0000 (11:24 +0000)
 - make IPv4 a standalone report

COPYING
inc/database.php
inc/interface.php
inc/navigation.php
pix/mitsudragon.png

diff --git a/COPYING b/COPYING
index bab01bb6359dfe23279b559f01e29f378428edc5..787bb3f5c43891d08ad45bb28873f2f698db0498 100644 (file)
--- a/COPYING
+++ b/COPYING
@@ -64,3 +64,8 @@ Dragon ASCII art (c) Daniel C. Au
 RackTables includes portions of the CodePress Online Real Time Syntax
 Highlighting Editor (http://codepress.org), which is copyright (C) 2006
 Fernando M.A.d.S. <fermads@gmail.com> and is distributed under GNU LGPL license.
 RackTables includes portions of the CodePress Online Real Time Syntax
 Highlighting Editor (http://codepress.org), which is copyright (C) 2006
 Fernando M.A.d.S. <fermads@gmail.com> and is distributed under GNU LGPL license.
+
+----------------------8<----------------------8<----------------------
+
+RackTables includes a modified dragon image, which is available free for personal
+and business use from medievalresources.com
index 7eca8719d5871b61a09f18b4b0be65271a678fce..ea288935530dbad5a157339aa90207fe8668819e 100644 (file)
@@ -3238,4 +3238,8 @@ function mergeSearchResults (&$objects, $terms, $fieldname)
        return $objects;
 }
 
        return $objects;
 }
 
+function getLostIPv4Addresses ()
+{
+}
+
 ?>
 ?>
index 06ff5460e211ece778b40e55c9e5c3384cad0d10..e70c5366ec10ca325051576251fbb6c3982c1ebb 100644 (file)
@@ -124,6 +124,9 @@ $image['node-expanded']['height'] = 16;
 $image['node-expanded-static']['path'] = 'pix/node-expanded-static.png';
 $image['node-expanded-static']['width'] = 16;
 $image['node-expanded-static']['height'] = 16;
 $image['node-expanded-static']['path'] = 'pix/node-expanded-static.png';
 $image['node-expanded-static']['width'] = 16;
 $image['node-expanded-static']['height'] = 16;
+$image['dragons']['path'] = 'pix/mitsudragon.png';
+$image['dragons']['width'] = 125;
+$image['dragons']['height'] = 21;
 
 // This may be populated later onsite, report rendering function will use it.
 // See the $systemreport for structure.
 
 // This may be populated later onsite, report rendering function will use it.
 // See the $systemreport for structure.
@@ -1149,6 +1152,17 @@ function renderIPv4ForObject ($object_id = 0)
        if (getConfigVar ('EXT_IPV4_VIEW') == 'yes')
                echo '<th colspan=2>network</th><th>routed by</th>';
        echo '<th>type</th><th>misc</th><th>&nbsp</th></tr>';
        if (getConfigVar ('EXT_IPV4_VIEW') == 'yes')
                echo '<th colspan=2>network</th><th>routed by</th>';
        echo '<th>type</th><th>misc</th><th>&nbsp</th></tr>';
+
+       printOpFormIntro ('addIPv4Allocation');
+       echo "<tr><td>";
+       printImageHREF ('add', 'Allocate new address', TRUE, 99);
+       echo "</td>";
+       echo "<td class=tdleft><input type='text' size='10' name='bond_name' tabindex=100></td>\n";
+       echo "<td class=tdleft><input type=text name='ip' tabindex=101></td>\n";
+       echo "<td colspan=3>&nbsp;</td><td>";
+       printSelect ($aat, 'bond_type');
+       echo "</td><td colspan=2>&nbsp;</td></tr></form>";
+
        foreach ($alloclist as $dottedquad => $alloc)
        {
                $class = $alloc['addrinfo']['class'];
        foreach ($alloclist as $dottedquad => $alloc)
        {
                $class = $alloc['addrinfo']['class'];
@@ -1219,15 +1233,7 @@ function renderIPv4ForObject ($object_id = 0)
                echo "</td></form></tr>\n";
        }
 
                echo "</td></form></tr>\n";
        }
 
-       printOpFormIntro ('addIPv4Allocation');
-       echo "<tr><td>";
-       printImageHREF ('add', 'Allocate new address', TRUE, 99);
-       echo "</td>";
-       echo "<td class=tdleft><input type='text' size='10' name='bond_name' tabindex=100></td>\n";
-       echo "<td class=tdleft><input type=text name='ip' tabindex=101></td>\n";
-       echo "<td colspan=3>&nbsp;</td><td>";
-       printSelect ($aat, 'bond_type');
-       echo "</td><td colspan=2>&nbsp;</td></tr></form></table><br>\n";
+       echo "</table><br>\n";
        finishPortlet();
 
 }
        finishPortlet();
 
 }
@@ -3549,10 +3555,9 @@ function getFaviconURL ()
        return $root . 'pix/racktables.ico';
 }
 
        return $root . 'pix/racktables.ico';
 }
 
-// FIXME: stack the report sections somehow, so they can register themselves.
 function renderSystemReports ()
 {
 function renderSystemReports ()
 {
-       $systemreports = array
+       $tmp = array
        (
                array
                (
        (
                array
                (
@@ -3561,12 +3566,6 @@ function renderSystemReports ()
                        'func' => 'getDictStats'
                ),
                array
                        'func' => 'getDictStats'
                ),
                array
-               (
-                       'title' => 'IPv4',
-                       'type' => 'counters',
-                       'func' => 'getIPv4Stats'
-               ),
-               array
                (
                        'title' => 'Rackspace',
                        'type' => 'counters',
                (
                        'title' => 'Rackspace',
                        'type' => 'counters',
@@ -3579,7 +3578,7 @@ function renderSystemReports ()
                        'func' => 'renderTagStats'
                ),
        );
                        'func' => 'renderTagStats'
                ),
        );
-       renderReports ($systemreports);
+       renderReports ($tmp);
 }
 
 function renderLocalReports ()
 }
 
 function renderLocalReports ()
@@ -3590,7 +3589,7 @@ function renderLocalReports ()
 
 function renderRackCodeReports ()
 {
 
 function renderRackCodeReports ()
 {
-       $rcr = array
+       $tmp = array
        (
                array
                (
        (
                array
                (
@@ -3605,7 +3604,27 @@ function renderRackCodeReports ()
                        'func' => 'getRackCodeWarnings'
                ),
        );
                        'func' => 'getRackCodeWarnings'
                ),
        );
-       renderReports ($rcr);
+       renderReports ($tmp);
+}
+
+function renderIPv4Reports ()
+{
+       $tmp = array
+       (
+               array
+               (
+                       'title' => 'Stats',
+                       'type' => 'counters',
+                       'func' => 'getIPv4Stats'
+               ),
+               array
+               (
+                       'title' => 'Lost addresses',
+                       'type' => 'custom',
+                       'func' => 'getLostIPv4Addresses'
+               ),
+       );
+       renderReports ($tmp);
 }
 
 function renderReports ($what)
 }
 
 function renderReports ($what)
@@ -5232,7 +5251,7 @@ function niftyString ($string, $maxlen = 30)
                return '&nbsp;';
        if (mb_strlen ($string) > $maxlen)
                return "<span title='" . htmlspecialchars ($string, ENT_QUOTES, 'UTF-8') . "'>" .
                return '&nbsp;';
        if (mb_strlen ($string) > $maxlen)
                return "<span title='" . htmlspecialchars ($string, ENT_QUOTES, 'UTF-8') . "'>" .
-                       mb_substr ($string, 0, $maxlen - 1) . $cutind . '</span>';
+                       str_replace (' ', '&nbsp;', str_replace ("\t", ' ', mb_substr ($string, 0, $maxlen - 1))) . $cutind . '</span>';
        return $string;
 }
 
        return $string;
 }
 
@@ -5294,9 +5313,15 @@ function printIPv4NetInfoTDs ($netinfo, $tdclass = 'tdleft', $indent = 0, $symbo
        echo "${netinfo['ip']}/${netinfo['mask']}";
        if (isset ($netinfo['id']))
                echo '</a>';
        echo "${netinfo['ip']}/${netinfo['mask']}";
        if (isset ($netinfo['id']))
                echo '</a>';
-       echo "</td><td class='${tdclass}'>" . niftyString ($netinfo['name']);
-       if (count ($tags))
-               echo '<br><small>' . serializeTags ($tags, "${root}?page=ipv4space&tab=default&") . '</small>';
+       echo "</td><td class='${tdclass}'>";
+       if (!isset ($netinfo['id']))
+               printImageHREF ('dragons');
+       else
+       {
+               echo niftyString ($netinfo['name']);
+               if (count ($tags))
+                       echo '<br><small>' . serializeTags ($tags, "${root}?page=ipv4space&tab=default&") . '</small>';
+       }
        echo "</td>";
 }
 
        echo "</td>";
 }
 
index 156b58b68a2baa15db31db64ff29547eca410f8c..99bf212f1ab49ddc37daedb846af879b263963aa 100644 (file)
@@ -540,10 +540,12 @@ $page['reports']['title'] = 'Reports';
 $page['reports']['parent'] = 'index';
 $tab['reports']['default'] = 'System';
 $tab['reports']['rackcode'] = 'RackCode';
 $page['reports']['parent'] = 'index';
 $tab['reports']['default'] = 'System';
 $tab['reports']['rackcode'] = 'RackCode';
+$tab['reports']['ipv4'] = 'IPv4';
 $tab['reports']['local'] = 'Local';
 $trigger['reports']['local'] = 'trigger_localreports';
 $tabhandler['reports']['default'] = 'renderSystemReports';
 $tabhandler['reports']['rackcode'] = 'renderRackCodeReports';
 $tab['reports']['local'] = 'Local';
 $trigger['reports']['local'] = 'trigger_localreports';
 $tabhandler['reports']['default'] = 'renderSystemReports';
 $tabhandler['reports']['rackcode'] = 'renderRackCodeReports';
+$tabhandler['reports']['ipv4'] = 'renderIPv4Reports';
 $tabhandler['reports']['local'] = 'renderLocalReports';
 
 // This function returns array if page numbers leading to the target page
 $tabhandler['reports']['local'] = 'renderLocalReports';
 
 // This function returns array if page numbers leading to the target page
index 4c47edc0c4c55ce91990869f7d2033883b9d3d61..64681ee3fc7d3ff94add4bfba4732d27164ae786 100644 (file)
Binary files a/pix/mitsudragon.png and b/pix/mitsudragon.png differ