$mark_when * @property int $max_posts_per_rss * @property-read array $limits * @property int|null $old_entries * @property bool $onread_jump_next * @property string $passwordHash * @property int $posts_per_page * @property array $queries * @property bool $reading_confirm * @property int $since_hours_posts_per_rss * @property bool $show_fav_unread * @property bool $show_favicons * @property bool $icons_as_emojis * @property int $simplify_over_n_feeds * @property bool $show_nav_buttons * @property 'big'|'small'|'none' $mark_read_button * @property 'ASC'|'DESC' $sort_order * @property 'id'|'c.name'|'date'|'f.name'|'link'|'title'|'rand' $sort * @property array> $sharing * @property array $shortcuts * @property bool $sides_close_article * @property bool $sticky_post * @property string $theme * @property string $darkMode * @property string $token * @property bool $topline_date * @property bool $topline_display_authors * @property bool $topline_favorite * @property bool $topline_myLabels * @property bool $topline_sharing * @property bool $topline_link * @property bool $topline_read * @property bool $topline_summary * @property string $topline_website * @property string $topline_thumbnail * @property int $ttl_default * @property int $dynamic_opml_ttl_default * @property-read bool $unsafe_autologin_enabled * @property string $view_mode * @property array $volatile * @property array> $extensions * @property bool $retrieve_extension_list */ final class FreshRSS_UserConfiguration extends Minz_Configuration { use FreshRSS_FilterActionsTrait; /** @throws Minz_FileNotExistException */ public static function init(string $config_filename, ?string $default_filename = null): FreshRSS_UserConfiguration { parent::register('user', $config_filename, $default_filename); try { return parent::get('user'); } catch (Minz_ConfigurationNamespaceException $ex) { FreshRSS::killApp($ex->getMessage()); } } /** * Access the default configuration for users. * @throws Minz_FileNotExistException */ public static function default(): FreshRSS_UserConfiguration { /** @var FreshRSS_UserConfiguration|null $default_user_conf */ static $default_user_conf = null; if ($default_user_conf === null) { $namespace = 'user_default'; FreshRSS_UserConfiguration::register($namespace, '_', FRESHRSS_PATH . '/config-user.default.php'); $default_user_conf = FreshRSS_UserConfiguration::get($namespace); } return $default_user_conf; } }