Commit Graph

229 Commits

Author SHA1 Message Date
SourceDoctor 17f5a3f232 Copy Dashboard to other User (#11989)
* Copy Dashboard to other User

* travis fix

* only allow Dashboard Copy to Admins

* rewrite query

* move Controller to Eloquent

* optimize row copy

* travis ...

* move copy field to edit section

* code changes

* code changes

* limit copy feature to admins

* .
2021-01-29 08:28:47 -06:00
Jellyfrog 53bc78c9d9 CVE-2020-35700 (#12422)
* CVE-2020-35700

* wip

* Update function to match usage

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-01-07 12:44:27 +01:00
SourceDoctor 590b3ad123 Show Device Group on Map (#12379)
* Show Device Group on Map

* style fix

* .

* .
2021-01-02 22:06:52 +01:00
Tony Murray 39f6b35bf0 Respect device access for health mempools page (#12356) 2020-11-25 10:43:57 -06:00
Tony Murray f2f169ae78 Modernize mempools (#12282)
* mempools to modern module
quick hacky hrstorage port

* port ucd-snmp-mib to Mempools

* Populate DB for ucd
Prep for yaml

* initial yaml attempt

* more complex conversions
fixes to YamlDiscovery, make leading $ optional and allow mib::oid format

* walk full tables and skip values
normalize percentages above 100

* handle precent only ones (specify total as 100)

* Move default polling out of YamlMempoolsDiscovery

* fixes

* Update test data hrstorage should be correct.

* perc_warn for hrstorage

* Host Resources, record buffer, cached, and shared

* Host Resources is always better, don't do both HR and UCD

* fix unix, include warning levels

* variable size

* consolidate skip_values

* define mempools schema

* number instead of integer

* more schema refactor

* one more skip_values reference

* throw error for invalid oid translation
aos6

* a*  and Cisco

* updated test data

* update almost all hrstorage data files

* b*

* c* with test data
use standard cache for hrStorage

* use cache for storage module too

* hand bsnmp properly

* bdcom

* exclude total oid from yaml so it is not polled
May add a way to ignore this behavior and poll it, but I don't know if that is needed.

* automatically handle percent only values

* ciscowlc

* only poll used or free if we have used, free, and total.

* fix skipping

* the dlinkoning
fix find value when value "name" is numeric

* support numeric oids

* dnos/ftos attempt

* I guess we can't filter on total > 0

* edgecos

* e*

* f WIP

* f*

* gwd (aka g*)

* h* + procurve

* i*

* j*

* m*

* support 0% used memory (however unlikely)

* n*

* CISCO-PROCESS-MIB memory, share cache with processors module

* ignore mempools with invalid total

* p*

* quanta

* r*
fix raisecom mibs terribly broken

* s-z

* style fixes

* Move VRP back to PHP and make it actually work

* fix zynos

* update schema

* Update Cisco processor data for description bug fixes

* fix comware processors

* comware mempools with memory size
default precision to 1

* sophos-xg updated data

* hrstorage use ram size for buffers, cache, and shared

* Show memory available instead of free in device overview

* UCD, use same rrd format, store available instead of free in the db.

* Calculate availability for HOST-RESOURCES-MIB

* Convert UCD to standard polling

* rename old rrd files

* initial graph work

* graph WIP

* Graph looking decent

* Graph looking decent for hr

* remove old ucd_graph code

* handle availability mempool
more graph cleanup

* color adjustments

* remove accidental free calculation

* Update test data and fix corner cases

* fis pfsense

* update schema

* add default value for mempool_class

* fix whitespace

* update schema

* update schema correctly

* one more time

* fortigate_1500d-sensors missing oids

* Update docs.

* fix indent

* add implements MempoolsDiscovery explicitly to OS

* remove ucd_memory graph references
remove unused device_memory graph

* remove unused functions

* set devices with mempools to rediscover to prevent/minimize gaps

* use a subquery

* add overview graph

* port health mempools table

* Update device mempool

* only show overview if multiple

* Don't override user set warn percentages in discovery

* fix missed usage

* fix style

* Safety check to not rename rrd files incorrectly if migration has not been run.

* Fix overview percent bar and represent available and used on the bar

* missed an item to convert to mempool_class

* percent on the wrong side
2020-11-23 15:35:35 -06:00
Jellyfrog 1220d583e9 Apply fixes from StyleCI (#12336) 2020-11-21 22:52:58 -06:00
Tony Murray 1afc6abdb5 Always return json for api requests (#12335)
even if the client does not properly request it
2020-11-22 03:21:47 +01:00
SourceDoctor a3470bb06e Custom_descr Ports - configurable Icons (#12331)
* Custom_descr Ports - configurable Icons

* fixes

* fixes
2020-11-20 20:59:54 -06:00
Jellyfrog cfd9dce620 Convert Virtual Machine pages to Laravel (#12287)
* Convert Virtual Machine pages to Laravel

* wip

* wip

* wip

* wip

* wip

* wip

* delete

* wip

* wip

* move powerStateLabel
2020-11-11 01:15:20 +01:00
Jellyfrog b7676e4cc8 Update to Composer 2 (#12263)
* Update to Composer 2

No need to roll our own checks anymore since this is now built in.
Also limit the update check to once a week.

* update

* Make Composer wrapper report correct exit code

* Update composer_wrapper.php

* re-enable extension check

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-11-09 00:28:07 -06:00
Jellyfrog 50c8033099 Laravel 8.x Shift (#12235)
* Shift HTTP kernel and middleware

* Shift service providers

* Shift console routes

* Shift to class based factories

* Namespace seeders

* Shift PSR-4 autoloading

* Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them. This allows you to review the commit
diff for once for customizations when you are done Shifting.

Moving forward, consider using ENV variables or create a separate
config file to allow the core config files to remain as default
as possible.

* Shift Laravel dependencies

* Shift return type of base TestCase methods

From the [PHPUnit 8 release notes][1], the `TestCase` methods below now declare a `void` return type:

- `setUpBeforeClass()`
- `setUp()`
- `assertPreConditions()`
- `assertPostConditions()`
- `tearDown()`
- `tearDownAfterClass()`
- `onNotSuccessfulTest()`

[1]: https://phpunit.de/announcements/phpunit-8.html

* Shift cleanup

* console routes

* composer update

* factories

* phpunit

* bootstrap pagination

* model factory

* wip

* Apply fixes from StyleCI (#12236)

* wip

* Apply fixes from StyleCI (#12238)

* wip

* wip

* wip

* wip

* Apply fixes from StyleCI (#12240)

* wip

* Apply fixes from StyleCI (#12242)

* composer update

* Bump to PHP 7.3 minimum

Co-authored-by: Laravel Shift <shift@laravelshift.com>
2020-11-03 10:18:31 -06:00
Jellyfrog 0b6231be1b Move device exist check to prevent error (#12232) 2020-10-20 13:28:03 +02:00
SourceDoctor b32aa03d57 Fix return value on deleting a Device Group (#12225)
* Fix return value on deleting a Device Group

* style fix
2020-10-19 12:27:17 +02:00
Tony Murray 0de03ad582 validate dashboard id (#12219) 2020-10-15 12:43:24 -05:00
Jellyfrog 3bfafc857f Convert Device>vlan view to Laravel (#12163)
* Convert Device>vlan view to Laravel
2020-10-14 19:40:44 -05:00
Negatifff 173ca83018 Refresh in widget settings (#12127)
* add timeout for widget in widget settings

* forgot get saved timeout and added default value for all widgets

* code correction

* move refresh to json

* forgot remove old code

* added refresh validate rule

* fix empty refresh for exist widgets

* fix empty settings for new widgets

* Set refresh in base
Update refresh at runtime (doesn't interrupt previous timeout)

* Update WidgetSettingsController.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-10-02 08:52:04 -05:00
Orsiris de Jong 9b9b26a007 Make sure 1st admin user creation does not fail with error 500 (#12119)
* Make sure 1st admin user creation does not fail with error 500

* Update MakeUserController.php

just init it to the default fail message

* Update MakeUserController.php

* just struggling with the github editor :P

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-09-22 07:41:52 -05:00
Jellyfrog 29f45ca352 Apply fixes from StyleCI (#12124) 2020-09-21 15:59:34 +02:00
Jellyfrog 0d56bbd946 Apply fixes from StyleCI (#12123) 2020-09-21 15:51:53 +02:00
Jellyfrog 77c531527c Apply fixes from StyleCI (#12117)
* Apply fixes from StyleCI

* Disable style check
2020-09-21 14:54:51 +02:00
SourceDoctor 65b294c7cb Fix to show Routing Count in Pagemenu Selector (#12111) 2020-09-20 01:24:53 +02:00
SourceDoctor a4d1f5e1c8 Show Device Outages as Log List (#12011) 2020-08-18 20:02:56 +02:00
Jellyfrog abc0ca85f6 Add default values to cast (#11977)
Makes the SQL query correctly select id columns as int instead of string
2020-08-04 14:41:10 +02:00
Jellyfrog cb0034d6a1 Restore device inventory logic after 055abcf (#11993) 2020-08-03 20:42:10 -05:00
Tony Murray a413187564 Fix encoded html entities in page title (#11979)
* Fix encoded html entities in page title
Seems short sections escape the content

* extra comment for clarification
2020-07-30 00:27:10 -05:00
Jellyfrog 2fc037ab23 Convert device notes to blade (#11952) 2020-07-22 09:18:56 -05:00
Cirno the Strongest 6448682b21 Fix missing Munin controller tab definition (#11943) 2020-07-18 18:15:19 -05:00
Tony Murray 0c334f130d Fix users that set a non-array for cors (#11921)
* Fix users that set a non-array for cors
combine two Env util classes

* Used the wrong thing.
2020-07-09 15:03:12 -05:00
Jellyfrog f526ba326b Laravel 7.x Shift (#11676)
* Shift bindings

PHP 5.5.9+ adds the new static `class` property which provides the fully qualified class name. This is preferred over using class name strings as these references are checked by the parser.

* Shift core files

* Shift to Throwable

* Shift Laravel dependencies
Add laravel/ui dependency
Use our fork of string-blade-compiler

* Shift config files

Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them so you can review the commit diff for
changes. Moving forward, you should use ENV variables or create a
separate config file to allow the core config files to remain
automatically upgradeable.

Restore config header comment

* Remove duplicate named routes

* add basic trust host middleware

* Trusted proxies should be default null

* Fix missed rename

* wip

* Rename routes

* Update trustedproxy.php

* Update Kernel.php

* revert trustedproxy.php

It only accepted '*' and not ['*']

* Fix tests

fake request was causing the error

Co-authored-by: Laravel Shift <shift@laravelshift.com>
Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-07-09 08:22:50 -05:00
Tony Murray 560fd71ef6 CORS settings in webui (#11912)
* Change CORS implementation
allows for upstream integration of Laravel 7

* migrate config

* skip implementing patterns for now

* Expose settings to the webui

* Make db settings apply
2020-07-08 07:36:51 -05:00
Tony Murray 44549ae63e Show poller settings even if distributed polling is disabled (#11893) 2020-07-03 00:37:37 -05:00
Tony Murray eb74af5756 Fix device up/down sort (#11891) 2020-07-03 00:36:01 -05:00
Tony Murray a312436bca Edit maintenance schedule, handle timezone properly (#11889)
Was not properly formatting to user's timezone
Also handle the case where the browser and server timezone don't match
don't show incorrect values in dialog then pop to the correct ones.
Update title on modal to be appropriate
2020-07-02 17:46:16 -05:00
Jellyfrog 5cf5627ff5 Simpler fix for 659325d5d0 (#11883) 2020-06-30 18:36:13 -05:00
Jellyfrog 659325d5d0 Prevent unauthorized access to device graphs
Users could access info for the wrong device by piggyback on port permissions
2020-06-30 13:35:45 +02:00
Tony Murray 2f2cd3404c installer fixes 2020-06-29 00:58:29 -05:00
Tony Murray d63b78b1af small clean ups 2020-06-27 07:47:08 -05:00
Tony Murray 46f0ad2110 style fixes 2020-06-27 07:47:08 -05:00
Tony Murray 685d1972f1 remove hard debug 2020-06-27 07:47:08 -05:00
Tony Murray 2c82e919f6 refined finish 2020-06-27 07:47:08 -05:00
Tony Murray 691a73caa6 consistency run through 2020-06-27 07:47:08 -05:00
Tony Murray e267ec1cab step status refactor 2020-06-27 07:47:08 -05:00
Tony Murray d1ceb14b9a create .env if non-existing 2020-06-27 07:47:08 -05:00
Tony Murray b1f526be48 finish conversion 2020-06-27 07:47:08 -05:00
Tony Murray 15cd2311cc User controller 2020-06-27 07:47:08 -05:00
Tony Murray 057f4c49fc db in one refactor WIP3 2020-06-27 07:47:08 -05:00
Tony Murray 246e6741a3 db in one refactor WIP2 2020-06-27 07:47:08 -05:00
Tony Murray 229a501d4f refactor 2020-06-27 07:47:08 -05:00
Tony Murray 5f0388f0e3 Remove DB credentials from config.php
Better validation when config.php does not exist

Update docs and quote password

only populate legacy vars in config_to_json
drop .travis.yml config copy
remove credentials from config.php.default

Check for existance of .env instead of config.php in python scripts

legacy credential cleanup

tiny cleanups

consistent env for artisan server and artisan dusk
2020-06-27 07:47:08 -05:00
Tony Murray 610475356f ajax step status check standardized 2020-06-27 07:47:08 -05:00