/**
 *
 * Arquivo de funções gerais do Site
 * Autor: BiTS - Business IT Solutions
 *
 */

//Funções que inicializam com o Site
$(document).ready(function(){

    //Url Padrão do Site
    base_url = base_url();
    
    //Rollover de Imagens
    jquery_hover_img.init();

    //Menu Principal
    menu.init();

	//Máscaras Javascript
    $('input:text').setMask();

    //Adiciona o atributo title nas imagens baseado no alt
    $('img, input').each(function(){
        alt = $(this).attr('alt');
        $(this).attr('title',alt);
    });

	//Google MAPS
	if($('.localizacao_mapa').length > 0){
		$('.localizacao_mapa').find('small, br').remove();
	}
	
	/*if($('.texarea_ativa_fale').length > 0){
		$('.texarea_ativa_fale').limit('255', '.img_maximo_linhas_fale');
	}*/

    $('.menu ul li.submenu ul').each(function(){
        $(this).find('li:last').css('background','none');
    });

	if($('#slide').length > 0){

		featuredcontentglider.init({
			gliderid			: "slide",		//ID of main glider container
			contentclass		: "item_slide",	//Shared CSS class name of each glider content
			togglerid			: "p-select",	//ID of toggler container
			remotecontent		: "",			//Get gliding contents from external file on server? "filename" or "" to disable
			selected			: 0,			//Default selected content index (0=1st)
			persiststate		: false,		//Remember last content shown within browser session (true/false)?
			speed				: 1000,			//Glide animation duration (in milliseconds)
			direction			: "leftright",	//set direction of glide: "updown", "downup", "leftright", or "rightleft"
			autorotate			: true,			//Auto rotate contents (true/false)?
			autorotateconfig	: [6000, 2]		//if auto rotate enabled, set [milliseconds_btw_rotations, cycles_before_stopping]
		});
		var flag = true;
		trocaTopo();
		$('a.toc').click(function(){
			clearTimeout(troca);
			troca = setTimeout('trocaTopo2()', 9999999);
			//flag = false;
			//alert($('#slide').lenght);
			//featuredcontentglider.cancelautorotate(0);
			//clearTimeout(troca);
			//limpaTempo($(this));
				
		});
		
		$('a.toc').mouseover(function(){
			//limpaTempo($(this));
			//clearTimeout(troca);
			//trocaTopo();
			//$(this).click(function(){
				//return false;
			//});
			
		});
		

	}

});

/**
 * Função que determina a URL Padrão do Site
 *
 * @return string
 */
function base_url(){

    baseUrl = '';

    if($('base').length > 0){
        baseUrl = $('base').attr('href');
    }

    return baseUrl;

}

/**
 * Função de Área em Construção
 *
 * @return string
 */
function construcao(){
    jQuery.facebox('Esta área do site encontra-se em construção');
	return false;
}

/**
 * var valEmail
 * Expressão regular de validação de e-mail
 */
var valEmail = /^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;

/**
 * Função de Validação do Formulário Onde Encontrar
 *
 * @return boolean
 */
function validaOndeEncontrar(){

	msg = "";

	if(document.getElementById("estado").value == "" || document.getElementById("estado").value == 0){
		msg += "<span>Estado não preenchido.</span><br />";
    }

	if(document.getElementById("cidade").value == ""){
		msg += "<span>Cidade não preenchida.</span><br />";
    }

	if(msg != ""){
		msg = "<div id=\"topoValida\">Os seguintes campos encontram-se com problemas:<br /><br /></div>" + msg;
		jQuery.facebox(msg);
		return false;
	}

}

/**
 * Função de Validação do Formulário de Newsletter
 *
 * @return boolean
 */
/*
function validaInformativo(){

	msg = "";
	
	if(document.getElementById("nome").value == "Nome completo"){
		msg += "<span>Nome não preenchido.</span><br />";
    }

	if(document.getElementById("endereco").value == "Endereço"){
		msg += "<span>Endereço não preenchida.</span><br />";
    }
    
    if(document.getElementById("cep").value == "CEP"){
		msg += "<span>CEP não preenchida.</span><br />";
    }


	if (msg != "") {
		msg = "<div id=\"topoValida\">O seguinte campo encontra-se com problemas:<br /><br /></div>" + msg;
		jQuery.facebox(msg);
	} else {
		x_informativo($('#nome').val(), $('#endereco').val(), $('#cep').val());
	}

    return false;
}*/

