summaryrefslogtreecommitdiffstats
path: root/apps/media/js/files.js
blob: d699a96db7eb4f4d2bf7d90da55e352a389a7488 (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
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);

	FileActions.register('audio','Play',playAudio);
	FileActions.register('application/ogg','Play',playAudio);
	FileActions.setDefault('audio','Play');
	FileActions.setDefault('application/ogg','Play');
});