<?php
require_once( IPS_ROOT_PATH . 'sources/classes/bbcode/custom/defaults.php' );
class bbcode_test extends bbcode_parent_class implements bbcodePlugin
{
/**
* Constructor
*
* @access public
* @param object Registry object
* @return void
*/
public function __construct( ipsRegistry $registry )
{
$this->currentBbcode = 'test';
parent::__construct( $registry );
}
/**
* Method that is run before the content is displayed to the user
* This is the safest method of parsing, as the original submitted text is left in tact.
* No markers are necessary if you use parse on display.
*
* @access public
* @param string $txt BBCode/parsed text from database to be displayed
* @return string Formatted content, ready for display
*/
public function preDisplayParse( $txt )
{
if( $this->_bbcode['bbcode_parse'] == 2 )
{
return $this->_replaceText( $txt );
}
else
{
return $txt;
}
}
/**
* Do the actual replacement
*
* @access protected
* @param string $txt Parsed text from database to be edited
* @return string BBCode content, ready for editing
*/
protected function _replaceText( $txt )
{
$txt = str_replace( '[test]', '', $txt );
$txt = str_replace( '[/test]', '', $txt );
$imdb_id = $txt;
if ( $imdb_id == "" )
{
return;
}
$adres = "http://www.imdb.com/title/tt".$imdb_id."/";
return $imdb_id.'<br>'. $adres;
}
}
ten require nie jest chyba wymagany przynajmniej w 3.1.2
tag : [test]1274300[/test]
efekt powinien być następujący : 1274300
http://www.imdb.com/title/tt1274300
a jest :
1274300 http://www.imdb.com/title/tt1274300/
http://www.imdb.com/title/tt1274300 http://www.imdb.com/title/tt1274300//
http://www.imdb.com/title/tt1274300 http://www.imdb.com/title/tt1274300/
http://www.imdb.com/title/tt1274300 http://www.imdb.com/title/tt1274300///
wyświetlane są tak samo jak tutaj jako linki oczywiście
dodatkowo w innych postach dopisuje te adresy do treści (wyłączyłem cachowanie)
przy całym tagu po prostu zastępuje treści innych postów
a i przy okazji co określa ten warunek : $this->_bbcode['bbcode_parse'] == 2 ?