/* 
	© copyright 2006 webuild solutions | www.webuild.pt
*/

// StatusMsg ++++++++++++++++++++++++++++++++++++++++++++++++++++
function window_status(title) { window.onLoad = (window.defaultStatus = title) }

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //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=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

// trocaCss ++++++++++++++++++++++++++++++++++++++++++++++++++++
function thumbsFX(alvo,estilo){
	alvo.className = estilo;	
}

// fx das caixas de texto +++++++++++++++++++++++++++++++++++++++
function caixaFx(alvo,texto) {	//Box Pesquisa
	if (alvo.value==texto){		
		alvo.value="";
	} else if(alvo.value==""){
		alvo.value=texto;
	}
}

function isNumeric(sText) {
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;

	for (i=0; i < sText.length && IsNumber == true; i++) {
		Char = sText.charAt(i);
		if (ValidChars.indexOf(Char) == -1) {
			IsNumber = false;
		}
	} 
	return IsNumber;
}

//fx caixa de pesquisa //////////////////////////////////////////////////
//Versão que deduz a linguagem activa, poderá se fazer uma função que recebe 
//a linguagem como parametro, mas esta funciona sempre. 
//NOTA: Têm de coincidir com os nomes no webconfig, que por sua vez têm de coincidir com 
//os nome das classes do backoffice
var PESQUISA_FR = "Recherche";
var PESQUISA_PT = "Pesquisar";
var PESQUISA_IT = "Ricerca";
var PESQUISA_ES = "Busqueda";
var PESQUISA_ES_VAL = "Busqueda";

var pesquisa_lang = "FR";	//variavel de controlo interna
function pesquisa(x,y,z) {	//Box Pesquisa
	if (x.value==PESQUISA_FR || x.value==PESQUISA_PT || x.value==PESQUISA_IT || x.value==PESQUISA_ES || x.value==PESQUISA_ES_VAL){
		//Desliga e guarda o valor para calcular o liga
		switch (x.value){
			case PESQUISA_FR: 
			pesquisa_lang = "FR";
			break;
			case PESQUISA_PT: 
			pesquisa_lang = "PT";
			break;
			case PESQUISA_IT: 
			pesquisa_lang = "IT";
			break;
			case PESQUISA_ES: 
			pesquisa_lang = "ES";
			break;
			case PESQUISA_ES_VAL: 
			pesquisa_lang = "ES_VAL";
			break;
		}		
		x.value="";
	} else {
		if (x.value==""){
			//Liga
			switch (pesquisa_lang){
				case "FR": 
				x.value = PESQUISA_FR;
				break;
				case "PT": 
				x.value = PESQUISA_PT;
				break;
				case "IT": 
				x.value = PESQUISA_IT;
				break;
				case "ES": 
				x.value = PESQUISA_ES;
				break;
				case "ES_VAL": 
				x.value = PESQUISA_ES_VAL;
				break;
			}
		}
	}
	//document.getElementById('boxPesquisa').style.borderColor = y; //fundo
	//x.style.color = z;			//letras
}

function resetButton(){
	document.forms[0].reset();
	window.scrollTo(0,0);
}

//maximar browser window
function maxWindow(){
	window.moveTo(0,0);
	if (document.all){
		top.window.resizeTo(screen.availWidth,screen.availHeight);
	}
	else if (document.layers||document.getElementById){
		if (top.window.outerHeight<screen.availHeight||top.window.outerWidth<screen.availWidth){
			top.window.outerHeight = screen.availHeight;
			top.window.outerWidth = screen.availWidth;
		}
	}
}

//crossbrowser target
function getFlashMovie(movieName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}

// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

/*	2008.10.29
	rtrim(string) e ltrim(string) -> string
		Remove os espaços que existam à esquerda ou à direita da string.
		Caso não indicado o segundo parâmetro, serão também considerados:

		* " " (ASCII 32 (0x20)), espaço.
		* "\t" (ASCII 9 (0x09)), tab.
		* "\n" (ASCII 10 (0x0A)), nova linha (line feed).
		* "\r" (ASCII 13 (0x0D)), tecla enter (carriage return).
		* "\0" (ASCII 0 (0x00)), nulos.
		* "\x0B" (ASCII 11 (0x0B)), tab vertical.

	trim(string) -> string
		Remove espaços existentes à esquerda e à direita da string
*/
function trim(str, chars) { return ltrim(rtrim(str, chars), chars); }

function ltrim(str, chars) {
 chars = chars || "\\s";
 return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
 chars = chars || "\\s";
 return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

/*	2008.10.09
	wbBoxValidaPesquisa(obj_elemento_a_validar) -> boolean
		Verifica se o inserido na caixa de diálogo está preenchido e se o o seu conteúdo não coincide
		com o default existente aquando entrada inicial.
*/
function wbBoxValidaPesquisa(obj, texto, errorMsg) {
 if (trim(obj.value).length == 0 || obj.value == texto) {
	alert(errorMsg);
	obj.value = texto;
	return false;
 }

 return true;
}

function clickButton(e, buttonid) {
 var evt = e ? e : window.event;
 var bt = document.getElementById(buttonid);

 if (bt) { 
    if (evt.keyCode == 13) { 
       bt.click(); 
       return false; 
    } 
 } 
}

function resetButton() { document.forms[0].reset(); }
function OpenGaleriaWindow(url){ window.radopen(url, "windowPopUp"); }

function GetRadWindow(){
  var oWindow = null;
  if (window.radWindow) oWindow = window.radWindow; //Will work in Moz in all cases, including clasic dialog
  else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow;//IE (and Moz az well)
  return oWindow;
}