	//Ajax
		
	var http_request = false;
	var flag = 0;
	var flags = 0;
    function makeRequest(url) {
	
        http_request = false;
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
                // See note below about this line
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Não possivel cria a instância XMLHTTP');
            return false;
        }
        
		if (flag==1){
			http_request.open('GET', "func.php?"+url, true);
        	http_request.send(null);
		} else {
        	http_request.open('GET', "func.php?id="+url, true);
        	http_request.send(null);
			http_request.onreadystatechange = content;
		}
    }
	
	function content(){
		 if (http_request.readyState == 4) {
            if (http_request.status == 200) {
                document.getElementById('concelhos').innerHTML = http_request.responseText;
            }
        }
	}
	
	// Activa a selectbox correspondente.
	function tipoImovel(id){
		if (id==1){
			document.getElementById('num_fogos').selectedIndex = 0;
			document.getElementById('num_fogos').disabled = true;
			document.getElementById('tipologia_imovel').disabled = false;
		} else if (id==2){
			document.getElementById('num_fogos').selectedIndex = 0;
			document.getElementById('num_fogos').disabled = true;
			document.getElementById('tipologia_imovel').disabled = false;
		} else if (id==3){
			document.getElementById('tipologia_imovel').selectedIndex = 0;
			document.getElementById('tipologia_imovel').disabled = true;
			document.getElementById('num_fogos').disabled = false;
		
		}  else {
			document.getElementById('num_fogos').selectedIndex = 0;
			document.getElementById('tipologia_imovel').selectedIndex = 0;
		document.getElementById('tipologia_imovel').disabled = false;
			document.getElementById('num_fogos').disabled = true;
		}
	}

	function roundNumber(num) {
		var result = Math.round(num*100)/100;
		return result;
	}

	function calc(){
	
	var nome = document.getElementById('nome').value;
	var contacto = document.getElementById('contacto').value;
	
	var total = 0;
	var imovel_val = 0;
	
	document.getElementById('calcular').style.display = 'none';
	document.getElementById('result').style.display = '';
	
	var tipo_diagnostico = document.getElementById('tipo_diagnostico').value;
	
	var tipo_imovel = document.getElementById('tipo_imovel').value;
	
	if (tipo_imovel==1){
		imovel_val = 1.2;
	} else if (tipo_imovel==2){
		imovel_val = 1.0;
	} else if (tipo_imovel==3){
		imovel_val = 1.2;
	}
	
	var idade_imovel = document.getElementById('idade_imovel').value;
	
	if (document.getElementById('tipologia_imovel').disabled == false){
		valor = document.getElementById('tipologia_imovel').value;
	} else {
		valor = document.getElementById('num_fogos').value;
	}
	
	var deslocacao = (document.getElementById('conc').value)*0.60;
	
	if (tipo_diagnostico>=10){
		flags=1;
	}
	
	if ((tipo_imovel==4) && (flags==1)){
		flags=0;
	}
	
	total = roundNumber((tipo_diagnostico*imovel_val*idade_imovel*valor)+(deslocacao));
	
	
	// Textos de Campos
		// Tipo Diagnostico
		index_diag = document.getElementById('tipo_diagnostico').selectedIndex;
		tipo_diagnostico = document.getElementById('tipo_diagnostico').options[index_diag].innerText;
		// tipo_imovel
		index_tip_imo = document.getElementById('tipo_imovel').selectedIndex;
		tipo_imovel = document.getElementById('tipo_imovel').options[index_tip_imo].innerText;
		//idade_imovel
		index_idade_imo = document.getElementById('idade_imovel').selectedIndex;
		idade_imovel = document.getElementById('idade_imovel').options[index_idade_imo].innerText;
		//tipologia_imovel
		index_tipologia_imo = document.getElementById('tipologia_imovel').selectedIndex;
		var tipologia_imovel = document.getElementById('tipologia_imovel').options[index_tipologia_imo].innerText;
		//num_fogos
		index_num_fogos = document.getElementById('num_fogos').selectedIndex;
		var num_fogos = document.getElementById('num_fogos').options[index_num_fogos].innerText;
		//distrito
		index_distrito = document.getElementById('distrito').selectedIndex;
		var distrito = document.getElementById('distrito').options[index_distrito].innerText;
		//conc
		index_conc = document.getElementById('conc').selectedIndex;
		var conc = document.getElementById('conc').options[index_conc].innerText;
	
	//Substitui list&menus por texto.
	document.getElementById('td_nome').innerText = nome;
	document.getElementById('td_contacto').innerText = contacto;
	document.getElementById('td_tip_dig').innerText = tipo_diagnostico;
	document.getElementById('td_tip_imo').innerText = tipo_imovel;
	document.getElementById('td_ida_imo').innerText = idade_imovel;
	document.getElementById('td_tipl_imo').innerText = tipologia_imovel;
	document.getElementById('td_num_fog').innerText = num_fogos;
	document.getElementById('td_dist').innerText = distrito;
	document.getElementById('td_conc').innerText = conc;
	
	if (flags==1){
	// Valor s/iva
		document.getElementById('total_siva_h').value = total;
		document.getElementById('total_siva').innerText = document.getElementById('total_siva_h').value+"€";
	// Valor s/iva k=15%
		document.getElementById('total_sivak_h').value = roundNumber((total*1)+(total*0.15));
		document.getElementById('total_sivak').innerText = document.getElementById('total_sivak_h').value+"€";

	// Valor c/iva 21%
		document.getElementById('total_iva_h').value = roundNumber((document.getElementById('total_sivak_h').value*1)+(document.getElementById('total_sivak_h').value*0.21));
		document.getElementById('total_iva').innerText = document.getElementById('total_iva_h').value+"€";
	} else {
		document.getElementById('total_siva').innerText = 'sob consulta';
		document.getElementById('total_sivak').innerText = 'sob consulta';
		document.getElementById('total_iva').innerText = 'sob consulta';
	}
		
	// Envia dados para o mail.
	flag=1;
	makeRequest('send_mail&tipo_dig='+tipo_diagnostico+'&tipo_imo='+tipo_imovel+'&idade_imo='+idade_imovel+'&tipl_imo='+tipologia_imovel+'&num_fog='+num_fogos+'&dist='+distrito+'&conc='+conc+'&total_s='+document.getElementById('total_siva').innerText+'&total_s_k='+document.getElementById('total_sivak').innerText+'&total_c='+document.getElementById('total_iva').innerText+'&nome='+nome+'&contacto='+contacto);
	
	}
	
	
	function valData (){
		if (document.getElementById('nome').value==""){
			alert('O campo Nome é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('contacto').value==""){
			alert('O campo Contacto é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('morada').value==""){
			alert('O campo Morada é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('numero').value==""){
			alert('O campo Número é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('localidade').value==""){
			alert('O campo Localidade é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('codpost').value==""){
			alert('O campo Código Postal é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('email').value==""){
			alert('O campo Email é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('tipo_diagnostico').selectedIndex==0){
			alert('O campo Tipo Diagnostico é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('area').value==""){
			alert('O campo Área é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('tipo_imovel').selectedIndex==0){
			alert('O campo Tipo Imovel é de preenchimento obrigatório.');
			return (false);
		} else if (document.getElementById('idade_imovel').selectedIndex==0){
			alert('O campo Idade da Construção é de preenchimento obrigatório.');
			return (false);
		} else if ((document.getElementById('tipologia_imovel').selectedIndex==0) &&  (document.getElementById('tipo_imovel').selectedIndex!=3)){
			alert('O campo Tipologia DO Fogo é de preenchimento obrigatório.');
			return (false);
			} else if (document.getElementById('Distrito').selectedIndex==0){
			alert('O campo Distrito é de preenchimento obrigatório.');
			return (false);
		
		} else if (document.getElementById('pisos').value==""){
			alert('O campo Pisos é de preenchimento obrigatório.');
			return (false);
	
			
		} else if ((document.getElementById('num_fogos').selectedIndex==0) && (document.getElementById('num_fogos').disabled==false)){
			alert('O campo Numero Fogos é de preenchimento obrigatório.');
			return (false);

		} else if (document.getElementById('conc').selectedIndex==0){
			alert('O campo Concelho é de preenchimento obrigatório.');
			return (false);
		} else {
		
			alert('Orçamento enviado para o seu email.');	
			return (true);
		}
	
	}
	
