$(document).ready(function() {

	var inputs = $('.maskDatePaste input');
	inputs.each(function() {
		this.oninput = maskDatePaste;
	});

	maskCalendar();
	
	
	/*CHECK MENU */
	if ( $("#menu").length == 1 ) { 
			$(".bt-header").removeClass("notShow");
		} else {
			$(".bt-header").addClass("notShow");
		}
	
	
	
	
	/* show/hide menu */
	$('.bt-header').click(function(event) {
		event.stopPropagation();
		if($(this).hasClass('notShow')){
			$(".menu-drop").css('display','none');
		}else{
			var pos = $(this).position(); 
			$(this).toggleClass('bt-header-hover');
			$('.menu-drop').toggle();
			if($(this).hasClass('pull-right')){
				$('.menu-drop').css({'top': pos.top+52 , 'left' : pos.left-234});
			}else{
				$('.menu-drop').css({'top': pos.top+60 , 'left' : pos.left});
			}	
			
		}
	});
	
	$('html').click(function() {
		$('.bt-header').removeClass('bt-header-hover');
		$('.menu-drop, .block-logout').css('display','none');
	});
	
	/* show/hide logoff */
	$('.bt-drop-logoff').click(function(event) {
		event.stopPropagation();
		var pos = $(this).position(); 
		$(this).next('.block-logout').toggle();
		$(this).next('.block-logout').css({'top': pos.top+50 , 'left' : pos.left-170});
	});
	
	
	
	/* controle das abas menu */
	$('.nav-click').click(function(event) {
		event.stopPropagation();
		if ($(this).hasClass("link1")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group1').css('display', 'block');
			$('.group2, .group3, .group4, .group5, .group6').css('display', 'none');
		} else if ($(this).hasClass("link2")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group2').css('display', 'block');
			$('.group1, .group3, .group4, .group5, .group6').css('display', 'none');
		} else if ($(this).hasClass("link3")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group3').css('display', 'block');
			$('.group1, .group2, .group4, .group5, .group6').css('display', 'none');
		} else if ($(this).hasClass("link4")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group4').css('display', 'block');
			$('.group1, .group2, .group3, .group5, .group6').css('display', 'none');
		} else if ($(this).hasClass("link5")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group5').css('display', 'block');
			$('.group1, .group2, .group3, .group4, .group6').css('display', 'none');
		} else if ($(this).hasClass("link6")) {
			$('.nav-click').closest('li').removeClass("active");
			$(this).closest('li').addClass("active");
			$('.group6').css('display', 'block');
			$('.group1, .group2, .group3, .group4, .group5').css('display', 'none');
		}
	});
	
	
});

function inibirEnter() {
	$("input:text").each(function() {
		$(this).keypress(function(e) {

			if (e.which == 13 || e.which == 13) {
				return false;
			}
			return true;

		});
	});
}
function start() {
	dlgProcessando.show();
}

function stop() {
	dlgProcessando.hide();
}

function maskCalendar() {
	$(":not(.inputDatetime) > input[name*='inputCalendar_input']").mask("99/99/9999");		
	$(".inputDatetime > input[name*='inputCalendar_input']").mask("99/99/9999 99:99");	
}

/**
 * Fecha o componente de mensagem
 * 
 * @returns {Boolean}
 */
function closeMsg() {
	$("#mensagem").html("");
	$("#mensagemFundo").hide();
	return false;
}

