Esempio n. 1
0
 /**
  * 转化ubb标签
  *
  * @param string $message
  * @param object $config ubb转换配置
  * @return string
  */
 public static function convert($message, PwUbbCodeConvertConfig $config = null)
 {
     is_null($config) && ($config = new PwUbbCodeConvertConfig());
     self::_init();
     self::_startParse();
     self::$_cvtimes = $config->cvtimes;
     self::hasTag($message, 'code') && ($message = self::parseCode($message));
     $message = PwSimpleHook::getInstance('PwUbbCode_convert')->runWithFilters($message);
     $message = self::convertTag($message, array('u', 'b', 'i', 'sub', 'sup', 'strike', 'blockquote'));
     $message = self::convertHr($message);
     $message = self::convertList($message);
     $message = self::convertFont($message);
     $message = self::convertColor($message);
     $message = self::convertBackColor($message);
     $message = self::convertSize($message, $config->maxSize);
     $message = self::convertEmail($message);
     $message = self::convertAlign($message);
     $message = self::convertGlow($message);
     self::_startParse();
     strpos($message, '[s:') !== false && ($message = self::parseEmotion($message));
     $message = self::parseAttachment($message, $config);
     self::hasTag($message, 'img') && ($message = self::parseImg($message, $config->isConverImg, $config->imgWidth, $config->imgHeight, $config->imgLazy));
     self::hasTag($message, 'url') && ($message = self::parseUrl($message));
     self::hasTag($message, 'flash') && ($message = self::parseFlash($message, $config->isConvertFlash));
     $config->remindUser && ($message = self::parseRemind($message, $config->remindUser));
     $config->isConvertMedia && ($message = self::parseMedia($message, $config->isConvertMedia == 2));
     $config->isConvertIframe && self::hasTag($message, 'iframe') && ($message = self::parseIframe($message, $config->isConvertIframe == 2));
     $config->isConvertPost && self::hasTag($message, 'post') && ($message = self::parsePost($message, $config));
     $config->isConvertHide && self::hasTag($message, 'hide') && ($message = self::parseHide($message, $config));
     $config->isConvertSell && self::hasTag($message, 'sell') && ($message = self::parseSell($message, $config));
     self::hasTag($message, 'quote') && ($message = self::parseQuote($message));
     $config->isConvertTable && ($message = self::convertTable($message, $config->isConvertTable));
     $message = self::convertParagraph($message);
     $message = self::_convertCode($message);
     $message = self::_convertCode($message);
     self::$_cvtimes = -1;
     return $message;
 }