
$().ready(function() {

if($('#ie6').length==0){
	
	/*
	Kwicks for jQuery (version 1.5.1)
	Copyright (c) 2008 Jeremy Martin
	http://www.jeremymartin.name/projects.php?project=kwicks
	
	Licensed under the MIT license:
		http://www.opensource.org/licenses/mit-license.php

	Any and all use of this script must be accompanied by this copyright/license notice in its present form.
*/

(function($){
	$.fn.kwicks = function(options) {
		var defaults = {
			isVertical: false,
			sticky: false,
			defaultKwick: 0,
			event: 'mouseover',
			spacing: 0,
			duration: 500
		};
		var o = $.extend(defaults, options);
		var WoH = (o.isVertical ? 'height' : 'width'); // WoH = Width or Height
		var LoT = (o.isVertical ? 'top' : 'left'); // LoT = Left or Top
		
		return this.each(function() {
			container = $(this);
			var kwicks = container.children('li');
			var normWoH = kwicks.eq(0).css(WoH).replace(/px/,''); // normWoH = Normal Width or Height
			if(!o.max) {
				o.max = (normWoH * kwicks.size()) - (o.min * (kwicks.size() - 1));
			} else {
				o.min = ((normWoH * kwicks.size()) - o.max) / (kwicks.size() - 1);
			}
			// set width of container ul
			if(o.isVertical) {
				container.css({
					width : kwicks.eq(0).css('width'),
					height : (normWoH * kwicks.size()) + (o.spacing * (kwicks.size() - 1)) + 'px'
				});				
			} else {
				container.css({
					width : (normWoH * kwicks.size()) + (o.spacing * (kwicks.size() - 1)) + 'px',
					height : kwicks.eq(0).css('height')
				});				
			}

			// pre calculate left or top values for all kwicks but the first and last
			// i = index of currently hovered kwick, j = index of kwick we're calculating
			var preCalcLoTs = []; // preCalcLoTs = pre-calculated Left or Top's
			for(i = 0; i < kwicks.size(); i++) {
				preCalcLoTs[i] = [];
				// don't need to calculate values for first or last kwick
				for(j = 1; j < kwicks.size() - 1; j++) {
					if(i == j) {
						preCalcLoTs[i][j] = o.isVertical ? j * o.min + (j * o.spacing) : j * o.min + (j * o.spacing);
					} else {
						preCalcLoTs[i][j] = (j <= i ? (j * o.min) : (j-1) * o.min + o.max) + (j * o.spacing);
					}
				}
			}
			
			// loop through all kwick elements
			kwicks.each(function(i) {
				if(animate){
				var kwick = $(this);
				// set initial width or height and left or top values
				// set first kwick
				if(i === 0) {
					kwick.css(LoT, '0px');
				} 
				// set last kwick
				else if(i == kwicks.size() - 1) {
					kwick.css(o.isVertical ? 'bottom' : 'right', '0px');
				}
				// set all other kwicks
				else {
					if(o.sticky) {
						kwick.css(LoT, preCalcLoTs[o.defaultKwick][i]);
					} else {
						kwick.css(LoT, (i * normWoH) + (i * o.spacing));
					}
				}
				// correct size in sticky mode
				if(o.sticky) {
					if(o.defaultKwick == i) {
						kwick.css(WoH, o.max + 'px');
						kwick.addClass('active');
					} else {
						kwick.css(WoH, o.min + 'px');
					}
				}
				kwick.css({
					margin: 0,
					position: 'absolute'
				});
				
				kwick.bind(o.event, function() {
					// calculate previous width or heights and left or top values
					var prevWoHs = []; // prevWoHs = previous Widths or Heights
					var prevLoTs = []; // prevLoTs = previous Left or Tops
					kwicks.stop().removeClass('active');
					if(animate){
					for(j = 0; j < kwicks.size(); j++) {
						prevWoHs[j] = kwicks.eq(j).css(WoH).replace(/px/, '');
						prevLoTs[j] = kwicks.eq(j).css(LoT).replace(/px/, '');
					}
					}
					var aniObj = {};
					aniObj[WoH] = o.max;
					var maxDif = o.max - prevWoHs[i];
					var prevWoHsMaxDifRatio = prevWoHs[i]/maxDif;
					if(animate){




					container.find('div.kwick_column_label').stop().not(kwick.find('div.kwick_column_label')).animate({width:120,height:60,left:2},o.duration,o.easing).find('div.context').each(function(){
						if($(this).css('opacity')!=0) {
						$(this).animate({opacity:0,height:60},{queue:false,duration:o.duration});
						}
					});


					kwick.find('div.kwick_column_label').animate({width:280,height:120,left:2},o.duration,o.easing).find('div.context').animate({opacity:1},{queue:false,duration:o.duration});





					kwick.addClass('active').animate(aniObj, {
						step: function(now) {
							// calculate animation completeness as percentage
							var percentage = maxDif != 0 ? now/maxDif - prevWoHsMaxDifRatio : 1;
							// adjsut other elements based on percentage
							kwicks.each(function(j) {
								if(j != i) {
									kwicks.eq(j).css(WoH, prevWoHs[j] - ((prevWoHs[j] - o.min) * percentage) + 'px');
								}
								if(j > 0 && j < kwicks.size() - 1) { // if not the first or last kwick
									kwicks.eq(j).css(LoT, prevLoTs[j] - ((prevLoTs[j] - preCalcLoTs[i][j]) * percentage) + 'px');
								}
							});
						},
						duration: o.duration,
						easing: o.easing
					});
						}
				});
				}
			});
			if(!o.sticky) {
				container.bind("mouseleave", function() {
					if(animate){
					var prevWoHs = [];
					var prevLoTs = [];
					kwicks.removeClass('active').stop();
					for(i = 0; i < kwicks.size(); i++) {
						prevWoHs[i] = kwicks.eq(i).css(WoH).replace(/px/, '');
						prevLoTs[i] = kwicks.eq(i).css(LoT).replace(/px/, '');
					}
					var aniObj = {};
					aniObj[WoH] = normWoH;
					var normDif = normWoH - prevWoHs[0];



					$('div.kwick_column_label').stop().animate({width:120,height:60,left:22},{queue:false,duration:o.duration},o.easing).find('div.context').animate({opacity:0},o.duration);

					kwicks.eq(0).animate(aniObj, {
						step: function(now) {
							if(animate){
							var percentage = normDif != 0 ? (now - prevWoHs[0])/normDif : 1;
							for(i = 1; i < kwicks.size(); i++) {
								kwicks.eq(i).css(WoH, prevWoHs[i] - ((prevWoHs[i] - normWoH) * percentage) + 'px');
								if(i < kwicks.size() - 1) {
									kwicks.eq(i).css(LoT, prevLoTs[i] - ((prevLoTs[i] - ((i * normWoH) + (i * o.spacing))) * percentage) + 'px');
								}
							}
							}
						},
						duration: o.duration,
						easing: o.easing
					});
					}
				});
			}
		});
	};
})(jQuery);




var animate = true;
var expandable = true;
$(function(){




 	var cnt = 0;
	var bigflag = false;
	$('ul.kwicks > li').bind('click',function(){ 
				$('div.kwick_column_label').height(60);
		$(this).find('div.kwick_column_label').width(420);
		$('div.context').stop().animate({opacity:0});


		if(expandable && $(this).find('div.kwick_column_content').css('display') ==='none'){
		animate=false;
		$('ul.kwicks > li').stop();
		var $t = $(this);		
		var cnt = 0;
		var bigflag = false;
		$('ul.kwicks > li').each(function(){

			if($(this).not($t).length==1){	//if it's not the one you clicked
				if(bigflag===true){	//already passed through the wide element
					
					if(cnt!=5){
						$(this).css({width:115,left:((cnt-1)*117+437)});
					}else{
						$(this).css({width:115});
					}
				}else{
					if(cnt!=4){
				$(this).css({width:115,left:cnt*117});
					}else{
						$(this).css({width:115});
					}
				}
			}else{
				bigflag=true;
				if(cnt!=4){
				$(this).css({width:432,left:cnt*117});
					if(cnt==1){
						$(this).find('div.kwick_column_content').width(432);
					}
				}else{
				$(this).css({width:432,left:'auto'});//,left:cnt*117});
				}
			}
			cnt++;		
		});		



		$('div.kwick_column_wrap').not($(this).find('div.kwick_column_wrap')).show();
		$(this).find('div.kwick_column_wrap').hide();
		$('div.kwick_column_content').stop().hide().each(function(){
			ht = $(this)[0].scrollHeight;

			if(ht!=0){
			if(ht<530){
			$(this).height(530);//);
			}else{$(this).height(ht);}
			}
			
		});
		$('ul.kwicks > li').height(530);

		$ht = $(this).find('div.kwick_column_content')[0].scrollHeight;

		if($ht<530){ht=530;}
		$(this).parents('ul.kwicks > li').height($ht).end().height($ht);


		$(this).find('div.kwick_column_content').css({opacity:0}).slideDown('fast',function(){
					$height = $(this)[0].scrollHeight;
					if($height<530){$height=530;}
					$(this).parents('ul.kwicks > li').height($height).end().height($height);
					$('div.grid_5').height($height);
		}).animate({opacity:'1'},'1000');

		}

	});

	$('span.close').bind('click',function(e){
		expandable = false;


				$('ul.kwicks > li, .grid_5').height(530);
		$elem = $(this).parents('ul.kwicks li');
		$elem.find('div.kwick_column_wrap').slideDown()
			




				$('ul.kwicks > li:last').css({left:"auto"});
		$elem.find('.kwick_column_content').slideUp('normal',function(){expandable=true;animate=true;
		
		
				var cnt = 0;
				$('ul.kwicks > li').width(180).each(function(){
					if(cnt!=4){
					$(this).css({left:cnt*180});
					}
					cnt++;
				});
		$('div.kwick_column_label').animate({height:60,left:22,width:120});
		});
		



		
		return false;
	});

});







	$('ul.kwicks').kwicks({
			max:300,
				spacing:5,
		duration: 750,
			easing: 'easeOutCubic'
	});
	$('ul.kwicks').width(900);
	$('div.context').css({opacity:0});
}else{//is ie6
}
	

//preload images


$('.kwick_text_wrap').each(function(){



    img = new Image();
	img.src = $(this).css('background-image').split('url(').join('').split(')').join('')


});

});