// Criar Cabecalho das Internas
/*
CONFIG:
	1. Idioma: _root.lang:String [ 'pt', 'en', 'ge', 'es' ]
	2. Aba ativa: _root.aba:String [ 'aba1', 'aba2', 'abaN' ]
	3. Tipo de colunas do backgound: _root.colType:String [ 'default', 'colEsq', 'colDir' ]
	4. Navegação por destinos: [uriPrev:String, uriNext:String]
	5. Descrição do destino: destDesc:String
	6. Título do destino: destTit:String
*/
$j = jQuery.noConflict();

$j(document).ready(function()
{
      $j.calendarioSaibaMais();
	  
	  /* nau_rot */
	  $j.nauRotAjaxContent();
	  $j.nauRotEscondeSpan();

	  /* nau_dest */
	  $j.nauDestAjaxContent();
	  $j.nauDestEscondeSpan();
	  
	  defineTituloDoDocumento();
	  
	  /* carrega ajaxCaminho só em nau_rot e nau_des_rot */
	  if ((window.location.href.indexOf("nau_rot") != -1) || (window.location.href.indexOf("nau_des_rot") != -1)) {
		  $j.ajaxCaminho();
	  }	  
	 
	  
});

/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
/* NAU_ROT */
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauRotAjaxContent = function()
{
	var nauRotObjLink = $j("ul#lista_marinas li a.nau_rot_link");
	//CARREGA O CONTEUDO PARA O BOX
	var objDivTarget = $j("div.nau_rot_ajax");
	
	objDivTarget.load("inc/nau_rot_salvador.php", function(){ $j.ajaxCaminho(); });
	
	nauRotObjLink.unbind().click(
		function(){
			urchinTracker( this.href );			
			objDivTarget.load(this, function(){ $j.ajaxCaminho(); });
			return false;
		}
	);
}
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauRotEscondeSpan = function()
{
	$j("ul.nau_rot li").each(
		function(i)
		{
			if(this.className == "marinas_ativo"){
				$j(this).children("div").show();
				$j(this).children("a").hide();
			}
			else
			{
				$j(this).children("a").show();
				$j(this).children("div").hide();				
			}
		}
	)
}
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauRotAlteraStyle = function(alvoParent, alvoA)
{
	//alert("PARENT: "+aParent.className+"\nTEXT: "+aText+"\nTHIS: "+a.className);
	ativoParent = $j("ul.nau_rot li.marinas_ativo");
	ativoSpan = $j("ul.nau_rot li.marinas_ativo div");
	ativoA = $j("ul.nau_rot li.marinas_ativo a.nau_rot_link");
	alvoSpan = alvoParent.children("div");

	ativoSpan.hide();
	ativoA.show();

	alvoSpan.show();
	alvoA.hide();

	ativoParent.removeClass("marinas_ativo");
	alvoParent.addClass("marinas_ativo");

	return false;
}
/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
/* NAU_DEST */
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauDestAjaxContent = function()
{
	var nauDestObjLink = $j("ul#lista_marinas li a.nau_dest_link");
	//CARREGA O CONTEUDO PARA O BOX
	var objDivTarget = $j("div.nau_dest_ajax");
	
	//objDivTarget.load("nau_dest.php");

	nauDestObjLink.unbind().click(
		function(){
			objDivTarget.load(this);
			return false;
		}
	);
}
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauDestEscondeSpan = function()
{
	$j("ul.nau_dest li").each(
		function(i)
		{
			if(this.className == "marinas_ativo"){
				$j(this).children("div").show();
				$j(this).children("a").hide();
			}
			else
			{
				$j(this).children("a").show();
				$j(this).children("div").hide();				
			}
		}
	)
}
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.nauDestAlteraStyle = function(alvoParent, alvoA)
{
	//alert("PARENT: "+aParent.className+"\nTEXT: "+aText+"\nTHIS: "+a.className);
	ativoParent = $j("ul.nau_dest li.marinas_ativo");
	ativoSpan = $j("ul.nau_dest li.marinas_ativo div");
	ativoA = $j("ul.nau_dest li.marinas_ativo a.nau_dest_link");
	alvoSpan = alvoParent.children("div");
	
	urchinTracker( location.pathname );

	ativoSpan.hide();
	ativoA.show();

	alvoSpan.show();
	alvoA.hide();

	ativoParent.removeClass("marinas_ativo");
	alvoParent.addClass("marinas_ativo");

	return false;
}
/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////////////////////////////////////*/
// ALTERAR CAMINHOS (ROTEIRO)
$j.ajaxCaminho = function()
{
	var objCaminhoLink = $j("ul#caminho li a.caminhoLink");
	var objDadosCaminho = $j("div#dadoscaminho");	
	var nauRotCaminhoLink = $j("ul#caminho li.active a.caminhoLink").attr("href");
	
	var bg = $j("ul#caminho li.active").css("background-image");
	bg = bg.replace(".gif","on.gif", "gi");
	$j("ul#caminho li.active").css("background-image",bg);	

	if (window.location.href.indexOf("nau_rot") != -1) {
		objDadosCaminho.load(nauRotCaminhoLink, function(){ $j.imgSlider(); });
	} else {
		objDadosCaminho.load(nauRotCaminhoLink, function(){ TB_init(); });	
	}	

	objCaminhoLink.unbind().click
	(
		function()
		{
			var parentBg = $j("ul#caminho li.active").css("background-image");
			parentBg = parentBg.replace("on.gif",".gif", "gi");
			$j("ul#caminho li.active").css("background-image",parentBg);
			$j("ul#caminho li.active").removeClass("active");
			
			var activeParentBg = $j(this).parent().css("background-image");
			activeParentBg = activeParentBg.replace(".gif","on.gif", "gi");
			$j(this).parent().css("background-image",activeParentBg);
			$j(this).parent().addClass("active");
			
			if(window.location.href.indexOf("nau_rot") != -1) {
				objDadosCaminho.load(this, function(){ $j.imgSlider(); });
			} else {
				objDadosCaminho.load(this, function(){ TB_init(); });	
			}
			urchinTracker( this.href );
			return false;
		}
	);
}
/*//////////////////////////////////////////////////////////////////////////////////*/
//IMG SLIDER
$j.imgSlider = function() {
	var btnSlideAnterior = $j("a.btnImgSliderPrev");
	var btnSlideProxima = $j("a.btnImgSliderNext");
	var objImgSlide = $j("img.imgSlider");
	var i = 0;

	objImgSlide.attr("src", imgSlide[i]);

	// IMAGEM ANTERIOR, evento CLICK
	btnSlideAnterior.unbind().click
	(
		function()
		{	

			if (i == 0)
			{
				i = imgSlideLen - 1;
			} else {
				i--;
			}
			objImgSlide.attr("src", imgSlide[i]);

			return false;
		}
	);

	// PROXIMA IMAGEM, evento CLICK
	btnSlideProxima.unbind().click
	(
		function()
		{	
			if (i == imgSlideLen - 1)
			{
				i = 0;
			} else {
				i++;
			}

			objImgSlide.attr("src", imgSlide[i]);

			return false;
		}
	);
}
/*//////////////////////////////////////////////////////////////////////////////////*/
$j.calendarioSaibaMais = function()
{
	var ul, li, $this;
	
	div = $j( "div.boxtop" );
	
	div.find( "a.btfecharseta" ).click( function()
	{
		var $this = $j( this );
		$this.toggleClass( "ativo" );
		$this.siblings( "ul" ).toggle();
		
		if (this.className.indexOf("ativo") >= 0)
			urchinTracker( location.pathname + "/saibaMais/" + $this.siblings("h5").text().replace(/\s/g, "_") );
		
		return false;
	});
}


