From: Zheng Zhu Date: Mon, 20 Sep 2004 01:47:10 +0000 (+0000) Subject: * Updated the message for 'yourvariant' to reflect that it is meant for the language... X-Git-Tag: 1.5.0alpha1~1946 X-Git-Url: http://git.cyclocoop.org/%24href?a=commitdiff_plain;h=b9fa50e7e8870925b856cafda5b7dbab6ce8d952;p=lhc%2Fweb%2Fwiklou.git * Updated the message for 'yourvariant' to reflect that it is meant for the language variant of the content * Updated getPreferredVariant() to return some meaningful default values --- diff --git a/languages/Language.php b/languages/Language.php index 54e8492b23..60894d6b4f 100644 --- a/languages/Language.php +++ b/languages/Language.php @@ -1971,8 +1971,7 @@ class Language { # -{text}- in which case no conversion should take place for text function convert( $text ) { - $plang = $this->getPreferredVariant(); - if(!$plang) + if(sizeof($this->getVariants())<2) return $text; // no conversion if redirecting @@ -1980,6 +1979,9 @@ class Language { return $text; } + + $plang = $this->getPreferredVariant(); + $tarray = explode("-{", $text); $tfirst = array_shift($tarray); $text = $this->autoConvert($tfirst); @@ -2018,9 +2020,24 @@ class Language { return array(); } - # todo: write general code to get default language variant + function getPreferredVariant() { - return false; + global $wgUser; + + // if user logged in, get in from user's preference + if($wguser->getID()!=0) + return $wgUser->getOption('variant'); + + // if we have multiple variants for this langauge, + // pick the first one as default + $v=$this->getVariants() ; + if(!empty($v)) + return $v{0}; + + // otherwise there should really be just one variant, + // get it from the class name + $lang = strtolower(substr(class_name($this), 8)); + return $lang; } }