summaryrefslogtreecommitdiffstats
path: root/apps/media/js/loader.js
blob: c49d90cf3eba02430327a51fc71d6bb1bd78a44e (plain)
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 extention=file.substr(file.indexOf('.')+1);
	if(extention=='ogg'){
		return 'oga'
	}
	//TODO check for more specific cases
	return extention;
}

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){
		OC.addScript('media','jquery.jplayer.min',function(){
			OC.addScript('media','player',function(){
				$('body').append($('<div id="playerPlaceholder"/>'))
				$('#playerPlaceholder').append($('<div/>')).load(OC.filePath('media','templates','player.php'),function(){
					loadPlayer.done=true;
					PlayList.init(type,ready);
				});
			});
		});
		OC.addStyle('media','player');
	}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','',playAudio);
		FileActions.register('application/ogg','','Play',playAudio);
		FileActions.setDefault('audio','Play');
		FileActions.setDefault('application/ogg','Play');
	}
	if(typeof PlayList==='undefined'){
		if(typeof localStorage !== 'undefined'){
			if(localStorage.hasOwnProperty(oc_current_user+'oc_playlist_items') && localStorage.getItem(oc_current_user+'oc_playlist_items')!='[]' && localStorage.getItem(oc_current_user+'oc_playlist_active')!='true'){
				loadPlayer();
			}
		}
	}
});