// JavaScript Document

var imgs=new Array();
var imgCount=0;

var kiosk=null;
var timerID;
var seconds=null;
var secondsElapsed=0;
var currentImage=0;
var timerRunning=false;
var imgBase=null;

function KIMG(){
	this.img=new Image();
	this.url=null;
	this.seconds=15;
}

function SetImageBase(url){
	imgBase=url;
	
	if(imgBase[imgBase.length-1]!="/")
		imgBase+="/";
}
/*
function RegisterImages(){
	for(var i=0;i<arguments.length;i++){
		imgs[i]=new Image();
		imgs[i].src=imgBase + arguments[i];
	}
	imgCount=arguments.length;
}
*/
function RegisterKIMG(fileName,url,displaySeconds){
	var k=new KIMG();
	k.img.src=imgBase+fileName;
	k.url=url
	if(displaySeconds!=null)
		k.seconds=displaySeconds;
	imgs[imgCount++]=k;
}

function RegisterKiosk(DivName){
	kiosk=getDOMlayerToShow(DivName);
}

function StartKiosk(delay){
	if(timerRunning)
		return;
		
	seconds=delay;
	secondsElapsed=3;
	timerRunning=true;
	timerID = setTimeout("UpdateTimer()", 1000);	
}

function StopKiosk(){
	if(timerRunning)
			clearTimeout(timerID);
	timerRunning = false;
}

function UpdateTimer(){
	if(timerID) {
		clearTimeout(timerID);
	}
	
	secondsElapsed++;
	if(!(seconds-secondsElapsed > 0)){
		ChangePicture()
		secondsElapsed=0;
	}
		
	timerID = setTimeout("UpdateTimer()", 1000);
}

function ChangePicture(){
	currentImage=GetRandomPicIdx();
	kiosk.src=imgs[currentImage].img.src;
	seconds=imgs[currentImage].seconds;
	if(kiosk.parentElement!=null)
		kiosk.parentElement.href=imgs[currentImage].url;
	else
		kiosk.parentNode.href=imgs[currentImage].url;
}

function GetRandomPicIdx(){
		return Math.floor(Math.random()*imgCount);
}

function getDOMlayerToShow(layerToShow) {
  if(document.layers) {
    return document.layers[layerToShow];
  } 
  else if(document.all && !document.getElementById) {
     return document.all[layerToShow];
  } 
  else if(document.getElementById) {
     return document.getElementById(layerToShow);
  }
   else {
     return null;
  }
}