//-----------------------------------------------------------------------------
// Set element by id
//-----------------------------------------------------------------------------
// str		string
// return 	object
//-----------------------------------------------------------------------------
function setID(str)
{
	return document.getElementById(str);
}


//-----------------------------------------------------------------------------
// Onload
//-----------------------------------------------------------------------------
// return 	void
//-----------------------------------------------------------------------------
window.onload = function()
{
	inputValue('search', 'palavra chave');
}


//-----------------------------------------------------------------------------
// Set input value
//-----------------------------------------------------------------------------
// id		string
// str		string
// return 	void
//-----------------------------------------------------------------------------
function inputValue(id, str)
{
	if(setID(id) != null)
	{
		setID(id).style.color 	= '#999999';
		setID(id).value 		= str;
		
		if(setID(id).type == 'password')
		{
			if(setID(id).type == 'password')
				setID(id).setAttribute('type', 'text');
			
			setID(id).onfocus = function()
			{
				if(setID(id).value == str)
				{
					setID(id).value 		= '';
					setID(id).style.color 	= '#2D2D2D';
					
					if(setID(id).type == 'text')
						setID(id).setAttribute('type', 'password');
				}
			}
			setID(id).onblur = function()
			{
				if(setID(id).value == '')
				{
					setID(id).style.color 	= '#999999';
					setID(id).value 		= str;
					
					if(setID(id).type == 'password')
						setID(id).setAttribute('type', 'text');
				}
			}
		}
		else
		{
			setID(id).onfocus = function()
			{
				if(setID(id).value == str)
				{
					setID(id).value 		= '';
					setID(id).style.color 	= '#2D2D2D';
				}
			}
		
			setID(id).onblur = function()
			{
				if(setID(id).value == '')
				{
					setID(id).style.color 	= '#999999';
					setID(id).value 		= str;
				}
			}
		}
	}
}


//-----------------------------------------------------------------------------
// Base 64 encode
//-----------------------------------------------------------------------------
// str		string
// return 	string
//-----------------------------------------------------------------------------
var ua = navigator.userAgent.toLowerCase();
if(ua.indexOf(" chrome/") >= 0 || ua.indexOf(" firefox/") >= 0 || ua.indexOf(' gecko/') >= 0)
{
	var StringMaker = function()
	{
		this.str = "";
		this.length = 0;
		this.append = function(s)
		{
			this.str += s;
			this.length += s.length;
		}
		this.prepend = function(s)
		{
			this.str = s + this.str;
			this.length += s.length;
		}
		this.toString = function()
		{
			return this.str;
		}
	}
}
else
{
	var StringMaker = function()
	{
		this.parts = [];
		this.length = 0;
		this.append = function(s)
		{
			this.parts.push(s);
			this.length += s.length;
		}
		this.prepend = function(s)
		{
			this.parts.unshift(s);
			this.length += s.length;
		}
		this.toString = function()
		{
			return this.parts.join('');
		}
	}
}

var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
function base64_encode(str)
{
	var output = new StringMaker();
	var chr1, chr2, chr3;
	var enc1, enc2, enc3, enc4;
	var i = 0;
	
	while(i < str.length)
	{
		chr1 = str.charCodeAt(i++);
		chr2 = str.charCodeAt(i++);
		chr3 = str.charCodeAt(i++);
		
		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;
		
		if(isNaN(chr2))
			enc3 = enc4 = 64;
		else if(isNaN(chr3))
			enc4 = 64;
		
		output.append(keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4));
	}
	return output.toString();
}

//////////////////
// ScrollPages //
////////////////

