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.
69 lines
2.1 KiB
69 lines
2.1 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");
|
|
|
|
$location_id = sanitize($_GET['location_id']);
|
|
|
|
include("header.php");
|
|
|
|
|
|
// locationcrumb
|
|
$sql = "SELECT location_id AS id, location_name AS name,
|
|
location_parent AS parent_id, location_info AS info,
|
|
CONCAT('locationview.php?location_id=', location_id) AS url
|
|
FROM location
|
|
WHERE location_id=?";
|
|
$sth = $dbh->prepare($sql);
|
|
$sth->execute([$location_id]);
|
|
$location = $sth->fetch(PDO::FETCH_OBJ);
|
|
|
|
$crumbs[] = $location;
|
|
$level = 1;
|
|
$sql = "SELECT location_id AS id, location_name AS name,
|
|
location_parent AS parent_id,
|
|
CONCAT('locationview.php?location_id=', location_id) AS url
|
|
FROM location
|
|
WHERE location_id=?";
|
|
$sth = $dbh->prepare($sql);
|
|
while ($crumbs[0]->parent_id != 0) {
|
|
$sth->execute([$crumbs[0]->parent_id]);
|
|
$result = $sth->fetch(PDO::FETCH_OBJ);
|
|
array_unshift($crumbs, $result);
|
|
$level++;
|
|
}
|
|
|
|
$smarty->assign("location_id", $location->id);
|
|
$smarty->assign("location_info", nl2br($location->info));
|
|
$smarty->assign("crumbs", $crumbs);
|
|
|
|
// sublocations
|
|
$sql = "SELECT location_id AS sublocation_id, location_name AS sublocation_name,
|
|
LEFT(location_info, 40) AS info_short,
|
|
CHAR_LENGTH(location_info) AS info_length
|
|
FROM location
|
|
WHERE location_parent=?
|
|
ORDER BY location_name";
|
|
$sth = $dbh->prepare($sql);
|
|
$sth->execute([$location_id]);
|
|
$smarty->assign("sublocations", $sth->fetchAll());
|
|
|
|
// subnets
|
|
$sql = "SELECT s.subnet_id, s.subnet_address, s.subnet_mask
|
|
FROM subnet AS s LEFT JOIN subnetlocation AS l USING (subnet_id)
|
|
WHERE l.location_id=?
|
|
ORDER BY INET_ATON(s.subnet_address)";
|
|
$sth = $dbh->prepare($sql);
|
|
$sth->execute([$location_id]);
|
|
$smarty->assign("subnets", $sth->fetchAll());
|
|
|
|
$smarty->display("locationview.tpl");
|
|
|
|
include("footer.php");
|
|
?>
|
|
|