function bookmark(tipo) {
	if ( tipo == "rec6") { window.open("http://rec6.via6.com/link.php?url=" + encodeURIComponent(location.href) + "&titulo=" + encodeURIComponent(document.title)); }
	if ( tipo == "delicious") { window.open("http://del.icio.us/post?url=" + encodeURIComponent(location.href) + "&title=" +encodeURIComponent(document.title));}
	if ( tipo == "stumble") { window.open("http://www.stumbleupon.com/refer.php?url=" + encodeURIComponent(location.href) + "&title=" + encodeURIComponent(document.title));}
}

function atualizaVerbo(urlPagina) {
	executaAjaxText(urlPagina, '', 'post', 'objRecebeVerbo', 'carregando...');
}

function getById(bbi_obj) {
	return document.getElementById(bbi_obj);
}

function mudaBorda(mb_obj, mb_cor) {
	getById(mb_obj).style.borderColor = mb_cor;
}

function validaVerbo(vv_idUser) {
	var bordaOn = "#ff0000";
	var bordaOff = "#80817c";
	var mensagem="Os dados não foram enviados, siga as instruções abaixo:\n\n";
	//if(vv_idUser == "") {
		if (getById("author").value=='') {
			mensagem += "- Preencha o campo 'Seu nome' \n";
			mudaBorda("author",bordaOn);
		}
		else{
			mudaBorda("author",bordaOff);
		}

		if (getById("email").value=='') {
			mensagem += "- Preencha o campo 'e-mail' \n";
			mudaBorda("email",bordaOn);
		}
		else if(!validaMail("email")){
			mensagem += "- Digite um 'e-mail' válido\n";
			mudaBorda("email",bordaOn);
		}
		else{
			mudaBorda("email",bordaOff);
		}
	//}

	if (getById("comment").value=='') {
		mensagem += "- Preencha o campo 'Sua mensagem' \n";
		mudaBorda("comment",bordaOn);
	}
	else{
		mudaBorda("comment",bordaOff);
	}

	if (mensagem=="Os dados não foram enviados, siga as instruções abaixo:\n\n") {
		return true;
	}
	else {
		alert(mensagem);
		return false;
	}
}

function makeStrJson(string){
	return eval( '('+ string + ')' );	
}

function validaCPF(cpf){
	var numeros, digitos, soma, i, resultado, digitos_iguais;
	digitos_iguais = 1;
	if (cpf.length < 11){
		return false;
	}
	for (i = 0; i < cpf.length - 1; i++){
		if (cpf.charAt(i) != cpf.charAt(i + 1)){
			digitos_iguais = 0;
			break;
		}
	}
	if (!digitos_iguais){
		numeros = cpf.substring(0,9);
		digitos = cpf.substring(9);
		soma = 0;
		for (i = 10; i > 1; i--){
			soma += numeros.charAt(10 - i) * i;
		}
		resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
		if (resultado != digitos.charAt(0)){
			return false;
		}
		numeros = cpf.substring(0,10);
		soma = 0;
		for (i = 11; i > 1; i--){
			soma += numeros.charAt(11 - i) * i;
		}
		resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
		if (resultado != digitos.charAt(1)){
			return false;
		}
		return true;
	}
	else {
		return false;
	}
}

function validaFormAbaixo(){
	var erros = Array();
	/* nome */
	if( $("#form_abaixoassinado #as_nome").val() == "" ){
		erros.push('Informe seu nome completo.');
	}
	/* cpf */
	if( $("#form_abaixoassinado #as_cpf").val() == "" ){
		erros.push('Informe seu CPF.');
	}
	else if (!validaCPF($("#form_abaixoassinado #as_cpf").val())){
		erros.push('Informe um CPF Válido.');
	}
	/* email */
	if( $("#form_abaixoassinado #as_email").val() == "" ){
		erros.push('Informe seu email.');
	}
	else if (!validaMail("as_email")){
		erros.push('Informe um email válido.');
	}
	if (erros.length > 0){
		var htmlERRO = "";
		for(er=0; er<erros.length; er++){
			htmlERRO += '<li>*'+erros[er]+'</li>';
		}
		$("#abaixo-assinado .msg-erro .campos-erro").html(htmlERRO);
		$("#abaixo-assinado .msg-erro").removeClass("hide");
		return false;
	}
	else {
		return executaFormAbaixo();
	}
}