/**
 * Função de Validação do Formulário de Fale Conosco
 *
 * @return boolean
 */
function validaFaleConosco(){

	msg = "";

	if(document.getElementById("nome").value == ""){
		msg += "<span>Nome não preenchido.</span><br />";
    }

	if(document.getElementById("e_mail").value == ""){
		msg += "<span>E-mail não preenchido.</span><br />";
    } else if (!valEmail.test(document.getElementById("e_mail").value)) {
        msg += "<span>E-mail inválido. <strong>"+document.getElementById("e_mail").value+"</strong></span><br />";
    }

	if(document.getElementById("telefone").value == ""){
		msg += "<span>Telefone não preenchido.</span><br />";
    } else if(document.getElementById("telefone").value.length < 13){
		msg += "<span>Telefone inválido. <strong>Formato correto:</strong> (55) 3333-3333</span><br />";
	}

	if(msg != ""){
		msg = "<div id=\"topoValida\">Os seguintes campos encontram-se com problemas:<br /><br /></div>" + msg;
		jQuery.facebox(msg);
		return false;
	}

}

function validaTrabalheConosco(){

	msg = "";

	if(document.getElementById("nome_trab").value == ""){
		msg += "<span>Nome não preenchido.</span><br />";
    }

	if(document.getElementById("e_mail_trab").value == ""){
		msg += "<span>E-mail não preenchido.</span><br />";
    } else if (!valEmail.test(document.getElementById("e_mail_trab").value)) {
        msg += "<span>E-mail inválido. <strong>"+document.getElementById("e_mail_trab").value+"</strong></span><br />";
    }

	if(document.getElementById("telefone_trab").value == ""){
		msg += "<span>Telefone não preenchido.</span><br />";
    } else if(document.getElementById("telefone_trab").value.length < 13){
		msg += "<span>Telefone inválido. <strong>Formato correto:</strong> (55) 3333-3333</span><br />";
	}
	
	if(document.getElementById("arquivo").value == ""){
		msg += "<span>Arquivo não selecionado.</span><br />";
    }

	if(msg != ""){
		msg = "<div id=\"topoValida\">Os seguintes campos encontram-se com problemas:<br /><br /></div>" + msg;
		jQuery.facebox(msg);
		return false;
	}

}

/**
 * Função de Validação do Formulário de SAC
 *
 * @return boolean
 */
function validaSac(){

	msg = "";

	if(document.getElementById("nome").value == ""){
		msg += "<span>Nome não preenchido.</span><br />";
    }

	if(document.getElementById("e_mail").value == ""){
		msg += "<span>E-mail não preenchido.</span><br />";
    } else if (!valEmail.test(document.getElementById("e_mail").value)) {
        msg += "<span>E-mail inválido. <strong>"+document.getElementById("e_mail").value+"</strong></span><br />";
    }

	if(document.getElementById("telefone").value == ""){
		msg += "<span>Telefone não preenchido.</span><br />";
    } else if(document.getElementById("telefone").value.length < 13){
		msg += "<span>Telefone inválido. <strong>Formato correto:</strong> (55) 3333-3333</span><br />";
	}

    if(document.getElementById("tex_perg").value == ""){
		msg += "<span>Pergunta não preenchida.</span><br />";
    }

	if(msg != ""){
		msg = "<div id=\"topoValida\">Os seguintes campos encontram-se com problemas:<br /><br /></div>" + msg;
		jQuery.facebox(msg);
		return false;
	}

}

function getCidades(id_estado){
	document.getElementById('carregando_cidade').style.display = 'block';
	document.getElementById('combo_cidade').style.display = 'none';

    var msg ='';
    vet_dados = 'id_estado='+ id_estado;
   
    base_url  = $('base').attr('href')+"index.php/home/getCidades";

    $.ajax({
        type: "POST",
        url: base_url,
        data: vet_dados,
        success: function(msg) {
			document.getElementById('carregando_cidade').style.display = 'none';
			document.getElementById('combo_cidade').style.display = 'block';
			document.getElementById('combo_cidade').innerHTML = msg;
		}
	});

}

function getLojas(id_cidade){

	document.getElementById('carregando_lojas').style.display = 'block';
	document.getElementById('combo_loja').style.display = 'none';

    var msg ='';
    vet_dados = 'id_cidade='+ id_cidade;
   
    base_url  = $('base').attr('href')+"index.php/home/getLojas";

    $.ajax({
        type: "POST",
        url: base_url,
        data: vet_dados,
        success: function(msg) {
			document.getElementById('carregando_lojas').style.display = 'none';
			document.getElementById('combo_loja').style.display = 'block';
			document.getElementById('combo_loja').innerHTML = msg;
		}
	});

}

