|
@@ -5,6 +5,14 @@ unset($_POST);
|
|
|
require_once ($_SERVER['DOCUMENT_ROOT']."/inc/header.php");
|
|
require_once ($_SERVER['DOCUMENT_ROOT']."/inc/header.php");
|
|
|
print_device_submenu($page_url);
|
|
print_device_submenu($page_url);
|
|
|
?>
|
|
?>
|
|
|
|
|
+
|
|
|
|
|
+<script>
|
|
|
|
|
+$.getScript("/js/jstree/jstree.min.js")
|
|
|
|
|
+.fail(function(jqxhr, settings, exception) {
|
|
|
|
|
+ window.location.href = '/admin/devices/index-tree-simple.php';
|
|
|
|
|
+ });
|
|
|
|
|
+</script>
|
|
|
|
|
+
|
|
|
<div id="cont">
|
|
<div id="cont">
|
|
|
<br>
|
|
<br>
|
|
|
<?php
|
|
<?php
|
|
@@ -14,11 +22,13 @@ function print_child($device_id,$hash)
|
|
|
foreach ($hash as $device) {
|
|
foreach ($hash as $device) {
|
|
|
if (!isset($device['parent_id'])) { continue; }
|
|
if (!isset($device['parent_id'])) { continue; }
|
|
|
if ($device['parent_id'] !== $device_id) { continue; }
|
|
if ($device['parent_id'] !== $device_id) { continue; }
|
|
|
- print '<ul><li class="jstree-node" id="'.$device['id'].'">';
|
|
|
|
|
-// print $device['parent_port'].'->'.$device['uplink'].' ';
|
|
|
|
|
- print_url($device['name'],'/admin/devices/editdevice.php?id='.$device['id']);
|
|
|
|
|
- print_child($device['id'],$hash);
|
|
|
|
|
- print '</li></ul>';
|
|
|
|
|
|
|
+ $dev_icon = '/img/server.png';
|
|
|
|
|
+ if ($device['type'] == 1) { $dev_icon = '/img/switch16.png'; }
|
|
|
|
|
+ if ($device['type'] == 2) { $dev_icon = '/img/router.png'; }
|
|
|
|
|
+ if ($device['type'] == 3) { $dev_icon = '/img/gateway.png'; }
|
|
|
|
|
+ print '{ "text" : "'; print $device['parent_port'].'->'.$device['uplink'].' '.$device['name']; print '", "icon" : "'.$dev_icon.'", "id" : "'.$device['id'].'","state" : { "opened" : true },';
|
|
|
|
|
+ print '"a_attr" : { "href": "'.reencodeurl('/admin/devices/editdevice.php?id='.$device['id']).'"},';
|
|
|
|
|
+ print '"children" : ['; print_child($device['id'],$hash); print ']';print "},\n";
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -29,27 +39,52 @@ foreach ($switches as $row) {
|
|
|
$dev_id=$row['id'];
|
|
$dev_id=$row['id'];
|
|
|
$dev_hash[$dev_id]['id']=$dev_id;
|
|
$dev_hash[$dev_id]['id']=$dev_id;
|
|
|
$dev_hash[$dev_id]['name']=$row['device_name'];
|
|
$dev_hash[$dev_id]['name']=$row['device_name'];
|
|
|
|
|
+$dev_hash[$dev_id]['type']=$row['device_type'];
|
|
|
|
|
+//gateway
|
|
|
|
|
+if ($row['user_acl'] and $row['device_type'] == 2) { $dev_hash[$dev_id]['type']=3; }
|
|
|
$pSQL = 'SELECT * FROM device_ports WHERE uplink = 1 and device_id='.$dev_id;
|
|
$pSQL = 'SELECT * FROM device_ports WHERE uplink = 1 and device_id='.$dev_id;
|
|
|
$uplink = get_record_sql($db_link,$pSQL);
|
|
$uplink = get_record_sql($db_link,$pSQL);
|
|
|
if (empty($uplink)) { continue; }
|
|
if (empty($uplink)) { continue; }
|
|
|
if (empty($uplink['target_port_id'])) { continue; }
|
|
if (empty($uplink['target_port_id'])) { continue; }
|
|
|
|
|
+//$dev_hash[$dev_id]['uplink']=$uplink['ifName'];
|
|
|
$dev_hash[$dev_id]['uplink']=$uplink['port_name'];
|
|
$dev_hash[$dev_id]['uplink']=$uplink['port_name'];
|
|
|
$parentSQL='SELECT * FROM device_ports WHERE device_ports.id='.$uplink['target_port_id'];
|
|
$parentSQL='SELECT * FROM device_ports WHERE device_ports.id='.$uplink['target_port_id'];
|
|
|
$parent=get_record_sql($db_link,$parentSQL);
|
|
$parent=get_record_sql($db_link,$parentSQL);
|
|
|
$dev_hash[$dev_id]['parent_id']=$parent['device_id'];
|
|
$dev_hash[$dev_id]['parent_id']=$parent['device_id'];
|
|
|
|
|
+//$dev_hash[$dev_id]['parent_port']=$parent['ifName'];
|
|
|
$dev_hash[$dev_id]['parent_port']=$parent['port_name'];
|
|
$dev_hash[$dev_id]['parent_port']=$parent['port_name'];
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-print '<div id="html1">';
|
|
|
|
|
|
|
+print '<div id="frmt" class="tree"></div>';
|
|
|
|
|
+print "\n";
|
|
|
|
|
+print '<script>';
|
|
|
|
|
+print "$('#frmt').jstree({";
|
|
|
|
|
+print '"themes" : { "theme" : "default", "dots" : false, "icons" : false }, "plugins" : [ "themes", "html_data", "ui", "sort", "state" ],';
|
|
|
|
|
+print "'core' : { 'data' : [";
|
|
|
|
|
+print "\n";
|
|
|
foreach ($dev_hash as $device) {
|
|
foreach ($dev_hash as $device) {
|
|
|
if (isset($device['parent_id'])) { continue; }
|
|
if (isset($device['parent_id'])) { continue; }
|
|
|
-print '<ul><li>';
|
|
|
|
|
-print_url($device['name'],'/admin/devices/editdevice.php?id='.$device['id']);
|
|
|
|
|
-print_child($device['id'],$dev_hash);
|
|
|
|
|
-print '</li>';
|
|
|
|
|
-print '</ul>';
|
|
|
|
|
|
|
+$dev_icon = '/img/server.png';
|
|
|
|
|
+if ($device['type'] == 1) { $dev_icon = '/img/switch16.png'; }
|
|
|
|
|
+if ($device['type'] == 2) { $dev_icon = '/img/router.png'; }
|
|
|
|
|
+if ($device['type'] == 3) { $dev_icon = '/img/gateway.png'; }
|
|
|
|
|
+print '{ "text" : "'; print_url($device['name'],'/admin/devices/editdevice.php?id='.$device['id']); print '","icon" : "'.$dev_icon.'", "id" : "'.$device['id'].'" ,"state" : { "opened" : true },';
|
|
|
|
|
+print '"a_attr" : { "href": "'.reencodeurl('/admin/devices/editdevice.php?id='.$device['id']).'"},';
|
|
|
|
|
+print '"children" : ['; print_child($device['id'],$dev_hash); print "]";
|
|
|
|
|
+print "},\n";
|
|
|
}
|
|
}
|
|
|
-print '</div>';
|
|
|
|
|
|
|
+?>
|
|
|
|
|
+]}
|
|
|
|
|
+}).on('changed.jstree', function (e, data) {
|
|
|
|
|
+ if (data == null) return '';
|
|
|
|
|
+ if (data.node == null) return '';
|
|
|
|
|
+ var href = data.node.a_attr.href;
|
|
|
|
|
+ var parentId = data.node.a_attr.parent_id;
|
|
|
|
|
+ if(href == '#') return '';
|
|
|
|
|
+ var win = window.open(href, "_blank");
|
|
|
|
|
+});
|
|
|
|
|
+</script>
|
|
|
|
|
|
|
|
|
|
+<?php
|
|
|
require_once ($_SERVER['DOCUMENT_ROOT']."/inc/footer.php");
|
|
require_once ($_SERVER['DOCUMENT_ROOT']."/inc/footer.php");
|
|
|
?>
|
|
?>
|