Система управления контентом CAIRO

Файлы конфигурации

Виктор Грищенко


Содержание

Введение
I. core.ini
general.basedir - Каталог установки системы
general.tmpdir - Каталог временных файлов
general.libdir - Каталог библиотек
general.coredir - Каталог ядра системы
general.moddir - Каталог, содержащий модули интерфейса
general.fieldsdir - Каталог классов полей данных
general.entdir - Каталог, содержащий альтернативные классы сущностей
general.widgetdir - Каталог элементов управления
general.jsdir - Каталог, содержащий Javascript
general.etcdir - Каталог настроек
general.cachedir - Каталог кэша
general.skin - Текущий скин
general.paths - Пути поиска файлов
general.gmt.client - Часовой пояс клиента
locale.LANG - Язык локали по умолчанию
locale.decimal.php - Десятичный разделитель, используемый PHP
locale.decimal.view - Десятичный разделитель, выводимый на сайте и в интерфейсе администратора Cairo
debug.show_php_errors - Выводить ли расширенную статистику по SQL-запросам
debug.show_stat - Вывод статистики после генерации страницы
debug.sql_stat - Сбор статистики SQL-запросов
debug.show_runtime_errors - Выводить ли ошибки этапа выполнения
image.thumb_width - Ширина эскизов изображений
image.thumb_height - Высота эскизов изображений
image.thumb_handler - Способ, которым будут создаваться уменьшенные копии изображений
image.gd_ver - Версия GD
image.convert - Полный путь к утилите convert
file.icon_width - Ширина иконок файлов
file.icon_height - Высота иконок файлов
[utils] - Секция содержит пути к внешним программам
mail.host - Имя SMTP-сервера
mail.from - E-mail адрес, от которого будут отправляться письма
mail.webmaster - E-mail адрес веб-мастера ресурса
webface.free_entities - Выводить ли переключатель "Свободных сущностей"
webface.gzip - Сжатие выходного потока данных
II. fields.ini
handler - Класс-обработчик
alias - Псевдоним типа
format - Формат поля
template - Префикс шаблона
sql_type - SQL-тип, используемый для хранения содержимого поля
size - Размер поля
format_preg - Регулярное выражение для проверки значения поля
default_val - Значение поля по умолчанию
condition - Условие истинности
er_msg - Сообщение об ошибке
ntf_msg - Предупреждение
required - Важность поля
comment - Комментарий
in_title - Может ли поле выводиться в списке сущностей
is_shown - Показывается ли в списке по умолчанию
order_type - Тип сортировки по умолчанию
ent_title - Участвует ли в формировании заголовка сущностей
III. import.ini
uid - ID пользователя, от которого производится импорт
gid - ID группы, от которой производится импорт
1. Первичные ключи
IV. login.ini
dbhost - Адрес сервера БД
dbuser - Имя пользователя БД
dbpasswd - Пароль к БД
dbname - Имя БД
dbcharset - Кодировка БД
dbversion - Версия БД
authhost - Имя хоста, по которому доступен интерфейс администратора
basedir - Полный путь к каталогу ресурса данных
uploaddir - Полный путь к каталогу загрузки
cachedir - Полный путь к каталогу кэша
frmtext_files - Каталог файлов для форматированного текста
httphost - Имя хоста ресурса
locale - Локаль интерфейса администратора
auth_user - Список администраторов ресурса
auth_group - Список групп администраторов ресурса
2. Настройки доступа к модулям
V. mimes.ini

Список примеров

1. Регулярное выражение для проверки корректности ввода E-mail
2. Регулярное выражение для проверки корректности ввода URL
3. Значение amount должно быть больше 10
4. Значение birthdate должно быть меньше значения graduate

Введение

Cairo представляет собой совокупность программных и визуальных интерфейсов, предназначенных для управления структурированным контентом, а также вспомогательных утилит, библиотек и классов.

Настройки платформы и интерфейса администратора находятся в каталоге [DocumentRoot]/etc, где [DocumentRoot] - имя каталога, в котором установлена система. Данный документ содержит подробное описание всех настроек Cairo.

core.ini


Файл core.ini содержит основные настройки системы, которые определяют ее поведение и внешний вид.

Содержание

