/*!
 * jQuery Tools v1.2.5 - The missing UI library for the Web
 * 
 * scrollable/scrollable.js
 * scrollable/scrollable.autoscroll.js
 * scrollable/scrollable.navigator.js
 * tabs/tabs.js
 * tabs/tabs.slideshow.js
 * tooltip/tooltip.js
 * 
 * NO COPYRIGHTS OR LICENSES. DO WHAT YOU LIKE.
 * 
 * http://flowplayer.org/tools/
 * 
 */
(function(a){
    a.tools=a.tools||{
        version:"v1.2.5"
    },a.tools.scrollable={
        conf:{
            activeClass:"active",
            circular:!1,
            clonedClass:"cloned",
            disabledClass:"disabled",
            easing:"swing",
            initialIndex:0,
            item:null,
            items:".items",
            keyboard:!0,
            mousewheel:!1,
            next:".next",
            prev:".prev",
            speed:400,
            vertical:!1,
            touch:!0,
            wheelSpeed:0
        }
    };

function b(a,b){
    var c=parseInt(a.css(b),10);
    if(c)return c;
    var d=a[0].currentStyle;
    return d&&d.width&&parseInt(d.width,10)
    }
    function c(b,c){
    var d=a(c);
    return d.length<2?d:b.parent().find(c)
    }
    var d;
function e(b,e){
    var f=this,g=b.add(f),h=b.children(),i=0,j=e.vertical;
    d||(d=f),h.length>1&&(h=a(e.items,b)),a.extend(f,{
        getConf:function(){
            return e
            },
        getIndex:function(){
            return i
            },
        getSize:function(){
            return f.getItems().size()
            },
        getNaviButtons:function(){
            return m.add(n)
            },
        getRoot:function(){
            return b
            },
        getItemWrap:function(){
            return h
            },
        getItems:function(){
            return h.children(e.item).not("."+e.clonedClass)
            },
        move:function(a,b){
            return f.seekTo(i+a,b)
            },
        next:function(a){
            return f.move(1,a)
            },
        prev:function(a){
            return f.move(-1,a)
            },
        begin:function(a){
            return f.seekTo(0,a)
            },
        end:function(a){
            return f.seekTo(f.getSize()-1,a)
            },
        focus:function(){
            d=f;
            return f
            },
        addItem:function(b){
            b=a(b),e.circular?(h.children("."+e.clonedClass+":last").before(b),h.children("."+e.clonedClass+":first").replaceWith(b.clone().addClass(e.clonedClass))):h.append(b),g.trigger("onAddItem",[b]);
            return f
            },
        seekTo:function(b,c,k){
            b.jquery||(b*=1);
            if(e.circular&&b===0&&i==-1&&c!==0)return f;
            if(!e.circular&&b<0||b>f.getSize()||b<-1)return f;
            var l=b;
            b.jquery?b=f.getItems().index(b):l=f.getItems().eq(b);
            var m=a.Event("onBeforeSeek");
            if(!k){
                g.trigger(m,[b,c]);
                if(m.isDefaultPrevented()||!l.length)return f
                    }
                    var n=j?{
                top:-l.position().top
                }:{
                left:-l.position().left
                };

            i=b,d=f,c===undefined&&(c=e.speed),h.animate(n,c,e.easing,k||function(){
                g.trigger("onSeek",[b])
                });
            return f
            }
        }),a.each(["onBeforeSeek","onSeek","onAddItem"],function(b,c){
    a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){
        b&&a(f).bind(c,b);
        return f
        }
    });
if(e.circular){
    var k=f.getItems().slice(-1).clone().prependTo(h),l=f.getItems().eq(1).clone().appendTo(h);
    k.add(l).addClass(e.clonedClass),f.onBeforeSeek(function(a,b,c){
        if(!a.isDefaultPrevented()){
            if(b==-1){
                f.seekTo(k,c,function(){
                    f.end(0)
                    });
                return a.preventDefault()
                }
                b==f.getSize()&&f.seekTo(l,c,function(){
                f.begin(0)
                })
            }
        }),f.seekTo(0,0,function(){})
    }
    var m=c(b,e.prev).click(function(){
    f.prev()
    }),n=c(b,e.next).click(function(){
    f.next()
    });
!e.circular&&f.getSize()>1&&(f.onBeforeSeek(function(a,b){
    setTimeout(function(){
        a.isDefaultPrevented()||(m.toggleClass(e.disabledClass,b<=0),n.toggleClass(e.disabledClass,b>=f.getSize()-1))
        },1)
    }),e.initialIndex||m.addClass(e.disabledClass)),e.mousewheel&&a.fn.mousewheel&&b.mousewheel(function(a,b){
    if(e.mousewheel){
        f.move(b<0?1:-1,e.wheelSpeed||50);
        return!1
        }
    });
if(e.touch){
    var o={};

    h[0].ontouchstart=function(a){
        var b=a.touches[0];
        o.x=b.clientX,o.y=b.clientY
        },h[0].ontouchmove=function(a){
        if(a.touches.length==1&&!h.is(":animated")){
            var b=a.touches[0],c=o.x-b.clientX,d=o.y-b.clientY;
            f[j&&d>0||!j&&c>0?"next":"prev"](),a.preventDefault()
            }
        }
}
e.keyboard&&a(document).bind("keydown.scrollable",function(b){
    if(e.keyboard&&!b.altKey&&!b.ctrlKey&&!a(b.target).is(":input")){
        if(e.keyboard!="static"&&d!=f)return;
        var c=b.keyCode;
        if(j&&(c==38||c==40)){
            f.move(c==38?-1:1);
            return b.preventDefault()
            }
            if(!j&&(c==37||c==39)){
            f.move(c==37?-1:1);
            return b.preventDefault()
            }
        }
}),e.initialIndex&&f.seekTo(e.initialIndex,0,function(){})
}
a.fn.scrollable=function(b){
    var c=this.data("scrollable");
    if(c)return c;
    b=a.extend({},a.tools.scrollable.conf,b),this.each(function(){
        c=new e(a(this),b),a(this).data("scrollable",c)
        });
    return b.api?c:this
    }
})(jQuery);
(function(a){
    var b=a.tools.scrollable;
    b.autoscroll={
        conf:{
            autoplay:!0,
            interval:3e3,
            autopause:!0
            }
        },a.fn.autoscroll=function(c){
    typeof c=="number"&&(c={
        interval:c
    });
    var d=a.extend({},b.autoscroll.conf,c),e;
    this.each(function(){
        var b=a(this).data("scrollable");
        b&&(e=b);
        var c,f=!0;
        b.play=function(){
            c||(f=!1,c=setInterval(function(){
                b.next()
                },d.interval))
            },b.pause=function(){
            c=clearInterval(c)
            },b.stop=function(){
            b.pause(),f=!0
            },d.autopause&&b.getRoot().add(b.getNaviButtons()).hover(b.pause,b.play),d.autoplay&&b.play()
        });
    return d.api?e:this
    }
})(jQuery);
(function(a){
    var b=a.tools.scrollable;
    b.navigator={
        conf:{
            navi:".navi",
            naviItem:null,
            activeClass:"active",
            indexed:!1,
            idPrefix:null,
            history:!1
            }
        };

function c(b,c){
    var d=a(c);
    return d.length<2?d:b.parent().find(c)
    }
    a.fn.navigator=function(d){
    typeof d=="string"&&(d={
        navi:d
    }),d=a.extend({},b.navigator.conf,d);
    var e;
    this.each(function(){
        var b=a(this).data("scrollable"),f=d.navi.jquery?d.navi:c(b.getRoot(),d.navi),g=b.getNaviButtons(),h=d.activeClass,i=d.history&&a.fn.history;
        b&&(e=b),b.getNaviButtons=function(){
            return g.add(f)
            };

        function j(a,c,d){
            b.seekTo(c);
            if(i)location.hash&&(location.hash=a.attr("href").replace("#",""));else return d.preventDefault()
                }
                function k(){
            return f.find(d.naviItem||"> *")
            }
            function l(b){
            var c=a("<"+(d.naviItem||"a")+"/>").click(function(c){
                j(a(this),b,c)
                }).attr("href","#"+b);
            b===0&&c.addClass(h),d.indexed&&c.text(b+1),d.idPrefix&&c.attr("id",d.idPrefix+b);
            return c.appendTo(f)
            }
            k().length?k().each(function(b){
            a(this).click(function(c){
                j(a(this),b,c)
                })
            }):a.each(b.getItems(),function(a){
            l(a)
            }),b.onBeforeSeek(function(a,b){
            setTimeout(function(){
                if(!a.isDefaultPrevented()){
                    var c=k().eq(b);
                    !a.isDefaultPrevented()&&c.length&&k().removeClass(h).eq(b).addClass(h)
                    }
                },1)
        });
    function m(a,b){
        var c=k().eq(b.replace("#",""));
        c.length||(c=k().filter("[href="+b+"]")),c.click()
        }
        b.onAddItem(function(a,c){
        c=l(b.getItems().index(c)),i&&c.history(m)
        }),i&&k().history(m)
        });
return d.api?e:this
}
})(jQuery);
(function(a){
    a.tools=a.tools||{
        version:"v1.2.5"
    },a.tools.tabs={
        conf:{
            tabs:"a",
            current:"current",
            onBeforeClick:null,
            onClick:null,
            effect:"default",
            initialIndex:0,
            event:"click",
            rotate:!1,
            history:!1
            },
        addEffect:function(a,c){
            b[a]=c
            }
        };

var b={
    "default":function(a,b){
        this.getPanes().hide().eq(a).show(),b.call()
        },
    fade:function(a,b){
        var c=this.getConf(),d=c.fadeOutSpeed,e=this.getPanes();
        d?e.fadeOut(d):e.hide(),e.eq(a).fadeIn(c.fadeInSpeed,b)
        },
    slide:function(a,b){
        this.getPanes().slideUp(200),this.getPanes().eq(a).slideDown(400,b)
        },
    ajax:function(a,b){
        this.getPanes().eq(0).load(this.getTabs().eq(a).attr("href"),b)
        }
    },c;
a.tools.tabs.addEffect("horizontal",function(b,d){
    c||(c=this.getPanes().eq(0).width()),this.getCurrentPane().animate({
        width:0
    },function(){
        a(this).hide()
        }),this.getPanes().eq(b).animate({
        width:c
    },function(){
        a(this).show(),d.call()
        })
    });
function d(c,d,e){
    var f=this,g=c.add(this),h=c.find(e.tabs),i=d.jquery?d:c.children(d),j;
    h.length||(h=c.children()),i.length||(i=c.parent().find(d)),i.length||(i=a(d)),a.extend(this,{
        click:function(c,d){
            var i=h.eq(c);
            typeof c=="string"&&c.replace("#","")&&(i=h.filter("[href*="+c.replace("#","")+"]"),c=Math.max(h.index(i),0));
            if(e.rotate){
                var k=h.length-1;
                if(c<0)return f.click(k,d);
                if(c>k)return f.click(0,d)
                    }
                    if(!i.length){
                if(j>=0)return f;
                c=e.initialIndex,i=h.eq(c)
                }
                if(c===j)return f;
            d=d||a.Event(),d.type="onBeforeClick",g.trigger(d,[c]);
            if(!d.isDefaultPrevented()){
                b[e.effect].call(f,c,function(){
                    d.type="onClick",g.trigger(d,[c])
                    }),j=c,h.removeClass(e.current),i.addClass(e.current);
                return f
                }
            },
    getConf:function(){
        return e
        },
    getTabs:function(){
        return h
        },
    getPanes:function(){
        return i
        },
    getCurrentPane:function(){
        return i.eq(j)
        },
    getCurrentTab:function(){
        return h.eq(j)
        },
    getIndex:function(){
        return j
        },
    next:function(){
        return f.click(j+1)
        },
    prev:function(){
        return f.click(j-1)
        },
    destroy:function(){
        h.unbind(e.event).removeClass(e.current),i.find("a[href^=#]").unbind("click.T");
        return f
        }
    }),a.each("onBeforeClick,onClick".split(","),function(b,c){
    a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){
        b&&a(f).bind(c,b);
        return f
        }
    }),e.history&&a.fn.history&&(a.tools.history.init(h),e.event="history"),h.each(function(b){
    a(this).bind(e.event,function(a){
        f.click(b,a);
        return a.preventDefault()
        })
    }),i.find("a[href^=#]").bind("click.T",function(b){
    f.click(a(this).attr("href"),b)
    }),false&&e.tabs=="a"&&c.find("[href="+location.hash+"]").length?f.click(location.hash):(e.initialIndex===0||e.initialIndex>0)&&f.click(e.initialIndex)
}
a.fn.tabs=function(b,c){
    var e=this.data("tabs");
    e&&(e.destroy(),this.removeData("tabs")),a.isFunction(c)&&(c={
        onBeforeClick:c
    }),c=a.extend({},a.tools.tabs.conf,c),this.each(function(){
        e=new d(a(this),b,c),a(this).data("tabs",e)
        });
    return c.api?e:this
    }
})(jQuery);
(function(a){
    var b;
    b=a.tools.tabs.slideshow={
        conf:{
            next:".forward",
            prev:".backward",
            disabledClass:"disabled",
            autoplay:!1,
            autopause:!0,
            interval:3e3,
            clickable:!0,
            api:!1
            }
        };

function c(b,c){
    var d=this,e=b.add(this),f=b.data("tabs"),g,h=!0;
    function i(c){
        var d=a(c);
        return d.length<2?d:b.parent().find(c)
        }
        var j=i(c.next).click(function(){
        f.next()
        }),k=i(c.prev).click(function(){
        f.prev()
        });
    a.extend(d,{
        getTabs:function(){
            return f
            },
        getConf:function(){
            return c
            },
        play:function(){
            if(g)return d;
            var b=a.Event("onBeforePlay");
            e.trigger(b);
            if(b.isDefaultPrevented())return d;
            g=setInterval(f.next,c.interval),h=!1,e.trigger("onPlay");
            return d
            },
        pause:function(){
            if(!g)return d;
            var b=a.Event("onBeforePause");
            e.trigger(b);
            if(b.isDefaultPrevented())return d;
            g=clearInterval(g),e.trigger("onPause");
            return d
            },
        stop:function(){
            d.pause(),h=!0
            }
        }),a.each("onBeforePlay,onPlay,onBeforePause,onPause".split(","),function(b,e){
    a.isFunction(c[e])&&a(d).bind(e,c[e]),d[e]=function(b){
        return a(d).bind(e,b)
        }
    }),c.autopause&&f.getTabs().add(j).add(k).add(f.getPanes()).hover(d.pause,function(){
    h||d.play()
    }),c.autoplay&&d.play(),c.clickable&&f.getPanes().click(function(){
    f.next()
    });
if(!f.getConf().rotate){
    var l=c.disabledClass;
    f.getIndex()||k.addClass(l),f.onBeforeClick(function(a,b){
        k.toggleClass(l,!b),j.toggleClass(l,b==f.getTabs().length-1)
        })
    }
}
a.fn.slideshow=function(d){
    var e=this.data("slideshow");
    if(e)return e;
    d=a.extend({},b.conf,d),this.each(function(){
        e=new c(a(this),d),a(this).data("slideshow",e)
        });
    return d.api?e:this
    }
})(jQuery);
(function(a){
    a.tools=a.tools||{
        version:"v1.2.5"
    },a.tools.tooltip={
        conf:{
            effect:"toggle",
            fadeOutSpeed:"fast",
            predelay:0,
            delay:30,
            opacity:1,
            tip:0,
            position:["top","center"],
            offset:[0,0],
            relative:!1,
            cancelDefault:!0,
            events:{
                def:"mouseenter,mouseleave",
                input:"focus,blur",
                widget:"focus mouseenter,blur mouseleave",
                tooltip:"mouseenter,mouseleave"
            },
            layout:"<div/>",
            tipClass:"tooltip"
        },
        addEffect:function(a,c,d){
            b[a]=[c,d]
            }
        };

var b={
    toggle:[function(a){
        var b=this.getConf(),c=this.getTip(),d=b.opacity;
        d<1&&c.css({
            opacity:d
        }),c.show(),a.call()
        },function(a){
        this.getTip().hide(),a.call()
        }],
    fade:[function(a){
        var b=this.getConf();
        this.getTip().fadeTo(b.fadeInSpeed,b.opacity,a)
        },function(a){
        this.getTip().fadeOut(this.getConf().fadeOutSpeed,a)
        }]
    };

function c(b,c,d){
    var e=d.relative?b.position().top:b.offset().top,f=d.relative?b.position().left:b.offset().left,g=d.position[0];
    e-=c.outerHeight()-d.offset[0],f+=b.outerWidth()+d.offset[1],/iPad/i.test(navigator.userAgent)&&(e-=a(window).scrollTop());
    var h=c.outerHeight()+b.outerHeight();
    g=="center"&&(e+=h/2),g=="bottom"&&(e+=h),g=d.position[1];
    var i=c.outerWidth()+b.outerWidth();
    g=="center"&&(f-=i/2),g=="left"&&(f-=i);
    return{
        top:e,
        left:f
    }
}
function d(d,e){
    var f=this,g=d.add(f),h,i=0,j=0,k=d.attr("title"),l=d.attr("data-tooltip"),m=b[e.effect],n,o=d.is(":input"),p=o&&d.is(":checkbox, :radio, select, :button, :submit"),q=d.attr("type"),r=e.events[q]||e.events[o?p?"widget":"input":"def"];
    if(!m)throw"Nonexistent effect \""+e.effect+"\"";
    r=r.split(/,\s*/);
    if(r.length!=2)throw"Tooltip: bad events configuration for "+q;
    d.bind(r[0],function(a){
        clearTimeout(i),e.predelay?j=setTimeout(function(){
            f.show(a)
            },e.predelay):f.show(a)
        }).bind(r[1],function(a){
        clearTimeout(j),e.delay?i=setTimeout(function(){
            f.hide(a)
            },e.delay):f.hide(a)
        }),k&&e.cancelDefault&&(d.removeAttr("title"),d.data("title",k)),a.extend(f,{
        show:function(b){
            if(!h){
                l?h=a(l):e.tip?h=a(e.tip).eq(0):k?h=a(e.layout).addClass(e.tipClass).appendTo(document.body).hide().append(k):(h=d.next(),h.length||(h=d.parent().next()));
                if(!h.length)throw"Cannot find tooltip for "+d
                    }
                    if(f.isShown())return f;
            h.stop(!0,!0);
            var o=c(d,h,e);
            e.tip&&h.html(d.data("title")),b=b||a.Event(),b.type="onBeforeShow",g.trigger(b,[o]);
            if(b.isDefaultPrevented())return f;
            o=c(d,h,e),h.css({
                position:"absolute",
                top:o.top,
                left:o.left
                }),n=!0,m[0].call(f,function(){
                b.type="onShow",n="full",g.trigger(b)
                });
            var p=e.events.tooltip.split(/,\s*/);
            h.data("__set")||(h.bind(p[0],function(){
                clearTimeout(i),clearTimeout(j)
                }),p[1]&&!d.is("input:not(:checkbox, :radio), textarea")&&h.bind(p[1],function(a){
                a.relatedTarget!=d[0]&&d.trigger(r[1].split(" ")[0])
                }),h.data("__set",!0));
            return f
            },
        hide:function(c){
            if(!h||!f.isShown())return f;
            c=c||a.Event(),c.type="onBeforeHide",g.trigger(c);
            if(!c.isDefaultPrevented()){
                n=!1,b[e.effect][1].call(f,function(){
                    c.type="onHide",g.trigger(c)
                    });
                return f
                }
            },
    isShown:function(a){
        return a?n=="full":n
        },
    getConf:function(){
        return e
        },
    getTip:function(){
        return h
        },
    getTrigger:function(){
        return d
        }
    }),a.each("onHide,onBeforeShow,onShow,onBeforeHide".split(","),function(b,c){
    a.isFunction(e[c])&&a(f).bind(c,e[c]),f[c]=function(b){
        b&&a(f).bind(c,b);
        return f
        }
    })
}
a.fn.tooltip=function(b){
    var c=this.data("tooltip");
    if(c)return c;
    b=a.extend(!0,{},a.tools.tooltip.conf,b),typeof b.position=="string"&&(b.position=b.position.split(/,?\s/)),this.each(function(){
        c=new d(a(this),b),a(this).data("tooltip",c)
        });
    return b.api?c:this
    }
})(jQuery);

