// ------------------------------------------------ //

// Copyright (c), 2005, Innovagency

// Javascrip source code

// ------------------------------------------------ //



// ------------------------------------------------ //

// COMBO-BOX EXPANDER

// ------------------------------------------------ //

function retractCombo(sFormName, sDivID, sSelectInDivID, sSelectID) 

{

	// mostra select por trás			

	//window.document.forms[sFormName].elements[sSelectID].style.visibility = 'visible';

	

	window.document.forms[sFormName].elements[sSelectInDivID].style.visibility = 'hidden';

	document.getElementById(sDivID).style.visibility = 'hidden';

	window.document.forms[sFormName].elements[sSelectID].selectedIndex = window.document.forms[sFormName].elements[sSelectInDivID].selectedIndex;		

}



/* Código para tratamento da visibilidade das dropdowns e posicionamento das divs [LR] */

function findPosX(obj)

{

var curleft = 0;

if (obj.offsetParent)

{

while (obj.offsetParent)

{

curleft += obj.offsetLeft

obj = obj.offsetParent;

}

}

else if (obj.x)

curleft += obj.x;

return curleft;

}



function findPosY(obj)

{

var curtop = 0;

if (obj.offsetParent)

{

while (obj.offsetParent)

{

curtop += obj.offsetTop

obj = obj.offsetParent;

}

}

else if (obj.y)

curtop += obj.y;

return curtop;

}



function expandLayer(sFormName, sDivID, sSelectInDivID, sSelectID)

{				



	// largura do select dentro div

	window.document.forms[sFormName].elements[sSelectInDivID].style.width = 155;



	// altura do select dentro div			

	if(window.document.forms[sFormName].elements[sSelectID].options.length <= 2)

		window.document.forms[sFormName].elements[sSelectInDivID].style.height = (window.document.forms[sFormName].elements[sSelectID].options.length) * (window.document.forms[sFormName].elements[sSelectID].clientHeight - 2.7);

	else

	{		

		if(window.document.forms[sFormName].elements[sSelectID].options.length <= 5)

			window.document.forms[sFormName].elements[sSelectInDivID].style.height = (window.document.forms[sFormName].elements[sSelectID].options.length - 1) * (window.document.forms[sFormName].elements[sSelectID].clientHeight - 1);

		else

			window.document.forms[sFormName].elements[sSelectInDivID].style.height = 4 * (window.document.forms[sFormName].elements[sSelectID].clientHeight - 1);		

	}

	

	// diferença entre tamanho do Select e tamanho da div

	var DifTamanho = window.document.forms[sFormName].elements[sSelectInDivID].offsetWidth - window.document.forms[sFormName].elements[sSelectID].offsetWidth;			

			

	// posicionamento div esquerda

	document.getElementById(sDivID).style.left = (findPosX(window.document.forms[sFormName].elements[sSelectID]) - DifTamanho)  + 'px';			

		

	// posicionamento div topo

	if(findPosY(window.document.forms[sFormName].elements[sSelectID]) < findPosY(document.getElementById(sDivID)))

	{

		document.getElementById(sDivID).style.top = findPosY(window.document.forms[sFormName].elements[sSelectID]) + 'px';

	}

		

	window.document.forms[sFormName].elements[sSelectInDivID].style.visibility = 'visible';					

	window.document.forms[sFormName].elements[sSelectInDivID].selectedIndex = window.document.forms[sFormName].elements[sSelectID].selectedIndex;

	document.getElementById(sDivID).style.visibility = 'visible';

	window.document.forms[sFormName].elements[sSelectInDivID].focus();				

}



/* Código para efectuar submits através do Enter em múltiplos forms [LR]  */



// variáveis

var context = "";

var buttonSubmit;



function doSubmit()

{

  var button;

  if (context == 'basic') {

    button = document.getElementById("BasicSearchButton");

  }

  else if (context == "advanced") {

    button = document.getElementById("AdvancedSearchButton");

  }

  if (button) {

    button.click();

  }

}

function setContext(ctx)

{

	buttonSubmit = ctx;

	//context = ctx;	

}

// capta teclas

function handleEvent(ObjTeste)

{					

	if (!e)

		{

         var e = window.event;

        }

	if (e.keyCode == 13)

	{	

		if(buttonSubmit)

		{

			//alert(buttonSubmit.id);

			//alert(ObjTeste.id);

		



			if(ObjTeste.id == buttonSubmit.id)

			{

				buttonSubmit.Click(); 

				return false;

			}

		}

	}

	return true;

}

// inserir na página em questão -> document.onkeydown=handleEvent;



// --------------------------------------------------------------------------------- //

// CHANGE TABLE/TR/TD BGCOLOR & FONTCOLOR

// --------------------------------------------------------------------------------- //

var sTAGOlder = '';

var sValueOlder = '';



NS = (document.layers && !document.all)?1:0

NS6 = (document.getElementById && !document.all)?1:0