general.basedir - Каталог установки системы
general.tmpdir - Каталог временных файлов
general.libdir - Каталог библиотек
general.coredir - Каталог ядра системы
general.moddir - Каталог, содержащий модули интерфейса
general.fieldsdir - Каталог классов полей данных
general.entdir - Каталог, содержащий альтернативные классы сущностей
general.widgetdir - Каталог элементов управления
general.jsdir - Каталог, содержащий Javascript
general.etcdir - Каталог настроек
general.cachedir - Каталог кэша
general.skin - Текущий скин
general.paths - Пути поиска файлов
general.gmt.client - Часовой пояс клиента
locale.LANG - Язык локали по умолчанию
locale.decimal.php - Десятичный разделитель, используемый PHP
locale.decimal.view - Десятичный разделитель, выводимый на сайте и в интерфейсе администратора Cairo
debug.show_php_errors - Выводить ли расширенную статистику по SQL-запросам
debug.show_stat - Вывод статистики после генерации страницы
debug.sql_stat - Сбор статистики SQL-запросов
debug.show_runtime_errors - Выводить ли ошибки этапа выполнения
image.thumb_width - Ширина эскизов изображений
image.thumb_height - Высота эскизов изображений
image.thumb_handler - Способ, которым будут создаваться уменьшенные копии изображений
image.gd_ver - Версия GD
image.convert - Полный путь к утилите convert
file.icon_width - Ширина иконок файлов
file.icon_height - Высота иконок файлов
[utils] - Секция содержит пути к внешним программам
mail.host - Имя SMTP-сервера
mail.from - E-mail адрес, от которого будут отправляться письма
mail.webmaster - E-mail адрес веб-мастера ресурса
webface.free_entities - Выводить ли переключатель "Свободных сущностей"
webface.gzip - Сжатие выходного потока данных

general.basedir

general.basedir — Каталог установки системы

Описание

Определяет каталог, в который установлена система. Значение параметра должно совпадать с установкой DocumentRoot веб-сервера.


general.tmpdir

general.tmpdir — Каталог временных файлов

Описание

Каталог временных файлов используется системой при таких действиях, как добавление значений в поля типа "Файл" и "Изображение".

Внимание

Веб-сервер должен иметь доступ на запись в этот каталог.


general.libdir

general.libdir — Каталог библиотек

Описание

Библиотеки содержат дополнительные модули, которые используются универсальным веб-интерфейсом администратора.


general.coredir

general.coredir — Каталог ядра системы

Описание

Ядро системы содержит классы для работы с сущностями. Данные классы также обеспечивают инициализацию системы и определяют обработчики завершения работы скрипта.


general.moddir

general.moddir — Каталог, содержащий модули интерфейса

Описание

Универсальный интерфейс администратора предоставляет базовые возможности для работы с сущностями. Расширение возможностей интерфейса администратора производится при помощи модулей. Некоторые модули поставляются по умолчанию. К таким модулям относятся: "Управление структурой данных", "Управление справочниками", "Управление пользователями".


general.fieldsdir

general.fieldsdir — Каталог классов полей данных

Описание

Классы полей данных реализуют работу с данными различного типа.


general.entdir

general.entdir — Каталог, содержащий альтернативные классы сущностей

Описание

Опция зарезервирована.


general.widgetdir

general.widgetdir — Каталог элементов управления

Описание

Элементы управления позволяют быстро и качественно создавать такие сложные конструкции, как сортируемые многостраничные списки, самопроверяющиеся формы и т.п.


general.jsdir

general.jsdir — Каталог, содержащий Javascript

Описание

Javascript используется в интерфейсе администратора для сервисных функций.


general.etcdir

general.etcdir — Каталог настроек

Описание

В данном каталоге содержатся все настройки системы.


general.cachedir

general.cachedir — Каталог кэша

Описание

Кэширование используется для снижения нагрузки на сервер. В данный каталог записываются эскизы изображений, результаты выполнения функций и другая редко обновляемая информация.

Внимание

Веб-сервер должен иметь доступ на запись в этот каталог.


general.skin

general.skin — Текущий скин

Описание

Универсальный интерфейс администратора поддерживает работу с темами оформления. Данный параметр указывает, какая тема должна использоваться интерфейсом.

Замечание

По умолчанию система поставляется со стандартной темой оформления.


general.paths

general.paths — Пути поиска файлов

Описание

