Копая groupoffice (http://group-office.com/) столкнулся с такой проблемой. Официально русский язык там не влючен, хотя присутствует c комментарием в language/languages.inc
//Needs UTF-8 Conversion
Т.е конвертировать надо;)
Если вам лень, можно ничего не конвертировать и спокойно работать с koi8r. Для этого раскомментируйте строки вида
$languages['ru']
в language/languages.inc и если хотите сделать Великий и Могучий по умолчанию добавьте в config.php
$config['language']='ru';
Но могут быть неприятные моменты, например у меня локаль utf8 и в модуле Email меня ждало разочарование в виде поломанной кодировки сообщений. Меня это не устроило, поэтому было решено перекодировать.
Сразу огорчу, на русский переведено не все, так что кому хочеться полного перевода, все в ваших руках.
Итак, за локализацию у нас отвечают файлы language/чтото/lang.inc и modules/какойтомодуль/language/lang.inc ( где lang локализация).
Это командой мы внесем небольшую автоматизацию в процесс перевода ( спасибо ti.eugene;)
Делать соответственно в корневой директории вашего groupoffice.
$ for i in `find . -name ru.inc`; do echo $i; enca $i; done
cat ./modules/groups/language/ru.inc | iconv -f utf-8 -t iso-8859-1| iconv -f koi8-r -t utf-8 > ru.tmp && mv ru.tmp modules/groups/language/ru.inc
cat ./modules/users/language/ru.inc | iconv -f utf-8 -t iso-8859-1| iconv -f koi8-r -t utf-8 > ru.tmp && mv -f ru.tmp modules/users/language/ru.inc
for i in `find . -name ru.inc`; do enconv $i; done
Проверка нужна из-за того, что мне встретились несколько файлов на которые enca сказала
$ enca ru.inc
Universal transformation format 8 bits; UTF-8
Doubly-encoded to UTF-8 from ISO-8859-5
О_о ..О как.
Такие файлы нужно кодировать по другому.
Последний штрих:
head -n 3 language/common/ru.inc
get_fallback_base_language_file('common'));
[root@rick1 groupoffice]# head -n 10 language/common/ru.inc
get_fallback_base_language_file('common'));
#$charset = 'UTF-8';
$charset = 'utf-8';
//$charset = 'KOI-8';
Вроде все.
PS: Добавлю еще, что groupoffice по моему мнению самый эргономичноый из php-base groupware, но в связи с политикой двойного лицензирования самые вкусные вещи ( например syncml синронизация) доступны только в Pro версии, которая платная и имеет проприетарную часть кода. Поэтому это решение подойдет тем кому нужен минимальный функционал ( по ссылке сравнение community и prof версии).
понедельник, 3 марта 2008 г.
Подписаться на:
Сообщения (Atom)