все новости

Версия 5.4 в trunk

29/03/2012

В trunk ветку выложена версия 5.4, которая содержит в себе достаточно много изменений.

Основные изменения коснулись класса настроек. На смену устаревшему и кишевсему различными костылями классу LabConfig пришел класс config с достаточно простым синтаксисом и более предсказуемым поведением.

Теперь для работы с конфигурацией есть четыре основных метода: get, set, save и delete.

Синтаксис методов такой:

PHP
get('core.varname') //получить глобальную настройку varname
get('varname') //получить настройку varname текущего модуля
get('module.modulename.varname') //получить настройку varname модуля modulename

так же опционально может передаваться параметр $group_id чтобы получить настройку для указанной группы.

Подобный синтаксис выбран для унификации с синтасисом шаблонов. Аналогичные переменные в шаблоне будут выглядеть так:

Smarty
{$config.core.varname} {*получить глобальную настройку varname*}
{$config.current.varname} {*получить настройку varname текущего модуля*}
{$config.module.modulename.varname} {*получить настройку varname модуля modulename*}

Массив $config теперь передается в шаблон по ссылке, так что все изменения в коде автоматически в нем отражаются.

Метод set устанавливает значение для текущего вызова, а метод save - сохраняет значение в БД.

 

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

 

Всего комментариев: 0

Имя*:

Email: