Qualche giorno fa ho avuto la necessità di aggiungere un menù custom nella Web Gui di LibreNMS per poter aggiungere della documentazione.
Analizzando i file di configurazione dell’applicativo ho trovato il file con le indicazioni da seguire.
Infatti esiste già il codice per aggiungere una menù custom e lo troviamo all’interno del file /opt/librenms/html/includes/print-menubar.php
Se apriamo il file verso il fondo dovremmo vedere queste due righe
0 1 2 3 |
// Custom menubar entries. if (is_file("includes/print-menubar-custom.inc.php")) { require 'includes/print-menubar-custom.inc.php'; } |
Creiamo quindi la pagina PHP print-menubar-custom.inc.php nel path /opt/librenms/html/includes/ con il comando:
0 |
sudo nano /opt/librenms/html/includes/print-menubar-custom.inc.php |
Quindi incolliamo il seguente codice:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
<?php use LibreNMS\Authentication\Auth; ?> <li class="dropdown"> <a href="#" class="dropdown-toggle" data-hover="dropdown" data-toggle="dropdown"><i class="fa fa-star fa-fw fa-lg fa-nav-icons hidden-md" aria-hidden="true"></i> <span class="hidden-sm">Custom Menu</span></a> <ul class="dropdown-menu"> <?php if (Auth::user()->hasGlobalAdmin()) { ?> <li><a href="WIFI-Map.html"><i class="fa fa-wifi fa-fw fa-lg" aria-hidden="true"></i> WIFI-Map</a></li> <li role="presentation" class="divider"></li> <li><a href="Router-Map.html"><i class="fa fa-wifi fa-fw fa-lg" aria-hidden="true"></i> Router-Map</a></li> <li role="presentation" class="divider"></li> <?php } else { echo(' <li><a href="#">You need admin rights to see this</a></li>'); } ?> </ul> </li> |
Quindi settiamo i permessi per l’utenza librenms alla pagina appena creata con il comando:
0 |
chown librenms:librenms /opt/librenms/html/includes/wifi-menubar-maps.inc.php |
A questo punto dobbiamo creare i due file HTML citati nella pagina PHP appena creata WIFI-Map.html e Router-Map.html all’interno della cartella /opt/librenms/html
Dopo aver creato o copiato i file Html dobbiamo assegnare i permessi all’utenza librenms con il comando:
0 1 |
chown librenms:librenms /opt/librenms/html/WIFI-Map.html chown librenms:librenms /opt/librenms/html/Router-Map.html |
Se proviamo a fare un refresh della pagina web noteremo che dopo il menù Alerts è comparso il Custom Menu con all’interno i sotto menù che abbiamo creato.
Sono Raffaele Chiatto, un appassionato di informatica a 360°…
Mi sono avvicinato al mondo dell’informatica nel lontano 1996 con Windows 95 e da allora non ho più smesso di dedicarmi allo studio ed approfondimento di questo settore.
Laureato in Ingegneria Informatica nel 2009, lavoro nel campo dell’IT dal lontano 2001.
se volessi aggiungere una nuova tab in device come dovrei fare? oltre overview etc?