/*
	Desenvolvedor: Fabio de Assis (assisfabio@gmail.com)
	Engine Javascript Criado em 07/2009
	Cliente: Spirit Comunicação
	Projeto: Spirit Web 2009
*/
/*
	Desenvolvedor: Fabio de Assis (assisfabio@gmail.com)
	Engine Javascript Criado em 07/2009
	Cliente: Spirit Comunicação
	Projeto: Spirit Web 2009
*/

(function($){
	/* Galeria de Imagens usando apenas o html, sem imagens remotas */
$.fn.SlideGallery = function(e, options){
	var objSlide = "#" + $(this).attr("id");
	var objChildren = $(objSlide).children();
	var NumObjectChildren = $(objChildren).length;
	
	$(objSlide).attr({ActualPic:0, NumPic: NumObjectChildren}).append('<span class="Prev" /><span class="Next" />');

	$(objSlide).css({
		position:"relative",
		overflow:"hidden"
	});
	
	$(objChildren).css({
		position:"absolute",
		top:"0px",
		left:$(objSlide).width()
	});
	$(objChildren).eq(0).css({
		left:0
	});
	
	$(objSlide).children("span.Prev,span.Next").css({
		height:$(objSlide).height(),
		width:($(objSlide).width()/2),
		position: "absolute",
		top:0,
		left:0,
		cursor:"pointer",
		display:"none"
	});
	
	$(objSlide).children("span.Next").css({
		left: "auto",
		right:0
	});


	$(objSlide).children("span.Next").click(function(){
		$(objSlide).SGNextImage($(objSlide).attr("ActualPic"),$(objSlide).attr("NumPic"));
	});
	
	
	$(objSlide).children("span.Prev").click(function(){
		$(objSlide).SGPrevImage($(objSlide).attr("ActualPic"),$(objSlide).attr("NumPic"));
	});

	$(objSlide).hover(function(){
		if($(objSlide).attr("ActualPic") < (NumObjectChildren-1)) {
			$(objSlide).children("span.Next").css({display:"block"});
		}
		if($(objSlide).attr("ActualPic") > 0) {
			$(objSlide).children("span.Prev").css({display:"block"});
		}
	},
	function(){
		$(objSlide).children("span.Prev,span.Next").css({display:"none"});
	});

	
}

$.fn.SGNextImage = function( Actual, TotalPic){
	var imgAtual = parseInt(Actual) + 1;

	if ((imgAtual+1) >= TotalPic) $(this).children("span.Next").css({display:"none"});
	if (imgAtual > 0) $(this).children("span.Prev").css({display:"block"});

	$(this).children("li").eq(imgAtual).animate({
		left:0
	},500);
	$(this).attr({ActualPic:imgAtual});
}

$.fn.SGPrevImage = function(Actual, TotalPic){
	var imgAtual = parseInt(Actual) - 1;

	if (imgAtual < TotalPic) $(this).children("span.Next").css({display:"block"});
	if (imgAtual <= 0) $(this).children("span.Prev").css({display:"none"});

	$(this).children("li").eq(Actual).animate({
		left: $(this).children().width()
	},500);
	$(this).attr({ActualPic:imgAtual});
}


/*
	Slide show Utilizando Border Image
*/
$.fn.BorderSlideGallery = function($options){
		
		var viewImg = $options.img.replace("&File=","&File=" + $options.viewimg);
		

		/* Montando o html da Galeria - Bordas */
		$("body").append('<div class="IphoneBSG" />');
		$(".IphoneBSG").append('<div class="IphoneBorder" />');
		$(".IphoneBorder").append('<img src="images/blank.gif" class="btnFechar" alt="fechar" />');
		
		$(".IphoneBSG").append('<div class="IphoneBSGList" />');
		$(".IphoneBSGList").append('<ul />');

		var objSlide = "#" + $(this).attr("id");
		var BSGCount = $(objSlide + " li").length;
		for(i=0;i<BSGCount;i++){
			
			var BSGImg = $(objSlide + ' li:eq('+i+') a').attr("href");
			BSGImg = BSGImg.replace("&File=","&File=" + $options.viewimg);
			
			$(".IphoneBSGList ul").append('<li><img src="' + BSGImg + '" alt="" width="205"/></li>')
		}
		
		$(".IphoneBSG").append('<div class="IphoneBSGListDragC" />');
		$(".IphoneBSGListDragC").append('<div class="IphoneBSGListDrag" />');
		
		$(".IphoneBSGListDragC").append('<div class="IphoneBSGOptions" />');
		$(".IphoneBSGListDragC").append('<div class="IphoneBSGSendEmail" />');
		
		$(".IphoneBSGSendEmail").append('<form class="IphoneBSGSendEmailForm" action="sendAtMail.php" />');
		$(".IphoneBSGSendEmail form").append('<ul />');
		$(".IphoneBSGSendEmail form").append('<span class="IphoneBSGSendEmailRes" />');
		$(".IphoneBSGSendEmail form ul ").append('<li><input type="hidden" id="mnImg" name="mnImg" value="' + $options.img + '" /><input type="text" id="mnEmail" name="mnEmail" required="true" mask="email" /></li>');
		$(".IphoneBSGSendEmail form ul ").append('<li><img src="images/btnenviar.png" alt="Enviar" id="btnSendMail" /><img src="images/btncancel.png"  alt="Cancelar" id="btnCancel" /></li>');
		
		$(".IphoneBSGOptions").append('<a href="' + $options.img + '" class="btnDownload"><img src="images/blank.gif" alt="Baixar Imagem" /></a>');
		
		//$(".IphoneBSGOptions").append('<span class="btnOptions"><img src="images/blank.gif" alt="Opções" /></span>');
		$(".IphoneBSGOptions").append('<span class="btnEmail"><img src="images/blank.gif" alt="Enviar por Email" /></span>');
		//$(".IphoneBSGOptions").append('<span class="btnHelp"><img src="images/blank.gif" alt="Ajuda" /></span>');


		/* Colocando o Estilo da Galeria */

		$(".IphoneBorder").css({ backgroundImage: "url(images/" + $options.addimg +")" });
		
		$(".IphoneBSGList ul").css({
			width: function(){
				var Count = $(".IphoneBSGList li").length;
				var Res = Count * 205;
				return Res;
				}
		});
		
		$(".IphoneBSGListDrag").css({width: $(".IphoneBSGList ul").width()});
		
		$(".IphoneBSGOptions").hover(function(){
			$(this).stop().css({backgroundRepeat:"repeat"}).animate({bottom:0},300);
		}, function(){
			$(this).stop().animate({bottom:-25},300,function(){$(this).css({backgroundRepeat:"no-repeat"})});
		});
		
		
		
		$("#btnSendMail").click(function(){
			SendContactForm(".IphoneBSGSendEmailForm", ".IphoneBSGSendEmailRes");
		});
		$("#btnCancel").click(function(){
			$("#mnEmail").val("");
			$(".IphoneBSGSendEmailRes").html("");
			$(".IphoneBSGSendEmail").animate({top:-500},500);
		});
		
		$(".btnOptions img").css({
			backgroundPosition:"-32px top"
		}).hover(function(){
			$(".btnOptions img").css({backgroundPosition:"-32px bottom"});
		},function(){
			$(".btnOptions img").css({backgroundPosition:"-32px top"});
		}).click(function(){
			alert("Opcoes")
		});
		
		$(".btnEmail img").css({
			backgroundPosition:"-96px top"
		}).hover(function(){
			$(".btnEmail img").css({backgroundPosition:"-96px bottom"});
		},function(){
			$(".btnEmail img").css({backgroundPosition:"-96px top"});
		}).click(function(){
			$(".IphoneBSGSendEmail").animate({top:0}, 500);
		});
		
		$(".btnHelp img").css({
			backgroundPosition:"0px top"
		}).hover(function(){
			$(".btnHelp img").css({backgroundPosition:"0px bottom"});
		},function(){
			$(".btnHelp img").css({backgroundPosition:"0px top"});
		}).click(function(){
			alert("Mostrar Ajuda");
		});

		$(".btnDownload img").css({
			backgroundPosition:"-64px top"
		}).hover(function(){
			$(".btnDownload img").css({backgroundPosition:"-64px bottom"});
		},function(){
			$(".btnDownload img").css({backgroundPosition:"-64px top"})
		});
		
		
		$(".IphoneBSGListDrag").draggable({
			grid: [205, 1],
			stop: function(){
				$(".IphoneBSGListDrag").css({top:0});
				$(".IphoneBSGList ul").animate({
					left:$(".IphoneBSGListDrag").css("left")
				}, 500, function(){
					var pLeft = $(".IphoneBSGList ul").css("left");
					pLeft = pLeft.replace("px","");
					pLeft = parseInt(pLeft);
					
					if(pLeft > 0) {
						$(".IphoneBSGListDrag, .IphoneBSGList ul").animate({left:0},500);
					} else if(pLeft < (205 - $(".IphoneBSGList ul").width())) {
						$(".IphoneBSGListDrag, .IphoneBSGList ul").animate({left:(205 - $(".IphoneBSGList ul").width())},500);
					}
					setTimeout(function(){BSGDownload(objSlide, $(".IphoneBSGList ul").css("left"), 205);},600);
				});
				
			}
		});

		/* Adcionando Funcionalidades a Galeria */
		$(".IphoneBorder .btnFechar").click(function(){ $(".IphoneBSG").remove(); });
		
		setTimeout(function(){
			$(".IphoneBSGListDrag, .IphoneBSGList ul").animate({left:-($options.index * 205)},500);
			$(".IphoneBSGList").css({backgroundColor:"#000"});
		},500);	
}

$.fn.InsertLangSkin = function($options){
	var $objForm = "#" + $(this).attr("id");
	var $objVal = $($objForm + " select option:selected").val();
	var $html = '<div class="dvLanguage"><ul>';
	
	$($objForm).find("option").each(function(i) {
		if((i/2) != 0) $html = $html + "| ";
		$html = $html + '<a class="' + $(this).attr("selected") + '" id="' + $(this).val() + '">' + $(this).html() + '</a>';
	});
	$html = $html + '</ul></div>';
	
	$($objForm + " select, " + $objForm + " input, "+ $objForm + " button").css({position:"absolute",top: "-500px"});
	
	$($objForm).append($html);
	
	$($objForm + " .dvLanguage a").click(function(){
		$($objForm + " option[value='"+ $(this).attr("id") +"']").attr({selected:"selected"});
		$($objForm).submit();
	});
}

})(jQuery);