Данный параметр используется фабрикой ядра при создании экземпляров классов. Он содержит список путей, где могут располагаться классы системы.


general.gmt.client

general.gmt.client — Часовой пояс клиента

Описание

Параметр содержит часовой пояс клиента. Это значение используется для корректировки работы с датами. Все данные хранятся в часовом поясе сервера. Для того, чтобы пользователь видел даты, скорректированные для его региона, данный параметр должен содержать смещение часового пояса клиента относительно Гринвича.

Например, для Украины правильным значением будет "+0200", а для России - "+0300".


locale.LANG

locale.LANG — Язык локали по умолчанию

Описание

Установка локали влияет на язык интерфейса и некоторые внутренние функции системы, такие, как сравнение строк, формат вывода вещественных чисел и т.п. Параметр определяет локаль по-умолчанию. Это значение может быть переопределено для каждого отдельного ресурса в файле login.ini.

Для работы с русской локализацией интерфейса в кодировке windows-1251 необходимо задать значение ru_RU.CP1251.

Внимание

Используемая кодировка должна быть установлена на сервера. Если кодировка не установлена, обратитесь к своему системному администратору.


locale.decimal.php

locale.decimal.php — Десятичный разделитель, используемый PHP

Описание

Значение параметра используется для работы с вещественными числами.

Если параметр не определен, его значение берется из установок локали.


locale.decimal.view

locale.decimal.view — Десятичный разделитель, выводимый на сайте и в интерфейсе администратора Cairo

Описание

Значение параметра используется для работы с вещественными числами.

Если параметр не определен, его значение берется из установок локали.


debug.show_php_errors

debug.show_php_errors — Выводить ли расширенную статистику по SQL-запросам

Описание

Параметр может принимать два значения: "on" и "off". Если параметр имеет значение "on", то все ошибки PHP будут выводиться непосредственно на веб-страницах, иначе ошибки выводиться не будут и доступ к ним можно будет получить только через журнал ошибок веб-сервера.

Замечание

На действующем ресурсе этот параметр должен быть отключен.


debug.show_stat

debug.show_stat — Вывод статистики после генерации страницы

Описание

Параметр может принимать два значения: "on" и "off". Если параметр имеет значение "on", то в нижней части страницы будет выводиться размер документа HTML, размер документа после сжатия, если оно включено и время генерации страницы.

Замечание

На действующем ресурсе этот параметр должен быть отключен.


debug.sql_stat

debug.sql_stat — Сбор статистики SQL-запросов

Описание

Параметр может принимать два значения: "on" и "off". Если параметр имеет значение "on", то информация обо всех SQL-запросах будет сохраняться в оперативной памяти.

Параметр влияет на два аспекта поведения системы: журналирование SQL-запросов и вывод расширенной статистика по SQL-запросам.

Для вывода журнала SQL-запросов в конце страницы необходимо, чтобы значение данного параметра было равно "on" и значение параметра debug.show_stat было равно "on".

Замечание

На действующем ресурсе этот параметр должен быть отключен.


debug.show_runtime_errors

debug.show_runtime_errors — Выводить ли ошибки этапа выполнения

Описание

Параметр может принимать два значения: "on" и "off".

К ошибкам этапа выполнения относятся ошибки целостности данных и ошибки настройки системы. В большинстве случаев данная опция должна быть отключена. Ее можно использовать для отладки при проектировании структуры данных.

Замечание

На действующем ресурсе этот параметр должен быть отключен.


image.thumb_width

image.thumb_width — Ширина эскизов изображений

Описание

В интерфейсе администратора Cairo значение полей типа "Изображение" выводится в виде уменьшенных копий изображений. Параметр image.thumb_width определяет ширину выводимых эскизов. Если значение параметра будет равно 0, то ширина будет подбираться пропорционально размерам изображения. В этом случае должна быть задана высота.


image.thumb_height

image.thumb_height — Высота эскизов изображений

Описание

В интерфейсе администратора Cairo содержимое полей типа "Изображение" выводится в виде уменьшенных копий изображений. Параметр image.thumb_height определяет высоту выводимых эскизов. Если значение параметра будет равно 0, то высота будет подбираться пропорционально размерам изображения. В этом случае должна быть задана ширина.


image.thumb_handler

image.thumb_handler — Способ, которым будут создаваться уменьшенные копии изображений

