Commit Graph

737 Commits

Author SHA1 Message Date
Jellyfrog 475a82bab6 Update dependencies (#13684)
* Update dependencies

  - Upgrading asm89/stack-cors (v2.0.3 => v2.1.1)
  - Upgrading barryvdh/laravel-debugbar (v3.6.3 => v3.6.5)
  - Upgrading barryvdh/laravel-ide-helper (v2.10.0 => v2.11.0)
  - Upgrading composer/ca-bundle (1.2.11 => 1.3.1)
  - Upgrading composer/composer (2.1.9 => 2.2.4)
  - Locking composer/pcre (1.0.0)
  - Upgrading composer/semver (3.2.5 => 3.2.7)
  - Upgrading composer/spdx-licenses (1.5.5 => 1.5.6)
  - Upgrading composer/xdebug-handler (2.0.2 => 2.0.4)
  - Upgrading doctrine/dbal (2.13.4 => 2.13.7)
  - Upgrading doctrine/inflector (2.0.3 => 2.0.4)
  - Upgrading doctrine/lexer (1.2.1 => 1.2.2)
  - Upgrading dragonmantank/cron-expression (v3.1.0 => v3.3.1)
  - Upgrading facade/ignition (2.15.0 => 2.17.4)
  - Upgrading fakerphp/faker (v1.16.0 => v1.17.0)
  - Upgrading fgrosse/phpasn1 (v2.3.0 => v2.4.0)
  - Upgrading filp/whoops (2.14.4 => 2.14.5)
  - Upgrading friendsofphp/php-cs-fixer (v2.19.2 => v2.19.3)
  - Upgrading fruitcake/laravel-cors (v2.0.4 => v2.0.5)
  - Upgrading graham-campbell/result-type (v1.0.3 => v1.0.4)
  - Upgrading guzzlehttp/guzzle (7.4.0 => 7.4.1)
  - Upgrading guzzlehttp/promises (1.5.0 => 1.5.1)
  - Upgrading laravel/dusk (v6.19.2 => v6.21.0)
  - Upgrading laravel/framework (v8.65.0 => v8.80.0)
  - Upgrading laravel/serializable-closure (v1.0.3 => v1.0.5)
  - Upgrading laravel/tinker (v2.6.2 => v2.7.0)
  - Upgrading laravel/ui (v3.3.0 => v3.4.1)
  - Upgrading league/commonmark (1.6.6 => 1.6.7)
  - Upgrading league/flysystem (1.1.5 => 1.1.9)
  - Upgrading league/mime-type-detection (1.8.0 => 1.9.0)
  - Upgrading maximebf/debugbar (v1.17.2 => v1.17.3)
  - Upgrading minishlink/web-push (v6.0.5 => v6.0.7)
  - Upgrading nesbot/carbon (2.53.1 => 2.55.2)
  - Upgrading nikic/php-parser (v4.13.0 => v4.13.2)
  - Upgrading nunomaduro/collision (v5.10.0 => v5.11.0)
  - Upgrading nunomaduro/larastan (1.0.0 => 1.0.2)
  - Upgrading nunomaduro/laravel-console-summary (v1.7.1 => v1.8.0)
  - Upgrading paragonie/constant_time_encoding (v2.4.0 => v2.5.0)
  - Upgrading php-amqplib/php-amqplib (v3.0.0 => v3.1.2)
  - Upgrading php-flasher/flasher (v0.9.4 => v0.9.6)
  - Upgrading php-flasher/flasher-laravel (v0.9.4 => v0.9.6)
  - Upgrading phpdocumentor/type-resolver (1.5.1 => 1.6.0)
  - Upgrading phpmailer/phpmailer (v6.5.1 => v6.5.3)
  - Upgrading phpoption/phpoption (1.8.0 => 1.8.1)
  - Upgrading phpseclib/phpseclib (3.0.10 => 3.0.12)
  - Upgrading phpspec/prophecy (1.14.0 => v1.15.0)
  - Upgrading phpstan/phpstan (1.0.1 => 1.4.2)
  - Upgrading phpunit/php-code-coverage (9.2.7 => 9.2.10)
  - Upgrading phpunit/php-file-iterator (3.0.5 => 3.0.6)
  - Upgrading phpunit/phpunit (9.5.10 => 9.5.11)
  - Upgrading predis/predis (v1.1.9 => v1.1.10)
  - Upgrading psy/psysh (v0.10.9 => v0.11.1)
  - Upgrading sebastian/exporter (4.0.3 => 4.0.4)
  - Upgrading seld/phar-utils (1.1.2 => 1.2.0)
  - Upgrading symfony/console (v5.3.7 => v5.4.2)
  - Upgrading symfony/css-selector (v5.3.4 => v5.4.2)
  - Upgrading symfony/debug (v4.4.31 => v4.4.36)
  - Upgrading symfony/error-handler (v5.4.0 => v5.4.2)
  - Upgrading symfony/filesystem (v5.3.4 => v5.4.0)
  - Upgrading symfony/finder (v5.3.7 => v5.4.2)
  - Upgrading symfony/http-foundation (v5.4.0 => v5.4.2)
  - Upgrading symfony/http-kernel (v5.4.0 => v5.4.2)
  - Upgrading symfony/mime (v5.4.0 => v5.4.2)
  - Upgrading symfony/options-resolver (v5.3.7 => v5.4.0)
  - Upgrading symfony/polyfill-ctype (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-iconv (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-intl-grapheme (v1.23.1 => v1.24.0)
  - Upgrading symfony/polyfill-intl-idn (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-intl-normalizer (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-mbstring (v1.23.1 => v1.24.0)
  - Upgrading symfony/polyfill-php72 (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-php73 (v1.23.0 => v1.24.0)
  - Upgrading symfony/polyfill-php80 (v1.23.1 => v1.24.0)
  - Upgrading symfony/polyfill-php81 (v1.23.0 => v1.24.0)
  - Upgrading symfony/process (v5.3.7 => v5.4.2)
  - Upgrading symfony/routing (v5.3.7 => v5.4.0)
  - Upgrading symfony/stopwatch (v5.3.4 => v5.4.0)
  - Upgrading symfony/string (v5.3.7 => v5.4.2)
  - Upgrading symfony/translation (v5.3.9 => v5.4.2)
  - Upgrading symfony/var-dumper (v5.4.0 => v5.4.2)
  - Upgrading symfony/yaml (v4.4.29 => v4.4.36)
  - Upgrading tecnickcom/tcpdf (6.4.2 => 6.4.4)
  - Upgrading tijsverkoyen/css-to-inline-styles (2.2.3 => 2.2.4)
  - Upgrading vlucas/phpdotenv (v5.3.1 => v5.4.1)

* Update debugbar facade path

* Update baseline
2022-01-23 19:43:48 +01:00
Andrea Beccaris 0fc2f9e4c9 Add API-routes for listing MPLS SAPs and services (#13561)
* add apis for mpsl services and saps

* updated docs

* removed dbFetch, orm instead

* changed queries

* Removed unused variables

* Update api_functions.inc.php

* Update api_functions.inc.php

* Update api_functions.inc.php

* Update api_functions.inc.php

Co-authored-by: laf <gh+n@laf.io>
2022-01-20 08:15:23 -06:00
SourceDoctor f9f0d6ca8e sort Vlan Ports by ifName, ifDescr (#13657)
* sort Vlan Ports by Name

* .
2022-01-09 08:45:45 -06:00
Peca Nesovanovic 2d57e49caf Teleste Luminato ports & qam/asi output sensors & yaml (#13616)
* Luminato: bitrate sensor

* bitrate sensor Eloquent

* luminato ports

* luminato ports styleci

* luminato QAM/ASI sensor

* luminato QAM/ASI sensor styleci

* YAML & test

* drop debug $ver from sensor type

* mess with Teleste ifExtPhysInterface/ifExtLogiInterface

* styleci

* test data

* mistake in port discovery

* left out Graphs->Health->Overview->Bitrate label

* fixed Bitrate graph, copy/paste errors
2022-01-08 18:17:08 +01:00
Peca Nesovanovic dc73154ae6 VLANs sort in GUI (#13628) 2021-12-20 12:01:39 +01: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
Peca Nesovanovic d4022e2d4e ipv6 discovery switch to new DB syntax (#13591)
* ipv6 discovery switch to Laravel

* styleci

* cleanup

* last dbfetch removed

* styleci & unneeded IF

* switched to updateOrCreate
2021-12-01 22:52:37 -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 9d2633bf09 Escape net-snmp unformatted strings, try 2 (#13584)
* Escape net-snmp unformatted strings, try 2

* Add some tests
2021-11-30 00:12:42 -06:00
SourceDoctor 5e4e2c423c Availibility Map - show Display Name if set (#13574) 2021-11-28 12:08:44 +01:00
Tony Murray b94f08cfdb Remove color markers when logging to files (#13541)
* Remove color markers when logging to files

* Update lint

* safety checks

* back to simple formatters, but two of them

* more correct comment
2021-11-24 23:33:02 +01:00
Tony Murray 716725758d Fix bug in Device::name() (#13543) 2021-11-19 12:21:56 -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 69d0753ec4 lnms snmp:fetch query multiple devices (#13538)
* lnms snmp:fetch query multiple devices
Allows regex and all device spec input

* Fix lint

* fix regexp
2021-11-18 15:35:19 -06:00
Tony Murray c79b187d72 Poller rewrite (Try 2) (#13525)
* core WIP

* try to finish up

* trim space too
and a couple of cleanups

* update test data

* put escapes back

* another net-snmp difference

* correct copy paste error

* WIP

* Use new code YAY

* a tiny bit more

* Kind of working

* Handle manual modules correctly

* convert core to modern module

* Only save metrics if modules is not overridden

* correct module exists check

* database error handling

* debug handling

* restore bad changes

* Introduce Actions
 RunAlertRulesAction
 UpdateDeviceGroupsAction

* tweaks to output

* Fix some issues in outside code

* Style fixes

* fixes to module status checks

* typehints!

* Use logger only and DI

* OS module not named correctly

* Work on quiet output a bit more

* generically don't change output when disabling debug if the driver is already stack

* Fix missing $device variable for legacy os polling
Fix missing dbFacile functions when no legacy modules polled in RunAlertRulesAction

* restore legacy os module shim

* use the new poller code for tests

* PollingDevice event

* Fix some issues and enable/disable error reporting around legacy modules

* typehints

* fully update baseline

* Use Process for version commands so we don't leak debug output.

* don't detect rrdtool version in ci every time

* style fixes

* Warning fixes

* more fixes

* re-update baseline

* remove diff noise

* fix up alerts

* Catch exceptions in device ip lookup

* Revert accidental snmp.inc.php poller target change
(should have been ?: not ??)
2021-11-17 19:23:55 -06:00
Tony Murray 562af58c7f Fix plugin_active check when plugin is not found (#13531)
* Fix plugin_active check when plugin is not found

* update baseline

* revert incorrect commit
2021-11-17 22:08:56 +01:00
Tony Murray f8764ddcb5 Revert "Poller command rewrite (#13414)" (#13524)
This reverts commit 1752d1efd4.
2021-11-16 21:40:29 -06:00
Tony Murray 1752d1efd4 Poller command rewrite (#13414)
* core WIP

* try to finish up

* trim space too
and a couple of cleanups

* update test data

* put escapes back

* another net-snmp difference

* correct copy paste error

* WIP

* Use new code YAY

* a tiny bit more

* Kind of working

* Handle manual modules correctly

* convert core to modern module

* Only save metrics if modules is not overridden

* correct module exists check

* database error handling

* debug handling

* restore bad changes

* Introduce Actions
 RunAlertRulesAction
 UpdateDeviceGroupsAction

* tweaks to output

* Fix some issues in outside code

* Style fixes

* fixes to module status checks

* typehints!

* Use logger only and DI

* OS module not named correctly

* Work on quiet output a bit more

* generically don't change output when disabling debug if the driver is already stack

* Fix missing $device variable for legacy os polling
Fix missing dbFacile functions when no legacy modules polled in RunAlertRulesAction

* restore legacy os module shim

* use the new poller code for tests

* PollingDevice event

* Fix some issues and enable/disable error reporting around legacy modules

* typehints

* fully update baseline

* Use Process for version commands so we don't leak debug output.

* don't detect rrdtool version in ci every time

* style fixes

* Warning fixes

* more fixes

* re-update baseline

* remove diff noise

* fix up alerts
2021-11-16 16:59:46 -06:00
Tony Murray 7e98e03338 Polling cleanup, fix PHP warnings (#13460)
* Fix warnings up to Arbos

* fixes a-c

* a-r

* a-vrp

* There and back again

* Update test data, couple fixes

* PHPSStan fixes

* style fixes, and fix Asyncos, whoops

* flip serial back.......

* less bogus data

* Poweralert sysName during polling too

* make sure things are calculated in the correct order

* fix style and bad nullables

* update test data

* A comple more conversions

* cambium ptp, misc, and hardware_mib

* remaining except vmware-esxi

* Fixes

* Update baseline

* fixes and fix up baseline

* adjust SnmpQueryMock to upstream options change

* data corrections

* restore slashes

* correctly handle all options input in SnmpQueryMock

* undo ftos changes

* restore vccodec sysDescr
2021-11-14 14:58:13 -06:00
Tony Murray 0adf37b4e1 OSPF port module (#13498)
* OSPF to module

* Update mock

* lint and style fixes

* enums as strings
2021-11-12 13:49:09 -06:00
PipoCanaja 29f1cb53ab Added TOS support for fping (#13496)
* TOS support for fping in LibreNMS/Data/Source/Fping.php

* TOS support for fping in app/Jobs/PingCheck.php

* Doc

* Improve doc
2021-11-11 22:33:01 +01:00
Tony Murray 15632bb875 Fix net-snmp unformatted strings (#13486)
* Fix net-snmp unformatted strings
When net-snmp returns an unformatted string (with quotes around it), it also has backslashes to escape certain characters.  Remove those.

* Clean up sysDescr and sysName when setting to Device model.

* Lint fixes

* Hmm, additional formatting spots
2021-11-10 20:48:22 -06:00
Tony Murray f4ee508f31 Run phpstan locally with lnms dev:check lint (#13458)
* Run phpstan locally with `lnms dev:check lint`
Separate result cache for deprecated functions so we don't break the cache every time.

* Skip phpstan flag
Skip all lints on ci except php lint (so we can check on multiple php versions)

* forgot default value

* fix up test cases

* Update LibreNMS/Util/CiHelper.php

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

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2021-11-03 00:17:35 +01:00
Tony Murray 2c77edf4d2 Better handling of some alerting errors (#13446)
* Better handling of some alerting errors

* Better error output

* Consolidate simple template parsing

* Fixes reported by phpstan (one was a bug, yay!)

* add back forgotten trim

* don't remove the template if there is no match

* Match previous behavior, which was inconsistent.

* use anonymous class for tests instead

* Oopsie, Stringable is PHP8+

* fix style
2021-10-29 22:12:20 -05:00
Tony Murray 99d2462b80 Fix widget title injection vulnerability (#13452)
Prevent html/js code from being injected into widget titles.
2021-10-29 20:34:24 -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 38773598e0 Fix syslog widget priority filtering (#13411)
* Fix widget filtering
syslog stores priority as a string
filter strings, not numbers

* Add enums for SyslogSeverity and CheckStatus
2021-10-29 10:32:36 +02:00
Peca Nesovanovic 08dd8a07db Mikrotik vlans discovery, v2 (#13427)
* Mikrotik vlans discovery, v2

* styleci cleanup

* added Routeros entry in mkdocs.yml

* fixed typo in mkdocs.yml

* Better Vlan Eloquent Model

* Missed one

* Use new SnmpQuery code

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-10-26 18:31:44 -05:00
Tony Murray 5fafb11c8f Rename concrete SnmpQuery class to avoid confusion (#13412) 2021-10-23 01:43:55 -05:00
Tony Murray 50cf1a49f1 Kick other sessions when changing password (#13194)
* Kick other session when changing password
Invalidate other sessions when a user password gets changed

* Don't logout admin users when they change passwords.
Cleanup phpstan exceptions

* only restore user if needed

* comment odd behavior

* $current_user typehint
2021-10-21 17:25:38 -05:00
Tony Murray fb934e2ede Disable ExamplePlugin (#13391) 2021-10-20 08:02:01 -05:00
PipoCanaja c8b394f317 bug - Fix missing uptime in fillable (Device Model) (#13387)
Seems that uptime is not fillable, but it used in the new rewrite of Core Module. This fixes it. A few devices in my master instance failed with uptime
2021-10-19 19:08:10 -05:00
Tony Murray f94f7f23b8 Fully convert core to a modern module (#13347)
* Core module WIP

* update OS::make()

* core WIP

* try to finish up

* switch all core do os Model

* Mock WIP

* Working tests

* cleanup

* phpstan fixes

* style fixes

* fix agent

* trim space too
and a couple of cleanups

* corrected ios test data

* missed space

* update test data

* put escapes back

* another net-snmp difference

* Fix class description

* revert snmp.inc.php change, that can be a different PR

* revert snmp.inc.php change, that can be a different PR
2021-10-19 15:43:43 -05:00
Jellyfrog 5edbd29f69 Fix regression from #12998 (#13385) 2021-10-19 17:20:32 +02: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
ottorei d3726e6bdc Update alertlog-widget to allow filtering by device group (#13380)
* Add group filter to alertlog widget

* Remove extra characters from settings

* Apply fixes from StyleCI

Co-authored-by: ottorei <ottorei@users.noreply.github.com>
2021-10-19 06:18:29 +03:00
Tony Murray 4e94c1e0a1 Rename NetSnmp to SnmpQuery (#13344)
* Rename NetSnmp to SnmpQuery
Always resolve a new instance.  It was not expected to be a singleton, set options persisted.
This means numeric() works properly now

* fix snmpfetch call and style

* Ability to set device from device array
2021-10-07 17:03:53 -05: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 b5b532fbc5 Automatically set rrdtool_version once (#13327)
* Automatically set rrdtool_version once
on first run if not already set

* In about controller too
2021-10-04 23:05:42 +02:00
Nash Kaminski 3a0d4e60f1 Rename config var auth_redirect_handler -> auth_logout_handler (#13329)
This change addresses a typo introduced in the refactor of
https://github.com/librenms/librenms/pull/13311/commits/d4325a2e9ef9c324af84d4b5840e2d1047bc1ad9
which makes the variable name inconsistent with the documentation.
2021-10-04 22:15:06 +02:00
Tony Murray aa35d2f0c0 Connectivity Helper to check and record device reachability (#13315)
* Fping WIP

* Update availability, move ping rrd update in the same place as db update.

* move classes around

* make device:ping command work

* use new code, remove legacy code

* save metrics boolean prevents all saves
style fixes

* update device array

* style fixes

* Update unit test

* fix whitespace

* Fix Fping stub

* fix backwards if

* fix phpstan complaining

* Fix return type

* add fillable to DeviceOutage model.

* device_outage migration to add id...

* missed line in db_schema.yaml

* 1 billion more comments on the brain damage up/down code

* tests for status and status_reason fields

* fix style again :D

* Duplicate legacy isSNMPable() functionality
but with only one snmp call ever 😎

* Remove unused variable

* fix migrations for sqlite
2021-10-03 22:45:10 -05:00
Tony Murray d443d2b4b1 Use built in trusted proxy functionality (#13318)
* Use built in trusted proxy functionality
instead of fideloper/proxy

* my favorite style rule...

* hello braindead ide

* restore space
2021-10-03 14:13:20 -05:00
SourceDoctor 8e1b9e2989 Show Detail by default Option on Alert Widget (#13309)
* Show Detail by default on Alert Widget

* .

* change to row count length limitation

* .

* .
2021-10-03 01:12:18 +02:00
Jellyfrog 9ef94323f5 Update dependencies (#13310)
* Bump composer dependencies

  - Upgrading brick/math (0.9.2 => 0.9.3)
  - Upgrading composer/ca-bundle (1.2.10 => 1.2.11)
  - Upgrading composer/composer (2.1.3 => 2.1.8)
  - Upgrading composer/xdebug-handler (2.0.1 => 2.0.2)
  - Upgrading dapphp/radius (2.5.5 => 2.5.6)
  - Upgrading doctrine/annotations (1.13.1 => 1.13.2)
  - Upgrading doctrine/cache (2.0.3 => 2.1.1)
  - Upgrading doctrine/dbal (2.13.2 => 2.13.3)
  - Upgrading facade/flare-client-php (1.8.1 => 1.9.1)
  - Upgrading facade/ignition (2.11.0 => 2.14.0)
  - Upgrading fakerphp/faker (v1.15.0 => v1.16.0)
  - Upgrading filp/whoops (2.13.0 => 2.14.3)
  - Upgrading friendsofphp/php-cs-fixer (v2.19.0 => v2.19.2)
  - Upgrading graham-campbell/result-type (v1.0.1 => v1.0.2)
  - Upgrading laravel/dusk (v6.15.1 => v6.18.1)
  - Upgrading laravel/framework (v8.49.2 => v8.62.0)
  - Locking laravel/serializable-closure (v1.0.2)
  - Upgrading laravel/tinker (v2.6.1 => v2.6.2)
  - Upgrading league/commonmark (1.6.5 => 1.6.6)
  - Upgrading league/flysystem (1.1.4 => 1.1.5)
  - Upgrading league/mime-type-detection (1.7.0 => 1.8.0)
  - Upgrading maximebf/debugbar (v1.16.5 => v1.17.1)
  - Upgrading mockery/mockery (1.4.3 => 1.4.4)
  - Upgrading monolog/monolog (2.3.0 => 2.3.4)
  - Upgrading nesbot/carbon (2.50.0 => 2.53.1)
  - Upgrading nikic/php-parser (v4.11.0 => v4.13.0)
  - Upgrading nunomaduro/collision (v5.5.0 => v5.10.0)
  - Upgrading phar-io/manifest (2.0.1 => 2.0.3)
  - Upgrading php-parallel-lint/php-parallel-lint (v1.3.0 => v1.3.1)
  - Upgrading phpdocumentor/type-resolver (1.4.0 => 1.5.0)
  - Upgrading phpmailer/phpmailer (v6.5.0 => v6.5.1)
  - Upgrading phpoption/phpoption (1.7.5 => 1.8.0)
  - Upgrading phpseclib/phpseclib (3.0.9 => 3.0.10)
  - Upgrading phpspec/prophecy (1.13.0 => 1.14.0)
  - Upgrading phpstan/phpstan (0.12.92 => 0.12.99)
  - Upgrading phpunit/php-code-coverage (9.2.6 => 9.2.7)
  - Upgrading phpunit/phpunit (9.5.6 => 9.5.10)
  - Upgrading predis/predis (v1.1.7 => v1.1.8)
  - Upgrading ramsey/collection (1.1.3 => 1.2.1)
  - Upgrading ramsey/uuid (4.1.1 => 4.2.3)
  - Upgrading seld/phar-utils (1.1.1 => 1.1.2)
  - Upgrading symfony/console (v5.3.2 => v5.3.7)
  - Upgrading symfony/css-selector (v5.3.0 => v5.3.4)
  - Upgrading symfony/debug (v4.4.25 => v4.4.31)
  - Upgrading symfony/error-handler (v5.3.3 => v5.3.7)
  - Upgrading symfony/event-dispatcher (v5.3.0 => v5.3.7)
  - Upgrading symfony/filesystem (v5.3.3 => v5.3.4)
  - Upgrading symfony/finder (v5.3.0 => v5.3.7)
  - Upgrading symfony/http-foundation (v5.3.3 => v5.3.7)
  - Upgrading symfony/http-kernel (v5.3.3 => v5.3.9)
  - Upgrading symfony/mime (v5.3.2 => v5.3.8)
  - Upgrading symfony/options-resolver (v5.3.0 => v5.3.7)
  - Upgrading symfony/polyfill-intl-grapheme (v1.23.0 => v1.23.1)
  - Upgrading symfony/polyfill-mbstring (v1.23.0 => v1.23.1)
  - Upgrading symfony/polyfill-php80 (v1.23.0 => v1.23.1)
  - Locking symfony/polyfill-php81 (v1.23.0)
  - Upgrading symfony/process (v5.3.2 => v5.3.7)
  - Upgrading symfony/routing (v5.3.0 => v5.3.7)
  - Upgrading symfony/stopwatch (v5.3.0 => v5.3.4)
  - Upgrading symfony/string (v5.3.3 => v5.3.7)
  - Upgrading symfony/translation (v5.3.3 => v5.3.9)
  - Upgrading symfony/var-dumper (v5.3.3 => v5.3.8)
  - Upgrading symfony/yaml (v4.4.26 => v4.4.29)
  - Upgrading tecnickcom/tcpdf (6.4.1 => 6.4.2)
  - Upgrading theseer/tokenizer (1.2.0 => 1.2.1)

* Update npm dependecies

* Update phpstan ignores after laravel upgrades

* Merge laravel/laravel repo changes
2021-10-02 18:04:59 -05:00
SourceDoctor 30c20fa11f hrsystem write fix (#13314) 2021-10-02 18:03:24 -05:00
Nash Kaminski cb56ae5f46 Improvements to SSO Authorization and logout handling (#13311)
* Improvements to SSO Authorization and logout handling

Changes:
* Adds support for a default access level in the SSO authorization
  plugin when group mapping is enabled.
* Restore functionality of the auth_logout_handler configuration option,
  allowing the user to be redirected to a configured URL to complete
  logout from an external IdP.
* Documentation and test coverage updates

* Set sso.static_level to 0 in AuthSSOTest:testGroupParsing()

* Simplify implementation to use default values in Config::get()
2021-10-02 08:02:42 -05:00
SourceDoctor f47410e426 log count of logged in users in Database (#13137)
* log count of logged in users in Database

* .

* rewrite Code

* create hrSystem Table

* .

* .

* db adjustments

* adjust db Table

* .

* adjust db Table

* table redesign

* .

* .
2021-10-02 01:58:26 +02:00
Tony Murray a828bb00c3 lnms snmp:fetch command and new SNMP code (#13303)
* SNMP WIP

* cleanup, more types

* Include my snmp:fetch command

* Fix Facade name conflict

* Command WIP
remove mib

* Ignore exit code
cleanups

* Doc blocks and style fixes

* forgot to use parseOid

* Hopefully final fixes

* missed on (:

* small changes
deviates from existing code, hopefully doesn't re-add too many corner cases.

* add some simple tests, will make it easier to add more in the future when we find corner cases.

* test numeric

* API refinements, try to avoid setting textual net-snmp options directly

* change numeric to a toggle makes for nicer usage

* make ci happy

* Some errors happen only in stderr, pass that to SnmpResponse for parsing.
Add error message access

* More consistent naming
2021-10-01 18:58:12 -05:00
Cupid@zul d63656c1e0 add eventlog on_create device
* add eventlog on_create device

* add snmpV3 vars

* styleci minor fix
2021-10-01 14:04:42 -05:00