Использование библиотек - PNixx/Boot GitHub Wiki
Для подключения библиотек в проект, достаточно указать их имя, без расширения, в файле application/config/library.conf
, каждое с новой строки.
system/library/auth.php
- библиотека для авторизации пользователя на сайте.
Библиотека использует собственное шифрование для генерации токена авторизации. Шифрование происходит, используя ключ default.skey
из файла application/config/application.ini
.
system/library/log.php
- библиотека для логирования.
Библиотека записывает ошибки в файл log/error.log
при срабатывании exception на production сервере.
system/library/mail.php
- библиотека для отправки писем.
Библиотека позволяет отправлять структурированные письма стандартной функцией mail. Так же при возникновении exception на production сервере, если указан email ключ mail.error
в конфиге application/config/application.ini
.
system/library/translate.php
- библиотека переводов.
Библиотека позволяет использовать несколько языков на сайте. Структура файла, согласна стандарту *.po. Файлы переводов лежат в директории application/lang/
.
Использование:
$this->translate->_("Hello")
- controller, view. Возвращает переведенное слово, либо тот же самый текст.
Boot_Exception_Interface
- интерфейс перехвата ошибок. Прописывается к библиотекам. При возникновении ошибки, вызываются функции onException
во всех библиотеках, расширенных данным интерфейсом в том порядке, в котором они указаны в файле application/config/library.conf
.
system/library/debug.php
- работает только в development режиме. Логирование происходит в файл log/debug.log
(директория указывается в конфиге application/config/application.ini
). Для отслеживания используем tail -f log/debug.log
.
system/library/form.php
- конструктор форм. Пример использования:
<? $f = new Boot_Form_Lib("images", $image, array("method" => "post")) ?>
<?= $f->input('name', ['label' => 'Имя', 'required' => 'required', 'maxlength' => 255]) ?>
<?= $f->input('file', ['as' => 'file', 'label' => 'Выберите файл для загрузки']) ?>
<?= $f->input('enable', ['label' => 'Enable?', 'as' => 'checkbox']) ?>
<?= $f->submit('Сохранить', ['class' => 'btn']) ?>
<? $f->end() ?>