/* Copyright Innomotion 2005*/
var firstOpenFlag = true;
var menuPathContent ='';
var currentTime =0;
var followSlides = true;
var currentItem;
var presentationsScroll=0;
function getElement(n, d) { // original: MM_findObj v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=getElement(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function DOPlayer(){
	//määritellään DOmenu-luokka
	this.items = new Array();
	
	this.addItem = addItem;
	this.setSlide = setSlide;
	this.setSpeaker = setSpeaker;
	this.build = build;
	if(this.items.length){
			currentItem = this.items[this.items.length];	
		this.addShow = currentItem.addShow;
	}
}
function addItem(){
	//menu-kohdan lisäys
	if(arguments[0].toString().indexOf("[object Object]") != -1) {
		this.items[this.items.length] = arguments[0];
	} else {
		this.items[this.items.length] = new DOMenuItem(arguments[0], arguments[1], arguments[2], arguments[3]);
		//alert(this.items[this.items.length-1].topic);
		return(this.items[this.items.length-1])
	}
}
function setDateVal(dateval){
	this.date = dateval;
}
function addShow(){
	//menu-kohdan lisäys
	if(arguments[0].toString().indexOf("[object Object]") != -1) {
		this.shows[this.shows.length] = arguments[0];
	} else {
		this.shows[this.shows.length] = new DOShow(arguments[0], arguments[1], arguments[2],arguments[3]);
	}
	return(this.shows[this.shows.length-1])
}

function DOMenuItem(topic,description,url,type){
	//menukohdan määrittely
	this.date = null;
	this.status = 'ondemand';
	this.topic = topic ? topic : 'ei otsikkotietoa';
	this.description = description!='undefined' ? description : '';
	this.url = url ? url : "";
	this.type = type;
	this.number = DOnumber++;
	this.shows = new Array();
	this.addShow = addShow;
	this.speaker= '';
	this.setDateVal = setDateVal;
	this.setStatus = setStatus;
	DOLastItem = this;
}
function DOShow(topic,speaker,description,slides){
	var slideChangeTimes = new Array();
	var slideChangeNumbers = new Array();
	this.topic = topic ? topic : '';
	this.description = description;
	this.speaker = speaker;
	this.slides = slides ? slides : 0;
	this.addSlideTimes = addSlideTimes;
	this.addSlideNumbers = addSlideNumbers;
	this.checkForSlideChange = checkForSlideChange;
}

function checkForSlideChange(newtime){
	var found=-1;
	var temp = null;
	var s = 0;
newtime=parseInt(newtime);
if(newtime==currentTime) return;
else currentTime = newtime;
for(i=0;(i<currentShow.slideChangeTimes.length);i++)
	{
	vals=currentShow.slideChangeTimes[i].split(":");
	if(vals[0]&&vals[0]>0)
			{
			 s=(parseInt(vals[0])*60+parseInt(vals[1]));
			}
	else
		 s=parseInt(vals[0]);
	if(newtime>=s) found=i;
	}
if(found!=-1){
	var temp=currentShow.slideChangeNumbers[found];
	//temp=trim(temp);
	if(currentSlide!=temp) setSlide(temp);
	}
}

function addSlideTimes(){
this.slideChangeTimes = arguments;	
}
function addSlideNumbers(){
this.slideChangeNumbers = arguments;	
}
function build(area,show){
//rakentaa player-sivun dynaamisesti
currentItem = this.items[area-1];
alue = area;
if(useshow)
if(show==useshow && firstOpenFlag==false)return(0);
useshow = esitys = show;
currentSlide = 1;
if(currentItem.shows) currentShow = currentItem.shows[show-1];
else {
	currentShow = null;
}
var output ='';
if(currentShow=='undefined') currentShow = null;
//menupolku
target = getElement('menupath');
if(target){
	if(firstOpenFlag) menuPathContent = target.innerHTML;
	target.innerHTML = menuPathContent+currentItem.topic+'<br>'+currentItem.date;
	}

//esityksen nimi 

if(getElement('playerHeader')){
	if(currentShow && currentShow!='undefined')
	getElement('playerHeader').innerHTML=currentShow.topic;
	else getElement('playerHeader').innerHTML=currentItem.topic;
	}
//PDF
if(getElement('openPDF')) getElement('openPDF').href='presentation_images/'+area+'/'+show+'/Slides.pdf';
setSlide(1);
//rakennetaan player-alue
if(currentItem.status!='live' || firstOpenFlag) loadPlayerElement();
//asetetaan layoutiin pvm
if(getElement('datefield') && currentItem.date)
getElement('datefield').innerHTML = currentItem.date;
//rakennetaan ohjelma
if(firstOpenFlag) {
		if(getElement('presentations'))
			target = getElement('presentations').src='presentations.html?alue='+alue+'&esitys='+esitys;
	}

if(getElement('slides'))
	getElement('slides').src='slides.html?alue='+area+'&esitys='+show;

firstOpenFlag = false;
}

