//////////////////GLOBALS///////////
var fieldFocus; // Usada para dar foco a um campo apÃ³s o mensagem ou ao carregar pagina.
var error = '';
var tipoMensagem = 1;

///////////////////////////////////
function detectBrowser()
{
	var browser=navigator.appName
	var b_version=navigator.appVersion
	var version=parseFloat(b_version)
	if (browser=="Netscape")
	  return 1;
	if (browser=="Microsoft Internet Explorer")
	  return 2;
}
function go(url)
{
	document.location = url;
}

function habilitaCampos()
{
	var slcts = document.getElementsByTagName("select");
	for(var i = 0; i < slcts.length; i++)
	{
		slcts[i].style.display = "block";
	}
}
function desabilitaCampos()
{
	var slcts = document.getElementsByTagName("select");
	for(var i = 0; i < slcts.length; i++)
	{
		slcts[i].style.display = "none";
	}
}
////////////// FOCO NO FORM ////////////////
function inFoco(obj)
{
	//obj.style.border = "1px solid #CAD7EA";
	return true;
}

function outFoco(obj)
{
	return true;
	//obj.style.border = "1px solid #CAD7EA";
}
/////////////// BOX ALERT /////////////////////
function closeAlert()
{
	document.getElementById('alert').style.display='none';
	document.getElementById('boxAlert').style.display='none';
	habilitaCampos();
	if(fieldFocus)
		document.getElementById(fieldFocus).focus();
}
function openAlert()
{
	if(tipoMensagem)
	{
		var message = '.:Erro ao enviar o formulário:.\n\n'+error;
		alert(message);
	}
	else
	{
		window.onscroll = function(event) { centralizaDiv(document.getElementById('boxAlert'), document.getElementById('alert')); };

		document.getElementById('alert').style.display='block';

		document.getElementById('boxAlert').style.display='block';

		centralizaDiv(document.getElementById('boxAlert'));
		centralizaDiv(document.getElementById('boxAlert'), document.getElementById('alert'));

		var message = '<h3>Erro ao enviar o formulário:</h3><ul class="fontnormal">'+error+'</ul><center><input type="button" onclick="closeAlert();" value="Ok" class="button"></center>';

		document.getElementById('alert').innerHTML = message ;
		desabilitaCampos();
	}
}
function sendMessage(message)
{
	window.onscroll = function(event) { centralizaDiv(document.getElementById('boxAlert'), document.getElementById('alert')); };

	document.getElementById('alert').style.display='block';
	document.getElementById('boxAlert').style.display='block';
	centralizaDiv(document.getElementById('boxAlert'));
	centralizaDiv(document.getElementById('boxAlert'), document.getElementById('alert'));

	document.getElementById('alert').innerHTML = message;
	desabilitaCampos();
}
function boxConfirm(url, id)
{
	sendMessage('<h3>Tem certeza que deseja excluir este registro?</h3><center><input type=\"button\" onclick=\"sendUrl(\''+url+'\', \''+id+'\')\" value=\"Ok\" class=\"button\">&nbsp;&nbsp;&nbsp;<input type=\"button\" onclick=\"closeAlert();\" value=\"Cancelar\" class=\"button\"></center>');

}
/////////////// VALIDACOES DE FORMULARIO ////////
function validateAsNull(campo, rotulo)
{
	if (!(/[^ ]/.test( document.getElementById(campo).value )))
	{
		 if(!error)
		 {
		 	fieldFocus = campo;
		 }
		 if(tipoMensagem)
		 {
			 error += 'O campo '+rotulo+' não pode ser vazio!\n';
		 }
		 else
		 {
		 	 error += '<li class="liErro">O campo <span style="color: #FACE15; font-weight: bold">'+rotulo+'</span> não pode ser vazio!</li>';
		 }


	}

	return true;
}
function validateAsNumeric(campo, rotulo)
{
	if (!(/^[0-9]+$/.test( document.getElementById(campo).value )) && (/[^ ]/.test( document.getElementById(campo).value )))
	{
		 if(!error)
		 {
		 	fieldFocus = campo;
		 }
		 if(tipoMensagem)
		 {
		 	error += 'Preencha o campo '+rotulo+' somente com números!\n';
		 }
		 else
		 {
		 	error += '<li class="liErro">Preencha o campo <span style="color: #FACE15; font-weight: bold">'+rotulo+'</span> somente com números!</li>';
		 }
	}

}
function validateAsMail(campo, rotulo)
{
	var emailExp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!(emailExp).test(document.getElementById(campo).value) && (/[^ ]/.test( document.getElementById(campo).value )))
	{
		if(!error)
		 {
		 	fieldFocus = campo;
		 }
		 if(tipoMensagem)
		 {
			 error += 'O campo '+rotulo+' não possui um e-mail válido!';
		 }
		 else
		 {
		 	 error += '<li class="liErro">O campo <span style="color: #FACE15; font-weight: bold">'+rotulo+'</span> não possui um e-mail válido!</li>';
		 }
	}
}
function validateAsDate(campo, rotulo)
{
	var dateExp = /(((0[1-9]|[12][0-9])\/(02))|((0[1-9]|[12][0-9]|(30))\/(0[4689]|(11)))|((0[1-9]|[12][0-9]|3[01])\/(0[13578]|(10)|(12))))\/[1-2][0-9]{3}/;
	if (!(dateExp).test(document.getElementById(campo).value) && (/[^ ]/.test( document.getElementById(campo).value )))
	{
		if(!error)
		 {
		 	fieldFocus = campo;
		 }
		 if(tipoMensagem)
		 {
		 	error += 'O campo '+rotulo+' não possui uma data válida!';
		 }
		 else
		 {
		 	error += '<li class="liErro">O campo <span style="color: #FACE15; font-weight: bold">'+rotulo+'</span> não possui uma data válida!</li>';
		 }
	}
}
/////////////////FORMATACÃƒO CAMPOS//////////////////////
function formataData(campo, e)
{

	if( typeof window.event != "undefined")
	{
		if (window.event.keyCode != 47)
		{
			if ((campo.value.length == 2) || (campo.value.length == 5))
			{
				campo.value += '/';
			}
		}
	}else
	{
		if (e.which != 47 && e.which != 45 && e.which != 46 && e.which != 8 && e.which != 32 && e.which != 13 && e.which != 0    )
		{
			if ((campo.value.length == 2) || (campo.value.length == 5))
			{
				campo.value += '/';
			}
		}
	}
}

