<?
// Highlight functies
function phphighlite_replace($code) {
$code = trim(str_replace(""", """, $code));
#$code = str_replace(""",""",$code);
if(empty($code)) {
return "[*code] [*/code]";
} else {
array_push($GLOBALS['phphighlite'], $code);
return "[*code]".(count($GLOBALS['phphighlite'])-1)."[*/code]";
}
}
function phphighlite($id, $fixed=1) {
$code = $GLOBALS['phphighlite'][$id];
$splitted = explode("\n", $code);
$grootte = count($splitted)+1;
if(!strpos($code,"<?") && substr($code,0,2)!="<?") {
$code="<?".trim($code)."?>";
$addedtags=1;
}
ob_start();
$oldlevel=error_reporting(0);
highlight_string($code);
error_reporting($oldlevel);
$buffer = ob_get_contents();
ob_end_clean();
if(!empty($addedtags)) {
$openingpos = strpos($buffer,'<?');
$closingpos = strrpos($buffer, '?');
$buffer = substr($buffer, 0, $openingpos).substr($buffer, $openingpos+5, $closingpos-($openingpos+5)).substr($buffer, $closingpos+5);
}
$page_popup = "";
$return = $buffer;
return $return;
}
function ubb($string) {
// Code
$GLOBALS['phphighlite'] = array("dummy");
$string = preg_replace("_<\?(.*?)\?>_ise","phphighlite_replace('<? \\1 ?>')",$string);
#$string = preg_replace("_\[code\](.*?)\[/code\]_ise","phphighlite_replace('\\1')",$string);
// Enters maken
$string = nl2br($string);
// Cursief
$string = preg_replace("#\[i\](.+?)\[/i\]#is","<i>\\1</i>",$string);
// Onderstreept
$string = preg_replace("#\[u\](.+?)\[/u\]#is","<u>\\1</u>",$string);
// Vetgedrukt
$string = preg_replace("#\[b\](.+?)\[/b\]#is","<b>\\1</b>",$string);
// Doorstreept
$string = preg_replace("#\[s\](.+?)\[/s\]#is","<s>\\1</s>",$string);
// Links maken met behulp van tags
$string = preg_replace("#\[url\](http|ftp)(.+?)\[/url\]#is","<a href="\\1\\2" target="_blank">\\1\\2</a>",$string);
$string = preg_replace("#\[url\](mailto:)(.+?)\[/url]#is","<a href="\\1\\2" target="_blank">\\2</a>",$string);
$string = preg_replace("#\[mail\](.+?)\[/mail]#is","<a href="mailto:\\1" target="_blank">\\1</a>",$string);
$string = preg_replace("#\[url\](.+?)\[/url\]#is","<a href="http://\\1" target="_blank">\\1</a>",$string);
$string = preg_replace("#\[url=(http|ftp|mailto)(.+?)\](.+?)\[/url\]#is","<a href="\\1\\2" target="_blank">\\3</a>",$string);
$string = preg_replace("#\[url=(.+?)\](.+?)\[/url\]#is","<a href="http://\\1" target="_blank">\\2</a>",$string);
// Automatisch links maken
$string = eregi_replace("(^|[\n\r\t])((http(s?)://)(www\.)?([a-z0-9_-]+(\.[a-z0-9_-]+)+)(/[^/ \n\r]*)*)", "<a href="\\2"target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])((http(s?)://)(www\.)?([a-z0-9_-]+([a-z0-9_-]+)+)(/[^/ \n\r]*)*)", "<a href="\\2"target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])([a-z_-][a-z0-9\._-]*@[a-z0-9_-]+(\.[a-z0-9_-]+)+)","<a href="mailto:\\2">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])(www\.([a-z0-9_-]+(\.[a-z0-9_-]+)+)(/[^/ \n\r]*)*)","<a href="http://\\2" target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])(www\.([a-z0-9_-]+([a-z0-9_-]+)+)(/[^/ \n\r]*)*)","<a href="http://\\2" target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])(ftp://([a-z0-9_-]+(\.[a-z0-9_-]+)+)(/[^/ \n\r]*)*)","<a href="\\2" target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])(ftp://([a-z0-9_-]+([a-z0-9_-]+)+)(/[^/ \n\r]*)*)","<a href="\\2" target="_blank">\\2</a>",$string);
$string = eregi_replace("(^|[\n\r\t])(ftp\.([a-z0-9_-]+(\.[a-z0-9_-]+)+)(/[^/ \n\r]*)*)","<a href="\\2" target="_blank">\\2</a>",$string);
// Quote
$string = preg_replace("#\[quote\](.+?)\[/quote\]#is","<table width="100%" cellspacing="0" cellpadding="0"><tr><td width="3%"> </td><td><small>Quote</small></td></tr><tr><td width="3%"> </td><td style="border: 1px solid #232850;"><table><tr><td>\\1</td></tr></table></td></tr></table>",$string);
$string = preg_replace("#\[quote=(.+?)\](.+?)\[/quote\]#is","<table width="100%" cellspacing="0" cellpadding="0"><tr><td width="3%"> </td><td><small>Quote: <b>\\1</b></small></td></tr><tr><td width="3%"> </td><td style="border: 1px solid #232850;"><table><tr><td>\\2</td></tr></table></td></tr></table>",$string);
// Plaatjes
$string = preg_replace("#\[img\](http)(.+?)\[/img\]#is","<img src="\\1\\2" alt="Plaatje" title"Plaatje" />",$string);
$string = preg_replace("#\[img\](.+?)\[/img\]#is","<img src="http://\\1" alt="Plaatje" title="Plaatje" />",$string);
//Mail
$string = preg_replace("#\[mail\](.+?)\[/mail\]#is","<a href:"mailto://1" />",$string);
$string = preg_replace("#\[mail\](.+?)\[/mail\]#is","<a href:"mailto://1" />",$string);
// Kleur
$string = preg_replace("#\[color=(.+?)\](.+?)\[/color\]#is","<font color="\\1">\\2</font>",$string);
// Grootte
$string = preg_replace("#\[size=(.+?)\](.+?)\[/size\]#is","<font size="\\1">\\2</font>",$string);
// Code
$string = preg_replace("_\[code\]([0-9])\[/code\]_ise", "phphighlite('\\1')", $string);
// Return
return $string;
}
?>