$.extend({
	scrollPages: {
		version: 2.5,
		defaults: {
			elementSize: 50,
			elements: 3,
			speed: "slow",
			direction: "up"
		}
	}
});
$.fn.extend({
	scrollPages: function(options){
		options = $.extend({}, $.scrollPages.defaults, options);
		return this.each(function(){
			
			// Defini??es de vari?veis
			var total = $(".scrollMask li",this).length;
			var mask = options.elementSize * options.elements;
			var area = options.elementSize * total;
			var animation = false;
			var obj = this;
			var dimension = options.direction == "left" ? "width" : "height";
			var side = new Array();
			side[0] = options.direction;
			side[1] = options.direction == "up" ? "down" : "right";
			
			$(".scrollButtom",this).css("visibility","visible");
			if(options.elements >= total){
				$(".scrollButtom",this).css("visibility","visible");
				mask = area;
			}else{
				$(".scrollButtom[rel*='"+options.direction+"']",obj).css("visibility","hidden");
			}
			
			// Aplica??o de estilos
			if(options.direction == "up"){
				//$(".scrollMask",this).css({"height": mask + "px", overflow: "hidden"}); // M?scara
				$(".scrollMask ul",this).css({"height": area + "px", marginTop: 0}); // UL
				$(".scrollMask li",this).css({"height": options.elementSize + "px", display: "block"}); // LI
			}else{
				//$(".scrollMask",this).css({"width": mask + "px", overflow: "hidden"}); // M?scara
				$(".scrollMask ul",this).css({"width": area + "px", marginTop: 0}); // UL
				$(".scrollMask li",this).css({"width": options.elementSize + "px", display: "block"}); // LI
			}
			if (area <= mask) $(".scrollButtom",obj).css("visibility","hidden");
			if (area <= mask + 596) $(".buttom2",obj).css("visibility","hidden");

			// Fun??o que execulta a rolagem
			var rolagem = function(direction){

				// Vari?veis
				var margem = -parseInt($(".scrollMask ul",obj).css("margin-"+(options.direction == "up" ? "top" : "left")));

				var intervalo = direction == side[1]
					? ( margem + ( mask * 2 ) ) < area
						? mask
						: area - (margem + mask)
					: ( margem - mask ) < 0
						? margem
						: mask
				;
				direction = direction == side[1]
					? -margem - intervalo
					: -margem + intervalo
				;
				
				$(".scrollButtom",obj).css("visibility","visible");
				var rel = -direction == 0 ? side[0] : (-direction + mask) == area ? side[1] : null;
				if(rel != null) $(".scrollButtom[rel*='"+rel+"']",obj).css("visibility","hidden");
				
				
				//Condi??o especial para galeria com degrade
				//var rel2 = -direction == 0 ? side[0] : (-direction + mask + 596) == area ? side[1] : null;
				//if(rel2 != null) $(".scrollButtom[rel*='"+rel2+"']",obj).css("visibility","hidden");
				
				// Anima??o
				animation = true;
				if(options.direction == "up"){
					$(".scrollMask ul",obj).animate({marginTop: direction + "px"},options.speed,function(){ animation = false; });
				}else{
					$(".scrollMask ul",obj).animate({marginLeft: direction + "px"},options.speed,function(){ animation = false; });
				}
			}
			
			// Aplica??o de eventos
			$(".scrollButtom",this).unbind("click").click(function(){
				if(!animation){
					var direction = $(this).attr("rel");
					rolagem(direction);
				}
			});
		});
	}
});

imB = function(){
	jQuery.ImageBox.init({loaderSRC:'imagens/carregando.gif', overlayOpacity: 0.5});
}



