// ================ JQUERY ===================//
//var jQuery = jQuery.noConflict();
jQuery(document).ready(function(){
	//Mascara - Telefone
	jQuery('#frm_telefone').mask('(99) 9999-9999',{placeholder:"_"});
});

if(!sUrlSite)
{
	sUrlSite = 'http://www.gebramseguro.com.br/site/home/';
}
blnIsIframeCrossDomain = false;

try
{
	var objIframe = parent.document.getElementById("iframe_atendimento_unificado");
}
catch(e)
{
	blnIsIframeCrossDomain = true;
}


//ajax.js
//Cria o objeto xmlhttp
try{
    xmlhttp = new XMLHttpRequest();
}catch(ee){
    try{
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }catch(e){
        try{
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }catch(E){
            xmlhttp = false;
        }
    }
}
//Varre um formulário e retorna os dados preenchidos numa string
//no formato x-form-urlencoded
function ajaxDoFormPost(f){
        t=""
        for(var i=0;i<f.elements.length;i++)
                if(f.elements[i].name!="")
                        t+=f.elements[i].name+"="+encodeURIComponent(f.elements[i].value)+"&"
        return t
}
//Faz uma requisiçao Ajax e despeja o conteúdo recebido no elemento com o id fornecido.
//Os parâmetros:
// url - endereço que será requisitado
// id - id do objeto HTML onde o conteúdo será despejado.
// dados - opcional. Se nao estiver presente a requisiçao vai via GET. Se estiver,
//         será feito POST. Os dados podem ser uma string no formato x-form-urlencoded
//         ou um formulário HTML
function doRequestHTML(url,id,dados,jsEval,loading){
  var HTMLObj=document.getElementById(id);
  if (loading) {
  	HTMLObj.innerHTML=ajaxCarregando;
  }
  doRequest(url,ret_doRequestHTML,dados,id,jsEval);
}
//INTERNA: retorno da doHTML
function ret_doRequestHTML(t){
	ajaxHTMLObj.innerHTML=unescape(t);
	o=ajaxHTMLObj.childNodes;
	for(var i=0;i<o.length;i++){
		if ((o[i].nodeName == "SCRIPT") || (o[i].nodeName == "script")){
			var head = document.getElementsByTagName("head")[0];
			script = document.createElement('script');
			script.id = 'uploadScript';
			script.type = 'text/javascript';
			script.text = o[i].innerHTML;
			head.appendChild(script);
		}
	}
	ajaxHTMLObj.innerHTML = ajaxHTMLObj.innerHTML.replace("+"," ").replace("+"," ").replace("+"," ")
}
//Faz uma requisiçao Ajax. Os parâmetros:
// url - endereço que será requisitado
// f - funçao de retorno, que será executada quando os dados forem recebidos
// dados - opcional. Se nao estiver presente a requisiçao vai via GET. Se estiver,
//         será feito POST. Os dados podem ser uma string no formato x-form-urlencoded
//         ou um formulário HTML
// jsEval - opcional, será executado ao final do processo.
function doRequest(url,f,dados,objHTML,jsEval){
        //Cria a conexao e envia para o fim da fila
        var req = new Req(url,f,dados,objHTML,jsEval)
        ajaxFila.push(req)
        ajax_log("doRequest\n url="+url+"\n dados="+dados)
        //Nao deixa o xmlhttp desocupado
        if(!ajaxBusy){
             ajaxBusy=true
             ajax_log("doRequest chamando executeRequest\n url="+url)
             executeRequest(ajaxFila.shift())
        }
}
//Faz uma requisiçao Ajax. De verdade. Depois da fila.
function executeRequest(req){
        //Monta os dados
        var url=req.url, f=req.f, dados=req.dados, objHTML=req.objHTML, jsEval=req.jsEval
        //descobre o método
        var metodo=dados?"POST":"GET"
        //se é um form, passa por ajaxDoFormPost
        if(typeof dados=="object")dados=ajaxDoFormPost(dados)
        //Número randômico na url para eliminar o cache no IE
        url+=(url.replace(/\?/,"")==url?"?":"&")+Math.random()
        //Guarda a funçao de retorno
        ajaxReturnFunction=f;ajaxJSEval=jsEval
        //Se é HTML
        if(objHTML)ajaxHTMLObj=document.getElementById(objHTML)
        ajax_log("executeRequest\n url="+url+"\n metodo="+metodo+"\n dados="+dados)

        //Faz a requisiçao
        xmlhttp.open(metodo,url,true)
		xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-1");
        xmlhttp.onreadystatechange=function(){
					if(xmlhttp.readyState==4){
						ajax_log("executeRequest recebeu:\n"+xmlhttp.responseText)
						ajaxReturnFunction(xmlhttp.responseText)
						if(ajaxJSEval)try{
							 eval(ajaxJSEval)
						}catch(e){}
						//Se tem conexoes esperando, executa a próxima
						if (ajaxFila.length > 0){
							var proximo=ajaxFila.shift()
							if(proximo){
								ajax_log("executeRequest chamando a si mesma")
								executeRequest(proximo)
							}else{
								ajaxBusy=false
								var prox=ajaxFilaJS.shift()
								if(prox)eval(prox)
							}
						} else {
							ajaxBusy=false
						}
					}
        }
        //Envia os dados
        xmlhttp.send(metodo=="POST"?dados:null)
}
//Classe Requisiçao
//A assinatura é a mesma da doRequest
function Req(url,f,dados,objHTML,jsEval){
	this.url=url
	this.f=f
	this.dados=dados
	this.objHTML=objHTML
	this.jsEval=jsEval
}
/*
  Funçoes de Debug
*/
function ajax_log(t,erro){
	if(!ajax_debug)return
	ajax_debugTXT+="\n\n<b>==========================\n"+(new Date())+"\n"+(t.replace(/</g,"&lt;"))+"</b>\n erro:"+erro+"\n\n ajaxFila=["
	for(var i=0;i<ajaxFila.length;i++){
		ajax_debugTXT+="\n    ['" + ajaxFila[i].url + "," + (ajaxFila[i].f+"").replace(/\n/g,"") + 
					   ",'" + ajaxFila[i].dados + "']"
	}
	ajax_debugTXT+="\n ]"
	if(erro && confirm("showDebug?\n"+t))
		document.write(showDebug())
	else if(ajax_debugOBJ)
		ajax_debugOBJ.innerHTML=showDebug()
}
function showDebug(){
	return "<pre>"+ajax_debugTXT+"</pre>"
}
/*
  Variáveis globais
*/
//Funçao de retorno das requisiçoes ajax comuns
ajaxReturnFunction=false
//Mensagem de carregando HTML
ajaxCarregando="<span class='carregando'>Carregando... <img src=\"../images/loading.gif\" width=\"16\" height=\"16\"></span>"
//Objeto HTML onde o Ajax vai despejar o código
ajaxHTMLObj=false
//Fila de requisiçoes
ajaxFila=[]
//Fila de requisiçoes JS
ajaxFilaJS=[]
//Se o objeto xmlhttp tem requisiçoes pendentes
ajaxBusy=false
//Executar no retorno
ajaxJSEval=false
//Debug Mode
ajax_debug=true
//Log de debug
ajax_debugTXT=""
//objeto HTML de debug
ajax_debugOBJ=false

