librenms/html/ajax_listports.php
KITAHARA SETSUNA 2e2d1bb7d1
Sort port by interface name while list ports. (#15093)
* Sort port by interface name while list ports.

* Remove sql sort

* use ksort instead of sort manually

* Update ajax_listports.php

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-06-24 18:17:37 +02:00

35 lines
943 B
PHP

<?php
/**
* LibreNMS
*
* This file is part of LibreNMS.
*
* @copyright (C) 2006 - 2012 Adam Armstrong
*/
use LibreNMS\Util\Debug;
$init_modules = ['web', 'auth'];
require realpath(__DIR__ . '/..') . '/includes/init.php';
if (! Auth::check()) {
exit('Unauthorized');
}
Debug::set($_REQUEST['debug']);
if (is_numeric($_GET['device_id'])) {
// use php to sort since we need call cleanPort
$interface_map = [];
foreach (dbFetch('SELECT * FROM ports WHERE device_id = ?', [$_GET['device_id']]) as $interface) {
$interface = cleanPort($interface);
$interface_map[$interface['label']] = $interface;
}
ksort($interface_map);
foreach ($interface_map as $interface) {
$string = addslashes(html_entity_decode($interface['label'] . ' - ' . $interface['ifAlias']));
echo "obj.options[obj.options.length] = new Option('" . $string . "','" . $interface['port_id'] . "');\n";
}
}