Yii Framework Forum: Многоязычные Модули - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Многоязычные Модули Rate Topic: -----

#1 User is offline   lot555 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 10-July 12

Posted 14 February 2013 - 06:42 PM

Допустим у сайта настройка языка "ru"
Есть 3 модуля
У каждого модуля есть свои языковые файлы: en, ru, cz, ua
Как сделать чтобы у всех были разные языки и между ними можно было переключаться
У сайта оставить ru, а у модуля админ например в зависимости от cookie en или ua

Может у модуля где то тоже есть настройка language?
0

#2 User is offline   migel 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 6
  • Joined: 08-February 09
  • Location:Russia

Posted 15 February 2013 - 03:17 PM

У модуля настройки language нет, но ведь можно при наследовании от CWebModule ввести public-свойство language, соотв. тогда можно будет его задавать в настроке модуля в файле конфигурации.
Если нужно определять язык динамически, то можно это сделать в модуле в методе init():
class MyModule extends CWebModule {
  public $language = 'ua';
  public function init() {
    parent::init();
    Yii::app()->language = $this->selectLanguage();
  }
 /**
  * В этом методе мы определяем требуемый язык, берем хоть из cookie, хоть из базы данных:
  * @return string
  */
  private function selectLanguage() {
    ....
    // предположим что язык определить не удалось, тогда возвращает таковой по-умолчанию:
    return $language ? $language : $this->language;
  }
}


ну а в файле конфигурации приложения укажем:
....
modules => array(
  ....
  'my' => array(
     ....
     'language' => 'en',
     ....
  ),
  ....
),
....


в результате получим язык например из cookie, если же не смогли определить из cookie, но указали в конфиге модуля - из конфига (Английский), ну а если не указан в конфиге - то по-умолчанию (Украинский).
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users