Commit Graph

5700 Commits

Author SHA1 Message Date
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
Kevin Zink
7ef302a8b9 EUROstor RAID (#12969)
* Proware Controller in EuroStore RAID Chassis

* fix style

* Eurostore

* renew testdata

* Fix style
2021-06-21 10:13:40 +02:00
Tony Murray
50dd6c1685 Fix ldap/ad group webui settings (#12967)
* Fix LDAP groups UI WIP

* fix up ldap and ad group settings

* production compiled assets
2021-06-19 16:16:02 +02:00
Kevin Zink
3a0c164a5d Add Barco Clickshare (#12927)
* Add Barco Clickshare

* correct type

* and testdata
2021-05-31 00:15:24 +02:00
mathieu-artic
15da7faef1 Add support for oneaccess router (#12850)
* add oneaccess

* add oneaccess mibs

* modify cpu description

* delete .mib

* add cpu name

* update tests files

* add text
2021-05-29 09:08:28 -05:00
Jellyfrog
556c265934 Initial HAProxy ALOHA support (#12889) 2021-05-25 15:33:18 +02:00
Tony Murray
d10a3db5e0 Fix server stats widget (#12864)
* Fix Server Stats Widget
JustGage update
removed title feature, so re-implement

* Improve layout
2021-05-12 12:39:49 -05:00
Tony Murray
2d752925b0 Oxidized improvements (#12773)
* Oxidized API cleanup
Import more settings to the UI
use lnms config:set

* validate os and type exist

* map settings WIP

* oops

* editing working.  Needed to add new property to pass update state to child

* implement deleting and handle text overflow a little better.

* Update app/Models/Device.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

* Update app/Models/Device.php

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>

* revert change

* fix style

* add return

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-05-11 08:08:59 -05:00
Tony Murray
3d62be5003 Jquery upgrade (#12802)
* WIP js upgrades

* trying 3.0

* Event handler changes

* fix alert rule collection loading

* blur fix

* jQuery 3.5
homescreen no warnings

* actually 3.6 include js

* Update bootstrap to 3.4.1

* missed file

* Update and test install process

* cleanup

* attempt to version js files that were updated.
2021-05-11 08:08:06 -05:00
PipoCanaja
fff8b8e832 Collect OUI Database and do OUI lookups (#12842)
* first draft

refresh time

refresh time

* return codes

style

style

* presentation

* Exception details

more

fix

fix

* add tooltips

fixes for dns display

* create WebUI config option

languages

* refresh data every 7 to 11 days, keep it 15 days max

* 'Ports' and 'Port' ARP table

* Stp page support

style

style

* fix dnsname column finding when vendor is added/removed

fix dnsname column finding when vendor is added/removed

* nac vendor column

nac

* filter fields to reduce size of AJAX reply

filter fields to reduce size of AJAX reply

* fix typo on dns column detection

* default enabled
2021-05-10 14:56:48 -05:00
Denny Friebe
1734e3af04 Fix allow_unauth_graphs (#12829) 2021-05-04 07:49:16 -05:00
Tony Murray
61c89794e4 Remove debug globals (#12811)
* Remove $debug global
and $vdebug global
makes these variables more accessible and protects from collisions.

* the on boot set sends application as the first parameter, just handle that

* Relocate other debug related functions

* Log debug to stdout

* Wrong output

* remove stupid constants

* Fix lint and style issues
2021-04-29 22:42:18 -05:00
SourceDoctor
ea75435990 Filter Ports out by Interface Type (#12590)
* Filter Ports +out by Interface Type

* style fix

* style fix

* .

* .

* change code

* .

* move filter to main filter function

* reduce to bad_iftype in settings
2021-04-27 21:43:52 +02:00
Torch
62c5759bd1 Device: Added basic support for BKtel Optical Amplifier (#12754)
* added basic bktel oa support

* renamed bktel mibs
2021-04-16 13:50:56 +02:00
Tony Murray
c36fe928e4 Fix mini graphs (#12738)
Remove the polyfill, if the noscript tag isn't removed it breaks graphs
Ajax tables should not use lazy loading anyway...
2021-04-12 02:40:47 +02:00
Tony Murray
04407db85b Use native browser lazy load (#12720)
* Use native browser lazy load
Polyfill for older

* Add intersection polyfill for IE and older browsers
2021-04-08 11:24:53 +02:00
Tony Murray
500f50e867 JS fixes for IE (#12721)
* JS fixes for IE
just a couple that caused the issues with graph loading and widget settings not saving.

* remove polyfill

* Update ports.inc.php
2021-04-08 11:22:44 +02:00
Tony Murray
1c379dcd05 Remove legacy function calls (#12651)
* massive inlines

* fix style and wtf

* remove rrdtool.inc.php include

* fix CommonFunctions namespace issues

* looking for missing class space, fix undefined class issues

* style fixes
2021-03-29 00:25:30 +02:00
Lucas Dousse
afa43a1b7f add css text center (#12608) 2021-03-11 18:26:06 +01:00