From 26b4e551bf61e568fa2c1f68e5ee134d561d294c Mon Sep 17 00:00:00 2001 From: Luigi Pinca Date: Mon, 4 Apr 2016 19:33:21 +0200 Subject: [PATCH] removed jPlayer --- public/js/app.js | 96 +++++++++++++++++++++++------------------------- views/room.jade | 2 - 2 files changed, 46 insertions(+), 52 deletions(-) diff --git a/public/js/app.js b/public/js/app.js index 8253e70..b5afeb1 100644 --- a/public/js/app.js +++ b/public/js/app.js @@ -7,7 +7,6 @@ , $countdown = $('#countdown') , $feedback = $('#feedback') , $guessbox = $('#guess') - , $jplayer , $messagebox = $('#message') , $modal = $('#modal') , $points = $('#summary .points') @@ -21,6 +20,7 @@ , $track = $('#summary .track') , $tracks = $('#tracks') , $users = $('#users') + , audio , elapsedtime = 0 , historycursor = 0 , historyvalues = [] @@ -100,6 +100,29 @@ return this.replace(/&/g, '&').replace(//g, '>'); }; + var addCassetteBackdrop = function() { + var html = [ + '
' + , '' + , '
' + ].join(''); + + var $touchbackdrop = $(html); + $touchbackdrop.appendTo('#cassette'); + + $touchplay = $('#touch-play'); + $touchplay.on('click', function() { + if (!$(this).hasClass('btn-danger')) { + audio.currentTime = elapsedtime; + audio.play(); + $touchbackdrop.remove(); + $touchplay = null; + } + }); + }; + // Add a chat entry, whether message, notification, etc. var addChatEntry = function($childNode) { var $entry = $('
  • '); @@ -281,7 +304,7 @@ var setVolume = function(volume) { handleIcon(volume); - $jplayer.jPlayer('volume', volume); + audio.volume = volume; oldvalue = volume; setCookie(volume); }; @@ -292,7 +315,7 @@ if (oldvalue !== 0) { handleIcon(0); - $jplayer.jPlayer('volume', 0); + audio.volume = 0; positionVolumeHandle(0); } return; @@ -302,7 +325,7 @@ if (oldvalue !== 0) { handleIcon(oldvalue); - $jplayer.jPlayer('volume', oldvalue); + audio.volume = oldvalue; positionVolumeHandle(oldvalue); } }); @@ -452,7 +475,7 @@ // Let the user know when he/she has disconnected var disconnect = function() { clearInterval(timer); - $jplayer.jPlayer('stop'); + audio.pause(); addChatEntry($('ERROR: You have disconnected.')); addFeedback('Something wrong happened'); $users.empty(); @@ -628,7 +651,7 @@ }); }; - var jplayerReady = function() { + var open = function() { primus.send('loggedin', function(isloggedin, loggedinas) { if (isloggedin) { nickname = loggedinas; @@ -638,35 +661,10 @@ joinUnauthenticated(); }); - - if (!$.jPlayer.platform.mobile && !$.jPlayer.platform.tablet) { - return addVolumeControl(); - } - - var html = [ - '
    ' - , '' - , '
    ' - ].join(''); - - var $touchbackdrop = $(html); - $touchbackdrop.appendTo('#cassette'); - - $touchplay = $('#touch-play'); - $touchplay.on('click', function() { - if (!$(this).hasClass('btn-danger')) { - $jplayer.jPlayer('play', elapsedtime); - $touchbackdrop.remove(); - $touchplay = null; - } - }); }; var loadTrack = function(previewUrl) { - $jplayer.jPlayer('mute'); - $jplayer.jPlayer('setMedia', { m4a: previewUrl }); + audio.src = previewUrl; }; /** @@ -738,8 +736,7 @@ $touchplay.removeClass('btn-danger disabled').addClass('btn-success'); } - $jplayer.jPlayer('unmute'); - $jplayer.jPlayer('play'); + audio.play(); $guessbox.val(''); isplaying = true; clearInterval(timer); @@ -1186,22 +1183,21 @@ $togglechat.click(hideChat); - // Open the realtime connection + audio = new Audio(); + audio.preload = 'auto'; + audio.volume = 1; + + /Android|iPhone|iPad|iPod/i.test(navigator.userAgent) + ? addCassetteBackdrop() + : addVolumeControl(); + primus = new Primus({ strategy: false }); - primus.on('open', function() { - $jplayer = $('#player').jPlayer({ - ready: jplayerReady, - swfPath: '//cdn.jsdelivr.net/jplayer/2.8/Jplayer.swf', - supplied: 'm4a', - preload: 'auto', - volume: 1 - }); - primus.on('updateoverview', updateRoomsOverview); - primus.on('invalidnickname', invalidNickName); - primus.on('alreadyinaroom', alreadyInARoom); - primus.on('overview', roomsOverview); - primus.on('close', disconnect); - primus.on('ready', ready); - }); + primus.on('updateoverview', updateRoomsOverview); + primus.on('invalidnickname', invalidNickName); + primus.on('alreadyinaroom', alreadyInARoom); + primus.on('overview', roomsOverview); + primus.on('end', disconnect); + primus.on('ready', ready); + primus.on('open', open); })(); diff --git a/views/room.jade b/views/room.jade index 8390ce7..d9e20e2 100644 --- a/views/room.jade +++ b/views/room.jade @@ -93,9 +93,7 @@ block sections block media #modal.modal.fade - #player append scripts - script(src="//cdn.jsdelivr.net/jplayer/2.8/jquery.jplayer.min.js") script(src="/static/js/primus.min.js") script(src="/static/js/app.min.js") -- 2.54.0