KPD
Новичок
PEAR: phpBBParser
Возникла у меня необходимость делать обтекание картинок.
делаю я это так если встечается
img в квадрытных скобках то обтекание делается слева
вот как для этого я изменил фильтр
чтобы сделать обтекание справа я добавил новый фильтр и тег rmg
вот он
но проблема в том что совершенно никакой реакции на новый фильтр нет, хотя он загружается и производит какието действия.
все картинки всёравно на одной стороне документа
в чём может быть дело?
подскажите пожалуйста
Возникла у меня необходимость делать обтекание картинок.
делаю я это так если встечается
img в квадрытных скобках то обтекание делается слева
вот как для этого я изменил фильтр
PHP:
<?php
require_once('HTML/BBCodeParser.php');
class HTML_BBCodeParser_Filter_Images extends HTML_BBCodeParser
{
/**
* An array of tags parsed by the engine
*
* @access private
* @var array
*/
var $_definedTags = array( 'img' => array( 'htmlopen' => 'img style="clear:left; float:left; margin: 2px;"',
'htmlclose' => '',
'allowed' => 'none',
'attributes'=> array( 'img' => 'border=0 src=%2$s%1$s%2$s',
'w' => 'width=%2$s%1$d%2$s',
'h' => 'height=%2$s%1$d%2$s')
)
);
function _preparse()
{
$options = PEAR::getStaticProperty('HTML_BBCodeParser','_options');
$o = $options['open'];
$c = $options['close'];
$oe = $options['open_esc'];
$ce = $options['close_esc'];
$this->_preparsed = preg_replace("!".$oe."img(".$ce."|\s.*".$ce.")(.*)".$oe."/img".$ce."!Ui", $o."img=\\2\\1".$o."/img".$c, $this->_text);
}
}
?>
вот он
PHP:
<?php
require_once('HTML/BBCodeParser.php');
class HTML_BBCodeParser_Filter_RImage extends HTML_BBCodeParser
{
/**
* An array of tags parsed by the engine
*
* @access private
* @var array
*/
var $_definedTags = array( 'rmg' => array( 'htmlopen' => 'img style="clear:right; float:right; margin: 2px;"',
'htmlclose' => '',
'allowed' => 'none',
'attributes'=> array( 'rmg' => 'border=0 src=%2$s%1$s%2$s',
'w' => 'width=%2$s%1$d%2$s',
'h' => 'height=%2$s%1$d%2$s')
)
);
function _preparse()
{
$options = PEAR::getStaticProperty('HTML_BBCodeParser','_options');
$o = $options['open'];
$c = $options['close'];
$oe = $options['open_esc'];
$ce = $options['close_esc'];
echo 'qqq';
$this->_preparsed = preg_replace("!".$oe."rmg(".$ce."|\s.*".$ce.")(.*)".$oe."/rmg".$ce."!Ui", $o."img=\\2\\1".$o."/img".$c, $this->_text);
}
}
?>
все картинки всёравно на одной стороне документа
в чём может быть дело?
подскажите пожалуйста