$(document).ready( function(){
	
//mainmenu();

/////////////////////////////
// Mostra sub menu Produtos
///////////////////////////////////////

	var tempo 
	esconde = function(){
		$('.subMenu').children().hide();
		$('.subMenu').slideUp('fast');
	}
	$('.menuTopo ul li.produtos').hover(function(){
		$('.subMenu').children().show();
		$(this).children('.subMenu').slideDown('fast');
		clearTimeout(tempo);
	},function(){
		tempo = setTimeout(esconde,1000);
	});

///////////////////////////////////////
// Rolagem de fotos galeria produtos
/////////////////////////////////////////////

	$('.galeria').scrollPages({elementSize:72, elements:6, direction:'left'});

//////////////////////////////////
// Colorbox
/////////////////////////////

	$("a[rel='win110Prata']").colorbox();
	$("a[rel='win110Preta']").colorbox();
	$("a[rel='win110Vermelha']").colorbox();
	$("a[rel='prima150Bordeaux']").colorbox();
	$("a[rel='prima150Preta']").colorbox();
	$("a[rel='prima150Amarela']").colorbox();
	$("a[rel='electraPrata']").colorbox();
	$("a[rel='electraVermelha']").colorbox();
	$("a[rel='mirage150Preta']").colorbox();
	$("a[rel='mirage150Azul']").colorbox();
	$("a[rel='mirage150Bordeaux']").colorbox();
	$("a[rel='mirage250PretaVermelha']").colorbox();
	$("a[rel='mirage250Preta']").colorbox();
	$("a[rel='mirage250PretaPrata']").colorbox();
	$("a[rel='mirage650Vinho']").colorbox();
	$("a[rel='mirage650Preta']").colorbox();
	$("a[rel='crz150Amarela']").colorbox();
	$("a[rel='crz150Vermelha']").colorbox();
	$("a[rel='crz150Branca']").colorbox();
	$("a[rel='crz150smAzul']").colorbox();
	$("a[rel='crz150smVermelha']").colorbox();
	$("a[rel='comet250Preta']").colorbox();
	$("a[rel='comet250Vermelha']").colorbox();
	$("a[rel='comet250RPreta']").colorbox();
	$("a[rel='comet250RVermelha']").colorbox();
	$("a[rel='comet250RPretaBranca']").colorbox();
	$("a[rel='comet250RPretaVermelha']").colorbox();
	$("a[rel='comet650RPreta']").colorbox();
	$("a[rel='comet650RVermelha']").colorbox();
	$("a[rel='comet650RPretaBranca']").colorbox();
	$("a[rel='comet650RPretaVermelha']").colorbox();

//////////////////////////////////
// Troca Banner pagina de Motos
//////////////////////////////////
	
	$('.cores ul li a').click(function(){
		var obj = $(this).parents('ul:eq(0)');
		var indice = $('a', obj).index(this);
		$('#imgMoto > img:not(:eq('+indice+'))').hide();
		$('#imgMoto > img:eq('+indice+')').fadeIn();
	});
	
///////////////////////////////////////////////
// Troca galeria de fotos pagina de Motos
///////////////////////////////////////////////

	$('.cores ul li a').click(function(){
		var obj = $(this).parents('ul:eq(0)');
		var indice = $('a', obj).index(this);
		$('.galeria:not(:eq('+indice+'))').hide();
		$('.galeria:eq('+indice+')').show();
	});

//////////////////////////
// Rolagem de Not?cias
///////////////////////////

	$('.galeriaNoticias').scrollPages({elementSize:80, elements:4, direction:'up'});

////////////////////////////////
// Funcao Select DropDown
///////////////////////////////
	$('.select').unbind().click(function(){
		obj = $(this);
		$('ul',obj).slideDown('fast');
		$('ul li a',obj).click(function(){
			$('ul li a',obj).removeClass('selected');
			$(this).addClass('selected');
			
			var selecionado = $('ul li a.selected',obj).text();
			$('p',obj).text(selecionado);
			$('ul',this).unbind().slideUp('fast');
		});
	//},function(){
		//$('ul',this).unbind().slideUp('fast');
	});
/////////////////////////
// Flash Onde Comprar
//////////////////////////

$(".flashHome").addFlash({src: "swf/teaser.swf", width: 984, height: 408, title: "Kasinski"});
$(".mapaFlash").addFlash({src: "swf/mapa.swf", width: 331, height: 318, title: "Mapa de Concessionárias"});
$(".mapaFlash2").addFlash({src: "swf/mapa2.swf", width: 331, height: 318, title: "Mapa de Assistência Técnica"});

////////////////////////////
// Link localidades Ativo
/////////////////////////////

	$('.selecionaRegiao a').click(function(){
		$('.selecionaRegiao a').removeClass('ativo');
		$(this).addClass('ativo');
	});

////////////////////////
// Scroll estilizado
//////////////////////////

/* Funciona em conjunto com o plugin jScrollPane-1.2.3.min.js */
function setScroll()
{
	$('.scrollLocalidades').jScrollPane({showArrows:true, scrollbarWidth:10})
	setTimeout(setScroll, 500);
}
setScroll();

////////////////////////
// Chama div de Bloqueio
//////////////////////////////////
	$(".abreEspec").click(function(){
		bloqueia({ speed: "fast", bgcolor: "#000" });
		$(".especificacoes").appendTo('body').absoluteCenter({animation:false}).absoluteCenter().show();
	});
	$(".fechaBloqueio").click(function(){
		$(".especificacoes").hide();
		bloqueia({ speed: "slow", evento: "fim" });
		$(window).unbind("scroll");
		$(window).unbind("resize");
		
	});
  
});
