(function(a){a.jScrollPane={active:[]};a.fn.jScrollPane=function(c){c=a.extend({},a.fn.jScrollPane.defaults,c);var b=function(){return false};return this.each(function(){var v=a(this);var G=this;var at=0;var N;var au;var Z;var U;var Y;var t;var ap;var ai=c.topCapHeight;var j;var ao=255;if(a(this).parent().is(".jScrollPaneContainer")){j=a(this).parent();at=c.maintainPosition?v.position().top:0;var s=a(this).parent();N=255;au=s.outerHeight();a(">.jScrollPaneTrack, >.jScrollArrowUp, >.jScrollArrowDown, >.jScrollCap",s).remove();v.css({top:0});this.originalSidePaddingTotal=0}else{v.data("originalStyleTag",v.attr("style"));v.css("overflow","hidden");this.originalPadding=v.css("paddingTop")+" "+v.css("paddingRight")+" "+v.css("paddingBottom")+" "+v.css("paddingLeft");var ae=v.css("paddingLeft").replace("px","");var aa=v.css("paddingRight").replace("px","");this.originalSidePaddingTotal=(parseInt(ae)||0)+(parseInt(aa)||0);if(a(this).parent().is(".container_live")){N=945;ao=925}else{N=255;ao=255}au=v.innerHeight();j=a("<div></div>").attr({className:"jScrollPaneContainerComments",id:"sp_comments"}).css({height:au+"px",width:N+"px"});if(c.enableKeyboardNavigation){j.attr("tabindex",c.tabIndex)}v.wrap(j);j=v.parent();j.bind("updateScrollPane",function(p,l){S(l)});a(document).bind("emchange",function(p,r,l){v.jScrollPane(c)})}t=au;if(c.reinitialiseOnImageLoad){var u=a.data(G,"jScrollPaneImagesToLoad")||a("img",v);var i=[];if(u.length){u.each(function(l,p){a(this).bind("load readystatechange",function(){if(a.inArray(l,i)==-1){i.push(p);u=a.grep(u,function(aw,av){return aw!=p});a.data(G,"jScrollPaneImagesToLoad",u);var r=a.extend(c,{reinitialiseOnImageLoad:false});v.jScrollPane(r)}}).each(function(r,av){if(this.complete||this.complete===undefined){this.src=this.src}})})}}var ac=this.originalSidePaddingTotal;var X={height:"auto",width:ao+"px"};if(c.scrollbarOnLeft){X.paddingLeft=c.scrollbarMargin+c.scrollbarWidth+"px"}else{X.paddingRight=c.scrollbarMargin+"px"}v.css(X);Z=v.outerHeight();U=au/Z;Y=U<0.99;j[Y?"addClass":"removeClass"]("jScrollPaneScrollable");if(Y){j.append(a("<div></div>").attr({className:"jScrollPaneTrack"}).css({width:c.scrollbarWidth+"px"}).append(a("<div></div>").attr({className:"jScrollPaneDrag"}).css({width:c.scrollbarWidth+"px"}).append(a("<div></div>").attr({className:"jScrollPaneDragTop"}).css({width:c.scrollbarWidth+"px"}),a("<div></div>").attr({className:"jScrollPaneDragBottom"}).css({width:c.scrollbarWidth+"px"}))));ap=a(">.jScrollPaneTrack",j);var w=a(">.jScrollPaneTrack .jScrollPaneDrag",j);var ar;var g=[];var af;var V=function(){if(af>4||af%4==0){an(ak+ar*K)}af++};if(c.enableKeyboardNavigation){j.bind("keydown.jscrollpane",function(l){switch(l.keyCode){case 38:ar=-1;af=0;V();g[g.length]=setInterval(V,100);return false;case 40:ar=1;af=0;V();g[g.length]=setInterval(V,100);return false;case 33:case 34:return false;default:}}).bind("keyup.jscrollpane",function(p){if(p.keyCode==38||p.keyCode==40){for(var l=0;l<g.length;l++){clearInterval(g[l])}return false}})}if(c.showArrows){var R;var A;var q=function(l){a("html").unbind("mouseup",q);R.removeClass("jScrollActiveArrowButton");clearInterval(A)};var J=function(){a("html").bind("mouseup",q);R.addClass("jScrollActiveArrowButton");af=0;V();A=setInterval(V,100)};j.append(a("<a></a>").attr({href:"javascript:;",className:"jScrollArrowUp",tabindex:-1}).css({width:c.scrollbarWidth+"px",top:c.topCapHeight+"px"}).html("Scroll up").bind("mousedown",function(){R=a(this);ar=-1;J();this.blur();return false}).bind("click",b),a("<a></a>").attr({href:"javascript:;",className:"jScrollArrowDown",tabindex:-1}).css({width:c.scrollbarWidth+"px",bottom:c.bottomCapHeight+"px"}).html("Scroll down").bind("mousedown",function(){R=a(this);ar=1;J();this.blur();return false}).bind("click",b));var x=a(">.jScrollArrowUp",j);var n=a(">.jScrollArrowDown",j)}if(c.arrowSize){t=au-c.arrowSize-c.arrowSize;ai+=c.arrowSize}else{if(x){var ag=x.height();c.arrowSize=ag;t=au-ag-n.height();ai+=ag}}t-=c.topCapHeight+c.bottomCapHeight;ap.css({height:t+"px",top:ai+"px"});var al=a(this).css({position:"relative",overflow:"visible"});var d;var H;var K;var ak=0;var E=U*au/2;var I=function(l,av){var r=av=="X"?"Left":"Top";return l["page"+av]||(l["client"+av]+(document.documentElement["scroll"+r]||document.body["scroll"+r]))||0};var Q=function(){return false};var aj=function(){ab();d=w.offset(false);d.top-=ak;H=t-w[0].offsetHeight;K=2*c.wheelSpeed*H/Z};var e=function(l){aj();E=I(l,"Y")-ak-d.top;a("html").bind("mouseup",B).bind("mousemove",T).bind("mouseleave",B);if(a.browser.msie){a("html").bind("dragstart",Q).bind("selectstart",Q)}return false};var B=function(){a("html").unbind("mouseup",B).unbind("mousemove",T);E=U*au/2;if(a.browser.msie){a("html").unbind("dragstart",Q).unbind("selectstart",Q)}};var an=function(l){j.scrollTop(0);l=l<0?0:(l>H?H:l);ak=l;w.css({top:l+"px"});var r=l/H;v.data("jScrollPanePosition",(au-Z)*-r);al.css({top:((au-Z)*r)+"px"});v.trigger("scroll");if(c.showArrows){x[l==0?"addClass":"removeClass"]("disabled");n[l==H?"addClass":"removeClass"]("disabled")}};var T=function(l){an(I(l,"Y")-d.top-E)};var ad=Math.max(Math.min(U*(au-c.arrowSize*2),c.dragMaxHeight),c.dragMinHeight);w.css({height:ad+"px"}).bind("mousedown",e);var W;var y;var m;var ah=function(){if(y>8||y%4==0){an((ak-((ak-m)/2)))}y++};var aq=function(){clearInterval(W);a("html").unbind("mouseup",aq).unbind("mousemove",P)};var P=function(l){m=I(l,"Y")-d.top-E};var C=function(l){aj();P(l);y=0;a("html").bind("mouseup",aq).bind("mousemove",P);W=setInterval(ah,100);ah();return false};ap.bind("mousedown",C);j.bind("mousewheel",function(p,av){av=av||(p.wheelDelta?p.wheelDelta/120:(p.detail)?-p.detail/3:0);aj();ab();var r=ak;an(ak-av*K);var l=r!=ak;return !l});var f;var F;function L(){var l=(f-ak)/c.animateStep;if(l>1||l<-1){an(ak+l)}else{an(f);ab()}}var ab=function(){if(F){clearInterval(F);delete f}};var am=function(aw,l){if(typeof aw=="string"){try{$e=a(aw,v)}catch(av){return}if(!$e.length){return}aw=$e.offset().top-v.offset().top}ab();var r=Z-au;aw=aw>r?r:aw;v.data("jScrollPaneMaxScroll",r);var p=aw/r*H;if(l||!c.animateTo){an(p)}else{j.scrollTop(0);f=p;F=setInterval(L,c.animateInterval)}};v[0].scrollTo=am;v[0].scrollBy=function(p){var l=-parseInt(al.css("top"))||0;am(l+p)};aj();am(-at,true);a("*",this).bind("focus",function(ax){var aw=a(this);var az=0;var p=100;while(aw[0]!=v[0]){az+=aw.position().top;aw=aw.offsetParent();if(!p--){return}}var l=-parseInt(al.css("top"))||0;var ay=l+au;var av=az>l&&az<ay;if(!av){var r=az-c.scrollbarMargin;if(az>l){r+=a(this).height()+15+c.scrollbarMargin-au}am(r)}});if(c.observeHash){if(location.hash&&location.hash.length>1){setTimeout(function(){am(location.hash)},a.browser.safari?100:0)}a(document).bind("click",function(p){$target=a(p.target);if($target.is("a")){var l=$target.attr("href");if(l&&l.substr(0,1)=="#"&&l.length>1){setTimeout(function(){am(l,!c.animateToInternalLinks)},a.browser.safari?100:0)}}})}function D(l){a(document).bind("mousemove.jScrollPaneDragging",z);a(document).bind("mouseup.jScrollPaneDragging",o)}var O;var h;function M(){direction=O<0?-1:1;v[0].scrollBy(O/2)}function k(){if(h){clearInterval(h);h=undefined}}function z(r){var av=v.parent().offset().top;var l=av+au;var p=I(r,"Y");O=p<av?p-av:(p>l?p-l:0);if(O==0){k()}else{if(!h){h=setInterval(M,100)}}}function o(l){a(document).unbind("mousemove.jScrollPaneDragging").unbind("mouseup.jScrollPaneDragging");k()}j.bind("mousedown.jScrollPane",D);a.jScrollPane.active.push(v[0])}else{v.css({height:au+"px",width:N-this.originalSidePaddingTotal+"px",padding:this.originalPadding});v[0].scrollTo=v[0].scrollBy=function(){};v.parent().unbind("mousewheel").unbind("mousedown.jScrollPane").unbind("keydown.jscrollpane").unbind("keyup.jscrollpane")}function S(p){au=200;a("#sp_comments").css({height:au+"px",width:N+"px"});t=au;Z=a(p).outerHeight();U=au/Z;Y=U<0.99;if(Y){if(a("#sp_comments .jScrollPaneTrack").length==0){a("#sp_comments").append(a("<div></div>").attr({className:"jScrollPaneTrack"}).css({width:c.scrollbarWidth+"px"}).append(a("<div></div>").attr({className:"jScrollPaneDrag"}).css({width:c.scrollbarWidth+"px"}).append(a("<div></div>").attr({className:"jScrollPaneDragTop"}).css({width:c.scrollbarWidth+"px"}),a("<div></div>").attr({className:"jScrollPaneDragBottom"}).css({width:c.scrollbarWidth+"px"}))))}}else{a("#sp_comments .jScrollPaneTrack").remove()}if(c.arrowSize){t=au-c.arrowSize-c.arrowSize;ai+=c.arrowSize}else{if(x){var l=x.height();c.arrowSize=l;t=au-l-n.height();ai+=l}}t-=c.topCapHeight+c.bottomCapHeight;ap=a(">.jScrollPaneTrack");ap.css({height:t+"px",top:ai+"px"})}})};a.fn.jScrollPaneRemove=function(){a(this).each(function(){$this=a(this);var b=$this.parent();if(b.is(".jScrollPaneContainer")||b.is(".container_live")){$this.css({top:"",height:"",width:"",padding:"",overflow:"",position:""});$this.attr("style",$this.data("originalStyleTag"));b.after($this).remove()}})};a.fn.jScrollPane.defaults={scrollbarWidth:10,scrollbarMargin:0,wheelSpeed:18,showArrows:false,arrowSize:0,animateTo:true,dragMinHeight:1,dragMaxHeight:99999,animateInterval:100,animateStep:3,maintainPosition:true,scrollbarOnLeft:false,reinitialiseOnImageLoad:false,tabIndex:0,enableKeyboardNavigation:true,animateToInternalLinks:false,topCapHeight:20,bottomCapHeight:20,observeHash:true};a(window).bind("unload",function(){var c=a.jScrollPane.active;for(var b=0;b<c.length;b++){c[b].scrollTo=c[b].scrollBy=null}})})(jQuery);
