39 Commits

Author SHA1 Message Date
ottorei 599c423532 Optional availability calculation mode to allow planned maintenance (#12218)
* Add an optional availability calculation mode

* Style fixes

* Review fixes

* Variable fix

* Style fixes

* Style fixes

* Style fixes

* Add additional status check, remove uptime

* Style fix

* Style fix

* Fix extra database update

* Style fix

* Style fix
2020-10-28 02:05:19 +01:00
PipoCanaja 0e0e80c827 More eventlogs for snmptraps (#12112)
* Allow detailed trap display and inform user about snmptrapd misconfiguration

* Documentation update

* Documentation update

* Documentation update

* CodeClimate

* CodeClimate

* ChangeRequest PR

* Fix tests

* config_definitions

translation

doc

* styleci

* lnms translation generate after npm-install
2020-09-23 17:00:02 +02:00
Jellyfrog 29f45ca352 Apply fixes from StyleCI (#12124) 2020-09-21 15:59:34 +02:00
Jellyfrog 77c531527c Apply fixes from StyleCI (#12117)
* Apply fixes from StyleCI

* Disable style check
2020-09-21 14:54:51 +02:00
Jason Cheng 661a518dea Add attach sysName to Prometheus. (#12061)
* Add attach sysName to Prometheus option.

The value of put to prometheus can be added to sysName by setting the relevant parameter.

* Add attach sysName to Prometheus.

* Add attach sysName to Prometheus.

* Update resources/lang/en/settings.php

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

* Update settings.php

* Update settings.php

* Update settings.php

* Update settings.php

* Update settings.php

* Update zh-TW.json

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2020-09-07 21:38:13 +02:00
SourceDoctor 663ca6e9d1 Move Availability Setting to Poller (#12021) 2020-08-19 22:03:37 +02:00
Jellyfrog 86220eed9e Add more types to settings page (#11918)
* Add a executable type to settings page

This allow us to validate the value is a valid executable

* Add a directory type to settings page

This allow us to validate the value is a valid directory

* fixes
2020-07-21 20:51:23 -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
Munzy 8a851eda9f Auth AD URL (#11884)
* Missing auth_ad_url

WIP

* add auth_ad_filter

* Pluralize

* Remove Translation, and add translations generation.
2020-07-01 13:23:35 -05:00
Tony Murray d75cc5235d Settings geocode lookup (#11875)
* Add setting to enable geocoding to ui

* rename settings

* rename settings

* capitalization

* Open streetmaps does not support geocoding
2020-06-29 21:03:03 +02:00
SourceDoctor 4e6a7291a2 Device Availability Calculation (#11784)
* Device Availability Calculation

* Travis fix

* .

* schema corrections

* flexible duration

* travis

* .

* .

* .

* .

* remove not needed code

* line Text to RRD

* update humantime

* .

* only set up again if device was marked as down

* set RRD area transparency

* save uptime also, to keep last availability as good as possible

* file description correction

* look for outages even if uptime > duration
2020-06-22 22:57:30 +02:00
SourceDoctor f92caf8cf7 Fix - Seperate default poller id and distributed poller groups (#11584)
* Seperate Setting for default poller id

* revert change

* Travis restart

* fixes
2020-05-24 17:55:11 -05:00
TheGreatDoc fd89854012 Fix smokeping config definition (#11651)
* Fix config definition for smokeping

* Fix config definition for smokeping

* Updated mix-manifest
2020-05-21 10:16:24 -05:00
TheGreatDoc 370c7f5662 Added link to smokeping interface + smokeping options to global settings (#11610)
Co-authored-by: Daniel Baeza <d.baeza@tvt-datos.es>
2020-05-20 08:25:27 -05:00
Tony Murray 055abcf443 Device page dropdown hero button, Performance -> Latency (#11328)
* Throw some shit together, rough outline.

* Reorganize tabs, use tab controllers

* Implement performance (into the latency tab)

* Update resources/views/device/header.blade.php

Co-Authored-By: Jellyfrog <Jellyfrog@users.noreply.github.com>

* Add more tabs

* All controllers created

* Implement routes

* Implement smokeping

* routing and auth

* fix smokeping check

* Implement device dropdown menu

* Update deviceUrl to new style

* Use Gates

* Fix style

* use more appropriate gates

* add show-config gate
remove Laravel helper

* Only show vlan tab if VLANs exist for the device :D

* Fix rancid file check will return false

* revert over-zealous file name changes

* don't need to request the location parameter, just cast to string to avoid bugs when not found

* Move latency tab (ping/performance) to the position of performance instead of ping.

Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
2020-04-29 07:25:13 -05:00
Jellyfrog d2a9ffdb83 Fix case sensitiv translations (#11463)
On case insensitive systems, @lang('Auth') would match the auth.php file
and return an array instead of the string "Auth", causing a "Array to string conversion error"
2020-04-22 23:57:30 +02:00
SourceDoctor 67c0f3abea Global setting better naming (#11412)
* Global Settings - Alert Default Settings

* Revert "Global Settings - Alert Default Settings"

This reverts commit a1af62b146.

* Better setting description
2020-04-12 23:54:27 -05:00
SourceDoctor d3bc503cf6 Global Settings - force_ip_to_sysname, force_hostname_to_sysname (#11335)
* Global Settings - force_ip_to_sysname, force_hostname_to_sysname

* add manifest.json

* Update mix-manifest.json

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-03-24 16:02:48 +01:00
PipoCanaja 46282bcefe French translation update (#11293)
* FR Translation

* FR Translation

* FR Translation

* FR Translation

* FR Translation

* FR Translation

* revert manifest

* update mix-manifest.json

Co-authored-by: Tony Murray <murraytony@gmail.com>
2020-03-19 20:27:18 -05:00
Mathieu Poussin 1cf7e206e5 Geographical map: Show network links between locations (#11269)
* Geographical map: Show links between locations

* Fix manifest after merge conflict
2020-03-13 11:22:32 +01:00
Tony Murray 121fbe7edd Add datastore settings to the Web UI (#11266) 2020-03-12 11:46:41 -05:00
Tony Murray 79f2debbdb Move storage module settings (#11206)
Actually verify regex setting
2020-02-26 17:53:33 +01:00
SourceDoctor 0baeab567b Added Mountpoint ignore options to global settings (#11197)
* Global Settings - Mountpoint ignore options

* enhance AppServiceProvider with regex
2020-02-26 13:01:49 +00:00
SourceDoctor c56b6fb9f8 Global Settings - Uptime Warning (#11198) 2020-02-25 08:06:02 -06:00
SourceDoctor 40cac40aec Option to default open Location Map on Device View (#11167)
* Option to default open Location Map on Device View

* String set fixes

* adding lanugage files
2020-02-22 00:09:51 +01:00
SourceDoctor 0bc2ea1f45 Configurable Alert Rule default settings (#11152)
* configurable Alert Rule default settings

* codeclimate fix#
2020-02-15 16:18:02 +01:00
SourceDoctor 08c23b9ca5 Discovery Module and Poller Module configuration via Global Settings Web GUI (#10854)
* discovery module and poller module configurable via global settings gui

* fix descriptions

* moved Poller Module to Poller Category
2020-01-07 18:12:46 +01:00
Joseph Tingiris bbc5c435d9 correct 'shortend' misspelling (#11000) 2020-01-07 15:13:42 +01:00
Jellyfrog b361710148 Device group based access (#10568)
* Device group based access

* Use Permissions class to resolve permissions

Also give port access based on device access

* Convert more pages to use Permissions class

* shorten config setting name
use Eloquent relationships in several places
alphabetize config_definitions.json

* Change Models and Permissions

* Clean up ajax_search LIMIT sql

* Convert more pages to use Permissions class

Co-authored-by: Tony Murray <murraytony@gmail.com>
2019-12-30 12:11:26 +01:00
Tony Murray 04b65d3202 Add minimum password length setting (#10867) 2019-11-25 04:11:18 +00:00
louis-oui ef562f607e LDAP Add option to authenticate user independtly of OU (#10873)
* Add option to authenticate user independtly of OU
* Set config option in webui
* Compatibility with bind username option
* ran ./lnms translation:generate
* update doc
2019-11-22 19:29:47 +01:00
PipoCanaja bf181b9dc2 Added support for routing table collection in discovery (#10182)
* Clean broken VRF lite code
* Change DB table for route discovery
* Add VRF simple support
* add port_id to db and discovery
* static-fy the translation arrays
* sort and search cleaning
* Sorting refactor and validation
* formatItem shortened
* Handle ifIndex==0 meaning no next hop defined (MPLS)
* Sync all create/updates
* purge in daily
* remove old route table
* get rid of inetCidrRouteNextHop_device_id
* fix wonky column orders
* add route snmprec
* fix sorting by interface
* Move to new config
* rename to route the new table
* Properly display ipv6 compressed addresses
* Translation before merge ./lnms translation:generate
* Update manifest
2019-11-17 16:30:43 +01:00
Tony Murray 552d487ae1 Fix email_auto_tls toggle (#10785)
* Fix email_auto_tls toggle

* Clean up smtp settings a bit
user/pw depend on auth setting
2019-11-08 06:27:40 +00:00
SourceDoctor d90b0212b9 settings.php 'ports_purge' key fix (#10774)
* fix key port_purge -> ports_purge

* add missing compiled js language files
2019-11-04 01:01:08 +01:00
SourceDoctor 61c11a8e09 Added more default values to config_definitions (#10756)
* adding default values to config_definitions

* define WebUI Position and GUI Description

* style fix

* another missing definitions

* reposition config elements

* remove empty line
2019-10-30 13:53:13 +00:00
Tony Murray 9b4406ec9e Add Graylog settings (#10740)
* Add Graylog settings
Fix order of settings
Don't clobber text input when validation fails
fixed spacing for setting reset/undo buttons and help

* fix style
2019-10-26 00:29:47 +00:00
Tony Murray 1d7347dd62 Validate config schema, add types to all (#10723)
* Vaildate config_definitions.json schema

* finish adding types and other cleanups
2019-10-20 23:08:40 +00:00
Tony Murray f9b704cb29 Add distributed polling config settings (#10711)
Show error on cli when type or validation is not set
2019-10-17 18:32:27 +00:00
Tony Murray 699aa8a042 Consolidate configuration settings and implement dynamic webui settings (#9809)
* initial db/defaults dump

* numeric values

* Remove $config['time']

* Use config_definitions.json

* try setting definition as a complete array

* a little more

* fix format

* WIP converting dynamic setting pages

* rewriting the webui

* remove legacy and add translations

* finish email section

* improve navigation
update js a bit

* Import the remaining existing settings

* Update backend still some wip
migration

* fix config loading (db not overriding defaults)

* some cleanup

* more array collapsing

* update settings

* Settings search

* add purge settings to ui, order groups and sections

* collapse more arrays

* Auth definitions WIP

* remove needless slash escapes

* add warning to json

* moving settings from defaults.inc

* remove slow_statistics

* Move rrdtool settings to the poller section

* Use translations more consistently

* removing more settings from defaults.inc.php

* show setting name in tooltip

* allow help text to be shown on mobile

* disable settings that are set in config.php

* Implement undo and reset to default.

* Vue.js functional

* Vue.js WIP

* Implement tabs component

* accordion WIP

* lodash ver update

* two items

* Accordion somewhat working

* hash navigation

* Refine Accordion

* Fix up tab styling a bit

* Cleaner tab selected property
Hide html while loading

* spinner?

* Icon support
property for accordion to active

* WIP

* Tabs/Sections from ajax

* Setting Component skeletons

* Dynamic Component resolution

* Basic functionality

* toggle class

* Refactor components

* translate tabs and accordions

* simple array attempt

* improve readonly tooltip

* array styling

* array value editing

* organize snmp info

* Handle initial tab/section in url

* Use Laravel to parse tab/section, dump old

* Draggable array entries

* v-tooltip, for clickable (and touch) help tooltips
disable draggable

* Navigation WIP

* Navigation WIP

* groups computed

* filter settings

* fix event reference

* vue.js i18n initial

* missing description = just setting name

* en fallback

* tidy up the language support and js generation

* persist value to db

* fix issue with 0

* Delete settings from DB instead of setting them to default

* ldap-groups
fixup style

* Default dashboard selection

* fix array of options instead of object

* allow custom validation for settings

* translate options in SettingSelect

* SNMP v3 WIP

* fix setting arrays

* Split persist out of set

* Hook up events for SNMP v3 Auth
correct Config::persist behaviour with arrays

* dependent settings (primitive for now)
actually update the settings values in the LibrenmsSettings component

* more complex "when" behaviour

* remove un-needed seeder

* add poller_modules.cisco-qfp

* remove en.json (disable warning)

* don't set default for log_dir or log_file, otherwise it won't be processed correctly

* Fix module order
add some missing settings

* more config corrections

* correct graphs
correct loading values set to null (although it should have no difference)
remove project_name_version

* Add nfsen settings.  Docs are very confusing, so might have flubbed something
remove option for array definition of select option as numeric indexes messes it up

* Correct more upstream config differences

* Config cleanup after a bunch of merges.

* Fixes

* add version tags to js/css files
remove old js

* Print out full settings list read-only

* Add http_proxy setting
fix indents in config_definitions.json

* repeaters default is 0 (aka 20)

* cleanups

* rewrite the dynamic config docs

* add language docs

* Don't show snmp v3 auth add/remove if disabled by config.php
2019-10-16 21:22:05 +00:00