Files
librenms-librenms/includes/caches/ports.inc.php

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

49 lines
2.9 KiB
PHP
Raw Normal View History

2015-04-12 11:22:43 +00:00
<?php
if (Auth::user()->hasGlobalRead()) {
2015-04-12 11:22:43 +00:00
$data['count'] = ['query' => "SELECT COUNT(*) FROM ports WHERE `deleted` = '0'"];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['up'] = ['query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE I.`deleted` = '0' AND D.`device_id` = I.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifOperStatus` = 'up'"];
2015-07-13 20:10:26 +02:00
$data['down'] = ['query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE I.`deleted` = '0' AND D.`device_id` = I.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifOperStatus` <> 'up' AND I.`ifAdminStatus` = 'up'"];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['shutdown'] = ['query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE I.`deleted` = '0' AND D.`device_id` = I.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifAdminStatus` = 'down'"];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['errored'] = ['query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE I.`deleted` = '0' AND D.`device_id` = I.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND (I.`ifInErrors_delta` > '0' OR I.`ifOutErrors_delta` > '0')"];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['ignored'] = ['query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE I.`deleted` = '0' AND D.`device_id` = I.`device_id` AND (I.`ignore` = '1' OR D.`ignore` = '1')"];
} else {
$device_ids = Permissions::portsForUser()->toArray() ?: [0];
$perms_sql = '`I`.`port_id` IN ' . dbGenPlaceholders(count($device_ids));
2015-04-12 11:22:43 +00:00
$data['count'] = [
'query' => "SELECT COUNT(*) FROM ports AS I WHERE $perms_sql AND I.`deleted` = '0'",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['up'] = [
'query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE $perms_sql AND I.`deleted` = '0' AND I.`device_id` = D.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifOperStatus` = 'up'",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['down'] = [
'query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE $perms_sql AND I.`deleted` = '0' AND I.`device_id` = D.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifOperStatus` <> 'up' AND I.`ifAdminStatus` = 'up'",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['shutdown'] = [
'query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE $perms_sql AND I.`deleted` = '0' AND I.`device_id` = D.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND I.`ifAdminStatus` = 'down'",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['errored'] = [
'query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE $perms_sql AND I.`deleted` = '0' AND I.`device_id` = D.`device_id` AND I.`ignore` = '0' AND D.`ignore` = '0' AND (I.`ifInErrors_delta` > '0' OR I.`ifOutErrors_delta` > '0')",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
2015-07-13 20:10:26 +02:00
2015-04-12 11:22:43 +00:00
$data['ignored'] = [
'query' => "SELECT COUNT(*) FROM ports AS I, devices AS D WHERE $perms_sql AND I.`deleted` = '0' AND I.`device_id` = D.`device_id` AND (I.`ignore` = '1' OR D.`ignore` = '1')",
'params' => $device_ids,
2015-04-12 11:22:43 +00:00
];
}//end if