function sendVal()
{
	if(arguments)
	{
		for (i = 0; i < arguments.length; i++)
		{
			arr = arguments[i];
			window.parent.document.getElementById(arr[0]).value = arr[1];
		}
	}
	window.parent.closeAlert();
}
function sendUrl(url, pars)
{
	var myAjax = new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: pars,
			onComplete: execUrl
		});
}

function execUrl(resp)
{
	document.body.innerHTML = resp.responseText;
	return true;
}


function addLinha(obj, id)
{
    var tbody = document.getElementById(id);
    var tr = document.createElement("tr");
    var td = document.createElement("td");

    tbody.appendChild(tr);
	tr.appendChild(td);

    td.innerHTML = obj.parentNode.innerHTML;
     inputs = td.childNodes;
    if(inputs)
    {
    	for (i = 0; i < inputs.length; i++)
		{
			if(inputs[i].type == "text")
				inputs[i].value = "";
		}
    }
    if (detectBrowser() == 2)
    	obj.setAttribute("onclick", function onclick(event) {removeLinha(this);});
    else
    	obj.setAttribute("onclick", "removeLinha(this)");

    obj.setAttribute("src", "images/icon_mail_apagar.gif");
}
function removeLinha(obj)
{
	obj.parentNode.parentNode.parentNode.removeChild(obj.parentNode.parentNode);
}

