// =========================================================

function foo() { return; }

function chImageSrc(id, src) {
	var img = document.getElementById(id);
	img.src = src;
}

function redirect(URLStr) { self.location = URLStr; }

function openpopup(url, width, height, func) {
	var win = window.open(url, '_blank', 'resizable=yes,scrollbars=yes,location=no,directories=no,menubar=no,toolbar=no,height='+height+',width='+width, false);
	var id = window.setInterval(
		function checkwin() {
			if(win.closed == true) {
					if(func == null)		
						this.location.reload();
					else
						func();
					this.window.clearInterval(id);
			}
		}, 200);
}

function esconde(id) {
	if(document.getElementById(id).style.display == "none")
		document.getElementById(id).style.display = "";
	else
		document.getElementById(id).style.display = "none";
}

function changeBg(obj, bgColor) {
	obj.style.backgroundColor = bgColor;
}

function confirmAction(file, action_text, action_code, type, id, silent) {
	if(confirm("tem a certeza que pretende "+action_text+" o item selecionado?") == true) {
		if(silent == true) {
			makeHTTPRequest(file+"?a="+action_code+"&type="+type+"&id="+id, 'GET', null, null);
			location.reload(true);
		} else
			this.self.location.href = file+"?a="+action_code+"&type="+type+"&id="+id+"&gourl="+escape(this.self.location.href);
	}
}

// =============== AJAX ====================================

var http_request = false;
   
function makeHTTPRequest(url, type, func, parameters) {
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			// set type accordingly to anticipated content type
//			http_request.overrideMimeType('text/xml');
			http_request.overrideMimeType('text/html');
		}
	} 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('Erro ao criar objecto XMLHTTP.');
		return false;
	}

	if(func != null)
		http_request.onreadystatechange = func;
	if(type == 'POST') {
		http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", parameters.length);
		http_request.setRequestHeader("Connection", "close");
		http_request.send(parameters);
	} else if(type == 'GET') {
   	http_request.open('GET', url+'&random='+(Math.floor(Math.random()*1000)), true);
   	http_request.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
		http_request.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
		http_request.setRequestHeader("Pragma", "no-cache");
   	http_request.send(null);
	}
}

function setFreguesiasHTML() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			result = result.split("\n");
			var sel = document.getElementById('freguesias');
			for(var i = 0; i < result.length-1; i+=2) {
				var x = document.createElement('option');
				x.value =  result[i];
				x.text = result[i+1];
				try {
					sel.add(x, null);
				} catch(ex) {
					sel.add(x);
				}
			}
		} else {
			alert('Ocorreu um constrangimento no pedido ao servidor.');
		}
	}
}

function setConcelhosHTML() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			result = result.split("\n");
			var sel = document.getElementById('concelhos');
			for(var i = 0; i < result.length-1; i+=2) {
				var x = document.createElement('option');
				if(result[i] != 'none')
					x.value =  result[i];
				else
					x.value = '';				
				x.text = result[i+1];
				try {
					sel.add(x, null);
				} catch(ex) {
					sel.add(x);
				}
			}
		} else {
			alert('Ocorreu um constrangimento no pedido ao servidor.');
		}
	}
}

function setDistritosHTML() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			result = result.split("\n");
			var sel = document.getElementById('distritos');
			for(var i = 0; i < result.length-1; i+=2) {
				var x = document.createElement('option');
				x.value =  result[i];
				x.text = result[i+1];
				try {
					sel.add(x, null);
				} catch(ex) {
					sel.add(x);
				}
			}
		} else {
			alert('Ocorreu um constrangimento no pedido ao servidor.');
		}
	}
}

function setMediadoresHTML() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			result = result.split("\n");
			var sel = document.getElementById('mediadores');
			for(var i = 0; i < result.length-1; i+=2) {
				var x = document.createElement('option');
				x.value =  result[i];
				x.text = result[i+1];
				try {
					sel.add(x, null);
				} catch(ex) {
					sel.add(x);
				}
			}
		} else {
			alert('Ocorreu um constrangimento no pedido ao servidor.');
		}
	}
}

function getPageOutput(url, func) {
	makeHTTPRequest(url, 'GET', func, null);
}

function set_tipologia() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			result = http_request.responseText;
			if(result == '0') { 
				document.getElementById('tipologia').selectedIndex = 0;
				document.getElementById('tipologia').disabled = true;
			} else {
				document.getElementById('tipologia').disabled = false;
			}           
		} else {
			alert('Ocorreu um constrangimento no pedido ao servidor.');
		}
	}	
}

function check_tipologia() {
	getPageOutput('action_query.php?query=tem_tipologia&id='+document.form1.natureza.value, set_tipologia);
}

function getFreguesiasHTML() {
	var sel = document.getElementById('freguesias');
	for(var x in sel.options)
		sel.remove(x.value); 
	getPageOutput('action_query.php?query=freguesiasOptions&id='+document.form1.concelho.value, setFreguesiasHTML);
}

function getConcelhosHTML() {
	getPageOutput('action_query.php?query=concelhosOptions&id='+document.form1.distrito.value, setConcelhosHTML);
	var selc = document.getElementById('concelhos');
	for(var x in selc.options)
		selc.remove(x.value); 
	if(document.getElementById('freguesias') != null) {
		var selfr = document.getElementById('freguesias');
		for(var x in selfr.options)
			selfr.remove(x.value); 
	}
}

function getDistritosHTML() {
	var sel = document.getElementById('distritos');
	for(var x in sel.options)
		sel.remove(x.value); 
	getPageOutput('action_query.php?query=distritosOptions', setDistritosHTML);
}

function getMediadoresHTML() {
	var sel = document.getElementById('mediadores');
	for(var x in sel.options)
		sel.remove(x.value); 
	getPageOutput('action_query.php?query=mediadoresOptions', setMediadoresHTML);
}

function setFavImg(obj, imid) {
	var id = obj.value;
	makeHTTPRequest('action_query.php?query=setFav&id='+id+'&imid='+imid, 'GET', null, null);	
}

/*   
function get(obj) {
	var poststr = "mytextarea1=" + encodeURI( document.getElementById("mytextarea1").value ) + "&mytextarea2=" + encodeURI( document.getElementById("mytextarea2").value );
	makeHTTPRequest('post.php', poststr, 'POST');
}
*/