function defineTituloDoDocumento()
{	  
	if(window.location.href.indexOf("/pt/") != -1)
	{
		site = "Turismo Náutico";
	}
	else
	{
	  if(window.location.href.indexOf("/en/") != -1)
	  {
		site = "Nautical Tourism";
	  }
	  else
	  {
		  if(window.location.href.indexOf("/fr/") != -1)
		  {
			site = "Tourisme Nautique";
		  }
		  else
		  {
			  if(window.location.href.indexOf("/es/") != -1)
			  {
				site = "Turismo Náutico";
			  }			  
		  }
	  }
	}
		
		
	tituloDeConteudo = "";
		
	if($j("#internas_esquerda h2").eq(0).html() != null)
	{
		tituloDeConteudo = " - " + $j("#internas_esquerda h2").eq(0).html();	
	}
	else	
	{	
		if(window.location.href.indexOf("/nau_des_rot_") != -1)
		{
			tituloDeConteudo = " - " + $j("ul#caminho li a#caminho1 strong").eq(0).html();
		}
	}
	
	tituloDoDocumento = site + tituloDeConteudo;

	document.title = tituloDoDocumento;
	$j("title").html( tituloDoDocumento );

}


/*//////////////////////////////////////////////////////////////////////////////////*/
function abreFoto( objLink )
{
	$j("img#fotodest").attr("src",$j(objLink).attr("href"));
	$j("img#fotodest").attr("alt",$j(objLink).attr("title"));

	zoomLink = $j("img#fotodest").parent();
	zoomLink.attr("href",$j(objLink).attr("href").replace(/321x205/,"646x455"));
	zoomLink.attr("title",$j(objLink).attr("title"));
}
/*//////////////////////////////////////////////////////////////////////////////////*/
function criarHeader( lang, aba, colType, destino, uriPrev, uriNext, destTit, destDesc, uriPT, uriEN, uriES, uriIT, uriFR )
{
	if(destino)
	{
		var data = "../../swf/header_int_02.swf";
		var dimensions = {width:955, height:180};
	}
	else
	{
		var data = "../../swf/header_int_01.swf";
		var dimensions = {width:955, height:101};
	}
	var param = [
				   {name:"wmode", value:"transparent"}
				 , {name:"scale", value:"noScale"}
				 , {name:"align", value:"top"}
				 ];
	var style = ""
	var flashVars = [
					   {name:"idioma", value: lang					}
					 , {name:"aba", value: aba						}
					 , {name:"colType", value: colType				}
					 , {name:"destino", value: destino				}
					 , {name:"uriPrev", value: uriPrev				}
					 , {name:"uriNext", value: uriNext              }
					 , {name:"destTit", value: destTit              }
					 , {name:"destDesc", value: destDesc            }
					 , {name:"uriPT", value: uriPT					}
					 , {name:"uriEN", value: uriEN					}
					 , {name:"uriES", value: uriES					}
					 , {name:"uriIT", value: uriIT					}
					 , {name:"uriFR", value: uriFR					}
					 ];
	
	document.write (createFlash(data, null, dimensions, param, flashVars, style ) );
}