function mudaAba(elemento, id){

	$('.bg_botoes a img').each(function(){
		remove = removeTextoImagem($(this).attr('src'), '_ativo');
		$(this).attr('src',remove);
	});

	adiciona = adicionaTextoImagem($(elemento).find('img').attr('src'), '_ativo');
	$(elemento).find('img').attr('src',adiciona);

	$('.texto_carac:visible').css('display','none');
	$('#texto_carac' + id).css('display','block');

}

function adicionaTextoImagem(imagem, texto){
	var img_total = '';
	src       = imagem;
	extensao  = src.substring(src.lastIndexOf(".")).toLowerCase();
	img_nova  = src.replace(extensao, '');
	img_total = img_nova + texto + extensao;
	return img_total;
}

function removeTextoImagem(imagem, texto){
	src        = imagem;
	img_antiga = src.replace(texto, '');
	return img_antiga;
}

function x_paginacao_ajax(link){
	$.ajax({
        type: "POST",
        url: link,
        data: "",
        success: function(msg) {
			alert(msg);
		}
	});
}

var troca = 0;

function trocaTopo(){

	var tempo = 5000;

	elemento = $('#p-select a.selected').next('a');

	elemento.click();

	if(elemento.html() == null){
		$('#p-select a:first').click();
	}

	troca = setTimeout('trocaTopo()', tempo);

}

function trocaTopo2(){

	var tempo = 9999999;

	elemento = $('#p-select a.selected').next('a');

	elemento.click();

	if(elemento.html() == null){
		$('#p-select a:first').click();
	}

	troca = setTimeout('trocaTopo2()', tempo);

}

function limpaTempo(elemento){

	clearTimeout(troca);

	$(elemento).click();
	trocaTopo();

	setTimeout('trocaTopo()', 4000);

}

function limpaFunction(){

	clearTimeout(troca);

	setTimeout('trocaTopo()', 4000);

}

function modalInformativo(){
	jQuery.facebox({ ajax: $('base').attr('href')+'index.php/home/modal' });
}

