$(function() {
	$.fn.colorbox.settings.bgOpacity = "0.7";
	$('#div_bg_aguarde').fadeTo('fast',0.7);
	Menu(1);
	
	// hover dos botões e menus
	$('a.ui-state-default').livequery('mouseover', function(){$(this).addClass('ui-state-hover');});
	$('a.ui-state-default').livequery('mouseout', function(){$(this).removeClass('ui-state-hover');});	
	$('li.ui-state-default').livequery('mouseover', function(){$(this).addClass('ui-state-hover');});
	$('li.ui-state-default').livequery('mouseout', function(){$(this).removeClass('ui-state-hover');});
	
	/** Menus
	**********************************************************************************************************************************************************/
	$('#a_menusite_1').bind('click', function(){Menu(1);})
	$('#a_menusite_2').bind('click', function(){Menu(2);})
	$('#a_menusite_3').bind('click', function(){Menu(3);})
	$('#a_menusite_4').bind('click', function(){Menu(4);})
	$('#a_menusite_5').bind('click', function(){Menu(5);})
	$('#a_menusite_6').bind('click', function(){Menu(6);})

	/** Planos
	**********************************************************************************************************************************************************/	
	$("#div_planos table tr").livequery('mouseover', function(){
		$(this).css('color','#FFF');
		$(this).children("td[align='right']").children("img").attr('src','img/seta-on.png');
	});
	$("#div_planos table tr").livequery('mouseout', function(){
		$(this).css('color','#000');
		$(this).children("td[align='right']").children("img").attr('src','img/seta-off.png');
	});	
	//$("#div_planos table tr").livequery('mouseout', function(){$(this).attr('src','img/seta-on.png');});	
	
	/** Login
	**********************************************************************************************************************************************************/
	$('#a_entrar_site').livequery('click', function(){LoginSite();});
	$('#div_login input').livequery('keypress', function(e){if (e.which == 13) {LoginSite();}});
	
	/** Formulário para edição
	**********************************************************************************************************************************************************/			
	// formulário
	$('#div_janela_edita .titulo').livequery('select', function(){PropriedadeFormulario($(this));});
	$('#div_janela_edita .titulo').livequery('click', function(){PropriedadeFormulario($(this));});

	// titulo do formulario
	$('#div_janela_edita .titulo input').livequery('keyup', function(){$('#txt_prop_form').val($(this).val());});
	$('#txt_prop_form').livequery('keyup', function(){$('#div_janela_edita .titulo input').val($(this).val());});
	
	$('ul.campos-edita li').livequery('mouseover', function(){
		$('ul.campos-edita li').removeClass('campo-hover'); // retira todos
		$(this).addClass('campo-hover');
	});
	$('ul.campos-edita li').livequery('mouseout', function(){$(this).removeClass('campo-hover');});	
	
	// itens do formulário
	$('ul.campos-edita li').livequery('select', function(){PropriedadeCampo($(this));});
	$('ul.campos-edita li').livequery('click', function(){PropriedadeCampo($(this));});
	
	// titulos dos campos
	$('input.label').livequery('keyup', function(){
		$('#txt_prop_titulo').val($(this).val());
	});
	$('input.label').livequery('change', function(){ // grava titulo do campo ao sair
		AlterarCampo('titulo', $(this).val());
	});	
	
	// slider de largura do form
	$('#slider_form').livequery(function(){
		var div = $('#div_janela_edita'); 
		var largura = parseInt($('#div_janela_edita').css('width')); // largura inicial
		$(this).slider({min:200, max:800, range:'min', step:100, value:largura, change: function(){
			div.css('width', $(this).slider('value'));
			AlterarFormulario('largura', $(this).slider('value')); // altera largura no bd
		}});		
	});	

	/** Caixa de Campos
	**********************************************************************************************************************************************************/		
	$("div.campos").livequery(function(){
		//$(this).draggable({axis:'y', containment:'parent', handle:'h1'}); // caixa de campos disponíveis
		$(this).draggable({axis:'y', handle:'h1'}); // caixa de campos disponíveis
	});
	
	/*
	// mover campos para inserir
	$("div.campos li").livequery(function(){
		$(this).draggable({helper:'clone', connectToSortable:'ul.campos-edita'});
	});
	// inserir campo ao arrastar
	//$("ul.campos-edita").livequery(function(){
	$("ul.campos-edita").livequery(function(){
		$(this).droppable({
			accept: 'li.bt-campo',
			drop: function(event, ui) {
				alert('ERRO - Inserindo mais de uma vez ao arrastar');
				var li = $('ul.campos-edita li.bt-campo');
				var tipo = li.attr('value');
				var aguarde = $("<img src='img/aguarde2.gif'>");
				// remove a classe do li e insere o aguarde
				li.removeClass().html(aguarde);
				InserirCampo(tipo, li);
			}
		});
	});
	*/
	
	// inserir campo ao clicar
	$("div.campos li").livequery('click', function(){
		var tipo = $(this).attr('value');
		var li = $("<li><img src='img/aguarde2.gif'></li>");
		var campo = $('#hdn_campo_selecionado').val();		
		if (campo != '') {
			$('#li_'+campo).after(li); // insere o aguarde após o campo selecionado
		} else {		
			$('#ul_coluna_1').append(li); // insere o aguarde na coluna 1
		}
		InserirCampo(tipo, li);
	});
	
	// mudar campos de posição
	$("ul.campos-edita").livequery(function(){
		$(this).sortable({
			placeholder: 'ui-state-highlight',
			connectWith: '.campos-edita',
			stop: function(){OrdenarCampos();} // reordena os campos
		});
	});

	/** Menu edição
	**********************************************************************************************************************************************************/	
	$('#a_propriedade_sistema').livequery('click', function(){PropriedadeSistema();}); // propriedades do sistema	
	$('#a_acessa_sistema').livequery('click', function(){AcessarSistema();}); // propriedades do sistema	
	$("#sel_edita_sistema").livequery('change', function(){EditaSistema();}); // combo sistemas	
	$("#sel_edita_formulario").livequery('change', function(){EditaFormulario();});	// combo formulários	
	$('#a_cria_formulario').livequery('click', function(){CriarFormulario();});	// botao cria formulario	
	$('#a_copia_formulario').livequery('click', function(){CopiarFormulario();}); // botao copia formulario	
	$("#sel_edita_relatorio").livequery('change', function(){EditaRelatorio();});	// combo relatorios
	$('#a_cria_relatorio').livequery('click', function(){CriarRelatorio();});	// botao cria relatorio
	$('#a_exclui_relatorio').livequery('click',function(){ // botao exclui relatorio
		Confirma('Excluir Relatório', 'Confirma a exclusão do relatório?', 'ExcluirRelatorio()', '');
	});		
	
	/** Propriedades gerais
	**********************************************************************************************************************************************************/		
	// ajuda (exibe)
	$("div.propriedades img.ajuda").livequery('mouseover', function(){
		var div = $(this).next();		
		$('.ajuda-campo').hide(); // oculta todos		
		// posiciona janela de ajuda
		div.css('top', $(this).position().top + 18);
		div.css('left', $(this).position().left - div.width()+10);
		div.show();
	});
	// ajuda (oculta)
	$("div.propriedades img.ajuda").livequery('mouseout', function(){$('.ajuda-campo').hide();});

	
	/** Propriedades dos formulários e campos
	**********************************************************************************************************************************************************/		
	// janela de propriedades
	$("#div_propriedade").livequery(function(){
		$(this).draggable({containment:'#div_conteudo', handle:'h1'});
	});
	
	// ajuda (exibe)
	$('#div_propriedade .td2 img').livequery('mouseover', function(){
		var div = $(this).next();
		$('.ajuda-campo').hide(); // oculta todos		
		// posiciona janela de ajuda
		div.css('top', $(this).position().top + 18);
		div.css('left', $(this).position().left);
		div.show();
	});
	// ajuda (oculta)
	$('#div_propriedade .td2 img').livequery('mouseout', function(){$('.ajuda-campo').hide();});	

	// titulo do formulário
	$('#txt_titulo_form').livequery('change', function(){ 
		AlterarFormulario('titulo', $(this).val()); // altera valor no bd
		$('#sel_edita_formulario option:selected').html($(this).val()); // atualiza combo de formularios
	});
	$('#txt_prop_form').livequery('change', function(){ 
		AlterarFormulario('titulo', $(this).val()); // altera valor no bd
		$('#sel_edita_formulario option:selected').html($(this).val()); // atualiza combo de formularios
	});			
	
	// quantidade de colunas
	$('#sel_prop_colunas').livequery('change', function(){
		Aguarde(true);
		AlterarFormulario('colunas', $(this).val(), 'EditaFormulario()');
	});
	
	// formulário público
	$('#chk_prop_publico').livequery('change', function(){	
		var v;
		if ($(this).is(':checked')) {
			v = 'S';
			$('#text_publico').slideDown();
		} else {
			v = 'N';
			$('#text_publico').slideUp();
		}
		AlterarFormulario('publico', v);
	});	
	
	// titulos dos campos
	$('#txt_prop_titulo').livequery('keyup', function(){
		var id = $('#hdn_campo_selecionado').val();
		$('#txt_titulo_'+id).val($(this).val());
	});
	
	// edita propriedades dos campos
	$('#txt_prop_titulo').livequery('change', function(){
		AlterarCampo('titulo', $(this).val());
	});
	$('#text_prop_instrucao').livequery('change', function(){
		AlterarCampo('instrucao', $(this).val());
	});
	$('#chk_prop_obriga').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var v = 0;
		if ($(this).is(':checked')) {v = 1;}
		AlterarCampo('obrigatorio', v);
		$('#hdn_obrigatorio_'+campo).val(v); // atualiza valor do hidden
	});
	$('#chk_prop_unico').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var v = 0;
		if ($(this).is(':checked')) {v = 1;}
		AlterarCampo('unico', v);
		$('#hdn_unico_'+campo).val(v); // atualiza valor do hidden
	});	
	$('#chk_prop_link').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var v = 0;
		if ($(this).is(':checked')) {v = 1;}
		AlterarCampo('link', v);
		$('#hdn_link_'+campo).val(v); // atualiza valor do hidden
	});	
	
	// eventos <select>
	$('#ul_opcoes_select input.descricao').livequery('keyup', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var option = $('#'+campo+' option[value='+detalhe+']'); // seleciona o option de acordo com o campo
		option.text($(this).val()); // atualiza o texto do option ao digitar
	});
	$('#ul_opcoes_select input.descricao').livequery('change', function(){
		var detalhe = $(this).attr('detalhe');
		var padrao = 'N';
		if ($(this).prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		AlterarDetalhe(detalhe, padrao, $(this).val(), $(this).next().val()); // altera no bd
	});
	$('#ul_opcoes_select input.valor').livequery('change', function(){		
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');		
		var option = $('#'+campo+' option[value='+detalhe+']'); // seleciona o option
		option.attr('valor', $(this).val()); // armazena valor modificado no option
		var padrao = 'N';
		if ($(this).prev().prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		AlterarDetalhe(detalhe, padrao, $(this).prev().val(), $(this).val()); // altera no bd		
	});
	$('#ul_opcoes_select input.padrao').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var option = $('#'+campo+' option[value='+detalhe+']'); // seleciona o option
		var padrao = 'N';
		if ($(this).is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		option.attr('padrao', padrao); // armazena valor modificado no option
		AlterarDetalhe(detalhe, padrao, $(this).next().val(), $(this).next().next().val()); // altera no bd
	});

	// eventos <radio>
	$('#ul_opcoes_radio input.descricao').livequery('keyup', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var span = $('#li_'+campo+' .radio[value='+detalhe+']').next(); // seleciona o span após o radio
		span.text($(this).val()); // atualiza o texto do option ao digitar
	});
	$('#ul_opcoes_radio input.descricao').livequery('change', function(){
		var detalhe = $(this).attr('detalhe');
		var padrao = 'N';
		if ($(this).prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		AlterarDetalhe(detalhe, padrao, $(this).val(), $(this).next().val()); // altera no bd
	});
	$('#ul_opcoes_radio input.valor').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');		
		var radio = $('#li_'+campo+' .radio[value='+detalhe+']'); // seleciona o radio
		radio.attr('valor', $(this).val()); // armazena valor modificado no radio
		var padrao = 'N';
		if ($(this).prev().prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão		
		AlterarDetalhe(detalhe, padrao, $(this).prev().val(), $(this).val()); // altera no bd
	});
	$('#ul_opcoes_radio input.padrao').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var radio = $('#li_'+campo+' .radio[value='+detalhe+']'); // seleciona o radio
		var padrao = 'N';
		if ($(this).is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		radio.attr('padrao', padrao); // armazena valor modificado no radio
		AlterarDetalhe(detalhe, padrao, $(this).next().val(), $(this).next().next().val()); // altera no bd
	});	

	// eventos <checkbox>
	$('#ul_opcoes_check input.descricao').livequery('keyup', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var span = $('#li_'+campo+' .check[value='+detalhe+']').next(); // seleciona o span após o radio
		span.text($(this).val()); // atualiza o texto do option ao digitar
	});
	$('#ul_opcoes_check input.descricao').livequery('change', function(){
		var detalhe = $(this).attr('detalhe');
		var padrao = 'N';
		if ($(this).prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão		
		AlterarDetalhe(detalhe, padrao, $(this).val(), $(this).next().val()); // altera no bd
	});
	$('#ul_opcoes_check input.valor').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');		
		var check = $('#li_'+campo+' .check[value='+detalhe+']'); // seleciona o checkbox
		check.attr('valor', $(this).val()); // armazena valor modificado no checkbox
		var padrao = 'N';
		if ($(this).prev().prev().is(':checked')) {padrao = 'S';} // checkbox do valor padrão		
		AlterarDetalhe(detalhe, padrao, $(this).prev().val(), $(this).val()); // altera no bd
	});
	$('#ul_opcoes_check input.padrao').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		var detalhe = $(this).attr('detalhe');
		var check = $('#li_'+campo+' .check[value='+detalhe+']'); // seleciona o checkbox
		var padrao = 'N';
		if ($(this).is(':checked')) {padrao = 'S';} // checkbox do valor padrão
		check.attr('padrao', padrao); // armazena valor modificado no checkbox
		AlterarDetalhe(detalhe, padrao, $(this).next().val(), $(this).next().next().val()); // altera no bd
	});		
	
	// botões para adicionar ou remover item(detalhe) do <select>
	$('img.add-detalhe').livequery('click', function(){InserirDetalhe($(this));});
	
	// link
	$('#txt_prop_link').livequery('keypress',function(e){if (e.which == 32) {return false;}});// não permite espaço em branco
	$('#txt_prop_link').livequery('keyup', function(e){
		var campo = $('#hdn_campo_selecionado').val();		
		$('#link_'+campo).html($(this).val()); // atualiza a url ao digitar
		$('#link_'+campo).attr('href', $(this).val()); // atualiza o href ao digitar
	});
	$('#txt_prop_link').livequery('change', function(){
		AlterarCampo('descricao', $(this).val()); // altera no bd
	});		
	
	// informações
	$('#text_prop_info').livequery('keyup', function(e){
		var campo = $('#hdn_campo_selecionado').val();
		var html = $(this).val().replace(/\n/g,'<br>'); // quebra linha - <br>
		$('#info_'+campo).html(html); // atualiza o texto de info ao digitar
	});
	$('#text_prop_info').livequery('change', function(){
		AlterarCampo('descricao', $(this).val()); // altera no bd
	});	
	
	// campo ajax
	$('#sel_campo_ajax').livequery('change', function(){
		var campo = $('#hdn_campo_selecionado').val();
		AlterarCampo('campo_ajax', $(this).val()); // altera no bd
		$('#hdn_campo_ajax_'+campo).val($(this).val()); // armazena valor selecionado no hidden
	});	
	
	// excluir campo
	$('img.del-detalhe').livequery('click',function(){
		if ($('img.del-detalhe').length <= 1) {
			Alerta('Exclusão de Itens', 'Não é permitido excluir todos os itens da lista!', 'erro');
			return;
		}
		var detalhe = $(this).attr('detalhe');
		Confirma('Excluir Item', '<b>Atenção:</b> Caso este item possua cadastros, todos serão excluídos.<br><br>Confirma a exclusão do item?', 'ExcluirDetalhe('+detalhe+')', '');
	});

	// excluir formulário
	$('#a_exclui_formulario').livequery('click',function(){
		Confirma('Excluir Formulário', '<b>Atenção:</b> Caso este formulário possua cadastros, todos serão excluídos.<br><br>Confirma a exclusão do formulário?', 'ExcluirFormulario()', '');
	});
	
	// excluir campo
	$('#a_exclui_campo').livequery('click',function(){
		Confirma('Excluir Campo', '<b>Atenção:</b> Caso este campo possua cadastros, todos serão excluídos.<br><br>Confirma a exclusão do campo?', 'ExcluirCampo()', '');
	});

	/** Relatórios
	**********************************************************************************************************************************************************/
	// titulo do relatório
	$('#txt_titulo_relat').livequery('change', function(){ 
		AlterarRelatorio('titulo', $(this).val()); // altera valor no bd
		$('#sel_edita_relatorio option:selected').html($(this).val()); // atualiza combo de relatórios
	});
	
	// alterar colunas
	$('#table_edita_relat td.edita-coluna').livequery('click', function(){
		var index = $('#table_edita_relat td.edita-coluna').index($(this));
		var coluna = $(this).attr('coluna');
		var campofk = $(this).attr('campofk');
		// valores para edição
		$('#hdn_edita_coluna').val(coluna);
		$('#txt_edita_coluna').val($(this).text());
		$('#sel_campo_fk option[value='+campofk+']').attr('selected','selected');
		// desmarca todos
		$("#table_edita_relat td.edita-coluna").css('background-color','#666666');
		$("#table_edita_relat td.valor-coluna").css('background-color','#FFFFFF');		
		// marca o clicado
		$(this).css('background-color','red');		
		$("#table_edita_relat td.valor-coluna:eq("+index+")").css('background-color','#FFFFCC');	
	});
	
	/** Menus - Edição
	**********************************************************************************************************************************************************/
	$('a.menu').livequery('click', function(){ // botão de menus		
		$('#div_usuarios').hide();
		$('#div_temas').hide();
		EditaMenusSistema();
		$('#div_menus').toggle('normal');		
	});	
	
	// menus disponíveis
	$("#ul_menu_disponivel").livequery(function(){
		$(this).sortable({
			placeholder: 'ui-state-highlight',
			connectWith: '.menus',
			stop: function(){}
		});			
	});
	
	// caixas de cada menu
	$("ul.menus").livequery(function(){
		$(this).sortable({
			placeholder: 'ui-state-highlight',
			connectWith: '.menus',
			receive: function(event, ui){ // recebeu item de outra lista
				var texto = $(ui.item).text(); // texto do <li>
				var formulario = $(ui.item).attr('value'); // id do formulario
				var menu = $(this).attr('value'); // id do menu pai
				$('#txt_edita_menu').val(texto);
				$('#hdn_edita_menu').val(menu);
				$('#hdn_formulario_menu').val(formulario);
				ValidaMenu('anexar_menu');
			},
			stop: function(){OrdenarMenus();}
		});		
	});
	
	// itens
	$("#div_caixas_menu").livequery(function(){
		$(this).sortable({
			placeholder: 'ui-state-highlight',
			handle: 'legend',
			stop: function(){OrdenarMenus();}
		});			
	});
	
	// edição do menu
	$("fieldset.caixa-menu legend").livequery('click', function(){
		var menu = $(this).attr('menu');
		// nome na caixa para edição
		$('#hdn_edita_menu').val(menu);
		$('#txt_edita_menu').val($(this).text());
		// desmarca todos
		$("fieldset.caixa-menu legend").css('border-color','black');
		$("fieldset.caixa-menu").css('border-color','black');
		$("fieldset.caixa-menu li").css('border-color','black');		
		// marca o clicado
		$(this).css('border-color','red');
		$(this).parent().css('border-color','red');
	});
	
	// edição do item do menu
	$("fieldset.caixa-menu li").livequery('click', function(){
		var menu = $(this).attr('menu');
		// nome na caixa para edição
		$('#hdn_edita_menu').val(menu);
		$('#txt_edita_menu').val($(this).text());
		// desmarca todos
		$("fieldset.caixa-menu legend").css('border-color','black');
		$("fieldset.caixa-menu").css('border-color','black');
		$("fieldset.caixa-menu li").css('border-color','black');
		// marca o clicado
		$(this).css('border-color','red');
	});
	
	/** Usuários - Edição
	**********************************************************************************************************************************************************/				
	$('a.usuario').livequery('click', function(){ // botão de usuários
		$('#div_menus').hide();
		$('#div_temas').hide();	
		EditaUsuarioSistema();
		$('#div_usuarios').toggle('normal');		
	});
	
	$('#table_permissao img.marcar').livequery('click', function(){ // botões de marcar e desmarcar
		var name = $(this).attr('value');
		var checks = $("#table_permissao input[name='"+name+"']");
		var marca = !checks.attr('checked');		
		checks.each(function(){this.checked = marca;});
	});
	$('#table_permissao2 img.marcar').livequery('click', function(){ // botões de marcar e desmarcar
		var name = $(this).attr('value');
		var checks = $("#table_permissao2 input[name='"+name+"']");
		var marca = !checks.attr('checked');		
		checks.each(function(){this.checked = marca;});
	});
	
	/** Temas - Edição
	**********************************************************************************************************************************************************/				
	$('a.tema').livequery('click', function(){ // botão de temas
		$('#div_menus').hide();
		$('#div_usuarios').hide();
		$('#div_temas').toggle('normal');		
	});	
	// caixa de temas
	$("#div_temas img[id!='"+$('#hdn_tema').val()+"']").fadeTo('fast',0.3); // todos menos o selecionado
	$("#div_temas img").livequery('mouseover', function(){
		$("#div_temas img[id!='"+$('#hdn_tema').val()+"']").fadeTo('fast',0.3); // todos menos o selecionado
		$(this).fadeTo('fast',1);
	});
	$("#div_temas img").livequery('click', function(){		
		// fecha a caixa
		$('#div_temas').toggle('normal');		
		// seleciona a imagem do tema
		$('#hdn_tema').val($(this).attr('id'));
		$(this).fadeTo('fast',1);
		$("#div_temas img[id!='"+$('#hdn_tema').val()+"']").fadeTo('fast',0.3); // todos menos o selecionado
		// muda o css
		AlteraCss();		
		// grava tema no BD
		var tema = $('#hdn_tema').val().split('_')[2];
		var sistema = $('#sel_edita_sistema').val();
		$.post('edita_trata.php', 'opcao=tema&tema='+tema+'&sistema='+sistema);
	});
	
	/** Máscaras
	**********************************************************************************************************************************************************/	
	$.mask.options.autoTab = false; // não mudar de campo ao término (erro)
	$('.cpf').livequery(function(){$(this).setMask('999.999.999-99')});
	$('.cnpj').livequery(function(){$(this).setMask('99.999.999/9999-99')});
	$('.fone').livequery(function(){$(this).setMask('(99) 9999-9999')});
	$('.data').livequery(function(){$(this).setMask('39/19/9999'); $(this).datepicker({dateFormat:'dd/mm/yy', dayNames:['Domingo', 'Segunda', 'Terça', 'Quarta', 'Quinta', 'Sexta', 'Sábado'], dayNamesMin: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab'], monthNames: ['Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'] });});
	$('.hora').livequery(function(){$(this).setMask('29:69'); $(this).timepickr(); });
	$('.cep').livequery(function(){$(this).setMask('99999-999')});
	$('.numero').livequery(function(){$(this).setMask({mask:'999999999999999', type:'reverse'});});
	$('.valor').livequery(function(){$(this).setMask({mask:'99,999.999.999.999', type:'reverse'});});
	$('.percent').livequery(function(){$(this).setMask({mask:'99,999', type:'reverse', defaultValue:'000'});});
	// propriedades
	$('#txt_url_sistema').livequery(function(){$(this).setMask('zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz')});

	/** Editor de texto
	**********************************************************************************************************************************************************/	
	$('.editor').livequery(function(){
		var oFCKeditor = new FCKeditor($(this).attr('id'));
		oFCKeditor.BasePath	= 'fckeditor/';
		oFCKeditor.Config["CustomConfigurationsPath"] = "fckeditor/"
		oFCKeditor.ReplaceTextarea() ;
	});
});

function debug(r) {
	$('#debug').show();
	$('#debug').html(r);
}

// verifica se o valor é diferente de branco
function Vazio(v) {
	var r = true;
	if ((v != '') && (v != undefined)) {r = false;}
	return r;
}

function Pagina(pag) {
	Aguarde(true);
	$('#div_conteudo_site').load(pag, function(){Aguarde(false);});
}

function Menu(i) {
	switch(i) {
		case 1:
			Pagina('home.php');
			break;
		case 2:
			Pagina('planos.php');
			break;
		case 3:
			break;
		case 4:
			Pagina('edita.php');
			break;
		case 5:
			LogoffSite();
			break;
		case 6:
			Pagina('termo.php');
			break;				
	}
}

function AlteraCss() {
	var id = $('#hdn_tema').val(); // tema selecionado
	var css = $("img[id='"+id+"']").attr('src').split('/')[2].split('.')[0];
	$("#link_tema").attr("href", "css/temas/"+css+"/"+css+".css");
}

/*********************************************************************************************************************************************************
--| Mensagens
**********************************************************************************************************************************************************/
function Background(sim) {
	var div = $('#div_bg_aguarde'); // background opaco do aguarde		
	div.height($(document).height()); // ajusta o background ao tamanho da tela
	if (sim) {
		div.show();
	} else {
		div.hide();
	}
}

function Aguarde(sim) {
	var div1 = $('#div_aguarde');	
	div1.css('top', ($(document).height()/2) - (div1.height()/2)); // centraliza vertical
	div1.css('left', ($(window).width()/2) - (div1.width()/2)); // centraliza horizontal
	// exibe / oculta
	if (sim) {
		Background(true);
		div1.show();
	} else {
		div1.hide();
		Background(false)
	}
}

function Alerta(titulo, mensagem, icone, obj_focus) {
	var div = $("#div_alerta");
	div.attr('title', titulo);
	if (icone != '' && icone != undefined) {mensagem = "<img src='img/msg-"+icone+".png'>" + mensagem}
	div.html(mensagem);	
	Background(true);
	div.dialog({
		title: titulo,
		AutoOpen: false,
		bgiframe: false,
		modal: false, /*modal erro no ie8*/
		resizable: false,
		buttons: {
			OK: function() {
				$(this).dialog('destroy');
				if (obj_focus != '' && obj_focus != undefined) {
					obj_focus.focus();
				}
				Background(false);
			}
		},
		close: function() {
			Background(false);
		}
	});
	div.dialog('open');	
}

function Confirma(titulo, mensagem, funcao_sim, funcao_nao) {
	var div = $("#div_confirma");
	div.html("<img src='img/msg-confirma.png'>" + mensagem);	
	Background(true);
	div.dialog({
		title: titulo,
		bgiframe: true,		
		modal: false, /*modal erro no ie8*/
		resizable: false,
		buttons: {
			'Não': function() {
				eval(funcao_nao);
				$(this).dialog('destroy');
				Background(false);
			},
			'Sim': function() {		
				eval(funcao_sim);
				$(this).dialog('destroy');
				Background(false);
			}			
		},
		close: function() {
			Background(false);
		}		
	});
	div.dialog('open');
}

/*********************************************************************************************************************************************************
--| Login
**********************************************************************************************************************************************************/
function LoginSite() {
	var params;
	var login = $('#txt_login_site');
	var senha = $('#txt_senha_site');
	
	if ($.trim(login.val()) == '') {
		Alerta('Controle de Acesso', 'Informe o seu login', 'alerta', login);
		return;
	}
	if ($.trim(senha.val()) == '') {
		Alerta('Controle de Acesso', 'Informe a sua senha', 'alerta', senha);
		return;
	}
	params = 'login=' + login.val();
	params += '&senha=' + senha.val();
	
	Aguarde(true);
	$.post('login_site.php', params, function(r){
		switch (r) {
			case 'erro_login':
				Aguarde(false);
				Alerta('Controle de Acesso', '<b>ACESSO NEGADO!</b><p>Login inexistente, verifique se digitou corretamente.</p>', 'alerta', login);
				break;
			case 'erro_senha':
				Aguarde(false);
				Alerta('Controle de Acesso', '<b>ACESSO NEGADO!</b><p>Senha incorreta, verifique se digitou corretamente.</p>', 'alerta', senha);
				break;
			case 'nao_pago':
				Aguarde(false);
				Pagamento(login.val());
				break;			
			case 'OK':
				Menu(4);
				login.val('');
				senha.val('');
				$('#a_menusite_4').show(); // sistema
				$('#a_menusite_5').show(); // sair	
				break;				
			default:
				Aguarde(false);	
				alert("ERRO - Login!");
				break;
		}		
	});	
}

function LogoffSite() {
	Aguarde(true);
	$.post('logoff.php', function(r){
		Menu(1);
		$('#a_menusite_4').hide(); // sistema		
		$('#a_menusite_5').hide(); // sair
	});	
}

/*********************************************************************************************************************************************************
--| Assinaturas
**********************************************************************************************************************************************************/
function ValidaCadastro(opcao) {
	var params = 'opcao=' + opcao; 
	var tipo = $("input[name='rdb_tipo']:checked").val();
	var plano = $("input[name='rdb_plano']:checked").val();
	var label_nome;
		
	if ((opcao == 'inserir') || (opcao == 'alterar')) {
		if (tipo == 'F') {
			if ($.trim($('#txt_cpf').val()) == '') {
				Alerta('Cadastro', 'Informe o seu CPF.', 'alerta', $('#txt_cpf'));
				return;
			}
			if (!ValidaCPF($.trim($('#txt_cpf').val()))) {
				Alerta('Cadastro', 'CPF INVÁLIDO!<br><br>Verifique se digitou o CPF corretamente.', 'erro', $('#txt_cpf'));
				return;
			}			
			label_nome = 'seu nome';
		} else {
			if ($.trim($('#txt_cnpj').val()) == '') {
				Alerta('Cadastro', 'Informe o CNPJ da empresa.', 'alerta', $('#txt_cnpj'));
				return;
			}
			if (!ValidaCNPJ($.trim($('#txt_cnpj').val()))) {
				Alerta('Cadastro', 'CNPJ INVÁLIDO!<br><br>Verifique se digitou o CNPJ corretamente.', 'erro', $('#txt_cnpj'));
				return;
			}			
			label_nome = 'nome da empresa';
		}
		if ($.trim($('#txt_login').val()) == '') {
			Alerta('Cadastro', 'Informe o login que deseja para acessar o sistema.', 'alerta', $('#txt_login'));
			return;
		}
		if ($.trim($('#txt_senha').val()) == '') {
			Alerta('Cadastro', 'Informe a senha que deseja para acessar o sistema.', 'alerta', $('#txt_senha'));
			return;
		}
		if ($.trim($('#txt_nome').val()) == '') {
			Alerta('Cadastro', 'Informe o '+label_nome+'.', 'alerta', $('#txt_nome'));
			return;
		}
		if ($.trim($('#txt_endereco').val()) == '') {
			Alerta('Cadastro', 'Informe o seu endreço.', 'alerta', $('#txt_endereco'));
			return;
		}
		if ($.trim($('#txt_bairro').val()) == '') {
			Alerta('Cadastro', 'Informe o seu bairro.', 'alerta', $('#txt_bairro'));
			return;
		}
		if ($.trim($('#txt_cidade').val()) == '') {
			Alerta('Cadastro', 'Informe a sua cidade.', 'alerta', $('#txt_cidade'));
			return;
		}
		if ($.trim($('#sel_uf').val()) == '') {
			Alerta('Cadastro', 'Selecione o seu estado.', 'alerta', $('#sel_uf'));
			return;
		}
		if ($.trim($('#txt_cep').val()) == '') {
			Alerta('Cadastro', 'Informe o seu CEP.', 'alerta', $('#txt_cep'));
			return;
		}
		if ($.trim($('#txt_telefone').val()) == '') {
			Alerta('Cadastro', 'Informe o seu telefone para contato.', 'alerta', $('#txt_telefone'));
			return;
		}
		if ($.trim($('#txt_email').val()) == '') {
			Alerta('Cadastro', 'Informe um e-mail seu para contato.', 'alerta', $('#txt_email'));
			return;
		}
		if (!ValidaEmail($.trim($('#txt_email').val()))) {
			Alerta('Cadastro', 'E-MAIL INVÁLIDO!<br><br>Verifique se digitou o e-mail corretamente.', 'erro', $('#txt_email'));
			return;
		}		
	}
	params += '&tipo=' + tipo;
	if (tipo == 'F') {
		params += '&cpf=' + $('#txt_cpf').val();
		params += '&cnpj=';
	} else {
		params += '&cnpj=' + $('#txt_cnpj').val();
		params += '&cpf=';
	}
	params += '&login=' + escape($('#txt_login').val());
	params += '&senha=' + escape($('#txt_senha').val());
	params += '&nome=' + escape($('#txt_nome').val());
	params += '&endereco=' + escape($('#txt_endereco').val());
	params += '&cidade=' + escape($('#txt_cidade').val());
	params += '&bairro=' + escape($('#txt_bairro').val());
	params += '&uf=' + $('#sel_uf').val();
	params += '&cep=' + $('#txt_cep').val();
	params += '&telefone=' + $('#txt_telefone').val();
	params += '&celular=' + $('#txt_celular').val();
	params += '&sexo=' + $('#sel_sexo').val();
	params += '&email=' + escape($('#txt_email').val());
	params += '&plano=' + plano;	
	Aguarde(true);
	$.post('cadastro_trata.php', params, function(r){
		Aguarde(false);		
		switch (r) {
			case 'existe':
				Alerta('Cadastro', 'Você já está cadastrado no sistema. Caso tenha esquecido seu login/senha, entre em contato conosco.', 'alerta');
				break;
			case 'login_existe':
				Alerta('Cadastro', 'Este login já está cadastrado no sistema. Escolha outro.', 'alerta', $('#txt_login'));
				break;				
			case 'inserir':
				if (plano == 1) { // gratuito
					$('#div_conteudo_site').load('home.php');
					Alerta('Cadastro', 'Seu cadastro foi realizado com sucesso!<br>Entre agora com o seu login e senha.', 'sucesso');
				} else { // pagos
					Pagamento($('#txt_login').val());
				}
				break;				
			case 'alterar':
				break;
			default:
				alert("ERRO! Cadastro de Cliente!");
				break;
		}		
	});
}

function RadioTipoCliente(t) {
	$('#p_F').hide();
	$('#p_J').hide();
	$('#p_'+t).show();
	$('#rdb_'+t).attr("checked", "checked");
}

function Pagamento(login) {
	var params = "login=" + login
	Aguarde(true);
	$.post('pagamento.php', params, function(r){
		$('#div_conteudo_site').html(r);
		Aguarde(false);
	});
}

/*********************************************************************************************************************************************************
--| Edição de Sistemas
**********************************************************************************************************************************************************/
function PropriedadeSistema() {
	var select = $('#sel_edita_sistema');
	if (select.val() == '') {
		Alerta('Propriedades do Sistema', 'Selecione o sistema que deseja alterar as propriedades.', 'alerta', select);
		return;
	}	
	$.fn.colorbox({href:'edita_sistema_propriedade.php?sistema='+select.val(), title:'Propriedades do Sistema', fixedWidth:'400px', fixedHeight:'450px', open:true});
}

function AcessarSistema() {
	var select = $('#sel_edita_sistema');
	if (select.val() == '') {
		Alerta('Acessar Sistema', 'Selecione o sistema que deseja acessar.', 'alerta', select);
		return;
	}
	window.open('sistema.php?id='+select.val());
}

function EditaSistema() {
	var sistema = $("#sel_edita_sistema").val();
	var params = 'sistema=' + sistema;
	if (sistema == '') {
		$('#div_edita_sistema').html('');
	} else {
		Aguarde(true);		
		// carrega sistema
		$.post('edita_sistema.php', params, function(r){
			$('#div_edita_sistema').html(r);
			AlteraCss();
			EditaMenusSistema();
			EditaUsuarioSistema();
			Aguarde(false);
		});
	}
}

// carrega tela de edição de menus
function EditaMenusSistema(menu) {
	var params = 'sistema=' + $("#sel_edita_sistema").val();
	if (!Vazio(menu)) {params += '&menu=' + menu;}
	$.post('edita_menu.php', params, function(r){
		$('#div_menus').html(r);
		Aguarde(false);
	});
}

function ExcluirMenu() {
	var menu = $('#hdn_edita_menu');
	if (menu.val() == '') {
		Alerta('Menus do Sistema', 'Antes de utilizar este botão clique no menu que deseja excluir.', 'alerta');
		return;
	}
	Confirma('Excluir Menu', 'Confirma a exclusão deste menu?', "ValidaMenu('excluir_menu')");
}

// valida informações dos menus
function ValidaMenu(opcao) {	
	var nome = $('#txt_edita_menu');
	var menu = $('#hdn_edita_menu');
	var formulario = $('#hdn_formulario_menu');
	var params = 'opcao=' + opcao;	
	
	if ((opcao == 'inserir_menu') || (opcao == 'alterar_menu')) {
		if ((opcao == 'alterar_menu') && (menu.val() == '')) {
			Alerta('Menus do Sistema', 'Antes de utilizar este botão clique no menu que deseja alterar.', 'alerta');
			return;
		}	
		if ($.trim(nome.val()) == '') {
			Alerta('Menus do Sistema', 'Informe o nome do menu.', 'alerta', nome);
			return;
		}
	}
	params += '&sistema=' + $("#sel_edita_sistema").val();
	params += "&nome=" + escape(nome.val());
	params += "&menu=" + menu.val();
	params += "&formulario=" + formulario.val();

	if (opcao != 'anexar_menu') {Aguarde(true);}
	$.post('edita_trata.php', params, function(r){
		nome.val('');
		menu.val('');
		EditaMenusSistema();
		switch (r) {
			case 'inserir_menu':
				break;				
			case 'alterar_menu':
				break;
			case 'excluir_menu':
				break;
			case 'anexar_menu':
				break;
			default:
				alert("ERRO! Menus do sistema!");
				break;
		}		
	});
}

// ordena os campos e a suas respectivas colunas
function OrdenarMenus() {
	var vazio;
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=ordenar_menus";
	params += "&formulario=" + formulario.val();		
	vazio = true;	
	ordem1 = 1;	
	$('fieldset.caixa-menu legend').each(function(){ // menus
		params += "&menu[]=" + $(this).attr('menu');
		params += "&ordem[]=" + ordem1;
		ordem2 = 1;
		$('fieldset.caixa-menu li').each(function(){ // itens do menus
			params += "&menu[]=" + $(this).attr('menu');
			params += "&ordem[]=" + ordem2;
			ordem2++;
		});
		ordem1++;
		vazio = false;
	});
	if (!vazio) {
		$.post('edita_trata.php', params);
	}
}

// carrega tela de edição dos usuarios
function EditaUsuarioSistema(usuario) {
	var params = 'sistema=' + $("#sel_edita_sistema").val();
	if (!Vazio(usuario)) {params += '&usuario=' + usuario;}
	$.post('edita_usuario.php', params, function(r){
		$('#div_usuarios').html(r);
		Aguarde(false);
	});
}

function ExcluirUsuario() {
	var usuario = $('#sel_edita_usuario');
	if ($.trim(usuario.val()) == '') {
		Alerta('Usuários', 'Selecione o usuário que deseja excluir.', 'alerta', usuario);
		return;
	}
	Confirma('Excluir Menu', 'Confirma a exclusão deste usuário?', "ValidaUsuario('excluir_usuario')");
}

function TabelaPermissao(usuario) {
	var params = 'sistema=' + $("#sel_edita_sistema").val();
	params += '&usuario=' + usuario;
	var span = $('#span_usuario_permissao');
	span.html("<img src='img/aguarde2.gif'>");
	$.post('edita_usuario_permissao.php', params, function(r){
		span.html(r);
	});	
}

// valida informações dos usuarios
function ValidaUsuario(opcao) {
	var usuario = $('#sel_edita_usuario');
	var nome = $('#txt_nome_usuario');
	var email = $('#txt_email_usuario');
	var login = $('#txt_login_usuario');
	var senha = $('#txt_senha_usuario');
	var sexo = $('#sel_sexo_usuario');
	var tipo = $('#sel_tipo_usuario');
	var ativo = $('#sel_ativo_usuario');
	var params = 'opcao=' + opcao;
	
	if ((opcao == 'inserir_usuario') || (opcao == 'alterar_usuario')) {
		if ($.trim(nome.val()) == '') {
			Alerta('Usuários', 'Informe o nome do usuário.', 'alerta', nome);
			return;
		}
		if ($.trim(login.val()) == '') {
			Alerta('Usuários', 'Informe o login do usuário.', 'alerta', login);
			return;
		}
		if ($.trim(senha.val()) == '') {
			Alerta('Usuários', 'Informe a senha do usuário.', 'alerta', senha);
			return;
		}		
	}
	params += '&sistema=' + $("#sel_edita_sistema").val();
	params += '&usuario=' + $("#sel_edita_usuario").val();	
	params += "&nome=" + escape(nome.val());
	params += "&email=" + escape(email.val());
	params += "&login=" + escape(login.val());
	params += "&senha=" + escape(senha.val());
	params += "&sexo=" + sexo.val();
	params += "&tipo=" + tipo.val();
	params += "&ativo=" + ativo.val();
	
	// permissões dos formulários do usuário
	$('#table_permissao input').each(function(){
		var type = $(this).attr('type');
		var name = $(this).attr('name');
		if (type == 'hidden') { // hiddens dos formularios
			params += '&' + name + '[]=' + $(this).val();
		}
		if (type == 'checkbox') { // checkbox das permissões
			params += '&' + name + '[]=';		
			if ($(this).attr('checked')) {
				params += '1';
			} else {
				params += '0';
			}
		}	
	})
	// permissões dos relatórios do usuário
	$('#table_permissao2 input').each(function(){
		var type = $(this).attr('type');
		var name = $(this).attr('name');
		if (type == 'hidden') { // hiddens dos formularios
			params += '&' + name + '[]=' + $(this).val();
		}
		if (type == 'checkbox') { // checkbox das permissões
			params += '&' + name + '[]=';		
			if ($(this).attr('checked')) {
				params += '1';
			} else {
				params += '0';
			}
		}	
	})

	Aguarde(true);
	$.post('edita_trata.php', params, function(r){
		switch (r) {
			case 'limite':
				Aguarde(false);
				Alerta('Usuários Esgotados!', 'Seu plano não permite criar mais usuários.<br><br>Para criar novos usuários será necessário assinar um plano maior.', 'erro');		
				break;
			case 'login_existe':
				Aguarde(false);
				Alerta('Usuários', 'O login ('+login.val()+') já existe no sistema, escolha outro.', 'erro', login);				
				break;
			case 'tem_resposta':				
				Aguarde(false);
				Alerta('Usuários', 'Este usuário possui informações relacionadas ao sistema e não pode ser excluído.', 'erro');
				break;				
			case 'inserir_usuario':
				EditaUsuarioSistema();
				Alerta('Usuários', 'Usuário cadastrado com sucesso!', 'sucesso');				
				break;				
			case 'alterar_usuario':
				EditaUsuarioSistema();
				Alerta('Usuários', 'Usuário alterado com sucesso!', 'sucesso');
				break;
			case 'excluir_usuario':
				EditaUsuarioSistema();
				Alerta('Usuários', 'Usuário excluído com sucesso!', 'sucesso');
				break;
			default:
				EditaUsuarioSistema();
				alert("ERRO! Usuários do sistema!");
				break;
		}		
	});
}

// valida informações das propriedades
function ValidaSistema(opcao) {
	var nome = $('#txt_nome_sistema');
	var url = $('#txt_url_sistema');
	var params = "opcao=" + opcao;	
	if ($.trim(nome.val()) == '') {
		Alerta('Propriedades do Sistema', 'Informe o nome do sistema.', 'alerta', nome);
		return;
	}
	if ($.trim(url.val()) == '') {
		Alerta('Propriedades do Sistema', 'Informe a palavra que complela a url do sistema.', 'alerta', url);
		return;
	}
	params += "&sistema=" + $('#sel_edita_sistema').val();
	params += "&nome=" + escape(nome.val());
	params += "&url=" + url.val();

	Aguarde(true);		
	$.post('edita_trata.php', params, function(r){
		Aguarde(false);	
		switch (r) {
			case 'url_existe':				
				Aguarde(false);
				Alerta('Propriedades do Sistema', 'A url ('+url.val()+') já está em uso por outro sistema, escolha outra.', 'erro', url);
				break;		
			case 'alterar':
				$('#sel_edita_sistema option:selected').html(nome.val()); // atualiza nome do sistema no combo
				$('#div_nome_sistema span').html(nome.val()); // atualiza nome do sistema na tela
				$.fn.colorbox.close();
				Alerta('Propriedades do Sistema', 'Propriedades alteradas com sucesso!', 'sucesso');
				break;
			default:
				alert("ERRO! Propriedades do sistema!");
				break;
		}		
	});
}


/*********************************************************************************************************************************************************
--| Edição de Formulários
**********************************************************************************************************************************************************/
function EditaFormulario() {
	// seleciona a linha e desmarca o outro	
	$('#div_lin_relat').css('background-color','#EFEFEF');
	$('#div_lin_form').css('background-color','#FFFFE1');
	$('#sel_edita_relatorio').val('');
	
	var formulario = $("#sel_edita_formulario").val();
	var params = 'sistema=' + $("#sel_edita_sistema").val();
	params += '&formulario=' + formulario;
	if (formulario == '') {
		$('#div_lin_form').css('background-color','#EFEFEF');
		$('#div_edita_formulario').html('');
	} else {
		Aguarde(true);		
		// carrega formulário
		$.post('edita_formulario.php', params, function(r){
			$('#div_edita_formulario').html(r);
			Aguarde(false);
		});
	}
}

function PropriedadeFormulario(div) {
	$('#div_propriedade_2').hide(); // propriedades do campo
	$('#div_propriedade_1').show(); // propriedades do formulário
	var div2 = $('#div_propriedade');
	$('ul.campos-edita li').removeClass('ui-state-hover'); // desmarca todos os campos		
	// posiciona janela de propriedades
	div2.css('top', div.position().top - 10);
	div2.css('left', div.position().left + div.width()+3);
	div2.show();
}

function PropriedadeCampo(li) {
	$('#div_propriedade_1').hide(); // propriedades do formulário
	$('#div_propriedade_2').show(); // propriedades do campo	
	var div = $('#div_propriedade');
	div.hide(); // oculta div de propriedades
	var campo = li.attr('id').split('_')[1]; // id do campo
	var tipo = $('#hdn_tipo_'+campo).val(); // tipo do campo
	$('ul.campos-edita li').removeClass('ui-state-hover'); // desmarca todos
	li.addClass('ui-state-hover');	// marca o clicado
	$('#hdn_campo_selecionado').val(campo); // armazena campo selecionado					
	Propriedades(campo, tipo); // exibe as propriedades	
	// posiciona janela de propriedades
	div.css('top', li.position().top - 10);
	div.css('left', li.position().left + li.width()+3);
	div.show();
}

// exibe as propriedades
function Propriedades(campo, tipo) {
	var checked, options, ul, li;
	
	// oculta todos
	$('#table_props_titulo').hide();
	$('#table_props_campo').hide();
	$('#table_props_select').hide();
	$('#table_props_radio').hide();
	$('#table_props_check').hide();	
	$('#table_props_link').hide();
	$('#table_props_info').hide();
	$('#table_props_ajax').hide();
	
	// icone do campo
	$('#img_ico_prop').attr('src','img/ui-campo-'+tipo+'.png');
	
	// atribui valores
	$('#txt_prop_titulo').val($('#txt_titulo_'+campo).val());
	$('#text_prop_instrucao').val($('#hdn_instrucao_'+campo).val());
	checked = 'checked';
	if ($('#hdn_obrigatorio_'+campo).val() == 0) {checked = '';}
	$('#chk_prop_obriga').attr("checked", checked);
	checked = '';
	if ($('#hdn_unico_'+campo).val() == 1) {checked = 'checked';}
	$('#chk_prop_unico').attr("checked", checked);	
	
	// exibe
	if (tipo == 1) { // text (associar campo ajax)
		var option;
		var tipos = $("input[name='tipo']").filter("[value='99']");
		$("#sel_campo_ajax option[value!='']").remove(); // remove todos os options, exceto o vazio
		tipos.each(function(){
			// adiciona os campos do tipo 99 ao <select> de associação ajax
			option = "<option value='"+$(this).attr('campo_id')+"'>"+$(this).attr('campo_titulo')+"</option>";
			$('#sel_campo_ajax').append(option);
			$('#sel_campo_ajax option[value='+$('#hdn_campo_ajax_'+campo).val()+']').attr('selected','selected'); // seleciona se já estiver gravado
		})
		if (tipos.size() > 0) {
			$('#table_props_ajax').show();
		}
	}	
	if (tipo != 22) {$('#table_props_titulo').show();} // != de info
	if ((tipo != 21) && (tipo != 22)) {$('#table_props_campo').show();} // != de link e info	
	if (tipo == 15) { // lista
		// insere os itens do select na caixa de propriedades
		ul = $('#ul_opcoes_select');
		ul.html(''); // limpa lista
		options = $('#'+campo+' option');
		options.each(function(){
			detalhe = $(this).val();
			valor = $(this).attr('valor');			
			texto = $.trim($(this).text());
			checked = '';
			if ($(this).attr('padrao') == 'S'){checked = 'checked';}
			// (alterar em outro local)		
			li = "<li><input type='checkbox' class='padrao' detalhe='"+detalhe+"' "+checked+" title='Marque se este item for selecionado por padrão'><input type='text' maxlength='100' class='descricao' value='"+texto+"' detalhe='"+detalhe+"'><input type='text' class='valor' value='"+valor+"' detalhe='"+detalhe+"'><img class='add-detalhe' src='img/opc-add.png' title='Adicionar Item' detalhe='"+detalhe+"'><img class='del-detalhe' src='img/opc-del.png' title='Excluir Item' detalhe='"+detalhe+"'></li>";
			ul.append(li);
		});
		$('#table_props_select').show();
	} 
	if (tipo == 17) { // radio
		// insere os itens da lista na caixa de propriedades
		var detalhe, valor, texto;
		ul = $('#ul_opcoes_radio');
		ul.html(''); // limpa lista
		spans = $('#li_'+campo+' .opc');
		spans.each(function(){
			detalhe = $(this).find('.radio').val();
			valor = $(this).find('.radio').attr('valor');
			texto = $.trim($(this).text());
			checked = '';
			if ($(this).find('.radio').attr('padrao') == 'S'){checked = 'checked';}
			// (alterar em outro local)		
			li = "<li><input type='checkbox' class='padrao' detalhe='"+detalhe+"' "+checked+" title='Marque se este item for selecionado por padrão'><input type='text' maxlength='100' class='descricao' value='"+texto+"' detalhe='"+detalhe+"'><input type='text' class='valor' value='"+valor+"' detalhe='"+detalhe+"'><img class='add-detalhe' src='img/opc-add.png' title='Adicionar Item' detalhe='"+detalhe+"'><img class='del-detalhe' src='img/opc-del.png' title='Excluir Item' detalhe='"+detalhe+"'></li>";
			ul.append(li);
		});
		$('#table_props_radio').show();
	}
	if (tipo == 18) { // checkbox
		// insere os itens da lista na caixa de propriedades
		var detalhe, texto;
		ul = $('#ul_opcoes_check');
		ul.html(''); // limpa lista
		spans = $('#li_'+campo+' .opc');
		spans.each(function(){
			detalhe = $(this).find('.check').val();
			valor = $(this).find('.check').attr('valor');
			texto = $.trim($(this).text());
			checked = '';
			if ($(this).find('.check').attr('padrao') == 'S'){checked = 'checked';}		
			// (alterar em outro local)		
			li = "<li><input type='checkbox' class='padrao' detalhe='"+detalhe+"' "+checked+" title='Marque se este item for selecionado por padrão'><input type='text' maxlength='100' class='descricao' value='"+texto+"' detalhe='"+detalhe+"'><input type='text' class='valor' value='"+valor+"' detalhe='"+detalhe+"'><img class='add-detalhe' src='img/opc-add.png' title='Adicionar Item' detalhe='"+detalhe+"'><img class='del-detalhe' src='img/opc-del.png' title='Excluir Item' detalhe='"+detalhe+"'></li>";
			ul.append(li);
		});
		$('#table_props_check').show();
	}
	if (tipo == 21) { // link
		$('#txt_prop_link').val($('#link_'+campo).html());
		checked = 'checked';
		if ($('#hdn_link_'+campo).val() == 0) {checked = '';}
		$('#chk_prop_link').attr("checked", checked);		
		$('#table_props_link').show();
	}
	if (tipo == 22) { // info
		var texto = $('#info_'+campo).html().replace(/<br>/g,'\n'); // <br> - quebra linha
		$('#text_prop_info').val(texto);
		$('#table_props_info').show();
	}
}

// título inicial do campo (alterar também no .php)
function TituloCampo(tipo) {
	r = 'Título do campo';
	switch (tipo) {
		case 2: // cpf
			r = 'CPF';
			break;
		case 3: // cnpj
			r = 'CNPJ';
			break;			
		case 4: // senha
			r = 'Senha';
			break;		
		case 7: // telefone
			r = 'Telefone';
			break;		
		case 8: // cep
			r = 'CEP';
			break;		
		case 9: // email
			r = 'E-Mail';
			break;		
		case 16: // estado (uf)
			r = 'Estado';
			break;
		case 5: // data
			r = 'Data';
			break;
		case 6: // hora
			r = 'Hora';
			break;
		case 12: // numero
			r = 'Número';
			break;					
		case 13: // valor
			r = 'Valor';
			break;		
		case 14: // percentual				
			r = 'Percentual';
			break;
	}
	return r;
}

// html do campo do formulário
function CampoHTML(tipo) {
	var id = $('#hdn_campo_selecionado').val(); // ID atual do campo
	var html = '';
	
	// HTML do novo campo
	html += "<input type='hidden' id='hdn_tipo_"+id+"' value='"+tipo+"'>";
	html += "<input type='hidden' id='hdn_instrucao_"+id+"' value=''>";
	html += "<input type='hidden' id='hdn_obrigatorio_"+id+"' value='1'>";
	html += "<input type='hidden' id='hdn_unico_"+id+"' value='0'>";
	if (tipo != 22) { // info não tem titulo
		html += "<input type='text' id='txt_titulo_"+id+"' class='label ui-widget-content' maxlength='100' value='"+TituloCampo(tipo)+"'>";
	}
	
	switch (tipo) {
		case 1: // texto
			html += "<input id='"+id+"' type='text'>";
			break;
		case 2: // cpf
			html += "<input id='"+id+"' type='text' class='cpf'>";
			break;
		case 3: // cnpj
			html += "<input id='"+id+"' type='text' class='cnpj'>";
			break;
		case 4: // senha
			html += "<input id='"+id+"' type='password' class='senha'>";
			break;
		case 5: // data
			html += "<input id='"+id+"' type='text' class='data'>";
			break;
		case 6: // hora
			html += "<input id='"+id+"' type='text' class='hora'>";
			break;
		case 7: // telefone
			html += "<input id='"+id+"' type='text' class='fone'>";
			break;
		case 8: // cep
			html += "<input id='"+id+"' type='text' class='cep'>";
			break;
		case 9: // email
			html += "<input id='"+id+"' type='text' class='email'>";
			break;
		case 10: // descrição
			html += "<textarea id='"+id+"' rows='4'></textarea>";
			break;
		case 11: // editor
			html += "<textarea id='"+id+"' class='editor'></textarea>";
			break;
		case 12: // numero
			html += "<input id='"+id+"' type='text' class='numero'>";
			break;
		case 13: // valor
			html += "<input id='"+id+"' type='text' class='valor'>";
			break;
		case 14: // percentual
			html += "<input id='"+id+"' type='text' class='percent'>%";
			break;
		case 15: // lista
			// cria um span temporário e substitui pelo campo
			html += "<span id='span_"+id+"'><img src='img/aguarde2.gif'></span>";
			$.post('edita_trata.php', 'opcao=html_campo&campo='+id+'&tipo=15', function(r){$('#span_'+id).replaceWith(r);});
			break;
		case 16: // estado (uf)
			html += "<select id='"+id+"'>";
			html += "<option>Acre</option>";
			html += "<option>Alagoas</option>";
			html += "<option>Amazonas</option>";
			html += "<option>Amapá</option>";
			html += "<option>Bahia</option>";
			html += "<option>Ceará</option>";
			html += "<option>Distrito Federal</option>";
			html += "<option>Espírito Santo</option>";
			html += "<option>Goias</option>";
			html += "<option>Maranhão</option>";
			html += "<option>Minas Gerais</option>";
			html += "<option>Mato Grosso do Sul</option>";
			html += "<option>Mato Grosso</option>";
			html += "<option>Pará</option>";
			html += "<option>Paraiba</option>";
			html += "<option>Pernambuco</option>";
			html += "<option>Piauí</option>";
			html += "<option>Paraná</option>";
			html += "<option>Rio de Janeiro</option>";
			html += "<option>Rio Grande do Norte</option>";
			html += "<option>Rondônia</option>";
			html += "<option>Roraima</option>";
			html += "<option>Rio Grande do Sul</option>";
			html += "<option>Santa Catarina</option>";
			html += "<option>Sergipe</option>";
			html += "<option>São Paulo</option>";
			html += "<option>Tocantins</option>";			
			html += "</select>";
			break;
		case 17: // opção
			// cria um span temporário e substitui pelo campo
			html += "<span id='span_"+id+"'><img src='img/aguarde2.gif'></span>";
			$.post('edita_trata.php', 'opcao=html_campo&campo='+id+'&tipo=17', function(r){$('#span_'+id).replaceWith(r);});
			break;
		case 18: // marcadores
			// cria um span temporário e substitui pelo campo
			html += "<span id='span_"+id+"'><img src='img/aguarde2.gif'></span>";
			$.post('edita_trata.php', 'opcao=html_campo&campo='+id+'&tipo=18', function(r){$('#span_'+id).replaceWith(r);});
			break;
		case 19: // imagem
			html += "<div class='input-imagem'><img src='img/42-21525741.jpg' class='input'></div>";
			html += "<input type='file'>";
			break;
		case 20: // arquivo
			html += "<input type='file'>";
			break;
		case 21: // link
			html += "<a id='link_"+id+"' href='http://' class='link-form' target='_blank'>http://</a>";
			break;
		case 22: // informações
			html += "<div id='info_"+id+"' class='informacao ui-widget-header ui-corner-all'>Clique e escreva as informações na caixa de propriedades.</div>";
			break;
		case 99: // campo relacionado
			// cria um span temporário e substitui pelo campo
			html += "<span id='span_"+id+"'><img src='img/aguarde2.gif'></span>";
			$.post('edita_trata.php', 'opcao=html_campo&campo='+id+'&tipo=99', function(r){$('#span_'+id).replaceWith(r);});
			break;
	}			
	return html;	
}

// cria um novo formulário no sistema
function CriarFormulario() {
	var params = "opcao=inserir_formulario";
	params += "&sistema=" + $('#sel_edita_sistema').val();	
	Aguarde(true);	
	$.post('edita_trata.php', params, function(r){
		if (r == 'limite') {
			Aguarde(false);
			Alerta('Formulários Esgotados!', 'Seu plano não permite criar mais formulários.<br><br>Para criar novos formulários será necessário assinar um plano maior.', 'erro');
		} else {
			$('#sel_edita_formulario').append("<option value='"+r+"'>Novo Formulário</option>"); // adiciona novo option
			$('#sel_edita_formulario option[value='+r+']').attr('selected','selected'); // seleciona option criado
			EditaFormulario();
		}
	});
}

// cria um novo formulário igual ao formulário selecionado
function CopiarFormulario() {
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=copiar_formulario";
	var texto = $('#sel_edita_formulario option:selected').text();
	if ($.trim(formulario.val()) == '') {
		Alerta('Copiar Formulário', 'Selecione o formulário que deseja copiar.', 'alerta', formulario);
		return;
	}	
	params += "&formulario=" + formulario.val();
	Aguarde(true);	
	$.post('edita_trata.php', params, function(r){
		switch (r) {
			case 'limite':
				Aguarde(false);
				Alerta('Formulários Esgotados!', 'Seu plano não permite criar mais formulários.<br><br>Para criar novos formulários será necessário assinar um plano maior.', 'erro');			
				break;				
			case 'limite_campo':
				Aguarde(false);
				Alerta('Campos Esgotados!', 'A cópia deste formulário ultrapassa a quantidade de campos do seu plano.<br><br>Para copiar este forrmulário será necessário assinar um plano maior.', 'erro');
				break;
			default:
				$('#sel_edita_formulario').append("<option value='"+r+"'>"+texto+" (CÓPIA)</option>"); // adiciona novo option
				$('#sel_edita_formulario option[value='+r+']').attr('selected','selected'); // seleciona option criado
				EditaFormulario();
				break;
		}
	});
}

// altera as informações de cada propriedade do formulário
function AlterarFormulario(campobd, valorbd, funcao) {
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=alterar_formulario";
	if ($.trim(formulario.val()) == '') {
		Alerta('Edição de Formulário', 'Selecione o formulário que deseja alterar.', 'alerta', formulario);
		return;
	}
	params += "&formulario=" + formulario.val();
	params += "&campobd=" + campobd;
	params += "&valorbd=" + escape(valorbd);
	$.post('edita_trata.php', params, function(r){
		Aguarde(false);
		if (!Vazio(funcao)) {eval(funcao);} // executa função
	});
}

// insere um novo campo no formulário
function InserirCampo(tipo, li, funcao) {	
	var campo_ajax = '';
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=inserir_campo";
	params += "&formulario=" + formulario.val();
	params += "&tipo=" + tipo;
	
	// campo relacionado
	if (tipo == 99) {
		if ($('#sel_formulario_campo').val() == '') {
			li.remove(); // remove li de aguarde
			Alerta('Inserir Campos', 'Selecione o formulário e em seguida o campo que deseja inserir.', 'alerta', $('#sel_formulario_campo'));
			return;
		}
		if ($('#sel_campo').val() == '') {
			li.remove(); // remove li de aguarde
			Alerta('Inserir Campos', 'Selecione o campo que deseja inserir.', 'alerta', $('#sel_campo'));
			return;
		}
		params += "&formulario_pai=" + $('#sel_formulario_campo').val();
		params += "&campo_pai=" + $('#sel_campo').val();
		// campos combinado no ajax
		campo_ajax = $('#sel_campo option:selected').attr('campo_id');
		if (!Vazio(campo_ajax)) {
			params += "&campo_ajax=" + campo_ajax;	
		}
	}
	
	$.post('edita_trata.php', params, function(r){	
		if (r == 'limite') {
			li.remove();
			Aguarde(false);
			Alerta('Campos Esgotados!', 'Seu plano não permite inserir mais campos.<br><br>Para adicionar novos campos será necessário assinar um plano maior.', 'erro');
		} else {		
			if (tipo == 99) { // caso tenha inserido um campo relacionado, recarrega todo o formulário
				EditaFormulario();
			} else {	
				$('#hdn_campo_selecionado').val(r) // armazena o id criado
				li.html(CampoHTML(tipo)); // sobrescreve o <li> aguarde
				li.attr('id', 'li_'+r); // coloca o ID recem inserido
				Aguarde(false);
				OrdenarCampos(); // reordena os campos
				if (!Vazio(funcao)) {eval(funcao);} // executa função
			}
		}
	});
}

// altera as informações de cada propriedade do campo
function AlterarCampo(campobd, valorbd, funcao) {
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=alterar_campo";
	params += "&formulario=" + formulario.val();
	params += "&campo=" + $('#hdn_campo_selecionado').val();
	params += "&campobd=" + campobd;
	params += "&valorbd=" + escape(valorbd);
	$.post('edita_trata.php', params, function(r){
		//debug(r);
		Aguarde(false);
		if (!Vazio(funcao)) {eval(funcao);} // executa função
	});
}

// insere um novo detalhe no campo
function InserirDetalhe(img) {	
	var opcao;
	var li_pai = img.parent();
	var detalhe = img.attr('detalhe');	
	var campo = $('#hdn_campo_selecionado').val();
	var tipo = $('#hdn_tipo_'+campo).val();
	var params = "opcao=inserir_detalhe";
	params += "&campo=" + campo;
	
	switch (parseInt(tipo)) {
		case 15: // <select>
			opcao = 'select';
			break;
		case 17: // <radio>
			opcao = 'radio';
			break;
		case 18: // <checkbox>
			opcao = 'check';
			break;
	}
	
	// cria um novo elemento <li> com aguarde	
	li = $("<li><img src='img/aguarde2.gif'></li>");
	li_pai.after(li); // insere o na lista
	
	// armazena a ordem que deve ser inserido
	params += "&ordem=" + $('#ul_opcoes_'+opcao+' li').index(li);

	$.post('edita_trata.php', params, function(r){
		// insere item no ...
		switch (parseInt(tipo)) {
			case 15: // <select>
				$('#'+campo+' option[value='+detalhe+']').after("<option value='"+r+"'>Novo Item</option>");
				break;
			case 17: // <radio>
				$('#li_'+campo+' input[value='+detalhe+']').parent().after("<span class='opc'><input name='campo_"+campo+"' type='radio' class='radio' value='"+r+"'> <span>Novo Item</span></span>");
				break;
			case 18: // <checkbox>
				$('#li_'+campo+' input[value='+detalhe+']').parent().after("<span class='opc'><input name='campo_"+campo+"' type='checkbox' class='check' value='"+r+"'> <span>Novo Item</span></span>");
				break;
		}		
		// sobrescreve o aguarde (alterar em outro local)
		li.html("<li><input type='checkbox' class='padrao' detalhe='"+r+"' title='Marque se este item for selecionado por padrão'><input type='text' maxlength='100' class='descricao' value='Novo Item' detalhe='"+r+"'><input type='text' class='valor' detalhe='"+r+"'><img class='add-detalhe' src='img/opc-add.png' title='Adicionar Item' detalhe='"+r+"'><img class='del-detalhe' src='img/opc-del.png' title='Excluir Item' detalhe='"+r+"'></li>")
	});
}

// altera as informações do detalhe do campo
function AlterarDetalhe(detalhe, padrao, descricao, valor, funcao) {
	var params = "opcao=alterar_detalhe";
	params += "&detalhe=" + detalhe;
	params += "&padrao=" + padrao;
	params += "&descricao=" + escape(descricao);
	params += "&valor=" + valor.replace(/\./g,'').replace(/\,/g,'.');
	$.post('edita_trata.php', params, function(r){
		Aguarde(false);
		if (!Vazio(funcao)) {eval(funcao);} // executa função
	});
}

// insere um novo detalhe no campo
function ExcluirDetalhe(detalhe) {
	var opcao;
	var campo = $('#hdn_campo_selecionado').val();
	var tipo = $('#hdn_tipo_'+campo).val();
	var params = "opcao=excluir_detalhe";
	params += "&campo=" + campo;
	params += "&detalhe=" + detalhe;
	// retira o elemento do formulário
	switch (parseInt(tipo)) {
		case 15: // <select>
			opcao = 'select';
			$('#'+campo+' option[value='+detalhe+']').remove();
			break;
		case 17: // <radio>
			opcao = 'radio';
			$('#li_'+campo+' input[value='+detalhe+']').parent().remove()
			break;
		case 18: // <checkbox>
			opcao = 'check';
			$('#li_'+campo+' input[value='+detalhe+']').parent().remove()
			break;
	}	
	$('#ul_opcoes_'+opcao+' input[detalhe='+detalhe+']').parent().remove(); // retira o elemento <li> das propriedades	
	$.post('edita_trata.php', params);
}

// ordena os campos e a suas respectivas colunas
function OrdenarCampos() {
	var li, vazio;
	var formulario = $('#sel_edita_formulario');
	var params = "opcao=ordenar_campos";
	if ($.trim(formulario.val()) == '') {
		Alerta('Ordenação de Campos', 'Selecione o formulário que deseja alterar.', 'alerta', formulario);
		return;
	}
	params += "&formulario=" + formulario.val();	
	// percorre as 2 colunas
	vazio = true;
	for (i = 1; i <= 2; i++) {
		ordem = 1;
		li = $('#ul_coluna_'+i+' li');
		li.each(function(){
			params += "&campo[]=" + $(this).attr('id').split('_')[1];
			params += "&coluna[]=" + i;
			params += "&ordem[]=" + ordem;
			ordem++;
			vazio = false;
		});
	}
	if (!vazio) {
		$.post('edita_trata.php', params);
	}
}

function ExcluirFormulario() {
	var params = "opcao=excluir_formulario";
	params += "&formulario=" + $('#sel_edita_formulario').val();
	$.post('edita_trata.php', params, function(){
		EditaSistema();
		Alerta('Exclusão de Formulário', 'Formulário excluído com sucesso!', 'sucesso');
	});
}

function ExcluirCampo() {
	var campo = $('#hdn_campo_selecionado').val();
	var params = "opcao=excluir_campo";
	params += "&campo=" + campo;
	// remove <li> da tela
	$('#li_'+campo).remove();
	$('#div_propriedade').hide();
	// exclui do bd
	$.post('edita_trata.php', params);
	$('#hdn_campo_selecionado').val(''); // limpa o campo selecionado
}

function ComboCampos(formulario) {
	var span = $('#span_combo_campo');
	span.html("<img src='img/aguarde2.gif'>");
	span.load('edita_combo_campo.php', 'formulario='+formulario, function(){});
}

/*********************************************************************************************************************************************************
--| Edição de Relatórios
**********************************************************************************************************************************************************/
function EditaRelatorio() {
	// seleciona a linha e desmarca o outro
	$('#div_lin_form').css('background-color','#EFEFEF');
	$('#div_lin_relat').css('background-color','#FFFFE1');
	$('#sel_edita_formulario').val('');
	
	var relatorio = $("#sel_edita_relatorio").val();
	var params = 'sistema=' + $("#sel_edita_sistema").val();
	params += '&relatorio=' + relatorio;
	if (relatorio == '') {
		$('#div_lin_relat').css('background-color','#EFEFEF');
		$('#div_edita_formulario').html('');
	} else {
		Aguarde(true);		
		// carrega formulário
		$.post('edita_relatorio.php', params, function(r){
			$('#div_edita_formulario').html(r);
			Aguarde(false);
		});
	}
}

// cria um novo relatório no sistema
function CriarRelatorio() {
	var params = "opcao=inserir_relatorio";
	params += "&sistema=" + $('#sel_edita_sistema').val();	
	Aguarde(true);
	$.post('edita_trata.php', params, function(r){
		$('#sel_edita_relatorio').append("<option value='"+r+"'>Novo Relatório</option>"); // adiciona novo option
		$('#sel_edita_relatorio option[value='+r+']').attr('selected','selected'); // seleciona option criado
		EditaRelatorio();
	});
}

// altera as informações de cada propriedade do relatório
function AlterarRelatorio(campobd, valorbd, funcao) {
	var relatorio = $('#sel_edita_relatorio');
	var params = "opcao=alterar_relatorio";
	if ($.trim(relatorio.val()) == '') {
		Alerta('Edição de Relatório', 'Selecione o relatório que deseja alterar.', 'alerta', relatorio);
		return;
	}
	params += "&relatorio=" + relatorio.val();
	params += "&campobd=" + campobd;
	params += "&valorbd=" + escape(valorbd);
	$.post('edita_trata.php', params, function(r){
		Aguarde(false);
		if (!Vazio(funcao)) {eval(funcao);} // executa função
	});
}

function ExcluirRelatorio() {
	var params = "opcao=excluir_relatorio";
	params += "&relatorio=" + $('#sel_edita_relatorio').val();
	$.post('edita_trata.php', params, function(){
		EditaSistema();
		Alerta('Exclusão de Relatório', 'Relatório excluído com sucesso!', 'sucesso');
	});
}

function ComboCampoRelatorio(formulario, campo) {
	var span = $('#span_campo_pk');
	span.html("<img src='img/aguarde2.gif'>");
	span.load('edita_combo_campo_pk.php', 'formulario='+formulario+'&campo='+campo, function(){});
}

function ComboCampoFK(campo_pk) {
	var span = $('#span_campo_fk');
	span.html("<img src='img/aguarde2.gif'>");
	span.load('edita_combo_campo_fk.php', 'campo_pk='+campo_pk, function(){});
}

// valida informações dos colunas
function ValidaColuna(opcao) {	
	var titulo = $('#txt_edita_coluna');
	var coluna = $('#hdn_edita_coluna');
	var relatorio = $('#sel_edita_relatorio');
	var campo_fk = $('#sel_campo_fk');
	var params = 'opcao=' + opcao;	
	
	if ((opcao == 'inserir_coluna') || (opcao == 'alterar_coluna')) {
		if ((opcao == 'alterar_coluna') && (coluna.val() == '')) {
			Alerta('Colunas do relatório', 'Antes de utilizar este botão clique no coluna que deseja alterar.', 'alerta');
			return;
		}
		if ($.trim(titulo.val()) == '') {
			Alerta('Colunas do relatório', 'Informe o título do coluna.', 'alerta', titulo);
			return;
		}
		if ($.trim(campo_fk.val()) == '') {
			Alerta('Colunas do relatório', 'Selecione o formulário > campo relacionado a esta coluna.', 'alerta', campo_fk);
			return;
		}		
	}
	params += "&titulo=" + escape(titulo.val());
	params += "&coluna=" + coluna.val();
	params += "&relatorio=" + relatorio.val();
	params += "&campo_fk=" + campo_fk.val();

	Aguarde(true);
	$.post('edita_trata.php', params, function(r){
		titulo.val('');
		coluna.val('');
		EditaRelatorio();
		switch (r) {
			case 'inserir_coluna':
				break;				
			case 'alterar_coluna':
				break;
			case 'excluir_coluna':
				break;
			case 'anexar_coluna':
				break;
			default:
				alert("ERRO! Colunas do sistema!");
				break;
		}		
	});
}

function ExcluirColuna() {
	var menu = $('#hdn_edita_coluna');
	if (menu.val() == '') {
		Alerta('Colunas do Relatório', 'Antes de utilizar este botão clique no título da coluna que deseja excluir.', 'alerta');
		return;
	}
	Confirma('Excluir Menu', 'Confirma a exclusão deste menu?', "ValidaColuna('excluir_coluna')");
}

// insere ou exclui o campo da coluna
function PesoColuna(coluna, peso) {	
	var params = 'opcao=peso_coluna';	
	params += "&coluna=" + coluna;
	params += '&peso=' + peso.replace(/\./g,'').replace(/\,/g,'.');
	$.post('edita_trata.php', params);
}

// insere ou exclui o campo da coluna
function CampoColuna(campo, coluna, marcado) {	
	var params = 'opcao=excluir_campo_coluna';
	if (marcado) {params = 'opcao=inserir_campo_coluna';}
	params += '&campo=' + campo;
	params += "&coluna=" + coluna;
	$.post('edita_trata.php', params);
}

/*********************************************************************************************************************************************************
--| Validações
**********************************************************************************************************************************************************/	
function ValidaCep(cep){
    var r = true;
	var exp = /\d{2}\.\d{3}\-\d{3}/;
    if (!exp.test(cep)) {
        r = false;
	}
	return r;
}

function ValidaEmail(email){
    var r = true;
	var exp = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
    if (!exp.test(email)) {
        r = false;
	}
	return r;
}

function ValidaCPF(cpf) {
   var digito = cpf.toString();
   if (cpf == '000.000.000-00'){
      return(false)
   }	
   if (cpf == '111.111.111-11'){
      return(false)
   }
   if (cpf == '222.222.222-22'){
      return(false)
   }	
   if (cpf == '333.333.333-33'){
      return(false)
   }	
   if (cpf == '444.444.444-44'){
      return(false)
   }	
   if (cpf == '555.555.555-55'){
      return(false)
   }	
   if (cpf == '666.666.666-66'){
      return(false)
   }	
   if (cpf == '777.777.777-777'){
      return(false)
   }	

   if (cpf == '888.888.888-88'){
      return(false)
   }
   if (cpf == '999.999.999-99'){      
      return(false)
   }

   // DIGITO 1
   var soma1 = 0
       soma1 = soma1 + 10 * digito.charAt(0);
       soma1 = soma1 +  9 * digito.charAt(1);
       soma1 = soma1 +  8 * digito.charAt(2);
       soma1 = soma1 +  7 * digito.charAt(4);
       soma1 = soma1 +  6 * digito.charAt(5);
       soma1 = soma1 +  5 * digito.charAt(6);
       soma1 = soma1 +  4 * digito.charAt(8);
       soma1 = soma1 +  3 * digito.charAt(9);
       soma1 = soma1 +  2 * digito.charAt(10);
   
   var divisao1    = soma1 / 11
   
   var multiplica1 = parseInt(divisao1,10) * 11
   
   var resto1      = soma1 - multiplica1
   
   if (resto1 <= 1){
      var digi1 = 0
   } else {
      var digi1 = 11 - resto1
   }
 

   // DIGITO 2
   var soma2 = 0
       soma2 = soma2 + 11 * digito.charAt(0);
       soma2 = soma2 + 10 * digito.charAt(1);
       soma2 = soma2 +  9 * digito.charAt(2);
       soma2 = soma2 +  8 * digito.charAt(4);
       soma2 = soma2 +  7 * digito.charAt(5);
       soma2 = soma2 +  6 * digito.charAt(6);
       soma2 = soma2 +  5 * digito.charAt(8);
       soma2 = soma2 +  4 * digito.charAt(9);
       soma2 = soma2 +  3 * digito.charAt(10);
       soma2 = soma2 +  2 * digi1       

   var divisao2    = soma2 / 11

   var multiplica2 = parseInt(divisao2,10) * 11

   var resto2      = soma2 - multiplica2

   if (resto2 <= 1){
      var digi2 = 0
   } else {
      var digi2 = 11 - resto2
   }  
   if (digito.charAt(12) == digi1.toString() & digito.charAt(13) == digi2.toString()) {
      return(true)
   } else {
      
      return(false)
   }
}

function ValidaCNPJ(cnpj) {
    var r = true;
    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
    var dig1 = new Number;
    var dig2 = new Number;    
    var exp = /\.|\-|\//g;
    cnpj = cnpj.toString().replace( exp, "" ); 
    var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));        
    for (i = 0; i<valida.length; i++) {
        dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);    
        dig2 += cnpj.charAt(i)*valida[i];    
    }
    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));    
    if (((dig1*10)+dig2) != digito) {
        return false;
	}
	return r;
}

