логин: 
Другие записи за это число:
2011/03/09 - ВНИМАНИЕ!!! Я поломал авторизацию!!!
<< предыдущая заметкаследующая заметка >>
09 марта 2011
Языковый модуль

Для Темы Павлова и остальных разработчиков.

С этого дня в движке вводится система выбора языка.
Все языковые раскладки хранятся в
/module/lang/ru.txt
/module/lang/en.txt
/module/lang/vazya_pupkin_sochinil_padonkaffskuu_raskladlu.txt
Переменная, отвечающая за язык: $mylang='ru'; в config.php
Если не установлена — по умолчанию ru.

Как пользоваться?

1. Самый простой случай. Допустим, вы пишете код, и там надо написать системное сообщение: print "Охуеть, дайте 2 и побыстрее!";

Дописываем в языковую раскладку ru.txt новую строку БЕЗ переводов каретки, но разделяя поля табуляцией:
TEST:S1<tab>Охуеть, дайте 2 и побыстрее!

И вызываем так: print LL('TEST:S1');

2. Пример с подстановками. Пишем в раскладку:
TEST666<tab>Охуеть, дайте 256 и {kak}!
TEST777<tab>Охуеть, дайте {0}!

Вызываем:
print LL('TEST666',array('num'=>2,'kak'=>'побыстрее'));

Если аргумент всего один {0}, можно сразу:
print LL('TEST666',2);


3. Пример совсем сложный, с условием. Пишем в раскладку:
TEST:uslovie<tab>Охуеть, дайте 256 и {kak?tak|ilitak|}!

Вызываем: print LL('TEST:uslovie',array('num'=>2,'kak'=>rand(0,1),'tak'=>'побыстрее',ilitak=>'помедленнее'));

Повторяю формат: {имя_переменной?строка_если_истина|строка_если_ложь|}
Завершающую комбинацию пришлось сделать «|}», чтоб не конфликтовало с маяксами.

PS:
Примечание 1: Названия выдаем согласно модулям или частям. Например, для комментариев я даю названия: "comm:ostalnye", "comm:off", "comm:friends_only"

Примечание 2: убедительная просьба не использовать в раскладке функций javascript, onclick и т.п. - выносите всякий 'onclick=majax()' в переменную и передавайте из кода как {majax}. Это и упростит пользователям понимание, и будет нужно на будущее, когда движок станет многопользовательским, и мы запретим составлять раскладки с потенциально опасными командами.

Ну а сейчас я попробую вынести опции комментариев в раскладку.

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок
Оставить комментарий
Linux Ubuntu Firefox
0
0
Andrey Pozdnyakov
test
Windows Firefox
0
0
lleo.me/[email protected]Артем Павлов
Эх, времени сейчас нет всю эту крутотень освоить, обидно :(
<< предыдущая заметка следующая заметка >>