var koll = {
	ajax: function (area) {
		return __URL_HOME__+"/ajax.php?action="+area;
	},
	pesq: {
		insert: function (filtro) {
			if (/^(adj|prox)$/.test(filtro)) {
				var a = prompt(filtro,5);
				if (!a || /\D/.test(a)) {
					return false;
				};
				filtro += a;
			} else if (/^(\$)$/.test(filtro)) {
				var f = prompt("$", "");
				filtro += f || "";
			};
			var	q = document.getElementById("q"),
				filtro = (/[ ]$/.test(q.value) ? "" : " ")+filtro+(filtro == "$" ? "" : " ");
			q.value += filtro;
			return false;
		},
		message: function () {
			var	html =		'<div id="bodyAlpha">'+
							'<div id="bodyAlphaBG" onclick="return false"></div>'+
							'<div id="bodyAlphaMSG">'+
								'<strong style="font-size:22px;color:#465e5e">'+
									'<span style="display:block;background-image:url('+__URL_HOME__+'/img/loading.gif);width:43px;height:43px;margin-left:133px"></span>'+
								'</strong><br />'+
								'Aguarde enquanto o sistema processa sua solicitação.'+
							'</div>'+
						'</div>',
				borderRadius =	5,
				boxShadow =	"0px 5px 10px #000000",
				opacity =	85,
				padding =	20,
				wid =		350,
				hei =		180;
			$("body").append(html);
			$(document).scrollTop(0);
			$("#bodyAlpha").css({
				position:"absolute",
				float:"left",
				width:$(document).width(),
				height:$(document).height(),
				top:0,left:0,
				zIndex:997
			});
			$("#bodyAlphaBG").css({
				position:"absolute",
				float:"left",
				width:"100%",
				height:"100%",
				top:0,left:0,
				backgroundColor:"#000",
				opacity:(opacity / 100),
				"-o-opacity":(opacity / 100),
				"-moz-opacity":(opacity / 100),
				"-webkit-opacity":(opacity / 100),
				filter:"alpha(opacity="+opacity+")",
				zIndex:998
			});
			$("#bodyAlphaMSG").css({
				position:"absolute",
				float:"left",
				width:(wid - (padding * 2)),
				height:(hei - (padding * 2)),
				top:((screen.availHeight / 2) - hei),
				left:(($(document).width() - wid) / 2),
				"background":"#FFF url("+__URL_HOME__+"/img/alerta.png)",
				color:"#465e5e",
				border:"1px SOLID #444",
				padding:20,
				textAlign:"center",
				fontSize:20,
				fontWeight:"normal",
				"box-shadow":boxShadow,
				"-o-box-shadow":boxShadow,
				"-moz-box-shadow":boxShadow,
				"-webkit-box-shadow":boxShadow,
				zIndex:999
			});
			return true;
		}
	},
	usuario: {
		mostra_log: function(historico) {
			var content = "";
			for (var i in historico) {
				var h = historico[i];
				content +=	"<hr />[IP: "+h.ip_address+"] - "+h.date+" - "+h.tipo_log+"\n"+h.conteudo;
			};
			content =	'<pre style="height:400px;width:560px;overflow-x:auto;overflow-y:scroll">'+
						'<h2>Últimos 30 registros</h2>'+
						content+
					'</pre>';
			popup.mostra(content, [{
			    nome:"fechar",
			    callback:function(){popup.fecha()}
			}]);
			return false;
		},
		checkForm: function() {
			var	message	= [],
				sexo	= ($("#sexo-m")[0].checked ? "masculino" : ($("#sexo-f")[0].checked ? "feminino" : false));
			if ($("#nome").val() == "") {
				message[message.length] = "O nome deve ser digitado.";
			};
			if ($("#email").val() == "") {
				message[message.length] = "O email deve ser digitado.";
			};
			if ($("#senha").val() != $("#senha2").val()) {
				message[message.length] = "As senhas não conferem.";
			} else if ($("#senha").val().length > 0 && $("#senha").val().length < 5) {
				message[message.length] = "A senha deve conter ao menos 5 dígitos.";
			} else if (/[^a-z0-9]/i.test($("#senha").val())) {
				message[message.length] = "A senha deve conter apenas letras e números.";
			};
			if (!sexo) {
				message[message.length] = "Escolha um sexo.";
			};
			if ($("#escolaridade").val() == "") {
				message[message.length] = "Digite sua escolaridade.";
			};
			if ($("#id_profissao").val() == "0") {
				message[message.length] = "Selecione uma profissão.";
			};
			if ($("#empresa").val() == "") {
				message[message.length] = "Digite o nome da empresa que trabalha.";
			};
			if ($("#endereco").val() == "") {
				message[message.length] = "Digite seu endereço completo, incluindo número, complemento, etc.";
			};
			if ($("#telefone").val() == "") {
				message[message.length] = "Digite seu telefone.";
			};
			if ($("#cidade").val() == "") {
				message[message.length] = "Digite sua cidade.";
			};
			if ($("#uf").val() == "0") {
				message[message.length] = "Selecione um estado.";
			};
			if ($("#pais").val() == "") {
				message[message.length] = "Digite seu país.";
			};
			if (message.length > 0) {
				alert(message.join("\n"));
			};
			return (message.length == 0);
		},
		recuperaSenhaConfirma: function() {
			var	senha	= $("#senha").val(),
				conf	= $("#csenha").val();
			if (/[^a-z0-9]/i.test(senha)) {
				alert("A senha deve conter apenas letras e números.");
				return false;
			};
			if (senha.length < 5) {
				alert("A senha deve conter ao menos 5 caracteres.");
				return false;
			};
			if (senha != conf) {
				alert("A senha e a confirmação de senha estão diferentes.");
				return false;
			};
			return true;
		},
		recuperaSenha: function(texto) {
			var email = $("#email").val();
			if (email == "") {
				alert(texto);
				return false;
			};
			if (!confirm("O sistema irá gerar uma nova senha e enviar para seu e-mail!\nContinuar?")) {
				return false;
			};
			var url = koll.ajax("recuperaSenha");
			$.post(url, {email:email}, function(retorno) {
				alert(retorno);
			});
			return false;
		},
		cadastrar:{
			parans:{
				id_usuario:0
			},
			salva:{
				loading:'<div id="loading-image" style="font-weight:bold;font-size:10pt;color:#9A9;text-align:center"><span style="display:block;float:left;width:43px;height:43px;background-image:url('+__URL_HOME__+'/img/loading.gif)"></span><br class="clean" />Aguarde um montento, por favor!<br />Sua solicitação está sendo processada...</div>',
				url:false,
				email:function() {
					this.url = koll.ajax("cadastrar");
					var	parans	= koll.usuario.cadastrar.parans;
					parans.email = $("#email").val();
					$("#cadastrar-email").hide().after(this.loading);
					$.post(this.url, {dados:parans}, function(retorno){
						$("#loading-image").remove();
						if (!/^\d+$/.test(retorno)) {
							if (/\[CONFIRMA\]/.test(retorno) && confirm(retorno.replace("[CONFIRMA]", "Gostaria de tentar recuperar sua senha?"))) {
								location.href = "index.php";
							} else if (!/\[CONFIRMA\]/.test(retorno)) {
								alert(retorno);
							};
							$("#cadastrar-email").show();
							return false;
						};
						retorno = parseInt(retorno);
						if (retorno == 0 || isNaN(retorno)) {
							alert("Houve um erro ao enviar seu e-mail, tente novamente mais tarde.");
							$("#cadastrar-email").fadeIn();
							return false;
						};
						parans.id_usuario = retorno;
						$(".cadastrar .email-digitado").html(parans.email);
						koll.usuario.cadastrar.parans = parans;
						$("#cadastrar-senha").fadeIn();
					});
				},
				senha:function() {
					var	parans	= koll.usuario.cadastrar.parans,
						senha	= $("#senha").val(),
						conf	= $("#senha_confirma").val();
					if (/[^a-z0-9]/i.test(senha)) {
						alert("A senha deve conter apenas letras e números.");
						return false;
					};
					if (senha.length < 5) {
						alert("A senha deve conter ao menos 5 caracteres.");
						return false;
					};
					if (senha != conf) {
						alert("A senha e a confirmação de senha estão diferentes.");
						return false;
					};
					parans.senha = senha;
					$("#cadastrar-senha").hide().after(this.loading);
					$.post(this.url, {dados:parans}, function(retorno){
						retorno = parseInt(retorno);
						$("#loading-image").remove();
						if (retorno == 0 || isNaN(retorno)) {
							alert("Houve um erro ao salvar sua senha, aguarde 1 minuto e tente novamente.");
							$("#cadastrar-senha").fadeIn();
							return false;
						};
						parans.senha = "";
						koll.usuario.cadastrar.parans = parans;
						$("#cadastrar-dados").fadeIn();
					});
				},
				dados:function() {
					var	parans	= koll.usuario.cadastrar.parans,
						temp	= {},
						erro	= false;
					$("#cadastrar-dados input, #cadastrar-dados select").each(function(){
						if ($(this).val() == "" || (this.id != "id_tratamento" && ($(this).val() == "0" || $(this).val() == 0))) {
							erro = true;
							alert("Você deve preencher todos os campos.");
							return false;
						};
						temp[this.name] = $(this).val();
					});
					if (erro) {
						return false;
					};
					for (var i in temp){
						parans[i] = temp[i];
					};
					parans.dt_nascimento = parans.dt_nascimento.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3-$2-$1");
					$("#cadastrar-dados").hide().after(this.loading);
					$.post(this.url, {dados:parans}, function(retorno){
						retorno = parseInt(retorno);
						$("#loading-image").remove();
						if (retorno == 0 || isNaN(retorno)) {
							alert("Houve um erro ao salvar seus dados cadastrais, aguarde 1 minuto e tente novamente.");
							$("#cadastrar-dados").fadeIn();
							return false;
						};
						koll.usuario.cadastrar.parans = parans;
						$("#cadastrar-concluido").fadeIn();
					});
				}
			}
		},
		del: function(id_usuario) {
			if (!confirm("Você está preste a excluir este usuário, confirma?")) {
				return false;
			};
			var url = koll.ajax("delete-usuario");
			$.post(url, {id_usuario:id_usuario}, function(){
				alert("Usuário excluido com sucesso.");
				$("#listagem-"+id_usuario).fadeOut(function(){
					$(this).remove();
				});
			});
		}
	},
	tipo: {
		del: function(id_tipo) {
			if (!confirm("Você está preste a excluir este tipo, confirma?")) {
				return false;
			};
			var url = koll.ajax("delete-tipo");
			$.post(url, {id_tipo:id_tipo}, function(){
				alert("Tipo excluido com sucesso.");
				$("#listagem-"+id_tipo).fadeOut(function(){
					$(this).remove();
				});
			});
		},
		unificar: function() {
			var	tipos = [];
				novo_tipo = false,
				url = koll.ajax("unifica-tipo");
			$(".listagem input").each(function(){
				if (this.checked) {
					tipos[tipos.length] = this.value;
					if (!novo_tipo) {
						novo_tipo = $("#listagem-"+this.value+" a")[0].innerHTML;
					}
				};
			});
			if (tipos.length < 2) {
				return false;
			};
			novo_tipo = prompt("Nome correto do tipo", novo_tipo);
			if (!novo_tipo) {
				return false;
			};
			$.post(url, {
				tipos:tipos,
				novo_tipo:novo_tipo
			}, function(retorno){
				if (retorno == "false") {
					alert("Não foi possivel unificar os tipos.");
					return false;
				};
				var	html =	'<div id="listagem-'+retorno+'" class="listagem">'+
							'<input type="checkbox" style="float: left;" value="'+retorno+'">'+
							'<a href="'+__URL_HOME__+'/form-tipo.php?id='+retorno+'">'+novo_tipo+'</a>'+
							'<a href="#excluir" onclick="koll.tipo.del('+retorno+')" style="float:right;color:#F00">excluir</a>'+
							'<span class="clear"></span>'+
						'</div>';
				$("#listagem-"+tipos[0]).before(html);
				for (var i in tipos) {
					$("#listagem-"+tipos[i]).remove();
				};
				$("input").each(function(){
					this.checked = false;
				});
				alert("Tipos unificados com sucesso.");
			})
		}
	},
	relator: {
		del: function(id_relator) {
			if (!confirm("Você está preste a excluir este relator/magistrado, confirma?")) {
				return false;
			};
			var url = koll.ajax("delete-relator");
			$.post(url, {id_relator:id_relator}, function(){
				alert("Relator/Magistrado excluido com sucesso.");
				$("#listagem-"+id_relator).fadeOut(function(){
					$(this).remove();
				});
			});
		},
		unificar: function() {
			var	relatores = [];
				novo_relator = false,
				url = koll.ajax("unifica-relator");
			$(".listagem input").each(function(){
				if (this.checked) {
					relatores[relatores.length] = this.value;
					if (!novo_relator) {
						novo_relator = $("#listagem-"+this.value+" a")[0].innerHTML;
					}
				};
			});
			if (relatores.length < 2) {
				return false;
			};
			novo_relator = prompt("Nome correto do relator/magistrado", novo_relator);
			if (!novo_relator) {
				return false;
			};
			$.post(url, {
				relatores:relatores,
				novo_relator:novo_relator
			}, function(retorno){
				if (retorno == "false") {
					alert("Não foi possivel unificar os relatores/magistrados.");
					return false;
				};
				var	html =	'<div id="listagem-'+retorno+'" class="listagem">'+
							'<input type="checkbox" style="float: left;" value="'+retorno+'">'+
							'<a href="'+__URL_HOME__+'/form-relator.php?id='+retorno+'">'+novo_relator+'</a>'+
							'<a style="float: right; color: rgb(255, 0, 0);" onclick="koll.relator.del('+retorno+')" href="#excluir">excluir</a>'+
							'<span class="clear"></span>'+
						'</div>';
				$("#listagem-"+relatores[0]).before(html);
				for (var i in relatores) {
					$("#listagem-"+relatores[i]).remove();
				};
				$("input").each(function(){
					this.checked = false;
				});
				alert("Relatores/Magistrados unificados com sucesso.");
			})
		}
	},
	jurisprudencia: {
		validando: false,
		valida: function () {
			var err = [];
			function error(msg) {
				err[err.length] = msg+"!";
			};
			if ($("#fonte").val() == "") {
				error("Você deve preencher o processo");
			};
			if (err.length > 0) {
				alert(err.join("\n"));
			};
			return (err.length == 0);
		},
		set_ok: function (id_jurisprudencia, ok, callback) {
			var callback = callback || function(){};
			if (!id_jurisprudencia || (ok != "sim" && ok != "nao")) {
				return false;
			};
			var url = koll.ajax("set-ok");
			$.post(url, {
				id_jurisprudencia:id_jurisprudencia,
				ok:ok
			}, function(retorno){
				if (retorno == "true") {
					callback();
				} else {
					alert("Não foi possivel aprovar ou reprovar a jurisprudência");
				};
			});
		},
		aprova: function (id_jurisprudencia) {
			if (!confirm("Você está preste a aprovar esta jurisprudência, confirma?")) {
				return false;
			};
			this.set_ok(id_jurisprudencia, "sim", function(){
				alert("Jurisprudência aprovada com sucesso");
				$("#result-"+id_jurisprudencia+" .bot-aprovacao").fadeOut(function(){
					$(this).remove();
				});
			});
		},
		reprova: function (id_jurisprudencia) {
			if (!confirm("Você está preste a excluir esta jurisprudência, confirma?")) {
				return false;
			};
			this.set_ok(id_jurisprudencia, "nao", function(){
				alert("Jurisprudência excluida com sucesso");
				$("#result-"+id_jurisprudencia).slideUp(function(){
					$(this).remove();
				});
			});
		}
	},
	setFonte: function(fonte) {
		$("#fonte2").html(fonte.replace(/\D/g,""));
		$("#fonte3").html(fonte.replace(/(^0+|\D)/g,""));
	},
	paginacao: function(pagina) {
		var	post_data = $("#a-paginacao-conteudo")[0].onblur(),
			pagina = pagina || 1;
		for (var i in post_data) {
			$("#"+i).val(post_data[i]);
		};
		$("#pesquisa-pagina").val(pagina);
		$("#busca").submit();
	},
	add_relator: function() {
		var sel = $("#id_relator").clone();
		sel.attr("id", ("id_relator_"+$(".id_relator").length));
		$("#link_add_relator").before('<div class="clear" style="height:5px"></div>');
		$("#link_add_relator").before(sel);
	},
	explicacoes: {
		lista:{
			"pl-campo-verbetacao": {titulo:"Campo que será pesquisado",exemplo:'furto & estacionamento & (hipermercado | supermercado)',conteudo:'Pesquisará no campo <span>verbetação</span> os termos digitados'},
			"pl-campo-ementa": {titulo:"Campo que será pesquisado",exemplo:'furto & estacionamento & (hipermercado | supermercado)',conteudo:'Pesquisará no campo <span>ementa</span> os termos digitados'},
			"pl-campo-integra": {titulo:"Campo que será pesquisado",exemplo:'furto & estacionamento & (hipermercado | supermercado)',conteudo:'Pesquisará no campo <span>íntegra</span> os termos digitados'},
			"pl-campo-lei": {titulo:"Campo que será pesquisado",exemplo:'decreto lei & 6123 & (69 | 93)',conteudo:'Pesquisará no campo <span>legislação</span> os termos digitados'},
			"pl-q": {titulo:"Pesquisa",exemplo:'furto & estacionamento & (hipermercado | supermercado)',conteudo:'Digite aqui os termos a serem pesquisados'},
			"pl-e": {titulo:"e",exemplo:'furto <span>&</span> estacionamento',conteudo:'Neste caso, o sistema irá pesquisar em jurisprudências que contenham ambos os termos pesquisados.'},
			"pl-ou": {titulo:"ou",exemplo:'furto & estacionamento & (supermercado <span>|</span> hipermercado <span>|</span> mercado)',conteudo:'Neste caso, o sistema irá pesquisar em jurisprudências que contenham um dos termos pesquisados.'},
			"pl-adj": {titulo:"adj",exemplo:'furto <span>adj5</span> estacionamento <span>adj4</span> mercado',conteudo:'Neste caso, o sistema resgatará uma distância de no máximo 4 (adj5) e 3 (adj4) palavras entre os termos digitados, sendo que as palavras serão resgatadas na ordem em que digitamos.'},
			"pl-nao": {titulo:"nao",exemplo:'furto e estacionamento <span>!</span> supermercado',conteudo:'Neste caso, o sistema irá pesquisar em jurisprudências que não contenham o termo digitado.'},
			"pl-prox": {titulo:"prox",exemplo:'furto <span>prox6</span> estacionamento <span>prox4</span> supermercado',conteudo:'Neste exemplo, o sistema resgatará uma distância de no máximo 5(prox6) e 3(prox4) palavras entre os termos digitados, sendo que elas serão resgatadas em qualquer ordem.'},
			"pl-mesmo": {titulo:"mesmo",exemplo:'furto <span>mesmo</span> estacionamento <span>mesmo</span> mercado',conteudo:'Neste caso, o sistema fará a recurepação dos termos ligados no mesmo campos dos documentos (ex: Campo EMENTA, INTEGRA, CHAVE)'},
			"pl-com": {titulo:"com",exemplo:'furto <span>com</span> estacionamento <span>com</span> supermercado',conteudo:'Neste caso, o sistema fará a recuperação de todos os termos dentro de um mesmo parágrafo.'},
			"pl-dolar": {titulo:"$",exemplo:'furto & estacionamento & <span>$mercado</span>',conteudo:'O sistema resgatará as palavras: "mercado", "supermercado", "hipermercado"'},
			"pe-codigo": {titulo:"Código",exemplo:'<span>1234</span>',conteudo:'Código da jurisprudência.'},
			"pe-ano": {titulo:"Ano",exemplo:'<span>2011</span>',conteudo:'Digite aqui o ano'},
			"pe-data": {titulo:"Data da jurisprudência",exemplo:'<br /><span>01/01/2011</span>',conteudo:'Data da jurisprdencia'},
			"pe-data-do": {titulo:"Data de D.O.",exemplo:'<br /><span>01/01/2011</span>',conteudo:'Data que a jurisprudência foi cadastrada no sistema.'},
			"pe-data-sj": {titulo:"Data do Dr Sergio Jacomino",exemplo:'<br /><span>01/01/2011</span>',conteudo:'Data que o Dr. Sergio aprovou a jurisprudência.'},
			"pe-data-cad": {titulo:"Data de cadastro",exemplo:'<br /><span>01/01/2011</span>',conteudo:'Data que a jurisprudência foi cadastrada no sistema.'},
			"pe-limpar": {titulo:"Limpar",exemplo:'',conteudo:'Limpa as datas preenchidas'},
			"pe-fonte": {titulo:"NÚMERO DO PROCESSO",exemplo:'ex.: <span>028794-0/7</span> ou <span>02879407</span> ou <span>2879407</span>',conteudo:'Digite aqui o número do processo'},
			"pe-localidade": {titulo:"LOCALIDADE",exemplo:'',conteudo:'Localidade da jurisprudência.'},
			"pe-tipo": {titulo:"ORGÃO",exemplo:'<span>Processo CGJ</span>',conteudo:'Órgão da jurisprudência.'},
			"pe-cartorio": {titulo:"CARTÓRIO",exemplo:'<span>1<sup>o</sup> Cartório</span>',conteudo:'Cartório responsavel.'},
			"pe-relator": {titulo:"Relator/Magistrado",exemplo:'',conteudo:'Relator/Magistrado da jurisprudência'},
			"pe-ok": {titulo:"OK",exemplo:'',conteudo:'Ok?'}
		},
		mostra:function(obj){
			var	$obj = $(obj),
				local = $obj.attr("--data-explicacao"),
				mostrar = $("#ativar-explicacoes")[0].checked;
			if (!local || !mostrar || !this.lista[local]) {
				return false;
			};
			var	$det = this.lista[local],
				$exp = $("#janela-explicacao");
			if (!$exp[0]) {
				var html = '';
				html +=	'<div id="janela-explicacao" style="display:block">'+
						'<strong class="je-titulo" style="text-transform:uppercase">a</strong>'+
						'<span class="clear"></span>'+
						'<strong class="je-exemplo">a</strong>'+
						'<span class="clear"></span>'+
						'<span class="je-conteudo">a</span>'+
					'</div>';
				$("#main").before(html);
				$exp = $("#janela-explicacao");
			};
			$(".je-titulo", $exp).html($det.titulo);
			$(".je-exemplo", $exp).html($det.exemplo);
			$(".je-conteudo", $exp).css({width:"auto"}).html($det.conteudo);
			$(".je-conteudo, .je-exemplo", $exp).css({width:300});
			$exp.css({
				left:$("#pesquisa-livre").offset().left,
				top:($obj.offset().top + 22),
				width:300
			});
		},
		fecha:function(){
			$("#janela-explicacao").remove();
		}
	},
	novo_relator:function() {
		var html =	'<label for="nome-relator">Nome do relator/magistrado:</label><br />'+
				'<span class="clear" style="height:5px"></span>'+
				'<input id="nome-relator" value="" maxlength="120" style="border:1px SOLID #999;width:350px" />';
		popup.mostra(html, [{
			nome:"Salvar",
			callback:function(){
				var nome_relator = koll.trim($("#nome-relator").val());
				if (nome_relator == "") {
					alert("Você deve digitar um nome de relator/magistrado antes de salvar");
					return false;
				};
				var url = __URL_HOME__+"/ajax.php?action=add-relator";
				$.post(url, {nome_relator:nome_relator}, function(retorno){
					if (retorno == "false") {
						return false;
					};
					var html = '<option value="'+retorno+'">'+nome_relator.toUpperCase()+'</retorno>';
					$("#id_relator").append(html);
					$("#id_relator").val(retorno);
					popup.mostra('Relator/Magistrado <strong>'+nome_relator+'</strong> adicionado com sucesso!', [{
						nome:"Fechar",
						callback:function(){
							popup.fecha();
						}
					}]);
				});
			}
		},{
			nome:"Cancelar",
			callback:function(){
				popup.fecha();
			}
		}]);
		return false;
	},
	trim: function(str) {
		return str.replace(/(^[ \n\r\t]+|[ \n\r\t]+$)/g, '');
	},
	in_array: function (str, arr) {
		for (var i in arr) {
			if (arr[i] == str) {
				return true;
			};
		};
		return false;
	},
	integra: function(a) {
		var integra = a.onblur().integra;
		if (!integra) {
			return false;
		};
		integra = integra.replace(/-\[ASPAS\]-/g, '"');
		integra = integra.replace(/-\[APOSTROFE\]-/g, "'");
		popup.mostra(integra, [{
			nome:"Fechar",
			callback:function(){
				popup.fecha();
			}
		}], function() {
			var	winHeight = $(window).height();
				maxHeight = (winHeight - 250);
				permaLink = '<strong style="color:#AA0000">Link permantente:</strong><br /><strong style="color:#3737FF">'+a.href+'</strong><br /><br />';
			$(".popup-dhtml-content h1").after(permaLink);
			if ($(".popup-dhtml-content").height() > maxHeight) {
				$(".popup-dhtml-content").css({height:maxHeight,overflow:"auto"})
				var	popHeight = $("#popup-dhtml").height();
					newPopTop = parseInt((winHeight - popHeight) / 2);
				$("#popup-dhtml").css({top:newPopTop});
			};
		});
		return false;
	},
	bubbling: function() {
		document.onclick = function(e) {
			var	e =	e || window.event,
				tgt =	e.target || e.srcElement,
				tag =	tgt.tagName.toLowerCase();
			if (tgt && tag && (tag == "a" || tag == "button" || tag == "img" || (tag == "input" && (tgt.type == "checkbox" || tgt.type == "radio")))) {
				$($(tgt).blur()).parent().blur();
				if ((tag == "a" || tag == "img") && (/^#/.test($(tgt).attr("href")) || /^#/.test($(tgt).parent().attr("href")))) {
					return false;
				};
			};
		};
	},
	init: function() {
		$.mask.definitions["x"] = "[_0-9]";
		this.bubbling();
		var 	$dtd = $("#data-de").css({textAlign:"center"}),
			$dta = $("#data-ate").css({textAlign:"center"}),
			$dtcd = $("#data-cad-de").css({textAlign:"center"}),
			$dtca = $("#data-cad-ate").css({textAlign:"center"}),

			$dtdd = $("#data-do-de").css({textAlign:"center"}),
			$dtda = $("#data-do-ate").css({textAlign:"center"}),
			$dtsd = $("#data-sj-de").css({textAlign:"center"}),
			$dtsa = $("#data-sj-ate").css({textAlign:"center"}),

			$data = $("#data").css({textAlign:"center"}),
			$dataSJ = $("#data_sj").css({textAlign:"center"}),
			$dataDO = $("#data_do").css({textAlign:"center"}),
			$verificado = $("#verificado").css({textAlign:"center"}),
			$dt_nascimento = $("#dt_nascimento").css({textAlign:"center"}),
			dtPicker = {
				dayNamesMin: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab"],
				monthNamesShort: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
				monthNames: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
				dateFormat: "dd/mm/yy",
				//showAnim:"bounce",
				duration:"fast",
				changeMonth:true,
				changeYear:true,
				showOn:"button",
				buttonImage:__URL_IMG__+"/calendario.jpg",
				buttonImageOnly:true,
				autoSize:true,
				showOtherMonths:true,
				onSelect: function(){}
			};
		if ($dtd[0]) {
			dtPicker.onSelect = function () {
				if (!$dta[0] || $dta[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMenor = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMaior = $dta[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dta[0].value = this.value;
				};
			};
			$dtd.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dta[0]) {
			dtPicker.onSelect = function () {
				if (!$dtd[0] || $dtd[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMaior = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMenor = $dtd[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtd[0].value = this.value;
				};
			};
			$dta.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dtcd[0]) {
			dtPicker.onSelect = function () {
				if (!$dtca[0] || $dtca[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMenor = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMaior = $dtca[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtca[0].value = this.value;
				};
			};
			$dtcd.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dtdd[0]) {
			dtPicker.onSelect = function () {
				if (!$dtda[0] || $dtda[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMenor = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMaior = $dtda[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtda[0].value = this.value;
				};
			};
			$dtdd.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dtsd[0]) {
			dtPicker.onSelect = function () {
				if (!$dtsa[0] || $dtsa[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMenor = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMaior = $dtsa[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtsa[0].value = this.value;
				};
			};
			$dtsd.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};

		if ($dtca[0]) {
			dtPicker.onSelect = function () {
				if (!$dtcd[0] || $dtcd[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMaior = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMenor = $dtcd[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtcd[0].value = this.value;
				};
			};
			$dtca.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};

		if ($dtda[0]) {
			dtPicker.onSelect = function () {
				if (!$dtdd[0] || $dtdd[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMaior = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMenor = $dtdd[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtdd[0].value = this.value;
				};
			};
			$dtda.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};

		if ($dtsa[0]) {
			dtPicker.onSelect = function () {
				if (!$dtsd[0] || $dtsd[0].value.replace(/\D/g, "") == "" || this.value.replace(/\D/g, "") == "") {
					return void(0);
				};
				var	dtMaior = this.value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1"),
					dtMenor = $dtsd[0].value.replace(/^(\d+)\/(\d+)\/(\d+)$/, "$3$2$1");
				if (dtMaior < dtMenor) {
					$dtsd[0].value = this.value;
				};
			};
			$dtsa.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};


		if ($dt_nascimento[0]) {
			dtPicker.onSelect = function(){};
			$dt_nascimento.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($data[0]) {
			dtPicker.onSelect = function(){};
			$data.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dataSJ[0]) {
			dtPicker.onSelect = function(){};
			$dataSJ.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($dataDO[0]) {
			dtPicker.onSelect = function(){};
			$dataDO.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		if ($verificado[0]) {
			dtPicker.onSelect = function(){};
			$verificado.mask("99/99/9999", {placeholder:"_"}).datepicker(dtPicker)[0].onblur = dtPicker.onSelect;
		};
		$(".ui-datepicker-trigger").attr({align:"top",title:"dd/mm/yyyy"});
	}
};
$(function() {
	koll.init();
});