function BSGDownload (obj,c,w){
	var C = c.replace("px","");
	C = parseInt(C);
	var R = -(C / w);
	
	$(".btnDownload").attr({href:$(obj + ' li:eq('+R+') a').attr("href")});
	$("#mnImg").val($(obj + ' li:eq('+R+') a').attr("href"));
}

/* Navegacao entre paginas */
function AjaxGetPage(idFile,Ancor,idObject){
	SetSiteTitle(idFile);
	$("#dvTitulo").animate({width:"0px"},700, function(){ $("#dvTitulo").removeClass().addClass(idFile); });
	$("#dvLoad").fadeIn("slow", function(){
		
		$.ajax({
			cache: true,
			type: "POST",
			url: idFile + ".php",
			data: "File=True",
			success: function(data){
				$("#Main").css({display:"block"});
				$(idObject).html(data);
				$("#dvLoad").fadeOut("slow", function(){ if (Ancor != "") ScrollWindow(Ancor); });
				aniTitle(idFile);
				StartScriptsOnTheFly(idFile);
				pageTracker._trackPageview(idFile);
				}, 
			error: function(){
				AjaxGetPage("home",Ancor,idObject);
				},
			dataType: "html"
		});
	});

	$("#frmLanguage").attr({action:function(){
		var Res;
		Res = "#" + idFile;
		if (Ancor != "") Res = Res + "?" + Ancor;
		return "index.php" +  Res;
	}});

	GlobalSession = idFile;
	GlobalAncor = Ancor;
}