//MASCARAS JAVASCRIPT
//http://www.meiocodigo.com/projects/meiomask/
(function(B){var A=(window.orientation!=undefined);B.extend({mask:{rules:{"z":/[a-z]/,"Z":/[A-Z]/,"a":/[a-zA-Z]/,"*":/[0-9a-zA-Z]/,"@":/[0-9a-zA-ZÃƒÂ§Ãƒâ€¡ÃƒÂ¡Ãƒ ÃƒÂ£ÃƒÂ©ÃƒÂ¨ÃƒÂ­ÃƒÂ¬ÃƒÂ³ÃƒÂ²ÃƒÂµÃƒÂºÃƒÂ¹ÃƒÂ¼]/},fixedChars:"[(),.:/ -]",keyRepresentation:{8:"backspace",9:"tab",13:"enter",27:"esc",37:"left",38:"up",39:"right",40:"down",46:"delete"},ignoreKeys:[8,9,13,16,17,18,27,33,34,35,36,37,38,39,40,45,46,91,116],iphoneIgnoreKeys:[10,127],signals:["+","-"],options:{attr:"mask",mask:null,type:"fixed",defaultValue:"",signal:false,onInvalid:function(){},onValid:function(){},onOverflow:function(){}},masks:{"phone":{mask:"(99) 9999-9999"},"phone-us":{mask:"(999) 9999-9999"},"cpf":{mask:"999.999.999-99"},"cnpj":{mask:"99.999.999/9999-99"},"date":{mask:"39/19/9999"},"date-us":{mask:"19/39/9999"},"cep":{mask:"99999-999"},"time":{mask:"29:69"},"cc":{mask:"9999 9999 9999 9999"},"integer":{mask:"999.999.999.999",type:"reverse"},"decimal":{mask:"99,999.999.999.999",type:"reverse",defaultValue:"000"},"decimal-us":{mask:"99.999,999,999,999",type:"reverse",defaultValue:"000"},"signed-decimal":{mask:"99,999.999.999.999",type:"reverse",defaultValue:"+000"},"signed-decimal-us":{mask:"99,999.999.999.999",type:"reverse",defaultValue:"+000"}},init:function(){if(!this.hasInit){var C;this.ignore=false;this.fixedCharsReg=new RegExp(this.fixedChars);this.fixedCharsRegG=new RegExp(this.fixedChars,"g");for(C=0;C<=9;C++){this.rules[C]=new RegExp("[0-"+C+"]")}this.hasInit=true}},set:function(G,D){var C=this,E=B(G),F="maxLength";this.init();return E.each(function(){var N=B(this),O=B.extend({},C.options),M=N.attr(O.attr),H="",J=C.__getPasteEvent();H=(typeof D=="string")?D:(M!="")?M:null;if(H){O.mask=H}if(C.masks[H]){O=B.extend(O,C.masks[H])}if(typeof D=="object"){O=B.extend(O,D)}if(B.metadata){O=B.extend(O,N.metadata())}if(O.mask!=null){if(N.data("mask")){C.unset(N)}var I=O.defaultValue,L=N.attr(F),K=(O.type=="reverse");O=B.extend({},O,{maxlength:L,maskArray:O.mask.split(""),maskNonFixedCharsArray:O.mask.replace(C.fixedCharsRegG,"").split(""),defaultValue:I.split("")});if(K){N.css("text-align","right")}if(N.val()!=""){N.val(C.string(N.val(),O))}else{if(I!=""){N.val(C.string(I,O))}}N.data("mask",O);N.removeAttr(F);N.bind("keydown",{func:C._keyDown,thisObj:C},C._onMask).bind("keyup",{func:C._keyUp,thisObj:C},C._onMask).bind("keypress",{func:C._keyPress,thisObj:C},C._onMask).bind(J,{func:C._paste,thisObj:C},C._delayedOnMask)}})},unset:function(D){var C=B(D),E=this;return C.each(function(){var H=B(this);if(H.data("mask")){var F=H.data("mask").maxlength,G=E.__getPasteEvent();if(F!=-1){H.attr("maxLength",F)}H.unbind("keydown",E._onMask).unbind("keypress",E._onMask).unbind("keyup",E._onMask).unbind(G,E._delayedOnMask).removeData("mask")}})},string:function(F,D){this.init();var E={};if(typeof F!="string"){F=String(F)}switch(typeof D){case"string":if(this.masks[D]){E=B.extend(E,this.masks[D])}else{E.mask=D}break;case"object":E=D;break}var C=(E.type=="reverse");this._insertSignal(C,F,E);return this.__maskArray(F.split(""),E.mask.replace(this.fixedCharsRegG,"").split(""),E.mask.split(""),C,E.defaultValue,E.signal)},_onMask:function(C){var E=C.data.thisObj,D={};D._this=C.target;D.$this=B(D._this);if(D.$this.attr("readonly")){return true}D.value=D.$this.val();D.nKey=E.__getKeyNumber(C);D.range=E.__getRangePosition(D._this);D.valueArray=D.value.split("");D.data=D.$this.data("mask");D.reverse=(D.data.type=="reverse");return C.data.func.call(E,C,D)},_delayedOnMask:function(C){C.type="paste";setTimeout(function(){C.data.thisObj._onMask(C)},1)},_keyDown:function(D,E){var C=A?this.iphoneIgnoreKeys:this.ignoreKeys;this.ignore=(B.inArray(E.nKey,C)>-1);if(this.ignore){E.data.onValid.call(E._this,this.keyRepresentation[E.nKey]?this.keyRepresentation[E.nKey]:"",E.nKey)}return A?this._keyPress(D,E):true},_keyUp:function(C,D){if(D.nKey==9&&(B.browser.safari||B.browser.msie)){return true}return this._paste(C,D)},_paste:function(D,E){this._changeSignal(D.type,E);var C=this.__maskArray(E.valueArray,E.data.maskNonFixedCharsArray,E.data.maskArray,E.reverse,E.data.defaultValue,E.data.signal);E.$this.val(C);if(!E.reverse&&E.data.defaultValue.length&&(E.range.start==E.range.end)){this.__setRange(E._this,E.range.start,E.range.end)}return true},_keyPress:function(J,C){if(this.ignore||J.ctrlKey||J.metaKey||J.altKey){return true}this._changeSignal(J.type,C);var K=String.fromCharCode(C.nKey),M=C.range.start,G=C.value,E=C.data.maskArray;if(C.reverse){var F=G.substr(0,M),I=G.substr(C.range.end,G.length);G=(F+K+I);if(C.data.signal&&(M-C.data.signal.length>0)){M-=C.data.signal.length}}var L=G.replace(this.fixedCharsRegG,"").split(""),D=this.__extraPositionsTill(M,E);C.rsEp=M+D;if(!this.rules[E[C.rsEp]]){C.data.onOverflow.call(C._this,K,C.nKey);return false}else{if(!this.rules[E[C.rsEp]].test(K)){C.data.onInvalid.call(C._this,K,C.nKey);return false}else{C.data.onValid.call(C._this,K,C.nKey)}}var H=this.__maskArray(L,C.data.maskNonFixedCharsArray,E,C.reverse,C.data.defaultValue,C.data.signal,D);C.$this.val(H);return(C.reverse)?this._keyPressReverse(J,C):this._keyPressFixed(J,C)},_keyPressFixed:function(C,D){if(D.range.start==D.range.end){if((D.rsEp==0&&D.value.length==0)||D.rsEp<D.value.length){this.__setRange(D._this,D.rsEp,D.rsEp+1)}}else{this.__setRange(D._this,D.range.start,D.range.end)}return true},_keyPressReverse:function(C,D){if(B.browser.msie&&((D.rangeStart==0&&D.range.end==0)||D.rangeStart!=D.range.end)){this.__setRange(D._this,D.value.length)}return false},_setMaskData:function(F,C,E){var D=F.data("mask");D[C]=E;F.data("mask",D)},_changeSignal:function(D,E){if(E.data.signal!==false){var C=(D=="paste")?E.value.substr(0,1):String.fromCharCode(E.nKey);if(B.inArray(C,this.signals)>-1){if(C=="+"){C=""}this._setMaskData(E.$this,"signal",C);E.data.signal=C}}},_insertSignal:function(C,F,E){if(C&&E.defaultValue){if(typeof E.defaultValue=="string"){E.defaultValue=E.defaultValue.split("")}if(B.inArray(E.defaultValue[0],this.signals)>-1){var D=F.substr(0,1);E.signal=(B.inArray(D,this.signals)>-1)?D:E.defaultValue[0];if(E.signal=="+"){E.signal=""}E.defaultValue.shift()}}},__getPasteEvent:function(){return(B.browser.opera||(B.browser.mozilla&&parseFloat(B.browser.version.substr(0,3))<1.9))?"input":"paste"},__getKeyNumber:function(C){return(C.charCode||C.keyCode||C.which)},__maskArray:function(H,G,E,D,C,I,F){if(D){H.reverse()}H=this.__removeInvalidChars(H,G);if(C){H=this.__applyDefaultValue.call(H,C)}H=this.__applyMask(H,E,F);if(D){H.reverse();if(!I||I=="+"){I=""}return I+H.join("").substring(H.length-E.length)}else{return H.join("").substring(0,E.length)}},__applyDefaultValue:function(E){var C=E.length,D=this.length,F;for(F=D-1;F>=0;F--){if(this[F]==E[0]){this.pop()}else{break}}for(F=0;F<C;F++){if(!this[F]){this[F]=E[F]}}return this},__removeInvalidChars:function(E,D){for(var C=0;C<E.length;C++){if(D[C]&&this.rules[D[C]]&&!this.rules[D[C]].test(E[C])){E.splice(C,1);C--}}return E},__applyMask:function(E,C,F){if(typeof F=="undefined"){F=0}for(var D=0;D<E.length+F;D++){if(C[D]&&this.fixedCharsReg.test(C[D])){E.splice(D,0,C[D])}}return E},__extraPositionsTill:function(E,C){var D=0;while(this.fixedCharsReg.test(C[E])){E++;D++}return D},__setRange:function(E,F,C){if(typeof C=="undefined"){C=F}if(E.setSelectionRange){E.setSelectionRange(F,C)}else{var D=E.createTextRange();D.collapse();D.moveStart("character",F);D.moveEnd("character",C-F);D.select()}},__getRangePosition:function(D){if(!B.browser.msie){return{start:D.selectionStart,end:D.selectionEnd}}var E={start:0,end:0},C=document.selection.createRange();E.start=0-C.duplicate().moveStart("character",-100000);E.end=E.start+C.text.length;return E}}});B.fn.extend({setMask:function(C){B.invalid;return B.mask.set(this,C)},unsetMask:function(){return B.mask.unset(this)}})})(jQuery)