function loadPlayerElement(){
var mediapath;
	target = getElement('player');
if(currentItem.status=='live') mediapath = livePolku;
else mediapath = mediaPolku + esitys + '.wmv';
output='<object classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" type="application/x-oleobject" width="533" border="0" height="371" hspace="0" vspace="0" standby="Loading Microsoft® Windows® Media Player components..." id="MediaPlayer">'+
'        <param name="FileName" value="'+mediapath+'">'+
'        <param name="AutoStart" value="true">'+
'        <param name="AutoRewind" value="true">'+
'        <param name="Loop" value="false">'+
'        <param name="TransparentAtStart" value="true">'+
'        <param name="AnimationatStart" value="false">'+
'        <param name="ShowControls" value="true">'+
'        <param name="ShowGotoBar" value="false">'+
'        <param name="ShowDisplay" value="false">'+
'        <param name="ShowAudioControls" value="true">'+
'        <param name="autoSize" value="false">'+
'        <param name="uiMode" value="mini">'+
'        <param name="displaySize" value="0">'+
'        <param name="ShowStatusBar" value="true">'+
'        <param name="ShowTracker" value="true">'+
'        <param name="ShowPositionControls" value="false">'+
'        <embed type="application/x-mplayer2" id="MediaPlayer"'+
'	 pluginspage="http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/"'+
'	 src="'+mediapath+'"'+
'	 height=371'+
'	 width=533'+
'	 hspace=0'+
'	 vspace=0'+
'	 border=0'+
'	 autostart=1'+
'	 transparentatstart=0'+
'	 animationstart=1'+
'	 showcontrols=1'+
'	 showstatusbar=1'+
'	 showtracker=1'+
'	 showpositioncontrols=0'+
'	 showaudiocontrols=1'+
'	 showdisplay=0'+
'	 uimode=mini'+
' autosize=0'+
'	 displaysize=0> </embed>'+
'      </object>';

if(target)
	target.innerHTML=output;
	if(getElement('MediaPlayer'))
		{
		getElement('MediaPlayer').InvokeURLs=0;
		getElement('MediaPlayer').URL=mediapath;
		if(!navigator.userAgent.indexOf("IE") == -1)
			getElement('MediaPlayer').Open(mediapath);
		}


}
function openPresentation(pres){
	if(currentItem.status=='live') return false;
	else
juuri.build(alue,pres);
}

function setSpeaker(speaker){
	//Alias openPresentationille:: bstrParams käyttää
openPresentation(speaker);
}
function openSlide(){
if(currentSlide) window.open('slides.html?alue='+alue+'&esitys='+useshow+'&slide='+currentSlide+'&zoom=true','Suurennos','directories=0,height=540,width=720,resizable=no,scrollbars=no,location=no,status=no,toolbar=no,titlebar=no',true);
}
function setSlide(slideno){
	if(slideno==1 || currentItem.status=='live'){
		if(getElement('slidePreviousButton'))
			getElement('slidePreviousButton').disabled=true;
		}
	else if(getElement('slidePreviousButton'))
		getElement('slidePreviousButton').disabled=false;
	if(slideno>=currentShow.slides || currentItem.status=='live')
		if(getElement('slideNextButton'))
			getElement('slideNextButton').disabled=true;
	else if(getElement('slideNextButton'))
		getElement('slideNextButton').disabled=false;
	if(followSlides==true)
		switch(slideno)
			{
			default:
				if(getElement('slides'))
					getElement('slides').src='slides.html?alue='+alue+'&esitys='+useshow+'&slide='+slideno;
				break;
			}
	if(getElement('slideIndicator')) 
		getElement('slideIndicator').innerHTML=slideno+'/'+currentShow.slides;
	currentSlide = slideno;
}
function slidePrevious(){
	if(currentSlide>1 && getElement('slidePreviousButton').disabled==false) setSlide(--currentSlide);
}
function slideNext(){
	if(currentSlide<currentShow.slides&& getElement('slideNextButton').disabled==false) setSlide(++currentSlide);	
}

function ShowHideMaterial()
{
var slideObject, linkObject;

if(document.getElementById("loadlink"))
			linkObject=document.getElementById("loadlink");
	else if(document.all.loadlink)
		linkObject=document.all.loadlink;
if(followSlides==true)
	{
	getElement('slides').src='material'+alue+'.html';
	getElement('slides').scrolling='yes';
	
	followSlides=false;
	if(linkObject)linkObject.innerHTML='Diat';
	}
else
	{
	followSlides=true;
	if(linkObject)linkObject.innerHTML='Ladattava<br>materiaali';
	getElement('slides').scrolling='no';
	
	setSlide(currentSlide);
	}
}