functions.php
[code]
<?php
global $smileys;
$smileys = array();
$smileys[] = array("icon" => ":)", "img" => "images/smilies/smile.gif");
$smileys[] = array("icon" => "8|", "img" => "images/smilies/huh.gif");
$smileys[] = array("icon" => ":o", "img" => "images/smilies/ohmy.gif");
$smileys[] = array("icon" => ";)", "img" => "images/smilies/wink.gif");
$smileys[] = array("icon" => ":P", "img" => "images/smilies/tongue.gif");
$smileys[] = array("icon" => ":D", "img" => "images/smilies/biggrin.gif");
$smileys[] = array("icon" => "8)", "img" => "images/smilies/cool.gif");
$smileys[] = array("icon" => "*-)", "img" => "images/smilies/rolleyes.gif");
$smileys[] = array("icon" => ":?", "img" => "images/smilies/dry.gif");
$smileys[] = array("icon" => ":@", "img" => "images/smilies/mad.gif");
$smileys[] = array("icon" => ":(", "img" => "images/smilies/sad.gif");
$smileys[] = array("icon" => "8-)", "img" => "images/smilies/unsure.gif");
$smileys[] = array("icon" => ":|", "img" => "images/smilies/blink.gif");
$smileys[] = array("icon" => "|:-|", "img" => "images/smilies/ph34r.gif");
$smileys[] = array("icon" => ":\\", "img" => "images/smilies/happy.gif");
$smileys[] = array("icon" => "|-)", "img" => "images/smilies/sleep.gif");
$smileys[] = array("icon" => "(l)", "img" => "images/smilies/wub.gif");
$smileys[] = array("icon" => ":s", "img" => "images/smilies/wacko.gif");
function ubb_code($string) {
// HTML codes wegwerken
$string = htmlspecialchars(strip_tags($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\]#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\" 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])(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);
// Smileys
for ($i = 0; $i < count($GLOBALS["smileys"]); $i++) {
$string = str_replace($GLOBALS["smileys"][$i]["icon"],"<img src=\"" . $GLOBALS["smileys"][$i]["img"] . "\" alt=\"Smilie\" />",$string);
}
// Return
return $string;
}
function ubb_back($string) {
// Cursief
$string = preg_replace("#<i>(.+?)</i>#is","\\1",$string);
// Onderstreept
$string = preg_replace("#<u>(.+?)</u>#is","\\1",$string);
// Vetgedrukt
$string = preg_replace("#<b>(.+?)</b>#is","\\1",$string);
// Doorstreept
$string = preg_replace("#<s>(.+?)</s>#is","\\1",$string);
// Links
$string = preg_replace("#<a href=\"(http|ftp)(.+?)\" target=\"_blank\">(.+?)</a>#is","[url=\\1\\2]\\3",$string);
$string = preg_replace("#<a href=\"mailto:(.+?)\" target=\"_blank\">(.+?)</a>#is","[mail]\\1[/mail]",$string);
// Smileys
for ($i = 0; $i < count($GLOBALS["smileys"]); $i++) {
$string = str_replace("<img src=\"" . $GLOBALS["smileys"][$i]["img"] . "\" alt=\"Smilie\" />",$GLOBALS["smileys"][$i]["icon"],$string);
}
// Return
return $string;
}
function genPost($item) {
$entry = "";
$entry .="<b><font face='Verdana' size='2'>" . $item["subject"] . "</b><br />\n";
$entry .="<font face='Verdana' size='1'><a href='mailto:" . $item["email"] . "'>" . $item["name"] . "</a> (" . date("d-m-Y H:i", strtotime($item["date"])) . ")<br />\n";
$entry .="<font face='Verdana' size='2'>" . ubb_code($item["post"]) . "<br />\n";
$entry .="<img src='images/lijnbericht.gif' border=0><br />\n\n";
return $entry;
}
function parseXmlFile($filename, $identifier) {
$data = implode("",file($filename));
$parser = xml_parser_create();
xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
xml_parse_into_struct($parser,$data,$values,$tags);
xml_parser_free($parser);
foreach ($tags as $key=>$val) {
if ($key == $identifier) {
$molranges = $val;
for ($i=0; $i < count($molranges); $i+=2) {
$offset = $molranges[$i] + 1;
$len = $molranges[$i + 1] - $offset;
$tdb[] = parseArray(array_slice($values, $offset, $len));
}
}
else {
continue;
}
}
return $tdb;
}
function parseArray($mvalues) {
for ($i=0; $i < count($mvalues); $i++) {
$mol[$mvalues[$i]["tag"]] = $mvalues[$i]["value"];
}
return $mol;
}
function xml2String() {
$xmlcontent = parseXmlFile("gastenboek.xml", "item");
$return_str = "";
foreach ($xmlcontent as $item) {
$return_str .= genPost($item);
}
return $return_str;
}
?>
[\code]