You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
			
		
		
		
		
			
		
			
				
					
					
						
							42 lines
						
					
					
						
							1.2 KiB
						
					
					
				
			
		
		
	
	
							42 lines
						
					
					
						
							1.2 KiB
						
					
					
				<?php
 | 
						|
/*****************************************************************************
 | 
						|
IP Reg, a PHP/MySQL IPAM tool
 | 
						|
Copyright (C) 2007-2009 Wietse Warendorff (up to v0.5)
 | 
						|
Copyright (C) 2011-2023 Thomas Hooge
 | 
						|
 | 
						|
SPDX-License-Identifier: GPL-3.0-or-later
 | 
						|
*****************************************************************************/
 | 
						|
 | 
						|
include("includes.php");
 | 
						|
		
 | 
						|
include("header.php");
 | 
						|
		
 | 
						|
$sql = "SELECT location_id AS id, location_name AS value, location_parent AS parent_id
 | 
						|
        FROM location
 | 
						|
        ORDER BY location_parent, location_sort, location_name";
 | 
						|
$sth = $dbh->query($sql);
 | 
						|
$locations = $sth->fetchAll();
 | 
						|
 | 
						|
// function for recursion
 | 
						|
function build_tree($parent_id, $level) {
 | 
						|
    global $locations;
 | 
						|
    $children = array();
 | 
						|
    foreach ($locations as $key => $location) {
 | 
						|
        if ($location['parent_id'] == $parent_id) {
 | 
						|
            unset($location['parent_id']);
 | 
						|
            $location['children'] = build_tree($location['id'], $level+1);
 | 
						|
            $location['level'] = $level;
 | 
						|
            $location['href'] = 'locationview.php?location_id=' . $location['id'];
 | 
						|
            $children[] = $location;
 | 
						|
        }
 | 
						|
    }
 | 
						|
    return $children;
 | 
						|
}
 | 
						|
 | 
						|
$tree = build_tree(0, 0);
 | 
						|
$smarty->assign("locations", $tree);
 | 
						|
 | 
						|
$smarty->display("location.tpl");
 | 
						|
 | 
						|
include("footer.php");
 | 
						|
?>
 | 
						|
 |