= 0 && GROCY_CALENDAR_FIRST_DAY_OF_WEEK <= 6))) { throw new EInvalidConfig('Invalid value for CALENDAR_FIRST_DAY_OF_WEEK'); } } private function checkCurrencyFormat() { if (!(preg_match("/^([A-z]){3}$/", GROCY_CURRENCY))) { throw new EInvalidConfig('CURRENCY is not in ISO 4217 format (three letter code)'); } } private function checkEntryPage() { $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"); } } 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))) { 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"]))) { 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"]))) { 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"].')'); } } }