Описание

Создание эскизов изображений может осуществляться двумя способами: с помощью библиотеки GD (значение параметра "GD") и с помощью внешней утилиты convert, входящей в пакет Image Magic (значение параметра "ImageMagic").

При использовании ImageMagic качество эскизов значительно выше, однако, данный способ требует вызова внешней утилиты, которая не всегда установлена на сервере.

В обоих случаях эскизы изображений генерируются один раз. Затем используются кэшированные версии эскизов.


image.gd_ver

image.gd_ver — Версия GD

Описание

Параметр используется только в случае, если в параметре image.thumb_handler указано использование библиотеки GD.

Значение параметра влияет на то, какая функция будет использоваться для получения уменьшенной копии изображения. Если версия GD < 2.0, то будет использоваться функция imagecopyresized(). Если же версия библиотеки GD >= 2.0, то будет использоваться функция imagecopyresampled(). Использование функции imagecopyresampled() позволяет получать эскизы более высокого качества.


image.convert

image.convert — Полный путь к утилите convert

Описание

Параметр используется только в случае, если в параметре image.thumb_handler указано использование пакета ImageMagic.

Значение параметра указывает полный путь к утилите convert, используемой для сжатия изображения.


file.icon_width

file.icon_width — Ширина иконок файлов

Описание

В интерфейсе администратора Cairo содержимое полей типа "Файл" выводится в виде ссылки на загрузку файла и иконки, представляющей MIME-тип сохраненного файла.

Рекомендуется использовать значение параметра равное 16.


file.icon_height

file.icon_height — Высота иконок файлов

Описание

В интерфейсе администратора Cairo содержимое полей типа "Файл" выводится в виде ссылки на загрузку файла и иконки, представляющей MIME-тип сохраненного файла.

Рекомендуется использовать значение параметра равное 16.


[utils]

[utils] — Секция содержит пути к внешним программам

Описание

В секции [utils] задаются полные пути к системным утилитам (zip, unzip, mysqldump), которые использует Cairo в своей работе. Эти утилиты необходимы для организации импорта данных в систему. Если Вы не собираетесь использовать импорт, то значения параметров в секции utils можно оставить пустыми.

Если Вам, при создании собственных модулей, необходимо использовать внешние утилиты, то пути к ним должны определяться в секции [utils].


mail.host

mail.host — Имя SMTP-сервера

Описание

Зарезервировано.


mail.from

mail.from — E-mail адрес, от которого будут отправляться письма

Описание

Во всех письмах, которые будут отправлены системой, в качестве отправителя будет фигурировать значение данного параметра.


mail.webmaster

mail.webmaster — E-mail адрес веб-мастера ресурса

Описание

Значение этого параметра будет появляться везде, где необходимо вывести адрес администратора ресурса, например, на страницах ошибок.


webface.free_entities

webface.free_entities — Выводить ли переключатель "Свободных сущностей"

Описание

Зарезервировано.


webface.gzip

webface.gzip — Сжатие выходного потока данных

Описание

Параметр может принимать два значения: "on" и "off". Если значение параметра равно "on", то выходной поток данных будет сжиматься с использованием алгоритма gzip, что позволяет многократно уменьшить объемы передаваемой через сеть информации.

fields.ini


Файл fields.ini содержит настройки полей данных. Эти настройки используются в модуле управления структурой данных как настройки по умолчанию для различных типов полей.

Параметры каждого типа данных оформляются в виде отдельной секции. Имя секции должно совпадать с именем типа данных. Набор параметров в секции постоянен, отличаются только их значения. Например, описание типа "Строка" выглядит следующим образом:

[string]
handler     = fldAbstract
alias       = string
format      =
template    = string
sql_type    = VARCHAR
size        = 255
format_preg = /.*/
default_val =
condition   =
er_msg      =
ntf_msg     =
required    =
comment     =
visible     =
in_title    =
is_shown    =
order_type  =
ent_title   =

В данном разделе описываются параметры типа данных, которые используются в каждой секции.

Содержание

