

function SliderClass(id)
{
	this.id = id;
	this.index = 0;
	this.slideTime = 4500;
	this.slideTo = -1;
	this.pages = $(id+' .control .dots');
	this.items = $(id+' .images');
	this.itemCount = $(id+' .item').length;
	this.itemWidth = $(id+' .item').width();
	this.items.css('width', this.itemWidth * this.itemCount);
	
	var index = 0;
	for(var i=0; i<this.itemCount; i++)
	{
		var data = { slider: this, index: i };
		var citem = this.items.find('.item:eq('+i+')');
		citem.data('sData', data);
		citem.attr('rel', i);
		
		this.pages.find('.dot:eq('+i+')').data('sData', data);
	}
	
	this.pages.find('.dot').click(function(){
		var data = $(this).data('sData');
		data.slider.jumpTo(data.index);
		return false;
	});
	
	return this;
}

SliderClass.prototype.slide = function() {
	this.index++;
	if (this.index >= this.itemCount) 
		this.index = 0;
	
	// slide images to the left
	var thisSlider = this;
	this.items.animate({'left':-this.itemWidth}, function(){
		// shuffle first image to the end
		var img = $(this).find('.item:first').detach();
		$(this).append(img);
		$(this).css('left', 0);
		
		setTimeout('slider.slide()', slider.slideTime);
		
		thisSlider.pages.find('.current').removeClass('current');
		thisSlider.pages.find('.dot:eq('+thisSlider.index+')').addClass('current');
	});
};

SliderClass.prototype.jumpTo = function(index) {
	if (index == this.index) return;
	
	// stop the current animation and jump to the end of it so this function can work properly
	this.items.stop(true,true);
	
	var eq = ':eq('+index+')';
	this.pages.find('.current').removeClass('current');
	this.pages.find('.dot'+eq).addClass('current');
	
	var img = this.items.find('.item[rel='+index+']');
	var left = img.prevAll().detach();
	this.items.append(left);
	this.index = index;
};

var slider;


function showTopLinks()
{
	var tl = $('#top-links');
	var ti = $('#top-links-btn');
	var h = tl.height();
	var target1 = tl.offset().top == 0 ? -h : 0;
	var target2 = ti.offset().top == 0 ? h : 0;
	tl.animate({top: target1});
	ti.animate({top: target2});
}

function showSitemap()
{
	var tl = $('#bottom-links');
	var ti = $('#sitemap-btn');
	var h = tl.height();
	
	if (tl.is(':visible'))
	{
		tl.animate({height: 0, marginTop: 0}, function(){
			$(this).hide();
			$(this).css('height', h);
		});
		ti.animate({marginTop: 0});
	}
	else
	{
		tl.css({height: 18, marginTop: -18});
		tl.show().animate({height: h, marginTop: -h});
		ti.css({marginTop: 19});
		ti.animate({marginTop: -(h-19)});
	}
}

function submitSearch()
{
	document.searchForm.submit();
}

$(function(){
	slider = new SliderClass('#rotating-header');
	setTimeout('slider.slide();', slider.slideTime);

	$('#rotating-header .continue').click(function(){
		var link = $('#rotating-header .dots a.current');
		if (link.length != 0)
			document.location = link.attr('href');
		return false;
	});

	var h = $('#top-links').height();
	$('#top-links').css('top', -h);
	$('#top-links').show();
	
	
	$('#navigation li').hover(
		function() { $(this).find('ul.flyout:first').show(); },
		function() { $(this).find('ul.flyout:first').hide(); }
	);
	
	$('#search-box input[type=text]').one('click', function(){ $(this).val(''); });
	
	$('ul.flyout a.expand').click(function(){
		$(this).siblings('ul.sub').toggle();
		return false;
	});
});










