function Preload(){
	var args = Preload.arguments;
	document.imageArray = new Array(args.length);
	for(var i=0; i<args.length; i++){
		document.imageArray[i] = new Image;
		document.imageArray[i].src = args[i];
		}
	}

Preload('./_imagens/botao_home.gif','./_imagens/botao_empresa.gif','./_imagens/botao_empresa_on.gif','./_imagens/botao_produtos_on.gif','./_imagens/botao_produtos.gif','./_imagens/botao_qualidade.gif','./_imagens/botao_qualidade_on.gif','./_imagens/botao_comprar_on.gif','./_imagens/botao_comprar.gif','./_imagens/botao_downloads_on.gif','./_imagens/botao_downloads.gif','./_imagens/botao_contato.gif','./_imagens/botao_faq.gif','./_imagens/botao_faq_on.gif','./_imagens/botao_contato_on.gif');

function TrocarSentido() {
	var sentido = document.getElementById("sentido").value;
	if(sentido == "vertical"){
      document.getElementById("sentido").value = "horizontal";
      document.getElementById("sentido_imagem").src   = "../_imagens/forro_sentido_hor.gif";
      document.getElementById("sentido_imagem").title = "Horizontal";
		}
		else {
      document.getElementById("sentido").value = "vertical";
      document.getElementById("sentido_imagem").src   = "../_imagens/forro_sentido_ver.gif";
      document.getElementById("sentido_imagem").title = "Vertical";
		}
	}

function formatCurrency(num) {
   num = num.toString().replace(/\$|\,/g,'');
   if(isNaN(num))
   num = "0";
   sign = (num == (num = Math.abs(num)));
   num = Math.floor(num*100+0.50000000001);
   cents = num%100;
   num = Math.floor(num/100).toString();
   if(cents<10)
   cents = "0" + cents;
   for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
   num = num.substring(0,num.length-(4*i+3))+'.'+
   num.substring(num.length-(4*i+3));
   return (((sign)?'':'-') + num + '.' + cents);
	}

function ApagarCalculo() {
   if(confirm("O cálculo atual será perdido.\nDeseja criar um novo?")) {
      window.top.location.href = "./_conteudo/apaga_calculo.php";
   }
   else {
      return false;
   }
}

function ApagarItemCalculo(codigo) {
   if(confirm("Deseja apagar esse item?")) {
   	//invoca um ajax que retira o item da $_SESSION
   	var retorno = YAHOO.util.Connect.asyncRequest("GET", "../_conteudo/calculadora_retira_item.php?codigo="+codigo,{
   		success:function(o){
			//existem diversas outras opções encaminhadas pelo callback
			//http://developer.yahoo.com/yui/examples/connection/get_clean.html
			var retorno = o.responseText;
			var resultado = new Array(3);
			//alert(retorno);
			resultado = retorno.split("#");
			//alert("Retorno 0: "+resultado[0]+" -> Retorno 1: "+resultado[1]+" -> Retorno 2: "+resultado[2]);
			
			if(resultado[0] > 0){
				document.getElementById('quad_lin').innerHTML = resultado[1];
				document.getElementById('total').innerHTML = resultado[2];
				}
				else {
					document.getElementById('resultado_calculo').style.display = "none"; //linha extra que exibe os totais
				}
			}
   	});
	
		//apaga a linha visualmente
		document.getElementById("item_"+codigo).style.display="none";
      }
   else {
      return false;
   }
}

//Trata o submit dos formulários pra submeter os dados sem reload
function SubmeteFormulario(formulario,id_retorno){
	//document.getElementById("submeter_calculadora").disabled = true;
	//document.getElementById("submeter_calculadora").value = "Aguarde...";
	
   if(formulario.name == "formulario_calculadora"){
      document.getElementById(id_retorno).style.display='block';
      }

   //o segundo parametro é muito importante - ele habilita o upload de arquivos
   //nesse caso o handler "upload" está habilitado
   //http://thecodecentral.com/2007/09/04/asynchronous-file-upload-yuis-approach
	YAHOO.util.Connect.setForm(formulario, true);
	var method = formulario.method;
	var action = formulario.action;
	
   YAHOO.util.Connect.asyncRequest(method, action, {
      upload: function(o) {
         document.getElementById(id_retorno).innerHTML=o.responseText;
      },   
		success : function(o){
			document.getElementById(id_retorno).innerHTML=o.responseText;
		},
		failure : function(o){
			alert(o.statusText);
		},
		timeout : 50000
	});
			/*
			//habilita o botão de submissão novamente - só habilita depois de carregado o conteúdo dinâmico
			document.getElementById("submeter_calculadora").disabled = false;
			document.getElementById("submeter_calculadora").value = "Calcular";
			//limpa todos os campos do formulário
			var linhas = new Array("produto","horizontal","vertical","comodo","largura","altura");
   		for(var i=0; i<linhas.length; i++) {
   			document.getElementById(linhas[i]).value = "";
   			}
   		*/
}

