Ciao a tutti ,
è la prima volta che cerco di utilizzare la Internationalization di yii.
Allora nel /config/main.php ho inserito:
'language'=>'it',
'language'=>'en',
'sourceLanguage'=>'it_IT',
ho fatto le due cartelle dentro messages "en" ed "it" dove ho messo i due file.
Poi dentro al main ho inserito die link per provare :
//Yii::app()->setLanguage("it");
echo "get: ". Yii::app()->getLanguage() . "<br>";
echo "session: " .Yii::app()->session['lang']. "<br>";
echo CHtml::link('italiano', array('site/language', 'lang'=>'it')). "<br>";
echo CHtml::link('english', array('site/language', 'lang'=>'en')). "<br>";
e nel controller
function actionlanguage() {
if (isset($_GET['lang']))
Yii::app()->session['lang'] = $_GET['lang'];
if (isset(Yii::app()->session['lang']))
Yii::app()->setLanguage(Yii::app()->session['lang']);
$this->redirect(Yii::app()->homeUrl);
}
Allora se clicco sul link mi accorgo che la sessione viene settata sia in "it" che in "en" a secondo di dove clicco, mentre getLanguage() rimane sempre su "en" ed in effetti il menu viene preso in inglese.
Se invece provo a fare Yii::app()->setLanguage(“it”) nel main la lingua viene settata giustamente il menu ora è in italiano, mentre il testo che è nella pagina index rimane in inglese
Insomma non credo che mi sti funzionando proprio come dovrebbe
Mi sapete dire dove sto sbagliando
caio giuseppe