/*
* jquery.tools 1.1.2 - The missing UI library for the Web
* 
* [tools.scrollable-1.1.2, tools.scrollable.circular-0.5.1, tools.scrollable.autoscroll-1.0.1, tools.scrollable.navigator-1.0.2, tools.scrollable.mousewheel-1.0.1]
* 
* Copyright (c) 2009 Tero Piirainen
* http://flowplayer.org/tools/
*
* Dual licensed under MIT and GPL 2+ licenses
* http://www.opensource.org/licenses
* 
* -----
* 
* jquery.event.wheel.js - rev 1 
* Copyright (c) 2008, Three Dub Media (http://threedubmedia.com)
* Liscensed under the MIT License (MIT-LICENSE.txt)
* http://www.opensource.org/licenses/mit-license.php
* Created: 2008-07-01 | Updated: 2008-07-14
* 
* -----
* 
* File generated: Wed Jan 13 13:25:37 GMT 2010
*/
(function(d){d.tools=d.tools||{};
d.tools.scrollable={version:"1.1.2",conf:{size:5,vertical:false,speed:400,keyboard:true,keyboardSteps:null,disabledClass:"disabled",hoverClass:null,clickable:true,activeClass:"active",easing:"swing",loop:false,items:".items",item:null,prev:".prev",next:".next",prevPage:".prevPage",nextPage:".nextPage",api:false}};var f;function e(s,u){var a=this,c=d(this),D=!u.vertical,C=s.children(),w=0,y;if(!f){f=a}d.each(u,function(h,g){if(d.isFunction(g)){c.bind(h,g)}});if(C.length>1){C=d(u.items,s)}function v(g){var h=d(g);
return u.globalNav?h:s.parent().find(g)}s.data("finder",v);var B=v(u.prev),z=v(u.next),A=v(u.prevPage),t=v(u.nextPage);d.extend(a,{getIndex:function(){return w},getClickIndex:function(){var g=a.getItems();return g.index(g.filter("."+u.activeClass))},getConf:function(){return u},getSize:function(){return a.getItems().size()},getPageAmount:function(){return Math.ceil(this.getSize()/u.size)},getPageIndex:function(){return Math.ceil(w/u.size)},getNaviButtons:function(){return B.add(z).add(A).add(t)},getRoot:function(){return s
},getItemWrap:function(){return C},getItems:function(){return C.children(u.item)},getVisibleItems:function(){return a.getItems().slice(w,w+u.size)},seekTo:function(l,h,k){if(l<0){l=0}if(w===l){return a}if(d.isFunction(h)){k=h}if(l>a.getSize()-u.size){return u.loop?a.begin():this.end()}var j=a.getItems().eq(l);if(!j.length){return a}var i=d.Event("onBeforeSeek");c.trigger(i,[l]);if(i.isDefaultPrevented()){return a}if(h===undefined||d.isFunction(h)){h=u.speed}function g(){if(k){k.call(a,l)}c.trigger("onSeek",[l])
}if(D){C.animate({left:-j.position().left},h,u.easing,g)}else{C.animate({top:-j.position().top},h,u.easing,g)}f=a;w=l;i=d.Event("onStart");c.trigger(i,[l]);if(i.isDefaultPrevented()){return a}B.add(A).toggleClass(u.disabledClass,l===0);z.add(t).toggleClass(u.disabledClass,l>=a.getSize()-u.size);return a},move:function(g,h,i){y=g>0;return this.seekTo(w+g,h,i)},next:function(g,h){return this.move(1,g,h)},prev:function(g,h){return this.move(-1,g,h)},movePage:function(g,h,i){y=g>0;var k=u.size*g;var j=w%u.size;if(j>0){k+=(g>0?-j:u.size-j)
}return this.move(k,h,i)},prevPage:function(g,h){return this.movePage(-1,g,h)},nextPage:function(g,h){return this.movePage(1,g,h)},setPage:function(h,g,i){return this.seekTo(h*u.size,g,i)},begin:function(g,h){y=false;return this.seekTo(0,g,h)},end:function(h,i){y=true;var g=this.getSize()-u.size;return g>0?this.seekTo(g,h,i):a},reload:function(){c.trigger("onReload");return a},focus:function(){f=a;return a},click:function(j){var i=a.getItems().eq(j),l=u.activeClass,k=u.size;if(j<0||j>=a.getSize()){return a}if(k==1){if(u.loop){return a.next()
}if(j===0||j==a.getSize()-1){y=(y===undefined)?true:!y}return y===false?a.prev():a.next()}if(k==2){if(j==w){j--}a.getItems().removeClass(l);i.addClass(l);return a.seekTo(j,time,fn)}if(!i.hasClass(l)){a.getItems().removeClass(l);i.addClass(l);var g=Math.floor(k/2);var h=j-g;if(h>a.getSize()-k){h=a.getSize()-k}if(h!==j){return a.seekTo(h)}}return a},bind:function(h,g){c.bind(h,g);return a},unbind:function(g){c.unbind(g);return a}});d.each("onBeforeSeek,onStart,onSeek,onReload".split(","),function(h,g){a[g]=function(i){return a.bind(g,i)
}});B.addClass(u.disabledClass).click(function(){a.prev()});z.click(function(){a.next()});t.click(function(){a.nextPage()});if(a.getSize()<u.size){z.add(t).addClass(u.disabledClass)}A.addClass(u.disabledClass).click(function(){a.prevPage()});var x=u.hoverClass,b="keydown."+Math.random().toString().substring(10);a.onReload(function(){if(x){a.getItems().hover(function(){d(this).addClass(x)},function(){d(this).removeClass(x)})}if(u.clickable){a.getItems().each(function(g){d(this).unbind("click.scrollable").bind("click.scrollable",function(h){if(d(h.target).is("a")){return
}return a.click(g)})})}if(u.keyboard){d(document).unbind(b).bind(b,function(h){if(h.altKey||h.ctrlKey){return}if(u.keyboard!="static"&&f!=a){return}var g=u.keyboardSteps;if(D&&(h.keyCode==37||h.keyCode==39)){a.move(h.keyCode==37?-g:g);return h.preventDefault()}if(!D&&(h.keyCode==38||h.keyCode==40)){a.move(h.keyCode==38?-g:g);return h.preventDefault()}return true})}else{d(document).unbind(b)}});a.reload()}d.fn.scrollable=function(c){var b=this.eq(typeof c=="number"?c:0).data("scrollable");if(b){return b}var a=d.extend({},d.tools.scrollable.conf);
c=d.extend(a,c);c.keyboardSteps=c.keyboardSteps||c.size;this.each(function(){b=new e(d(this),c);d(this).data("scrollable",b)});return c.api?b:this}})(jQuery);(function(c){var d=c.tools.scrollable;d.plugins=d.plugins||{};d.plugins.circular={version:"0.5.1",conf:{api:false,clonedClass:"cloned"}};c.fn.circular=function(a){var b=c.extend({},d.plugins.circular.conf),f;c.extend(b,a);this.each(function(){var s=c(this).scrollable(),e=s.getItems(),q=s.getConf(),v=s.getItemWrap(),r=0;if(s){f=s}if(e.length<q.size){return false
}e.slice(0,q.size).each(function(g){c(this).clone().appendTo(v).click(function(){s.click(e.length+g)}).addClass(b.clonedClass)});var p=c.makeArray(e.slice(-q.size)).reverse();c(p).each(function(g){c(this).clone().prependTo(v).click(function(){s.click(-g-1)}).addClass(b.clonedClass)});var o=v.children(q.item);var t=q.hoverClass;if(t){o.hover(function(){c(this).addClass(t)},function(){c(this).removeClass(t)})}function u(h){var g=o.eq(h);if(q.vertical){v.css({top:-g.position().top})}else{v.css({left:-g.position().left})
}}u(q.size);c.extend(s,{move:function(i,j,l,k){var g=r+i+q.size;var h=g>s.getSize()-q.size;if(g<=0||h){var m=r+q.size+(h?-e.length:e.length);u(m);g=m+i}if(k){o.removeClass(q.activeClass).eq(g+Math.floor(q.size/2)).addClass(q.activeClass)}if(g===r+q.size){return self}return s.seekTo(g,j,l)},begin:function(g,h){return this.seekTo(q.size,g,h)},end:function(g,h){return this.seekTo(e.length,g,h)},click:function(j,h,i){if(!q.clickable){return self}if(q.size==1){return this.next()}var g=j-r,k=q.activeClass;g-=Math.floor(q.size/2);
return this.move(g,h,i,true)},getIndex:function(){return r},setPage:function(h,g,i){return this.seekTo(h*q.size+q.size,g,i)},getPageAmount:function(){return Math.ceil(e.length/q.size)},getPageIndex:function(){if(r<0){return this.getPageAmount()-1}if(r>=e.length){return 0}var g=(r+q.size)/q.size-1;return g},getVisibleItems:function(){var g=r+q.size;return o.slice(g,g+q.size)}});s.onStart(function(g,h){r=h-q.size;return false});s.getNaviButtons().removeClass(q.disabledClass)});return b.api?f:this}})(jQuery);(function(c){var d=c.tools.scrollable;
d.plugins=d.plugins||{};d.plugins.autoscroll={version:"1.0.1",conf:{autoplay:true,interval:3000,autopause:true,steps:1,api:false}};c.fn.autoscroll=function(b){if(typeof b=="number"){b={interval:b}}var a=c.extend({},d.plugins.autoscroll.conf),f;c.extend(a,b);this.each(function(){var k=c(this).scrollable();if(k){f=k}var e,l,j=true;k.play=function(){if(e){return}j=false;e=setInterval(function(){k.move(a.steps)},a.interval);k.move(a.steps)};k.pause=function(){e=clearInterval(e)};k.stop=function(){k.pause();j=true
};if(a.autopause){k.getRoot().add(k.getNaviButtons()).hover(function(){k.pause();clearInterval(l)},function(){if(!j){l=setTimeout(k.play,a.interval)}})}if(a.autoplay){setTimeout(k.play,a.interval)}});return a.api?f:this}})(jQuery);(function(c){var d=c.tools.scrollable;d.plugins=d.plugins||{};d.plugins.navigator={version:"1.0.2",conf:{navi:".navi",naviItem:null,activeClass:"active",indexed:false,api:false,idPrefix:null}};c.fn.navigator=function(b){var a=c.extend({},d.plugins.navigator.conf),f;if(typeof b=="string"){b={navi:b}
}b=c.extend(a,b);this.each(function(){var o=c(this).scrollable(),r=o.getRoot(),e=r.data("finder").call(null,b.navi),q=null,m=o.getNaviButtons();if(o){f=o}o.getNaviButtons=function(){return m.add(e)};function n(){if(!e.children().length||e.data("navi")==o){e.empty();e.data("navi",o);for(var g=0;g<o.getPageAmount();g++){e.append(c("<"+(b.naviItem||"a")+"/>"))}q=e.children().each(function(i){var h=c(this);h.click(function(j){o.setPage(i);return j.preventDefault()});if(b.indexed){h.text(i)}if(b.idPrefix){h.attr("id",b.idPrefix+i)
}})}else{q=b.naviItem?e.find(b.naviItem):e.children();q.each(function(i){var h=c(this);h.click(function(j){o.setPage(i);return j.preventDefault()})})}q.eq(0).addClass(b.activeClass)}o.onStart(function(h,i){var g=b.activeClass;q.removeClass(g).eq(o.getPageIndex()).addClass(g)});o.onReload(function(){n()});n();var p=q.filter("[href="+location.hash+"]");if(p.length){o.move(q.index(p))}});return b.api?f:this}})(jQuery);(function(e){e.fn.wheel=function(a){return this[a?"bind":"trigger"]("wheel",a)};e.event.special.wheel={setup:function(){e.event.add(this,g,h,{})
},teardown:function(){e.event.remove(this,g,h)}};var g=!e.browser.mozilla?"mousewheel":"DOMMouseScroll"+(e.browser.version<"1.9"?" mousemove":"");function h(a){switch(a.type){case"mousemove":return e.extend(a.data,{clientX:a.clientX,clientY:a.clientY,pageX:a.pageX,pageY:a.pageY});case"DOMMouseScroll":e.extend(a,a.data);a.delta=-a.detail/3;break;case"mousewheel":a.delta=a.wheelDelta/120;break}a.type="wheel";return e.event.handle.call(this,a,a.delta)}var f=e.tools.scrollable;f.plugins=f.plugins||{};f.plugins.mousewheel={version:"1.0.1",conf:{api:false,speed:50}};
e.fn.mousewheel=function(b){var a=e.extend({},f.plugins.mousewheel.conf),c;if(typeof b=="number"){b={speed:b}}b=e.extend(a,b);this.each(function(){var d=e(this).scrollable();if(d){c=d}d.getRoot().wheel(function(l,k){d.move(k<0?1:-1,b.speed||50);return false})});return b.api?c:this}})(jQuery);
