diff --git a/html/pages/device.inc.php b/html/pages/device.inc.php index 1455abd766..406c47fbfc 100644 --- a/html/pages/device.inc.php +++ b/html/pages/device.inc.php @@ -153,20 +153,31 @@ if (device_permitted($vars['device']) || $check_device == $vars['device']) '); } - ### $routing_tabs is used in device/routing/ to build the tabs menu. we built it here to save some queries + ### $loadbalancer_tabs is used in device/loadbalancer/ to build the submenu. we do it here to save queries if($device['os'] == "netscaler") /// Netscaler { - $device_routing_count['netscaler_vsvr'] = dbFetchCell("SELECT COUNT(*) FROM `netscaler_vservers` WHERE `device_id` = ?", array($device['device_id'])); - if ($device_routing_count['netscaler_vsvr']) { $routing_tabs[] = 'netscaler_vsvr'; } + $device_loadbalancer_count['netscaler_vsvr'] = dbFetchCell("SELECT COUNT(*) FROM `netscaler_vservers` WHERE `device_id` = ?", array($device['device_id'])); + if ($device_loadbalancer_count['netscaler_vsvr']) { $loadbalancer_tabs[] = 'netscaler_vsvr'; } } if($device['os'] == "acsw") /// Cisco ACE { - $device_routing_count['loadbalancer_vservers'] = dbFetchCell("SELECT COUNT(*) FROM `loadbalancer_vservers` WHERE `device_id` = ?", array($device['device_id'])); - if ($device_routing_count['loadbalancer_vservers']) { $routing_tabs[] = 'loadbalancer_vservers'; } + $device_loadbalancer_count['loadbalancer_vservers'] = dbFetchCell("SELECT COUNT(*) FROM `loadbalancer_vservers` WHERE `device_id` = ?", array($device['device_id'])); + if ($device_loadbalancer_count['loadbalancer_vservers']) { $loadbalancer_tabs[] = 'loadbalancer_vservers'; } } + if (is_array($loadbalancer_tabs)) + { + echo('
  • + + Load Balancer + +
  • '); + } + + ### $routing_tabs is used in device/routing/ to build the tabs menu. we built it here to save some queries + $device_routing_count['loadbalancer_rservers'] = dbFetchCell("SELECT COUNT(*) FROM `loadbalancer_rservers` WHERE `device_id` = ?", array($device['device_id'])); if ($device_routing_count['loadbalancer_rservers']) { $routing_tabs[] = 'loadbalancer_rservers'; } diff --git a/html/pages/device/loadbalancer.inc.php b/html/pages/device/loadbalancer.inc.php new file mode 100644 index 0000000000..49271e188c --- /dev/null +++ b/html/pages/device/loadbalancer.inc.php @@ -0,0 +1,67 @@ + 'device', + 'device' => $device['device_id'], + 'tab' => 'loadbalancer'); + +## Cisco ACE +$type_text['loadbalancer_rservers'] = "Rservers"; +$type_text['loadbalancer_vservers'] = "Serverfarms"; + +## Citrix Netscaler +$type_text['netscaler_vsvr'] = "VServers"; + +print_optionbar_start(); + +$pagetitle[] = "Load Balancer"; + +echo("Load Balancer » "); + +unset($sep); +foreach ($loadbalancer_tabs as $type) +{ + + if (!$vars['proto']) { $vars['proto'] = $type; } + + echo($sep); + + if ($vars['proto'] == $type) + { + echo(''); + } + + echo(generate_link($type_text[$type] ." (".$device_loadbalancer_count[$type].")",$link_array,array('proto'=>$type))); + if ($vars['proto'] == $type) { echo(""); } + $sep = " | "; +} + +print_optionbar_end(); + +if (is_file("pages/device/loadbalancer/".mres($vars['proto']).".inc.php")) +{ + include("pages/device/loadbalancer/".mres($vars['proto']).".inc.php"); +} else { + foreach ($loadbalancer_tabs as $type) + { + if ($type != "overview") + { + if (is_file("pages/device/loadbalancer/overview/".mres($type).".inc.php")) { + + $g_i++; + if (!is_integer($g_i/2)) { $row_colour = $list_colour_a; } else { $row_colour = $list_colour_b; } + + echo('
    '); + echo('
    '.$type_text[$type].''); + include("pages/device/loadbalancer/overview/".mres($type).".inc.php"); + echo('
    '); + echo('
    '); + } else { + $graph_title = $type_text[$type]; + $graph_type = "device_".$type; + include("includes/print-device-graph.php"); + } + } + } +} + +?> diff --git a/html/pages/device/routing/loadbalancer_rservers.inc.php b/html/pages/device/loadbalancer/loadbalancer_rservers.inc.php similarity index 100% rename from html/pages/device/routing/loadbalancer_rservers.inc.php rename to html/pages/device/loadbalancer/loadbalancer_rservers.inc.php diff --git a/html/pages/device/routing/loadbalancer_vservers.inc.php b/html/pages/device/loadbalancer/loadbalancer_vservers.inc.php similarity index 100% rename from html/pages/device/routing/loadbalancer_vservers.inc.php rename to html/pages/device/loadbalancer/loadbalancer_vservers.inc.php diff --git a/html/pages/device/routing/netscaler_vsvr.inc.php b/html/pages/device/loadbalancer/netscaler_vsvr.inc.php similarity index 97% rename from html/pages/device/routing/netscaler_vsvr.inc.php rename to html/pages/device/loadbalancer/netscaler_vsvr.inc.php index b29057605c..431d8184c6 100644 --- a/html/pages/device/routing/netscaler_vsvr.inc.php +++ b/html/pages/device/loadbalancer/netscaler_vsvr.inc.php @@ -2,7 +2,7 @@ print_optionbar_start(); -echo("Serverfarms » "); +echo("VServers » "); #$auth = TRUE;