Компонент словаря
        Всем добрый день!
Вот решилась написать свой первый компонент. Назвала lexiconmini. Это то же самое, что и обычный словарь. Только тут доступ открыт к одному namespace — sitelang, тем самым закрывая доступ пользователю к системным переводам.
Скачать можно тут:
ПЕРЕД УСТАНОВКОЙ: если у вас есть пространство имен sitelang и там есть файлы default.inc.php, то компонент их перезапишет. поэтому лучше сделать бэкап.
Хотелось бы услышать мнение об этой штуке и стоит ли ее выкладывать для скачивания.
yadi.sk/d/_wf9_Pwf8hT56
Update 15.10.2013 
Версия beta2 с плагином внутри
yadi.sk/d/R399tuPpAyA4L
Скриншоты:

    
    
    
                                                                                
            Вот решилась написать свой первый компонент. Назвала lexiconmini. Это то же самое, что и обычный словарь. Только тут доступ открыт к одному namespace — sitelang, тем самым закрывая доступ пользователю к системным переводам.
Скачать можно тут:
ПЕРЕД УСТАНОВКОЙ: если у вас есть пространство имен sitelang и там есть файлы default.inc.php, то компонент их перезапишет. поэтому лучше сделать бэкап.
Хотелось бы услышать мнение об этой штуке и стоит ли ее выкладывать для скачивания.
yadi.sk/d/_wf9_Pwf8hT56
Версия beta2 с плагином внутри
yadi.sk/d/R399tuPpAyA4L
Скриншоты:

    Комментарии: 9
                Ты бы хоть скриншотиков добавила, или даже установила на modx-test.com для демонстрации.            
                    
                Выложила, там то же самое, что и словарь.             
                    
                Мне кажется, компоненту еще не помешает плагин, который будет загружать словари sitelang по OnLoadWebDocument.
Тогда пользователь сможет везде использовать плейсхолдеры типа [[%sitelang_key]], и не переживать о загружке словаря сниппетом.
                    Тогда пользователь сможет везде использовать плейсхолдеры типа [[%sitelang_key]], и не переживать о загружке словаря сниппетом.
                что то не совсем поняла. 
значения словаря доступно без сниппетов.
[[%hello:htmlent? &namespace=`sitelang` &language=`[[++cultureKey]]`]] вернет например «Привет».
            
                    значения словаря доступно без сниппетов.
[[%hello:htmlent? &namespace=`sitelang` &language=`[[++cultureKey]]`]] вернет например «Привет».
                Это — жесть. Лично мне больше нравится вот так:
И если словарь загружен заранее — то это будет работать и не тратить время на лишний разбор параметров тега.
Кстати, такие короткие языковые плейсхолдеры быстро заменятся в чанках pdoTools, а длинные пойдут в парсер MODX, тормозить.
                    [[%hello]]И если словарь загружен заранее — то это будет работать и не тратить время на лишний разбор параметров тега.
Кстати, такие короткие языковые плейсхолдеры быстро заменятся в чанках pdoTools, а длинные пойдут в парсер MODX, тормозить.
                Согласна, Ваша запись гораздо приятнее) 
но я пока не знаю как такое реализовать, такие короткие записи в чанках сниппетов встречаются.
                    но я пока не знаю как такое реализовать, такие короткие записи в чанках сниппетов встречаются.
                Я же говорю — плагин на событие загрузки страницы:
Должно работать. Нужно только упаковать этот плагин в пакетик (ну и проверить, предварительно).
                    if ($modx->event->name == 'OnLoadWebDocument') {
	$modx->lexicon->load('sitelang');
}Должно работать. Нужно только упаковать этот плагин в пакетик (ну и проверить, предварительно).
                да я уже попробовала строки 
$modx->getService('lexicon','modLexicon');
$modx->lexicon->load('sitelang:default');
в файл index.php и оно работало! сейчас попробую Ваш вариант
— Update: все работает! надо только в компонент добавить плагин!
                    $modx->getService('lexicon','modLexicon');
$modx->lexicon->load('sitelang:default');
в файл index.php и оно работало! сейчас попробую Ваш вариант
— Update: все работает! надо только в компонент добавить плагин!
                все ж таки не работает) 
а вот с прописыванием в index.php — работает
                    а вот с прописыванием в index.php — работает
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.