function mascaraGlobal(mascara, valor) {
	var mascara_utilizar;
	var mascara_limpa;
	var temp;
	var i;
	var j;
	var caracter;
	var separador;
	var dif;
	var validar;
	var mult;
	var ret;
	var tam;
	var tvalor;
	var valorm;
	var masct;

	tvalor = "";
	ret = "";
	caracter = "#";
	separador = "|";
	mascara_utilizar = "";
	valor = trim(valor);

	if (valor == "") {
		return valor;
	}

	temp = mascara.split(separador);
	dif = 1000;

	valorm = valor;

	// tirando mascara do valor já existente
	for (i = 0; i < valor.length; i++) {
		if (!isNaN(valor.substr(i, 1))) {
			tvalor = tvalor + valor.substr(i, 1);
		}
	}

	valor = tvalor;

	// formatar mascara dinamica
	for (i = 0; i < temp.length; i++) {
		mult = "";
		validar = 0;

		for (j = 0; j < temp[i].length; j++) {
			if (temp[i].substr(j, 1) == "]") {
				temp[i] = temp[i].substr(j + 1);
				break;
			}
			if (validar == 1) {
				mult = mult + temp[i].substr(j, 1)
			}
			;

			if (temp[i].substr(j, 1) == "[") {
				validar = 1;
			}
		}

		for (j = 0; j < valor.length; j++) {
			temp[i] = mult + temp[i];
		}
	}

	// verificar qual mascara utilizar
	if (temp.length == 1) {
		mascara_utilizar = temp[0];
		mascara_limpa = "";
		for (j = 0; j < mascara_utilizar.length; j++) {
			if (mascara_utilizar.substr(j, 1) == caracter) {
				mascara_limpa = mascara_limpa + caracter;
			}
		}
		tam = mascara_limpa.length;
	} else {
		// limpar caracteres diferente do caracter da m?scara
		for (i = 0; i < temp.length; i++) {
			mascara_limpa = "";
			for (j = 0; j < temp[i].length; j++) {
				if (temp[i].substr(j, 1) == caracter) {
					mascara_limpa = mascara_limpa + caracter;
				}
			}

			if (valor.length > mascara_limpa.length) {
				continue;
			} else if (valor.length < mascara_limpa.length) {
				if (dif > (mascara_limpa.length - valor.length)) {
					dif = mascara_limpa.length - valor.length;
					mascara_utilizar = temp[i];
					tam = mascara_limpa.length;
				}
			} else {
				mascara_utilizar = temp[i];
				tam = mascara_limpa.length;
				break;
			}
		}
	}
	// validar tamanho da mascara de acordo com o tamanho do valor
	if (valor.length > tam) {
		valor = valor.substr(0, tam);
	} else if (valor.length < tam) {
		masct = "";
		j = valor.length;
		for (i = mascara_utilizar.length - 1; i >= 0; i--) {
			if (j == 0)
				break;
			if (mascara_utilizar.substr(i, 1) == caracter) {
				j--;
			}
			masct = mascara_utilizar.substr(i, 1) + masct;
		}
		mascara_utilizar = masct;
	}

	// mascarar
	j = mascara_utilizar.length - 1;
	for (i = valor.length - 1; i >= 0; i--) {
		if (mascara_utilizar.substr(j, 1) != caracter) {
			ret = mascara_utilizar.substr(j, 1) + ret;
			j--;
		}
		ret = valor.substr(i, 1) + ret;
		j--;
	}
	return ret;
}
// tirar os espaços das extremidades do valor passado (utilizada pela
// mascaraglobal)
self.trim = function(valor) {
	for (i = 0; i < valor.length; i++) {
		if (valor.substr(i, 1) != " ") {
			valor = valor.substr(i);
			break;
		}
		if (i == valor.length - 1) {
			valor = "";
		}
	}
	for (i = valor.length - 1; i >= 0; i--) {
		if (valor.substr(i, 1) != " ") {
			valor = valor.substr(0, i + 1);
			break;
		}
	}
	return valor;
};

jQuery(document).ready(
		function() {
			jQuery('#listaCnaesDisponiveis').find('th .formatoCodigoCnae')
					.each(function() {
						var inp = jQuery(this);
						inp.keypress(function(event) {

							if (event.which > 47 && event.which < 58) { // caracteres
								// de 0
								// a 9

								if (this.value.length == 4) {
									var pos = this.value.indexOf("-");
									// se nao existe nenhum '-' no codigo da
									// cnae digitado, acrescenta-o apos o quarto
									// digito
									if (pos < 0) {
										this.value = this.value + '-';
									}
								} else if (this.value.length == 6) {
									var pos = this.value.indexOf("/");
									// se nao existe nenhum '/' no codigo da
									// cnae digitado, acrescenta-o apos o sexto
									// digito
									if (pos < 0) {
										this.value = this.value + '/';
									}
								}
							}

							else if (event.which != 37 // seta esquerda
									&& event.which != 39 // seta direita
									&& event.which != 36 // home
									&& event.which != 35 // end
									&& event.which != 45 // hifen
									&& event.which != 47 // barra
									&& event.which != 0) {

								if (event.which != 8 // backspace
										&& event.which != 46) { // delete

									// impede a acao do evento disparado por
									// pressionar a tecla, no caso de nao ser
									// backspace ou delete
									event.preventDefault();
								}
							} else if (event.which == 45 || event.which == 47) { // hifen
								// e
								// barra
								// sao
								// ignorados
								event.preventDefault();
							}
						});
					});
		});

