]> git.mxchange.org Git - friendica.git/commitdiff
html5 video/audio support - still needs multiple source
authorFriendika <info@friendika.com>
Fri, 31 Dec 2010 02:32:49 +0000 (18:32 -0800)
committerFriendika <info@friendika.com>
Fri, 31 Dec 2010 02:32:49 +0000 (18:32 -0800)
selection,  and check that it isn't blocked by html purifier

include/bbcode.php
include/html2bbcode.php

index 7e901bd412bd00d2853b473af091489c883e267c..646401ddb5338153ff4b9bd3841898b8a319c9f6 100644 (file)
@@ -77,6 +77,13 @@ function bbcode($Text) {
        // Images
        // [img]pathtoimage[/img]
        $Text = preg_replace("/\[img\](.+?)\[\/img\]/", '<img src="$1">', $Text);
+
+       // html5 video and audio
+
+       $Text = preg_replace("/\[video\](.+?)\[\/video\]/", '<video src="$1" controls="controls" width="425" height="350">$1</video>', $Text);
+
+       $Text = preg_replace("/\[audio\](.+?)\[\/audio\]/", '<audio src="$1" controls="controls">$1</audio>', $Text);
+
          
        // [img=widthxheight]image source[/img]
        $Text = preg_replace("/\[img\=([0-9]*)x([0-9]*)\](.+?)\[\/img\]/", '<img src="$3" height="$2" width="$1">', $Text);
index 1f3d63a0da59b66591f870f5334f360da2ec8005..b993292300ad8fe0ab1f1ba9041268770811cad7 100644 (file)
@@ -1,52 +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(
-                                               '/\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',
-
-                        );
-
-// 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]',
-                        );
-
-// 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;
-}
\ No newline at end of file