IP Reg is a IPAM tool to keep track of assets, nodes (IP addresses, MAC addresses, DNS aliases) within different subnets, over different locations or even VLAN's. Written in PHP, used with a MySQL-database to have a unique insight in your local network.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
ipreg/location.php

47 lines
1.2 KiB

<?php
/*****************************************************************************
IP Reg, a PHP/MySQL IPAM tool
Copyright (C) 2007-2009 Wietse Warendorff (up to v0.5)
Copyright (C) 2011-2023 Thomas Hooge
SPDX-License-Identifier: GPL-3.0-or-later
*****************************************************************************/
include("includes.php");
include("header.php");
$query = "SELECT
location_id AS id,
location_name AS value,
location_parent AS parent_id
FROM
location
ORDER BY location_parent, location_sort, location_name";
$locations = $db->db_select($query);
// function for recursion
function build_tree($parent_id, $level) {
global $locations;
$children = array();
foreach ($locations as $key => $location) {
if ($location['parent_id'] == $parent_id) {
unset($location['parent_id']);
$location['children'] = build_tree($location['id'], $level+1);
$location['level'] = $level;
$location['href'] = 'locationview.php?location_id=' . $location['id'];
$children[] = $location;
}
}
return $children;
}
$tree = build_tree(0, 0);
$smarty->assign("locations", $tree);
$smarty->display("location.tpl");
include("footer.php");
?>