]> git.mxchange.org Git - friendica.git/blobdiff - include/html2bbcode.php
string extraction
[friendica.git] / include / html2bbcode.php
index 2ae0df8f688123077eca1b070b2ae749247de254..688c0145266a78b67ef8ef47f077d206574b8664 100644 (file)
@@ -1,50 +1,62 @@
 <?php
 
+/**
+ * html2bbcode
+ */
+
 
 function html2bbcode($s) {
 
+       // Tags to Find
+
+       $htmltags = array(
+               '/\n/is',
+               '/\<b\>(.*?)\<\/b\>/is',
+               '/\<i\>(.*?)\<\/i\>/is',
+               '/\<u\>(.*?)\<\/u\>/is',
+               '/\<ul\>(.*?)\<\/ul\>/is',
+               '/\<li\>(.*?)\<\/li\>/is',
+               '/\<img(.*?) src=\"(.*?)\" (.*?)\>/is',
+               '/\<div(.*?)\>(.*?)\<\/div\>/is',
+               '/\<br(.*?)\>/is',
+               '/\<strong\>(.*?)\<\/strong\>/is',
+               '/\<a href=\"(.*?)\"(.*?)\>(.*?)\<\/a\>/is',
+               '/\<code\>(.*?)\<\/code\>/is',
+               '/\<span style=\"color:(.*?)\"\>(.*?)\<\/span\>/is',
+               '/\<blockquote\>(.*?)\<\/blockquote\>/is',
+               '/\<video(.*?) src=\"(.*?)\" (.*?)\>(.*?)\<\/video\>/is',
+               '/\<audio(.*?) src=\"(.*?)\" (.*?)\>(.*?)\<\/audio\>/is',
+
+       );
+
+       // Replace with
+
+       $bbtags = array(
+               '',
+               '[b]$1[/b]',
+               '[i]$1[/i]',
+               '[u]$1[/u]',
+               '[list]$1[/list]',
+               '[*]$1',
+               '[img]$2[/img]',
+               '$2',
+               "\n",
+               '[b]$1[/b]',
+               '[url=$1]$3[/url]',
+               '[code]$1[/code]',
+               '[color="$1"]$2[/color]',
+               '[quote]$1[/quote]',
+               '[video]$1[/video]',
+               '[audio]$1[/audio]',
+       );
+
+       // Replace $htmltags in $text with $bbtags
+       $text = preg_replace ($htmltags, $bbtags, $s);
+
+       call_hooks('html2bbcode', $text);
+
+       // Strip all other HTML tags
+       $text = strip_tags($text);
+       return $text;
+}
 
-// Tags to Find
-$htmltags = array(
-                        '/\<b\>(.*?)\<\/b\>/is',
-                        '/\<i\>(.*?)\<\/i\>/is',
-                        '/\<u\>(.*?)\<\/u\>/is',
-                        '/\<ul\>(.*?)\<\/ul\>/is',
-                        '/\<li\>(.*?)\<\/li\>/is',
-                        '/\<img(.*?) src=\"(.*?)\" (.*?)\>/is',
-                        '/\<div(.*?)\>(.*?)\<\/div\>/is',
-                        '/\<br(.*?)\>/is',
-                        '/\<strong\>(.*?)\<\/strong\>/is',
-                        '/\<a href=\"(.*?)\"(.*?)\>(.*?)\<\/a\>/is',
-                       '/\<code\>(.*?)\<\/code\>/is',
-                       '/\<font color=(.*?)\>(.*?)\<\/font\>',
-                       '/\<font color=\"(.*?)\"\>(.*?)\<\/font\>',
-                       '/\<blockquote\>(.*?)\<\/blockquote\>/is',
-
-                        );
-
-// Replace with
-$bbtags = array(
-                        '[b]$1[/b]',
-                        '[i]$1[/i]',
-                        '[u]$1[/u]',
-                        '[list]$1[/list]',
-                        '[*]$1',
-                        '[img]$2[/img]',
-                        '$2',
-                        '\n',
-                        '[b]$1[/b]',
-                        '[url=$1]$3[/url]',
-                       '[code]$1[/code]',
-                       '[color="$1"]$2[/color]',
-                       '[color="$1"]$2[/color]',
-                       '[quote]$1[/quote]',
-                        );
-
-// Replace $htmltags in $text with $bbtags
-$text = preg_replace ($htmltags, $bbtags, $s);
-
-// Strip all other HTML tags
-$text = strip_tags($text);
-return $text;
-}
\ No newline at end of file