2.3. Константы
Data Source Eng Data Source Confluence
В К4 константы делятся по смыслу исходя из места их определения на:
системные - определяются в
core/kernel/startup.phpобщего применения - определяются в
core/kernel/constants.phpмодульные - определяются в необязательном файле
<название_модуля>/constants.php
2.3.1. Системные константы
название |
описание |
|---|---|
| FULL_PATH | Полный путь к сайту в файловой системе сервера. |
| BASE_PATH | Директория, в которой находится сайт (относительно $_SERVER[„DOCUMENT_ROOT“]) |
| REL_PATH | Путь от корня проекта до PHP-файла (обычно это
Данная константа используется только для корректного получения значения константы
BASE_PATH. Если своевременно не определить данную константу, то ссылки,
построенные при помощи метода |
| SERVER_NAME | Изменено в версии 4.3.9: Добавлена функциональность работающая в случае, когда не удалось получить имя виртуального хоста. Имя виртуального хоста ( |
| WRITEABLE | Содержание констант FULL_PATH и WRITEBALE_BASE вместе. |
| MAX_UPLOAD_SIZE | Максимальный размер файла, который можно загрузить на сервер (в байтах). |
Осторожно
Константы WRITEABLE и WRITEBALE_BASE неправильно названы. По английски они правильно
должны называться WRITABLE и WRITABLE_BASE соответственно.
Пример:
Путь в web browser: http://alex.prod.intechnic.lv/test_project.
FULL_PATH- «/home/sites/alex/web/test_project»BASE_PATH- «/test_project»SERVER_NAME- «alex.prod.intechnic.lv»WRITEBALE_BASE- «/system»WRITEBALE- «/home/sites/alex/web/test_project/system»
2.3.2. Константы общего применения
распространённые типы записей (статусы) в базе данных:
название |
описание |
значение |
|---|---|---|
| STATUS_ACTIVE | Запись активна. |
1 |
| STATUS_DISABLED | Запись не активна. |
0 |
| STATUS_PENDING | Запись требует подтверждения администратора. |
-2 |
статусы секций в дереве в административной консоли:
название |
описание |
|---|---|
| stTREE | Секция присутствует только в дереве (почти все секции). |
| stTAB | Секция присутствует только как закладка (см. в In-Commerce:Discounts & Coupons). |
статусы завершения событий в K4:
название |
описание |
|---|---|
| erSUCCESS | Событие успешно завершило своё выполнение. После выполнения события будет сделано перенаправление, выполняемое для того, чтобы пользователь перезагрузив страницу (F5) повторно не вызвал это событие. |
| erFAIL | Событие завершило свою работу, но не выполнило одну или более требуемых задач. Перенаправление происходить не будет. |
| erFATAL | Событие полностью не сделало свою работу (хуки не будут выполняться). Перенаправление происходить не будет. |
| erPERM_FAIL | Проверка прав доступа не прошла успешно. Автоматически будет выполнено перенаправление на шаблон сообщающий пользователю об отсутствии у него прав на данное событие. |
| erSTOP | Событие возвращает ответ в AJAX запрос. Шаблон не будет обработан после выполнения события, код отладчика тоже добавлен не будет. |
константы, использующиеся при редактировании содержания сайта через административную консоль.
название |
описание |
|---|---|
| EDITING_MODE | Добавлено в версии 5.0.0. Данная константа заменяет собой методы |
| EDITING_MODE_CMS | Добавлено в версии 5.0.0. Режим редактирования сайта, при котором изменяться может только содержание cms-блоков (это был единственный возможный режим редактирования сайта до v5.0.0). |
| EDITING_MODE_LAYOUT | Добавлено в версии 5.0.0. Режим редактирования сайта, при котором изменяться может изменяться только содержание блоков,
при подключении которых был передан параметр <inp2:m_RenderElement name="block_name" layout_view="1"/>
В теме |
| EDITING_MODE_DESIGN | Добавлено в версии 5.0.0. Режим редактирования сайта, при котором изменяться может только дизайн показываемых на шаблоне
блоков, т.е. блоков, которые были указаны в параметре <inp2:m_RenderElement name="element_name" design="design_block_name"/>
В теме |
разное:
название |
описание |
значение |
|---|---|---|
| ENV_VAR_NAME | Значение данной константы используется для определения названия переменной окружения в запросе к серверу. |
|
| VALUE_LIST_SEPARATOR | Значение, которое будет использоваться для объединения
возможных опций в полях |
|
| REGEX_EMAIL_USER | Добавлено в версии 4.0.1. Регулярное выражение, которое проверяет части с именем пользователя в
адресе электронной почты ( $regexp = '/^(' . REGEX_EMAIL_USER . '@' . REGEX_EMAIL_DOMAIN . ')$/i';
|
|
| REGEX_EMAIL_DOMAIN | Добавлено в версии 4.0.1. Регулярное выражение, которое проверяет части с доменом ( $regexp = '/^(' . REGEX_EMAIL_USER . '@' . REGEX_EMAIL_DOMAIN . ')$/i';
|
|
| ALLOW_DEFAULT_SETTINGS | Добавлено в версии 4.2.2. Данная константа задумана для передачи в метод
$value = $this->Application->RecallPersistentVar(
'VarName',
ALLOW_DEFAULT_SETTINGS
);
Если требуемой переменной в таблице PersistantSessionData нету и используется эта константа, то будет возвращено значение этой переменной взятое у пользователя, указанного в конфигурационной переменной DefaultSettingsUserId. |
|
Константы это идентификаторы значений, которые не могут изменяться по ходу выполнения скрипта.
2.3.3. Константы из config.php
В базовой директории проекта (той, что в FULL_PATH константе) находиться файл config.php, который
содержит настройки для подключения к базе данных и ряд других параметров, которые при инициализации K4 превращаются
в константы. На данный файл нельзя, не в коем случае, делать commit. По своему формату этот файл похож на
обычный ini файл. Единственное отличие это расширение файла и защитная php конструкция в его начале.
название константы |
название опции |
описание |
|---|---|---|
| SQL_TYPE |
|
Тип сервера баз данных. Пока поддерживается только MySQL. |
| SQL_SERVER |
|
IP адрес или имя сервера баз данных. |
| SQL_USER |
|
Имя пользователя, для подключения к базе данных. |
| SQL_PASS |
|
Пароль, для подключения к базе данных. |
| SQL_DB |
|
Название базы данных. |
| SQL_COLLATION |
|
Тип сопоставления строк, используемый при работе базой данных (напр. |
| SQL_CHARSET |
|
Кодировка данных, используемая при работе базой данных (напр. |
| TABLE_PREFIX |
|
Префикс таблиц проекта в базе данных. |
| DOMAIN |
|
Домен, на котором сайт находиться. Используется для выхода из SSL-режима, а также для проверки лицензии в
|
| ADMIN_DIRECTORY |
|
Добавлено в версии 4.3.0. Расположение директории с административной консолью относительно FULL_PATH. |
| EDITOR_PATH |
|
Добавлено в версии 4.3.2. Расположение директории с |
| WRITEBALE_BASE |
|
Директория, в которую имеет право писать сервер (обычно |
| APPLICATION_CLASS |
|
Класс, который используется для создания объекта Application, например
|
| APPLICATION_PATH |
|
Расположение файла с классом, указанным в APPLICATION_CLASS относительно корня сайта
(с указанием |
Предупреждение
Этот шаблон содержит поломанные ссылки.