(function(a){a.fn.kwicks=function(e){var b={isVertical:false,sticky:false,defaultKwick:0,event:"mouseover",spacing:0,duration:500};var d=a.extend(b,e);var f=(d.isVertical?"height":"width");var c=(d.isVertical?"top":"left");return this.each(function(){container=a(this);var g=container.children("li");var h=g.eq(0).css(f).replace(/px/,"");if(!d.max){d.max=(h*g.size())-(d.min*(g.size()-1))}else{d.min=((h*g.size())-d.max)/(g.size()-1)}if(d.isVertical){container.css({width:g.eq(0).css("width"),height:(h*g.size())+(d.spacing*(g.size()-1))+"px"})}else{container.css({width:(h*g.size())+(d.spacing*(g.size()-1))+"px",height:g.eq(0).css("height")})}var k=[];for(i=0;i<g.size();i++){k[i]=[];for(j=1;j<g.size()-1;j++){if(i==j){k[i][j]=d.isVertical?j*d.min+(j*d.spacing):j*d.min+(j*d.spacing)}else{k[i][j]=(j<=i?(j*d.min):(j-1)*d.min+d.max)+(j*d.spacing)}}}g.each(function(l){var m=a(this);if(l===0){m.css(c,"0px")}else{if(l==g.size()-1){m.css(d.isVertical?"bottom":"right","0px")}else{if(d.sticky){m.css(c,k[d.defaultKwick][l])}else{m.css(c,(l*h)+(l*d.spacing))}}}if(d.sticky){if(d.defaultKwick==l){m.css(f,d.max+"px");m.addClass("active")}else{m.css(f,d.min+"px")}}m.css({margin:0,position:"absolute"});m.bind(d.event,function(){var q=[];var p=[];g.stop().removeClass("active");for(j=0;j<g.size();j++){q[j]=g.eq(j).css(f).replace(/px/,"");p[j]=g.eq(j).css(c).replace(/px/,"")}var n={};n[f]=d.max;var o=d.max-q[l];var r=q[l]/o;m.addClass("active").animate(n,{step:function(s){var t=o!=0?s/o-r:1;g.each(function(u){if(u!=l){g.eq(u).css(f,q[u]-((q[u]-d.min)*t)+"px")}if(u>0&&u<g.size()-1){g.eq(u).css(c,p[u]-((p[u]-k[l][u])*t)+"px")}})},duration:d.duration,easing:d.easing})})});if(!d.sticky){container.bind("mouseleave",function(){var o=[];var n=[];g.removeClass("active").stop();for(i=0;i<g.size();i++){o[i]=g.eq(i).css(f).replace(/px/,"");n[i]=g.eq(i).css(c).replace(/px/,"")}var l={};l[f]=h;var m=h-o[0];g.eq(0).animate(l,{step:function(p){var q=m!=0?(p-o[0])/m:1;for(i=1;i<g.size();i++){g.eq(i).css(f,o[i]-((o[i]-h)*q)+"px");if(i<g.size()-1){g.eq(i).css(c,n[i]-((n[i]-((i*h)+(i*d.spacing)))*q)+"px")}}},duration:d.duration,easing:d.easing})})}})}})(jQuery);