/*********************************************************************************************************************************************************************
| UPLOADS
*********************************************************************************************************************************************************************/
// altera o logotipo do sistema
function Upload() {
	var form = document.getElementById("frm_upload");
	var action = "upload.php";
	var ext;
	
	if ($("#file_upload").val() == '') {
		Alerta('Logotipo', 'Antes de enviar utilize o botão para procurar e selecionar a imagem desejada.', 'alerta');
		return;
	}
	
	arq = $("#file_upload").val();
	ext = arq.substring(arq.length-4, arq.length);
	ext = ext.toLowerCase()	
	if ((ext != "jpeg") && (ext != ".jpg") && (ext != ".gif") && (ext != ".png")) {	
		Alerta('Logotipo', 'ARQUIVO INVÁLIDO!<br><br>Você só pode enviar arquivos nos formatos: .JPG, .GIF ou .PNG', 'alerta');
		return;
	}
	
	Aguarde(true);
	
	// criando iframe
	var iframe = document.createElement("iframe");
	iframe.setAttribute("id","iframe_temp");
	iframe.setAttribute("name","iframe_temp");
	iframe.setAttribute("width","0");
	iframe.setAttribute("height","0");
	iframe.setAttribute("border","0");
	iframe.setAttribute("style","width:0; height:0; background-color:white; border:none;");
	
	// adicionando ao formulário
	form.parentNode.appendChild(iframe);
	window.frames['iframe_temp'].name = "iframe_temp"; //seta o nome pra funcionar no ie
	
	form.setAttribute("target", "iframe_temp");
	form.setAttribute("action", action);
	form.setAttribute("method","post");
	form.setAttribute("enctype","multipart/form-data");
	form.setAttribute("encoding","multipart/form-data");
	form.submit();
}

function UploadLogoOK(sistema) {
	Aguarde(false);
	$.fn.colorbox.close();
	Alerta('Logotipo', 'Logotipo alterado com sucesso!<br><br>Caso ainda não esteja visualizando o novo logotipo no seu sistema, recarregue a página com CTRL + F5.', 'sucesso');	
}
