//Esse arquivo contém algumas ações que são padrões nos sites desenvolvidos pela Fivecom
//Para adicionar essas funcionalidades às páginas, siga as instruções em cada uma das funções e/ou eventos abaixo

$(document).ready(function(){
	
	Ajax.init();
	
	//AÇÃO DE VOLTAR
	//adicione id="voltar" no elemento que receberá a ação do clique
	$('#voltar').click(function(){ window.history.go(-1); });
	

	//IMPRIMIR PÁGINA
	//adicione id="imprimir" no elemento que receberá a ação do clique
	//caso exista uma página própria para impressão, descomente as linhas  comentadas
	//e insira no atributo rel da tag a que receberá o clique o enderço da página de impressão
	$('#imprimir').click(function(){	
		//var pagina = $(this).attr('rel');
		//window.open(pagina);
		window.print();
		return false;
	});

	
	//PLACEHOLDER NOS CAMPOS
	//um placeholder nada mais é do que oefeito de colocar um texto dentro de um input e/ou textarea
	//e ao ser clicado o texto desaparecer, deixando o elemento vazio, pronto para edição
	//quando esse elemento perde o foco, caso não tenh asido digitado nenhum texto, o texto padrão volta a aparecer
	//para inserir o placeholder basta adicionar class="formulario" ao elemento que envolve os campos do formulário
	/*$('input').click(function(){ $(this).val(''); });
	
	$('input').blur(function(){
		var texto = $(this).attr('title');
		if ($(this).val() == '') {
			$(this).val(texto);
		}
	});
	
	$('textarea').click(function(){ $(this).val(''); });
	
	$('textarea').blur(function(){
		var texto = $(this).attr('title');
		if ($(this).val() == '') {
			$(this).val(texto);
		}
	});*/
	
	//SUBMIT EM FORMULÁRIOS
	//parta executar o submit dos fomulários de um site, basta inserir a classe submit (class="submit")
	//no elemento responsável por esse evento e inserir um elemento para receber a infromação de sucesso
	//ou erro, colocando nesse elemento o id="loading"
	$('.submit').click(function(){
		var msg = new Array();

		var jq = $('#loading');
		var jqForm = $(this).parents("form");
		var i = 0;

		var inputs = jqForm.find('input');
		i = inputs.size();
		while(i--){
			var input = inputs.get(i);
			if(input.type == 'text'){
				if(input.title != '' && input.value == ''){
					msg.push("O campo "+input.title+" é obrigatório") ;
				}
			}
		}

		var inputs = jqForm.find('textarea');
		var i = inputs.size();
		while(i--){
			var input = inputs.get(i);
			if(input.title != '' && input.value == ''){
				msg.push("O campo "+input.title+" é obrigatório");
			}
		}
		
		var inputs = jqForm.find('select');
		var i = inputs.size();
		while(i--){
			var input = inputs.get(i);
			if(input.title != '' && input.value == ''){
				msg.push("O campo "+input.title+" é obrigatório");
			}
		}
		
		
		if (msg.length > 0) {
			var text = "";
			for(i=0;i<msg.length;i++)
				text += msg[i] + "<br />";
			
			if (text != "")
				jq.html(text);
		}
		else {
			var buttom = $(this);
			var params = jqForm.serialize();
			$.ajax({
				type: jqForm.attr("method"),
				url: jqForm.attr("action"),
				data: params,
				beforeSend: function(){
					jq.show();
					jq.html('Enviando...');
					buttom.hide();
				},
				success: function(txt){
					xml = $(txt);
					var msg = "";
					xml.find("msgs msg").each(function(i) {
						msg += $(this).text() + "<br/>";
					});
					if (xml.find("return").text() == "1")
						jqForm.get(0).reset();
					else
						buttom.show();
					jq.html(msg);
				},
				error: function(txt){
					jq.html(txt);
				}
			})
		}
		return false;
	});
	
	//CADASTRAR
	$('#cadastrar').click(function(){
		var jq = $('#loading');	

		var form = $(this).parents('form');
		var data = $(form).serialize();
		
		$.ajax( {
			url: $(form).attr("action"),
			type: $(form).attr("method"),
			data: data,
			cache: false,
			async: true,
			beforeSend: function(xmlhttprequest){
			},
			complete: function(xmlhttprequest) {
			},
			error: function(XMLHttpRequest, textStatus, errorThrown){
			},
			success: function(html){
				var xml = $(html);
				if (xml.find("return").text() == "1")
					alert('Cadastro realizado com sucesso');
				else {
					var msg = "";
					xml.find("msgs msg").each(function(i) {
						msg += $(this).text() + "\n";
					});					
					alert(msg);
				}
			}
		});
		return false;
	});
	
	//LOGIN
	$('.logar').click(function(){

		var form = $(this).parents('form');
		var data = $(form).serialize();
		
		$.ajax( {
			url: $(form).attr("action"),
			type: $(form).attr("method"),
			data: data,
			cache: false,
			async: true,
			beforeSend: function(xmlhttprequest){
			},
			complete: function(xmlhttprequest) {
			},
			error: function(XMLHttpRequest, textStatus, errorThrown){
			},
			success: function(html){
				var xml = $(html);
				if (xml.find("return").text() == "1") {
					alert('Logado');
					var codigo = xml.find("cd_usuin").text();
					var usuario = xml.find("nm_usuin").text();
					$.cookie('cd_usuin', codigo);
					$.cookie('nm_usuin', usuario);
					window.location.href = 'index.php?id=/area_restrita/index.php';
				}
				else {
					var msg = "";
					xml.find("msgs msg").each(function(i) {
						msg += $(this).text() + "\n";
					});					
					alert(msg);
				}
			}
		});
		return false;
	});
	
	$('.deslogar').click(function(){
		$.cookie('cd_usuin', null);
		$.cookie('nm_usuin', null);
		$.cookie('cd_site', null);
		window.location.href = 'index.php?id=/capa/index.php';
		return false;
	});
	
	
	//Espaço na primeira div na materia
	
	$('.conteudo_materia div').eq(0).css('margin-top', '10px');

	
	//ANIMAÇÔES

	//mantenedores	
   $('#box-mnt').jcarousel({
        auto: 5,
        wrap: 'last',
				scroll:6

    });
		
		//comites tematicos
   $('#mycarouselCT').jcarousel({
        vertical: true,
				auto: 2,
        wrap: 'last',
				scroll:2

    });
	
	$('#mycarouselCT2').jcarousel({
        vertical: true,
				auto: 2,
        wrap: 'last',
				scroll:2

    });
   
   //Galeria Materia	
   $('.jcarousel-skin-menor').jcarousel();

	
	//animação capa - Banner Destaque
	$('#Banner')
	  .before('<div id="nav">')
	  .cycle({
    	fx:     'fade',
    	speed:   1000,
    	timeout: 7000,
    	pager:  '#nav'
	});
	  
	  //animação capa - Banners
	$('#imgs-rotative')
	  .cycle({
    	fx:     'fade',
    	speed:   600,
    	timeout: 4000    
	});
	  
	  //animação capa - Banners
	$('#imgs-rotative2')
	  .cycle({
    	fx:     'fade',
    	speed:   600,
    	timeout: 5000    
	});
	  
	
$('#Banner li div').css('display', 'none');

$('#Banner li').mouseenter(function(){
    var jq = $(this);
    jq.find("div").fadeIn(1000);
        
});

$('#Banner').mouseleave(function(){
    $('#Banner div').fadeOut(2000);

    
    setTimeout(function() { $('.detalhes').css('display', 'none') }, 12000);
    //$('#Banner li div').css('display', 'none');
});
	

	
});

