]> git.mxchange.org Git - friendica.git/blobdiff - include/bbcode.php
merge diaspora/friendika vcard formats - not yet complete
[friendica.git] / include / bbcode.php
index 40f4935fba21aecba992fa4d6c7277a2ea75dd1a..3619015ca9f8c6fa0734ff0af8c6f932c65f34b3 100644 (file)
@@ -3,6 +3,13 @@
 require_once("include/oembed.php");
 require_once('include/event.php');
 
+
+
+function stripcode_br_cb($s) {
+       return '[code]' . str_replace('<br />', '', $s[1]) . '[/code]';
+}
+
+
        // BBcode 2 HTML was written by WAY2WEB.net
        // extended to work with Mistpark/Friendika - Mike Macgirvin
 
@@ -73,15 +80,32 @@ function bbcode($Text,$preserve_nl = false) {
        $Text = preg_replace("/\[list=I\](.*?)\[\/list\]/s", '<ul class="listupperroman">$1</ul>' ,$Text);
        $Text = preg_replace("/\[list=a\](.*?)\[\/list\]/s", '<ul class="listloweralpha">$1</ul>' ,$Text);
        $Text = preg_replace("/\[list=A\](.*?)\[\/list\]/s", '<ul class="listupperalpha">$1</ul>' ,$Text);
-       $Text = str_replace("[*]", "<li>", $Text);
+       $Text = preg_replace("/\[li\](.*?)\[\/li\]/s", '<li>$1</li>' ,$Text);
+
+       $Text = preg_replace("/\[td\](.*?)\[\/td\]/s", '<td>$1</td>' ,$Text);
+       $Text = preg_replace("/\[tr\](.*?)\[\/tr\]/s", '<tr>$1</tr>' ,$Text);
+       $Text = preg_replace("/\[table\](.*?)\[\/table\]/s", '<table>$1</table>' ,$Text);
+
+       $Text = preg_replace("/\[table border=1\](.*?)\[\/table\]/s", '<table border="1" >$1</table>' ,$Text);
+       $Text = preg_replace("/\[table border=0\](.*?)\[\/table\]/s", '<table border="0" >$1</table>' ,$Text);
+
+       
+//     $Text = str_replace("[*]", "<li>", $Text);
 
        // Check for font change text
        $Text = preg_replace("(\[font=(.*?)\](.*?)\[\/font\])","<span style=\"font-family: $1;\">$2</span>",$Text);
 
        // Declare the format for [code] layout
+
+       $Text = preg_replace_callback("/\[code\](.*?)\[\/code\]/is",'stripcode_br_cb',$Text);
+
        $CodeLayout = '<code>$1</code>';
        // Check for [code] text
        $Text = preg_replace("/\[code\](.*?)\[\/code\]/is","$CodeLayout", $Text);
+
+
+
+
        // Declare the format for [quote] layout
        $QuoteLayout = '<blockquote>$1</blockquote>';                     
        // Check for [quote] text