function aniTitle(idFile){
	$("#dvTitulo").animate({
		width: SetTitleWidth()
	},700);
}

function SetTitleWidth(){
	var TitleWidth = (($("body").width() - $("#Main").width()) / 2) + $("#Main").width();
	if(TitleWidth < $("#Main").width()) TitleWidth = $("#Main").width();
	return TitleWidth;
}


function ReplaceHref(obj){
	var $link = obj; 
	var href = $link.attr('href');

	href = href.replace("#", "?"); 
	href = href.replace("http://www.spiritweb.com.br/", "");
	href = href.replace("http://spiritweb.com.br/", "");
	href = href.replace("index.php?", ""); 
	href = href.replace("File=", "");

	if(href.slice(0,1)=="?") href=href.replace("?","");

	$link.attr('href',href.replace(href,'#'+href));

	var count = href.indexOf("?");
	if (count == "-1") count = href.length;
	var Ancor = href.slice(count + 1);
	href = href.slice(0,count);

	AjaxGetPage(href,Ancor,"#Content");
}

function SendContactForm(ObjForm, idObject){
	var error = false;
	$(ObjForm).find(":input").each(function(i) {
		
		var Value = $(this).val().replace(/^\s+|\s+$/g,"");
		
		if($(this).attr("required") == "true") {
			
			if(Value == "") {
				$(this).css({backgroundColor:"#FFA"});
				error = true;
			} else if($(this).attr("mask") == "email" && CheckEmail(Value) == false) {
				$(this).css({backgroundColor:"#FFA"});
				error = true;
			} else if($(this).attr("mask") == "dd" && CheckDD(Value) == false) {
				$(this).css({backgroundColor:"#FFA"});
				error = true;
			} else if($(this).attr("mask") == "tel" && CheckTel(Value) == false) {
				$(this).css({backgroundColor:"#FFA"});
				error = true;
			} else {
				$(this).css({backgroundColor:"transparent"});
			}
		}
	});

	if(error == false){
		var query =  $(ObjForm).serialize()
		$.post($(ObjForm).attr("action"),query,function(data){ $(idObject).html(data); }, 'html');
	}
	$(ObjForm).submit(function(){ return false; });
}

