
var selectiontoken = null;
var selectiondisplaytime = 10000;

function HideSelection(objname)
{
	try
	{
		if (document.getElementById(objname))
		{
			if (document.getElementById(objname).style.display=='')
			{
				hideAll()
				resetBtn();
				//showIndex();
				clearTimeout(selectiontoken);
			}	
		}	
	}
	catch(e)
	{
	}
}
													
function showHelp() {	
	document.getElementById("help").style.display = '';	
	//selectiontoken = setInterval("HideSelection('help')",selectiondisplaytime);
}

function showSetting() {	
	document.getElementById("setting").style.display = '';	
	//selectiontoken = setInterval("HideSelection('setting')",selectiondisplaytime);
}

function ClearSelectionToken()
{
	try
	{
		clearTimeout(selectiontoken);
	}
	catch(e)
	{
	}
}

function hideAll(){
	ClearSelectionToken();
	
	document.getElementById("help").style.display = 'none';	
	
	document.getElementById("indexes").style.display = 'none';	
	
	document.getElementById("setting").style.display = 'none';	
}


function loadDone()
{	
	SetSliderVol(50);
	if (vSource != ""){			
		setInterval("UpdateTime()",250);	
		//PlayerObj.URL = vSource;	
	}
}

function setIndexPosition(pos)
{															
	PlayerObj.controls.currentPosition = MMSSFFToSec(pos);	
	PlayerObj.controls.Play();
}	



function showIndex() {	
//	document.getElementById("indexes").style.visibility = 'visible';
//	document.getElementById("indexes").style.display = '';	
}



function resetBtn(){
	document.getElementById('qualityBtn').src = "images/controls/quality.jpg";
	document.getElementById('qualityBtn').state = "off";
	
	document.getElementById('helpBtn').src = "images/controls/help.jpg";
	document.getElementById('helpBtn').state = "off";
}

function getBasename(value) 
{
	return value.substring(value.lastIndexOf('/') + 1,value.length);
}


function IsMuted(obj)
{
	var basename = getBasename(obj.src);
	var result = (basename=='volume_mute.gif')?true:false;
	return result;
}

function IsPlaying(obj)
{
	return obj.attributes.getNamedItem('state').value=='playing';
}


function DoCommand(command, args, obj) 
{		
	switch (command)
	{		 
		case "doPlayPause":
			if (obj.state == "off"){
				PlayerObj.rate = '1';
				PlayerObj.controls.play();
				obj.state = "playing"
				//obj.title = "Pause";
				obj.src = "images/controls/pause.gif";					
			}else{
				if (PlayerObj.PlayState == 3)
				{
					obj.state = "off"
					//obj.title = "Afspil";
					PlayerObj.controls.pause();					
					obj.src = "images/controls/play.gif";				
				}
			}					
			break;
			
		case "doStop":		
			PlayerObj.controls.stop();
			//obj.state = "on";
			//obj.src = "images/controls/stop_hit.gif";										
			break;	
		 
		case "doDrag":					
			SliderPosition(args);			
			break;
			
		case "doDragVolume":								
			PlayerObj.settings.volume = args;			
			break;		
			
		case "doFullscreen":
		    if(PlayerObj.PlayState == 3)								
			    PlayerObj.fullscreen = true;
			break;
		
		case "doMute":
			if (obj.state == "on"){
				obj.state = "off";
				obj.src = "images/controls/volume_mute.gif";
				//obj.alt = "Slå lyden til"; 
				PlayerObj.settings.mute = true;
			}else{
				obj.state = "on";
				//obj.alt = "Slå lyden fra"; 
				obj.src = "images/controls/volume_"+volumeNum+".gif";	
				PlayerObj.settings.mute = false;
			}
			break;
			
		case "doHelp":
			if (obj.state == "off"){
				hideAll();
				resetBtn();
				showHelp();
				obj.state = "on";
				obj.src = "images/controls/help.jpg";				
			}else{
				hideAll();
				resetBtn();
				//showIndex();
				obj.state = "off";
				obj.src = "images/controls/help.jpg";			
			}			
			break;	
					
		case "doQuality":
			if (obj.state == "off"){
				hideAll();
				resetBtn();
				
				showSetting();
				obj.state = "on";
				obj.src = "images/controls/quality.jpg";				
			}else{
				hideAll();
				resetBtn();
				
				showIndex();
				obj.state = "off";
				obj.src = "images/controls/quality.jpg";			
			}												
			break;	
					
		default :
			alert ("Der er opstået en fejl!");
			break;
	}		
}

function UpdateTime(){
	var _state = PlayerObj.PlayState;	

	if (_state == 2 || _state == 1 ||_state == 0 || _state == 3)
	{								
		TimerHtml(SecToMMSSFF(PlayerObj.controls.currentPosition)+ " / " + SecToMMSSFF(PlayerObj.currentMedia.duration));		
		UpdateSlider();							
	}

}
var volumeNum = 0;
function setVolume(intPercent){	
	try
	{
		PlayerObj.settings.volume = intPercent;
	}
	catch(e)
	{
	}	

	volumeNum = parseInt((5/100)*intPercent) + 1;
	if (volumeNum<0)
	{
		volumeNum=0;
	}else if (volumeNum>4){
		volumeNum=4;
	}
		
	document.getElementById('muteBtn').src = "images/controls/volume_"+volumeNum+".gif";	
}

function UpdateSlider()
{
	intPos = PlayerObj.controls.currentPosition;
	intLength = PlayerObj.currentMedia.duration;
	intPercent = Math.round((intPos * 100) / intLength);

	SetSlider(intPercent);			
}

// Hopper til et bestemt sted i medie filen.
function SliderPosition(intPosition)
{
	intLength = PlayerObj.currentMedia.duration;
	intPosition = Math.round(intLength * intPosition / 100);
	PlayerObj.controls.currentPosition = intPosition;
	//PlayerObj.controls.Play();
}

function SecToMMSSFF(SecIn)
{
	var HH,MM,SS,FF;
	if (SecIn > 0) 
	{
		HH = Math.floor(SecIn/3600);
		MM = Math.floor((SecIn - HH*3600)/60);
		SS = Math.floor((SecIn - HH*3600)-(MM*60));
		FF = Math.round((SecIn - MM*60 - HH*3600 - SS)/0.04);
		if (FF > 24) { FF = 0;SS+=1;}
		
	} else
	{
		HH=0;MM=0;SS=0;FF=0;
	}
	if (HH < 10) { HH = '0' + HH;}
	if (MM < 10) { MM = '0' + MM;}
	if (SS < 10) { SS = '0' + SS;}
	if (FF < 10) { FF = '0' + FF;}
	//return (HH+':'+MM+':'+SS+':'+FF);
	return (MM+':'+SS);
}


function MMSSFFToFrames(strTimeCode)
{
	
	var intFrames = 0;
	var arrTime;
	arrTime = strTimeCode.split(":");
	intFrames = parseFloat(arrTime)  * 90000;
	intFrames = parseFloat(intFrames) + (parseFloat(arrTime[1]) * 1500);
	intFrames = intFrames + (parseFloat(arrTime[2]) * 25);
	intFrames = intFrames + parseFloat(arrTime[3]);
	return intFrames;	
}

function MMSSFFToSec(MMSSFF)
{
	var h = parseFloat(MMSSFF.substring(0,2)); 
	var m = parseFloat(MMSSFF.substring(3,5)); 
	var s = parseFloat(MMSSFF.substring(6,8)); 
	var f = parseFloat(MMSSFF.substring(9,11)); 


	var res=(h*3600)+(m*60)+s+f/25;
	return res;
	//return replace(res+'',".",",");
}

