functions.php
[code]<?php
include ‘includes/mysql.php’;
function bbcodes($bbcode_text)
{
$bbcode_text = htmlspecialchars($bbcode_text);
$bbcode_text = nl2br($bbcode_text);
$bbcode_text = preg_replace("/[b](.)[/b]/Usi", “<b title=“Fett: Text”>\1”, $bbcode_text);
$bbcode_text = preg_replace("/[i](.)[/i]/Usi", “<i title=“Kursiv: Text”>\1”, $bbcode_text);
$bbcode_text = preg_replace("/[u](.)[/u]/Usi", “<u title=“Unterstrichen: Text”>\1”, $bbcode_text);
$bbcode_text = preg_replace("/[img](.)[/img]/Usi", “<img alt=”\1" border=“0” src="\1" title=“Bilder anzeigen:
“>”, $bbcode_text);
$bbcode_text = preg_replace(”/[img=(.)](.)[/img]/Usi", “<img alt=”\1" border=“0” src="\1" title=“Bilder anzeigen:
“>”, $bbcode_text);
$bbcode_text = preg_replace(”/[link=(.)](.)[/link]/Usi", “<a border=“0” href=”\1" target="_blank">\2", $bbcode_text);
$bbcode_text = preg_replace("/[zitat](.)[/zitat]/Usi", “<div class=“zitat”>\1”, $bbcode_text);
$bbcode_text = preg_replace("/[color=(.)](.)[/color]/Usi", “<span style=“color: \1” title=“Schriftfarbe: Text”>\2”, $bbcode_text);
$bbcode_text = preg_replace("/[datum](.).(.).(.)[/datum]/Usi", “<a href=“termine.php?d=\1&m=\2&j=\3” title=“Datum anzeigen: [datum]\1.\2.\3[/datum]”>\1.\2.\3”, $bbcode_text);
$sql_sm = “SELECT bbcode, url FROM smilies ORDER BY url”;
$res_sm = mysql_query($sql_sm) OR die(“Konnte keine Verbindung zur Datenbank herstellen”);
while ($row_sm = mysql_fetch_array($res_sm))
{
$bbcode_text = str_replace("".$row_sm[‘bbcode’]."", “<img alt=“Smilie “.$row_sm[‘bbcode’].”” src=”".$row_sm[‘url’]."" title=“Smilie “.$row_sm[‘bbcode’].””>", $bbcode_text);
}
return $bbcode_text;
}
?>[/code]
functions.js
[code]function bbcodes(form_name, textarea_name, tag1, tag2)
{
if (document.selection)
{
var str = document.selection.createRange().text;
document.forms[form_name].elements[textarea_name].focus();
var sel = document.selection.createRange();
sel.text = “” + tag1 + “” + str + “” + tag2 + “”;
return;
}
else if ((typeof document.forms[form_name].elements[textarea_name].selectionStart) != ‘undefined’)
{
var txtarea = document.forms[form_name].elements[textarea_name];
var selLength = txtarea.textLength;
var selStart = txtarea.selectionStart;
var selEnd = txtarea.selectionEnd;
var oldScrollTop = txtarea.scrollTop;
var s1 = (txtarea.value).substring(0, selStart);
var s2 = (txtarea.value).substring(selStart, selEnd)
var s3 = (txtarea.value).substring(selEnd, selLength);
txtarea.value = s1 + “” + tag1 + “” + s2 + “” + tag2 + “” + s3;
txtarea.selectionStart = s1.length;
txtarea.selectionEnd = s1.length + 5 + s2.length + tag.length * 2;
txtarea.scrollTop = oldScrollTop;
txtarea.focus();
return;
}
else einfügen(form_name, textarea_name, “” + tag1 + “” + tag2 + “”);
}
function bbcodes_hilfe(tag, color)
{
var bbcodes_hilfe_sch =
{
b: “Fett: Text -> Text”,
i: “Kursiv: Text -> Text”,
u: “Unterstrichen: Text -> Text”,
img: "Bilder anzeigen:
oder
",
link: “Links anzeigen: [link=http://webside_url]Websidename[/link]”,
tipp: “Tipp: Formatierungen werden hier angezeigt.”
}
if (bbcodes_hilfe_sch[tag] != null)
{
document.getElementById(“bbcodes_hilfe”).innerHTML = bbcodes_hilfe_sch[tag] + " ";
}
if (tag == “color”)
{
var bbcodes_hilfe_sch_color = "Schriftfarbe: Text -> <span style=“color: " + color + “;”>Text”;
document.getElementById(“bbcodes_hilfe”).innerHTML = bbcodes_hilfe_sch_color + " ";
}
}
function einfügen(form_name, textarea_name, zeichen)
{
if (document.forms[form_name].elements[textarea_name].createTextRange)
{
document.forms[form_name].elements[textarea_name].focus();
document.selection.createRange().duplicate().text = zeichen;
}
else if ((typeof document.forms[form_name].elements[textarea_name].selectionStart) != ‘undefined’)
{
var tarea = document.forms[form_name].elements[textarea_name];
var selEnd = tarea.selectionEnd;
var txtLen = tarea.value.length;
var txtbefore = tarea.value.substring(0, selEnd);
var txtafter = tarea.value.substring(selEnd, txtLen);
var oldScrollTop = tarea.scrollTop;
tarea.value = txtbefore + zeichen + txtafter;
tarea.selectionStart = txtbefore.length + zeichen.length;
tarea.selectionEnd = txtbefore.length + zeichen.length;
tarea.scrollTop = oldScrollTop;
tarea.focus();
}
else
{
document.forms[form_name].elements[textarea_name].value += zeichen;
document.forms[form_name].elements[textarea_name].focus();
}
}[/code]
und abschleißend textarea.php
[code]<?php
echo “<table border=“0” cellpadding=“0” cellspacing=“0” width=“400”>\n”;
echo “
\n”;
echo “<td colspan=“2” valign=“top”>\n”;
echo “<input class=“input_submit” onClick=“bbcodes(’”.$form_name.”’, ‘".$textarea_name."’, ‘’, '’)" onMouseOut=“bbcodes_hilfe(‘tipp’)” onMouseOver=“bbcodes_hilfe(‘b’)” type=“button” value=" b “>\n”;
echo “<input class=“input_submit” onClick=“bbcodes(’”.$form_name.”’, ‘".$textarea_name."’, ‘’, '’)" onMouseOut=“bbcodes_hilfe(‘tipp’)” onMouseOver=“bbcodes_hilfe(‘i’)” type=“button” value=" i “>\n”;
echo “<input class=“input_submit” onClick=“bbcodes(’”.$form_name.”’, ‘".$textarea_name."’, ‘’, '’)" onMouseOut=“bbcodes_hilfe(‘tipp’)” onMouseOver=“bbcodes_hilfe(‘u’)” type=“button” value=" u “>\n”;
echo “<input class=“input_submit” onClick=“bbcodes(’”.$form_name.”’, ‘".$textarea_name."’, ‘[link=]’, ‘[/link]’)" onMouseOut=“bbcodes_hilfe(‘tipp’)” onMouseOver=“bbcodes_hilfe(‘link’)” type=“button” value=" URL “>\n”;
echo “<input class=“input_submit” onClick=“bbcodes(’”.$form_name.”’, ‘".$textarea_name."’, ‘
’)" onMouseOut=“bbcodes_hilfe(‘tipp’)” onMouseOver=“bbcodes_hilfe(‘img’)” type=“button” value=" Img “>
\n”;
echo “\n”;
echo “
\n”;
echo “
\n”;
echo “<td id=“bbcodes_hilfe” valign=“top” width=“330”> \n”;
echo “<td valign=“top” width=“30”>Schriftfarbe\n”;
echo “
\n”;
echo “
\n”;
echo “<td valign=“top”><textarea class=“input_text” cols=“55” name=”".$textarea_name."" rows=“10”>".$textarea_text."
\n";
echo “<a id=“zeige_smilies_button_on” onClick=“zeige_smilies()”>Zeige Smilies\n”;
echo “<div id=“zeige_smilies” style=“display: none;”>\n”;
echo “<div align=“right”><img border=“0” onClick=“schließe_smilies()” src=“images/schliessen.gif”>\n”;
$sql_sm = “SELECT bbcode, url FROM smilies ORDER BY url”;
$res_sm = mysql_query($sql_sm) OR die($keine_verbindung);
while ($row_sm = mysql_fetch_array($res_sm))
{
echo “<img alt=“Smilie “.$row_sm[‘bbcode’].” einfügen” border=“0” onClick=“einfügen(’”.$form_name.”’, ‘".$textarea_name."’, ’ “.$row_sm[‘bbcode’].” ')" src=“images/smilies/”.$row_sm[‘htmlcode’]."">\n";
}
echo “\n”;
echo “\n”;
echo “<td valign=“top”>\n”;
// Hier kommt die Farbpallette rein
echo “\n”;
echo “
\n”;
echo “\n”;
?>[/code]