$(function(){
	function dump(obj){var txt='';if(obj)for(var x in obj)txt+=x+'='+obj[x]+'\n';return txt}
	$.support.opacity||$(function(){
		var filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'@\',sizingMethod=\'scale\')';
		$('#wrap img[src$=png]').each(function(i,el){el.style.filter=filter.replace('@',el.src);el.src='g/tour/blank.gif'});
	});

	Tour={
		tour:$('#tour'),
		goto:function(href,nr){
			if(Tour.cur!=(nr=parseInt(String(href).replace(/[^\d]*/,''))||1)){
				var index=(window.location.hash=Tour.cur=nr)-1,
					build=Builds[index],
					nav=Tour.nav.removeClass('cur').eq(index).addClass('cur');
			
				Tour.note.css(build['note']||{});
				Tour.text.html(nav.next().html());
		
				for(var i in build)if(i!='note'){
					var css=build[i],hide=css.opacity===0,hidden=parseFloat(Tour[i].css('opacity'))===0;
					if(!hide&&hidden)css.opacity=css.opacity||1;
					Tour[i].animate(css,{queue:false});
				}
			}
		},
		swap:function(e){
			var next=(document.body.clientWidth/2)>e.clientX?-1:1;
			if(e.type=='keydown')next=e.keyCode===37?-1:(e.keyCode===39?1:0);
			else if((document.body.clientHeight-e.clientY)<110)next=0;
			if(next){
				var i=(Tour.cur||1)-1+next,l=Tour.nav.length;
				Tour.goto(Tour.nav.eq(l==i?0:(i<0?l-1:i)).attr('href'));
			}
		},
		nav:$('#tour-nav li > a').bind('click',function(){Tour.goto(this.href)}),
		night:$('#tour-night'),
		line:$('#tour-line')
	}

	$('#tour-next,#tour-prev').bind('click',Tour.swap);
	$('body').bind('keydown',Tour.swap);
	$('#tour *[id]').each(function(i,el){Tour[el.id.replace(/^tour\-/gi,'')]=$(el)});
	$('#tour-nav p').each(function(i,el){
		if(i=Builds[i].note){
			i.width=parseInt(el.title)||100;
			i.left=Math.round(i.left-(i.width/2));
		}
	});

	Tour.goto(window.location.hash);
});
