2017-10-26 01:56:09 -05:00
< ? php
/**
* Configuration . php
*
* Checks various config settings are correct .
*
* This program is free software : you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation , either version 3 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
2021-02-09 00:29:04 +01:00
* along with this program . If not , see < https :// www . gnu . org / licenses />.
2017-10-26 01:56:09 -05:00
*
2021-02-09 00:29:04 +01:00
* @ link https :// www . librenms . org
2017-10-26 01:56:09 -05:00
* @ copyright 2017 Tony Murray
* @ author Tony Murray < murraytony @ gmail . com >
*/
namespace LibreNMS\Validations ;
use LibreNMS\Config ;
2020-06-21 15:15:36 -05:00
use LibreNMS\DB\Eloquent ;
2017-10-26 01:56:09 -05:00
use LibreNMS\Validator ;
2018-02-27 09:57:20 -06:00
class Configuration extends BaseValidation
2017-10-26 01:56:09 -05:00
{
/**
* Validate this module .
* To return ValidationResults , call ok , warn , fail , or result methods on the $validator
*
* @ param Validator $validator
*/
public function validate ( Validator $validator )
{
// Test transports
if ( Config :: get ( 'alerts.email.enable' ) == true ) {
$validator -> warn ( 'You have the old alerting system enabled - this is to be deprecated on the 1st of June 2015: https://groups.google.com/forum/#!topic/librenms-project/1llxos4m0p4' );
}
2020-06-05 11:50:01 -05:00
if ( config ( 'app.debug' )) {
$validator -> warn ( 'Debug enabled. This is a security risk.' );
}
2020-06-21 15:15:36 -05:00
2020-09-21 14:54:51 +02:00
if ( Eloquent :: isConnected () && ! \DB :: table ( 'devices' ) -> exists ()) {
2020-06-21 15:15:36 -05:00
$validator -> warn ( 'You have no devices.' , 'Consider adding a device such as localhost: ' . $validator -> getBaseURL () . '/addhost' );
}
2017-10-26 01:56:09 -05:00
}
}