Gettext

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
raketoplan2005
Člen | 147
+
0
-

Zdravím všechny.

Pomocí GettextExtractoru v2 jsem si vytáhl všechny potřebné údaje pro přejmenování. Z databáze si získám jazyk ve tvaru „en“ ale teď už nevím jak nastavit Translator pomocí GettextTranslatoru.

Mohl by mi prosím někdo trochu podrobněji poradit jak toto rozchodit? Díky

iguana007
Člen | 970
+
0
-

Je to jednoduché … stačí nastavit locale … viz. php manual: http://php.net/…etlocale.php

iguana007
Člen | 970
+
0
-

Tj. v BasePresenteru mam v metode beforeRender() toto:

		//zde měním mezi 'en' a 'cs' a na základě toho se načítají odpovídající .mo soubory
		Environment::setVariable('lang', 'en');
		$translator = new Translator(
                Environment::getVariable('lang'), APP_DIR . '/locale');
		$this->template->setTranslator($translator);
couda
Člen | 9
+
0
-

Ahoj,

mám taky menší problém a už nevím jak s tím hnout…
provedl jsem vše podle návodu, vše mi v nette funguje ale jakmile přidám soubor Translator.php do složky LIBS_DIR tak mi vyhodí fatal error: „Call to undefined function bindtextdomain()“ přitom je to funkce PHP … nevíte co s tím?

Díky

Ondřej Mirtes
Člen | 1536
+
0
-

Nemáš nahrané gettext rozšíření. Nemám ani zkušenost s tím, jak funguje na Windows.

maarlin
Člen | 207
+
0
-

Ondřej Mirtes napsal(a):

Nemáš nahrané gettext rozšíření. Nemám ani zkušenost s tím, jak funguje na Windows.

Mě osobně gettext rozšíření na WAMP funguje prakticky bez problémů, resp. nezaznamenal jsem žádný problém. Vše funguje, jak má…

Ono WAMP už ho obsahuje sám o sobě, jen stačilo odkomentovat jeden řádek v php.ini.

Ondřej Mirtes
Člen | 1536
+
0
-

Aha, tak to jo, já myslel, že s tím bude problém z důvodu, že to uvnitř samo volá unixovský příkaz „gettext“, který na Windows nenajdeš, ale asi to funguje jinak :)

couda
Člen | 9
+
0
-

vyřešeno, pomohlo to :-) díky