var player = null;
var seek = 0;
var seekFlag = false;
var currentState;
var currentOnglet = 'jt_monde';
var onglet_close_timer = 0;
var onglet_open_timer = 0;
 
function playerReady(obj){
	player = gid(obj.id);
	if(player == null)
	{
		alert($('object').attr('id'));
		player = gid($('object').attr('id'));
	}
	
	player.addModelListener('STATE', 'stateMonitor');
	addListeners(); 

};/**/
function stateMonitor(obj){
	if((obj.newstate == 'PLAYING') && (seekFlag)){
		seekFlag = false;
		setTimeout("player.sendEvent('SEEK', seek)", 100);
	}
	currentState = obj.newstate;
};
function seekSome(some){
	seek = some;
	if(currentState == 'PLAYING'){
		player.sendEvent('SEEK', seek)
	} else {
		seekFlag = true;
		player.sendEvent('PLAY', 'true');
	}
};
function gid(name){
	return document.getElementById(name);
};
	
var currentPlaylist = null;
var currentLength = 0;
var currentItem = -1; 
var previousItem = -1; 
var currentMute = false; 
var currentVolume = 80; 
var currentPosition = 0; 
var currentState = 'NONE';
var currentLoaded = 0;
var currentRemain = 0;
var totalTime= 0;

function addListeners() {
	if (player) { 
		player.addControllerListener("MUTE", "muteListener");

		player.addModelListener("LOADED", "loadedListener");
		player.addModelListener("STATE", "stateListener");
		player.addModelListener("TIME", "positionListener");

		player.addViewListener("VOLUME", "volumeListener");
	} else {
		setTimeout("addListeners()",50);
	}
}


function stateListener(obj) { //IDLE, BUFFERING, PLAYING, PAUSED, COMPLETED
	currentState = obj.newstate; 
	previousState = obj.oldstate; 
	//var tmp = document.getElementById("stat");
	//if (tmp) { tmp.innerHTML = "current state: " + currentState + "<br>previous state: " + previousState }
}


function positionListener(obj) { 
	currentPosition = obj.position; 
	totalTime = Math.floor(obj.duration);
	var tmp = document.getElementById("playerCt");
	var tot = document.getElementById("tot"); 	
	if (tmp) {
		z= totalTime; z1= Math.floor (z/60); z2=z-60*z1;
		z3=z2; if (z2<10) { z3="0"+z3 }
		z4=z1; if (z1<10) { z4="0"+z4 }
		tot.innerHTML = "<span style='color:#990000;'>"+z4+":"+z3+"</span>";
		z= Math.floor (currentPosition); z1= Math.floor (z/60); z2=z-60*z1;
		z3=z2; if (z2<10) { z3="0"+z3 }
		z4=z1; if (z1<10) { z4="0"+z4 }
		tmp.innerHTML = "<span style='color:#009900;'>"+z4+":"+z3+"</span>";
	}
}


function loadedListener(obj) { 
	currentLoaded = obj.loaded; 
	currentRemain = obj.total - currentLoaded;
	var tmp = document.getElementById("ldd");
	if (tmp) { tmp.innerHTML = "bytes loaded: " + currentLoaded + "<br>bytes remaining: " + currentRemain }
}


function muteListener(obj) { 
	currentMute = obj.state; 
	var tmp = document.getElementById("mut");
	if (tmp) { tmp.innerHTML = "mute: " + currentMute; }
}



function itemListener(obj) { 
	if (obj.index != currentItem) {
 		previousItem = currentItem;
		currentItem = obj.index;

		if (previousItem == -1) { getPlaylistData(); }

		var tmp = document.getElementById("itm");
		if (tmp) { tmp.innerHTML = "current item: " + currentItem + "<br>previous item: " + previousItem }

		var tmp = document.getElementById("item");
		if (tmp) { tmp.innerHTML = "item: " + currentItem; }

		var tmp = document.getElementById("pid"); 
		if (tmp) { tmp.innerHTML = "(received from the player with the id: <i><b>" + obj.id + "</b></i>)" } 

		printItemData(currentItem);
	}
}

function addListeners() {
	if (player) { 
		player.addModelListener("TIME", "positionListener");
		player.addControllerListener("VOLUME", "volumeListener");
	} else {
		setTimeout("addListeners()",100);
	}
}
function volumeListener(obj) { 
	currentVolume = obj.percentage; 
	var tmp = document.getElementById("vol");
	if (tmp) { tmp.innerHTML = "<b>6/ Volume:</b> " + currentVolume; }
}


function loadFile(theFile) { 
//alert("lectureVideo");
player.sendEvent('LOAD', theFile);
myPlay();
}
function myPlay() { player.sendEvent('PLAY', 'true') }
function myPause() { player.sendEvent('PLAY', 'false') }
function myStop() { player.sendEvent('PLAY', 'false') }

function myRewind() { mySetTime(0) }	
function mySetTime(myThisTime) {
  // myPause();
  player.sendEvent('SEEK', myThisTime)
  // if (movieIsPlaying>0) { setTimeout( "myPlay()", "100" ) }
}
/////
//////////////
function myGetTime() { return currentPosition }
function myGetEndTime() { return totalTime }

function myGetVolume(){ return currentVolume }
function mySetVolume(myThisLevel){ player.sendEvent('volume',myThisLevel) }

function slider(n){
	player.sendEvent('SEEK', n*totalTime/10)
}
