getFallbackFor() public method

Returns the fallback language for language
public getFallbackFor ( string $code ) : string | boolean
$code string language code
return string | boolean
Esempio n. 1
0
 /**
  * Creates a language object, handles class fallbacks
  * @param $config Instance of HTMLPurifier_Config
  * @param $context Instance of HTMLPurifier_Context
  */
 function create($config, &$context)
 {
     // validate language code
     $code = $this->validator->validate($config->get('Core', 'Language'), $config, $context);
     if ($code === false) {
         $code = 'en';
     }
     // malformed code becomes English
     $pcode = str_replace('-', '_', $code);
     // make valid PHP classname
     static $depth = 0;
     // recursion protection
     if ($code == 'en') {
         $class = 'HTMLPurifier_Language';
         $file = $this->dir . '/Language.php';
     } else {
         $class = 'HTMLPurifier_Language_' . $pcode;
         $file = $this->dir . '/Language/classes/' . $code . '.php';
         // PHP5/APC deps bug workaround can go here
         // you can bypass the conditional include by loading the
         // file yourself
         if (file_exists($file) && !class_exists($class)) {
             include_once $file;
         }
     }
     if (!class_exists($class)) {
         // go fallback
         $fallback = HTMLPurifier_LanguageFactory::getFallbackFor($code);
         $depth++;
         $lang = HTMLPurifier_LanguageFactory::factory($fallback);
         $depth--;
     } else {
         $lang = new $class($config, $context);
     }
     $lang->code = $code;
     return $lang;
 }