PDA

View Full Version : SMILEY HACK!


carp
Sun 10th Sep '00, 3:14pm
I hope this is legal, but I messed around and saw where I could implement smileys in the lite version.

so, here goes.

first you need smiley images like these: :) :(

then, save those as smile.gif and frown.gif

next, open global.php, and find the bbcodeparse function. it looks something like this:
// ###################### Start bbcodeparse #######################
function bbcodeparse($bbcode) {

bbcodeparse2($bbcode,$forumid,$allowsmilie);

global $bbcode2;

return $bbcode2;
}

function bbcodeparse2($bbcode,$forumid=0,$allowsmilie=1) {
// parses text for vB code, smilies and censoring

global $SQL,$bbcode2;

// kill any rogue html code
$bbcode=str_replace("&","&",$bbcode);
$bbcode=str_replace("<","&lt;",$bbcode);
$bbcode=str_replace(">","&gt;",$bbcode);

$bbcode=nl2br($bbcode);

$bbcode=eregi_replace(quotemeta(""),quotemeta("<b>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</b>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("<i>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</i>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("<u>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</u>"),$bbcode);

// do xxx
$bbcode=eregi_replace("\\[url\\]www.([^\\[]*)\\[/url\\]","<a href=\"http://www.\\1\" target=_blank>\\1</a>",$bbcode);
$bbcode=eregi_replace("\\[url\\]([^\\[]*)\\[/url\\]","<a href=\"\\1\" target=_blank>\\1</a>",$bbcode);

// do xxx
$bbcode=eregi_replace("\\[email\\]([^\\[]*)\\[/email\\]","<a href=\"mailto:\\1\">\\1</a>",$bbcode);

// do quotes
$bbcode=eregi_replace("quote\\]","quote]",$bbcode); // make lower case
$bbcode=str_replace("\r\n","<blockquote><smallfont>quote:</smallfont><hr>",$bbcode);
$bbcode=str_replace("","<blockquote><smallfont>quote:</smallfont><hr>",$bbcode);
$bbcode=str_replace("\r\n","<hr></blockquote>",$bbcode);
$bbcode=str_replace("","<hr></blockquote>",$bbcode);

// do xxx
$bbcode=eregi_replace("\\[img\\]([^\\[]*)\\[/img\\]","<img src=\"\\1\" border=0>",$bbcode);
$bbcode2=$bbcode;

return 1;
}


then, find the part that says "//do xxx, and right under it, add:

$bbcode=str_replace(":)","<img src=\"images/smile.gif\">",$bbcode);
$bbcode=str_replace(":(","<img src=\"images/frown.gif\">",$bbcode);


so, after you have done that, it should look like this:

// ###################### Start bbcodeparse #######################
function bbcodeparse($bbcode) {

bbcodeparse2($bbcode,$forumid,$allowsmilie);

global $bbcode2;

return $bbcode2;
}

function bbcodeparse2($bbcode,$forumid=0,$allowsmilie=1) {
// parses text for vB code, smilies and censoring

global $SQL,$bbcode2;

// kill any rogue html code
$bbcode=str_replace("&","&amp;",$bbcode);
$bbcode=str_replace("<","&lt;",$bbcode);
$bbcode=str_replace(">","&gt;",$bbcode);

$bbcode=nl2br($bbcode);

$bbcode=eregi_replace(quotemeta(""),quotemeta("<b>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</b>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("<i>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</i>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("<u>"),$bbcode);
$bbcode=eregi_replace(quotemeta(""),quotemeta("</u>"),$bbcode);

// do xxx
$bbcode=eregi_replace("\\[url\\]www.([^\\[]*)\\[/url\\]","<a href=\"http://www.\\1\" target=_blank>\\1</a>",$bbcode);
$bbcode=eregi_replace("\\[url\\]([^\\[]*)\\[/url\\]","<a href=\"\\1\" target=_blank>\\1</a>",$bbcode);

// do xxx
$bbcode=eregi_replace("\\[email\\]([^\\[]*)\\[/email\\]","<a href=\"mailto:\\1\">\\1</a>",$bbcode);

// do quotes
$bbcode=eregi_replace("quote\\]","quote]",$bbcode); // make lower case
$bbcode=str_replace("\r\n","<blockquote><smallfont>quote:</smallfont><hr>",$bbcode);
$bbcode=str_replace("","<blockquote><smallfont>quote:</smallfont><hr>",$bbcode);
$bbcode=str_replace("\r\n","<hr></blockquote>",$bbcode);
$bbcode=str_replace("","<hr></blockquote>",$bbcode);

// do xxx
$bbcode=eregi_replace("\\[img\\]([^\\[]*)\\[/img\\]","<img src=\"\\1\" border=0>",$bbcode);
$bbcode=str_replace(":)","<img src=\"images/smile.gif\">",$bbcode);
$bbcode=str_replace(":(","<img src=\"images/frown.gif\">",$bbcode);
$bbcode2=$bbcode;

return 1;
}


then save it and upload it! now you have smileys in the lite version!