function TestaCampoCalculadora(){
   var cursor = new Array();
   var missinginfo = "";

	if(document.getElementById('comodo').value == "") {
      missinginfo += "\n     -  Cômodo";
      cursor.push("comodo");
	   }
	   
   if(document.getElementById('produto').selectedIndex == 0) {
      missinginfo += "\n     -  Produto";
      cursor.push("produto");
	   }
	   
	if(document.getElementById('largura').value == "") {
      missinginfo += "\n     -  Largura";
      cursor.push("largura");
	   }
	   else {
	   	if(document.getElementById('largura').value < 0.7) {
      	missinginfo += "\n     -  Largura deve ser no mínimo 0.7m";
      	cursor.push("largura");
	   	}
	   }
	if(document.getElementById('altura').value == "") {
      missinginfo += "\n     -  Comprimento";
      cursor.push("altura");
	   }
	   else {
	   	if(document.getElementById('altura').value < 0.7) {
      	missinginfo += "\n     -  Comprimento deve ser no mínimo 0.7m";
      	cursor.push("altura");
	   	}
	   }
	   
   if(missinginfo != ""){
      missinginfo = "Preencha os seguintes campos: \n" + missinginfo + 
                    "\n\nComplete e continue.";	 
      alert(missinginfo);
      /*
      var submeter_calculadora = document.getElementById('submeter');
      submeter.disabled = false;
		submeter.value = "Calcular";
		*/
			
		//Posiciona o cursor no primeiro campo do vetor
		var comando = "document.getElementById('"+cursor[0]+"').focus();";
		eval(comando);
      return false;
      }
   	else {
   		var formulario = document.getElementById('formulario_calculadora');
   		SubmeteFormulario(formulario,'resultado_calculo');
         return false;
         }
	   }

function Calcula(aux) {
   var valor_altura  = document.getElementById("altura").value;
	var valor_largura = document.getElementById("largura").value;

	valor_altura  = valor_altura.replace(",",".");
   valor_altura  = (+valor_altura);
   valor_largura = valor_largura.replace(",",".");
   valor_largura = (+valor_largura);	
	
	if((valor_altura != "") && (valor_largura != "")){		
      document.getElementById("resultado").innerHTML = "<b>"+formatCurrency(valor_altura * valor_largura)+"&nbsp;m&sup2;</b>";
		}
		else {
      document.getElementById("resultado").innerHTML = "";			
		}
	}
	
function RealizaCalculo() {
	//document.getElementById("submeter").disabled = true;
	//document.getElementById("submeter").value = "Aguarde...";
	}
	
function AlteraImagem(item){
	//substitui a imagem
	if(item.value != ""){
		//document.getElementById('img_'+codigo).src = "./_imagens/ajax-loader.gif";
		document.getElementById('imagem').src = "./_imagens/calculadora/"+item.value+"_mini.jpg";
		}
	}

function Menu() {
    var menu = $("botoes").childNodes;
    for (i = 0; i < menu.length; i++) {
        if (menu[i].tagName == "LI" || menu[i].tagName == "li") {
            Event.observe(menu[i], 'mouseover', function() {
                this.addClassName('hover');
            });
            Event.observe(menu[i], 'mouseout', function() {
                this.removeClassName('hover');
            });
        }
    }
}