function CheckEmail(Value){
	var er = RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
	return er.test(Value);
}
function CheckDD(Value){
	var er = RegExp(/^[0-9]{2,}/);
	return er.test(Value);
}
function CheckTel(Value){
	var er = RegExp(/^[0-9]{4,4}([\-])?[0-9]{4,4}/);
	return er.test(Value);
}

function StartScriptsOnTheFly(Session){
	if(Session == "home"){
		
		$(".boxHome a.aReplacedHref").click(function(){ ReplaceHref($(this)); });
		
	} else if(Session == "clientes"){

	} else if(Session == "contato"){

		$("#ContactForm input:image").click(function(){ SendContactForm("#ContactForm", "#ResponseContactForm"); });

	} else if(Session == "lab"){
		
		$(".faBorderSG a").click(function(){
			var SGObjectId = $(this).parents("ul.faBorderSG");

			$(SGObjectId).BorderSlideGallery({
				img : $(this).attr("href"),
				addimg: "border_iphone.png",
				viewimg: "view_",
				index: $("ul.faBorderSG a").index(this)
			});

			return false;
		});
	
	} else if(Session == "portifolio"){

		var SGCount = $(".faSlideGallery").length;
		for(i=0;i<SGCount;i++){
			var SGObjectId = "#" + $(".faSlideGallery:eq("+i+")").attr("id");
			$(SGObjectId).SlideGallery();
		}

	} else if(Session == "spirit"){
		
		var SGCount = $(".faSlideGallery").length;
		for(i=0;i<SGCount;i++){
			var SGObjectId = "#" + $(".faSlideGallery:eq("+i+")").attr("id");
			$(SGObjectId).SlideGallery();
		}
	
	}
}