jQuery.maskFloat = function(objTextBox, e) {
	var valor = objTextBox.value ? objTextBox.value : objTextBox.val();
	valor = valor.replace(/^0+/g, '').replace(/^\./, '0,');
	/**
	 * vazio
	 */
	if (valor.length == 0)
		valor = '0,00';
	/**
	 * 1 digito
	 */
	if (valor.length == 1)
		valor = '00' + valor;
	/**
	 * 2 digitos
	 */
	if (valor.length == 2)
		valor = '0' + valor;
	/**
	 * 3 digitos
	 */
	if (valor.length == 3 && valor.indexOf(',') != -1)
		valor = '0' + valor;
	/**
	 * Formata
	 */
	valor = valor.replace(/\D/g, "");
	valor = valor.replace(/[0-9]{15}/, "invalido");
	valor = valor.replace(/(\d{1})(\d{14})$/, "$1.$2");
	valor = valor.replace(/(\d{1})(\d{11})$/, "$1.$2");
	valor = valor.replace(/(\d{1})(\d{8})$/, "$1.$2");
	valor = valor.replace(/(\d{1})(\d{5})$/, "$1.$2");
	valor = valor.replace(/(\d{1})(\d{1,2})$/, "$1,$2");
	if (valor == "invalido") {
		alert("Valor inválido.");
		valor = "0,00";
	}
	try {
		objTextBox.val(valor);
	} catch (e) {
		objTextBox.value = valor;
	}
};

function trataHtml() {
	$("#hiddenHtml").val($("#container").html());

}

function tratarRiscoRespostaSim(valor) {
	if (valor == 2) {
		$("input[name='riscoSim'][value=1]:radio").prop("checked", true);
	} else {
		$("input[name='riscoSim'][value=2]:radio").prop("checked", true);
	}
}
function tratarRiscoRespostaNao(valor) {
	if (valor == 2) {
		$("input[name='riscoNao'][value=1]:radio").prop("checked", true);
	} else {
		$("input[name='riscoNao'][value=2]:radio").prop("checked", true);
	}
}

function maskDate(event) {
	if (event.keyCode != 8) {
		var v = event.target.value;
		if (v.match(/^\d{2}$/) !== null) {
			v = v + '/';
			event.target.value = v;
			return;
		} else if (v.match(/^\d{2}\/\d{2}$/) !== null) {
			v = v + '/';
			event.target.value = v;
			return;
		}
	}
}

function maskDatePaste(event) {
	var v = event.target.value;
	if (v.match(/^\d{8}$/) !== null) {
		var day = v.substr(0, 2);
		var month = v.substr(2, 2);
		var year = v.substr(4, 4);
		event.target.value = day + '/' + month + '/' + year;
	}
}

function validarOpcaoSelecionadaSocioMenor() {
	var checked = $("#declaracaoSocioMenorIncapaz").prop("checked");
	if (checked) {
		btnContinuar.enable();

	} else {
		btnContinuar.disable();
	}
}

function checarDeclaracaoCnpj() {
	var inputMatriz = $(".cnpjEstabelecimentoInputtrue").val();
	if (typeof inputMatriz != 'undefined') {
		if (inputMatriz.length > 0 && inputMatriz != "00.000.000/0000-00") {
			$("#declaracaoCNPJ").prop("checked", false);
		} else {
			$("#declaracaoCNPJ").prop("checked", true);
		}
	}

}

function ehValido(cnpj) {

	cnpj = cnpj.replace(/[^\d]+/g, '');

	if (cnpj == '')
		return false;

	if (cnpj.length != 14)
		return false;

	// Elimina CNPJs invalidos conhecidos
	if (cnpj == "00000000000000" || cnpj == "11111111111111"
			|| cnpj == "22222222222222" || cnpj == "33333333333333"
			|| cnpj == "44444444444444" || cnpj == "55555555555555"
			|| cnpj == "66666666666666" || cnpj == "77777777777777"
			|| cnpj == "88888888888888" || cnpj == "99999999999999")
		return false;

	// Valida DVs
	tamanho = cnpj.length - 2
	numeros = cnpj.substring(0, tamanho);
	digitos = cnpj.substring(tamanho);
	soma = 0;
	pos = tamanho - 7;
	for (i = tamanho; i >= 1; i--) {
		soma += numeros.charAt(tamanho - i) * pos--;
		if (pos < 2)
			pos = 9;
	}
	resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
	if (resultado != digitos.charAt(0))
		return false;

	tamanho = tamanho + 1;
	numeros = cnpj.substring(0, tamanho);
	soma = 0;
	pos = tamanho - 7;
	for (i = tamanho; i >= 1; i--) {
		soma += numeros.charAt(tamanho - i) * pos--;
		if (pos < 2)
			pos = 9;
	}
	resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
	if (resultado != digitos.charAt(1))
		return false;

	return true;

}
function setSize() {

	$(".ui-dialog").css({
		"left" : "50%",
		"top" : "50%",
		"width" : 600,
		"height" : 200,
		"margin-left" : -300,
		"margin-top" : -100
	});
}

function setSizeInputTimeout() {

	$(".ui-dialog").css({
		"left" : "50%",
		"top" : "50%",
		"width" : 400,
		"height" : 180,
		"margin-left" : -200,
		"margin-top" : -90
	});
}

function setSizeInputEndereco() {
	$(".ui-dialog").css({
		"left" : "50%",
		"top" : "50%",
		"width" : 850,
		"height" : 350,
		"margin-left" : -425,
		"margin-top" : -175

	});
}

