All pastes #526603 Raw Edit

Unnamed

public text v1 · immutable
#526603 ·published 2007-05-31 21:34 UTC
rendered paste body
<?php
require_once "syntax.php";

function bbcode ( $text ) {

	$text = smileys ( $text, 1 );
	
	$bbcode = array (
		'#\[b\](.*?)\[\/b\]#se',
		'#\[u\](.*?)\[\/u\]#se',
		'#\[i\](.*?)\[\/i\]#se',
		'#\[s\](.*?)\[\/s\]#se',
		'#\[p\](.*?)\[\/p\]#se',
		'#\[quote\](.*?)\[\/quote\]#se',
		'#\[font=(.*?)\](.*?)\[\/font\]#se',
		'#\[size=(.*?)\](.*?)\[\/size\]#se',
		'#\[colour=(.*?)\](.*?)\[\/colour\]#se',
		'#\[color=(.*?)\](.*?)\[\/color\]#se',
		'#\[img\](.*?)\[\/img\]#se',
		'#\[url\](.*?)\[\/url\]#se',
		'#\[url=(.*?)\](.*?)\[\/url\]#se',
		'#\[list\](.*?)\[\/list\]#se',
		'#\[item\](.*?)\[\/item\]#se',
		'#\[php\](.*?)\[\/php\]#se',
		'#\[css\](.*?)\[\/css\]#se',
		'#\[code\](.*?)\[\/code\]#se'
	);

	$html = array (
		"'<strong>\\1</strong>'",
		"'<span style=\'text-decoration:underline\'>\\1</span>'",
		"'<em>\\1</em>'",
		"'<span style=\'text-decoration:line-through\'>\\1</span>'",
		"'<p>'. nl2br( '$1' ) .'</p>'",
		"'<p class=\"quote\">\\1</p>'",
		"'<span style=\"'.smileys ( 'font-family:$1' , 2 ) .'\">\\2</span>'",
		"'<span style=\"'.smileys ( 'font-size:$1em' , 2 ) .'\">\\2</span>'",
		"'<span style=\"'.smileys ( 'color:$1' , 2 ) .'\">\\2</span>'",
		"'<span style=\"'.smileys ( 'color:$1' , 2 ) .'\">\\2</span>'",
		"'<img src=\"'.smileys ( '$1' , 2 ) .'\" />'",
		"'<a href=\"'.smileys ( '$1' , 2 ) .'\">\\1</a>'",
		"'<a href=\"'.smileys ( '$1' , 2 ) .'\">\\2</a>'",
		"'<ul>\\1</ul>'",
		"'<li class=\"list\">\\1</li>'",
		"box ( '$1' , 'php' )",
		"box ( '$1' , 'css' )",
		"box ( '$1' , 'code' )"
	);

	$text = preg_replace ( $bbcode, $html, $text );

	return $text;

}

function smileys ( $text, $way ) {

	$smileys = array (
		'xD'=>'<img src="/imgs/smileys/evil_grin.png" title="Evil Grin" alt="Evil Grin" />',
		'xd'=>'<img src="/imgs/smileys/evil_grin.png" title="Evil Grin" alt="Evil Grin" />',
       	':G'=>'<img src="/imgs/smileys/grin.png" title="Grin" alt="Grin" />',
		':g'=>'<img src="/imgs/smileys/grin.png" title="Grin" alt="Grin" />',
		':D'=>'<img src="/imgs/smileys/happy.png" title="Happy Smile" alt="Happy Smile" />',
		':d'=>'<img src="/imgs/smileys/happy.png" title="Happy Smile" alt="Happy Smile" />',
		':)'=>'<img src="/imgs/smileys/smile.png" title="Smile" alt="Smile" />',
     	':O'=>'<img src="/imgs/smileys/surprised.png" title="Surprised" alt="Surprised" />',
      	':o'=>'<img src="/imgs/smileys/surprised.png" title="Surprised" alt="Surprised />',
       	':P'=>'<img src="/imgs/smileys/tongue.png" title="Tongue" alt="Tongue" />',
       	':p'=>'<img src="/imgs/smileys/tongue.png" title="Tongue" alt="Tongue" />',
		':('=>'<img src="/imgs/smileys/unhappy.png" title="Unhappy" alt="Unhappy" />',
		':S'=>'<img src="/imgs/smileys/confused.png" title="Confused" alt="Confused" />',
       	':s'=>'<img src="/imgs/smileys/confused.png" title="Confused" alt="Confused" />',
       	';)'=>'<img src="/imgs/smileys/wink.png" title="Wink" alt="Wink" />'
	);
	
	if ($way == 1) foreach ($smileys as $old => $new) $text = str_replace( $old, $new, $text );
	elseif ($way == 2) foreach ($smileys as $old => $new) $text = str_replace( $new, $old, $text );
	
	return $text;
	
}
?>