handler - Класс-обработчик
alias - Псевдоним типа
format - Формат поля
template - Префикс шаблона
sql_type - SQL-тип, используемый для хранения содержимого поля
size - Размер поля
format_preg - Регулярное выражение для проверки значения поля
default_val - Значение поля по умолчанию
condition - Условие истинности
er_msg - Сообщение об ошибке
ntf_msg - Предупреждение
required - Важность поля
comment - Комментарий
in_title - Может ли поле выводиться в списке сущностей
is_shown - Показывается ли в списке по умолчанию
order_type - Тип сортировки по умолчанию
ent_title - Участвует ли в формировании заголовка сущностей

handler

handler — Класс-обработчик

Описание

Параметр зарезервирован.


alias

alias — Псевдоним типа

Описание

Псевдоним типа используется в модуле управления структурой данных в качестве его названия.


format

format — Формат поля

Описание

Параметр format используется для передачи классу обработчику дополнительных настроек. Например, для полей типа "Справочник" в параметре format передается идентификатор справочника, элементы которого используются.

Назначение и содержимое параметра format может существенно отличаться у различных типов.


template

template — Префикс шаблона

Описание

Для отображения содержимого полей в различных состояниях (вывод, редактирование, фильтры) используются специализированные шаблоны. Имена шаблонов, предназначенных для одного типа, имеют один префикс. Например, шаблон редактирования поля E-mail называется email_show_edit.tpl.php, а шаблон редактирования поля "Текст" - text_show_edit.tpl.php.

Замечание

Если шаблон поля с заданным префиксом не найден, то используется аналогичный шаблон с префиксом "default".


sql_type

sql_type — SQL-тип, используемый для хранения содержимого поля

Описание

Значения полей хранятся в базе данных (исключением являются поля типа "Изображение" и "Файл", значения которых хранятся в файловой системе). Обычно, для хранения одного значения поля используется одно поле таблицы БД. Параметр sql_type содержит тип данных SQL, используемый для хранения значений полей данного типа.


size

size — Размер поля

Описание

Зарезервировано.


format_preg

format_preg — Регулярное выражение для проверки значения поля

Описание

Система Cairo поддерживает несколько способов проверки введенных значений. Первый из них - проверка введенного значения на соответствие шаблону, заданному регулярному выражению. Если введенное значение не будет соответствовать шаблону, то сущность сохранена не будет.

В параметре format_preg используется синтаксис Perl-совместимых регулярных выражений. Выражения должны содержать ограничители в виде слэша ("/") и модификаторы регулярного выражения, если они необходимы.

Замечание

Параметр не должен быть пустым. Если регулярное выражение использоваться не будет, то следует определять его следующим образом:

format_preg = "/.*/"

Примеры

Пример 1. Регулярное выражение для проверки корректности ввода E-mail

format_preg = "/^[a-z0-9_\-\.]+@([a-z0-9_\-]+\.)+[a-z]{2,5}$/i"

Пример 2. Регулярное выражение для проверки корректности ввода URL

format_preg = "/^(([\w\d_\-]+\.)+[a-z]{2,4})?((\/[^\?]*)?(\?.*)?)?$/"

default_val

default_val — Значение поля по умолчанию

Описание

Параметр содержит значение поля по умолчанию.


condition

condition — Условие истинности

Описание

Условие истинности используется для дополнительной проверки вводимых данных. С помощью сравнения с шаблоном (см. format_preg) невозможно добиться некоторых видов проверок, например, невозможно задать дату большую, чем текущий момент и т.п. Для таких проверок может использоваться параметр condition.

Выражение в condition представляет собой фрагмент PHP-кода, который должен возвращать true или false. Если выражение возвращает true, то считается, что проверка пройдена. В качестве переменных в выражении допускается использовать любые поля, относящиеся к текущему типу сущности. Используя данный параметр, можно задвать различные условия. Например, может быть задано условие, при котором дата рождения не может быть больше даты окончания ВУЗ'а.

Примеры

Пример 3. Значение amount должно быть больше 10

condition = "$amount > 10"

Пример 4. Значение birthdate должно быть меньше значения graduate

condition = "$birthdate < $graduate"

er_msg

er_msg — Сообщение об ошибке

Описание

В случае если введенное значение не соответствует шаблону, заданному в поле format_preg или условию, определенному в condition, пользователю будет выведено сообщение, указанное в параметре er_msg.


ntf_msg

ntf_msg — Предупреждение

Описание

Сообщение, заданное в данном параметре, появляется тогда, когда поле является "важным" и его значение не было задано.


