summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2011-08-01 16:19:51 +0200
committerRobin Appelman <icewind1991@gmail.com>2011-08-01 16:20:15 +0200
commit30ce4e5b6bae3b2551c071a218cdbaf2a3e49195 (patch)
tree13c270b6698736a96b192fd667e097adb521a78e
parentf13ff8f60109c312f6e229848a66fd80c378dd5b (diff)
downloadnextcloud-server-30ce4e5b6bae3b2551c071a218cdbaf2a3e49195.tar.gz
nextcloud-server-30ce4e5b6bae3b2551c071a218cdbaf2a3e49195.zip
properly save play/pause state of media player
-rw-r--r--apps/media/js/player.js18
1 files changed, 15 insertions, 3 deletions
diff --git a/apps/media/js/player.js b/apps/media/js/player.js
index 8ef85f4848e..369d3e389c3 100644
--- a/apps/media/js/player.js
+++ b/apps/media/js/player.js
@@ -19,7 +19,7 @@ var PlayList={
PlayList.play(next);
PlayList.render();
},
- play:function(index){
+ play:function(index,ready){
if(index==null){
index=PlayList.current;
}
@@ -28,13 +28,12 @@ var PlayList={
if(PlayList.player){
if(PlayList.player.data('jPlayer').options.supplied!=PlayList.items[index].type){//the the audio type changes we need to reinitialize jplayer
PlayList.player.jPlayer("destroy");
- PlayList.init(PlayList.items[index].type,PlayList.play);
+ PlayList.init(PlayList.items[index].type,function(){PlayList.play(null,ready)});
}else{
PlayList.player.jPlayer("setMedia", PlayList.items[PlayList.current]);
PlayList.items[index].playcount++;
PlayList.player.jPlayer("play");
localStorage.setItem(oc_current_user+'oc_playlist_current',index);
- localStorage.setItem(oc_current_user+'oc_playlist_playing','true');
if(index>0){
var previous=index-1;
}else{
@@ -50,6 +49,9 @@ var PlayList={
if (typeof Collection !== 'undefined') {
Collection.registerPlay();
}
+ if(ready){
+ ready();
+ }
}
}else{
PlayList.init(PlayList.items[index].type,PlayList.play);
@@ -74,6 +76,12 @@ var PlayList={
}
$(PlayList.player).jPlayer({
ended:PlayList.next,
+ pause:function(){
+ localStorage.setItem(oc_current_user+'oc_playlist_playing','false');
+ },
+ play:function(){
+ localStorage.setItem(oc_current_user+'oc_playlist_playing','true');
+ },
supplied:type,
ready:function(){
PlayList.load();
@@ -145,6 +153,10 @@ var PlayList={
PlayList.current=parseInt((localStorage.getItem(oc_current_user+'oc_playlist_current')));
if(JSON.parse(localStorage.getItem(oc_current_user+'oc_playlist_playing'))){
PlayList.play();
+ }else{
+ PlayList.play(null,function(){
+ PlayList.player.jPlayer("pause");
+ });
}
PlayList.render();
}