function subMenu() {
    var subNavs = $$('.subNav');
    for (i = 0; i < subNavs.length; i++) {
        var subNav = subNavs[i];
        var liNav = subNav.parentNode;
        Event.observe(liNav, 'mouseover', function() {
            var sNav = this.childNodes[1].nextSibling;
            if (!Prototype.Browser.IE) {
                var sNav = sNav.nextSibling;
            }
        });
        Event.observe(liNav, 'mouseout', function() {
            var sNav = this.childNodes[1].nextSibling;
            if (!Prototype.Browser.IE) {
                var sNav = sNav.nextSibling;
            }
        });
    }
}

function getElementsByClass(searchClass, node, tag) {
	var classElements = new Array();
	if ( node == null ) {
		node = document;
	}
	if ( tag == null ) {
		tag = '*';
	}
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function validate_email (email) {
   var regex = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
   return regex.test(email);
}

function validate (form) {
   var not_nulls = getElementsByClass("not-null", form);
   var not_nulls_length = not_nulls.length;
   var submit_button = getElementsByClass("submit_button", form)[0];
   var submit_button_value = submit_button.value;
   submit_button.disabled = true;
   submit_button.value = "Aguarde...";
   var msginfo = "";
   var foco = new Array();
   for (i = 0; i < not_nulls_length; i++) {
      var input = not_nulls[i];
      if (input.nodeName == "INPUT" || input.nodeName == "input" || input.nodeName == "TEXTAREA" || input.nodeName == "textarea") {
         var existente = new RegExp('(^|\\s)errexist(\\s|$)');
         if (input.value == "") {
            msginfo += "\n     -  "+input.title;
            foco.push(input);
         }
         else if (existente.test(input.className)) {
            msginfo += "\n     -  "+input.title+" já existe no sistema";
            foco.push(input);
         }
         else {
            var email = new RegExp('(^|\\s)email(\\s|$)');
            if (email.test(input.className) && !validate_email(input.value)) {
               msginfo += "\n     -  O e-mail informado parece não estar correto.";
               foco.push(input);
            }
         }
      }
      if (input.nodeName == "SELECT" || input.nodeName == "select") {
         for (i = 0; i < input.length; i++) {
            if (input.options[i].selected) {
               var selected = input.options[i];
            }
         }
         if (selected.value == "na" || selected.value == "") {
            msginfo += "\n     -  "+input.title;
            foco.push(input);
         }
      }
      
      if (input.nodeName == "RADIO" || input.nodeName == "radio") {
         for (i = 0; i < input.length; i++) {
            if (input.options[i].checked) {
               var selected = input.options[i];
            }
         }
         if (selected.value == "na" || selected.value == "") {
            msginfo += "\n     -  "+input.title;
            foco.push(input);
         }
      }      
   }
   if (msginfo != "") {
      msginfo = "Preencha os campos a seguir e tente novamente"+msginfo;
      alert(msginfo);
      foco[0].focus();
      submit_button.value = submit_button_value;
      submit_button.disabled = false;
      return false;
   }
   else {
      submit_button.value = submit_button_value;
      submit_button.disabled = false;
      return true;
   }
}     

Event.observe(window, 'load', function() {
    Menu();
    subMenu();
    //document.getElementsByTagName("html")[0].setAttribute("debug", "true");
});


function ExibeOcultaFAQ(faq) {
   var resposta = document.getElementById(faq).style.display;
   if (resposta == "") {
      document.getElementById(faq).style.display="none";
   }
   else {
      document.getElementById(faq).style.display="";
   }
}

function AbrePopUp(pagina,largura,altura){
   //var largura = 690;             
   //var altura  = 510;             
   var posLargura = (screen.width / 2) - (largura / 2); 
   var posAltura  = (screen.height / 2) - (altura / 2); 
   var propriedades = 'toolbar=no,';          
   propriedades    += 'location=no,';         
   propriedades    += 'directories=no,';       
   propriedades    += 'status=no,';          
   propriedades    += 'menubar=no,';        
   propriedades    += 'scrollbars=no,';    
   propriedades    += 'resizable=no,';       
   propriedades    += 'width='+largura+',';   
   propriedades    += 'height='+altura+',';   
   propriedades    += 'left='+posLargura+',';
   propriedades    += 'top='+posAltura;        
   window.open(pagina, 'Exibe', propriedades);
   }

function EnviaEmail() {
   var email = document.getElementById('email').value;
   AbrePopUp("./_conteudo/calculadora_envia_email.php?email="+email,"320","320");   
   }
