r1490 + implemented VS list rendering
authorDenis Ovsienko <infrastation@yandex.ru>
Fri, 11 Jan 2008 17:09:09 +0000 (17:09 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Fri, 11 Jan 2008 17:09:09 +0000 (17:09 +0000)
+ fix pool listing for VS
+ fix page titles

inc/database.php
inc/interface.php
inc/navigation.php

index f037006af8b455c4e00995b0e287b9d3d050b126..e784cd168d144eb6b96d9ac534c02af922641d5e 100644 (file)
@@ -2166,4 +2166,24 @@ function commitUpdateRS ($rsid = 0, $rsip = '', $rsport = 0, $rsconfig = '')
        return TRUE;
 }
 
+// Return the list of virtual services, indexed by vs_id.
+function getVSList ()
+{
+       global $dbxlink;
+       $query = "select id, inet_ntoa(vip) as vip, vport, proto, name, vsconfig, rsconfig " .
+               "from IPVirtualService order by vip, vport, proto";
+       $result = $dbxlink->query ($query);
+       if ($result == NULL)
+       {
+               showError ('SQL query failed', __FUNCTION__);
+               return NULL;
+       }
+       $vslist = array ();
+       while ($row = $result->fetch (PDO::FETCH_ASSOC))
+               foreach (array ('vip', 'vport', 'proto', 'name', 'vsconfig', 'rsconfig') as $cname)
+                       $vslist[$row['id']][$cname] = $row[$cname];
+       $result->closeCursor();
+       return $vslist;
+}
+
 ?>
index e915c29ad913e3df25ca6c0bf733c22128e1f661..044e4a1973bce29587605fda7bfd5294daba0413 100644 (file)
@@ -1639,7 +1639,7 @@ function renderAddressspace ()
        startPortlet ('SLB details');
        echo "<table border=0 width='100%'><tr>";
        foreach (array ('vservices', 'rspools', 'rservers', 'lbs') as $pno)
-               echo "<td><h3>[<a href='${root}?page=${pno}'>" . $page[$pno]['title'] . "</a>]</h3></td>";
+               echo "<td><h3><a href='${root}?page=${pno}'>" . $page[$pno]['title'] . "</a></h3></td>";
        echo '</tr></table>';
        finishPortlet();
 
@@ -3700,6 +3700,7 @@ function renderVirtualService ($vsid = 0)
                        echo '</table>';
                }
                echo "</td></tr>\n";
+               $order = $nextorder[$order];
        }
        echo "</table>\n";
        finishPortlet ();
@@ -3839,4 +3840,21 @@ function renderRSPool ($pool_id = 0)
 #echo '</pre>';
 }
 
+function renderVSList ()
+{
+       $vslist = getVSList();
+       echo "<table class=widetable border=0 cellpadding=10 cellspacing=0 align=center>\n";
+       echo "<tr><th>endpoint</th><th>name</th><th>VS configuration</th><th>RS configuration</th></tr>";
+       foreach ($vslist as $vsid => $vsinfo)
+       {
+               echo "<tr><td><a href='${root}?page=vservice&id=${vsid}'>" . buildVServiceName ($vsinfo);
+               echo "</a></td>";
+               echo "<td>${vsinfo['name']}</td>";
+               echo "<td><pre>${vsinfo['vsconfig']}</pre></td>";
+               echo "<td><pre>${vsinfo['rsconfig']}</pre></td>";
+               echo "</tr>\n";
+       }
+       echo "</table>";
+}
+
 ?>
index b5674f5ad717de8ee25839ae725e938e2c428c62..40c8ac40d347596351d8546d41ae31f84c6bc7f7 100644 (file)
@@ -150,6 +150,8 @@ $ophandler['ipaddress']['assignment']['bindObjectToIp'] = 'addIpAssignment';
 
 $page['vservices']['title'] = 'Virtual services';
 $page['vservices']['parent'] = 'ipv4space';
+$tab['vservices']['default'] = 'View';
+$tabhandler['vservices']['default'] = 'renderVSList';
 
 $page['vservice']['title_handler'] = 'dynamic_title_vservice';
 $page['vservice']['parent'] = 'vservices';
@@ -159,7 +161,7 @@ $tab['vservice']['default'] = 'View';
 $tab['vservice']['configs'] = '[Configuration]';
 $tabhandler['vservice']['default'] = 'renderVirtualService';
 
-$page['rspools']['title'] = 'RS pools';
+$page['rspools']['title'] = '[RS pools]';
 $page['rspools']['parent'] = 'ipv4space';
 
 $page['rspool']['title_handler'] = 'dynamic_title_rspool';
@@ -175,10 +177,10 @@ $ophandler['rspool']['editrslist']['addRS'] = 'addRealServer';
 $ophandler['rspool']['editrslist']['delRS'] = 'deleteRealServer';
 $ophandler['rspool']['editrslist']['updRS'] = 'updateRealServer';
 
-$page['rservers']['title'] = 'Real servers';
+$page['rservers']['title'] = '[Real servers]';
 $page['rservers']['parent'] = 'ipv4space';
 
-$page['lbs']['title'] = 'Load balancers';
+$page['lbs']['title'] = '[Load balancers]';
 $page['lbs']['parent'] = 'ipv4space';
 
 $page['search']['title_handler'] = 'dynamic_title_search';