function IN_changeTagTxtColor(sTagColorId_IN, sBgColor_IN, sTxtColorId_IN, sTxtColor_IN)

{	

	if(!NS) 

	{		

		if(sTAGOlder!=sTagColorId_IN) 

		{	

		

			if(NS6)						

			{			

				document.getElementById('tag'+sTagColorId_IN).style.backgroundColor = sBgColor_IN;

				document.getElementById('span'+sTxtColorId_IN).style.color = sTxtColor_IN;				

			}

			else

			{					

				document.all('tag'+sTagColorId_IN).style.backgroundColor = sBgColor_IN;

				document.all('span'+sTxtColorId_IN).style.color = sTxtColor_IN;

			}

		}

	}

}





// --------------------------------------------------------------------------------- //

// ROLLOVER's DE IMAGENS

// --------------------------------------------------------------------------------- //

document.IN_swapArray=new Array(); // para o setSource

document.imageHandler=new Array(); // para o preload



function IN_getImage(oImage_IN, doc) { //v1.0

	var i,tImage;if(!doc) doc=document;

	if(!(tImage=doc.images[oImage_IN])&&!(doc.all)&&doc.getElementById) tImage=doc.getElementById[oImage_IN];

	if(!(tImage=doc.images[oImage_IN])&&doc.all) tImage=doc.all[oImage_IN];

	for(i=0;!tImage&&doc.images&&i<doc.layers.length;i++) tImage=IN_getImage(oImage_IN,doc.layers[i].document);return tImage;

}



function IN_setImageSource(oImage_IN, strNewSrc) { //v1.0

	tImage=IN_getImage(oImage_IN);if(tImage){if (document.IN_swapArray[oImage_IN]==null||document.IN_swapArray[oImage_IN]==undefined) {document.IN_swapArray[oImage_IN]=tImage.src;}tImage.src=strNewSrc;}

}



function IN_setImageSource2(oImage_IN, l) { //v1.0

	strNewSrc=document.imageHandler[l].src;

	tImage=IN_getImage(oImage_IN);if(tImage){if (document.IN_swapArray[oImage_IN]==null||document.IN_swapArray[oImage_IN]==undefined) {document.IN_swapArray[oImage_IN]=tImage.src;}tImage.src=strNewSrc;}

}



function IN_setImageSourceOriginal(oImage_IN) { //v1.0

	tImage=IN_getImage(oImage_IN);if(tImage){if (document.IN_swapArray[oImage_IN]==null||document.IN_swapArray[oImage_IN]==undefined) {document.IN_swapArray[oImage_IN]=tImage.src;}tImage.src=document.IN_swapArray[oImage_IN];}

}



function IN_preloadImages() {

	for(i=0;i<IN_preloadImages.arguments.length;i++) {

		document.imageHandler[IN_preloadImages.arguments[i]]=new Image();

		document.imageHandler[IN_preloadImages.arguments[i]].src=IN_preloadImages.arguments[i];

	}

}

//

function bopopitup(url)

{

	newwindow=window.open(url,'BackOffice','height=600,width=700,scrollbars,resizable');



	if (window.focus) {newwindow.focus()}	



	//return false;			

}

function mappopitup(url)

{

	newwindow=window.open(url,'Mapa','width=1024,height=768,menubar=0,statusbar=0,resize=0,scrollbars=0');



	if (window.focus) {newwindow.focus()}	

}

// --------------------------------------------------------------------------------- //

// ListTable (JQuery)

// --------------------------------------------------------------------------------- //
$(document).ready(function(){
	$("#listTable").ajaxStart(function(){
		$("#listTable").empty();
		$("#listTable").addClass("loading");
	});

	$("#listTable").ajaxStop(function(){
		$("#listTable").removeClass("loading");
	});
});

function camposGolfe_listTable(field, order, pag){   
	//$(document).ready(function(){
	$.get("/commons/html/vivaoalgarve/golfe_campos.listTable.php?field="+field+"&order="+order+"&pag="+pag, 
		  function (data){$("#listTable").html(data);});
	//});
}

function contactosUteis_listTable(field, order, pag, id){   
	//$(document).ready(function(){
	$.get("/commons/html/descubraregiao/contactos_uteis.listTable.php?id="+id+"&field="+field+"&order="+order+"&pag="+pag, 
		  function (data){$("#listTable").html(data);});
	//});
}

function guiaEquipamentos_listTable(field, order, pag, id){   
	//$(document).ready(function(){
	$.get("/commons/html/guiaservicos/pesquisa_equipamentos.listTable.php?id="+id+"&field="+field+"&order="+order+"&pag="+pag, 
		  function (data){$("#listTable").html(data);});
	//});
}

function paginateIt(pag){
	$.get("/commons/html/sugestoes/sugestoes_vivaoalgarve.listTable.php?pag="+pag, 
		  function (data){$("#listTable").html(data);});
}

function paginateIt2(pag){
	$.get("/commons/html/produtos/produtos.list.php?pag="+pag, 
		  function (data){$("#listTable").html(data);});
}