required

required — Важность поля

Описание

Параметр может принимать три значения:

  • 0 - поле не обязательное

  • 1 - поле важное (в случае, если оно не будет заполнено, будет выведено предупреждение)

  • 2 - поле обязательное.


comment

comment — Комментарий

Описание

Комментарий к полю выводится на страницах добавления и редактирования сущности в интерфейсе администратора Cairo.


in_title

in_title — Может ли поле выводиться в списке сущностей

Описание

Если параметр равен "on", то значение поля может выводиться на странице списка сущностей в интерфейсе администратора Cairo.


is_shown

is_shown — Показывается ли в списке по умолчанию

Описание

Если параметр равен "on", то значение поля будет выводиться по умолчанию на странице списка сущностей в интерфейсе администратора Cairo.


order_type

order_type — Тип сортировки по умолчанию

Описание

Параметр определяет тип сортировки поля по умолчанию на странице списка сущностей интерфейса администратора Cairo.

  • параметр не задан - сортировка по умолчанию производиться не будет

  • "disabled" - сортировка отключена

  • "ASC" - сортировка по возрастанию

  • "DESC" - сортировка по убыванию


ent_title

ent_title — Участвует ли в формировании заголовка сущностей

Описание

Если параметр равен "on", то значение поля будет использоваться при формировании заголовка сущности.

import.ini


Файл import.ini содержит настройки модуля импорта, который обеспечивает единый механизм импорта для различных информационных ресурсов.

Для структур данных любой степени сложности используется единый формат файлов импорта. Описание формата можно найти в руководстве "Система управления контентом CAIRO: Формат файла импорта". Этот формат позволяет добавлять, обновлять и удалять данные в системе Cairo.

Для каждого ресурса данных, использующего импорт, в файле import.ini должна содержаться секция с именем ресурса таким же, как и в файле login.ini. Секция должна содержать идентификаторы пользователя и группы, от которых производится импорт, идентификатор родительской сущности, используемой по умолчанию и перечень первичных ключей для всех типов, которые будут импортироваться.

Секция ресурса имеет следующий синтаксис:

[<Имя ресурса>]
uid = <ID пользователя, от которого производится импорт>
gid = <ID группы, от которой производится импорт>
set.parentid = <ID родительской сущности по умолчанию>
<имя импортируемого типа (таблицы) #1> = "<Имя первичного ключа в файле>, <Имя первичного ключа в БД>"
<имя импортируемого типа (таблицы) #2> = "<Имя первичного ключа в файле>, <Имя первичного ключа в БД>"

Содержание

uid - ID пользователя, от которого производится импорт
gid - ID группы, от которой производится импорт
1. Первичные ключи

uid

uid — ID пользователя, от которого производится импорт

Описание

Параметр содержит идентификатор пользователя, от которого будет производиться импорт.

При использовании импорта может быть удобным выделить для этого процесса отдельного пользователя и группу. Такой подход позволяет отслеживать те изменения, которые внесены импортом. Тем не менее, импорт может осуществляться и от обычного пользователя.


gid

gid — ID группы, от которой производится импорт

Описание

Параметр содержит идентификатор группы, от которой будет производиться импорт.

При использовании импорта может быть удобным выделить для этого процесса отдельного пользователя и группу. Такой подход позволяет отслеживать те изменения, которые внесены импортом. Тем не менее, импорт может осуществляться и от обычного пользователя.

Глава 1. Первичные ключи

Для каждого типа сущностей, который будет импортироваться, необходимо прописать какие его поля считать первичным ключом и как эти поля будут называться в файле импорта.

Первичные ключи используются при сопоставлении сущностей в импортируемом файле с сущностями уже существующими в БД. Если сопоставление найдено, то сущность будет обновляться, иначе она считается новой и будет добавляться.

Строка описания первичных ключей выглядит следующим образом:

<имя импортируемого типа (таблицы)> = "<Имя первичного ключа в файле>, <Имя первичного ключа в БД>"

Под "именем импортируемого типа (таблицы)" подразумевается имя основной таблицы, в которой хранятся данные этого типа сущностей. Имя таблицы можно узнать через интерфейс администратора Cairo в разделе "Управление структурой данных" на странице параметров типа.