//Ajax
var Ajax = {
	init:function(){
		$('.ajaxLink').click(Ajax.link);
		$('.ajaxForm').click(Ajax.form);
		
		$('.ajaxTitle').each(function(){ 
			var title = $(this).attr('title');
			var value = $(this).val();
			if (value == "") { 
				$(this).val(title);
			}
			$(this).removeClass('ajaxTitle');
		}).focus(function(){
			var title = $(this).attr('title');
			var value = $(this).val();
			if (title == value) {
				$(this).val('');
			}
		}).blur(function(){
			var title = $(this).attr('title');
			var value = $(this).val();
			if (value == "") {
				$(this).val(title);
			}
		});
	},
	link:function(){
		//var ajaxBox = $(this).parents('.ajaxBox');
		var confirm = true;
		if($(this).attr('title') != ''){
			confirm = window.confirm($(this).attr('title'));
		}
		if(confirm){
			var url = $(this).attr('href');
			$.ajax({
				url:url,
				context:this,
				success:Ajax.success
			});
		}
		return false;
	},
	
	form:function(){
		//var url = $(this).attr('href');
		Ajax.valorBotao = $(this).html();
		$(this).html('enviando...');
		//$(this).attr('disabled', 'disabled');

		var dados = $(this).parents('form').serialize();
		var url = $(this).parents('form').attr('action');
		var method = $(this).parents('form').attr('method');
        
		var msg = new Array();
		var jqForm = $(this).parents("form");
		var jqReturn = $(this).parents(".ajaxBox").find('.ajaxReturn');
		var i = 0;

		var inputs = jqForm.find('input');
		i = inputs.size();
		while(i--){
			var input = inputs.get(i);
			if(input.type == 'text'){
				if ((input.title != '') && (input.value == '')){
					msg.push("O campo "+input.title+" é obrigatório") ;
				}
			}
		}

		inputs = jqForm.find('textarea');
		i = inputs.size();
		while(i--){
			input = inputs.get(i);
			if(input.title != '' && input.value == ''){
				msg.push("O campo "+input.title+" é obrigatório");
			}
		}
	
		inputs = jqForm.find('select');
		i = inputs.size();
		while(i--){
			input = inputs.get(i);
			if(input.title != '' && input.value == ''){
				msg.push("O campo "+input.title+" é obrigatório");
			}
		}
	
		if (msg.length > 0) {
			var text = "<ul class=\"aviso error\">";
			for(i=0;i<msg.length;i++)
				text += "<li>" + msg[i] + "</li>";
			text += "</ul>";
		
			if (text != "")
				jqReturn.html(text);
		
		}    
		else {	
			$.ajax({
				url:url,
				context:this,
				data:dados,
				type: method,
				success:Ajax.success
			});
		}
		return false;
	},
	success:function(data){
		var msg = "";
		var ajaxBox = $(this).parents('.ajaxBox').eq(0);
		data = new String(data);
		var flag = data.match(/<return>1<\/return>/gi);
		if(flag){
			var msg = '<ul class="aviso sucess">';
		}else{
			var msg = '<ul class="aviso error">';
			//$(this).removeAttr('disabled');
			//$(this).html(Ajax.valorBotao);
		}
		var msgs = new String(data.match(/<msg>.*<\/msg>/gi));
		msgs = msgs.replace(/(<msg>)|(<\/msg>)/gi, '') + ',';
		msgs = msgs.split(',');
		var total = msgs.length - 1;

		for(var i=0;i<total;i++)
			msg += '<li>'+ msgs[i]+"</li>\n";

		msg += '</ul>';
		

		$('.ajaxReturn').html(msg).show();
	
		// Possibilidades
		if(ajaxBox.hasClass('ajaxRemove') && ajaxBox.hasClass('ajaxReturn')){
			ajaxBox.html(msg).show();
			
		}else{
			if(ajaxBox.hasClass('ajaxRemove')){
				ajaxBox.remove();
			}else{
				if(ajaxBox.hasClass('ajaxReturn')){
					ajaxBox.append(msg);
				}else{
					ajaxBox.find('.ajaxReturn').html(msg).show();
					if(flag == '1'){
						ajaxBox.find('.ajaxRemove').remove();
					}
				}
			}
		}
	}
};
	
