Commit Graph

2897 Commits

Author SHA1 Message Date
Neszt Tibor f30d5afa35 Added PPPoE Sessions Graph for Mikrotik (#10056) 2019-04-02 22:35:37 +02:00
smiles1969 c4fa3278b5 Add SysName to Oxidized view (#10012)
* Add sysName to Oxidized view

* Add sysName to Oxidized view

* Add force_ip_to_sysname check

* Add force_ip_to_sysname check

* Add force_ip_to_sysname check Config::get method

* Add force_ip_to_sysname check Config::get method

* Add force_ip_to_sysname check loose comparison

* Add force_ip_to_sysname check loose comparison

* Fix Spacing - Travis check

* Fix Spacing - Travis check

* Travis Check

* Travis Check

* Travis check changes

* Whitespace Travis Check

* Replace ifcheck with ternary operator

Always send column id tag, but hide SysName conditionally

* Move php tags

* Remove ifcheck
2019-04-01 22:19:31 -05:00
PipoCanaja 546849f326 Added Panduit Eagle-I (was Sinetica) (#10014)
* Panduit eagle-I

* tests

* mibfile

* over update

* tests redone with dynamic sensors
2019-03-24 18:45:50 -05:00
Yann Gauteron 76597ea94a Improving Health limits display (#10007) 2019-03-21 08:52:01 +01:00
Yann Gauteron 96797aa813 Beautify port health (#9981)
* Removal of the unused  variable
* Replace double quotes by single quotes when possible
* Adding spaces between operands of the concatenation operator
* Rewrite of code echoed to the browser
* Reuse the logic of the Device/Health page for displaying current and limit values
* New helper function to determine the unit for the different sensor classes
* Fixing wrong value for current unit
2019-03-20 16:17:49 +01:00
Misha Komarovskiy 55f4870b91 Added resources/sensors api call to list all sensors (#9837)
* Added resources/sensors api call to list all sensors

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* Use global read permission check

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* fix typo

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* fix another typo

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>

* Use laravel style for call

Signed-off-by: Misha Komarovskiy <zombah@gmail.com>
2019-03-19 08:22:39 -05:00
Tony Murray 00a1185980 New permissions code (#9986)
* Initial permissions

* initial tests

* updates

* finish tests, other tweaks

* update legacy permissions checks
remove global :D

* missed facade extend

* Update eloquent permissions to use the new facade and drop joins

* method descriptions

* more docs

* fix style
2019-03-19 08:14:01 -05:00
Tony Murray edd18b4f9f Fix world map when location has been deleted that a device still references (#9997) 2019-03-19 06:52:20 -05:00
Ryan Medlyn b237e42615 Add location to alert hostname tooltip (#9991) 2019-03-19 11:07:05 +01:00
PipoCanaja a2d378e0be Display Up/Down time in Device List (#9951)
* First attempt of Up/Down time

* First attempt of Up/Down time

* Moved to Time::formatInterval()

* cleaning

* last polled in casts

* Cleaning the variants of formatUptime()

* Cleaning in ./html/includes/dev-overview-data.inc.php

* Cleaning in ./html/includes/dev-overview-data.inc.php

* Cleaning in ./html/includes/dev-overview-data.inc.php

* updated includes/polling/core.inc.php

* updated includes/alerts.inc.php

* clean accessors
2019-03-17 21:09:58 -05:00
PipoCanaja 46839e09e7 Do not use $sensor[sensor_limit] if not available 2019-03-16 18:06:09 +01:00
Tony Murray c7c7b57de4 Always boot Laravel (#9842)
* Always boot Laravel
That way we can depend on it being available.
Saves us crashes if some code accidentally uses something that isn't booted and a lot of silly if/elses.

* ignore init php errors
2019-03-14 08:06:27 -05:00
PipoCanaja be58ec3b72 Fixed overview graph on Cisco ASA announcing all interfaces in type l2vlan (by default filtered) (#9849)
* Fix ASA announcing all interfaces in l2vlan
* Fix ASA announcing all interfaces in l2vlan
2019-03-13 09:04:51 +01:00
PipoCanaja 7b8ccc2ea2 Allowed 14 chars in graph legend for rrd descr. (#9926) 2019-03-12 08:57:56 +01:00
tarik e3e3de1442 Printer paper tray status and error states (#9859)
* adding paper tray status and error states

* adding paper tray test data

* Create jetdirect_papertray.json

* Store printer supply type

* Update json data

* fix style
2019-03-06 18:58:14 -06:00
KodApa85 7e71d2e11f webui: Allow admins to add/remove/create sticky notifications (#9865)
* webui:
Allow admins to add/remove/create sticky notifications
Added auth error to ajax form - notifications
	$status is already 'error'

* fix: code style

* remove demo check
2019-03-04 21:34:58 -06:00
Anthony Ruhier 914531a28f Fix display of rrdtool command using the existing dedicated function (#9846)
Sanitize the command before printing it
2019-02-21 22:27:15 +01:00
Tony Murray 0a56fc4694 Restore alert template converter for a while longer (#9845) 2019-02-19 00:33:51 -06:00
Neil Lathwood 5d74839139 Removed legacy transports and templates code (#9646)
* Removed legacy transports and templates code

* Add notification

* abstract LnmsCommand

* Only issue alerts "legacy" alerts to mail for default contacts, etc.

* Prevent no contacts error when default contact is not specified, or there are no contacts for other reasons.

* remove eval \o/

* Update notifications.rss
2019-02-15 07:58:59 -06:00
Tony Murray e18f4522d5 Update to Laravel 5.7 (PHP 7.3 support) (#9800)
* Move assets to 5.7 location

* Add 5.7 SVGs

* add cache data dir

* update QUEUE_DRIVER -> QUEUE_CONNECTION

* Update trusted proxy config

* update composer.json

* 5.5 command loading

* @php and @endphp can't be inline

* Laravel 5.6 logging, Nice!

* Update blade directives

* improved redirects

* remove unneeded service providers

* Improved debugbar loading

* no need to emulate renderable exceptions anymore

* merge updated 5.7 files (WIP)

* Enable CSRF

* database_path() call causes issue in init.php

* fix old testcase name

* generic phpunit 7 fixes

* add missed file_get_contents
Keep migrations table content

* fix duplicate key

* Drop old php versions from travis-ci

* remove hhvm

* fix code climate message

* remove use of deprecated function assertInternalType

* Disable CSRF, we'll enable it separately.
All forms need to be updated to work.

* Update document references
2019-02-12 17:45:04 -06:00
Tony Murray d2af4bef42 Fix alert log api (#9792)
* Fix alert log api
Can't send binary data through http :D

* fix whitespace
2019-02-07 09:42:16 -06:00
Tony Murray e5eb32c4a9 Migration fixes (#9776)
* add migrate:install to lnms, but hide it

* Fix Database migration validation

* remove extra import

* Don't allow install to continue if db build fails
2019-02-05 16:50:51 -06:00
TheGreatDoc 75927c8389 Revert "Mattermost Alert Transport (#9711)"
This reverts commit 09d500812e.
2019-01-26 07:59:04 +01:00
George Pantazis 09d500812e Mattermost Alert Transport (#9711)
* fixed #5659
Added support for Mattermost notifications.

George Pantazis <gpant@eservices-greece.com>

* Update Mattermost.php

* changes as requested by @murrant
2019-01-25 15:35:42 -06:00
Tony Murray 590c488d74 Rewrite devices page backend (and a little frontend) (#9726)
* Implement devices table data output

* initial filter

* Add select2 filters
improve table header layout
improve init_select2

* bump versions to be safe

* add group filtering
fix location sorting

* allow filter value morphing

* add missing state filter

* remove the old devices endpoint
2019-01-25 15:31:33 -06:00
Tony Murray ce6fae8dd1 Rewrite netcmd and ripe whois tools (#9724)
* Port RIPE whois to Laravel

* remove netcmd.php and port to laravel.
Escape CLI and set it to stream output live.

* fix browser buffer bust on a few browsers.
2019-01-25 15:30:58 -06:00
Tony Murray 59aa4f36e9 Handle db update errors better in the installer (#9701)
* Handle db update errors better in the installer

* show retry button on error, add exclamation point so we don't do that accidentally
2019-01-23 23:42:19 -06:00
Tony Murray 45e0e5e19a count sensor cleanups (#9707) 2019-01-20 13:37:08 -06:00
Martijn Schmidt e0da083f5c New OS: Schleifenbauer, entity-physical improvements, various html page fixes (#9471)
* Fix some comment and documentation typos.

* Fix various entphysical page display issues.

- Resolve flickering during loading (missing liClosed for nested items).
- Clicking a sensor actually takes you to the matching graph now.

* Add a few nicecase() calls to clean up html page display.

* Create discover_entity_physical() function

- Add discover_entity_physical() function into includes/discovery/functions.inc.php
- This allows for an easy implementation of OS-specific entity-physical discovery.
- Update includes/discovery/entity-physical/entity-physical.inc.php to use the new function.

* Add power_consumed and power_factor sensors.

* Two new icons, make more entPhysical data visible.

* Pre-commit fix: blank line found at end of control structure.

* Add Schleifenbauer OS support.

* Now really fix the comment typo.

* Fix parsing mistakes.

* Add a generic count sensor.

* Make the Schleifenbauer discovery use count instead of state sensors.

* Don't place count sensor at the top, add sane limits for Schleifenbauer

* Finetuning the rrd_options, changing Schleifenbauer sensor names.

* Update schleifenbauer.svg

* optimize logo too

* add test data

* fix sensor value display (spaces break it)

* update entPhysicalIndex
2019-01-20 12:24:11 -06:00
Tony Murray ef41c9fd7d Refactor FDB Tables to Laravel (#9669)
* Refactor FDB Tables to Laravel
Hopefully much better performance with large tables.
Better dns resolution (limit to 4 IPs tried per MAC)

* update style

* de-duplicate IPs

* fixed column width for mac and vlan

* Make DNS column visibility control whether or not we send the dns query.
Hide that column by default.
2019-01-20 08:43:36 -06:00
djamp42 73fa616739 Cable Modem Graphs for TopVision OS (#9679)
* Add custom CM Graphs for TopVision OS

* updated test data
2019-01-17 11:43:18 -06:00
Paul Heinrichs ebe2ecf524 Laravel migrations (#8868)
* Add migrations and seeds

* Fix spacing validation issues

* Fix linting

* Update tabs to spaces

* Update daily and install process

* Make build-base.php use the new migrations if empty or at dbschema 1000.
Seed 1000 into the database.
Temp fix for the route table index length (this table basically isn't used...)

* Fix typo in seed.
Hard code legacy schema checks to version 1000 (999 would have worked as is)

* Port association table no longer exists

* Make database validate again

* DB schema, remove as many DB::statement as possible

* update migrations
add librenms cli entry point (artisan)
update validate to check laravel migrations

* remove statements from users migration

* Fix up daily.sh and the 1000 migration

* Update migrations to current state
Take advantage of environment variables to set DB credentials.

* Fix style issues

* Update schema

* fix test db collation

* Fix migration table definition

* update db migrations

* Update migrations

* Update stats callback.  Just count the total migrations applied.

* Update 1000.sql.

* update migrations

* remove the graph type seeder, it is no longer needed

* update docs

* fix whitespace

* remove extra schema

* update tests

* fix sort

* add message

* dbSchema should actually be 1000

* add character set to db create

* Fix some artisan issues

* Update schema
2019-01-14 06:44:23 -06:00
Tony Murray daffa7e274 Eventlog updates (#9633)
* Eventlog updates
remove host from eventlog table, retain in api
allow most fields nullable

* updated schema

* revert auth for legacy log_event function
safer check in the model

* add function modifiers
2019-01-10 00:52:00 -06:00
Tony Murray a97ccda0b9 Fix wireless sensor edit messages and collection alert rule (#9624)
* Fix wireless sensor edit messages and collection alert rule

* fix alert rule quotes

* json type
2019-01-09 19:40:27 -06:00
Tony Murray c6e5a3f283 Pressing enter on global search goes to the first result (#9587) 2019-01-08 20:14:15 -06:00
Tony Murray f10cbddacc Refactored Alert schedule (#9514)
* add AlertSchedule model and relationships
change table structure to match the expected layout

* Update maint schedule map ui

* better index name

* Laravel queries
fix some issues with the ui: restricting start incorrectly and loading empty days error

* handle date limiting properly

* Another attempt add schedule constraints

* use Auth

* Update WorldMap widget to use check isUnderMaintenance

* Rename 275.sql to 276.sql

* Rename 276.sql to 277.sql
2019-01-03 22:42:12 +00:00
hexdump0x0200 3991e08cf9 Added automatic generation of the list of available transports (alerting) (#9544)
DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.


This patch allows you to avoid manually adding a transport to the list of available transports. In addition, in custom installations, where their own transports were added, the need to manually update the file "html/includes/modal/edit_alert_transport.inc.php" broke the automatic update (git detected a conflict and required manual solution). With this patch, you can avoid this, add local transports that remain outside the git repository and there is no need to create and maintain your fork in order to add your transports or add them to the upstream (they may have no value outside the local installation).
2018-12-23 21:47:37 +00:00
PipoCanaja 2d84606abf BUG - correcting size and non significant zeroes (#9575) 2018-12-20 19:50:36 -06:00
PipoCanaja 29fb646c3a webui: translate state in health/state display (#9550)
* webui: translate state in health/state display

* webui: translate state in health/state display

* webui: translate state in health/state display

* webui: translate state in health/state display

* webui: translate state in health/state display and label for values and limits

* State label in global health tab and cleaning

* State label in global health tab and cleaning

* Sensor labels in global health tab and cleaning

* Sensor labels in global health tab and cleaning

* Sensor labels in global health tab, cleaning unused 0 decimals
2018-12-20 15:56:54 -06:00
Tony Murray 74882e3950 Dashboard widget update (#9515)
Implemented in Laravel
Doesn't use legacy PHP session
Several widgets have new features and settings, for example:

- Multiple ports in one graph
- Maps settings are configurable and override system settings but default to system settings
- Graylog stream and/or device selection
- Much improved graph widget selection
- Many more

DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2018-12-16 21:18:17 +00:00
Neil Lathwood dd695dde53 Fixed openstreetmap support in device not using custom tiles (#9536)
* Fixed openstreetmap support in device not using custom tiles

* Updated blade template for locations

* Removed console.log()
2018-12-16 08:56:29 -06:00
Tony Murray fad0bffc43 Escape SNMP & IPMI shell commands (#9537)
hopefully doesn't break anything
Mostly issues with snmp oids and options containing spaces.  Try to remove all of those.

DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2018-12-16 13:42:50 +00:00
PipoCanaja 947745b823 webui: Improve alert details display for bgp and sensors (#9534)
* Improve alert details display for bgp and sensors

* Improve alert details display for bgp and sensors

* Improve alert details display for bgp and sensors

* Improve alert details display for bgp and sensors

* Improve alert details display for bgp and sensors

* Improve alert details display for bgp and sensors

* small change
2018-12-11 20:32:56 -06:00
Tony Murray f451f56e98 Pushover fix sounds (#9519)
* Pushover fix sounds

* fix editing issue with duplicate field ids
2018-12-10 22:18:45 -06:00
TheGreatDoc 757e984e5d Merge pull request #9524 from murrant/detect-https-management
Device management link fallback to http if https isn't available.
2018-12-08 08:10:10 +01:00
Tony Murray 93f44d67f8 Fixed customers page (#9521)
move customers table backend to Laravel

DO NOT DELETE THIS TEXT

#### Please note

> Please read this information carefully. You can run `./scripts/pre-commit.php` to check your code before submitting.

- [x] Have you followed our [code guidelines?](http://docs.librenms.org/Developing/Code-Guidelines/)

#### Testers

If you would like to test this pull request then please run: `./scripts/github-apply <pr_id>`, i.e `./scripts/github-apply 5926`
After you are done testing, you can remove the changes with `./scripts/github-remove`.  If there are schema changes, you can ask on discord how to revert.
2018-12-07 22:24:53 +00:00
Tony Murray f5dbbf7772 fix error when location is missing from the DB (#9523) 2018-12-06 23:09:00 -06:00
Tony Murray 00cd32f725 Device management fall back to http if https isn't available.
Adds a slight delay on management clicking, may be blocked by popup blocker...
2018-12-05 13:52:07 -06:00
Arjit Chaudhary 7788f93a57 [UI] Fix last column of table (#9506)
* [UI] Fix last column of table

* move td outside of if and remove else
2018-12-05 10:49:25 -06:00
Tony Murray 957ecc2441 Locations UI and editing (#9480)
* Better handling of errors
Mapquest seems to return the center of the US on error.......

* Editable locations WIP

* Change to bootgrid ajax table WIP

* Graphs working, using handlebars
update js libs
add current location button

* remove sql query, change icon

* Add the map to the device view, only when gps is expanded.
Allow edit on device page, share js code

* fix chevron rotation, improve click area

* extra warning

* fix overview layout (remove containers)

* fix style

* fix html divs, change collapse ui a bit
move css, update css/js versions

* start zoomed out on new locations

* don't double load scripts, zoom to 17

* fix php-md errors, remove unused use statement

* improve non-admin experience

* Move locations page to Laravel
More functions in Url and Html util classes
reduce code duplication

* translation buttons too

* fix whitespace

* move formatters to the frontend

* small changes

* disable traffic for locations with no devices

* change down 0 to green from gray

* missing "

* Fix paginate all

* working fix for paginate all

* allow sort by counts

* fix down sort

* a little safety

* Don't call the function twice

* btn-xs
2018-11-29 19:23:40 -06:00