"Имя первичного ключа в файле" это имя параметра, указанного в теге <name>. А "Имя первичного ключа в БД" - имя поля, по которому данные доступны в БД. Если поле является составным, то следует использовать главное имя (которое является префиксом всех остальных).

login.ini


Файл login.ini содержит настройки всех ресурсов данных. Только после описания в данном файле ресурс данных будет доступен через интерфейс администратора Cairo.

Каждый ресурс данных представлен в файле отдельной секцией, в которой заданы все его параметры. Секция имеет следующую структуру:

[<Имя ресурса>]
dbhost                     = <Адрес сервера БД>
dbuser                     = <Имя пользователя БД>
dbpasswd                   = <Пароль к БД>
dbname                     = <Имя БД>
dbcharset                  = <Кодировка БД>
dbversion                  = <Версия БД>
authhost                   = <Имя хоста, по которому доступен
                              интерфейс администратора>
basedir                    = <Полный путь установки>
uploaddir                  = <Полный путь к загружаемому каталогу>
cachedir                   = <Полный путь к каталогу кэша>
frmtext_files              = <Внутренний путь к каталогу
                              форматированного текста>
httphost                   = <Имя хоста ресурса>
locale                     = <Локаль интерфейса администратора>
auth_user                  = <Список администраторов ресурса>
auth_group                 = <Список групп ресурса>

<имя модуля>.accept_users  = <Пользователи модуля>
<имя модуля>.accept_groups = <Группы модуля>

Содержание

dbhost - Адрес сервера БД
dbuser - Имя пользователя БД
dbpasswd - Пароль к БД
dbname - Имя БД
dbcharset - Кодировка БД
dbversion - Версия БД
authhost - Имя хоста, по которому доступен интерфейс администратора
basedir - Полный путь к каталогу ресурса данных
uploaddir - Полный путь к каталогу загрузки
cachedir - Полный путь к каталогу кэша
frmtext_files - Каталог файлов для форматированного текста
httphost - Имя хоста ресурса
locale - Локаль интерфейса администратора
auth_user - Список администраторов ресурса
auth_group - Список групп администраторов ресурса
2. Настройки доступа к модулям

dbhost

dbhost — Адрес сервера БД

Описание

Параметр содержит имя сервера БД. Здесь может использоваться как IP-адрес, так и доменное имя.


dbuser

dbuser — Имя пользователя БД

Описание

Параметр содержит имя пользователя БД. Пользователь должен иметь полные права на базу данных ресурса.


dbpasswd

dbpasswd — Пароль к БД

Описание

Параметр содержит пароль к БД для пользователя, определенного в поле dbuser.


dbname

dbname — Имя БД

Описание

Параметр содержит имя БД, в которой содержится вся информация ресурса.


dbcharset

dbcharset — Кодировка БД

Описание

Параметр dbcharset может использоваться в случае, когда необходимо явно указать кодировку, в которой сервер должен отдавать данные. Часто, на сервере установлена кодировка по умолчанию, и данный параметр можно оставить пустым.


dbversion

dbversion — Версия БД

Описание

Параметр dbversion используется для определения типа вызова, который устанавливает кодировку БД. Значение должно записываться в параметр в том формате, в котором оно возвращается следующим запросом:

SHOW VARIABLES LIKE "version";

authhost

authhost — Имя хоста, по которому доступен интерфейс администратора

Описание

Параметр authhost содержит имя хоста, с которого осуществляется доступ к интерфейсу администратора описываемого ресурса. Значение параметра используется для разделения доступа к ресурсам по доменному имени. Представим себе следующую ситуацию: на сервере установлен один экземпляр системы Cairo, под управлением которой работает множество ресурсов данных. На странице авторизации интерфейса администратора Cairo в выпадающем списке "Ресурс" выводится перечень всех доступных ресурсов данных. Нам нужно организовать работу двух клиентов: Алисы и Боба. При этом система должна быть настроена так, чтобы в выпадающем списке ресурсов Алиса видела только свои ресурсы, а Боб - только свои. Чтобы решить поставленную задачу, следует создать виртуальный хост для интерфейса администратора, например, auth.cairo, и добавить к нему два псевдонима (alice.auth.cairo и bob.auth.cairo). После этого в настройках каждого ресурса данных Алисы в authhost записывается значение alice.auth.cairo, а для ресурса Боба соответственно bob.auth.cairo. В результате на странице авторизации, доступной по адресу alice.auth.cairo/auth/ в списке ресурсов будут доступны только ресурсы Алисы, а на странице bob.auth.cairo/auth/ - только ресурсы Боба.