function centralizaDiv(expansivel, expansivel2)
{
	screenWidth = 0;
	screenHeight = 0;

	//expansivel = DOM_divs[i];
	largura = expansivel.offsetWidth;
	altura = expansivel.offsetHeight;
	if( typeof window.innerHeight == 'number' )
	{
		screenHeight = window.innerHeight;
		screenWidth = window.innerWidth;
	}
	else if( typeof document.body.offsetHeight == 'number' )
	{
		screenHeight = document.body.offsetHeight;
		screenWidth = document.body.offsetWidth;
	}
	else if( document.documentElement && typeof document.documentElement.clientWidth == 'number' )
	{
		screenHeight = document.documentElement.clientHeight;
		screenWidth = document.documentElement.clientWidth;
	}


	if( typeof window.pageXOffset == 'numeric' )
	{
		scrollY = window.pageYOffset;
		scrollX = window.pageXOffset;
	}
	else
	{
		scrollY = document.body.scrollTop;
		scrollX = document.body.scrollLeft;
	}

	expansivel.style.top = Math.round( ( screenHeight / 2 ) - ( altura / 2 ) ) + scrollY;
	expansivel.style.left = Math.round( ( screenWidth / 2 ) - ( largura / 2 ) ) + scrollX;

	if(expansivel2)
	{
		screenWidth = 0;
		screenHeight = 0;

		//expansivel2 = DOM_divs[i];
		largura = expansivel2.offsetWidth;
		altura = expansivel2.offsetHeight;
		if( typeof window.innerHeight == 'number' )
		{
			screenHeight = window.innerHeight;
			screenWidth = window.innerWidth;
		}
		else if( typeof document.body.offsetHeight == 'number' )
		{
			screenHeight = document.body.offsetHeight;
			screenWidth = document.body.offsetWidth;
		}
		else if( document.documentElement && typeof document.documentElement.clientWidth == 'number' )
		{
			screenHeight = document.documentElement.clientHeight;
			screenWidth = document.documentElement.clientWidth;
		}


		if( typeof window.pageXOffset == 'numeric' )
		{
			scrollY = window.pageYOffset;
			scrollX = window.pageXOffset;
		}
		else
		{
			scrollY = document.body.scrollTop;
			scrollX = document.body.scrollLeft;
		}

		expansivel2.style.top = Math.round( ( screenHeight / 2 ) - ( 300 / 2 ) ) + scrollY-100;
		expansivel2.style.left = Math.round( ( screenWidth / 2 ) - ( largura / 2 ) ) + scrollX;
	}
}

function setTipo(obj)
{
	valor = obj.value;

	var length = 1;
	document.getElementById('nm_tecnologia').options.length=0;
	if(valor == 1)
	{
		document.getElementById('nm_tecnologia').options[0]= new Option("pc-dos" , "1" ,false,false);
		document.getElementById('nm_tecnologia').options[1]= new Option("ms-windows" , "2" ,false,false);
		document.getElementById('nm_tecnologia').options[2]= new Option("macos" , "3" ,false,false);
		document.getElementById('nm_tecnologia').options[3]= new Option("unix" , "4" ,false,false);
		document.getElementById('nm_tecnologia').options[4]= new Option("multi-os" , "5" ,false,false);
		document.getElementById('nm_tecnologia').options[5]= new Option("none" , "6" ,false,false);
	}
	if(valor == 2)
	{
		document.getElementById('nm_tecnologia').options[0]= new Option("any" , "7" ,false,false);
		document.getElementById('nm_tecnologia').options[1]= new Option("netscape communicator" , "8" ,false,false);
		document.getElementById('nm_tecnologia').options[2]= new Option("ms-internet explorer" , "9" ,false,false);
		document.getElementById('nm_tecnologia').options[3]= new Option("opera" , "10" ,false,false);
		document.getElementById('nm_tecnologia').options[4]= new Option("amaya" , "11" ,false,false);
	}
}

