ENHANCEMENT Improved deprecated fallbacks in Translatable by auto-converting short language codes to long locales and vice versa through i18n::get_lang_from_locale()/i18n::get_locale_from_lang()

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@74017 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Ingo Schommer 2009-04-02 21:49:40 +00:00
parent a9a12e51d6
commit 50fc4959a2
2 changed files with 10 additions and 10 deletions

View File

@ -1028,49 +1028,49 @@ class Translatable extends DataObjectDecorator {
* @deprecated 2.4 Use set_default_locale()
*/
static function set_default_lang($lang) {
self::set_default_locale($lang);
self::set_default_locale(i18n::get_locale_from_lang($lang));
}
/**
* @deprecated 2.4 Use get_default_locale()
*/
static function get_default_lang() {
return self::get_default_locale();
return i18n::get_lang_from_locale(self::get_default_locale());
}
/**
* @deprecated 2.4 Use current_locale()
*/
static function current_lang() {
return self::current_locale();
return i18n::get_lang_from_locale(self::current_locale());
}
/**
* @deprecated 2.4 Use set_reading_locale()
*/
static function set_reading_lang($lang) {
self::set_reading_locale($lang);
self::set_reading_locale(i18n::get_locale_from_lang($lang));
}
/**
* @deprecated 2.4 Use get_reading_locale()
*/
static function get_reading_lang() {
return self::get_reading_locale();
return i18n::get_lang_from_locale(self::get_reading_locale());
}
/**
* @deprecated 2.4 Use get_by_locale()
*/
static function get_by_lang($class, $lang, $filter = '', $sort = '', $join = "", $limit = "", $containerClass = "DataObjectSet", $having = "") {
return self::get_by_locale($class, $lang, $filter, $sort, $join, $limit, $containerClass, $having);
return self::get_by_locale($class, i18n::get_locale_from_lang($lang), $filter, $sort, $join, $limit, $containerClass, $having);
}
/**
* @deprecated 2.4 Use get_one_by_locale()
*/
static function get_one_by_lang($class, $lang, $filter = '', $cache = false, $orderby = "") {
return self::get_one_by_locale($class, $lang, $filter, $cache, $orderby);
return self::get_one_by_locale($class, i18n::get_locale_from_lang($lang), $filter, $cache, $orderby);
}
}

View File

@ -387,7 +387,7 @@ class TranslatableTest extends FunctionalTest {
$child5PageTranslated->ParentID = $parentPageTranslated->ID;
$child5PageTranslated->write();
Translatable::set_reading_lang('en_US');
Translatable::set_reading_locale('en_US');
$this->assertNotNull($parentPage->liveChildren());
$this->assertEquals(
$parentPage->liveChildren()->column('ID'),
@ -407,7 +407,7 @@ class TranslatableTest extends FunctionalTest {
"Showing stageChildren() in default language doesnt show children in other languages"
);
Translatable::set_reading_lang('de_DE');
Translatable::set_reading_locale('de_DE');
$parentPage->flushCache();
$this->assertNotNull($parentPageTranslated->liveChildren());
$this->assertEquals(
@ -426,7 +426,7 @@ class TranslatableTest extends FunctionalTest {
);
// reset language
Translatable::set_reading_lang('en_US');
Translatable::set_reading_locale('en_US');
}
function testTranslatablePropertiesOnSiteTree() {