";
print "
TEST CLASS: LANG";
print "";
print '';
use CoreLibs\Language\L10n;
$string = 'INPUT TEST';
echo "
LEGACY TEST
";
$lang = 'en_utf8';
$l = new CoreLibs\Language\L10n($lang);
echo "*
";
echo "LANGUAGE WANT/SET: " . $lang . '/' . $l->getLocale() . "
";
echo "LANGUAGE FILE: " . $l->getMoFile() . "
";
echo "LOAD ERROR: " . $l->getLoadError() . "
";
echo "INPUT TEST: " . $string . " => " . $l->__($string) . "
";
$single_string = 'single';
$multi_string = 'multi';
for ($n = 0; $n <= 3; $n++) {
echo "MULTI TEST $n: " . $single_string . "/" . $multi_string . " => "
. $l->__n($single_string, $multi_string, $n) . "
";
}
$context = "month name";
$context_string = "May";
echo "CONTEXT TRANSLATION: " . $context_string . " => " . $l->__p($context, $context_string) . "
";
$single_string = 'single';
$multi_string = 'multi';
for ($n = 0; $n <= 3; $n++) {
echo "CONTEXT MULTI TEST $n: " . $single_string . "/" . $multi_string . " => "
. $l->__pn($context, $single_string, $multi_string, $n) . "
";
}
// switch to other language
$lang = 'ja_utf8';
$l->l10nReloadMOfile($lang);
echo "*
";
echo "LANGUAGE WANT/SET: " . $lang . '/' . $l->getLocale() . "
";
echo "LANGUAGE FILE: " . $l->getMoFile() . "
";
echo "LOAD ERROR: " . $l->getLoadError() . "
";
echo "INPUT TEST: " . $string . " => " . $l->__($string) . "
";
// switch to non existing language
$lang = 'tr_utf8';
$l->l10nReloadMOfile($lang);
echo "*
";
echo "LANGUAGE WANT/SET: " . $lang . '/' . $l->getLocale() . "
";
echo "LANGUAGE FILE: " . $l->getMoFile() . "
";
echo "LOAD ERROR: " . $l->getLoadError() . "
";
echo "INPUT TEST: " . $string . " => " . $l->__($string) . "
";
echo "
LIST LOCALES
";
$locale = 'en_US.UTF-8';
$locales = CoreLibs\Language\L10n::listLocales($locale);
print "[" . $locale . "] LOCALES: " . CoreLibs\Debug\Support::printAr($locales) . "
";
$locale = 'en.UTF-8';
$locales = CoreLibs\Language\L10n::listLocales($locale);
print "[" . $locale . "] LOCALES: " . CoreLibs\Debug\Support::printAr($locales) . "
";
// try to load non existing
echo "
NEW TYPE
";
// new path test
$lang = 'ja';
$domain = 'admin';
$encoding = 'UTF-8';
$path = BASE . INCLUDES . LOCALE;
$l = new CoreLibs\Language\L10n($lang, $path, $domain, false);
echo "*
";
echo "LANGUAGE WANT/SET: " . $lang . '/' . $l->getLocale() . "
";
echo "DOMAIN WANT/SET: " . $domain . '/' . $l->getDomain() . "
";
echo "LANGUAGE FILE: " . $l->getMoFile() . "
";
echo "CONTENT PATH: " . $l->getBaseContentPath() . "
";
echo "DOMAIN PATH: " . $l->getTextDomain($domain) . "
";
echo "BASE PATH: " . $l->getBaseLocalePath() . "
";
echo "LOAD ERROR: " . $l->getLoadError() . "
";
echo "INPUT TEST: " . $string . " => " . $l->__($string) . "
";
echo "TROUGH LOAD: " . $l->getTranslatorClass()->gettext($string) . "
";
$single_string = 'single';
$multi_string = 'multi';
for ($n = 0; $n <= 3; $n++) {
echo "MULTI TEST $n: " . $single_string . "/" . $multi_string . " => "
. $l->__n($single_string, $multi_string, $n) . "
";
}
$domain = 'frontend';
$l->getTranslator('', $path, $domain);
echo "*
";
echo "LANGUAGE WANT/SET: " . $lang . '/' . $l->getLocale() . "
";
echo "DOMAIN WANT/SET: " . $domain . '/' . $l->getDomain() . "
";
echo "LANGUAGE FILE: " . $l->getMoFile() . "
";
echo "CONTENT PATH: " . $l->getBaseContentPath() . "
";
echo "DOMAIN PATH: " . $l->getTextDomain($domain) . "
";
echo "BASE PATH: " . $l->getBaseLocalePath() . "
";
echo "LOAD ERROR: " . $l->getLoadError() . "
";
echo "INPUT TEST: " . $string . " => " . $l->__($string) . "
";
echo "TROUGH LOAD: " . $l->getTranslatorClass()->gettext($string) . "
";
$domain = 'admin';
echo "
STATIC TYPE TEST
";
// static tests from l10n_load
L10n::getInstance()->setLocale($lang);
echo "SET LOCALE: " . L10n::getInstance()->getLocale() . "
";
L10n::getInstance()->setDomain($domain);
echo "SET DOMAIN: " . L10n::getInstance()->getDomain() . "
";
L10n::getInstance()->setTextDomain($domain, $path);
echo "SET TEXT DOMAIN: " . L10n::getInstance()->getTextDomain($domain) . "
";
// null call __bind_textdomain_codeset
echo "INPUT TEST: " . $string . " => " . L10n::getInstance()->getTranslator()->gettext($string) . "
";
echo "
FUNCTIONS
";
// real statisc test
L10n::loadFunctions();
$locale = 'ja';
__setlocale(LC_MESSAGES, $locale);
__textdomain($domain);
__bindtextdomain($domain, $path);
__bind_textdomain_codeset($domain, $encoding);
echo "INPUT TEST $locale: " . $string . " => " . __($string) . "
";
$locale = 'en_US.UTF-8';
__setlocale(LC_MESSAGES, $locale);
__textdomain($domain);
__bindtextdomain($domain, $path);
__bind_textdomain_codeset($domain, $encoding);
echo "INPUT TEST $locale: " . $string . " => " . __($string) . "
";
print "";
// __END__