Ich kann momentan nicht selber testen von daher mach mal CVarDumper::dump($matches); direkt nach dem ersten if-statement in der init function.
Zu den neuen Features vom UrlManager mache ich dann nochmal irgendwann ein Cookbook bzw. aktualisiere das Alte. Muss mir das selber erstmal genau angucken. Auf jeden Fall kommt man ohne extra Component oder Controller nicht aus was I18n angeht. Schliesslich muss die Sprache ja auch gesetzt werden etc.
ich habe deinen Code umgeschrieben (sehr provosorisch), aber ich habe ein Problem mit setLanguage und getLanguage.
In der Component kann ich setLanguage setzen und auch auslesen (Beispiel en). Im weiteren Verlauf der Applikation gibt getLanguage stets de zurück
class I18n extends CApplicationComponent
{
public $supportedLanguages;
public $urlRulesPath;
public $activeLanguage;
public function init()
{
Yii::app()->setLanguage("en");
}
}
// protected/components/langBox.php
<?php
class LangBox extends CWidget
{
public function run()
{
echo Yii::app()->getLanguage();
$currentLang = Yii::app()->language;
$this->render('langBox', array('currentLang' => $currentLang));
}
}
?>