Перевод строк клиентской части осуществляется редактированием файла b9b0/scripts/localizator.js
Файл состоит из нескольких массивов: jsStrings -- перевод строк из javascript, titleByClassStrings, htmlByClassStrings, valueByClassStrings, valueByIdStrings, titleByIdStrings, htmlByIdStrings -- это перевод строк из html. title -- всплывающие посдказки, value -- для input-элементов, html -- содержимое контейнеров. В коде html переводимые места маркируются соответствующими классами и переводятся в момент загрузки по имени класса или по id объекта. Для поиска непереведённых объектов, тест в коде шаблонов начинается с приставки "def".
Пример строки локализации:
register_caption_string: 'На введёный адрес электронной почты будет отправлен личный логин и пароль',
Где сначала следует id строки, а далее в кавычках текст для перевода.
Полная локализация может быть произведена в три этапа:
1. Перевод строк из серверной части проекта
2. Перевод клиентской части
3. Перевод письма для регистрирующихся
На этой странице описан принцип локализации бябо
Перевод строк серверной части осуществляется редактированием файла cgi-bin/b9b0/strings.pm
Его формат простой, он состоит из незначительного количества служебных данных и строк с идентификаторами, которые и нужно менять для локализации. Например:
a_error_during_registration_new_user => 'Произошла ошибка при регистрации пользователя %s. ', # $login
Где сначала следует уникальный идентификатор строки, начинающийся с префикса, который означает место использования строки (a1 -- админка, b_ -- основная доска), а далее в кавычках строка для перевода. Строка для перевода может включать в себя маркеры, на место которых будет автоматически добавлена строка (маркер %s) или числовой значение (маркер %d) из переменной, о содержании которой можно судить по комментарию после знака #. В конкретном примере будет подставлен логин пользователя.
Перевод письма для вновь регистрирующегося пользователя осуществляется в отдельном файле b9b0/email_new_user.html