Compare commits
5 Commits
f0992b4b64
...
78b97c5094
Author | SHA1 | Date |
---|---|---|
Thomas Hooge | 78b97c5094 | 2 years ago |
Thomas Hooge | 7cfcaeb9d7 | 2 years ago |
Thomas Hooge | 32bd592098 | 2 years ago |
Thomas Hooge | c63b500d77 | 2 years ago |
Thomas Hooge | ccdcfb968c | 2 years ago |
@ -1,36 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if((isset($_GET['assetclass_id'])) ? $assetclass_id = sanitize($_GET['assetclass_id']) : $assetclass_id = ""); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclass_id, assetclass_name |
||||
FROM assetclass |
||||
ORDER BY assetclass_name"; |
||||
$sth = $dbh->query($sql); |
||||
|
||||
$types = db_load_enum('asset','asset_type'); |
||||
|
||||
$smarty->assign("type_ids", $types); |
||||
$smarty->assign("type_names", $types); |
||||
$smarty->assign("type_selected", $types[0]); |
||||
|
||||
$assetclass_options = array(); |
||||
foreach ($sth->fetchAll(PDO::FETCH_NUM) as $rec) { |
||||
$assetclass_options[$rec[0]] = $rec[1]; |
||||
} |
||||
|
||||
$smarty->assign("assetclass_options", $assetclass_options); |
||||
$smarty->display("assetadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,20 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if((isset($_GET['assetclassgroup_id'])) ? $assetclassgroup_id = sanitize($_GET['assetclassgroup_id']) : $assetclassgroup_id = ""); |
||||
|
||||
include("header.php"); |
||||
|
||||
$smarty->assign("assetclassgroup_options", db_get_options_assetclassgroup()); |
||||
$smarty->display("assetclassadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,26 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclass_id = sanitize($_GET['assetclass_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclass_id AS id, assetclass_name AS name |
||||
FROM assetclass |
||||
WHERE assetclass_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclass_id]); |
||||
$smarty->assign("assetclass", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("assetclassdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,30 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclass_id = sanitize($_GET['assetclass_id']); |
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclass_id AS id, assetclass_name AS name, |
||||
assetclass_description AS description, |
||||
assetclassgroup_id AS group_id |
||||
FROM assetclass |
||||
WHERE assetclass_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclass_id]); |
||||
|
||||
$smarty->assign("assetclass", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->assign("assetclassgroup_options", db_get_options_assetclassgroup()); |
||||
|
||||
$smarty->display("assetclassedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,18 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$smarty->assign("scripts", 'jscolor.js'); |
||||
include("header.php"); |
||||
|
||||
$smarty->display("assetclassgroupadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,26 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclassgroup_id = sanitize($_GET['assetclassgroup_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclassgroup_id AS id, assetclassgroup_name AS name |
||||
FROM assetclassgroup |
||||
WHERE assetclassgroup_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclassgroup_id]); |
||||
$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("assetclassgroupdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,30 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclassgroup_id = sanitize($_GET['assetclassgroup_id']); |
||||
|
||||
$smarty->assign("scripts", 'jscolor.js'); |
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclassgroup_id AS id, assetclassgroup_name AS name, |
||||
assetclassgroup_color AS color, |
||||
assetclassgroup_description AS description |
||||
FROM assetclassgroup |
||||
WHERE assetclassgroup_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclassgroup_id]); |
||||
|
||||
$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("assetclassgroupedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,37 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclassgroup_id = sanitize($_GET['assetclassgroup_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT assetclassgroup_id AS id, |
||||
assetclassgroup_name AS name, |
||||
assetclassgroup_color AS color, |
||||
assetclassgroup_description AS description |
||||
FROM assetclassgroup |
||||
WHERE assetclassgroup_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclassgroup_id]); |
||||
$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$sql = "SELECT assetclass_id, assetclass_name |
||||
FROM assetclass |
||||
WHERE assetclassgroup_id=? |
||||
ORDER BY assetclass_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclassgroup_id]); |
||||
$smarty->assign("assetclasses", $sth->fetchAll(PDO::FETCH_ASSOC)); |
||||
|
||||
$smarty->display("assetclassgroupview.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,37 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$assetclass_id = sanitize($_GET['assetclass_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT a.assetclass_id, a.assetclass_name, g.assetclassgroup_id, |
||||
a.assetclass_description, |
||||
g.assetclassgroup_name, g.assetclassgroup_color |
||||
FROM assetclass AS a LEFT OUTER JOIN assetclassgroup AS g USING (assetclassgroup_id) |
||||
WHERE a.assetclass_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclass_id]); |
||||
$smarty->assign("assetclass", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$sql = "SELECT asset_id, asset_name, |
||||
CONCAT(LEFT(asset_info, 80), IF(CHAR_LENGTH(asset_info)>80,'...','')) AS asset_info |
||||
FROM asset |
||||
WHERE assetclass_id=? |
||||
ORDER BY asset_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$assetclass_id]); |
||||
$smarty->assign("assets", $sth->fetchAll(PDO::FETCH_ASSOC)); |
||||
|
||||
$smarty->display("assetclassview.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,31 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$asset_id = sanitize($_GET['asset_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// asset to delete |
||||
$sth = $dbh->prepare("SELECT asset_name FROM asset WHERE asset_id=?"); |
||||
$sth->execute([$asset_id]); |
||||
$smarty->assign("asset_id", $asset_id); |
||||
$smarty->assign("asset_name", $sth->fetchColumn()); |
||||
|
||||
// nodes to delete |
||||
$sql = "SELECT node_id, node_ip FROM node WHERE asset_id=? ORDER BY INET_ATON(node_ip)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_id]); |
||||
$smarty->assign("nodes", $sth->fetchAll(PDO::FETCH_ASSOC)); |
||||
|
||||
$smarty->display("assetdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,33 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$asset_id = sanitize($_GET['asset_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT asset_id, asset_name, asset_hostname, asset_info, asset_intf, |
||||
assetclass_id, asset_type |
||||
FROM asset |
||||
WHERE asset_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_id]); |
||||
$smarty->assign("asset", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// Type selection |
||||
$smarty->assign("type_ids", ['active', 'passive']); |
||||
$smarty->assign("type_names", ['Active', 'Passive']); |
||||
|
||||
$smarty->assign("assetclass_options", db_get_options_assetclass()); |
||||
|
||||
$smarty->display("assetedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,41 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if (isset($_GET['asset_id']) && (!empty($_GET['asset_id']))) { |
||||
$asset_id = sanitize($_GET['asset_id']); |
||||
} else { |
||||
header_location("comments.php?comments=error"); |
||||
} |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT a.asset_id, a.asset_name, a.asset_hostname, a.asset_info, |
||||
a.asset_intf, a.asset_type, c.assetclass_id, c.assetclass_name |
||||
FROM asset AS a LEFT OUTER JOIN assetclass AS c USING (assetclass_id) |
||||
WHERE a.asset_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_id]); |
||||
$asset = $sth->fetch(PDO::FETCH_OBJ); |
||||
$smarty->assign("asset", $asset); |
||||
|
||||
$sql = "SELECT node_id, node_ip, |
||||
CONCAT(LEFT(node_info, 40), IF(CHAR_LENGTH(node_info)>40,'...','')) AS node_info |
||||
FROM node |
||||
WHERE asset_id=? |
||||
ORDER BY INET_ATON(node_ip)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_id]); |
||||
$smarty->assign("nodes", $sth->fetchAll(PDO::FETCH_ASSOC)); |
||||
|
||||
$smarty->display("assetview.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,29 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_ip = sanitize($_GET['node_ip']); |
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
$smarty->assign("node_ip", $node_ip); |
||||
|
||||
$smarty->display("assigniptonode.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,28 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$asset_id = sanitize($_GET['asset_id']); |
||||
$node_ip = sanitize($_GET['node_ip']); |
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$smarty->assign("node_ip", $node_ip); |
||||
$smarty->assign("asset_id", $asset_id); |
||||
$smarty->assign("subnet_id", $subnet_id); |
||||
|
||||
$smarty->assign("asset_options", db_get_options_asset()); |
||||
$smarty->assign("subnet_options", db_get_options_subnet()); |
||||
|
||||
$smarty->display("assignnodetoasset.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,22 +0,0 @@ |
||||
<?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"); |
||||
|
||||
|
||||
$comments = sanitize($_GET['comments']); |
||||
|
||||
$smarty->assign("comments", $lang['lang_comments_' . $comments]); |
||||
|
||||
$smarty->display("comments.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,75 +0,0 @@ |
||||
<?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_parent = sanitize($_GET['location_parent']); |
||||
|
||||
include("header.php"); |
||||
|
||||
|
||||
// ************* <option value="0">{$lang_option_none}</option> |
||||
|
||||
$sql = "SELECT location_id AS id, location_name AS name, |
||||
location_parent AS parent, location_sort AS sort |
||||
FROM location |
||||
ORDER BY location_parent, location_sort, location_name"; |
||||
$sth = $dbh->query($sql); |
||||
$locations = $sth->fetchAll(); |
||||
|
||||
if (count($locations) > 0) { |
||||
foreach ($locations AS $location) { |
||||
$location_names[$location['id']] = $location['name']; |
||||
$parents[$location['parent']][] = $location['id']; |
||||
} |
||||
} |
||||
|
||||
// look for parents |
||||
// function to look for parents and create a new array for every child |
||||
function location($parents, $parent = 0) { |
||||
foreach ($parents[$parent] as $child) { |
||||
if (isset($parents[$child])) { |
||||
// element has children |
||||
$children[$child] = location($parents, $child); |
||||
} else { |
||||
// no children, set NULL |
||||
$children[$child] = NULL; |
||||
} |
||||
} |
||||
return $children; |
||||
} |
||||
|
||||
// recursive children check to template |
||||
function checkchildren($locations, $level) { |
||||
global $location_options; |
||||
global $location_names; |
||||
global $location_parent; |
||||
|
||||
foreach ($locations as $parent=>$child) { |
||||
$row = str_repeat("- ", $level) . $location_names[$parent]; |
||||
$location_options[$parent] = $row; |
||||
if (isset($child)) { |
||||
checkchildren($child, $level+1); |
||||
} |
||||
} |
||||
} |
||||
|
||||
$tree = location($parents); |
||||
|
||||
// create tree option list |
||||
$location_options = array(0 => '-'); |
||||
checkchildren($tree, 0); |
||||
|
||||
$smarty->assign("location_options", $location_options); |
||||
$smarty->assign("location_parent", $location_parent); |
||||
|
||||
$smarty->display("locationadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,24 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$sql = "SELECT location_id AS id, location_name AS name FROM location WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
$smarty->assign("location", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("locationdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,98 +0,0 @@ |
||||
<?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"); |
||||
|
||||
// location |
||||
$sql = "SELECT location_id AS id, location_name AS name, location_parent AS parent, |
||||
location_info AS info, location_sort AS sort |
||||
FROM location |
||||
WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
$location = $sth->fetch(PDO::FETCH_OBJ); |
||||
|
||||
$location_parent = $location->parent; |
||||
|
||||
$smarty->assign("location", $location); |
||||
|
||||
/*$smarty->assign("location_id", $location_id); |
||||
$smarty->assign("location_name", $location[0]['location_name']); |
||||
$smarty->assign("location_info", $location[0]['location_info']); |
||||
$smarty->assign("location_sort", $location[0]['location_sort']); */ |
||||
|
||||
// parent location |
||||
$sql = "SELECT location_id, location_name, location_parent |
||||
FROM location |
||||
WHERE location_id != ? |
||||
ORDER BY location_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
|
||||
$locations = $sth->fetchAll(); |
||||
|
||||
$location_counter = count($locations); |
||||
|
||||
$smarty->assign("location_counter", $location_counter); |
||||
|
||||
// any loactions? |
||||
if ($location_counter>0) { |
||||
foreach($locations AS $location) { |
||||
$location_names[$location['location_id']] = $location['location_name']; |
||||
$parents[$location['location_parent']][] = $location['location_id']; |
||||
} |
||||
} |
||||
|
||||
// look for parents |
||||
// function to look for parents and create a new array for every child |
||||
function location($parents, $parent = 0) { |
||||
// loop array to check |
||||
foreach($parents[$parent] as $child) { |
||||
if(isset($parents[$child])) { |
||||
// element has children |
||||
$children[$child] = location($parents, $child); |
||||
} else { |
||||
// no children, set NULL |
||||
$children[$child] = NULL; |
||||
} |
||||
} |
||||
|
||||
// and again... |
||||
return $children; |
||||
} |
||||
|
||||
// recursive children check to template |
||||
function checkchildren($locations, $level) { |
||||
global $location_options; |
||||
global $location_names; |
||||
global $location_parent; |
||||
|
||||
foreach ($locations as $parent=>$child) { |
||||
$row = str_repeat("- ", $level) . $location_names[$parent]; |
||||
$location_options[$parent] = $row; |
||||
if(isset($child)) { |
||||
checkchildren($child, $level+1); |
||||
} |
||||
} |
||||
} |
||||
|
||||
$tree = location($parents); |
||||
$location_options = array(0 => '-'); |
||||
checkchildren($tree, 0); |
||||
$smarty->assign("location_options", $location_options); |
||||
$smarty->assign("location_parent", $location_parent); |
||||
|
||||
$smarty->display("locationedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,28 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$sql = "SELECT location_id AS id, location_name AS name |
||||
FROM location |
||||
WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
$smarty->assign("location", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->assign("subnet_options", db_get_options_subnet()); |
||||
|
||||
$smarty->display("locationsubnetadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,44 +0,0 @@ |
||||
<?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"); |
||||
|
||||
// location |
||||
$sql = "SELECT location_id AS id, location_name AS name |
||||
FROM location |
||||
WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
$smarty->assign("location", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
|
||||
// subnet |
||||
$sql = "SELECT |
||||
s.subnet_id, |
||||
s.subnet_address, |
||||
s.subnet_mask |
||||
FROM |
||||
subnetlocation AS l LEFT JOIN subnet AS s USING (subnet_id) |
||||
WHERE |
||||
l.location_id=? |
||||
ORDER BY |
||||
INET_ATON(s.subnet_address)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
|
||||
$smarty->assign($sth->fetchAll()); |
||||
|
||||
$smarty->display("locationsubnetdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,26 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$sql = "SELECT location_id AS id, location_name AS name |
||||
FROM location |
||||
WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id]); |
||||
$smarty->assign("location", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("locationsubnetedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,67 +0,0 @@ |
||||
<?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']); |
||||
if ((isset($_GET['id'])) ? $id = sanitize($_GET['id']) : $id = ''); |
||||
|
||||
include("header.php"); |
||||
|
||||
|
||||
// base location |
||||
$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); |
||||
$smarty->assign("location", $location); |
||||
|
||||
// crumbs |
||||
$crumbs[] = $location; |
||||
$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); |
||||
} |
||||
$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"); |
||||
?> |
@ -1,65 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_id = sanitize($_GET['node_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// node_ext |
||||
$sql = "SELECT node_ip AS node_ip_ext |
||||
FROM node |
||||
WHERE node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
|
||||
$node = $sth->fetch(PDO::FETCH_OBJ); |
||||
|
||||
$smarty->assign("node_id_ext", $node_id); |
||||
$smarty->assign("node_ip_ext", $node->node_ip_ext); |
||||
|
||||
// node_int |
||||
$sql = "SELECT |
||||
a.asset_name, |
||||
n.node_id AS node_id_int, |
||||
n.node_ip AS node_ip_int |
||||
FROM |
||||
asset AS a LEFT JOIN node AS n USING (asset_id) |
||||
WHERE |
||||
n.node_id NOT IN ( |
||||
SELECT |
||||
nat_int |
||||
FROM |
||||
nat |
||||
WHERE |
||||
nat_ext=? |
||||
) |
||||
AND n.node_id!=? |
||||
ORDER BY |
||||
INET_ATON(n.node_ip)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id, $node_id]); |
||||
|
||||
$nodes = $sth->fetchAll(); |
||||
|
||||
foreach ($nodes as $rec) { |
||||
$node_options[$rec['node_id_int']] = $rec['node_ip_int'] . '/' . $rec['asset_name']; |
||||
} |
||||
$smarty->assign("node_options", $node_options); |
||||
|
||||
$nat_type_options[1] = $lang['lang_nat_type_1']; |
||||
$nat_type_options[2] = $lang['lang_nat_type_2']; |
||||
$nat_type_options[3] = $lang['lang_nat_type_3']; |
||||
$smarty->assign("nat_type_options", $nat_type_options); |
||||
|
||||
$smarty->display("natadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,40 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_id = sanitize($_GET['node_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// node_ext |
||||
$sth = $dbh->prepare("SELECT node_id AS id_ext, node_ip AS ip_ext FROM node WHERE node_id=?"); |
||||
$sth->execute([$node_id]); |
||||
$smarty->assign("node", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// options |
||||
$sql = "SELECT x.nat_id, n.node_ip, a.asset_name |
||||
FROM nat AS x |
||||
LEFT JOIN node AS n ON (x.nat_int=n.node_id) |
||||
LEFT JOIN asset AS a USING (asset_id) |
||||
WHERE x.nat_ext=? |
||||
ORDER BY INET_ATON(n.node_ip)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
$nats = $sth->fetchAll(); |
||||
|
||||
$options = array(); |
||||
foreach ($nats as $rec) { |
||||
$options[$rec['nat_id']] = $rec['node_ip'] . '/' . $rec['asset_name']; |
||||
} |
||||
$smarty->assign("nat_options", $options); |
||||
$smarty->display("natdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,24 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_id = sanitize($_GET['node_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT node_id AS id, node_ip AS ip FROM node WHERE node.node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
$smarty->assign("node", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("natedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,27 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if ((isset($_GET['node_ip'])) ? $node_ip = sanitize($_GET['node_ip']) : $node_ip = ''); |
||||
if ((isset($_GET['subnet_id'])) ? $subnet_id = sanitize($_GET['subnet_id']) : $subnet_id = ''); |
||||
|
||||
include("header.php"); |
||||
|
||||
$smarty->assign("user_dns1suffix", $_SESSION['suser_dns1suffix']); |
||||
$smarty->assign("user_dns2suffix", $_SESSION['suser_dns2suffix']); |
||||
$smarty->assign("node_ip", $node_ip); |
||||
$smarty->assign("subnet_id", $subnet_id); |
||||
|
||||
$smarty->assign("subnet_options", db_get_options_subnet()); |
||||
$smarty->assign("assetclass_options", db_get_options_assetclass()); |
||||
$smarty->display("nodeadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,24 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_id = sanitize($_GET['node_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT node_id AS id, node_ip AS ip, asset_id FROM node WHERE node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
$smarty->assign("node", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("nodedel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,32 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$node_id = sanitize($_GET['node_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT node_id AS id, node_ip AS ip, node_mac AS mac, |
||||
node_dns1 AS dns1, node_dns2 AS dns2, node_info AS info, |
||||
zone_id, asset_id, subnet_id |
||||
FROM node |
||||
WHERE node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
$smarty->assign("node", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->assign("asset_options", db_get_options_asset()); |
||||
$smarty->assign("subnet_options", db_get_options_subnet()); |
||||
$smarty->assign("zone_options", db_get_options_zone('(keine)')); |
||||
|
||||
$smarty->display("nodeedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,89 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if (isset($_GET['node_id']) && (!empty($_GET['node_id']))) { |
||||
$node_id = sanitize($_GET['node_id']); |
||||
} else { |
||||
// redirect to error page |
||||
header_location("comments.php?comments=error"); |
||||
exit; |
||||
} |
||||
|
||||
include("header.php"); |
||||
|
||||
// node |
||||
$sql = "SELECT |
||||
asset.asset_id, |
||||
asset.asset_name, |
||||
node.node_id AS id, |
||||
node.node_ip AS ip, |
||||
node.node_mac AS mac, |
||||
node.node_dns1 AS dns1, |
||||
node.node_dns2 AS dns2, |
||||
node.node_info AS info, |
||||
node.node_type AS type, |
||||
subnet.subnet_id, |
||||
subnet.subnet_address, |
||||
subnet.subnet_mask, |
||||
zone.zone_origin |
||||
FROM |
||||
node |
||||
LEFT JOIN asset USING (asset_id) |
||||
LEFT JOIN subnet USING (subnet_id) |
||||
LEFT JOIN zone USING (zone_id) |
||||
WHERE |
||||
node.node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id]); |
||||
|
||||
$node = $sth->fetch(PDO::FETCH_OBJ); |
||||
$node->mac = write_mac($node->mac); |
||||
$smarty->assign("node", $node); |
||||
|
||||
// nat |
||||
$sql = "SELECT |
||||
asset_ext.asset_id AS asset_id_ext, |
||||
asset_int.asset_id AS asset_id_int, |
||||
asset_ext.asset_name AS asset_name_ext, |
||||
asset_int.asset_name AS asset_name_int, |
||||
nat.nat_id AS nat_id, |
||||
nat.nat_type AS nat_type, |
||||
nat.nat_ext AS nat_ext, |
||||
nat.nat_int AS nat_int, |
||||
node_ext.node_ip AS node_ip_ext, |
||||
node_int.node_ip AS node_ip_int, |
||||
node_int.node_id AS node_id_int, |
||||
node_ext.node_id AS node_id_ext |
||||
FROM |
||||
asset AS asset_ext, |
||||
asset AS asset_int, |
||||
nat, |
||||
node AS node_ext, |
||||
node AS node_int |
||||
WHERE |
||||
(nat.nat_ext=:node_id OR nat.nat_int=:node_id) |
||||
AND node_ext.node_id=nat.nat_ext |
||||
AND node_int.node_id=nat.nat_int |
||||
AND asset_ext.asset_id=node_ext.asset_id |
||||
AND asset_int.asset_id=node_int.asset_id |
||||
ORDER BY |
||||
INET_ATON(node_ext.node_ip), |
||||
INET_ATON(node_int.node_ip)"; |
||||
|
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute(['node_id' => $node_id]); |
||||
|
||||
$smarty->assign("natrules", $sth->fetchAll()); |
||||
|
||||
$smarty->display("nodeview.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,99 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$smarty->assign("language", $language); |
||||
|
||||
|
||||
if($_SESSION['suser_menu_assets']=='on') { |
||||
$user_menu_assets_checked = 'checked'; |
||||
} else { |
||||
$user_menu_assets_checked = ''; |
||||
} |
||||
// assetclasses |
||||
if($_SESSION['suser_menu_assetclasses']=='on') { |
||||
$user_menu_assetclasses_checked = 'checked'; |
||||
} else { |
||||
$user_menu_assetclasses_checked = ''; |
||||
} |
||||
// assetclassgroups |
||||
if($_SESSION['suser_menu_assetclassgroups']=='on') { |
||||
$user_menu_assetclassgroups_checked = 'checked'; |
||||
} else { |
||||
$user_menu_assetclassgroups_checked = ''; |
||||
} |
||||
// cables |
||||
if($_SESSION['suser_menu_cables']=='on') { |
||||
$user_menu_cables_checked = 'checked'; |
||||
} else { |
||||
$user_menu_cables_checked = ''; |
||||
} |
||||
// locations |
||||
if($_SESSION['suser_menu_locations']=='on') { |
||||
$user_menu_locations_checked = 'checked'; |
||||
} else { |
||||
$user_menu_locations_checked = ''; |
||||
} |
||||
// nodes |
||||
if($_SESSION['suser_menu_nodes']=='on') { |
||||
$user_menu_nodes_checked = 'checked'; |
||||
} else { |
||||
$user_menu_nodes_checked = ''; |
||||
} |
||||
// subnets |
||||
if($_SESSION['suser_menu_subnets']=='on') { |
||||
$user_menu_subnets_checked = 'checked'; |
||||
} else { |
||||
$user_menu_subnets_checked = ''; |
||||
} |
||||
// vlans |
||||
if($_SESSION['suser_menu_vlans']=='on') { |
||||
$user_menu_vlans_checked = 'checked'; |
||||
} else { |
||||
$user_menu_vlans_checked = ''; |
||||
} |
||||
// zones |
||||
if($_SESSION['suser_menu_zones']=='on') { |
||||
$user_menu_zones_checked = 'checked'; |
||||
} else { |
||||
$user_menu_zones_checked = ''; |
||||
} |
||||
// tooltips |
||||
if($_SESSION['suser_tooltips']=='on') { |
||||
$user_tooltips_checked = 'checked'; |
||||
} else { |
||||
$user_tooltips_checked = ''; |
||||
} |
||||
|
||||
$smarty->assign("user_id", $_SESSION['suser_id']); |
||||
$smarty->assign("user_imagesize", $_SESSION['suser_imagesize']); |
||||
$smarty->assign("user_imagecount", $_SESSION['suser_imagecount']); |
||||
$smarty->assign("user_mac", $_SESSION['suser_mac']); |
||||
$smarty->assign("user_dateformat", $_SESSION['suser_dateformat']); |
||||
$smarty->assign("user_dns1suffix", $_SESSION['suser_dns1suffix']); |
||||
$smarty->assign("user_dns2suffix", $_SESSION['suser_dns2suffix']); |
||||
$smarty->assign("user_language", $_SESSION['suser_language']); |
||||
$smarty->assign("user_menu_assets_checked", $user_menu_assets_checked); |
||||
$smarty->assign("user_menu_assetclasses_checked", $user_menu_assetclasses_checked); |
||||
$smarty->assign("user_menu_assetclassgroups_checked", $user_menu_assetclassgroups_checked); |
||||
$smarty->assign("user_menu_cables_checked", $user_menu_cables_checked); |
||||
$smarty->assign("user_menu_locations_checked", $user_menu_locations_checked); |
||||
$smarty->assign("user_menu_nodes_checked", $user_menu_nodes_checked); |
||||
$smarty->assign("user_menu_subnets_checked", $user_menu_subnets_checked); |
||||
$smarty->assign("user_menu_vlans_checked", $user_menu_vlans_checked); |
||||
$smarty->assign("user_menu_zones_checked", $user_menu_zones_checked); |
||||
$smarty->assign("user_tooltips_checked", $user_tooltips_checked); |
||||
|
||||
$smarty->display("optionseditdisplay.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,16 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$smarty->display("optionseditpassword.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,815 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if ($_SERVER['REQUEST_METHOD'] != "POST") { |
||||
header_location("comments.php?comments=" . $comments); |
||||
exit; |
||||
} |
||||
|
||||
if (isset($_POST['redirect'])) { |
||||
switch ($_POST['redirect']) { |
||||
|
||||
case ("assigniptonode") : |
||||
$node_ip = sanitize($_POST['node_ip']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("assignnodetoasset") : |
||||
header_location("assignnodetoasset.php?subnet_id=" . $subnet_id . "&node_ip=" . $node_ip); |
||||
break; |
||||
case ("nodeadd") : |
||||
header_location("nodeadd.php?subnet_id=" . $subnet_id . "&node_ip=" . $node_ip); |
||||
break; |
||||
} |
||||
break; |
||||
|
||||
case ("locationsubnet") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("locationsubnetadd") : |
||||
header_location("locationsubnetadd.php?location_id=" . $location_id); |
||||
break; |
||||
case ("locationsubnetdel") : |
||||
header_location("locationsubnetdel.php?location_id=" . $location_id); |
||||
break; |
||||
} |
||||
break; |
||||
|
||||
case ("nat") : |
||||
$node_id = sanitize($_POST['node_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("natadd") : |
||||
header_location("natadd.php?node_id=" . $node_id); |
||||
break; |
||||
case ("natdel") : |
||||
header_location("natdel.php?node_id=" . $node_id); |
||||
break; |
||||
} |
||||
break; |
||||
|
||||
case ("subnetlocation") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("subnetlocationadd") : |
||||
header_location("subnetlocationadd.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
case ("subnetlocationdel") : |
||||
header_location("subnetlocationdel.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
} |
||||
break; |
||||
|
||||
case ("subnetvlan") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("subnetvlanadd") : |
||||
header_location("subnetvlanadd.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
case ("subnetvlandel") : |
||||
header_location("subnetvlandel.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
} |
||||
break; |
||||
|
||||
case ("vlansubnet") : |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
switch ($_POST['action']) { |
||||
case ("vlansubnetadd") : |
||||
header_location("vlansubnetadd.php?vlan_id=" . $vlan_id); |
||||
break; |
||||
case ("vlansubnetdel") : |
||||
header_location("vlansubnetdel.php?vlan_id=" . $vlan_id); |
||||
break; |
||||
} |
||||
break; |
||||
} |
||||
} |
||||
|
||||
if (isset($_POST['add'])) { |
||||
switch ($_POST['add']) { |
||||
|
||||
case ("asset") : |
||||
$name = sanitize($_POST['asset_name']); |
||||
$hostname = sanitize($_POST['asset_hostname']); |
||||
$assetclass_id = sanitize($_POST['assetclass_id']); |
||||
$info = sanitize($_POST['asset_info']); |
||||
$intf = sanitize($_POST['asset_intf']); |
||||
$asset_type = sanitize($_POST['asset_type']); |
||||
|
||||
$sql = "INSERT INTO asset |
||||
(asset_name, asset_hostname, assetclass_id, asset_info, |
||||
asset_intf, asset_type) |
||||
VALUE |
||||
(?, ?, ?, ?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$name, $hostname, $assetclass_id, $info, $intf, $asset_type]); |
||||
|
||||
header_location("assetview.php?asset_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("assetclass") : |
||||
$name = sanitize($_POST['assetclass_name']); |
||||
$description = sanitize($_POST['assetclass_description']); |
||||
$group_id = sanitize($_POST['assetclassgroup_id']); |
||||
|
||||
$sql = "INSERT INTO assetclass |
||||
(assetclass_name, assetclass_description, assetclassgroup_id) |
||||
VALUE |
||||
(?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$name, $description, $group_id]); |
||||
|
||||
header_location("assetclassview.php?assetclass_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("assetclassgroup") : |
||||
$name = sanitize($_POST['acg_name']); |
||||
$color = preg_replace("|[^a-zA-Z0-9]|", "", strtoupper(sanitize($_POST['acg_color']))); |
||||
$desc = sanitize($_POST['acg_description']); |
||||
|
||||
$sql = "INSERT INTO assetclassgroup |
||||
(assetclassgroup_name, assetclassgroup_color, assetclassgroup_description) |
||||
VALUE |
||||
(?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$name, $color, $desc]); |
||||
|
||||
header_location("assetclassgroupview.php?assetclassgroup_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("assignnodetoasset") : |
||||
$node_ip = sanitize($_POST['node_ip']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$asset_id = sanitize($_POST['asset_id']); |
||||
$node_mac = strip_mac(sanitize($_POST['node_mac'])); |
||||
if ((!empty($_POST['node_dns1']) && isset($_POST['node_dns1suffix'])) ? $node_dns1 = sanitize($_POST['node_dns1']) . $config_dns1suffix : $node_dns1 = sanitize($_POST['node_dns1'])); |
||||
if ((!empty($_POST['node_dns2']) && isset($_POST['node_dns2suffix'])) ? $node_dns2 = sanitize($_POST['node_dns2']) . $config_dns2suffix : $node_dns2 = sanitize($_POST['node_dns2'])); |
||||
$node_info = $_POST['node_info']; |
||||
|
||||
$sql = "INSERT INTO node ( |
||||
node_ip, |
||||
node_mac, |
||||
node_dns1, |
||||
node_dns2, |
||||
subnet_id, |
||||
asset_id, |
||||
node_info) |
||||
VALUE |
||||
(?, ?, ?, ?, ?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_ip, $node_mac, $node_dns1, $node_dns2, |
||||
$subnet_id, $asset_id, $node_info]); |
||||
|
||||
header_location("nodeview.php?node_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("assignlocationtosubnet") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sql = "INSERT INTO subnetlocation (location_id, subnet_id) |
||||
VALUE (?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id, $subnet_id]); |
||||
|
||||
header_location("Location: location.php?location_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("assignsubnettovlan") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sql = "UPDATE subnet SET vlan_id=? WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$vlan_id, $subnet_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("location") : |
||||
$name = sanitize($_POST['location_name']); |
||||
$parent = sanitize($_POST['location_parent']); |
||||
$info = sanitize($_POST['location_info']); |
||||
|
||||
$sql = "INSERT INTO location ( |
||||
location_name, location_parent, location_info |
||||
) |
||||
VALUE (?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$name, $parent, $info]); |
||||
|
||||
header_location("locationview.php?location_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("locationsubnet") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sql = "INSERT INTO subnetlocation (location_id, subnet_id) |
||||
VALUE (?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id, $subnet_id]); |
||||
|
||||
header_location("locationview.php?location_id=" . $location_id); |
||||
break; |
||||
|
||||
case ("nat") : |
||||
$node_id_ext = sanitize($_POST['node_id_ext']); |
||||
$node_id_int = sanitize($_POST['node_id_int']); |
||||
$nat_type = sanitize($_POST['nat_type']); |
||||
|
||||
$sql = "INSERT INTO nat (nat_ext, nat_int, nat_type) |
||||
VALUE (?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$node_id_ext, $node_id_int, $nat_type]); |
||||
|
||||
header_location("nodeview.php?node_id=" . $node_id_ext); |
||||
break; |
||||
|
||||
case ("node") : |
||||
$asset_name = sanitize($_POST['asset_name']); |
||||
$asset_hostname = sanitize($_POST['asset_hostname']); |
||||
$assetclass_id = sanitize($_POST['assetclass_id']); |
||||
$ip = sanitize($_POST['node_ip']); |
||||
$mac = strip_mac(sanitize($_POST['node_mac'])); |
||||
if ((!empty($_POST['node_dns1']) && isset($_POST['dns1suffix'])) ? $dns1 = sanitize($_POST['node_dns1']) . $config_dns1suffix : $dns1 = sanitize($_POST['node_dns1'])); |
||||
if ((!empty($_POST['node_dns2']) && isset($_POST['dns2suffix'])) ? $dns2 = sanitize($_POST['node_dns2']) . $config_dns2suffix : $dns2 = sanitize($_POST['node_dns2'])); |
||||
$node_info = sanitize($_POST['node_info']); |
||||
$subnet_id = $_POST['subnet_id']; |
||||
|
||||
$sql = "INSERT INTO asset (asset_name, asset_hostname, assetclass_id) |
||||
VALUE (?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_name, $asset_hostname, $assetclass_id]); |
||||
$asset_id = $dbh->lastInsertId(); |
||||
|
||||
$sql = "INSERT INTO node ( |
||||
node_ip, node_mac, node_dns1, node_dns2, node_info, |
||||
subnet_id, asset_id |
||||
) |
||||
VALUE (?, ?, ?, ?, ?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$ip, $mac, $dns1, $dns2, $node_info, $subnet_id, $asset_id]); |
||||
|
||||
header_location("nodeview.php?node_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("subnet") : |
||||
$subnet_address= sanitize($_POST['subnet_address']); |
||||
$subnet_mask = sanitize($_POST['subnet_mask']); |
||||
$subnet_info = sanitize($_POST['subnet_info']); |
||||
|
||||
$sql = "INSERT INTO subnet (subnet_address, subnet_mask, subnet_info) |
||||
VALUE (?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_address, $subnet_mask, $subnet_info]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("subnetlocation") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sql = "INSERT INTO subnetlocation (location_id, subnet_id) |
||||
VALUE (?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_id, $subnet_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("subnetvlan") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sql = "INSERT INTO subnetvlan (subnet_id, vlan_id) |
||||
VALUE (?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id, $vlan_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("user") : |
||||
$user_name = strtolower(sanitize($_POST['user_name'])); |
||||
$user_displayname = sanitize($_POST['user_displayname']); |
||||
$user_password = md5(sanitize($_POST['user_password'])); |
||||
|
||||
// check if username exists |
||||
$sth = $dbh->prepare("SELECT COUNT(*) FROM user WHERE user_name=?"); |
||||
$sth->execute([$user_name]); |
||||
|
||||
if ($sth->fetchColumn() == 0) { |
||||
$sql = "INSERT INTO user (user_name, user_displayname, user_pass) |
||||
VALUE (?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$user_name, $user_displayname, $user_password]); |
||||
|
||||
header_location("userview.php?user_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
} |
||||
|
||||
$comments = "usernameinuse"; |
||||
break; |
||||
|
||||
case ("vlan") : |
||||
$vlan_name = sanitize($_POST['vlan_name']); |
||||
$vlan_number = sanitize($_POST['vlan_number']); |
||||
$vlan_info = sanitize($_POST['vlan_info']); |
||||
$vlan_color = sanitize($_POST['vlan_color']); |
||||
|
||||
$sql = "INSERT INTO vlan (vlan_name, vlan_number, vlan_color, vlan_info) |
||||
VALUE (?, ?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$vlan_name, $vlan_number, $vlan_color, $vlan_info]); |
||||
|
||||
header_location("vlanview.php?vlan_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
|
||||
case ("vlansubnet") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sql = "INSERT INTO subnetvlan (subnet_id, vlan_id) |
||||
VALUE (?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id, $vlan_id]); |
||||
|
||||
header_location("vlanview.php?vlan_id=" . $vlan_id); |
||||
break; |
||||
|
||||
case ("zone") : |
||||
$zone_origin = sanitize($_POST['zone_origin']); |
||||
$zone_ttl_default = sanitize($_POST['zone_ttl_default']); |
||||
$zone_soa = sanitize($_POST['zone_soa']); |
||||
$zone_hostmaster = sanitize($_POST['zone_hostmaster']); |
||||
$zone_refresh = sanitize($_POST['zone_refresh']); |
||||
$zone_retry = sanitize($_POST['zone_retry']); |
||||
$zone_expire = sanitize($_POST['zone_expire']); |
||||
$zone_ttl = sanitize($_POST['zone_ttl']); |
||||
$zone_serial = sanitize($_POST['zone_serial']); |
||||
$zone_ns1 = sanitize($_POST['zone_ns1']); |
||||
$zone_ns2 = sanitize($_POST['zone_ns2']); |
||||
$zone_ns3 = sanitize($_POST['zone_ns3']); |
||||
$zone_mx1 = sanitize($_POST['zone_mx1']); |
||||
$zone_mx2 = sanitize($_POST['zone_mx2']); |
||||
$zone_info = sanitize($_POST['zone_info']); |
||||
|
||||
$sql = "INSERT INTO zone ( |
||||
zone_origin, zone_ttl_default, zone_soa, zone_hostmaster, |
||||
zone_refresh, zone_retry, zone_expire, zone_ttl, zone_serial, |
||||
zone_ns1, zone_ns2, zone_ns3, zone_mx1, zone_mx2, zone_info) |
||||
VALUE (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$zone_origin, $zone_ttl_default, $zone_soa, $zone_hostmaster, |
||||
$zone_refresh, $zone_retry, $zone_expire, $zone_ttl, $zone_serial, |
||||
$zone_ns1, $zone_ns2, $zone_ns3, $zone_mx1, $zone_mx2, $zone_info]); |
||||
|
||||
header_location("zoneview.php?zone_id=" . $dbh->lastInsertId()); |
||||
break; |
||||
} |
||||
} |
||||
|
||||
if (isset($_POST['del'])) { |
||||
switch ($_POST['del']) { |
||||
|
||||
case ("asset") : |
||||
$asset_id = sanitize($_POST['asset_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM asset WHERE asset_id=?"); |
||||
$sth->execute([$asset_id]); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM node WHERE asset_id=?"); |
||||
$sth->execute([$asset_id]); |
||||
|
||||
header_location("asset.php"); |
||||
break; |
||||
|
||||
case ("assetclass") : |
||||
$assetclass_id = sanitize($_POST['assetclass_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM assetclass WHERE assetclass_id=?"); |
||||
$sth->execute([$assetclass_id]); |
||||
|
||||
header_location("assetclass.php"); |
||||
break; |
||||
|
||||
case ("assetclassgroup") : |
||||
$assetclassgroup_id = sanitize($_POST['assetclassgroup_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM assetclassgroup WHERE assetclassgroup_id=?"); |
||||
$sth->execute([$assetclassgroup_id]); |
||||
|
||||
header_location("assetclassgroup.php"); |
||||
break; |
||||
|
||||
case ("location") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM location WHERE location_id=?"); |
||||
$sth->execute([$location_id]); |
||||
|
||||
header_location("location.php"); |
||||
break; |
||||
|
||||
case ("locationsubnet") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM subnetlocation WHERE location_id=? AND subnet_id=?"); |
||||
$sth->execute([$location_id, $subnet_id]); |
||||
|
||||
header_location("locationview.php?location_id=" . $location_id); |
||||
break; |
||||
|
||||
case ("nat") : |
||||
$nat_id = sanitize($_POST['nat_id']); |
||||
$node_id_ext = sanitize($_POST['node_id_ext']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM nat WHERE nat_id=?"); |
||||
$sth->execute([$nat_id]); |
||||
|
||||
header_location("nodeview.php?node_id=" . $node_id_ext); |
||||
break; |
||||
|
||||
case ("node") : |
||||
$node_id = sanitize($_POST['node_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM node WHERE node_id=?"); |
||||
$sth->execute([$node_id]); |
||||
|
||||
header_location("assetview.php?asset_id=" . $asset_id); |
||||
break; |
||||
|
||||
case ("subnet") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM subnet WHERE subnet_id=?"); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM node WHERE subnet_id=?"); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
header_location("subnet.php"); |
||||
break; |
||||
|
||||
case ("subnetlocation") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM subnetlocation WHERE location_id=? AND subnet_id=?"); |
||||
$sth->execute([$location_id, $subnet_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("subnetvlan") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM subnetvlan WHERE subnet_id=? AND vlan_id=?"); |
||||
$sth->execute([$subnet_id, $vlan_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("user") : |
||||
$user_id = sanitize($_POST['user_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM user WHERE user_id=?"); |
||||
$sth->execute([$user_id]); |
||||
|
||||
header_location("user.php"); |
||||
break; |
||||
|
||||
case ("vlan") : |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM vlan WHERE vlan_id=?"); |
||||
$sth->execute([$vlan_id]); |
||||
|
||||
header_location("vlan.php"); |
||||
break; |
||||
|
||||
case ("vlansubnet") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM subnetvlan WHERE subnet_id=? AND vlan_id=?"); |
||||
$sth->execute([$subnet_id, $vlan_id]); |
||||
|
||||
header_location("vlanview.php?vlan_id=" . $vlan_id); |
||||
break; |
||||
|
||||
case ("zone") : |
||||
$zone_id = sanitize($_POST['zone_id']); |
||||
|
||||
$sth = $dbh->prepare("DELETE FROM zone WHERE zone_id=?"); |
||||
$sth->execute([$zone_id]); |
||||
|
||||
header_location("zone.php"); |
||||
break; |
||||
} |
||||
} |
||||
|
||||
if (isset($_POST['edit'])) { |
||||
switch ($_POST['edit']) { |
||||
|
||||
case ("asset") : |
||||
$asset_id = sanitize($_POST['asset_id']); |
||||
$asset_name = sanitize($_POST['asset_name']); |
||||
$asset_info = sanitize($_POST['asset_info']); |
||||
$asset_intf = sanitize($_POST['asset_intf']); |
||||
$asset_hostname = sanitize($_POST['asset_hostname']); |
||||
$assetclass_id = sanitize($_POST['assetclass_id']); |
||||
$asset_type = sanitize($_POST['asset_type']); |
||||
|
||||
$sql = "UPDATE asset SET |
||||
asset_name=?, asset_info=?, asset_hostname=?, |
||||
assetclass_id=?, asset_intf=?, asset_type=? |
||||
WHERE asset_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_name, $asset_info, $asset_hostname, |
||||
$assetclass_id, $asset_intf, $asset_type, |
||||
$asset_id]); |
||||
|
||||
header_location("assetview.php?asset_id=" . $asset_id); |
||||
|
||||
case ("assetclass") : |
||||
$id = sanitize($_POST['assetclass_id']); |
||||
$name = sanitize($_POST['assetclass_name']); |
||||
$description = sanitize($_POST['assetclass_description']); |
||||
$group_id = sanitize($_POST['assetclassgroup_id']); |
||||
|
||||
$sql = "UPDATE assetclass SET |
||||
assetclass_name=?, assetclass_description=?, |
||||
assetclassgroup_id=? |
||||
WHERE assetclass_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$name, $description, $group_id, $id]); |
||||
|
||||
header_location("assetclassview.php?assetclass_id=" . $id); |
||||
break; |
||||
|
||||
case ("assetclassgroup") : |
||||
$acg_id = sanitize($_POST['acg_id']); |
||||
$acg_name = sanitize($_POST['acg_name']); |
||||
$acg_desc = sanitize($_POST['acg_description']); |
||||
$acg_color = preg_replace("|[^a-zA-Z0-9]|", "", strtoupper(sanitize($_POST['acg_color']))); |
||||
|
||||
$sql = "UPDATE assetclassgroup SET |
||||
assetclassgroup_name=?, assetclassgroup_color=?, assetclassgroup_description=? |
||||
WHERE assetclassgroup_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$acg_name, $acg_color, $acg_desc, $acg_id]); |
||||
|
||||
header_location("assetclassgroupview.php?assetclassgroup_id=" . $acg_id); |
||||
break; |
||||
|
||||
case ("location") : |
||||
$location_id = sanitize($_POST['location_id']); |
||||
$location_name = sanitize($_POST['location_name']); |
||||
$location_info = sanitize($_POST['location_info']); |
||||
$parentlocation_id = sanitize($_POST['parentlocation_id']); |
||||
|
||||
$sql = "UPDATE location SET |
||||
location_name=?, location_parent=?, location_info=? |
||||
WHERE location_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$location_name, $parentlocation_id, $location_info, $location_id]); |
||||
|
||||
header_location("locationview.php?location_id=" . $location_id); |
||||
break; |
||||
|
||||
case ("node") : |
||||
$node_id = sanitize($_POST['node_id']); |
||||
$asset_id = sanitize($_POST['asset_id']); |
||||
$node_ip = sanitize($_POST['node_ip']); |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$node_mac = strip_mac(sanitize($_POST['node_mac'])); |
||||
$node_dns1 = sanitize($_POST['node_dns1']); |
||||
$node_dns2 = sanitize($_POST['node_dns2']); |
||||
$node_info = sanitize($_POST['node_info']); |
||||
$zone_id = sanitize($_POST['zone_id']); |
||||
|
||||
$sql = "UPDATE node SET |
||||
asset_id=?, node_ip=?, subnet_id=?, node_mac=?, |
||||
node_dns1=?, node_dns2=?, node_info=?, zone_id=? |
||||
WHERE node_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$asset_id, $node_ip, $subnet_id, $node_mac, |
||||
$node_dns1, $node_dns2, $node_info, $zone_id, |
||||
$node_id]); |
||||
|
||||
header_location("nodeview.php?node_id=" . $node_id); |
||||
break; |
||||
|
||||
case ("optionsdisplay") : |
||||
$id = $_SESSION['suser_id']; |
||||
$language = $_POST['user_language']; |
||||
$imagesize = sanitize($_POST['user_imagesize']); |
||||
$imagecount = sanitize($_POST['user_imagecount']); |
||||
$mac = sanitize($_POST['user_mac']); |
||||
$dateformat = sanitize($_POST['user_dateformat']); |
||||
$dns1suffix = sanitize($_POST['user_dns1suffix']); |
||||
$dns2suffix = sanitize($_POST['user_dns2suffix']); |
||||
$tooltips = sanitize($_POST['user_tooltips']); |
||||
|
||||
$menu_assets = sanitize($_POST['user_menu_assets']); |
||||
$menu_assetclasses = sanitize($_POST['user_menu_assetclasses']); |
||||
$menu_assetclassgroups = sanitize($_POST['user_menu_assetclassgroups']); |
||||
$menu_cables = sanitize($_POST['user_menu_cables']); |
||||
$menu_locations = sanitize($_POST['user_menu_locations']); |
||||
$menu_nodes = sanitize($_POST['user_menu_nodes']); |
||||
$menu_subnets = sanitize($_POST['user_menu_subnets']); |
||||
$menu_vlans = sanitize($_POST['user_menu_vlans']); |
||||
$menu_zones = sanitize($_POST['user_menu_zones']); |
||||
|
||||
// construct menu set |
||||
$menu = array(); |
||||
if ($menu_assets) $menu[] = 'asset'; |
||||
if ($menu_assetclasses) $menu[] = 'class'; |
||||
if ($menu_assetclassgroups) $menu[] = 'group'; |
||||
if ($menu_cables) $menu[] = 'cable'; |
||||
if ($menu_locations) $menu[] = 'location'; |
||||
if ($menu_nodes) $menu[] = 'node'; |
||||
if ($menu_subnets) $menu[] = 'subnet'; |
||||
if ($menu_vlans) $menu[] = 'vlan'; |
||||
if ($menu_zones) $menu[] = 'zone'; |
||||
|
||||
$sql = "UPDATE user SET |
||||
user_language=?, user_imagesize=?, user_imagecount=?, |
||||
user_mac=?, user_dateformat=?, user_dns1suffix=?, |
||||
user_dns2suffix=?, user_tooltips=?, user_menu=? |
||||
WHERE |
||||
user_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$language, $imagesize, $imagecount, |
||||
$mac, $dateformat, $dns1suffix, |
||||
$dns2suffix, $tooltips, implode(',', $menu), |
||||
$id]); |
||||
|
||||
$_SESSION['suser_language'] = $language; |
||||
$_SESSION['suser_imagesize'] = $imagesize; |
||||
$_SESSION['suser_imagecount'] = $imagecount; |
||||
$_SESSION['suser_mac'] = $mac; |
||||
$_SESSION['suser_dateformat'] = $dateformat; |
||||
$_SESSION['suser_dns1suffix'] = $dns1suffix; |
||||
$_SESSION['suser_dns2suffix'] = $dns2suffix; |
||||
$_SESSION['suser_menu_assets'] = $menu_assets; |
||||
$_SESSION['suser_menu_assetclasses'] = $menu_assetclasses; |
||||
$_SESSION['suser_menu_assetclassgroups'] = $menu_assetclassgroups; |
||||
$_SESSION['suser_menu_cables'] = $menu_cables; |
||||
$_SESSION['suser_menu_locations'] = $menu_locations; |
||||
$_SESSION['suser_menu_nodes'] = $menu_nodes; |
||||
$_SESSION['suser_menu_subnets'] = $menu_subnets; |
||||
$_SESSION['suser_menu_vlans'] = $menu_vlans; |
||||
$_SESSION['suser_menu_zones'] = $menu_zones; |
||||
$_SESSION['suser_tooltips'] = $tooltips; |
||||
|
||||
header_location("options.php"); |
||||
break; |
||||
|
||||
case ("optionspassword") : |
||||
$user_id = $_SESSION['suser_id']; |
||||
$currentpass = sanitize($_POST['user_currentpass']); |
||||
$newpass1 = sanitize($_POST['user_newpass1']); |
||||
$newpass2 = sanitize($_POST['user_newpass2']); |
||||
|
||||
$sth = $dbh->prepare("SELECT user_pass FROM user WHERE user_id=?"); |
||||
$sth->execute([$user_id]); |
||||
|
||||
$userpass = $sth->fetchColumn();; |
||||
|
||||
if (password_verify($currentpass, $userpass)) { |
||||
if (!strcmp($newpass1, $newpass2)) { |
||||
$sth = $dbh->prepare("UPDATE user SET user_pass=? WHERE user_id=?"); |
||||
$newhash = password_hash($newpass1, PASSWORD_BCRYPT); |
||||
$sth->execute([$newhash, $user_id]); |
||||
header_location("options.php"); |
||||
} |
||||
} |
||||
// TODO generate errormessages here |
||||
break; |
||||
|
||||
case ("subnet") : |
||||
$subnet_id = sanitize($_POST['subnet_id']); |
||||
$subnet_address= sanitize($_POST['subnet_address']); |
||||
$subnet_proto_vers = sanitize($_POST['subnet_proto_vers']); |
||||
$subnet_mask = sanitize($_POST['subnet_mask']); |
||||
$subnet_dhcpstart = sanitize($_POST['subnet_dhcpstart']); |
||||
$subnet_dhcpend = sanitize($_POST['subnet_dhcpend']); |
||||
$subnet_ntp_server = sanitize($_POST['subnet_ntp_server']); |
||||
$subnet_info = sanitize($_POST['subnet_info']); |
||||
|
||||
$sql = "UPDATE subnet SET |
||||
subnet_address=?, subnet_mask=?, subnet_dhcp_start=?, |
||||
subnet_dhcp_end=?, subnet_info=?, protocol_version=?, |
||||
ntp_server=? |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_address, $subnet_mask, $subnet_dhcpstart, |
||||
$subnet_dhcpend, $subnet_info, $subnet_proto_vers, |
||||
$subnet_ntp_server, $subnet_id]); |
||||
|
||||
header_location("subnetview.php?subnet_id=" . $subnet_id); |
||||
break; |
||||
|
||||
case ("user") : |
||||
$user_id = sanitize($_POST['user_id']); |
||||
$user_name = sanitize($_POST['user_name']); |
||||
$user_displayname = sanitize($_POST['user_displayname']); |
||||
$user_realm = sanitize($_POST['user_realm']); |
||||
// roles |
||||
$role_add = sanitize($_POST['role_add']); |
||||
$role_edit = sanitize($_POST['role_edit']); |
||||
$role_delete = sanitize($_POST['role_delete']); |
||||
$role_manage = sanitize($_POST['role_manage']); |
||||
$role_admin = sanitize($_POST['role_admin']); |
||||
|
||||
// construct menu set |
||||
$role = array(); |
||||
if ($role_add) $role[] = 'add'; |
||||
if ($role_edit) $role[] = 'edit'; |
||||
if ($role_delete) $role[] = 'delete'; |
||||
if ($role_manage) $role[] = 'manage'; |
||||
if ($role_admin) $role[] = 'admin'; |
||||
|
||||
|
||||
$sql = "UPDATE user SET |
||||
user_name=?, user_displayname=?, user_realm=?, |
||||
user_role=? |
||||
WHERE user_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$user_name ,$user_displayname, $user_realm, |
||||
implode(',', $role), $user_id]); |
||||
|
||||
header_location("userview.php?user_id=" . $user_id); |
||||
break; |
||||
|
||||
case ("vlan") : |
||||
$vlan_id = sanitize($_POST['vlan_id']); |
||||
$vlan_name = sanitize($_POST['vlan_name']); |
||||
$vlan_number = sanitize($_POST['vlan_number']); |
||||
$vlan_info = sanitize($_POST['vlan_info']); |
||||
$vlan_color = sanitize($_POST['vlan_color']); |
||||
|
||||
$sql = "UPDATE vlan SET vlan_name=?, vlan_number=?, vlan_color=?, vlan_info=? WHERE vlan_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$vlan_name, $vlan_number, $vlan_color, $vlan_info, $vlan_id]); |
||||
|
||||
header_location("vlanview.php?vlan_id=" . $vlan_id); |
||||
break; |
||||
|
||||
case ("zone") : |
||||
$id = sanitize($_POST['zone_id']); |
||||
$origin = sanitize($_POST['zone_origin']); |
||||
$ttl_default = sanitize($_POST['zone_ttl_default']); |
||||
$soa = sanitize($_POST['zone_soa']); |
||||
$hostmaster = sanitize($_POST['zone_hostmaster']); |
||||
$refresh = sanitize($_POST['zone_refresh']); |
||||
$retry = sanitize($_POST['zone_retry']); |
||||
$expire = sanitize($_POST['zone_expire']); |
||||
$ttl = sanitize($_POST['zone_ttl']); |
||||
$serial = sanitize($_POST['zone_serial']); |
||||
$ns1 = sanitize($_POST['zone_ns1']); |
||||
$ns2 = sanitize($_POST['zone_ns2']); |
||||
$ns3 = sanitize($_POST['zone_ns3']); |
||||
$mx1 = sanitize($_POST['zone_mx1']); |
||||
$mx2 = sanitize($_POST['zone_mx2']); |
||||
$info = sanitize($_POST['zone_info']); |
||||
$sql = "UPDATE zone SET |
||||
zone_origin=?, zone_ttl_default=?, zone_soa=?, zone_hostmaster=?, |
||||
zone_refresh=?, zone_retry=?, zone_expire=?, zone_ttl=?, zone_serial=?, |
||||
zone_ns1=?, zone_ns2=?, zone_ns3=?, zone_mx1=?, zone_mx2=?, zone_info=? |
||||
WHERE zone_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$origin, $ttl_default, $soa, $hostmaster, $refresh, $retry, |
||||
$expire, $ttl, $serial, $ns1, $ns2, $ns3, $mx1, $mx2, $info, |
||||
$id]); |
||||
|
||||
header_location("zoneview.php?zone_id=" . $zone_id); |
||||
break; |
||||
} |
||||
} |
||||
|
||||
// still not redirected, check for error |
||||
if(empty($comments)) { |
||||
$comments = "error"; |
||||
} |
||||
header_location("comments.php?comments=" . $comments); |
||||
?> |
@ -1,21 +0,0 @@ |
||||
<?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"); |
||||
|
||||
if((isset($_GET['vlan_id'])) ? $vlan_id = sanitize($_GET['vlan_id']) : $vlan_id = ""); |
||||
|
||||
include("header.php"); |
||||
|
||||
$smarty->assign("vlan_options", db_get_options_vlan($lang['lang_option_none'])); |
||||
|
||||
$smarty->display("subnetadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,36 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// subnet |
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// node |
||||
$sql = "SELECT node_id AS id, node_ip AS ip |
||||
FROM node |
||||
WHERE subnet_id=? |
||||
ORDER BY INET_ATON(node_ip)"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("nodes", $sth->fetchAll()); |
||||
|
||||
$smarty->display("subnetdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,29 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask, |
||||
protocol_version AS proto_vers, subnet_dhcp_start AS dhcp_start, |
||||
subnet_dhcp_end AS dhcp_end, ntp_server, subnet_info AS info |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("subnetedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,28 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->assign("location_options", db_get_options_location()); |
||||
|
||||
$smarty->display("subnetlocationadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,42 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// subnet |
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// locations for subnet |
||||
$sql = "SELECT l.location_id, l.location_name |
||||
FROM subnetlocation AS s LEFT JOIN location USING (location_id) |
||||
WHERE s.subnet_id=? |
||||
ORDER BY l.location_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id] |
||||
$records = $sth->fetchAll(); |
||||
|
||||
$locations = array(); |
||||
foreach ($records as $rec) { |
||||
$locations[$rec['location_id']] = $rec['location_name']; |
||||
} |
||||
$smarty->assign("location_options", $locations); |
||||
|
||||
$smarty->display("subnetlocationdel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,27 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("subnetlocationedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,364 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
if(isset($_GET['page'])) { |
||||
$page = sanitize($_GET['page']); |
||||
} |
||||
|
||||
$smarty->assign("scripts",'changetext.js'); |
||||
include("header.php"); |
||||
|
||||
// subnet |
||||
$sql = "SELECT |
||||
s.subnet_id AS id, |
||||
s.subnet_address AS address, |
||||
s.subnet_mask AS mask, |
||||
s.subnet_dhcp_start AS dhcp_start, |
||||
s.subnet_dhcp_end AS dhcp_end, |
||||
s.subnet_info AS info, |
||||
s.protocol_version AS proto_vers, |
||||
s.ntp_server, |
||||
COUNT(node.subnet_id) AS node_counter |
||||
FROM |
||||
subnet AS s LEFT JOIN node USING (subnet_id) |
||||
WHERE |
||||
s.subnet_id=? |
||||
GROUP BY |
||||
s.subnet_id"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$subnet = $sth->fetch(PDO::FETCH_OBJ); |
||||
|
||||
$smarty->assign("subnet", $subnet); |
||||
|
||||
// set counters |
||||
$host_counter = pow(2, (32-$subnet->mask)); |
||||
$node_counter = $subnet->node_counter; |
||||
$subnet_usedpercentage = round((($node_counter/($host_counter-2))*100), 1); |
||||
|
||||
$smarty->assign("node_counter", $node_counter); |
||||
$smarty->assign("subnet_usedpercentage", $subnet_usedpercentage); |
||||
$smarty->assign("config_color_unused", $config_color_unused); |
||||
$smarty->assign("host_counter", $host_counter-2); |
||||
$smarty->assign("free_counter", (($host_counter-2)-$node_counter)); |
||||
|
||||
// subnet |
||||
|
||||
// split up the range |
||||
$iprange = explode('.', $subnet->address); |
||||
$iprange1 = $iprange[0]; |
||||
$iprange2 = $iprange[1]; |
||||
$iprange3 = $iprange[2]; |
||||
$iprange4 = $iprange[3]; |
||||
|
||||
// create empty subnet-array |
||||
$subnetdata = array(); |
||||
|
||||
// determine range (Class A/B/C) |
||||
if ($subnet->mask >= 24) { |
||||
// Class C |
||||
// fill subnet-array with addresses we want to see |
||||
for($i=0; $i<$host_counter; $i++) { |
||||
// build ip |
||||
$ip = $iprange1 . '.' . $iprange2 . '.' . $iprange3 . '.' . ($iprange4+$i); |
||||
|
||||
// fill subnet-array |
||||
$subnetdata[$ip] = array(); |
||||
} |
||||
|
||||
// calculate broadcast address |
||||
$broadcast_address = $iprange1 . '.' . $iprange2 . '.' . $iprange3 . '.' . ($iprange4+$i-1); |
||||
|
||||
// to tpl |
||||
$smarty->assign("iprange1", $iprange1); |
||||
$smarty->assign("iprange2", $iprange2); |
||||
$smarty->assign("iprange3", $iprange3); |
||||
$smarty->assign("iprange4", $iprange4); |
||||
$smarty->assign("subnetmask1", 255); |
||||
$smarty->assign("subnetmask2", 255); |
||||
$smarty->assign("subnetmask3", 255); |
||||
$smarty->assign("subnetmask4", 256-$host_counter); |
||||
|
||||
// no pagination needed |
||||
$smarty->assign("noselect", TRUE); |
||||
$smarty->assign("one_select", FALSE); |
||||
$smarty->assign("two_select", FALSE); |
||||
|
||||
// set displayed nodes |
||||
$nodes_displayed = $host_counter; |
||||
|
||||
} else if ($subnet->mask >= 16) { |
||||
// Class B |
||||
// which part do we want to see? |
||||
if ((empty($page)) ? $page = $subnet->address : $page = $page); |
||||
$page = explode('.', $page); |
||||
$page2 = $page[2]; |
||||
|
||||
// fill subnet-array with addresses we want to see |
||||
for($i=0; $i<256; $i++) { |
||||
// build ip |
||||
$ip = $iprange1 . '.' . $iprange2 . '.' . $page2 . '.' . $i; |
||||
|
||||
// fill subnet-array |
||||
$subnetdata[$ip] = array(); |
||||
} |
||||
|
||||
// calculate broadcast address |
||||
$broadcast_address = $iprange1 . '.' . $iprange2 . '.' . ($iprange3+$i-1) . '.255'; |
||||
|
||||
// to tpl |
||||
$smarty->assign("iprange1", $iprange1); |
||||
$smarty->assign("iprange2", $iprange2); |
||||
|
||||
// loop addresses in range3 |
||||
for ($i=$iprange3; $i<(pow(2,(32-$subnet->mask))/256); $i++) { |
||||
// send to tpl |
||||
$smarty->assign("iprange3", $i); |
||||
$smarty->assign("iprange4", 0); |
||||
|
||||
// set select box |
||||
if ($i == $page2) { |
||||
$smarty->assign("row_selected", "selected"); |
||||
|
||||
} else { |
||||
$smarty->assign("row_selected", ""); |
||||
} |
||||
|
||||
} |
||||
|
||||
$smarty->assign("subnetmask1", 255); |
||||
$smarty->assign("subnetmask2", 255); |
||||
$smarty->assign("subnetmask3", 256-($host_counter/256)); |
||||
$smarty->assign("subnetmask4", 0); |
||||
|
||||
// one select box |
||||
$smarty->assign("noselect", FALSE); |
||||
$smarty->assign("one_select", TRUE); |
||||
$smarty->assign("two_select", FALSE); |
||||
|
||||
// set displayed nodes |
||||
$nodes_displayed = 256; |
||||
} else { |
||||
// Class A |
||||
// which part do we want to see? |
||||
if ((empty($page)) ? $page = $subnet->address : $page = $page); |
||||
$page = explode('.', $page); |
||||
$page2 = $page[1]; |
||||
$page3 = $page[2]; |
||||
|
||||
// fill subnet-array with addresses we want to see |
||||
for($i=0; $i<256; $i++) { |
||||
// build ip |
||||
$ip = $iprange1 . '.' . $page2 . '.' . $page3 . '.' . $i; |
||||
|
||||
// fill subnet-array |
||||
$subnetdata[$ip] = array(); |
||||
} |
||||
|
||||
// calculate broadcast address |
||||
$broadcast_address = $iprange1 . '.' . ($iprange2+$i-1) . '.255.255'; |
||||
|
||||
// to tpl |
||||
$smarty->assign("iprange1", $iprange1); |
||||
$smarty->assign("iprange2", $iprange2); |
||||
|
||||
// loop addresses in range 2 |
||||
for ($i=$iprange2; $i<(pow(2,(24-$subnet->mask))/256); $i++) { |
||||
// send to tpl |
||||
$smarty->assign("iprange1", $iprange1); |
||||
$smarty->assign("iprange2", $i); |
||||
$smarty->assign("iprange3", $page3); |
||||
$smarty->assign("iprange4", $iprange4); |
||||
|
||||
// set select box |
||||
if($i == $page2) { |
||||
$smarty->assign("row1_selected", "selected"); |
||||
|
||||
} else { |
||||
$smarty->assign("row1_selected", ""); |
||||
} |
||||
|
||||
} |
||||
|
||||
// loop addresses in range 3 |
||||
for ($i=0; $i<256; $i++) { |
||||
// send to tpl |
||||
$smarty->assign("iprange1", $iprange1); |
||||
$smarty->assign("iprange2", $page2); |
||||
$smarty->assign("iprange3", $i); |
||||
$smarty->assign("iprange4", $iprange4); |
||||
|
||||
// set select box |
||||
if($i==$page3) { |
||||
$smarty->assign("row2_selected", "selected"); |
||||
|
||||
} else { |
||||
$smarty->assign("row2_selected", ""); |
||||
} |
||||
|
||||
} |
||||
|
||||
$smarty->assign("subnetmask1", 255); |
||||
$smarty->assign("subnetmask2", 256-($host_counter/65536)); |
||||
$smarty->assign("subnetmask3", 0); |
||||
$smarty->assign("subnetmask4", 0); |
||||
|
||||
// one select box |
||||
$smarty->assign("noselect", FALSE); |
||||
$smarty->assign("one_select", FALSE); |
||||
$smarty->assign("two_select", TRUE); |
||||
|
||||
// set displayed nodes |
||||
$nodes_displayed = 256; |
||||
} |
||||
|
||||
// get nodes for this subnetview and implement the values into the array |
||||
$sql = "SELECT a.asset_name, g.assetclassgroup_color, n.node_id, n.node_ip |
||||
FROM |
||||
asset AS a, |
||||
assetclass AS c, |
||||
assetclassgroup AS g, |
||||
node AS n |
||||
WHERE |
||||
n.node_ip IN ('".implode("','",array_keys($subnetdata))."') |
||||
AND n.subnet_id=? |
||||
AND a.asset_id=n.asset_id |
||||
AND c.assetclass_id=a.assetclass_id |
||||
AND g.assetclassgroup_id=c.assetclassgroup_id"; |
||||
|
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$nodes = $sth->fetchAll(); |
||||
$smarty->assign("nodes", $nodes); |
||||
|
||||
if (count($nodes) > 0) { |
||||
foreach ($nodes AS $node) { |
||||
$subnetdata[$node['node_ip']] = $node; |
||||
} |
||||
} |
||||
|
||||
// replace ip's in subnet-array (if necessary) |
||||
// check for subnet address |
||||
if (array_key_exists($subnet->address, $subnet)) { |
||||
// replace |
||||
$subnetdata[$subnet->address] = array("subnet_address"); |
||||
} |
||||
|
||||
// check for broadcast address |
||||
if (array_key_exists($broadcast_address, $subnet)) { |
||||
// replace |
||||
$subnetdata[$broadcast_address] = array("broadcast_address"); |
||||
} |
||||
|
||||
$dhcpstart = 0; |
||||
if ($subnet->dhcp_start && $subnet->dhcp_end) { |
||||
$dhcpstart = ip2long($subnet->dhcp_start); |
||||
$dhcpend = ip2long($subnet->dhcp_end); |
||||
} |
||||
|
||||
// loop subnet-array and send to template |
||||
// start counter |
||||
// $i=1; |
||||
// loop subnet-array |
||||
foreach ($subnetdata AS $node_ip => $node) { |
||||
|
||||
// make new line? |
||||
// if(($i%$_SESSION['suser_imagecount']==0 && $i!=$nodes_displayed) ? $tr="</tr><tr>" : $tr=""); |
||||
|
||||
// check if node-ip in DHCP-area |
||||
$subnetdata[$node_ip]["dynamic"] = false; |
||||
if ($dhcpstart > 0) { |
||||
$ipval = ip2long($node_ip); |
||||
if (($ipval >= $dhcpstart) and ($ipval <= $dhcpend)) { |
||||
$subnetdata[$node_ip]["dynamic"] = true; |
||||
} |
||||
} |
||||
|
||||
// check node |
||||
if (empty($node)) { |
||||
// empty node to tpl |
||||
$subnetdata[$node_ip]["url"] = 'assigniptonode.php?subnet_id=' . $subnet_id . '&node_ip='. $node_ip; |
||||
$subnetdata[$node_ip]["remotetext"] = $node_ip; |
||||
if ($subnetdata[$node_ip]["dynamic"]) { |
||||
$subnetdata[$node_ip]["assetclassgroup_color"] = $config_color_dynamic; |
||||
} else { |
||||
$subnetdata[$node_ip]["assetclassgroup_color"] = $config_color_unused; |
||||
} |
||||
} else if (array_key_exists(0, $node) && $node[0]=="subnet_address") { |
||||
// subnet address to tpl |
||||
$subnetdata[$node_ip]["url"] = ""; |
||||
$subnetdata[$node_ip]["remotetext"] = $node_ip . ' ' . $lang['lang_subnet_subnetaddress']; |
||||
$subnetdata[$node_ip]["assetclassgroup_color"] = $config_color_blocked; |
||||
} else if (array_key_exists(0, $node) && $node[0]=="broadcast_address") { |
||||
// broadcast address to tpl |
||||
$subnetdata[$node_ip]["url"] = ""; |
||||
$subnetdata[$node_ip]["remotetext"] = $node_ip . ' ' . $lang['lang_subnet_broadcastaddress']; |
||||
$subnetdata[$node_ip]["assetclassgroup_color"] = $config_color_blocked; |
||||
} else { |
||||
// node to tpl |
||||
$subnetdata[$node_ip]["url"] = 'nodeview.php?node_id=' . $node['node_id']; |
||||
$subnetdata[$node_ip]["remotetext"] = $node_ip . ' ' . $node['asset_name']; |
||||
$subnetdata[$node_ip]["assetclassgroup_color"] = $node['assetclassgroup_color']; |
||||
} |
||||
|
||||
// update counter |
||||
// $i++; |
||||
|
||||
} // foreach |
||||
|
||||
$smarty->assign("subnetdata", $subnetdata); |
||||
$smarty->assign("imagewrap", $_SESSION['suser_imagecount']); |
||||
|
||||
// vlans |
||||
$sql = "SELECT v.vlan_id AS id, v.vlan_name AS name, |
||||
v.vlan_number AS number |
||||
FROM subnetvlan AS s JOIN vlan AS v USING (vlan_id) |
||||
WHERE s.subnet_id=? |
||||
ORDER BY v.vlan_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("vlans", $sth->fetchAll()); |
||||
|
||||
// locations |
||||
$sql = "SELECT l.location_id, l.location_name |
||||
FROM location AS l LEFT JOIN subnetlocation AS s USING (location_id) |
||||
WHERE s.subnet_id=? |
||||
ORDER BY l.location_name"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("locations", $sth->fetchAll()); |
||||
|
||||
// assetclassgroups |
||||
$sql = "SELECT |
||||
assetclassgroup_id AS id, |
||||
assetclassgroup_name AS name, |
||||
assetclassgroup_color AS color, |
||||
COUNT(assetclass_id) AS counter |
||||
FROM subnet |
||||
LEFT JOIN node USING (subnet_id) |
||||
LEFT JOIN asset USING (asset_id) |
||||
LEFT JOIN assetclass USING (assetclass_id) |
||||
LEFT JOIN assetclassgroup USING (assetclassgroup_id) |
||||
WHERE subnet_id=? |
||||
GROUP BY assetclass_id |
||||
ORDER BY counter DESC"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("assetclassgroups", $sth->fetchAll()); |
||||
|
||||
$smarty->display("subnetview.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,43 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// vlan |
||||
$sql = "SELECT vlan_id, vlan_number, vlan_name |
||||
FROM vlan |
||||
WHERE vlan_id NOT IN ( |
||||
SELECT vlan_id FROM subnetvlan WHERE subnet_id=? |
||||
) |
||||
ORDER BY vlan_number"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
|
||||
$vlans = $sth->fetchAll(); |
||||
foreach ($vlans as $vlan) { |
||||
$vlan_options[$vlan['vlan_id']] = $vlan['vlan_name'] . ' (' . $vlan['vlan_number']. ')'; |
||||
} |
||||
$smarty->assign("vlan_options", $vlan_options); |
||||
|
||||
$smarty->display("subnetvlanadd.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,36 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
// subnet |
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
// vlan |
||||
$sql = "SELECT v.vlan_id, v.vlan_number, v.vlan_name |
||||
FROM subnetvlan AS s LEFT JOIN vlan AS v USING (vlan_id) |
||||
WHERE s.subnet_id=? |
||||
ORDER BY v.vlan_number"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("vlans", $sth->fetchAll()); |
||||
|
||||
$smarty->display("subnetvlandel.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,26 +0,0 @@ |
||||
<?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"); |
||||
|
||||
$subnet_id = sanitize($_GET['subnet_id']); |
||||
|
||||
include("header.php"); |
||||
|
||||
$sql = "SELECT subnet_id AS id, subnet_address AS address, subnet_mask AS mask |
||||
FROM subnet |
||||
WHERE subnet_id=?"; |
||||
$sth = $dbh->prepare($sql); |
||||
$sth->execute([$subnet_id]); |
||||
$smarty->assign("subnet", $sth->fetch(PDO::FETCH_OBJ)); |
||||
|
||||
$smarty->display("subnetvlanedit.tpl"); |
||||
|
||||
include("footer.php"); |
||||
?> |
@ -1,23 +0,0 @@ |
||||
<table class="title"> |
||||
<tr> |
||||
<td class="header"> |
||||
{$lang_comments} |
||||
</td> |
||||
<td align="right"> |
||||
<a href="#" onClick="history.go(-1)"><img src="image.php?icon=back" alt="{$lang_cancel}"></a> |
||||
</td> |
||||
</tr> |
||||
</table> |
||||
|
||||
<table class="info"> |
||||
<tr> |
||||
<td class="header"> |
||||
{$lang_comments} |
||||
</td> |
||||
</tr> |
||||
<tr> |
||||
<td class="value"> |
||||
{$comments} |
||||
</td> |
||||
</tr> |
||||
</table> |
Some files were not shown because too many files have changed in this diff Show More
Reference in new issue