$(document).ready(function() {
	// Enviando e validando o formulário de cadastro
	$("#formCadastro").validate({
		invalidHandler: function(e, validator) {
			/*var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? '1 campo ainda est&aacute; com erro'
					: errors + ' campos ainda est&atilde;o com erro';
				$(".msgError div").html(message);
				$(".msgError").show();
				
			} else {
				$(".msgError").hide();
			}
			*/
		},
		rules: {
			telefone: {
				required: true,
				minlength: 10
			},
			cep: {
				required: true,
				minlength: 8
			},
			senha: {
				required: true,
				minlength: 6
			},
			senhar: {
				required: true,
				minlength: 6
			},
			emailUser: {
				required: true,
				email: true,
				remote: "cadastroemails.php"
			}

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				beforeSubmit:  function(){
					$('#msgCadastro').hide();
					$("#loader").show();
				},  
				type: 'post',
				clearForm: true,
				success: function(){
					$('#formCadastro').hide();
					$('#msgCadastro').show();
					$('.msgError').hide();
					$("#loader").hide();
				}
			};
			
				$('#formCadastro').ajaxSubmit(options); 
				return false; 
			
		},
		messages: {
			nome: 		{ required: " " },
			telefone: 	{ required: " ", minlenght: "O telefone est&aacute; incompleto" },
			endereco: 	{ required: " " },
			bairro: 	{ required: " " },
			cidade: 	{ required: " " },
			estado: 	{ required: " " },
			cep: 		{ required: " ", minlenght: "O CEP est&aacute; incompleto" },
			senha: 		{ required: " ", minlength: "A senha deve ter no m&iacute;nimo 6 caracteres" },
			senhar:{
				required: " ",
				minlength: "A senha deve ter no m&iacute;nimo 6 caracteres",
				equalTo: "Por favor, digite a mesma senha novamente"
			},
			emailUser: {
				required: " ",
				email: "Insira um endere&ccedil;o de email v&aacute;lido",
				remote: jQuery.validator.format("Email cadastrado por outro usu&aacute;rio")
			}
		}
	});

	// Atualizando e validando o formulário de cadastro
	$("#formEditar").validate({
		invalidHandler: function(e, validator) {
			/*var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? '1 campo ainda est&aacute; com erro'
					: errors + ' campos ainda est&atilde;o com erro';
				$(".msgError div").html(message);
				$(".msgError").show();
				
			} else {
				$(".msgError").hide();
			}
			*/
		},
		rules: {
			telefone: {
				required: true,
				minlength: 10
			},
			cep: {
				required: true,
				minlength: 8
			},
			senha: {
				required:true,
				minlength: 6
			},
			senhar: {
				required:true,
				minlength: 6,
				equalTo:'#Fsenha'
			},
			emailUser: {
				required: true,
				email: true,
				remote: "cadastroemails.php"
			}

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				beforeSubmit:  function(){
					$('#formEditar').hide();
					$("#loader").show();
				},  
				type: 'post',
				clearForm: true,
				success: function(){
					$('#formEditar').hide();
					$('#msgCadastro').show();
					$('.msgError').hide();
					$("#loader").hide();
				}
			};
			 
				$('#formEditar').ajaxSubmit(options); 
				return false; 
		
		},
		messages: {
			nome: 		{ required: " " },
			telefone: 	{ required: " ", minlenght: "O telefone est&aacute; incompleto" },
			endereco: 	{ required: " " },
			bairro: 	{ required: " " },
			cidade: 	{ required: " " },
			estado: 	{ required: " " },
			cep: 		{ required: " ", minlenght: "O CEP est&aacute; incompleto" },
			senha: 		{ required: " ", minlength: "A senha deve ter no m&iacute;nimo 6 caracteres" },
			senhar:{
				required: "",
				minlength: "A senha deve ter no m&iacute;nimo 6 caracteres",
				equalTo: "Por favor, digite a mesma senha novamente"
			},
			emailUser: {
				email: "Insira um endere&ccedil;o de email v&aacute;lido",
				remote: jQuery.validator.format("Email cadastrado por outro usu&aacute;rio")
			}
		}
	});

	// Enviando e validando o formulário de cadastro
	$("#formRecSenha").validate({
		
		rules: {
			email: {
				required: true,
				email:true,
				minlength: 5,
				remote: "recuperar_existe_email.php"
			}

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				beforeSubmit:  function(){
					$('#msgCadastro').hide();
					$("#loader").show();
				},  
				type: 'post',
				clearForm: true,
				success: function(){
					$('#formRecSenha').hide();
					$('#msgCadastro').show();
					$('.msgError').hide();
					$("#loader").hide();
				}
			};
		
				$('#formRecSenha').ajaxSubmit(options); 
				return false; 
			
		},
		messages: {
			email: {
				required: " ",
				email: "Insira um endere&ccedil;o de email v&aacute;lido",
				remote: jQuery.validator.format("Email n&atilde;o encontrado em nosso cadastro")
			}
		}
	});

	// Enviando e validando o formulário de produto
	$("#formProduto").validate({
		invalidHandler: function(e, validator) {
			/*var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? '1 campo ainda est&aacute; com erro'
					: errors + ' campos ainda est&atilde;o com erro';
				$(".msgError div").html(message);
				$(".msgError").show();
				
			} else {
				$(".msgError").hide();
			}
			*/
		},
		rules: {
			codigo: {
				required: true
			},
			codigoAnvisa: {
				required: true
			},
			nome: {
				required: true
			},
			descricao: {
				required: true
			},
			fornecedor: {
				required: true
			},
			especialidade: {
				required: true
			},
			foto1: {
				required: true,
				accept: "(jpe?g|gif|png)"
			},
			foto2: {
				accept: "(jpe?g|gif|png)"
			},
			foto3: {
				accept: "(jpe?g|gif|png)"
			},
			pdf1: {
				accept: "(pdf)"
			},
			pdf2: {
				accept: "(pdf)"
			}
			

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				type: 'post',
				clearForm: false
			};
			
				$('#formProduto').ajaxSubmit(options); 
				$('#msgCadastro').hide();
				$("#loader").show();
				$('#formProduto').hide();
				$('#msgCadastro').show();
				$('.msgError').hide();
				$("#loader").hide();
				return false; 
			
		},
		messages: {
			codigo: 		{ required: " Digite o código" },
			codigoAnvisa: 		{ required: " Digite o código ANVISA" },
			nome: 			{ required: " Digite o nome" },
			descricao: 		{ required: " Digite a descrição" },
			fornecedor: 	{ required: " Informe o fornecedor" },
			especialidade: 	{ required: " Informe a especialidade" },
			foto1: 			{ required: " Escolha pelo menos uma foto", accept: " Formato de arquivo não aceito" },
			foto2: 			{ accept: " Formato de arquivo não aceito" },
			foto3: 			{ accept: " Formato de arquivo não aceito" },
			pdf1: 			{ accept: " Formato de arquivo não aceito" },
			pdf2: 			{ accept: " Formato de arquivo não aceito" }
		}
	});

	// Enviando e validando o formulário de produto atlzar
	$("#formProdutoAtu").validate({
		
		rules: {
			codigo: {
				required: true
			},
			codigoAnvisa: {
				required: true
			},
			nome: {
				required: true
			},
			descricao: {
				required: true
			},
			texto: {
				required: true
			},
			fornecedor: {
				required: true
			},
			especialidade: {
				required: true
			},
			foto1: {
				accept: "(jpe?g|gif|png)"
			},
			foto2: {
				accept: "(jpe?g|gif|png)"
			},
			foto3: {
				accept: "(jpe?g|gif|png)"
			},
			pdf1: {
				accept: "(pdf)"
			},
			pdf2: {
				accept: "(pdf)"
			}
			

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				type: 'post',
				clearForm: false
			};
			
				$('#formProdutoAtu').ajaxSubmit(options); 
				$('#msgCadastro').hide();
				$("#loader").show();
				$('#formProdutoAtu').hide();
				$('#msgCadastro').show();
				$('.msgError').hide();
				$("#loader").hide();
				return false; 
			
		},
		messages: {
			codigo: 		{ required: " Digite o código" },
			codigoAnvisa: 	{ required: " Digite o código ANVISA" },
			nome: 			{ required: " Digite o nome" },
			descricao: 		{ required: " Digite a descrição" },
			texto: 			{ required: " Digite o texto" },
			fornecedor: 	{ required: " Informe o fornecedor" },
			especialidade: 	{ required: " Informe a especialidade" },
			foto1: 			{ required: " Escolha pelo menos uma foto", accept: " Formato de arquivo não aceito" },
			foto2: 			{ accept: " Formato de arquivo não aceito" },
			foto3: 			{ accept: " Formato de arquivo não aceito" },
			pdf1: 			{ accept: " Formato de arquivo não aceito" },
			pdf2: 			{ accept: " Formato de arquivo não aceito" }
		}
	});

	// Enviando e validando o formulário de eventos
	$("#formEvento").validate({
		invalidHandler: function(e, validator) {
			/*var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? '1 campo ainda est&aacute; com erro'
					: errors + ' campos ainda est&atilde;o com erro';
				$(".msgError div").html(message);
				$(".msgError").show();
				
			} else {
				$(".msgError").hide();
			}
			*/
		},
		rules: {
			titulo: {
				required: true
			},
			texto: {
				required: true
			},
			dataini: {
				required: true
			},
			datafim: {
				required: true
			}
			

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				beforeSubmit:  function(){
					$('#msgCadastro').hide();
					$("#loader").show();
				},  
				type: 'post',
				clearForm: true,
				success: function(){
					$('#formEvento').hide();
					$('#msgCadastro').show();
					$('.msgError').hide();
					$("#loader").hide();
				}
			};
			
				$('#formEvento').ajaxSubmit(options); 
				return false; 
			
		},
		messages: {
			titulo: 		{ required: " Digite o título" },
			texto: 			{ required: " Digite o texto" },
			dataini: 		{ required: " Digite a data de inínio" },
			datafim: 		{ required: " Digite a data de término" }
		}
	});

	// Login
	$("#formEntrar").validate({
		
		rules: {
			emailUser: {
				required: true,
				email:true,
				minlength: 5
			},
			senha: {
				required:true,
				minlength: 6
			}

		},
		submitHandler: function() {
			// Verificar o login
			var $txtUser,$txtPassword;
		
			$txtUser 		= $("#Femail").val();
			$txtPassword 	= $("#Fsenha").val();

			$.post('login.php',
				   {usuario:$txtUser, senha:$txtPassword},
						function(retorno){
							var $mensagem="";
							$parametros = retorno.split("|");   // parametro 1=tipo de mensagem; 2=executa fade; 3=executa script
						
							if($parametros[0]==1 || $parametros[0]==2 || $parametros[0]==4)
							$mensagem = $parametros[3];
							
							if($parametros[0]==3){
								window.location=$parametros[4];
							}
							
							if($parametros[2]==1){
								$("#msgLogin").html($mensagem);
								$("#msgLogin").show();
								setTimeout(function(){
									$("input[name=password]").val('');
									$("#msgLogin").hide();					
								},2000);
							}
					}
			);
		},
		messages: {
			emailUser: {
				required: "Informe seu email",
				email: "Insira um endere&ccedil;o de email v&aacute;lido"
			},
			senha: 		{ required: "Informe sua senha", minlength: "Informe no m&iacute;nimo 6 caracteres" }
		}
	});

	// Inicio cadastro
	$("#fInicioCad").validate({
		
		rules: {
			nome: {
				required: true
			},
			email: {
				required: true,
				email:true,
				minlength: 5
			}

		},
		messages: {
			nome: {
				required: "Informe seu nome"
			},
			email: {
				required: "Informe seu email",
				email: "Insira um endere&ccedil;o de email v&aacute;lido"
			}
		}
	});

	// Formulário Produto Especialidade
	$("#formEspecialidade").validate({
		
			rules: {
				nome: {
					required: true
				}

			},
			submitHandler: function() {
				$.post('painelprodutos_acoes.php',
				   {especialidade:$("#Fnome").val(), acao: 'especialidade_gravar'},
						function(retorno){
							$("#divInner").append(retorno);
						}
				);
			},
			messages: {
				nome: {
					required: "Informe o nome da especialidade"
				}
			}
	});

	// Formulario Produto Especialidade Remover
	$(".espRemove").click(function(){
		if(confirm("Você tem certeza?")){
			$id = $(this).attr("id");
			$(this).remove();
			$.post('painelprodutos_acoes.php',{especialidade:$id, acao: 'especialidade_remover'});
		}
	});

	// Formulário Produto Fornecedores
	$("#formFornecedor").validate({
		
			rules: {
				nome: {
					required: true
				}

			},
			submitHandler: function() {
				$.post('painelprodutos_acoes.php',
				   {fornecedor:$("#Fnome").val(), acao: 'fornecedor_gravar'},
						function(retorno){
							$("#divInner").append(retorno);
						}
				);
			},
			messages: {
				nome: {
					required: "Informe o nome da especialidade"
				}
			}
	});

	// Formulario Produto Fornecedores Remover
	$(".fornRemove").click(function(){
		if(confirm("Você tem certeza?")){
			$id = $(this).attr("id");
			$(this).remove();
			$.post('painelprodutos_acoes.php',{fornecedor:$id, acao: 'fornecedor_remover'});
		}
	});


	// Enviando e validando o formulário de usuarios
	$("#formUsuarioEditar").validate({
		invalidHandler: function(e, validator) {
			/*var errors = validator.numberOfInvalids();
			if (errors) {
				var message = errors == 1
					? '1 campo ainda est&aacute; com erro'
					: errors + ' campos ainda est&atilde;o com erro';
				$(".msgError div").html(message);
				$(".msgError").show();
				
			} else {
				$(".msgError").hide();
			}
			*/
		},
		rules: {
			nome: {
				required: true
			},
			email: {
				required: true
			},
			telefone: {
				required: true
			},
			estado: {
				required: true
			},
			cidade: {
				required: true
			},
			bairro: {
				required: true
			},
			cep: {
				required: true
			}
			

		},
		submitHandler: function() {
			var options = { 
				target:        '#msgCadastro div',   // target element(s) to be updated with server response 
				beforeSubmit:  function(){
					$('#msgCadastro').hide();
					$("#loader").show();
				},  
				type: 'post',
				clearForm: false,
				success: function(){
					$('#formEvento').hide();
					$('#msgCadastro').show();
					$('.msgError').hide();
					$("#loader").hide();
				}
			};
			
				$('#formUsuarioEditar').ajaxSubmit(options); 
				return false; 
			
		},
		messages: {
			nome: 			{ required: " Digite o nome" },
			email: 			{ required: " Digite o email" },
			telefone: 		{ required: " Digite o telefone" },
			bairro: 		{ required: " Digite o bairro" },
			cidade: 		{ required: " Digite a cidade" },
			estado: 		{ required: " Digite o estado" },
			cep: 		{ required: " Digite o cep" },
		}
	});


});


