summaryrefslogtreecommitdiffstats
path: root/apps/media/js/player.js
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2011-07-29 23:53:22 +0200
committerRobin Appelman <icewind1991@gmail.com>2011-07-29 23:55:54 +0200
commit94e25ecb0c2dcd895fb080b3b2cf296d58676e17 (patch)
tree509057b6d0e6264c610279c38a24268e6e49abc5 /apps/media/js/player.js
parentbafd684eb694ed0bd86b46ff7cd36382c1cebc34 (diff)
downloadnextcloud-server-94e25ecb0c2dcd895fb080b3b2cf296d58676e17.tar.gz
nextcloud-server-94e25ecb0c2dcd895fb080b3b2cf296d58676e17.zip
Some much needed interface work on the media player
Diffstat (limited to 'apps/media/js/player.js')
-rw-r--r--apps/media/js/player.js39
1 files changed, 11 insertions, 28 deletions
diff --git a/apps/media/js/player.js b/apps/media/js/player.js
index f76628110a8..7beb01b6013 100644
--- a/apps/media/js/player.js
+++ b/apps/media/js/player.js
@@ -3,13 +3,13 @@ var PlayList={
current:-1,
items:[],
player:null,
- parent:null,
next:function(){
var next=PlayList.current+1;
if(next>=PlayList.items.length){
next=0;
}
PlayList.play(next);
+ PlayList.render();
},
previous:function(){
var next=PlayList.current-1;
@@ -17,6 +17,7 @@ var PlayList={
next=PlayList.items.length-1;
}
PlayList.play(next);
+ PlayList.render();
},
play:function(index){
if(index==null){
@@ -66,6 +67,9 @@ var PlayList={
});
},
add:function(song){
+ if(!song){
+ return;
+ }
if(song.substr){//we are passed a string, asume it's a url to a song
PlayList.addFile(song);
}
@@ -81,7 +85,7 @@ var PlayList={
}
if(song.song_name){
var type=musicTypeFromFile(song.song_path);
- var item={name:song.song_name,type:type,artist:song.artist_name,album:song.album_name};
+ var item={name:song.song_name,type:type,artist:song.artist_name,album:song.album_name,length:song.song_length,playcount:song.song_playcount};
item[type]=PlayList.urlBase+encodeURIComponent(song.song_path);
PlayList.items.push(item);
}
@@ -92,30 +96,9 @@ var PlayList={
item[type]=PlayList.urlBase+encodeURIComponent(path);
PlayList.items.push(item);
},
- render:function(parent){//parent should be an ul element
- if(parent){
- PlayList.parent=parent;
- }else{
- parent=PlayList.parent;
- }
- if(parent){
- parent.empty();
- for(var i=0;i<PlayList.items.length;i++){
- var song=PlayList.items[i];
- var item=$('<li>'+song.artist+' - '+song.album+' - '+song.name+'</li>');
- item.data('artist',song.artist);
- item.data('album',song.album);
- item.data('name',song.name);
- item.data('index',i);
- item.click(function(){
- PlayList.play($(this).data('index'));
- PlayList.render();
- });
- if(i==PlayList.current){
- item.addClass('current');
- }
- parent.append(item);
- }
- }
- }
+ remove:function(index){
+ PlayList.items.splice(index,1);
+ PlayList.render();
+ },
+ render:function(){}
}