function setSizeConfirmacaoCnpj() {

	$(".ui-dialog").css({
		"left" : "50%",
		"top" : "50%",
		"width" : 600,
		"height" : 250,
		"margin-left" : -300,
		"margin-top" : -125
	});
}

function disallowSpecialChars(key) {
	digit = key.keyCode;
	if (digit > 64 || digit == 32) {
		return true;
	}
	return false;
}

function redirectToindex() {
	window.location = "/rle";
}

function redirectTo(url){
	window.location = url;
}

function notificarDeclaracaoCnpj(event) {
	if ($('#resultadoValidacao').hasClass('sucesso')) {
		if ($('#declaracaoCNPJ').prop('checked')) {
			dlgAlertaDeclaracaoCnpj.show();
		} else {
			confirmarSolicitacao();
		}
	} else {
		rolarParaInicioDaPagina();
	}
}

function confirmarSolicitacaoPorNotificacao() {
	dlgAlertaDeclaracaoCnpj.hide();
	confirmarSolicitacao();
}

function acertarHeaderScrollableDatatable(IdDatatable) {
	$("#" + IdDatatable + " .ui-datatable-scrollable-header").removeClass(
			"ui-widget-header");
}

function rolarParaInicioDaPagina() {
	$(window).scrollTop(0);
}

function incrementarPaginacao(widgetVar) {
	var pagina = PF(widgetVar).getPaginator().getCurrentPage();
	PF(widgetVar).getPaginator().setPage(++pagina);
}

function decrementarPaginacao(widgetVar) {
	var pagina = PF(widgetVar).getPaginator().getCurrentPage();
	if (pagina > 0) {
		PF(widgetVar).getPaginator().setPage(--pagina);
	}

}

function setPaginatorFocusable() {
	$('.ui-paginator-page').each(function() {
		$(this).attr('tabindex', '0');
		$(this).keyup(function(e) {
			if (e.which == 13 || e.which == 32) {
				$(this).click();

			}
		});

	});
}
function verificarSucessoEndereco() {
	if ($('#resultadoValidacaoEndereco').hasClass('sucesso')) {
		dlgInputEndereco.hide();
	}
}

function verificarCpfPreenchido() {
	var cpf = $('#cpf').val();
	cpf = $.trim(cpf);
	if(cpf != "..-" && cpf!= "")  {
		verificarCpfJaCadastrado();
		}
}

function utf8ToBase64(utf8String) {
	return window.btoa(unescape(encodeURIComponent(utf8String)));
}

function base64ToUtf8(base64String) {
	return decodeURIComponent(escape(window.atob(base64String)));
}

function goToBase64Url(encodedUrl) {
	var url = base64ToUtf8(encodedUrl);
	window.location = url;
}

function empresaEIsemAdministrador(naturezaJuridica) {
	if(naturezaJuridica == 'EI') {
		$("#pnlSolicitacaoAbertura").addClass('possuiNaturezaEI');
	} else {
		$("#pnlSolicitacaoAbertura").removeClass('possuiNaturezaEI');
	}
}

function trocarNomeAba(naturezaJuridica){
	 var tabSocios = $('a[href$="#tabViewRegistro:tabSociosTitular"]');
	 if(naturezaJuridica.trim() == '') {
		 tabSocios.html('Sócios ou Titular');
	 }else if(naturezaJuridica == 'LTDA') {
		 tabSocios.html('Sócios');
	 } else {
		 tabSocios.html('Titular');
	 }
	 
}

$(document).on('keypress','.clickableSpan',function(e) {
	
	if (e.which == 13 || e.which == 13 || e.which == 32 || e.which == 32) {
		$(this).click();
		
	}

});

function selectProxima(tabView,proxima,widgetVar){
	if(proxima == 1) {
		if($('#'+tabView+' ul li:nth-child(2)').css('display') == 'none') {
				proxima = 2;
			}
		}
	if(proxima == 3) {
		if($('#'+tabView+' ul li:nth-child(4)').css('display') == 'none') {
			proxima = 4;
		}
	
	}
		PF(widgetVar).select(proxima);
		
	}
function selectAnterior(tabView,anterior,widgetVar){
	if(anterior == 1) {
		if($('#'+tabView+' ul li:nth-child(2)').css('display') == 'none') {
				anterior = 0;
			}
		}
	if(anterior == 3) {
		if($('#'+tabView+' ul li:nth-child(4)').css('display') == 'none') {
			anterior = 2;
		}
	
	}
		PF(widgetVar).select(anterior);
	} 

function desabilitarESelecionar(selectedId,disabledId) {
	$("#"+selectedId).attr('disabled','disabled');
	$("#"+disabledId).removeAttr('disabled');
		
	}
