/*
 * jQuery Viking Plugin v1.0
 * http://www.ebis.com.br
 * 
 * Licensed to: Ebis Agência Digital
 * Author: Daniel Ambos
 * Twitter: http://twitter.com/#!/danielambos
 * Email : daniel@ebis.com.br
 * Modules : Noticias Videos Contato Paginas
 */
var Pag = "";

$(document).ready(function(){

	/* FUNCTION GET MENU */
	$.ajax({
		type: "GET",
		cache: false,
		async: true,
		dataType: "json",
		url: base + "/default/menu",
		success: function (json) {
			var i = 0;
			for(i=0; i<json.menu.length; i++) {
				if(json.menu[i].submenu != false) {
					$("#menu > ul").append('<li><a href="javascript:;">' + json.menu[i].item + '</a></li>');
					var value = json.menu[i].submenu;
					var Caminho = $("#menu > ul > li").eq(i);
					Submenu(value, Caminho);
				}else{
					if(json.menu[i].type == "home" || json.menu[i].type == "contato" || json.menu[i].type == "noticias" || json.menu[i].type == "videos" ) {
						$("#menu > ul").append('<li><a href="#!/' + json.menu[i].url + '">' + json.menu[i].item + '</a></li>');
					}else if(json.menu[i].type == "link") {
						if(json.menu[i].url.substr(0, 1) == "/") {
							$("#menu > ul").append('<li><a href="#!' + json.menu[i].url + '">' + json.menu[i].item + '</a></li>');
						}else{
							$("#menu > ul").append('<li><a href="' + json.menu[i].url + '" target="_blank">' + json.menu[i].item + '</a></li>');
						}
					}else{
						$("#menu > ul").append('<li><a href="#!/' + json.menu[i].type + "/ver/" + json.menu[i].url + '">' + json.menu[i].item + '</a></li>');
					}
				}
			}
	
			$("#menu li > a").live("click", function() {
				if(!$(this).parent().hasClass("show") && $(this).parent().children().length > 1){
					$("#menu > li ul").stop();
					$(this).parent().parent().children("li").removeClass("show");
					$(this).parent().parent().children("li").children("ul").hide();
					$(this).parent().children("ul").slideDown(500);
					$(this).parent().addClass("show");
				}else{
					$(this).parent().children("ul").stop();
					$(this).parent().animate({left: 0}, 150, function() {
						$(this).children("ul").hide();
						$(this).removeClass("show");
					});
				}
			});
	
			CenterMenu();
			$("#menu > ul > li:last-child").addClass("last");
		}
	});

	$(".submenu li > a").live("click", function() {
		if(!$(this).parent().hasClass("selected")){
			$(this).parent().parent().children("li").removeClass("selected");
			$(this).parent().addClass("selected");
		}else{
			$(this).parent().removeClass("selected");
		}
	});

	$.address.change(function(event) {
		$("#menu > ul *").removeAttr("style");
		$("#menu > ul *").removeAttr("class");
		// Tratando id e tipo das paginas
		Pag = event.value;
		var id = event.value;
		if (id == "/" || id == "") {
			id = "/home";
		}
		id = id.substring(1, 1000);
		var Type = id.indexOf("/");
		if(Type == "-1") {
			Type = id;
		}else if(id.substring(0, 12) == "noticias/ver"){
			Type = "noticias_detalhes";
		}else if(id.substring(0, 12) == "galerias/ver"){
			Type = "galerias_detalhes";
		}else if(id.substring(0, 11) == "paginas/ver"){
			Type = "paginas";
		}else{
			Type = id.substring(0, Type);
		}
		var Barra = id.indexOf("/");
		id = id.substr(Barra + 1, 1000);
		$("body").css("cursor", "wait");
		$("#ajax").load("pages/" + Type + ".htm", function() {
			$("html").removeClass();
			$("html").addClass(Type);
			if(Type == "home") {
				$("#menu > ul > li > a:contains('Home')").parent().addClass("selected");
				$("#content h2 > span").text("Home");
				Colors();
				$.ajax({
					type: "GET",
					cache: false,
					async: true,
					dataType: "json",
					url: base + "/noticias",
					success: function (json) {
						var i = 0;
						var fim = json.noticias.length;
						if(fim > 4) {
							fim = 4;
						}
						for(i=0; i<fim; i++ ) {
							Noticias(".home #left ul", json, i, 80);
						}
					}
				});
				$('#animacao').flash(
					{ src: 'files/anima.swf',
						width: 585,
						height: 220 }
					);
			}
			if(Type == "paginas") {
				$.ajax({
					type: "GET",
					cache: false,
					async: true,
					dataType: "json",
					url: base + "/paginas/" + id,
					success: function (json) {
						if(json.trilha.length == 1) {
							$(".paginas #content h2 > span").text(json.trilha[0].titulo);
							$("#right").addClass("one");
	
						}else{
							if(json.trilha.length > 3) {
								$(".paginas #content h2 > span").text(json.trilha[0].titulo);
								$(".paginas #left").append("<h3>" + json.trilha[1].titulo + "</h3>");
								$(".paginas #left").append("<h4>" + json.trilha[2].titulo + "</h4>");
								var i = 0;
								for(i=0; i<json.trilha.length - 3; i++) {
									var Titulo = $(".paginas #left > h4").text();
									Titulo = Titulo + " > " + json.trilha[i + 3].titulo;
									$(".paginas #left > h4").text(Titulo);
								}
	
								$("#right").removeClass("one");
							}else if(json.trilha.length == 3) {
								$(".paginas #content h2 > span").text(json.trilha[0].titulo);
								$(".paginas #left").append("<h3>" + json.trilha[1].titulo + "</h3>");
								$(".paginas #left").append("<h4>" + json.trilha[2].titulo + "</h4>");
								$("#right").removeClass("one");
							}else if(json.trilha.length == 2) {
								$(".paginas #content h2 > span").text(json.trilha[0].titulo);
								$(".paginas #left").append("<h3>" + json.trilha[1].titulo + "</h3>");
								$("#right").removeClass("one");
							}
							setTimeout(function() {
								$("#menu").find("a:contains('" + json.trilha[1].titulo + "')").parent().parent().parent().children("a:contains('" + json.trilha[0].titulo + "')").parent().children("ul").clone().appendTo("#right").addClass("submenu");
								$(".submenu, .submenu *").removeAttr("style");
								$(".submenu").find("a:contains('" + json.trilha[1].titulo + "')").parent().addClass("selected");
								if(json.trilha.length > 2) {
									$(".submenu").find("a:contains('" + json.trilha[2].titulo + "')").parent().addClass("selected");
								}
							}, 1000);
						}
						$("#menu > ul > li > a:contains('" + json.trilha[0].titulo + "')").parent().addClass("selected");
						$(".paginas #left").append("<div class='description'>" + json.text + "</div>");
						if(json.list_image != false) {
							$(".paginas #left").append("<div id='gallery'><h5>Galeria de Imagens</h5><ul></ul></div>");
							var i = 0;
							for(i=0; i<json.list_image.length; i++) {
								var onclick = 'return hs.expand(this, { slideshowGroup: "images" })';
								$(".paginas #left div#gallery ul").append("<li><a href='" + base + "/" + json.list_image[i].image + "' onclick='" + onclick + "' class='highslide'><img src='" + base + "/" + json.list_image[i].thumb + "' alt='" + json.list_image[i].alt + "' /></a></li>");
							}
						}
					}
				});
				
			}
			if(Type == "noticias") {
				$("#menu > ul > li > a:contains('Novidades')").parent().addClass("selected");
				$("#rss").attr("href", base + "/noticias.atom");
				$("#content h2 > span").text("Novidades");
				Pagination(5, base + "/noticias", id, Type);
			}
			if(Type == "noticias_detalhes") {
				$("#menu > ul > li > a:contains('Novidades')").parent().addClass("selected");
				$("#rss").attr("href", base + "/noticias.atom");
				$("#content h2 > span").text("Novidades");
				$.ajax({
					type: "GET",
					cache: false,
					async: true,
					dataType: "json",
					url: base + "/noticias/" + id,
					success: function (json) {
						var slug = json.slug;
						$(".noticias_detalhes #left").append("<span>" + json.created + "</span><h4>" + json.title + "</h4><div class='description'>" + json.text + "</div>");
						if(json.list_image != false) {
							$(".noticias_detalhes #left").append("<div id='gallery'><h5>Galeria de Imagens</h5><ul></ul></div>");
							var i = 0;
							for(i=0; i<json.list_image.length; i++) {
								$(".noticias_detalhes #left div#gallery ul").append("<li><a href='" + base + "/" + json.list_image[i].image + "' rel='galeria' title='" + json.list_image[i].alt + "'><img src='" + base + "/" + json.list_image[i].thumb + "' alt='" + json.list_image[i].alt + "' /></a></li>");
							}
							$("a[rel='galeria']").colorbox({width:"75%", height:"75%"});
						}
						$.ajax({
							type: "GET",
							cache: false,
							async: true,
							dataType: "json",
							url: base + "/noticias",
							success: function (json) {
								var i = 0;
								var fim = json.noticias.length;
								if(fim > 3) {
									fim = 3;
								}
								for(i=0; i<fim; i++ ) {
									if(json.noticias[i].url != slug) {
										$(".noticias_detalhes #right ul").append("<li><a href='#!noticias/ver/" + json.noticias[i].url + "'><div><span>" + json.noticias[i].date + "</span><h4>" + json.noticias[i].tittle + "</h4></div></a></li>");
									}
								}
							}
						});
					}
				});
			}
			if(Type == "galerias") {
				$("#menu > ul > li > a:contains('Galerias')").parent().addClass("selected");
				$("#rss").attr("href", base + "/galerias.atom");
				$("#content h2 > span").text("Galerias");
				Pagination(6, base + "/galerias", id, Type);
			}
			if(Type == "galerias_detalhes") {
				$("#menu > ul > li > a:contains('Galerias')").parent().addClass("selected");
				$("#rss").attr("href", base + "/galerias.atom");
				$("#content h2 > span").text("Galerias");
				MontaGaleriasDetalhes(id);
			}
			if(Type == "videos") {
				$("#menu > ul > li > a:contains('Galerias')").parent().addClass("selected");
				$("#rss").attr("href", base + "/videos.atom");
				$("#content h2 > span").text("Galerias");
				Pagination(8, base + "/videos", id, Type);
				setTimeout(function() {
					$(".youtube").colorbox({iframe:true, innerWidth:425, innerHeight:344});
				}, 1000);
				
			}
			if(Type == "contato") {
				$("#menu > ul > li > a:contains('Contato')").parent().addClass("selected");
				$("#content h2 > span").text("Contato");
				$.getScript('scripts/jquery.form.js');
				$.getScript('scripts/jquery.mask.js', function() {
					$("input[name='telefone']").mask("(99) 9999-9999");
				});
			}
			$("body").css("cursor", "auto");
		});
	});
});

