Blame view

sources/apps/media/js/loader.js 1.7 KB
03e52840d   Kload   Init
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
  function musicTypeFromFile(file){
  	var extension=file.substr(file.lastIndexOf('.')+1).toLowerCase();
  	if(extension=='ogg'){
  		return 'oga';
  	}
  	//TODO check for more specific cases
  	return extension;
  }
  
  function playAudio(filename){
  	loadPlayer(musicTypeFromFile(filename),function(){
  		PlayList.add($('#dir').val()+'/'+filename);
  		PlayList.play(PlayList.items.length-1);
  	});
  }
  
  function addAudio(filename){
  	loadPlayer(musicTypeFromFile(filename),function(){
  		PlayList.add($('#dir').val()+'/'+filename);
  	});
  }
  
  function loadPlayer(type,ready){
  	if(!loadPlayer.done){
  		loadPlayer.done=true;
  		OC.addStyle('media','player');
  		OC.addScript('media','jquery.jplayer.min',function(){
  			OC.addScript('media','player',function(){
  				var navItem=$('#apps a[href="'+OC.linkTo('media','index.php')+'"]');
  				navItem.height(navItem.height());
  				navItem.load(OC.filePath('media','templates','player.php'),function(){
  					PlayList.init(type,ready);
  				});
  			});
  		});
  	}else{
  		ready();
  	}
  }
  
  $(document).ready(function() {
  	loadPlayer.done=false;
  
  // 	FileActions.register('audio','Add to playlist','',addAudio);
  // 	FileActions.register('application/ogg','Add to playlist','',addAudio);
  
  	if(typeof FileActions!=='undefined'){
  		FileActions.register('audio','Play', OC.PERMISSION_READ, '',playAudio);
  		FileActions.register('application/ogg', OC.PERMISSION_READ, '','Play',playAudio);
  		FileActions.setDefault('audio','Play');
  		FileActions.setDefault('application/ogg','Play');
  	}
  	var oc_current_user=OC.currentUser;
  	if(typeof PlayList==='undefined'){
  		if(OC.localStorage.getItem('playlist_items') && OC.localStorage.getItem('playlist_items').length && OC.localStorage.getItem('playlist_active')!=true){
  			loadPlayer();
  		}
  	}
  });