• Модуль: fileman
  • Путь к файлу: ~/bitrix/modules/fileman/classes/general/sticker.php
  • Класс: CSticker
  • Вызов: CSticker::BBParseToHTML
static function BBParseToHTML($text, $bForList = false)
{
	if ($text != "")
	{
		if (!is_object(self::$TextParser))
		{
			self::$TextParser = new CTextParser();
			self::$TextParser->allow = array("HTML" => "N", "ANCHOR" => "Y", "BIU" => "Y", "IMG" => "N", "QUOTE" => "N", "CODE" => "N", "FONT" => "Y", "LIST" => "Y", "SMILES" => "N", "NL2BR" => "N", "VIDEO" => "N", "TABLE" => "N", "CUT_ANCHOR" => "N", "ALIGN" => "N");
		}

		$html = self::$TextParser->convertText($text);

		if ($bForList)
		{
			$html = preg_replace(array(
				"/[st_title](.+?)[/st_title]/is".BX_UTF_PCRE_MODIFIER,
				"//is".BX_UTF_PCRE_MODIFIER,
				"//is".BX_UTF_PCRE_MODIFIER,
				"//is".BX_UTF_PCRE_MODIFIER,
				"//is".BX_UTF_PCRE_MODIFIER,
				"//is".BX_UTF_PCRE_MODIFIER
			), " ", $html);

			$html = preg_replace(
				array(
					"/[st_title]/is".BX_UTF_PCRE_MODIFIER,
					"/[/st_title]/is".BX_UTF_PCRE_MODIFIER,
				),
				"",
				$html
			);

			if (mb_strlen($html) > 40)
				$html = mb_substr($html, 0, 40)."...";
		}
		else
		{
			$html = preg_replace(
				"/[st_title](.*?)[/st_title]/is".BX_UTF_PCRE_MODIFIER,
				"\1 ",
				$html
			);

			// ?
			$html = preg_replace(
				array(
					"/[st_title]/is".BX_UTF_PCRE_MODIFIER,
					"/[/st_title]/is".BX_UTF_PCRE_MODIFIER,
				),
				"",
				$html
			);
		}
	}

	return $html;
}