/* FUNCTION CENTER/EFECT MENU */
function CenterMenu() {
	$("#menu > ul > li > ul").each(function() {
		var Largura = $(this).parent().width();
		if(!$(this).parent().hasClass("last")) {
			$(this).css("background-position", (Largura - 37)/2 + "px top");
		}else{
			$(this).css("background-position", (Largura - 37)/2 + (236 - Largura) + "px top");
		}
	});
}

/* FUNCTION SITE COLORS */
function Colors() {
	var randomnumber = Math.floor(Math.random()*5)
	if(randomnumber == 0){
		$("body").removeClass();
		$("body").addClass("green");
	}else if(randomnumber == 1) {
		$("body").removeClass();
		$("body").addClass("brown");
	}else if(randomnumber == 2) {
		$("body").removeClass();
		$("body").addClass("orange");
	}else if(randomnumber == 3) {
		$("body").removeClass();
		$("body").addClass("pink");
	}else if(randomnumber == 4) {
		$("body").removeClass();
		$("body").addClass("yellow");
	}
}

function Submenu(value, Caminho) {
	$(Caminho).append("<ul></ul>");
	var j = 0;
	for(j=0; j<value.length; j++) {
		if(value[j].submenu != false) {
			$(Caminho).children("ul").append("<li><a href='javascript:;'>" + value[j].item + "</a></li>");
			var Caminho2 = $(Caminho).children("ul").children("li").eq(j);
			var value2 = value[j].submenu;
			Submenu(value2, Caminho2);
		}else{
			if(value[j].type == "home" || value[j].type == "contato" || value[j].type == "noticias" || value[j].type == "videos" ) {
				$(Caminho).children("ul").append("<li><a href='#!/" + value[j].url + "'>" + value[j].item + "</a></li>");
			} else if(value[j].type == "link") {
				if(value[j].url.substr(0, 1) == "/") {
					$(Caminho).children("ul").append("<li><a href='#!" + value[j].url + "'>" + value[j].item + "</a></li>");
				}else{
					$(Caminho).children("ul").append("<li><a href='" + value[j].url + "' target='_blank'>" + value[j].item + "</a></li>");
				}
			} else {
				$(Caminho).children("ul").append("<li><a href='#!/" + value[j].type + "/ver/" + value[j].url + "'>" + value[j].item + "</a></li>");
			}
		}
	}
}