function executaFormAbaixo(){
	$("#abaixo-assinado .msg-erro").addClass("hide");
	$.ajax({  
		type: "POST",  
		url: "wp-content/plugins/abaixo_assinado/executa_cadastro.php",  
		data: $("#form_abaixoassinado").formSerialize(),  
		success: function(data) {  
			myJSON = makeStrJson(data); 
			if (myJSON.status == "erro"){
				var erros = myJSON.mensagem.split('#');
				var htmlERRO = "";
				for(er=0; er<erros.length; er++){
					htmlERRO += '<li>*'+erros[er]+'</li>';
				}
				$("#abaixo-assinado .msg-erro .campos-erro").html(htmlERRO);
				$("#abaixo-assinado .msg-erro").removeClass("hide");
				return false;
			}
			else if (myJSON.status == "sucesso"){
				$("#abaixo-assinado").html(myJSON.msgHTML);
			}
		}  
	});  
	return false;
}

function retornaCodigo(evento){
	var codigoTecla = evento.keyCode ? evento.keyCode : evento.which ? evento.which : evento.charCode;
	return codigoTecla;
}

function validaMail(idMail){
	boxMail = document.getElementById(idMail);
	if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(boxMail.value))){
		campoEmail = false;
	}
	else{
		campoEmail = true;
	}
	return campoEmail
}


function chk_numeros(event){
	var keyCode = retornaCodigo(event);
	if ( (keyCode >= 48 && keyCode <= 57) || keyCode == 8 || keyCode == 9 || keyCode == 13){
		return true;
	}
	else{
		return false;
	}
}


function extraiScript(texto){
    var ini, pos_src, fim, codigo;
    var objScript = null;
    ini = texto.indexOf('<script', 0)
    while (ini!=-1){
        var objScript = document.createElement("script");
        pos_src = texto.indexOf(' src', ini)
        ini = texto.indexOf('>', ini) + 1;

        if (pos_src < ini && pos_src >=0){
            ini = pos_src + 4;
            fim = texto.indexOf('.', ini)+4;
            codigo = texto.substring(ini,fim);
            codigo = codigo.replace("=","").replace(" ","").replace("\"","").replace("\"","").replace("\'","").replace("\'","").replace(">","");
            objScript.src = codigo;
        }else{
            fim = texto.indexOf('</script>', ini);
            codigo = texto.substring(ini,fim);
            objScript.text = codigo;
        }
        document.body.appendChild(objScript);
        ini = texto.indexOf('<script', fim);
        objScript = null;
    }
}

