Настройки
SIMAI Framework использует многоуровневую систему настроек позволяющую записать и получать любые настройки.
Настройки фреймворка
Настройки фреймворка распространяются на все сайты работающие на едином ядре. Механизм работы реализован аналогично настройкам D7. Значения настроек находятся в файле /simai/config/.framework.config.php
. В связи с тем что у данных настроек повышенный уровень требований к безопасности, механизм работы с ними отличается от всех остальных настроек.
Уровни настроек
Различные уровни настроек позволяют создавать настройки имеющие различную область действия:
- Настройки фреймворка — настройки действие которых распространяется на все сайты в рамках одного ядра. Значения настроек находятся в файле
/simai/confog/.framework.config.php
. - Настройки сайта — настройки для конкретного сайта. Значения настроек хранятся в папке ресурсов сайта
{КОРЕНЬ САЙТА}/simai.data/.site.property.php
. - Настройки раздела — настройки для конкретного раздела. Значения настроек хранятся в папке раздела в файле
{ПАПКА РАЗДЕЛА}/.property.php
. - Настройки страницы — настройки для конкретной страницы. Значения настроек хранятся в папке раздела в файле
{ПАПКА РАЗДЕЛА}/.property.php
. - Настройки пользователя — настройки для конкретного пользователя. Значения настроек хранятся в сессии пользователя.
Приоритет настроек
Система настроек построена по принципу матрешки. Одни и те же параметры могут задаваться как на уровне сайта, так и на уровне раздела, страницы или пользователя. Приоритетность настроек повышается от общего к частному. Так приоритет настроек раздела выше чем у настроек сайта, а приоритет настроек пользователя выше чем у настроек страницы. Настройки по возрастанию приоритета: настройки сайта, настройки раздела, настройки страницы, настройки пользователя. Поэтому при их использовании необходимо учитывать что значение может быть задано на нескольких уровнях и с разным приоритетом.
Хранилище настроек
Для пользователя, при загрузке страницы сайта формируется свой набор настроек который определяет отображение и поведение сайта. Это позволяет сделать так что сайт может иметь персонализированный вид или поведение при работе с пользователем. Настройки при этом сохраняются в сессии пользователя. Работа с ними осуществляется с помощью АПИ.
Конфигурационные файлы
Конфигурационные файлы определяют какие настройки будут использоваться, тип данных для настроек, а также вид шаблона для работы с ними. Название файла формируется по шаблону .{НАЗНАЧЕНИЕ}.config.php
.
В симай фреймворк используются следующие конфигурационные файлы:
simai/.asset.config.php
— конфигурационный файл для ресурсов сайта. Включает в себя наборы ресурсов (стилей и скриптов) которые могут загружаться группой.simai/.font.config.php
— конфигурационный файл для шрифтов сайта. Включает в себя шрифты которые могут использоваться для настроек сайта.simai.data/.site.config.php
— конфигурационный файл для настроек сайта.simai.data/.structure.config.php
— конфигурационный файл для настроек разделов сайта. Используется для настроек разделов и страниц.simai.data/.iblock.config.php
— конфигурационный файл для настроек инфоблоков. Используется для формирования интерфейса публичного редактора данных, с помощью которого можно редактировать элементы инфоблока из публичной части сайта.simai.data/.demo.config.php
— конфигурационный файл для демонстрационных настроек. Используется для демонстрации работы решения.