var timerId;		
// defaultStatus="Webcam en directe"
var error;
var ipcam1="llimiana.dyndns.tv:81";
var ipcam2="llimiana.dyndns.tv:82";

var tamanyX= 320;
var tamanyY= 260;
var ol_fgcolor="#ffffff";
var ol_bgcolor="#99CC66";
var appletWebcam= false;
var rutaImg;
var elapse= 30;
var cont_laps= 0;
var imgLoaded= false;
var horaPeticio= "";
var numcamsel= 1;

function getObject(id) {
   var object = null;
   if (document.layers) {   
    object = document.layers[id];
   } else if (document.all) {
    object = document.all[id];
   } else if (document.getElementById) {
    object = document.getElementById(id);
   }
   return object;
  }


function webcamError(evt)
{
	// alert('webcam error '+ numcamsel+', target='+evt.target);
	error=1;
	getObject('webcam').onload= null;
	getObject('webcam').onerror= null;
	getObject('webcam').src= "imatges/webcam_error.jpg";
	status= "ERROR en la webcam, no funciona";
}

function webcamLoad(evt)
{
	error=0;
	imgLoaded= true;
	// timerId = setTimeout("CarregarPeriod()", 1000)
}

function carregarWebcam(id)
{
	if(timerId) clearTimeout(timerId);
	numcamsel= id;
	//document.images.webcam.src="webcamload.jpg"
	error=0;
	appletWebcam= false;
	var elem= getObject("webcam_loc");
	elem.innerHTML= '<img alt="" src="imatges/webcamload.jpg" id="webcam" width="'+tamanyX+'" height="'+tamanyY+'" />'
	document.images.webcam.onerror= webcamError;
	document.images.webcam.onload= webcamLoad;
	if(id==1) {
		document.images.cam1b.src= "imatges/webcamlink_on.gif"
		document.images.cam1a.src= "imatges/webcamlink.gif"
		document.images.cam2a.src= "imatges/webcamlink.gif"
		document.images.cam2b.src= "imatges/webcamlink.gif"
		rutaImg= "http://"+ipcam1+"/jpg/foto.jpg"
	}
	if(id==2) {
		document.images.cam2b.src= "imatges/webcamlink_on.gif"
		document.images.cam2a.src= "imatges/webcamlink.gif"
		document.images.cam1b.src= "imatges/webcamlink.gif"
		document.images.cam1a.src= "imatges/webcamlink.gif"
		rutaImg= "http://"+ipcam2+"/jpg/foto.jpg"
	}
	
	//document.images.webcam.width= tamanyX
	//document.images.webcam.heigth= tamanyY	

	cont_laps= elapse-1;
	imgLoaded= true;
	document.images.webcam.src= rutaImg
	CarregarPeriod();
}

function CarregarPeriod()
{
	var str=""
	cont_laps++
	
	if(imgLoaded) str="<font color='green'>ok</font>"; else str="transf...";
	if(error==1) 
	{
		str="<font color='red'>error</font>"
		cont_laps= 1
		error= 0
		imgLoaded= false;
		mostrar(" "+ horaPeticio + " " + "<font color='yellow'>"+(elapse-cont_laps) + "</font> "+ str)
		return
	}
	else if(cont_laps>=elapse)
	{
	 	if(imgLoaded)
	 	{
			imgLoaded= false;
			reloadImage()
		}
		cont_laps= 1
	}
	mostrar(" "+ horaPeticio + " " + "<font color='yellow'>"+(elapse-cont_laps) + "</font> "+ str)
	timerId = setTimeout("CarregarPeriod()", 1000)
}

function reloadImage()
{
	uniq = new Date();
	uniq = "?"+uniq.getTime();
	newImage = document.images.webcam.src;
	index = newImage.indexOf("?", 0);
	if (index > 0)
	{
		newImage = newImage.substr(0, index);
	}
	horaPeticio= new Date;
	document.images.webcam.src = newImage+uniq;
}

