From 1c800ca9c49a2ae950ec267d6463b4121de1709d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn?= Date: Thu, 3 Sep 2015 16:30:31 +0200 Subject: first commit --- js/viewer.js | 87 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100755 js/viewer.js (limited to 'js/viewer.js') diff --git a/js/viewer.js b/js/viewer.js new file mode 100755 index 0000000..157c4a6 --- /dev/null +++ b/js/viewer.js @@ -0,0 +1,87 @@ +var videoViewer = { + UI : { + playerTemplate : '
' + '' + '', + show : function () { + $('
').appendTo('body'); + + $('#videoviewer_overlay').fadeIn('fast',function(){ + $('#videoviewer_popup').fadeIn('fast'); + }); + $('#box-close').click(videoViewer.hidePlayer); + var size = videoViewer.UI.getSize(); + var playerView = videoViewer.UI.playerTemplate.replace(/%width%/g, size.width) + .replace(/%height%/g, size.height) + .replace(/%type%/g, videoViewer.mime) + .replace(/%src%/g, videoViewer.location) + ; + $(playerView).prependTo('#videoviewer_container'); + }, + hide : function() { + $('#videoviewer_popup').fadeOut('fast', function() { + $('#videoviewer_overlay').fadeOut('fast', function() { + $('#videoviewer_popup').remove(); + $('#videoviewer_overlay').remove(); + }); + }); + }, + getSize : function () { + var size; + if ($(document).width()>'680' && $(document).height()>'520' ){ + size = {width: 640, height: 480}; + } else { + size = {width: 320, height: 240}; + } + return size; + } + }, + mime : null, + file : null, + location : null, + player : null, + mimeTypes : [ + 'video/mp4', + 'video/webm', + 'video/x-flv', + 'video/ogg', + ], + onView : function(file) { + videoViewer.file = file; + videoViewer.location = videoViewer.getMediaUrl(file); + videoViewer.mime = FileActions.getCurrentMimeType(); + videoViewer.showPlayer(); + }, + showPlayer : function() { + videoViewer.UI.show(); + }, + hidePlayer : function() { + videoViewer.player = false; + delete videoViewer.player; + + videoViewer.UI.hide(); + }, + getMediaUrl : function(file) { + var dir = $('#dir').val(); + return fileDownloadPath(dir, file); + }, + log : function(message){ + console.log(message); + } +}; + +$(document).ready(function(){ + + if (typeof FileActions !== 'undefined') { + for (var i = 0; i < videoViewer.mimeTypes.length; ++i) { + var mime = videoViewer.mimeTypes[i]; + console.log(mime); + FileActions.register(mime, 'View', OC.PERMISSION_READ, '', videoViewer.onView); + FileActions.setDefault(mime, 'View'); + + } + } + +}); -- cgit v1.2.3