basedir

basedir — Полный путь к каталогу ресурса данных

Описание

Путь должен быть задан в файловом пространстве сервера. Чтобы определить данное значение, необходимо открыть через браузер специальный PHP-файл, созданный в каталоге ресурса данных. Файл должен содержать следующий код:

  1. <?php
  2.     echo $_SERVER["DOCUMENT_ROOT"];
  3. ?>

uploaddir

uploaddir — Полный путь к каталогу загрузки

Описание

В каталоге загрузки хранятся изображения и файлы, добавляемые через интерфейс администратора Cairo. В большинстве случаев значение параметра должно быть basedir/var/uploaded, где вместо basedir следует подставить значение из соответствующего параметра.


cachedir

cachedir — Полный путь к каталогу кэша

Описание

В каталоге хранятся эскизы изображений и другая информация, требующая кэширования. В большинстве случаев значение параметра должно быть basedir/var/cache, где вместо basedir следует подставить значение из соответствующего параметра.


frmtext_files

frmtext_files — Каталог файлов для форматированного текста

Описание

Параметр используется для подключаемых WYSIWYG-редакторов, которые позволяют работать с изображениями. В нем указывается каталог, в котором хранятся изображения для полей типа "Форматированный текст". В большинстве случаев значение параметра должно быть basedir/var/frmtext-files, где вместо basedir следует подставить значение из соответствующего параметра.


httphost

httphost — Имя хоста ресурса

Описание

Имя хоста ресурса отличается от имени хоста интерфейса администратора. Значение параметра должно содержать только одно имя. В случае, если у ресурса несколько доменных имен, должно использоваться только одно.


locale

locale — Локаль интерфейса администратора

Описание

Установки локали влияют на язык интерфейса администратора и на способы отображения некоторых данных: вещественных, денежных и т.п.


auth_user

auth_user — Список администраторов ресурса

Описание

Параметр auth_user определяет, какие пользователи имеют право доступа к системе администрирования. Значения параметра - список идентификаторов пользователей, разделенных запятой. Если параметр не заполнен, то доступ в систему администрирования будет иметь только пользователь root.


auth_group

auth_group — Список групп администраторов ресурса

Описание

Параметр auth_group определяет, какие группы пользователей имеют право доступа к системе администрирования. Значения параметра - список идентификаторов групп пользователей, разделенных запятой. Если параметр не заполнен, то доступ в систему администрирования будет иметь только пользователь root.

Глава 2. Настройки доступа к модулям

Функциональность универсального интерфейса администратора может расширяться за счет модулей. В стандартной поставке идут следующие модули:

  • Управление структурой данных

  • Управление справочниками

  • Импорт данных

  • Управление пользователями

Существует возможность создания дополнительных модулей.

По умолчанию доступ к модулям имеет только пользователь root. Чтобы разрешить использование модулей другим пользователям/группам, необходимо для каждого такого модуля в секции соответствующего ресурса данных описать перечень пользователей и групп, которые имеют доступ к модулям:

<имя модуля>.accept_users  = <Пользователи модуля>
<имя модуля>.accept_groups = <Группы модуля>

Списки оформляются в виде идентификаторов пользователей/групп, разделенных запятыми. Например,

modtypes.accept_users = 2,3
modtypes.accept_groups = 1

moddict.accept_users = 16
moddict.accept_groups =

modimport.accept_users = 1
modimport.accept_groups =

modusers.accept_users =
modusers.accept_groups = 1,3

mimes.ini


Формат файла

Файл mimes.ini содержит соответствия расширений файлов их MIME-типам. Каждое расширение описывается в формате:

<Расширение> = <MIME-тип>

Ниже приведен пример файла mimes.ini.

;# This file contents MIME-types that
;# Cairo can recognize

jpg   = image/jpeg
jpe   = image/jpeg
png   = image/png
gif   = image/gif
htm   = text/html
html  = text/html

js    = application/x-javascript

Такое соответствие необходимо для отображения иконок файлов при выводе значений полей типа "Файл" в интерфейсе администратора Cairo.