function carregarWebcamJava(id)
{
	if(timerId) clearTimeout(timerId);
	numcamsel= id;
 	appletWebcam= true;
	var elem= getObject("status");
 	elem.innerHTML=""
	if(id==1) { ipcam= ipcam1; port="81"; } else { ipcam= ipcam2; port="82";}

	var elem2= getObject("webcam_loc");
	elem2.innerHTML='<APPLET code="LoadJpg.class" ARCHIVE="loadjpg.jar" name="NCApplet" WIDTH="'+tamanyX+'" height="'+tamanyY+'" codebase="http://'+ipcam+'" VIEWASTEXT>'+
    '<PARAM NAME="hashingkey" VALUE="0">'+
	'<PARAM NAME="behindfirewall" VALUE="true">'+
	'<PARAM NAME="imagetransferport" VALUE="'+port+'">'+
	'<PARAM NAME="FPS" VALUE="5">'+
	'<PARAM NAME="timestamp" VALUE="true">'+
	'<PARAM NAME="id" VALUE="guest">'+
	'<PARAM NAME="password" VALUE="guest">'+
	'<PARAM NAME="ver_flip" VALUE="0">'+
	'<PARAM NAME="hor_flip" VALUE="0">'+
	'</APPLET>'
	if(id==1) {
		document.images.cam2a.src= "imatges/webcamlink.gif"
		document.images.cam2b.src= "imatges/webcamlink.gif"
		document.images.cam1a.src= "imatges/webcamlink_on.gif"
		document.images.cam1b.src= "imatges/webcamlink.gif"
	}
	if(id==2) {
		document.images.cam1a.src= "imatges/webcamlink.gif"
		document.images.cam1b.src= "imatges/webcamlink.gif"
		document.images.cam2a.src= "imatges/webcamlink_on.gif"
		document.images.cam2b.src= "imatges/webcamlink.gif"
	}
}

/*
function CarregarWebcamJava2()
{
	if(timerId) clearTimeout(timerId);
	numcamsel= 2;
 	appletWebcam= true;
 	getObject("status").innerHTML=""
    getObject("webcam_loc").innerHTML='<APPLET code="LoadJpg.class" ARCHIVE="loadjpg.jar" name="NCApplet" WIDTH="'+tamanyX+'" height="'+tamanyY+'" codebase="http://'+ipcam2+'" VIEWASTEXT>'+
    '<PARAM NAME="hashingkey" VALUE="0">'+
	'<PARAM NAME="behindfirewall" VALUE="true">'+
	'<PARAM NAME="imagetransferport" VALUE="82">'+
	'<PARAM NAME="FPS" VALUE="5">'+
	'<PARAM NAME="timestamp" VALUE="true">'+
	'<PARAM NAME="id" VALUE="guest">'+
	'<PARAM NAME="password" VALUE="guest">'+
	'<PARAM NAME="ver_flip" VALUE="0">'+
	'<PARAM NAME="hor_flip" VALUE="0">'+
	'</APPLET>'
	document.images.cam1a.src= "imatges/webcamlink.gif"
	document.images.cam1b.src= "imatges/webcamlink.gif"
	document.images.cam2a.src= "imatges/webcamlink_on.gif"
	document.images.cam2b.src= "imatges/webcamlink.gif"
}
*/

function clic_normal()
{
	tamanyX= 360
	tamanyY= 270
	if(numcamsel==1)
	{
		if(appletWebcam) carregarWebcamJava(1);
		else carregarWebcam(1);
	}
	else
	{
		if(appletWebcam) carregarWebcamJava(2);
		else carregarWebcam(2);
	}
}

function clic_gran()
{
	tamanyX= 480
	tamanyY= 360
	if(numcamsel==1)
	{
		if(appletWebcam) carregarWebcamJava(1);
		else carregarWebcam(1);
	} else
	{
		if(appletWebcam) carregarWebcamJava(2);
		else carregarWebcam(2);
	}
}

function clic_expandit()
{
	tamanyX= 640
	tamanyY= 480
	if(numcamsel==1)
	{
		if(appletWebcam) carregarWebcamJava(1);
		else carregarWebcam(1);
	} else
	{
		if(appletWebcam) carregarWebcamJava(2);
		else carregarWebcam(2);
	}
}

function mostrar(str)
{
	getObject("status").innerHTML=str
}

function clic_vel30()
{
	elapse= 30
	cont_laps= 0
}

function clic_vel10()
{
	elapse= 10
	cont_laps= 0
}

function clic_vel3()
{
	elapse= 3
	cont_laps= 0
}
