Commit Graph

5818 Commits

Author SHA1 Message Date
Tony Murray
2cd207028a
Implement RBAC (only built in roles) (#15212)
* Install bouncer

* Seeder and level migration

* Display and edit roles

* remove unused deluser page

* Update Radius and SSO to assign roles

* update AlertUtil direct level check to use roles instead

* rewrite ircbot auth handling

* Remove legacy auth getUserlist and getUserlevel methods, add getRoles
Set roles in LegacyUserProvider

* Small cleanups

* centralize role sync code
show roles on user preferences page

* VueSelect component WIP and a little docs

* WIP

* SelectControllers id and text fields.

* LibrenmsSelect component extracted from SettingSelectDynamic

* Handle multiple selections

* allow type coercion

* full width settings

* final style adjustments

* Final compiled assets update

* Style fixes

* Fix SSO tests

* Lint cleanups

* small style fix

* don't use json yet

* Update baseline for usptream package issues

* Change schema, not 100% sure it is correct
not sure why xor doesn't work
2023-08-28 00:13:40 -05:00
Tony Murray
51400245b9
Update Alpine Linux logos to SVG (#15185)
* Update Alpine Linux logos to SVG

* remove logo whitespace
2023-08-02 23:42:48 +02:00
Tony Murray
4f5e31c88f
Fix select2 search field focus (#15171)
Some jQuery version broke the focus search field on open, this should fix that.
2023-07-31 13:11:36 -05:00
eggbeater98
510d5dc94b
Update dark.css (#15155)
Change text for services to white for visibility.
2023-07-19 22:22:42 -05:00
eggbeater98
0eebe7a255
Update dark.css (#15141)
Fix device name and drop-down text color for availability.
2023-07-11 13:10:48 +03:00
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
eskyuu
ce0734ff5d
Added support for user timezones and user browser timezone by default (incomplete) (#13626)
* Added support for user timezones and user browser timezone byt default

* Formatting fixes

* Use the timezone for alert log display

also added validation for the timezone because it's being used in SQL.

* Formatting fixes

* Added return type

* Formatting"

* Update the latency graphs to use the user timezone

* Simplify the web routes config

* Update phpstan to ignore type error

* Fixed up the phpstan config

* Reverse phpstan change

* Re-apply phpstan override

* Remove the option to unset the session timezone

* Formatting fix

* Update outge and event logs to use session timezone

* Fix route for the timezone control

* Made the timezone more dynamic

* Fix a logic error that was stopping the timezone from being set automatically on login

* Prevent getPref from being called twice

* again prevent getPref double call

* getPref double call

* Fixed typo made during merge

* Fixed merge error in phpstan-baseline.neon

* Change spaces to tabs in phpstan-baseline.neon

* Update error count

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-05-09 10:24:48 -05:00
Tony Murray
5c25cece48
Convert the inventory page to Laravel (#15004)
* Convert the inventory page to Laravel
Fix several XSS issues (hopefully no new ones snuck in)
Small improvement to the SelectController to allow filtering by filterFields()

* style fixes

* Fix lint issues

* Fix part device filter
2023-04-28 07:51:41 -05:00
mtentilucci
b09f5f63e4
Add Nutanix AOS discovery (#14950)
* Add Nutanix AOS Discovery

- Add basic discovery configuration
- Add Nutanix .svg icon and logo
- Add test data

* fix yaml style nutanix-aos.yaml
2023-04-07 13:02:41 -05:00
mtentilucci
698b9ee48c
Add Rubrik Discovery (#14951)
- Add basic discovery
- Add Rubrik .svg icon and logo
- Add test data
2023-04-07 13:01:30 -05:00
cjwbath
bbe752b24a
Add initial OS detection for LoadBalancer.org (#14902)
* Add initial OS detection for LoadBalancer.org

* Match on Linux sysObjectID first for efficiency

Co-authored-by: Tony Murray <murraytony@gmail.com>

* Add test for loadbalancer OS detection

* Add test for loadbalancer OS detection - fix author

* Add test for loadbalancer OS detection

* Add test for loadbalancer OS detection - fix author

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
Co-authored-by: Chris Ware <cjw26@bath.ac.uk>
2023-04-06 19:58:14 -05:00
Stef
e1b2a42373
Device: Deltanet Lambdatrail LT2-S,HS (#14661)
* Deltanet Lambdatrail integration - first try

* add fan parameters

* ignore values

* lint

* over graphs and snmp fix

* definition for hs variant

* HS variant added

* mibs renamed

* add test data

* Deltanet Lambdatrail integration - first try

* add fan parameters

* ignore values

* lint

* over graphs and snmp fix

* definition for hs variant

* HS variant added

* mibs renamed

* add test data
2023-03-21 07:29:17 -05:00
Nick Peelman
7ccccdf914
Add Montclair EDFA Support (#14852)
* Add Montclair EDFA Support

* Fix detecton

Used explicit match regex

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-03-18 21:34:28 -05:00
mtentilucci
d6d2827f97
Add support for Trellix FireEye OS (#14908) 2023-03-18 18:51:14 +01:00
Jellyfrog
68e0b3df28
Apply fixes from StyleCI (#14899)
Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-03-13 22:32:22 +01:00
mtentilucci
1e373dedc6
Add Avocent MergePoint Unity KVM Switch Support (#14874)
* Modify Avocent discovery so Avocent MergePoint Unity KVM switches are discovered

* Extract hardware model and version stored in sysDescr OID

* add avocent mpu snmprec

* add json dump test data

* update to not conflict with dell-rcs discovery

* fix styleci findings

* update Avocent.php

* update Avocent.php

* add support for avocent mp unity kvm switches

* add support for avocent mp unity kvm switches

* add support for avocent mp unity kvm switches

* add support for avocent mp unity kvm switches

* add support for avocent mp unity kvm switches

* add support for avocent mp unity kvm switches

* cleanup

* fix os name typo

* Add support for Vertiv Avocent MergePoint Unity

- Remove unnecessary sysdescr_regex in discovery file
- Only show device_bits graph in device header bar
- Use Vertiv icon
- Replace .png Vertiv icon and logo with .svg
- Disable unnecessary discovery and poller modules
- Add more snmpsim test data

* Update avocent-mp.yaml

Only disable poller and discovery modules if they cause problems
2023-03-10 00:09:53 +01:00
Guilherme Poletto
5dc7f89922
Add support for Vsol v1600d EPON OLT (#14853)
* Add Modified V-sol MIB

* Add Vsolution Discovery OS

* Add Vsolution Discovery OS

* Add os-logo

* Add snmp test data

* Add .json test data

* Add .json actual test data
2023-02-20 12:31:43 +01:00
Sander Blomvågnes
cf3f69e67f
Adding support for loop-telecom devices (#14674) 2023-01-02 14:47:17 +01:00
Tony Murray
9d3d81bb11
IP Infusion OcNOS basic detection (#14588)
* IP Infusion OcNOS basic detection

* add test data

* add os data
2022-11-07 13:09:33 -06:00
Bierchermuesli
7f3301caa4
Device - Basic hatteras dslam integration (#14115)
* basic hatteras dslam integration

* snmprec and json test files

* fix HN4000e variant

* add hn4000e variant

* logo and yaml fixes

* change type in test file

* inexistent(?) disco module removed: route

* Update hatteras.yaml

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-11-05 14:43:23 -05:00
squidly
de9787ea9a
Added support for Vultan Environmental Monitoring units (#14401)
* adding new os: vutlan

* renaming mib file, moving mib file to vendor folder, removing commented code

* Cache version data (#14404)

* Cache version data
Calling cli commands can be expensive, cache the results.

* style fixes

* Fix pre-laravel usage

* fix lint

* Revert "Cache version data (#14404)"

This reverts commit e426a9299d.

* fixing descr for door state and removing comments

* adding tests and moving vutlan definition file

* adding num_oid value for tests

* Rename VUTLAN-SYSTEM-MIB.mib to VUTLAN-SYSTEM-MIB

* Update vutlan_vt825.json

* updating test data

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-11-02 19:31:12 +01:00
carbinefreak
ff5b565fec
MNI Microwave OS Add (#14427)
* Add files via upload

* Create mni.yaml

* Create mni.yaml

* Add files via upload

* Add files via upload

* Update Mni.php

* Update Mni.php

* Add files via upload

* Add files via upload

* More Formatting Fixes

* Add files via upload

* Add files via upload

* Update mni.yaml

* Create MNI-PROTEUS-AMT-MIB

* Add files via upload

* Update Mni.php

* Update Mni.php
2022-10-06 20:24:37 +02:00
electrocret
b993f38903
Fix Inventory table for Dark theme (#14377) 2022-09-21 23:35:24 +02:00
Tony Murray
ad8580d694
Cleanup and optimize the availability widget (#14329)
* Cleanup and optimize the availability widget
Default sort is display name
Sort applies to services too (services always last)
May need to refresh the page to get new css

* style

* We don't need request (lint fix)

* Wrong service field name
2022-09-09 18:22:58 +02:00
Maikel de Boer
bd02df14b6
Added support for UHP VSAT modems (#14317)
* Started UHP VSAT support

* continue uhp

* end of day

* uhp  support

* fixed icon / logo

* cleanup

* added test data

* Delete Uhp.php

If the file is empty let's delete it

* added test data

* Update uhp.yaml

spacing fix

* Fixed identation

* New test data

* Fixed

* styling

* fix

Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
2022-09-08 15:27:51 +02:00
PipoCanaja
53bfb24ef9
Migrate xDSL code to module, and add support for VDSL2 MIB (#14207)
* use component to discover if xDSL polling is needed

use component to discover if xDSL polling is needed

* Components OK, Polling in correct files, no DB for VDSL

* GUI

GUI_suite

* per port as well

* rename

* interface listing

* draytek_snmpsim

* fix arraymerge

fix names and max value

* schema

schema

style

* remove one dbFetchRows

remove 2x dbFetchCell

style

style

remove Legacy dbFetchRow

tests

tests

eloquent

more eloquent

more eloquent

one more gone

* fix properties access

eloquent_insert_update

style

tests

tests

tests

tests

* tests

tests

tests

* adslLineCoding

* Models

* fix not nullable cols in DB from code

default values

typo

rename

typo

schema

fix

fix

vdsl fix now

typo

typo

fix size

fix size

* Power values for VDSL

Power values for VDSL

Power values for VDSL

DB

* cleanup

* Rrd::checkRrdExists

* always enable DSL discovery

style

* xdsl module

* cleanup and move to Module

cleanup and move to Module

cleanup and move to Module

cleanup and move to Module

* Fix display

* fix polling and tenth

* remove legacy poller

* Style and Cosmetics

Cosmetics

Cleanup

* Translations

Translations

* exists

exists

* add test support for xdsl

* remove last component call

unused

* translations

* remove non standard onclick event on xdsl line

* Update Discovery Support.md

Update Poller Support.md

toner_gone

* Notification for removal of lnms config:set enable_ports_adsl true

* enable on devices with potential DSL interfaces

* tests are working now

fix teldat tests

* os_schema

* teldat

* move to new module structure

* move to new module structure

* wrong dump function

* wrong dump function

* laravel_through_key hidden

* Update notifications.rss

* Update notifications.rss

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-09-07 19:29:17 -05:00
Tony Murray
302a989d4e
Email Transport: embed graphs by default (#14270)
* Email embed graphs

* Allow attachment for non-html
Add setting to webui
Correct $auth setting

* Cleanups, throw RrdGraphException instead of returning an error image.
Generate the error image later, giving more control.
Reduce code duplication a little

* Style and lint fixes
Change to flags

* Add baseline for lint errors I don't know how to resolve

* oopsie, changed the code after generating the baseline

* Tiny cleanups.  Make set DeviceCache primary, it is free.

* Docs.

* email_html note

* Allow control of graph embed at the email transport level to override the global config.

* Allow control of graph embed at the email transport level to override the global config.

* Add INLINE_BASE64 to make it easier to create inline image tags
2022-09-05 20:41:55 -05:00
Tony Murray
5c76890373
Add @signedGraphTag() and @signedGraphUrl() blade directives (#14269)
* More secure external graph access
Add @signedGraphTag() and @signedGraphUrl() blade directives
Takes either an array of graph variables or a url to a graph
Uses a signed url that is accessible without user login, embeds signature in url to authenticate access
See Laravel Signed Url for more details.
Adds Laravel route to graphs (does not change links to use it yet)
@graphImage requires the other PR
Also APP_URL is required in .env

* missing files from rebase

* Fix url parsing with a get string

* allow width and height to be omitted

* Documentation

* Add to, otherwise it will always be now

* Doc note for to and from relative security

* fix vars.inc.php (Laravel has a dummy url here)
2022-09-03 12:48:43 -05:00
Lucas Gasenzer
e075e8d7d7
changed viewbox and scale as fix for safari (#14271) 2022-09-01 22:55:43 -05:00
Tony Murray
6f5cf7727a
Misc webui code cleanups (#14242)
* Misc webui cleanups

* Style

* More

* graphing fixes

* More graph cleanups

* more fixes, graphs and device pages

* style
2022-08-30 12:55:37 -05:00
Janno Schouwenburg
7b3a6250f0
Bats support (#14108)
* BATS support

* Removed disabled discovery modules

* Style change, more test data, removed unused rows

* Style correction LibreNMS/OS/Bats.php

* Removed old reference

* Another style correction add LibreNMS/OS/Bats.php

* Changed location info and temperature

* Style, again

* Style, again

* New testdata needed

* Fix wrong state color in discovery/bats.yaml

* New test data

* Update bats_bats.json

* Saved the test data in a different way

* More test data

* Manually changed test data

* New test data

* New test data

* Update bats_bats.json

* Saved the test data in a different way

* More test data

* Manually changed test data

* New test data

* New test data

* Delete bats_bats.snmprec

* Update bats.json

* Update bats.json

Co-authored-by: Maikel de Boer <mdb@tampnet.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-08-10 09:07:31 -05:00
La
71fca5bd12
update mellanox os image (#14184)
* update mellanox os image

* update mellanox svg

* remove mellanox png file
2022-08-07 09:20:26 -05:00
Peca Nesovanovic
3d65e722a6
Initial support for Serbian language (#14165)
* initial support for serbian language

* lnms translation:generate
2022-07-31 16:09:59 +02:00
Tony Murray
1861e09a5b
Fix Rocky Linux and AlmaLinux icons and logos (#14150)
* Fix Rocky linux os icon

* AlmaLinux was missing too and add Rocky Linux logo
2022-07-27 18:42:55 +02:00
Peca Nesovanovic
a551a95404
[gui] enable permanent vertical scroll (#14102)
* [gui] permanent vertical scroll

* switch to styles.css
2022-07-27 11:18:25 -05:00
Tony Murray
7071db98a5
Merge netmanplus and riello and improve device support (#14125)
* merge netmanplus and riello

* Fix icon and hardware
2022-07-24 20:11:01 +02:00
Tony Murray
5c958937b3
Solid Optics EDFAMUX support (#14129)
Workaround a bad SNMP implementation
2022-07-24 20:10:15 +02:00
Dag Bakke
24fc12722b
Add option STARTTLS for authentication via AD (#14051)
* Add option STARTTLS for authentication via AD

* Fix dangling spaces

* Moved starttls code to the correct place

* tabs vs spaces...

* Update ActiveDirectoryAuthorizer.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-07-05 14:53:29 -05:00
Dominik V. Salonen
7ebf830d34
Add full version of Mikrotik logo (#14063) 2022-06-22 19:46:31 +02:00
Dominik V. Salonen
110ceee10c
Update Mikrotik logo (#14045)
* Update Mikrotik logo

* Remove width and height attributes from logo
2022-06-15 14:09:33 +02:00
Nash Kaminski
b66015f54d
Bumpver handlebars.js to 4.7.7 to resolve CVE-2021-23369 (#13990) 2022-05-27 08:51:33 -05:00
Martin22
17efcac2eb
Added BKE power supply support. (#13972)
* Added BKE power supply support.

* Delete unnecessary snmprec file.

* Renaming the mib file
2022-05-10 10:00:34 +02:00
James
f6a7b73c55
Update dark.css (#13951) 2022-04-25 20:13:11 -05:00
Tony Murray
806e10ace1
Fix snmp.timeout setting via Web UI (#13937)
Add Float type for global settings
2022-04-23 08:35:24 -05:00
Tony Murray
0a84098211
Port Validation Page to Laravel (#13921)
* Revamp validate web page
 to load page then validate, instead of validate then load page

* style fixes

* lint cleanups

* fixes

* translations and a couple fixes

* style fixes

* move result serialization into the class.
2022-04-14 11:22:40 -05:00
Dan Kerse
b33bbd472e
Add support for PrimeKey Hardware Appliance (#13806)
* Add support for PrimeKey Hardware Appliance

https://doc.primekey.com/ejbca-appliance
https://doc.primekey.com/signserver-appliance

https://doc.primekey.com/ejbca-appliance/operations/webconf-configurator-of-hardware-appliance/monitoring

* Correct off-by-one error for Galera states

* Add load multiplier

* Don't poll transaction ID, it's too messy

* Tabs -> spaces

* Don't modify system load. (Is this a %age or not?)

* CUP moves Load -> Count

* CPU moves Load -> Count

* Now I have MiBs. Attempts to use them are to date unsuccessful

* Removed numeric oids entirely

I'm not sure how easy it will be to conver this to YAML.

* Formatting

* More formatting

* Numeric it is

* Fix States

* Numeric oids

* Shorten Descriptions

* Add DB threshold

* Percent -> Yaml

* Temperature -> Yaml. Relaxed num_oid validation

* Fanspeed -> Yaml

* Volgate -> Yaml

* Count -> Yaml

* State -> Yaml

* Tweak snmp_flags

* minimize icon

* Check if first_word function is required

* Incorporate feedback

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-04-08 06:23:00 -05:00
James French
7e5641d4fe
Replaced OpenWRT icon with new logo (#13891)
* Added new OpenWRT icon to replace old logo

* New logo has an icon usable without text per look & feel of LibreNMS
* Compatible with OpenWRT usage guidelines refer:
    https://openwrt.org/docs/guide-graphic-designer/openwrt-logo

* Update openwrt.svg

Co-authored-by: Neil Lathwood <gh+n@laf.io>
2022-04-03 14:10:27 +01:00
Fehler12
9785522d13
Added Polycom Lens SNMP support. (#13876)
Added Polycom Lens SNMP support.
2022-03-25 23:54:06 +01:00
Charly Forot
e280ea1c8d
[new OS] Alpine OptoElectronics TDCM-EDFA support (#13825)
* add alpine optoelectronics mibs for tcdm-edfa

* add alpine optoelectronics logo

* add alpine optoelectronics icon

* add inital detection

* add yaml discovery file

* improve yaml discovery for webUI

* rename os to alpineoe

* rename files

* replace svg logos by png

* add success tests

* Revert "replace svg logos by png"

This reverts commit 71f3dacef6.

* Revert "Revert "replace svg logos by png""

This reverts commit cd4f4cf5e0.

* Revert "add success tests"

This reverts commit 27bb3a96e4.

* add success tests with right icon

* Remove sysDecr not necessary for discovery
2022-03-11 09:48:30 +01:00
Hans Erasmus
1e9adb38b2
Add rocky linux OS identification (#13815) 2022-02-25 13:19:08 +01:00
Jellyfrog
09929bd686
Implement OAuth and SAML2 support (#13764)
* Implement OAuth and SAML2 support via Socialite

* Add socialite docs

* fixes

* Additional information added

* wip

* 22.3.0 targeted version

* Allow mysql auth as long as there is a password saved

Co-authored-by: laf <gh+n@laf.io>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-02-20 22:05:51 +01:00
Tony Murray
7f63737567
add missing icons for progressive web app notifications (#13771) 2022-02-11 16:06:20 +01:00
Jellyfrog
af98992f9c
Upgrade to font awesome 6 (#13760) 2022-02-10 20:33:42 +01:00
flo
a49ee59c06
Fix links to connected devices in old style maps (#13762)
When using the old style maps when you click on one of the connected
devices (bubbles on the right side) the link points to
$HOSTNAME//device... looking at other examples base_url seems to
include the trailing slash. Removing the additional slash fixes the
links for me.
2022-02-10 00:41:47 +01:00
Jellyfrog
b9e55bc462
Upgrade to font awesome 5 (#13754)
* Upgrade to font awesome 5

* Update memory icon
2022-02-09 00:49:07 +01:00
Santiago Z
2e35844056
[WebUI] Show selected option of devices-graphs-select in Mono theme (#13752) 2022-02-06 23:13:27 +01:00
dfitton
722de2ebe5
Update dark.css to improve visibility (#13749)
Fixed certain colours to make them more readable against the dark background. Mainly the blue colour against the dark background I have changed to a lighter blue.
Some dark greys and blacks as well.
2022-02-04 15:35:51 +01:00
Konstantin
e628bf5237
Added Volius (#13723) 2022-01-29 14:52:05 +01:00
Jellyfrog
3a4efc6fa0
Update to tailwind 3 (#13695) 2022-01-26 19:10:56 -06:00
Jellyfrog
f4f297fd48
Update JS deps (#13694) 2022-01-23 19:45:44 +01:00
Konstantin
759dcb1bab
Added CET Power T2S TSI (#13645)
* Delta Icon

* CET Power Firts Commit

* Fix objectID Eltex MES23XX

* cetpower.yaml update

* delete UPS.mib and update cetpower.yaml

* cetpower snmprec add

* Update delta.svg

* Rename CET-TSI-MIB.mib to CET-TSI-MIB

* Rename CET-TSI-SMI.mib to CET-TSI-SMI

* Create cetpower.json

* Update cetpower.json

* Update eltex-mes23xx.yaml

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-01-10 08:30:18 -06:00
Tony Murray
edd645264c
Regenerate app.js (#13613) 2021-12-10 22:28:20 -06:00
martinberg
9e6590104b
Add more device fields to oxidized map configuration (#13604)
* fixed typo and added sources

* Updated app.js

* Add mix-manifest.json
2021-12-09 13:45:00 -06:00
Tony Murray
a95efd6d2a
Global search: search device display (#13583)
* Global search: search device display
Add display field to search (also port_desc_descr, portName, and bgpPeerDescr)
Rewrite backend
update typeahead bundle
update devices and ports indexes
reduce some port field sizes so we can index them

* Style fixes

* remove nonsense
2021-12-06 16:12:24 +01:00
Nocturr
e0774fc677
Add Initial Support for VMware SD-WAN / Velocloud (#13536)
* Add Initial Support for VMware SD-WAN / Velocloud

* change os name to velocloud

* update test data

* rename os definition file

* missed one
2021-12-02 15:27:41 -06:00
Tony Murray
d69674b36e
Correct graph row component responsive layout for linked graphs (#13587)
* Correct graph row component responsive layout for linked graphs
Enable pass through height and legend.  Probably need more, but this is just for a start.
Switch Poller performance page

* revert accidental change

* Update Graph.php
2021-11-30 19:21:41 -06:00
Tony Murray
790c4b3402
Configurable device display name (#13528)
* Configurable device display name
You can just set the display name in device settings.

It also accepts simple template format with  the variables: hostname, sysName, sysName_fallback, ip

Default controlled by device_display_default, (set from old force_hostname_to_sysname and force_ip_to_sysname settings

* remove second argument to format_hostname()

* Style fixes

* Update schema

* update phpstan baseline

* Improved settings strings (and add for translation)
2021-11-18 15:46:22 -06:00
Tony Murray
e7a26e8faf
Tweak new notification appearance (#13477) 2021-11-05 22:20:00 -05:00
Tony Murray
5900edbf16
PHP-Flasher for toast messages (#13401)
* PHP-Flasher for toast messages
Allows customized template
removes dependency on unmaintained package using dev stability
no solution for javascript toasts yet

Use DI in places it makes sense

allow html in flashes

Use "template.librenms" as a default notification style

merge toast containers
toastr needs to be second because it will find the containr made by flasher, but the inverse is not true

upgrade php-flasher to add custom options and persistent notifications

Add dark theme

* update composer.lock
2021-10-29 09:13:56 -05:00
Tony Murray
ebc5c3eea1
Image assets (#13428)
* New image assets

* remove png
2021-10-27 07:35:05 -05:00
SourceDoctor
8ea5a62b8e
Discovery on Reboot (#13422)
* Discovery on Reboot

* change default behaviour

* .
2021-10-25 13:22:23 +02:00
Matt Peterson
3d4ad683ad
OS support for West Mountain 4005i DC PDU (#12885)
* remove ^M from DOS style file

* Support for West Mountain 4005i DC PDU

* update SVG to include width attributes

* try adding reserveAspectRatio="xMinYMin meet"

* remove width attribute

* removed disabled modules per @Jellyfrog comment

* rename per PR

* add missing test JSON data

* don't attempt to graph or detect uptime, as neither OID is supported

* remove file extension

* remove specific modules for discovery & polling, as this device isnt buggy enough for justify

* Update westmountainradio.yaml

* Update westmountainradio.yaml

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-20 20:48:51 -05:00
Kevin Zink
98ed6bb9dc
New plugin system based on Laravel Package Development (#12998)
* use Blade view and Eloquent models for plugins

* move views

* fix style

* fix style

* revert mistake

* Update Plugin.php

delete test property "name"

* rename plugin function to settings

* last but not least - rename in Test.php

* Rename Test to Example

* fix typo

* fix style

* fix style

* fix style

* fix style - I hate tabs...

* Extract view calls

* fix method calls and style

* Move Models the the abstract class

* fix style

* Convert to traits

* Change the Example description

* Fix style

* Fix style

* Fix style

* Convert plugin function to Model static methods and delete .inc.php

* fix style

* fix style

* Use scope

* final methods blows up legacy code

* Config > \LibreNMS\Config

* convert the static string to a static method

* Correct placement in the page

* fix tabs

* fix style

* Rename from tait to hook

to make it easier to understand and be complient

* rename file

* Typo

* Started to change the docu

* change to a more usefully Device_Overview example

* and activate of course

* PluginManager

* fix .gitignore

* only php files in the root folder

* corrected .gitignore with all files :)

* Rename the Hooks and ExampleClass for better readability

* Fix style

* Fix style

* Exception handling (especially if DB is not present)

* Fix style and update schema

* fix indentation

* actually correct indent

* fix migration collation check include utf8mb4_bin

* stop phpstan whining

* A view lines documentation

* add typeHints

* Allow return null on handle

* lint

* fix return types

* fix logic of column collation check

* Fix MenuEntryHook

* switch to longtext instead of json type for now :D

* try phpstan on PHP 7.3

* set phpstan target version to 7.3

* all the typehints

* optional

* more

* Use namespace to prevent view collisions
disambiguate plugin and hook
no magic guessing of names in PluginManager, bad assumptions
remove unused plugins from the DB

* cleanup plugin menu

* cleanup on shutdown and ignore but log query error on cleanup

* instanceof must be called against an instance

* Allow multiple hooks per plugin

* Port plugin ui code to Laravel

* page instead of settings for v1 plugins

* actually working settings pages
a little url cleanup plugin/admin -> plugin/settings

* fix style

* Add page hook

* PHPstan

* Try to fix Illuminate\Http\RedirectResponse

* typehint

* Rewrite the doc

* Fix style

Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-19 06:53:28 -05:00
martinberg
d69810b3c3
Add support for NTI Enviromux (#13373)
* Updated mib

* Add support for IOS/IOSXE PoE stats

* Added testdata

* Better titles for Power-tab in Health

* Added low_limit for iosxe

* Basic support for Enviromux devices

* Fixes

* Revert "Added low_limit for iosxe"

This reverts commit 645e3b423a.

* Removed commits from wrong branch

* Removed limits due to not working, need php

* Added testdata

* Update nti.svg

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-10-18 10:35:30 +02:00
Tony Murray
3ef21e740c
Remove unused snom files (#13369)
No snom os exists anymore.
According to very old files, sysDescr should contain the string "snom".
I checked on stats and no one reports an snom phone added to LibreNMS.
I can't add the os detection, so just remove these.
Netstats PR will remove other snom references
2021-10-17 17:08:47 +02:00
Tony Murray
8d5bc3fc41
Use Measurements for all statistic collection (#13333)
* Use Measurements for all statistic collection

* fix space

* Use colors
cleanup

* fix style

* manually fix license notice

* add return times and new line

* add return times and new line

* fix mistake in copyright template

* fix style
2021-10-06 17:09:54 -05:00
Tony Murray
0b8b97bb68
Push Notifications (Mobile and PC) (#13277)
* Update manifest and add service worker
cleanup icons a bit

* Push notifications WIP

* navigate working

* cleanup

* acknowledge wired up

* Set VAPID keys on composer install

* Component to control notification permissions.

* Allow all user option to validate

* Enable on browser load if transport exists.

* Check for transport before showing user permissions
translations

* Documentation

* style fixes

* access via the attribute model

* fix alerting test

* update schema

* cleanup subscription on disable

* non-configurable db and table for webpush subscriptions (respect system connection)

* revert AlertTransport change
hopefully phpstan can figure it out

* phpstan fixes

* Support custom details display

* Match transport names to brand's preferred display

* less duplicate id errors

* Tests are done in Laravel code now so
remove legacy function usage... could be better, but ok

* Style fixes

* Style fixes 2

* Fix alert test

* Doc updates requires HTTPS and GMP

* unregister subscription when permission is set to denied

* cleanup after user deletion

* delete the right thing

* fix whitespace

* update install docs to include php-gmp

* suggest ext-gmp

* update javascript

* Update functions.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-10-06 07:29:47 -05:00
Tony Murray
65b385f0fe
Workaround for dashboard widgets showing over popups. (#13257)
* Workaround for dashboard widgets showing over popups.
z-index is being set on the popup, and I verified it is applied, but for some reason the widget with a z-index of 2 still shows over top.
I don't think this has any side-affects, but I don't know for sure.
Could not find another work-around.  Gridster is dead, so unlikely we will update the js and override this fix.

* version file to make clients update
2021-09-30 20:13:21 -05:00
Tony Murray
66dddbaa66
SNMP Capabilities (#13289)
* SNMP Capabilities
Allow all available auth algorithms to be set in global settings
cleanup other usages

* fix style
2021-09-28 18:35:59 -05:00
Tony Murray
2687fc509e
Improve tailwind dark theme colors (#13262)
* Improve tailwind dark theme colors
Import the dark theme colors into the Tailwind color palette
update components to use those new colors

* remove colors import, it isn't used right now
2021-09-23 15:38:41 +02:00
Negatifff
962e05ea6b
Add sysobjectid and hardware fields into oxidized maps (#13221)
* add sysobjectid and hostname field into oxidized maps

* add app.js
2021-09-16 19:00:06 -05:00
Pim van Pelt
7e26331ab6
Add VPP logo (#13230) 2021-09-15 17:50:44 +02:00
Martin
a357224465
Update to fix table row color and hover color (#13244)
The last update changed row color for all rows except the first instead of changing color for every 2nd row.
2021-09-15 17:43:36 +02:00
Jellyfrog
258505ed44
Apply fixes from StyleCI (#13224) 2021-09-10 20:09:53 +02:00
Tony Murray
c5b63bde86
New Blade Components: x-device-link, x-port-link, x-graph-row, x-popup (#13197)
* working popover

* popup component

* cleanup

* finalize device-link component

* attributes WIP

* working graph component

* widgets WIP

* More dynamic configs

* Graph row component

* Build CSS so we can use a dark theme

* graph row set columns

* only one popup visible at a time.

* Just set graph row width statically

* responsive WIP

* rsponsive option for graph-row "working"

* remove @deviceLink and @portLink

* fix non-responsive graph row

* update js/css

* fix style

* bad type?

* types

* types

* types #3

* remove testing code

* full rebel, no closing tags for meta and link

* match previous formatting

* fix vlans display

* restore newline

* remove silly comment

* remove unused line

* style I guess
2021-09-10 08:07:08 -05:00
Jellyfrog
26b95c0ccc
Apply fixes from StyleCI (#13208) 2021-09-08 23:35:56 +02:00
Jellyfrog
57cedd5158
Add support for description texts in Settings page (#13104) 2021-09-01 18:58:51 -05:00
Tony Murray
79de1ca28e
Select dynamic fixes (#13187)
* Fix select-dynamic changes
require validation for select-dynamic
allow 0 in config:set

* fix zero_or_exists

* validate, not validation :D
2021-08-31 20:43:02 +02:00
Negatifff
9a635232dc
add serial search in ajax search process (#13185) 2021-08-30 14:49:10 +02:00
Tony Murray
d646562e4e
Dynamic Select setting (#13179)
* Dynamic Select setting
embeds select2 and uses ajax to call to backend for options
poller-group included

* fix validation a bit

* fix typehint

* move minProperties into the select schema

* Change dashboard-select to select-dynamic
Love deleting code

* Change dashboard-select to select-dynamic
Love deleting code
wire up a few select2 options

* fix whitespace

* Not a model, just an object

* Suggestion from @SourceDoctor autocomplete values of select and select-dynamic

Got a little creative with InternalHttpRequest...
2021-08-28 06:46:53 -05:00
Tony Murray
d74bb37971
Show port speed on port graphs, optionally set scale (#11858)
* Show ifSpeed on Graph
Drop ifHighSpeed, we really don't want to store that value.

* safer truth check

* Allow global setting and per-graph variable

* match surrounding case

* Style fixes

* Remove old function usage

* update schema

* remove some old usages

* cleanup more ifHighSpeed references

* update test data to remove ifHighSpeed

* fix down migration

* Add button on graph page
Change default
tweak wording
2021-08-23 06:47:44 -05:00
Facundo Caselles
8bb6eec732
Dark mode improvements (#13141)
* Changes to dark theme.
- Tables with white background now has dark background.
- Listbox in searchbar now has dark background.

* Minor change to internal css to modify all tables without 'table' class applied. (view screenshot)

* -Transparency on mini graphs on ports

* bootgrid-table td.no-results now has dark background

* Changes suggested by @Talkabout
2021-08-21 20:06:13 +02:00
paulierco
d6fee82e1a
Add OSAG OS (#13156) 2021-08-20 19:25:07 +02:00
Facundo Caselles
9723c44479
Improvements to dark theme (#13139)
- Tables with white background now has dark background.
- Listbox in searchbar now has dark background.
2021-08-15 09:27:14 +02:00
VTS
636dce43d2
sort port selector dropdown (#13135) 2021-08-13 16:45:22 +02:00
Kevin Zink
7c41698e4b
Add logo for Scientific Linux (#13075) 2021-07-27 16:27:50 +02:00
Russell Morris
5056fe5416
Add logo for Linux Mint (#13055)
* Add logo for Linux Mint

* Remove width and height from svg file - as required.

* And add viewBox
2021-07-19 09:44:16 +02:00
mathieu-artic
784c19587a
add support for ucopia appliances (#13031) 2021-07-11 23:11:35 +02:00
martinberg
131f5c7e87
Option to filter Oxidized groups (#12966)
* Add support for Liebert humidity setpoint and UPS powerfactor

* Option to ignore groups so they are not sent to Oxidized

* Revert "Add support for Liebert humidity setpoint and UPS powerfactor"

This reverts commit c338528aba.

* Updated docs

* Added ignore_groups option

* Added descriptions and updated translations

* Update settings.php

* Fixed typo

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-06-28 12:53:16 +02:00
Ray Lyon
03aa453893
Added logo svg for Rocky Linux (#12977)
* rocky linux logo

* removed width and height attributes

* added back viewbox
2021-06-23 15:48:17 +02:00