Example #1
0
 /**
  * Загружает конфиг Qevix'а
  *
  * @param string $sType     Тип конфига
  * @param bool   $bClear    Очищать предыдущий конфиг или нет
  */
 public function LoadQevixConfig($sType = 'default', $bClear = true)
 {
     // Временный костыль по методам, отсутствующим в Qevix
     $aExcludeConfig = array('cfgSetAutoReplace', 'cfgSetTagParamCombination');
     if ($bClear) {
         $this->oTextParser->tagsRules = array();
     }
     $aConfig = Config::Get('jevix.' . $sType);
     if (is_array($aConfig)) {
         foreach ($aConfig as $sMethod => $aExec) {
             foreach ($aExec as $aParams) {
                 if (!in_array($sMethod, $aExcludeConfig)) {
                     call_user_func_array(array($this->oTextParser, $sMethod), $aParams);
                 }
             }
         }
         // * Хардкодим некоторые параметры
         unset($this->oTextParser->entities1['&']);
         // разрешаем в параметрах символ &
         if (Config::Get('view.noindex') && isset($this->oTextParser->tagsRules['a'])) {
             $this->oTextParser->cfgSetTagParamDefault('a', 'rel', 'nofollow', true);
         }
     }
     $this->oTextParser->cfgSetTagBuildCallback('ls', array($this, 'CallbackTagLs'));
     if (C::Get('module.text.char.@')) {
         $this->oTextParser->cfgSetSpecialCharCallback('@', array($this, 'CallbackTagAt'));
     }
 }