mirror of
				https://github.com/librenms/librenms.git
				synced 2024-10-07 16:52:45 +00:00 
			
		
		
		
	Added ability to select down/up devices on worldmap
This commit is contained in:
		@@ -30,7 +30,7 @@ if ($config['map']['engine'] == 'leaflet') {
 | 
			
		||||
    <div class="col-sm-4">
 | 
			
		||||
      <label for="init_lat" class="control-label">Initial Latitude: </label>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="col-sm-6">
 | 
			
		||||
    <div class="col-sm-8">
 | 
			
		||||
      <input class="form-control" name="init_lat" id="input_lat_'.$unique_id.'" value="'.$widget_settings['init_lat'].'" placeholder="ie. 51.4800 for Greenwich">
 | 
			
		||||
    </div>
 | 
			
		||||
  </div>
 | 
			
		||||
@@ -46,7 +46,7 @@ if ($config['map']['engine'] == 'leaflet') {
 | 
			
		||||
    <div class="col-sm-4">
 | 
			
		||||
      <label for="init_zoom" class="control-label">Initial Zoom: </label>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="col-sm-6">
 | 
			
		||||
    <div class="col-sm-8">
 | 
			
		||||
      <select class="form-control" name="init_zoom" id="select_zoom'.$unique_id.'">
 | 
			
		||||
        ';
 | 
			
		||||
        for ($i=0; $i<19; $i++) {
 | 
			
		||||
@@ -65,10 +65,22 @@ if ($config['map']['engine'] == 'leaflet') {
 | 
			
		||||
    <div class="col-sm-4">
 | 
			
		||||
      <label for="group_radius" class="control-label">Grouping radius: </label>
 | 
			
		||||
    </div>
 | 
			
		||||
    <div class="col-sm-4">
 | 
			
		||||
    <div class="col-sm-8">
 | 
			
		||||
      <input class="form-control" name="group_radius" id="input_radius_'.$unique_id.'" value="'.$widget_settings['group_radius'].'" placeholder="default 80">
 | 
			
		||||
    </div>
 | 
			
		||||
  </div>
 | 
			
		||||
    <div class="form-group">
 | 
			
		||||
        <div class="col-sm-4">
 | 
			
		||||
            <label for="status" class="control-label">Show devices: </label>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="col-sm-8">
 | 
			
		||||
            <select class="form-control" name="status" id="status_'.$unique_id.'">
 | 
			
		||||
                <option value="0,1">Up + Down</option>
 | 
			
		||||
                <option value="1">Up</option>
 | 
			
		||||
                <option value="0">Down</option>
 | 
			
		||||
            </select>
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
  <div class="form-group">
 | 
			
		||||
    <div class="col-sm-2">
 | 
			
		||||
      <button type="submit" class="btn btn-default">Set</button>
 | 
			
		||||
@@ -101,6 +113,9 @@ if ($config['map']['engine'] == 'leaflet') {
 | 
			
		||||
        else {
 | 
			
		||||
            $group_radius = 80;
 | 
			
		||||
        }
 | 
			
		||||
        if (empty($widget_settings['status']) && $widget_settings['status'] != '0') {
 | 
			
		||||
            $widget_settings['status'] = '0,1';
 | 
			
		||||
        }
 | 
			
		||||
        $map_init = "[" . $init_lat . ", " . $init_lng . "], " . sprintf("%01.0f", $init_zoom);
 | 
			
		||||
        $temp_output .= 'var map = L.map(\'leaflet-map\').setView('.$map_init.');
 | 
			
		||||
L.tileLayer(\'//{s}.tile.openstreetmap.org/{z}/{x}/{y}.png\', {
 | 
			
		||||
@@ -125,6 +140,7 @@ var greenMarker = L.AwesomeMarkers.icon({
 | 
			
		||||
            $sql = "SELECT DISTINCT(`device_id`),`hostname`,`os`,`status`,`lat`,`lng` FROM `devices`
 | 
			
		||||
                    LEFT JOIN `locations` ON `devices`.`location`=`locations`.`location`
 | 
			
		||||
                    WHERE `disabled`=0 AND `ignore`=0 AND `lat` != '' AND `lng` != ''
 | 
			
		||||
                      AND `status` IN (".$widget_settings['status'].")
 | 
			
		||||
                    ORDER BY `status` ASC, `hostname`";
 | 
			
		||||
        }
 | 
			
		||||
        else {
 | 
			
		||||
@@ -134,10 +150,11 @@ var greenMarker = L.AwesomeMarkers.icon({
 | 
			
		||||
                    LEFT JOIN `locations` ON `devices`.`location`=`locations`.`location`
 | 
			
		||||
                    WHERE `disabled`=0 AND `ignore`=0 AND `lat` != '' AND `lng` != ''
 | 
			
		||||
                    AND `devices`.`device_id` = `devices_perms`.`device_id`
 | 
			
		||||
                    AND `devices_perms`.`user_id` = ?
 | 
			
		||||
                    AND `devices_perms`.`user_id` = ? AND `status` IN (".$widget_settings['status'].")
 | 
			
		||||
                    ORDER BY `status` ASC, `hostname`";
 | 
			
		||||
            $param[] = $_SESSION['user_id'];
 | 
			
		||||
        }
 | 
			
		||||
        foreach (dbFetchRows($sql, array($_SESSION['user_id'])) as $map_devices) {
 | 
			
		||||
        foreach (dbFetchRows($sql, $param) as $map_devices) {
 | 
			
		||||
            $icon = 'greenMarker';
 | 
			
		||||
            $z_offset = 0;
 | 
			
		||||
            if ($map_devices['status'] == 0) {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user