function ajaxRequest(){
	var ajaxXMLHttp = false;
	if (window.XMLHttpRequest){
		ajaxXMLHttp = new XMLHttpRequest();
	}else if (window.ActiveXObject){
		try
		{
			ajaxXMLHttp = new ActiveXObject("Msxm12.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				ajaxXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e)
			{
				alert("Esse browser não tem recursos para uso do Ajax");
				ajaxXMLHttp = false;
			}
		}
	}
	return ajaxXMLHttp;
}

filaText=[];
ifilaText=0;

function executaAjaxText(urlText, parametrosText, metodoText, elementRetornoText, msgCarregarText){
    filaText[filaText.length]=[urlText, parametrosText, metodoText, elementRetornoText, msgCarregarText];
    if((ifilaText + 1)==filaText.length){
		ajaxRunText();
	}
}

function ajaxRunText(){
	ajaxText = false;
	ajaxText = ajaxRequest();
	if (!ajaxText){
		alert("Erro na Chamada Ajax");
		return false;
	}else{
		elementRetornoText = document.getElementById(filaText[ifilaText][3]);
		ajaxText.onreadystatechange = processaAjaxText;
		if (filaText[ifilaText][2]=="get"){
			ajaxText.open(filaText[ifilaText][2], filaText[ifilaText][0]+"?"+filaText[ifilaText][1], true);
			ajaxText.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			ajaxText.setRequestHeader("Cache-Control", "no-cache");
			ajaxText.setRequestHeader("Pragma", "no-cache");
			ajaxText.send(null);
		}else if (filaText[ifilaText][2]=="post"){
			ajaxText.open(filaText[ifilaText][2], filaText[ifilaText][0], true);
			ajaxText.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			ajaxText.setRequestHeader("Cache-Control", "no-cache");
			ajaxText.setRequestHeader("Pragma", "no-cache");
			ajaxText.send(filaText[ifilaText][1]);
		}
	}
}

function processaAjaxText(){
	if (ajaxText.readyState == 1)
	{
		elementRetornoText.innerHTML = filaText[ifilaText][4];
	}
	if (ajaxText.readyState == 4)
	{
		if (ajaxText.status == 200)
		{
			extraiScript(ajaxText.responseText);
			elementRetornoText.innerHTML = ajaxText.responseText;
		}else{
			elementRetornoText.innerHTML = "<div style='float:left;width:100%'>Falha no Carregamento.<br>"+erroPagina(ajaxText.status)+"</div>";
		}
		ifilaText++;
		if(ifilaText < filaText.length){
			setTimeout("ajaxRunText()", 20);
		}
	}
}

filaXML = [];
ifilaXML = 0;

function executaAjaxXML(urlXML, parametrosXML, metodoXML, msgCarregarXML, idSelect, idOption, msgOptionSucesso, msgOptionErro){
	filaXML[filaXML.length]=[urlXML, parametrosXML, metodoXML, msgCarregarXML, idSelect, idOption, msgOptionSucesso, msgOptionErro];
    if((ifilaXML + 1) == filaXML.length){
		ajaxRunXML();
	}
}

function ajaxRunXML(){
	ajaxXML = false;
	ajaxXML = ajaxRequest();
	if (!ajaxXML)
	{
		alert("Erro na Chamada Ajax");
		return false;
	}else{
		selectRetorno = document.getElementById(filaXML[ifilaXML][4]);
		selectRetorno.options.length = 1;
		optionRetorno = document.getElementById(filaXML[ifilaXML][5]);
		ajaxXML.onreadystatechange = processaAjaxXML;
		if (filaXML[ifilaXML][2]=="get")
		{
			ajaxXML.open(filaXML[ifilaXML][2], filaXML[ifilaXML][0]+"?"+filaXML[ifilaXML][1], true);
			ajaxXML.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			ajaxXML.setRequestHeader("Cache-Control", "no-cache");
			ajaxXML.setRequestHeader("Pragma", "no-cache");
			ajaxXML.send(null);
		}else if (filaXML[ifilaXML][2]=="post")
		{
			ajaxXML.open(filaXML[ifilaXML][2], filaXML[ifilaXML][0], true);
			ajaxXML.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			ajaxXML.setRequestHeader("Cache-Control", "no-cache");
			ajaxXML.setRequestHeader("Pragma", "no-cache");
			ajaxXML.send(filaXML[ifilaXML][1]);
		}
	}
}

function processaAjaxXML(){
	if (ajaxXML.readyState == 1)
	{
		optionRetorno.innerHTML = filaXML[ifilaXML][3];
	}
	if (ajaxXML.readyState == 4)
	{
		if (ajaxXML.status == 200)
		{
			var vetorXML = ajaxXML.responseXML.getElementsByTagName("xml");
			if (vetorXML.length > 0)
			{
				optionRetorno.innerHTML = filaXML[ifilaXML][6];
				for (i = 0; i < vetorXML.length; i++)
				{
					var xml  = vetorXML[i];
					var codigo	   = xml.getElementsByTagName("codigo")[0].firstChild.nodeValue;
					var descricao  = xml.getElementsByTagName("descricao")[0].firstChild.nodeValue;
					var novoOption = document.createElement("option");
					novoOption.setAttribute("id", filaXML[ifilaXML][5]);
					novoOption.value = codigo;
					novoOption.text  = descricao;
					selectRetorno.options.add(novoOption);
				}
			}else{
				optionRetorno.innerHTML = filaXML[ifilaXML][7];
			}
		}else{
			alert(erroPagina(ajaxXML.status));
		}
		ifilaXML++;
		if(ifilaXML < filaXML.length){
			setTimeout("ajaxRunXML();", 20);
		}
	}
}

function erroPagina(erro){
	switch(erro){
		case 0: return "Erro desconhecido de javascript"; break;
		case 400: return "400: Solicitação incompreensível"; break;
		case 404: return "404: Não foi encontrada a URL solicitada"; break;
		case 405: return "405: O servidor não suporta o m&eacute;todo solicitado"; break;
		case 500: return "500: Erro desconhecido de natureza do servidor"; break;
		case 503: return "503: Capacidade máxima do servidor alcançada"; break;
		default: return "Erro " + erro + ". Mais informações em http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html"; break;
	}
}

function paginacaoIrPara(pip_numPaginas, pip_url) {
	var valorDigitado = ( document.getElementById("paginacao_id_ir_para").value ) *1;
	if(valorDigitado == "") {
		alert('Digite o número da página de destino');
		return false;
	}
	else if(valorDigitado > pip_numPaginas){
		alert('O número máximo de páginas é ' + pip_numPaginas + '. Digite um número válido');
		return false;
	}
	else{
		document.location.href = pip_url + '&i=' + (valorDigitado - 1);
		return false;
	}
}

