Also gut:
Wichtig: Alle Dateien vor der Änderung sichern! Ich habe das nicht getestet und übernehme keine Garantie!
öffne bbcode.tpl (im templates/STYLE/ Verzeichnis)
Ganz am Ende einfügen:
Code: Alles auswählen
<!-- BEGIN embed --><embed src="{URL}" WIDTH="{WIDTH}" HEIGHT="{HEIGHT}"><!-- END embed -->
öffne bbcode.php (im includes Verzeichnis)
finde
Davor einfügen:
Code: Alles auswählen
$bbcode_tpl['embed'] = str_replace('{URL}','\\3',$bbcode_tpl['embed']);
$bbcode_tpl['embed'] = str_replace('{WIDTH}','\\1',$bbcode_tpl['embed']);
$bbcode_tpl['embed'] = str_replace('{HEIGHT}','\\2',$bbcode_tpl['embed']);
finde
Code: Alles auswählen
// Patterns and replacements for URL and email tags..
$patterns = array();
$replacements = array();
Davor einfügen
Code: Alles auswählen
$text = preg_replace("#\[embed:$uid:w=([0-9]+) h=([0-9]+)\]([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/embed:$uid\]#is", $bbcode_tpl['embed'], $text);
Finde
Code: Alles auswählen
// [b] and [/b] for bolding text.
$text = preg_replace("#\[b\](.*?)\[/b\]#si", "[b:$uid]\\1[/b:$uid]", $text);
Davor einfügen
Code: Alles auswählen
//EMBED: URL der Form aaa://xxx.de
$text = preg_replace("#\[embed:w=([0-9]+) h=([0-9]+)\]([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/embed\]#is", "[embed:$uid:w=\\1 h=\\2]\\3[/embed:$uid]", $text);
//EMBED: URL der Form www.xxx.de
$text = preg_replace("#\[embed:w=([0-9]+) h=([0-9]+)\]([\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/embed:$uid\]#is", "[embed:$uid:w=\\1 h=\\2]http://\\3[/embed:$uid]", $text);
//Parameter vertauscht:
//EMBED: URL der Form aaa://xxx.de
$text = preg_replace("#\[embed:h=([0-9]+) w=([0-9]+)\]([\w]+?://[\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/embed\]#is", "[embed:$uid:w=\\2 h=\\1]\\3[/embed:$uid]", $text);
//EMBED: URL der Form www.xxx.de
$text = preg_replace("#\[embed:h=([0-9]+) w=([0-9]+)\]([\w\#$%&~/.\-;:=,?@\[\]+]*?)\[/embed:$uid\]#is", "[embed:$uid:w=\\2 h=\\1]http://\\3[/embed:$uid]", $text);
Diese Stelle ist die zu bearbeitende, falls der Code für gewisse Benutzer gesperrt werden soll (Als Beispiel: Nur Admin darf den Code benutzen -> Der Code muss so bearbeitet werden:
Code: Alles auswählen
global $userdata;
if($userdata['user_level'] == ADMIN)
{
... HIER DER CODE ...
}
)
Ich hatte keine Gelegenheit das zu testen, also alles vorher sichern...
Es ist vor allem möglich, dass ich mich bei den regulären Ausdrücken vertippt habe, Ausprobieren mit Rückmeldung wäre gut. Ich habe es auch nicht auf Sicherheitsaspekte hin geprüft (Im Besonderen XSS, ich meine aber, dass Anführungszeichen in der URL ausgeschlossen sind, so dass da keine Gefahr droht. Ich würde den Tag aber nur für gewisse User freigeben, denn mit embed kann man ja so ziemlich alles machen...
Nutzung: