В SF4 “настройки” и “конфигурации” — это два слоя, которые постоянно работают вместе:
-
Конфигурация (schema) — описывает какие поля вообще есть, как они сгруппированы, какие у них типы ввода, значения по умолчанию и т.п. Этот слой нужен редакторам (админ-формам/публичным формам), чтобы построить UI.
-
Значения (values / property) — конкретные значения, которые выбрал администратор/пользователь. Этот слой хранится как PHP-массивы и читается/переопределяется на разных уровнях (сайт → раздел → страница → пользователь).
Отдельно стоит уровень фреймворка: системные параметры (например, SMTP и “пути к конфигам”), которые живут в /simai/config/.framework.config.php и читаются через SIMAI\Main\Configuration\Framework. Внутри файла значения хранятся в виде структуры ["value" => ..., "readonly" => bool], а запись учитывает флаг readonly (обычная запись не перезаписывает “закрытые” параметры).
Файл .demo.config.php относится к “schema” демо-режима: он описывает поля демо-настроек для формы, а сами значения демо-настроек в типовом сценарии держатся на пользовательском (session) уровне через SIMAI\Main\Configuration\Property (storageId обычно "user").