. * * @package LibreNMS * @link http://librenms.org * @copyright 2022 Tony Murray * @author Tony Murray */ namespace LibreNMS\Validations\Database; use Illuminate\Support\Facades\DB; use LibreNMS\DB\Eloquent; use LibreNMS\Interfaces\Validation; use LibreNMS\ValidationResult; class CheckDatabaseTableNamesCase implements Validation { /** * @inheritDoc */ public function validate(): ValidationResult { // Test for lower case table name support $lc_mode = DB::selectOne('SELECT @@global.lower_case_table_names as mode')->mode; if ($lc_mode != 0) { ValidationResult::fail( trans('validation.validations.database.CheckDatabaseTableNamesCase.fail'), trans('validation.validations.database.CheckDatabaseTableNamesCase.fix') ); } return ValidationResult::ok(trans('validation.validations.database.CheckDatabaseTableNamesCase.ok')); } /** * @inheritDoc */ public function enabled(): bool { return Eloquent::isConnected(); } }