// Visual Menu Scroller Add-on Module (v.1.0)

// THIS FILE MAY NOT BE MODIFIED

// Copyright (C) 2007 VisualMenu.com. All rights reserved


function VMScroller(){var O="-disabled",U="-over",a="-up",n="-down",b="vm-scroll",R=b+a,S=R+O,C=b+n,K=C+O,k="px",i=0,c=10,X=20,A=500,E=50,l=window.VisualMenu,W=document,s="vmscr",I=arguments.callee;I.scrollDown=function(id){q=W.getElementById(id);q.btnUp.className=R;var z=Math.min(q.o-q.Z,X);q.N-=z;q.B+=z;q.Z+=z;q.style.top=q.N+k;j(q,q.B,q.Z);if(q.Z==q.o){q.btnDown.className=K;t(q);}else if(!q.Q)q.Q=setInterval('VMScroller.scrollDown("'+id+'")',q.Y);};I.scrollUp=function(id){q=W.getElementById(id);q.btnDown.className=C;var z=Math.min(q.B,X);q.N+=z;q.B-=z;q.Z-=z;q.style.top=q.N+k;j(q,q.B,q.Z);if(q.B==0){q.btnUp.className=S;t(q);}else if(!q.Q)q.Q=setInterval('VMScroller.scrollUp("'+id+'")',q.Y);};this.attachScroller=function(F,q,id){q.id=id?id:s+i++;F.appendChild(q.btnUp=V(S,q));F.appendChild(q.btnDown=V(C,q));};this.makeScrollable=function(fudgeOffsetTop,d,q,top,J,T){var btnUp=q.btnUp,btnDown=q.btnDown;q.fudgeOffsetTop=fudgeOffsetTop;if(l.IE<7)btnUp.style.padding=btnDown.style.padding=0;btnUp.style.width=btnDown.style.width=q.offsetWidth+k;if(!T)top+=c;btnUp.style.top=top-fudgeOffsetTop+k;v(btnDown,9);btnDown.style.top=J-btnDown.offsetHeight-c-fudgeOffsetTop-d+k;v(btnUp,9);btnUp.style.left=btnDown.style.left=q.style.left;btnUp.style.zIndex=btnDown.style.zIndex=parseInt(q.style.zIndex)+1;j(q,0,btnDown.offsetTop-btnUp.offsetTop);return btnUp.offsetHeight+top;};this.hide=function(q){if(q.btnUp.style.display=="block"){j(q,0,q.offsetHeight);q.G=0;q.btnUp.className=S;q.btnDown.className=C;v(q.btnUp);v(q.btnDown);}};function V(y,q){var g=W.createElement("div");g.q=q;g.style.position="absolute";g.className=y;v(g);function M(){return g.className.indexOf(O)==-1;}g.onmousedown=function(){if(M()){t(q);P(g,q,u());}};g.onmouseup=function(){if(M()){t(q);P(g,q,r());}};g.onmouseout=function(){if(M()){g.className=g.className.replace(U,"");t(q);}};g.onmouseover=function(){if(M()){g.className=g.className+U;P(g,q,r());}};return g;}function v(g,h){g.style.display=h?"block":"none";}function j(q,top,x){var left,p;if(l.KO){left=q.offsetWidth+k;p=0;}else left=p="auto";q.style.clip="rect("+top+"px,"+left+","+x+"px,"+p+")";}function P(g,q,H){if(!q.G){q.G=9;q.N=(q.btnDown.offsetHeight+q.btnUp.offsetHeight)-q.fudgeOffsetTop;q.o=q.offsetHeight+q.N-q.btnUp.offsetHeight+q.fudgeOffsetTop;q.B=q.offsetTop-q.N;q.Z=q.btnDown.offsetTop-q.btnUp.offsetHeight+q.fudgeOffsetTop;}q.Y=H;if(g==q.btnUp)I.scrollUp(q.id);else I.scrollDown(q.id);}function t(q){if(q.Q){clearInterval(q.Q);q.Q=0;}}function r(){return I.mouseOverDelay?I.mouseOverDelay:A;}function u(){return I.mouseDownDelay?I.mouseDownDelay:E;}}