[Funcion para plugins] Covert BBcode to HTML By Edson
Hola amigos bueno creando la nueva version de titlethreads (le cambiare el nombre pronto jaja) tuve un problema al poner el mensaje en un popup!! El...

Hola amigos bueno creando la nueva version de titlethreads (le cambiare el nombre pronto jaja) tuve un problema al poner el mensaje en un popup!!

El problema era que ponia en bbcode todo y no lo mostraba como en el post porque tenia que ser html y despues de buscar y buscar alguna solucion no encontre mas que una funcion que no me funciono jaja y desidi editar la funcion (tarde u poco) pero quedo y ya funciona convierte el bbcode a html desde el plugin!!

Vengo postearla por si alguno de los que crean plugs aqui la llegaran a necesitar!!

aqui se las dejo

class ConvertBBcodeToHTML {

    public function bbcode2html($cadena) {

        define ( 'TITLE_DATA', ' style="font-size:11px;color:#666;"' );
        define ( 'BOX_STYLE', ' style="border:1px solid #ccc;background:#f1f1f1;padding:5px;margin:2px;"' );
        
        $bbcode [] = '!\[b\](.*)\[/b\]!Us';
    $html [] = '<b>$1</b>';
    $bbcode [] = '!\[u\](.*)\[/u\]!Us';
    $html [] = '<u>$1</u>';   
    $bbcode [] = '!\[i\](.*)\[/i\]!Us';
    $html [] = '<i>$1</i>';    
    $bbcode [] = '!\[s\](.*)\[/s\]!Us';
    $html [] = '<s>$1</s>';   
    $bbcode [] = '/\[br\]/iU';
    $html [] = '<br />';  
    $bbcode [] = '/\[font=(?:"|\')?([\w\s-]*)(?:"|\')?\](.*)\[\/font\]/is';
    $html [] = '<span style="font-family:$1;">$2</span>';
    $bbcode [] = '!\[size=(?:"|\')?([\w\s-]*)(?:"|\')?\](.*)\[\/size\]!Us';
    $html [] = '<span style="font-size:$1px;">$2</span>'; 
    $bbcode [] = '/\[url\](.*)\[\/url\]/i';
    $html [] = '<a href="$1">$1</a>'; 
    $bbcode [] = '!\[url=(?:"|\')?(.*)(?:"|\')?\](.*)\[/url\]!Us';
    $html [] = '<a href="$1">$2</a>';  
    $bbcode [] = '/\[quote\]/i';
    $html [] = '<div' . TITLE_DATA . '>Cita:</div><blockquote' . BOX_STYLE . '>';
    $bbcode [] = '/\[quote=(?:"|\')?([\w\s-]*)(?:"|\')?\]/is';
    $html [] = '<div' . TITLE_DATA . '><b>$1</b> escribi&oacute;:</div><blockquote' . BOX_STYLE . '>';
    $bbcode [] = '/\[\/quote\]/i';
    $html [] = '</blockquote>';
    $bbcode [] = '/\[color=(?:"|\')?(.*)(?:"|\')?\](.*)\[\/color\]/i';
    $html [] = '<font color="$1">$2</font>';
    $bbcode [] = '/\[img\](.*)\[\/img\]/i';
    $html [] = '<img src="$1" />';
    $bbcode [] = '/\[email\](.*)\[\/email\]/i';
    $html [] = '<a href="mailto:$1">$1</a>';
    $bbcode [] = '/\[email=(?:"|\')?(.*)(?:"|\')?\](.*)\[\/email\]/i';
    $html [] = '<a href="mailto:$1">$2</a>';
    $bbcode [] = '!\[list\](.*)\[\/list\]!Us';
    $html [] = '<ul>$1</ul>';
    $bbcode [] = '!\[list=1\](.*)\[\/list\]!Us';
    $html [] = '<ol style="list-style-type:decimal">$1</ol>';
    $bbcode [] = '!\[list=a\](.*)\[\/list\]!Us';
    $html [] = '<ol style="list-style-type:lower-alpha">$1</ol>';
    $bbcode [] = '/\[\*\](.*)/iU';
    $html [] = '<li>$1 ';
	$bbcode [] = '/\[code\](.*)\[\/code\]/ise';
	$html [] = "'<div'.TITLE_DATA.'>Codigo:</div><div'.BOX_STYLE.'>'.highlight_string(trim(stripslashes('$1')),true).'</div>'"; 
	$bbcode [] = '!\[align=(?:"|\')?(left|center|right){1}(?:"|\')?\](.*)\[\/align\]!Us';
	$html [] = '<div style="text-align:$1;">$2</div>';
 
        $cadena = preg_replace ($bbcode, $html, $cadena );
        $cadena = nl2br($cadena);
        return $cadena;
    }
}

Diran que son simples remplaces pero bueno es batalloso
la funcion original es creada por Hidek1 pero yo la edite para que funcione en los plugins xD!!

Espero les sirva aca una demostracion de como el bbcode lo hace HTML y veran como va la nueva version!
Donde esta el nombre del tema a la derecha hay una imagen al dar click sobre ella aparece la info del primer post
http://www.myplugs.com.ar/forumdisplay.php?fid=2


Saludos!!
Archivos Adjuntos

Hmm Edson, me has dado una idea...
Con una función parecida no se podría crear una pagina digamos asi:
www.mybb-es.com/convertir.php

Y Metemos todo un código en BBCode y le picamos a un botón y me lo pase a HTML? O Viceversa. crees que eso se podría XD?
por supuesto que se posdria solo lo pasaria de una text area a otra!
Esta lo postie asi por si llegase homura o solstice a necesitar crear un archivo y capturar datos de la db y si se los muestra en bbcode automaticamente convertirlo Wink
Si si entiendo.. Solamente era una idea, hay te lo dejo por si tienes ganas de hacer el plugin Smile
pues en realidad si! logre adaptarlo aunque es verdad Bour para lo que pdies seria algo distinto y mas sencillo aunque yo recuerdo haberlo hecho en JS y con un script ya precreado >.<
:)
Colaboradores
Gustavo R. Cluster
This forum uses Lukasz Tkacz MyBB addons.