function ajax(){
	http_request = null;
	if (window.XMLHttpRequest) { 
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { 
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	if (!http_request) {
		alert('Sem suporte a Ajax!');
		return false;
	}
}

function carregaUrl(url,div){
	ajax();
	dirdiv = document.getElementById(div);
	http_request.onreadystatechange = carregaConteudo
	http_request.open('GET', url, true);
	http_request.send(null);
}

function carregaConteudo(){
	if (http_request.readyState == 4){
		if (http_request.status == 200){
			dirdiv.innerHTML = http_request.responseText;
		}else{
			dirdiv.innerHTML = http_request.responseText;
			alert('Ocorreu um erro!');
		}
	}else{


	}
}

function enviaConteudo(url, div, form){
	dirdiv = document.getElementById(div);
	ajax();
	var texto = "";
	var form_input;
	//pega todos os elementos input e textarea do form
	var form_input    = form.getElementsByTagName("input");
	var form_textarea = form.getElementsByTagName("textarea");
	var form_select   = form.getElementsByTagName("select");
	
	//verifica campos obrigatorios (input)
	for (i=0;i<form_input.length;i++){
		if (form_input[i].className == 'obrigatorios'){
			if (form_input[i].value == ""){
				alert('Os campos destacados são obrigatórios.');
				form_input[i].focus();
				return false;
			}
		}
	}
	//verifica campos obrigatorios (select)
	for (i=0; i<form_select.length; i++){
		if (form_select[i].className == 'obrigatorios'){
			if (form_select[i].value == ""){
				alert('Os campos destacados são obrigatórios.');
				form_select[i].focus();
				return false;
			}
		}
	}
	//verifica campos obrigatorios (textarea)
	for (i=0; i<form_textarea.length; i++){
		if (form_textarea[i].className == 'obrigatorios'){
			if (form_textarea[i].value == ""){
				alert('Os campos destacados são obrigatórios.');
				form_textarea[i].focus();
				return false;
			}
		}
	}
	
	//atribui valores dos input
	for(i=0; i<form_input.length; i++) {
		if(texto != ''){
			texto += "&"+ form_input[i].name + "=" + form_input[i].value;
		}else{
			texto = form_input[i].name + "=" + form_input[i].value;
		}
	}
	//concatena valores dos textarea
	for (i=0; i<form_textarea.length; i++){
		texto += "&"+ form_textarea[i].name + "=" + form_textarea[i].value;
	}
	//concatena valores dos select
	for (i=0; i<form_select.length; i++){
		texto += "&"+ form_select[i].name + "=" + form_select[i].value;
	}
	
	//envia o conteudo para gravar
	texto = encodeURI(texto);
	http_request.onreadystatechange = carregaConteudo
	http_request.open("POST",url,true);
	http_request.setRequestHeader('Content-Type','application/x-www-form-urlencoded; charset=ISO-8859-1');
	http_request.send(texto);
	http_request.onreadystatechange = carregaConteudo
	return true;
}