// Cria Objetos Flash com EMBED 

function createFlash ( data, id, dimension, params, flashvars, style, className )
{
	var html = new Array();
	style = style != null ? 'style="' + style + '" ': "";
	id = id != null ? 'id="' + id + '" ': "";
	className = className != null ? ' class="' + className + '" ': "";
	
	html.push( '<span ' + style + className + '><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + dimension.width + '" height="' + dimension.height + '" ' + id + '>' );
	html.push( createFlash.createParam( { name:"menu", value: "false" } ) );
	html.push( createFlash.createParam( { name:"movie", value: data } ) );
	html.push( createFlash.createParam( { name:"AllowScriptAccess", value: "always" } ) );
	
	params = params != null ? params : new Array();
	params = params.constructor == Array ? params : new Array(params);
	
	for (var k = 0; k < params.length; k++)
	{
		html.push ( createFlash.createParam( params[ k ] ) );
	}
	
	html.push( createFlash.createFlashvars( flashvars ) );
	html.push( '<embed ' );
	
	for (var k = 0; k < params.length; k++)
	{
		html.push ( createFlash.createParam( params[ k ], true ) );
	}
	
	html.push( id + ' ' + id.replace("id=", "name=") + ' flashvars="' + createFlash.createFlashvars( flashvars, true ) + '" swLiveConnect="true" AllowScriptAccess="always" menu="false" type="application/x-shockwave-flash" src="' + data + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="' + dimension.width + '" height="' + dimension.height + '"></embed>' );
	
	html.push ( '</object></span>' );
	//alert(html.join(""));
	return html.join("");
	
}

createFlash.createParam = function ( param, isEmbed )
{
	if ( isEmbed == true )
	{
		var html = param.name + '="' + param.value + '" ';
	}
	else
	{
		var html = 	'<param name="' + param.name + '" value="' + param.value + '" />';
	}
	
	return html;
}

createFlash.createFlashvars = function ( flashvars, isEmbed )
{
	if ( flashvars == null ) return "";
	flashvars = flashvars.constructor == Array ? flashvars : new Array(flashvars);
	
	var paramFV = { name:"flashvars", value:"" };
	var values = new Array();
	
	for ( var k = 0; k < flashvars.length; k++ )
	{
		values.push( flashvars[k].name + "=" + flashvars[k].value + "&" );	
	}
	paramFV.value = values.join("");
	if ( isEmbed == true )
		return paramFV.value;
	return createFlash.createParam( paramFV );
}

// cria com jQuery todas as áreas de clima
function criarClimas()
{	
	
	$j(".flClima").each( function (re)
	{
		var re = /flClima (\w{2}) (.+)/i;
		var r = re.exec(this.className);
		$j(this).append( criarClimaArea( r[1], r[2]));
	});
}

// criarClimaArea Cria informativos de temperatura em nau_tempo

function criarClimaArea( uf, cidade )
{
	var data = "../../swf/clima/area_de_clima.swf";
	var dimensions = { width:156, height:102 };

	var param = [
					 { name:"wmode", value:"transparent" }
					,{ name:"scale", value:"noScale"     }
					,{ name:"align", value:"top"         }
				];
	
	var flashVars = [
					 { name:"tempo_uf"   , value:uf      }
					,{ name:"tempo_cid"  , value:cidade  }
					,{ name:"lang"		 , value:lang	 }
					];
	
	var style = "";
	
	//target.innerHTML = createFlash( data, null, dimensions, param, flashVars, style );
	return createFlash( data, null, dimensions, param, flashVars, style );
	//document.write(createFlash( data, null, dimensions, param, flashVars, style ));
}
	
// criarMapa e atualizaMapa estão em NAU_TEMPO

function criarMapa()
{
	document.write( '<object id="mapa" type="application/x-shockwave-flash" data="../../swf/mapa/mapa.swf" width="410" height="395"><param name="movie" value="../../swf/mapa/mapa.swf" /><param name="wmode" value="transparent" /></object>' );
}

function atualizaMapa(regiao)
{
	var ol = getElementsByClass("aparece")
	
	for ( var i = 0; i < ol.length; i++ )
	{
		ol[ i ].className = "desaparece";
	}
	
	$( regiao ).className = "aparece";
}

function criaClimaAgora( uf, cidade, classe, lang )
{
	var data = "../../swf/clima/clima_agora.swf";
	
	var dimensions = { width:224, height:160 };

	var param = [
					 { name:"wmode", value:"transparent" }
					,{ name:"scale", value:"noScale"     }
					,{ name:"align", value:"top"         }
				];
	
	var flashvars = [
				  	 { name:"tempo_uf" , value:uf		}
					,{ name:"tempo_cid", value:cidade	}
					,{ name:"idioma"   , value:lang		}
					];
	
	var style = "";
	
	var className = classe;
	
	document.write( createFlash( data, null, dimensions, param, flashvars, style, className ) );
}

function criaAreaClima( minima, maxima, url, classe )
{
	var data = "../../swf/clima/max_min.swf";
	var dimensions = { width:153, height:99 };
	
	var param = [
					 { name:"wmode", value:"transparent" }
					,{ name:"scale", value:"noScale"     }
					,{ name:"align", value:"top"         }
				];
	
	var flashvars = [
				  	 { name:"tmin"  , value:minima  }
					,{ name:"tmax"  , value:maxima  }
					,{ name:"idioma", value:lang	}
					,{ name:"url_imagem"  , value:url  }
					];
	
	var style = "";
	
	var className = classe;
	
	document.write( createFlash( data, null, dimensions, param, flashvars, style, className ) );
}

// Clima no Brasil
function criaClimaBrasil( lang )
{
	var data = "../../swf/clima/componentes_clima.swf";
	var dimensions = {width:226, height:381};
	var param = [
				   {name:"wmode", value:"transparent"}
				 , {name:"scale", value:"noScale"}
				 , {name:"align", value:"top"}
				 ];
	var style = ""
	var flashVars = [ {name:"lang", value: lang } ];
	
	document.write (createFlash(data, null, dimensions, param, flashVars, style ) );
}
// CRIA OS TÍTULOS DAS PÁGINAS ================================================

function criarTitulo( titulo, width, estilo, css, maxChar )
{
	var data = "../../swf/titulos/Titulo.swf";
	var flashvars = [ { name:"style", value:estilo }, { name:"htmlText", value:titulo }, { name:"maxChar", value:maxChar } ];
	var params = { name:"wmode", value:"transparent" };
	// se o height for nulo, calcula-o automagicamente
	switch (estilo)
	{
		case "p":
			var alturalinha = 15;
			break;
		case "m":
			var alturalinha = 23;
			break;
		case "g":
		default:
			var alturalinha = 30;
			break;
	}
	var altura = getAlturaFlash( titulo, maxChar, alturalinha, 0 )
	var dimension = { width:width, height:altura };
	
	document.write( createFlash( data, null, dimension, params, flashvars, null, css ) );
}

function criarTitulo2( titulo, width, estilo, css, maxChar )
{

	var data = "../../swf/titulos/Titulo.swf";
	var flashvars = [ { name:"style", value:estilo }, { name:"htmlText", value:titulo }, { name:"maxChar", value:maxChar } ];
	var params = { name:"wmode", value:"transparent" };
	// se o height for nulo, calcula-o automagicamente
	switch (estilo)
	{
		case "p":
			var alturalinha = 15;
			break;
		case "m":
			var alturalinha = 23;
			break;
		case "g":
		default:
			var alturalinha = 30;
			break;
	}
	var altura = getAlturaFlash( titulo, maxChar, alturalinha, 0 )
	var dimension = { width:width, height:altura };
	
	return createFlash( data, null, dimension, params, flashvars, null, css );
}

// pegar a altura do flash, *pensando* em quebras de linha
function getAlturaFlash( texto, maxChar, alturaLinha, alturaExtra )
{
	var txtLinha = "";
	var arrPalavras = texto.split( " " );
	var linhas = 1;
	var txtFinal = "";
	for( i = 0; i < arrPalavras.length - 1; i ++ )
	{
		txtFinal += arrPalavras[ i ];
		if( txtFinal.length + arrPalavras[ i + 1 ].length  > maxChar * linhas )
		{
			linhas ++;
		}
		else
		{
			txtFinal += " ";
		}
	}
	return( ( linhas * alturaLinha ) + alturaExtra );
}


function calendario( calendario, url )
{
	var thisUrl = "inc/" + calendario + "_" + url + ".php";
	var pars = "foobar";
	var ph = "primario"; // placeholder onde será carregada a página
  	var ajax = new Ajax.Updater ( ph, thisUrl, { method: 'get', parameters: pars } );
	
	TB_init();

}

function getElementsByClass(searchClass,node,tag)
{
	var classElements = new Array();
	if ( node == null )
	{
		node = document;
	}
	else
	{
		node = $( node )	
	}
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function roteiro( roteiro, url, permicao )
{
	var nxtL = $( url ).getElementsByTagName("a")[ 0 ];
	var nowL = getElementsByClass("active", "caminho")[ 0 ];
	if ( permicao != true )
	{
		if( nxtL == nowL )
		{
			return false;
		}
	}

	var thisUrl = "roteiros/" + url + ".php"; //link criado
	var pars = "foobar";
	var ph = "dadoscaminho"; // placeholder onde será carregada a página
	
	var myAjax = new Ajax.Updater( ph, thisUrl, { onComplete:timer() } );
	
	function timer(){ setTimeout( atualizaAjax, 100 );}
	function atualizaAjax()
	{ 
		TB_init(); 
		aplicarTitulos();
		$j.imgSlider();
	}
	
	/*nowL.className = "";
	nxtL.className = "active";*/

	$j("#caminho li.active").removeClass("active");	
	$j("#caminho li#" + url).addClass("active");
}

function roteiroFotos( roteiro, url, obj )
{
	var thisUrl = "roteiros/" + roteiro + "_" + url + "_fotos.php";
	var pars = "foobar";
	var ph = "fichatecnica"; // placeholder onde será carregada a página
  		
	var myAjax = new Ajax.Updater( ph, thisUrl, { onComplete:timer() } );
	
	function timer(){ setTimeout( atualizaAjax, 1000 );}
	function atualizaAjax(){ TB_init(); }
	
}

function aplicarTitulos()
{
	var tits = getElementsByClass("criarTitulo");	
	for (var i = 0; i < tits.length; i++)
	{
		tits[i].innerHTML = criarTitulo2( tits[i].innerHTML, 400, "p", null, 50 );	
	}
}

function criarHome( lang, uriPT, uriEN, uriES, uriIT, uriFR)
{
	var data = "../../swf/header_home.swf";
	var dimensions = {width:955, height:368};
	var param = [
				   {name:"wmode", value:"transparent"}
				 , {name:"scale", value:"noScale"}
				 , {name:"align", value:"top"}
				 ];
	var style = ""
	var flashVars = [ 
					  { name:"idioma", value: lang		}
					, { name:"uriPT", value: uriPT		}
					, { name:"uriEN", value: uriEN		}
					, { name:"uriES", value: uriES		}
					, { name:"uriIT", value: uriIT		}
					, { name:"uriFR", value: uriFR		}
					];
	
	document.write (createFlash(data, null, dimensions, param, flashVars, style ) );
	
}

function criarSlideshow( xml, lang )
{

	var data = "../../swf/slideshow/slideshow.swf";
	var dimensions = {width:645, height:489};
	var param = null;
	var style = ""
	var flashVars = [ {name:"fotos", value: xml }, {name:"idioma", value: lang } ];	
	return (createFlash(data, null, dimensions, param, flashVars, style ) );
	
}
function chamarSlideShow( xml, lang )
{	
	var container = document.getElementById('containerSlideShow');
	
	container.innerHTML = criarSlideshow( xml, lang );
	
}
function dicasConteudo( id )
{
	var thisUrl = "inc/dicas_" + id + ".php";
	var pars = "foobar";
	var ph = "dicas"; // placeholder onde será carregada a página
  		
	var myAjax = new Ajax.Updater( ph, thisUrl, { onComplete:timer() } );
	
	function timer(){ setTimeout( atualizaAjax, 1000 );}
	function atualizaAjax(){ TB_init(); }//alert(JQ("a.thickbox").length);
	
}

function abreNovaPagina(link)
{
	urchinTracker( "/externo/" + link );
	window.open(link, "_blank");
}

function imprimir()
{
	urchinTracker( "/imprimir" + location.pathname );
	print();
}

function voltar()
{
	urchinTracker( "/voltar" + location.pathname );
	history.go(-1);
}

function fotoDownload( nomeCidade, resolution )
{
	urchinTracker( location.pathname + "/" + nomeCidade + "_" + resolution );
}

function pesquisarTabuas( estado, mes, ano )
{
	urchinTracker( location.pathname + "/" + estado + "_" + mes + "_" + ano );
}