function ScrollWindow(id){
	window.scrollTo(0,document.getElementById(id).offsetTop);
}

function fnInsertSwf(P, W, H, O) {
	var Code = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ';
	Code = Code + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0"';
	Code = Code + 'width="' + W + ' height="' + H +'">';
	Code = Code + '<param name="movie" value="' + P + '" /><param name="quality" value="high" />';
	if(O == "yes"){
		Code = Code + '<param name="wmode" value="transparent" />';
	} else {
		Code = Code + '<param name="wmode" value="opaque" />';
	}
	Code = Code + '<embed src="' + P + '" quality="high" ';
	if(O == "yes"){
		Code = Code + 'wmode="transparent" ';
	} else {
		Code = Code + 'wmode="opaque" ';
	}
	Code = Code + 'pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" ';
	Code = Code + 'type="application/x-shockwave-flash" width="' + W + '" height="'+ H +'"></embed>';
	Code = Code + '</object>';
	return Code;
}

function SetSiteTitle(File){
	var $keyword;
	if (File == "clientes") {
		$keyword = subTitClientes;
	} else if (File == "spirit") {
		$keyword = subTitSpirit;
	} else if (File == "lab") {
		$keyword = subTitLab;
	} else if (File == "portifolio") {
		$keyword = subTitPortifolio;
	} else if (File == "contato") {
		$keyword = subTitContato;
	} else {
		$keyword = "";
	}

	if($.browser.msie){
		document.title = "Spirit Comunicacao " + $keyword;
	} else { 
		$("title").html("&bull; Spirit Comunica&ccedil;&atilde;o &bull; " + $keyword);
	}

}

/*function RefreshLang() {
	$("#dvLoad").fadeIn("slow", function(){
		$.post(GlobalSession + ".php",{ File: "True" },function(data){
			$("#Content").html(data);
			$("#dvLoad").fadeOut("slow", function(){ if (GlobalAncor != "") ScrollWindow(GlobalAncor); });
			StartScriptsOnTheFly(GlobalSession);
		}, 'html');
		$.post("Controls/Header.php",{ File: "True" },function(data){ $("#Header").html(data); }, 'html');
		$.post("Controls/Footer.php",{ File: "True" },function(data){ $("#Footer").html(data); }, 'html');
	});
}*/

/* Starter Scripts */
$(document).ready(function(){

	var page = document.location.href; 
	var count = page.indexOf("#");
	var countA = page.indexOf("?");
	if (countA == "-1") countA = page.length;
	var localhost = page.slice(0,count); 
	var local = page.slice(count + 1,countA); 
	
	var Ancor = page.slice(countA + 1);

	if(count != "-1") { 
		AjaxGetPage(local,Ancor,"#Content");
	} else { 
		AjaxGetPage("home",Ancor,"#Content");
	}

	$("a.aReplacedHref").click(function(){
		ReplaceHref($(this));
	});
	
	$(window).resize(function(){
		$("#dvTitulo").width(SetTitleWidth());
	});
	
	$("#Radio").html(fnInsertSwf("Radio/Panel.swf", "291", "23", "yes"));
	
	/* Atualizando o idioma da pagina
	$("#frmLanguage").submit(function(){ RefreshLang(); return false; }); */
	
	$("#frmLanguage").InsertLangSkin();

});