//doRequest(sUrlSite + 'chat/categorias.asp',arrayCateg);
//doRequest(sUrlSite + 'chat/Gerar_faq_pchave.asp?tp=js',arrayPchave); //monta JS
//doRequest(sUrlSite + 'chat/Gerar_faq_pchave.asp?tp=div',arrayDivs);	 //monta DIV

function submitBusca(){
	var tipo=0;
	var str=document.getElementById("textoDuvida").value;
	str=str.replace(/\'/g,'+');
	str=str.replace(/\´/g,' ');		
	str=str.replace(/\`/g,' ');				
	str=str.replace(/ /g,'+');
	str=str.replace(/\?/g,'+');
	str=str.replace(/\!/g,'+');		
	str=str.replace(/\,/g,'+');		
	str=str.replace(/\./g,'+');
	str=str.replace(/\</g,'+');		
	str=str.replace(/\>/g,'+');		
	str=str.replace(/\:/g,'+');
	str=str.replace(/\;/g,'+');			
	str=str.replace(/\~/g,'+');
	str=str.replace(/\n/g,'+');
	str=str.replace(/\t/g,'+');		
	
	str=escape(str.toLowerCase());
	str2=str.replace(/\+/g,'');	
	str2=str2.replace(/\ /g,'');
	
	if (str2 ==''){
		jQuery("#openModal_erro_busca").click();
		document.getElementById("textoDuvida").value=""; 
		document.getElementById("textoDuvida").focus();
	}else{
		document.getElementById("textoDuvida").value=str;
		document.getElementById("form_faq").submit();
	}
}
var arrCategoria;
function arrayCateg(o){
	arrCategoria=unescape(o);
	populacombo();
}
var arrPchave;
function arrayPchave(o2){
	arrPchave=unescape(o2);
}
var arrDiv;
function arrayDivs(o3){
	arrDiv=unescape(o3);	
	populaDivs();
}
function populaDivs(){
	results2 = arrDiv;
	var DivBox=document.createElement("div");
	var objBody = document.getElementsByTagName('body').item(0);
	var bodyOverlay = document.createElement("div");
	bodyOverlay.setAttribute('id','boxes');
	bodyOverlay.innerHTML=arrDiv;
	bodyOverlay.style.border='0px';
	objBody.insertBefore(bodyOverlay, objBody.firstChild);
}

function populacombo(){
	var combo=document.getElementById('categoria');
	results = arrCategoria.split(";");
	for(i=0;i<results.length-1;i++){
		string = results[i].split( "|" );
		combo.options[i] = new Option( string[0], string[1] );
	}
}
var vm=0;
function semelhante(){
	var str=document.getElementById("textoDuvida").value.toLowerCase();
	var cat=document.getElementById("categoria");
	for (z=0;z<cat.length;z++){
		if(cat.options[z].selected==true){
			codcateg=cat.options[z].value;
		}
	}
	var erro='';
	eval(arrPchave);		
	if (erro!=''){
		document.getElementById("semelhante").style.display='';		
		document.getElementById("content").innerHTML=erro;
	}else{
		document.getElementById("semelhante").style.display='none';
	}
}
function btFecha(){
	document.getElementById('semelhante').style.display='none';
}

function exibeNumero(n){
	if (document.getElementById("telefone_servico").value != ""){
		document.getElementById('numero').innerHTML = n;
	}
}

function messageAlert(element,msg){
	var divElement = jQuery(element +'_alert');
	if (msg!=""){
		divElement.addClass('messageAlert').html(msg);
		jQuery(element).addClass('inputAlert').parent().prev().children().addClass('labelAlert');
		jQuery(element).focus();
		jQuery(element).keypress(function(){
			messageAlert(element,"");
		});
	}else{
		divElement.removeClass('messageAlert').html('');
		jQuery(element).removeClass('inputAlert').parent().prev().children().removeClass('labelAlert');
	}
}
function selecionaEmail(assunto){
	jQuery('#mensagemDataCenter').hide();

	if (assunto == "info_data_center"){
		jQuery('#mensagemDataCenter').show();
		jQuery('#frm_email_assunto').val('info_data_center');
	}
	if (assunto == "info_comerciais"){
		jQuery('#frm_email_assunto').val('info_comerciais');
	}
	if (assunto == "duvidas_gerais" || assunto == "ombudsman"){
		jQuery('#frm_email_assunto').val('duvidas_gerais');
	}
	if (assunto != ""){
		jQuery('#openModal').click();
	}
	//Se for IFrame CrossDomain
	if(blnIsIframeCrossDomain)
	{
		//Seta o topo como fixo
		//var nTop = parseInt(jQuery('#TB_window').css('margin-top').replace(/-|px/gi,'')) + 425;
		//jQuery('#TB_window').css({top: nTop + 'px'});
		jQuery("a#goAnchor").click();

}
	clearFormFields();
}
function clearFormFields(){
	jQuery(".labelAlert").each(function(){jQuery(this).removeClass("labelAlert");});
	jQuery(".inputAlert").each(function(){jQuery(this).removeClass("inputAlert");});
	jQuery(".messageAlert").each(function(){jQuery(this).removeClass("messageAlert");jQuery(this).html("");});
	jQuery("#formEmail .formulario").each(function(){jQuery(this).val("");});
}
function validaFormEmail(){
	var msg = 'Este campo é obrigatório.';
	if (jQuery('#mensagemDataCenter').css('display') != "none"){
		if (jQuery('#frm_nome_empresa').val() == ""){
			messageAlert('#frm_nome_empresa',msg);
			return false;
		}
		if (jQuery('#frm_nome_contato').val() == ""){
			messageAlert('#frm_nome_contato',msg);
			return false;
		}
	}
	var nome = jQuery('#frm_nome_contato').val();
	if (nome == ""){
		messageAlert('#frm_nome_contato',msg);
		return false;
	}
	var email = jQuery('#frm_email').val();
	if (email == ""){
		messageAlert('#frm_email',msg);
		return false;
	}
	if (email.search(/^\w+((-\w+)|(\.\w+))*\@\w+((\.|-)\w+)*\.\w+$/) == -1){
		messageAlert('#frm_email','Digite um e-mail válido!');
		return false;
	}
	if (jQuery('#frm_telefone').val() == ""){
		messageAlert('#frm_telefone',msg);
		return false;
	}
	if (jQuery('#frm_messagem').val() == ""){
		messageAlert('#frm_messagem',msg);
		return false;
	}
	document.getElementById("formEmail").submit();
}

function clearFormLogin() {
	if  (jQuery("#frm_login").val() =="" || jQuery("#frm_senha").val() =="") {
		jQuery("#openModal_erro").click();
		return false;
	}
	else {
		jQuery("#login_hd").submit();
		jQuery("#frm_login").val("");
		jQuery("#frm_senha").val("");
	}
}


