]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
HTML5 video/audio support in attachments
authorMikael Nordfeldth <mmn@hethane.se>
Mon, 14 Apr 2014 12:06:11 +0000 (14:06 +0200)
committerMikael Nordfeldth <mmn@hethane.se>
Mon, 14 Apr 2014 12:06:11 +0000 (14:06 +0200)
lib/attachmentlist.php
theme/base/css/display.css

index 209f551c85086a29b956594107b7c1dc11259f60..4d7bb7a7ca81cfbb515352b80d86390b5dbfbe75 100644 (file)
@@ -322,14 +322,6 @@ class Attachment extends AttachmentListItem
                     break;
 
                 case 'application/ogg':
-                case 'audio/ogg':
-                case 'audio/x-speex':
-                case 'video/mpeg':
-                case 'audio/mpeg':
-                case 'video/mp4':
-                case 'video/ogg':
-                case 'video/quicktime':
-                case 'video/webm':
                     $arr  = array('type' => $this->attachment->mimetype,
                         'data' => $this->attachment->url,
                         'width' => 320,
@@ -341,6 +333,24 @@ class Attachment extends AttachmentListItem
                     $this->out->elementEnd('object');
                     break;
 
+                case 'audio/ogg':
+                case 'audio/x-speex':
+                case 'video/mpeg':
+                case 'audio/mpeg':
+                case 'video/mp4':
+                case 'video/ogg':
+                case 'video/quicktime':
+                case 'video/webm':
+                    $mediatype = common_get_mime_media($this->attachment->mimetype);
+                    $this->out->elementStart($mediatype,
+                                        array('class'=>'attachment_player',
+                                            'controls'=>'controls'));
+                    $this->out->element('source',
+                                        array('src'=>$this->attachment->url,
+                                            'type'=>$this->attachment->mimetype));
+                    $this->out->elementEnd($mediatype);
+                    break;
+
                 case 'text/html':
                     if ($this->attachment->filename) {
                         // Locally-uploaded HTML. Scrub and display inline.
index 5c7695cbc6c46fedc0b02ca7730fa0a64106bd7d..11956f054b0c8198e381aa52beca40d90c13cc46 100644 (file)
@@ -832,7 +832,7 @@ float:left;
 clear:both;
 }
 
-#attachment_view img {
+#attachment_view img, #attachment_view .attachment_player {
 max-width:480px;
 max-height:480px;
 }