Настройки

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 — конфигурационный файл для демонстрационных настроек. Используется для демонстрации работы решения.