function Noticias(html, json, i, characters) {
	if(json.noticias[i].img != false) {
		if(json.noticias[i].preview.length > characters) {
			$(html).append("<li><a href='#!/noticias/ver/" + json.noticias[i].url + "'><img src='" + base + "/" + json.noticias[i].thumb + "' alt='" + json.noticias[i].tittle + "' /><div><span>" + json.noticias[i].date + "</span><h4>" + json.noticias[i].tittle + "</h4><p>" + json.noticias[i].preview.substr(0, characters) + "...</p></div></a></li>");
		} else {
			$(html).append("<li><a href='#!/noticias/ver/" + json.noticias[i].url + "'><img src='" + base + "/" + json.noticias[i].thumb + "' alt='" + json.noticias[i].tittle + "' /><div><span>" + json.noticias[i].date + "</span><h4>" + json.noticias[i].tittle + "</h4><p>" + json.noticias[i].preview + "</p></div></a></li>");
		}
	}else{
		if(json.noticias[i].preview.length > (characters + 40)) {
			$(html).append("<li><a href='#!/noticias/ver/" + json.noticias[i].url + "'><div><span>" + json.noticias[i].date + "</span><h4>" + json.noticias[i].tittle + "</h4><p>" + json.noticias[i].preview.substr(0, (characters + 40)) + "...</p></div></a></li>");
		} else {
			$(html).append("<li><a href='#!/noticias/ver/" + json.noticias[i].url + "'><div><span>" + json.noticias[i].date + "</span><h4>" + json.noticias[i].tittle + "</h4><p>" + json.noticias[i].preview + "</p></div></a></li>");
		}
	}
}
function Videos(html, json, i) {
	$(html).append("<li><a href='http://www.youtube.com/embed/" + json.videos[i].video + "?rel=0&amp;wmode=transparent' class='youtube' tittle='" + json.videos[i].tittle + "'><div><span><img src='http://i3.ytimg.com/vi/" + json.videos[i].video + "/default.jpg' alt='" + json.videos[i].tittle + "' /></span></div><h4>" + json.videos[i].tittle + "</h4></a></li>");
}
function Galerias(html, json, i) {
	$(html).append("<li><a href='#!/galerias/ver/" + json.galerias[i].url + "'><div><span><img src='" + base + "/" + json.galerias[i].thumb + "' alt='" + json.galerias[i].tittle + "' /></span></div><div><h4>" + json.galerias[i].tittle + "</h4><p>Data: " + json.galerias[i].date + "</p></div></a></li>");
}
function Pagination(passo, Url, id, Type) {
	$.ajax({
		type: "GET",
		cache: false,
		async: true,
		dataType: "json",
		url: Url,
		success: function (json) {
			var TagPag = Pag.indexOf("/pagina_");
			if(TagPag == "-1") {
				CurrentPag = 1;
			}else{
				CurrentPag = Pag.substr(TagPag + 8, 1000);
				Pag = Pag.substr(0, TagPag);
			}
			var TagId = id.indexOf("/pagina_");
			if(TagId != "-1") {
				id = id.substr(0, TagId);
			}

			$("." + Type + " #left").append("<div class='pagination'></div>");
			if(Type == "noticias") {
				var quant = json.noticias.length;
				var paginas = (quant - (quant % passo)) / passo;
				var Nod = quant % passo;
				if (Nod != 0) {
					paginas++
				}

				var inicio = (CurrentPag - 1) * passo;
				var fim = ((CurrentPag - 1) * passo) + passo;
				if(CurrentPag == paginas) {
					fim = quant;
				}
				var i = 0;
				for(i=inicio; i<fim; i++) {
					Noticias(".noticias #left ul", json, i, 200);
				}
				if(paginas > 1){
					var j = 1;
					for(j=1; j<=paginas; j++) {
						$("." + Type + " #left div.pagination").append("<span><a href='#!" + Pag + "/pagina_" + j + "'>" + j + "</a></span>");
					}
					$("." + Type + " #left div.pagination span").eq(CurrentPag - 1).addClass("current");
					if(CurrentPag == 1){
						$("." + Type + " #left div.pagination").append("<a href='#!" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}else if(CurrentPag == paginas) {
						$("." + Type + " #left div.pagination").prepend("<a href='#!" + Pag + "/pagina_" + (paginas - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
					}else{
						$("." + Type + " #left div.pagination").prepend("<a href='#!" + Pag + "/pagina_" + (CurrentPag - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
						$("." + Type + " #left div.pagination").append("<a href='#!" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}
				}
			}
			if(Type == "galerias") {
				var quant = json.galerias.length;
				var paginas = (quant - (quant % passo)) / passo;
				var Nod = quant % passo;
				if (Nod != 0) {
					paginas++
				}

				var inicio = (CurrentPag - 1) * passo;
				var fim = ((CurrentPag - 1) * passo) + passo;
				if(CurrentPag == paginas) {
					fim = quant;
				}
				var i = 0;
				for(i=inicio; i<fim; i++) {
					Galerias(".galerias div#left ul", json, i);
				}
				if(paginas > 1){
					var j = 1;
					for(j=1; j<=paginas; j++) {
						$("." + Type + " #left div.pagination").append("<span><a href='#!" + Pag + "/pagina_" + j + "'>" + j + "</a></span>");
					}
					$("." + Type + " #left div.pagination span").eq(CurrentPag - 1).addClass("current");
					if(CurrentPag == 1){
						$("." + Type + " #left div.pagination").append("<a href='#!" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}else if(CurrentPag == paginas) {
						$("." + Type + " #left div.pagination").prepend("<a href='#!" + Pag + "/pagina_" + (paginas - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
					}else{
						$("." + Type + " #left div.pagination").prepend("<a href='#!" + Pag + "/pagina_" + (CurrentPag - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
						$("." + Type + " #left div.pagination").append("<a href='#!" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}
				}
			}
			if(Type == "videos") {
				var quant = json.videos.length;
				var paginas = (quant - (quant % passo)) / passo;
				var Nod = quant % passo;
				if (Nod != 0) {
					paginas++
				}

				var inicio = (CurrentPag - 1) * passo;
				var fim = ((CurrentPag - 1) * passo) + passo;
				if(CurrentPag == paginas) {
					fim = quant;
				}
				var i = 0;
				for(i=inicio; i<fim; i++) {
					Videos(".videos #left ul", json, i);
				}
				if(paginas > 1){
					var j = 1;
					for(j=1; j<=paginas; j++) {
						$("." + Type + " #left div.pagination").append("<span><a href='#!/" + Pag + "/pagina_" + j + "'>" + j + "</a></span>");
					}
					$("." + Type + " #left div.pagination span").eq(CurrentPag - 1).addClass("current");
					if(CurrentPag == 1){
						$("." + Type + " #left div.pagination").append("<a href='#!/" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}else if(CurrentPag == paginas) {
						$("." + Type + " #left div.pagination").prepend("<a href='#!/" + Pag + "/pagina_" + (paginas - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
					}else{
						$("." + Type + " #left div.pagination").prepend("<a href='#!/" + Pag + "/pagina_" + (CurrentPag - 1) + "'><img src='images/pagina-anterior.png' alt='Página Anterior' /></a>");
						$("." + Type + " #left div.pagination").append("<a href='#!/" + Pag + "/pagina_" + (parseInt(CurrentPag) + 1) + "'><img src='images/proxima-pagina.png' alt='Próxima Página' /></a>");
					}
				}
			}
		}
	});
}

function MontaGaleriasDetalhes(id) {
	$.ajax({
		type: "GET",
		cache: false,
		async: true,
		dataType: "json",
		url: base + "/galerias/" + id ,
		success: function (json) {
			$("#left > h4").text(json.title);
			$("#left > p").text("Data: " + json.data);
			$("#left > div.description").append(json.text);
			var i = 0;
			var fim = json.list_image.length;
			for(i=0; i<fim; i++ ) {
				$("#lista-galeria > div > ul").append("<li><a href='javascript:;'><img src='" + base + "/" + json.list_image[i].thumb + "' alt='" + json.list_image[i].alt + "' /></a><a href='" + base + "/" + json.list_image[i].image + "' rel='galeria' title='" + json.list_image[i].alt + "' class='cboxElement'><img src='" + base + "/" + json.list_image[i].thumb + "' alt='" + json.list_image[i].alt + "' /></a></li>");
			}
			$("a[rel='galeria']").colorbox({width:"75%", height:"75%"});
			$("#lista-galeria > div > ul li:first-child").addClass("current");
			$("#galeria > a img").attr("src", base + "/" + json.list_image[0].image);
			$("#galeria > a img").attr("alt", json.list_image[0].alt);
			$("#galeria h4").text(json.list_image[0].alt);
		},
		complete: function() {
			var quanTelas = ($("#lista-galeria > div ul li").length%4);
			if(quanTelas != 0){
				quanTelas = $("#lista-galeria > div ul li").length;
				quanTelas = quanTelas - ($("#lista-galeria > div ul li").length%4);
				quanTelas = quanTelas/4;
				quanTelas = quanTelas + 1;
			}else{
				quanTelas = ($("#lista-galeria > div ul li").length/4);
			}
			var i = 1;
			if(quanTelas > 1){
				$("#lista-galeria > div ul").css("width", quanTelas*545);
				var largura = $("#lista-galeria > div ul").outerWidth();
				var anim = largura / quanTelas;
				$("#arrow-right").show();
				$("#arrow-left").click(function() {
					if(i > 1) {
						$('#arrow-right').show();
						i = i - 1;
						$('#lista-galeria > div ul').animate({left: -(i-1)*anim}, 1000, function() {
							if(i == 1) {
								$("#arrow-left").hide();
							}
						});
					}
				});
				$("#arrow-right").click(function(){
					if(i < quanTelas) {
						$('#arrow-left').show();
						i = i + 1;
						$('#lista-galeria > div ul').animate({left: -(i-1)*anim}, 1000, function() {
							if(i == quanTelas)
								$("#arrow-right").hide();
						});
					}
				});
			}else{
				$("#arrow-right").remove();
			};
			$("#lista-galeria > div > ul > li > a:first-child").live("click", function() {
				$("#lista-galeria > div > ul > li").removeClass("current");
				$(this).parent().addClass("current");
				$("#galeria > a img").attr("src", $("#lista-galeria > div > ul > li.current a + a").attr("href"));
				$("#galeria > a img").attr("alt", $(this).children().attr("alt"));
				$("#galeria h4").text($(this).children().attr("alt"));
			});
			$("#galeria a").live("click", function() {
				$('#lista-galeria li.current a + a').trigger('click');
			});
		}
	});
}
