This commit is contained in:
Bernd Bestel 2020-12-23 17:36:36 +01:00
parent 3fe9398bcb
commit 2228a7df75
No known key found for this signature in database
GPG Key ID: 71BD34C0D4891300

View File

@ -17,27 +17,26 @@ class ConfigurationValidator
self::checkAutoNightModeRange();
}
private function checkMode()
{
$allowedModes = ["production", "dev", "demo", "prerelease"];
$allowedModes = ['production', 'dev', 'demo', 'prerelease'];
if (!in_array(GROCY_MODE, $allowedModes))
{
throw new EInvalidConfig('Invalid mode "' . GROCY_MODE . '" set, only ' . implode(", ", $allowedModes) . " allowed");
throw new EInvalidConfig('Invalid mode "' . GROCY_MODE . '" set, only ' . implode(', ', $allowedModes) . ' allowed');
}
}
private function checkDefaultLocale()
{
if (!file_exists(__DIR__ . "/../localization/" . GROCY_DEFAULT_LOCALE))
if (!file_exists(__DIR__ . '/../localization/' . GROCY_DEFAULT_LOCALE))
{
throw new EInvalidConfig('Invalid locale "'. GROCY_DEFAULT_LOCALE . '" set, locale needs to exist in folder localization');
throw new EInvalidConfig('Invalid locale "' . GROCY_DEFAULT_LOCALE . '" set, locale needs to exist in folder localization');
}
}
private function checkFirstDayOfWeek()
{
if (!(GROCY_CALENDAR_FIRST_DAY_OF_WEEK == "" ||
if (!(GROCY_CALENDAR_FIRST_DAY_OF_WEEK == '' ||
(is_numeric(GROCY_CALENDAR_FIRST_DAY_OF_WEEK) && GROCY_CALENDAR_FIRST_DAY_OF_WEEK >= 0 && GROCY_CALENDAR_FIRST_DAY_OF_WEEK <= 6)))
{
throw new EInvalidConfig('Invalid value for CALENDAR_FIRST_DAY_OF_WEEK');
@ -46,7 +45,7 @@ class ConfigurationValidator
private function checkCurrencyFormat()
{
if (!(preg_match("/^([A-z]){3}$/", GROCY_CURRENCY)))
if (!(preg_match('/^([A-z]){3}$/', GROCY_CURRENCY)))
{
throw new EInvalidConfig('CURRENCY is not in ISO 4217 format (three letter code)');
}
@ -54,34 +53,32 @@ class ConfigurationValidator
private function checkEntryPage()
{
$allowedPages = ["stock", "shoppinglist", "recipes", "chores", "tasks", "batteries", "equipment", "calendar", "mealplan"];
$allowedPages = ['stock', 'shoppinglist', 'recipes', 'chores', 'tasks', 'batteries', 'equipment', 'calendar', 'mealplan'];
if (!in_array(GROCY_ENTRY_PAGE, $allowedPages))
{
throw new EInvalidConfig('Invalid entry page "' . GROCY_ENTRY_PAGE . '" set, only ' . implode(", ", $allowedPages) . " allowed");
throw new EInvalidConfig('Invalid entry page "' . GROCY_ENTRY_PAGE . '" set, only ' . implode(', ', $allowedPages) . ' allowed');
}
}
private function checkMealplanFirstDayOfWeek()
{
if (!(GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK == "" ||
(is_numeric(GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK) &&GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK >= 0 && GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK <= 6)))
if (!(GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK == '' ||
(is_numeric(GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK) && GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK >= 0 && GROCY_MEAL_PLAN_FIRST_DAY_OF_WEEK <= 6)))
{
throw new EInvalidConfig('Invalid value for MEAL_PLAN_FIRST_DAY_OF_WEEK');
}
}
private function checkAutoNightModeRange()
{
global $GROCY_DEFAULT_USER_SETTINGS;
if (!(preg_match("/^(?:2[0-3]|[01][0-9]):[0-5][0-9]$/", $GROCY_DEFAULT_USER_SETTINGS["auto_night_mode_time_range_from"])))
if (!(preg_match('/^(?:2[0-3]|[01][0-9]):[0-5][0-9]$/', $GROCY_DEFAULT_USER_SETTINGS['auto_night_mode_time_range_from'])))
{
throw new EInvalidConfig('auto_night_mode_time_range_from is not in HH:mm format ('.$GROCY_DEFAULT_USER_SETTINGS["auto_night_mode_time_range_from"].')');
throw new EInvalidConfig('auto_night_mode_time_range_from is not in HH:mm format (' . $GROCY_DEFAULT_USER_SETTINGS['auto_night_mode_time_range_from'] . ')');
}
if (!(preg_match("/^(?:2[0-3]|[01][0-9]):[0-5][0-9]$/", $GROCY_DEFAULT_USER_SETTINGS["auto_night_mode_time_range_to"])))
if (!(preg_match('/^(?:2[0-3]|[01][0-9]):[0-5][0-9]$/', $GROCY_DEFAULT_USER_SETTINGS['auto_night_mode_time_range_to'])))
{
throw new EInvalidConfig('auto_night_mode_time_range_to is not in HH:mm format ('.$GROCY_DEFAULT_USER_SETTINGS["auto_night_mode_time_range_to"].')');
throw new EInvalidConfig('auto_night_mode_time_range_to is not in HH:mm format (' . $GROCY_DEFAULT_USER_SETTINGS['auto_night_mode_time_range_to'] . ')');
}
}
}