/**
 * horizon.slim.0.2.js
 * Javascript Class - where the magic happens ;)
 *
 * @package      "Horizon Slim"
 * @version      0.2.6_RC3
 *
 * @description  A horizontal Accordion Slider for various purposes
 *
 * @author       Jan Jost <support@negetics.de>
 * @link         http://www.negetics.de
 * @linkProject  http://extensions.negetics.de
 * @copyright    Copyright (C) 2010 Jan Jost! All Rights Reserved
 * @license      GNU/GPLv3 see GPL.txt
 */
var descFader=new Array();function horizon(){var x,v,r,C,E,D,k,u,c,f,F,b,y,q,j,h,B,s,i,e,d,o,a,A,z,n,g,p;this.build=function(R,L,U,K,W,G,X,M,ac,ab,ae,H,S,ad,I,t,w,N,l,P,T){x=document.getElementById(R);v=L;r=U;C=K;W=W;E=G;x.clickEffect=X;x.even=M;u=ac;f=ab;F=ae;x.fC=H;b=x.getElementsByTagName("li");y=b.length;q=x.offsetWidth;j=Math.floor((q-v)/(y-1));z=(q-(j*(y-1))-v);n=Math.floor(q/y);g=q-(Math.floor(q/y)*y);x.aSD=P;x.dDFO=T;l=l;x.dS=w;x.o=false;x.active=false;x.list_width=q/y;x.dD=S;x.dDH=ad;x.lastOver=false;x.lastOut=false;x.firstActive=x.active;x.aPOn=I;x.aPPause=false;x.clickStopsaP=t;x.aPSpeed=N;if(W!=null){x.a=b[W-1]}if(navigator.appName.indexOf("Microsoft")!=-1){x.ie=true}else{x.ie=false}if(navigator.userAgent.indexOf("Mozilla")!=-1){x.mozilla=true}else{x.mozilla=false}if(navigator.userAgent.indexOf("Firefox")==-1){r=parseInt(U*2);C=parseInt(K/2)}x.h=this;for(var V=0;V<y;V++){var Q=b[V];Q.style.width=x.list_width+"px";var af=Q.getElementsByTagName("div");var aa=af[0].getElementsByTagName("div");if(x.slideMin){af[0].style.width=x.slideO+"px"}var Y;Q.desc=false;for(var J=0;J<aa.length;J++){if(aa[J].className=="neHSf"){Y=aa[J];Q.fader=aa[J]}if(aa[J].className=="neHSb"){Q.desc=aa[J];Q.desc.m=x;if(!x.aSD){if(x.dD==0){Q.desc.style.top=(Q.desc.parentNode.offsetHeight)+"px"}if(x.dD==1){Q.desc.style.top=(0-Q.desc.offsetHeight)+"px"}if(x.dDH==0){Q.desc.style.left=(Q.desc.parentNode.offsetWidth)+"px"}if(x.dDH==1){Q.desc.style.left="-"+(Q.desc.offsetWidth)+"px"}}else{if(x.dD==0){Q.desc.style.top=(Q.desc.parentNode.offsetHeight-Q.desc.offsetHeight)+"px"}if(x.dD==1){Q.desc.style.top=(0)+"px"}if(x.dDH==0){Q.desc.style.left=(Q.desc.parentNode.offsetWidth-Q.desc.offsetWidth)+"px"}if(x.dDH==1){Q.desc.style.left="-"+(0)+"px"}}var O=Q.desc.getElementsByTagName("div");Q.desc.beBa=O[0];Q.desc.beTe=O[1];x.h.sO(Q.desc.beBa,l);Q.desc.beBa.style.width=Q.desc.offsetWidth+"px";Q.desc.beBa.style.height=Q.desc.offsetHeight+"px";Q.desc.s=Q;Q.desc.beBa.s=Q;this.setClick(Q.desc.beBa)}if(aa[J].className=="neHSiO"){Q.fadeInImg=aa[J];x.h.sO(Q.fadeInImg,0);Q.fadeInImg.s=Q;this.setClick(Q.fadeInImg)}if(aa[J].className=="neHSi"){Q.img=aa[J];Q.img.s=Q;this.setClick(Q.img)}var m=aa[J].parentNode.getElementsByTagName("img");if(m.length>0){var Z=m[0];Q.handle=Z;Q.handle.s=Q;this.setClick(Q.handle)}}Q.num=V;this.sO(Y,0);if(V==W-1){x.a=Q}this.timerFade(Q)}if(W!=null){x.o=b[W-1];x.a=b[W-1]}x.timerFade=setInterval(function(){x.h.fade(false)},r);x.onmouseout=function(){if(x.fC){x.a=false}x.lastOver=x.o;x.o=false;x.aPPause=false};if(x.aPOn){x.h.startaP()}return(this)};this.setClick=function(l){if(x.clickEffect||(l.s.handle&&l.s.handle==l)){l.onclick=function(){x.slideEnded=false;l=this.s;if(x.clickStopsaP){x.h.stopaP()}if(l==x.a&&!E){var m=-1;for(var t=0;t<y;t++){var w=b[t];if(w==x.a&&m==-1){m=parseInt(t)}}if(u==0){if(m<y-1&&m!=-1){x.a=b[m+1];l=b[m+1]}else{x.a=b[0];l=b[0]}}else{if(m>0&&m!=-1){x.a=b[m-1];l=b[m-1]}else{x.a=b[y-1];l=b[y-1]}}}else{x.a=l}clearInterval(x.timerFade);x.timerFade=setInterval(function(){x.h.fade(l)},r)}}};this.fadeDesc=function(m){if(x.o){m=x.o.desc}else{if(x.a){m=x.a.desc}}var l=false;if(x.aSD==false&&(m&&(m.s==x.o||m.s==x.a)&&m.parentNode.style.width==m.parentNode.parentNode.style.width)){l=x.h.moveIt(m,x.dD,true)}if(x.aSD==false&&(x.a&&x.a.desc&&x.a.desc.parentNode.style.width==x.a.desc.parentNode.parentNode.style.width)&&(!x.dDFO||x.o==x.a)){l=x.h.moveIt(x.a.desc,x.dD,true)}x.h.clearDesc(m.s);x.re=l;return(l)};this.clearDesc=function(w){if(x.o){w=x.o}else{if(x.a){w=x.a}}var m=true;for(var l=0;l<b.length;l++){var t=b[l].desc;if(x.aSD==false&&((t&&w!=t.s&&(!x.a||t.s!=x.a))||(x.dDFO&&x.o&&x.o!=t.s)||(t.parentNode.style.width!=t.parentNode.parentNode.style.width&&(x.dDFO||(x.a&&x.a!=t.s))))){m=x.h.moveIt(t,x.dD,false)}}return(m)};this.moveIt=function(M,w,G){var K=x.dD;var L=true;var H;var t;if(G){t=2}else{t=1}if(M.style){if(x.dD==0){if(G){H=M.offsetHeight}else{H=0}var m=(M.parentNode.offsetHeight-H);var J=parseInt(M.style.top);if(J>m||(!G&&J<m)){var l;if(G){l=parseInt((J-m)/x.dS)}else{l=parseInt((m-J)/x.dS)}l=(l>0)?l:t;if(!G){l=l*-1}var I=J-l;if(I>m||(!G&&J<m)){M.style.top=I+"px"}else{M.style.top=m+"px";L=true}}}if(x.dD==1){if(!G){H=M.offsetHeight}else{H=0}var m=0-H;var J=parseInt(M.style.top);if(J<m||(!G&&J>m)){var l;if(G){l=parseInt((m-J)/x.dS)}else{l=parseInt((J-m)/x.dS)}l=(l>0)?l:t;if(!G){l=l*-1}var I=J+l;if(I<m||(!G&&J>m)){M.style.top=I+"px"}else{M.style.top=m+"px";L=true}}}if(x.dDH==0){if(G){H=M.offsetWidth}else{H=0}var m=(M.parentNode.offsetWidth-H);var J=parseInt(M.style.left);if(J>m||(!G&&J<m)){var l;if(G){l=parseInt((J-m)/x.dS)}else{l=parseInt((m-J)/x.dS)}l=(l>0)?l:t;if(!G){l=l*-1}var I=J-l;if(I>m||(!G&&J<m)){M.style.left=I+"px"}else{M.style.left=m+"px";L=true}}}if(x.dDH==1){if(!G){H=M.offsetWidth}else{H=0}var m=0-H;var J=parseInt(M.style.left);if(J<m||(!G&&J>m)){var l;if(G){l=parseInt((m+-J)/x.dS)}else{l=parseInt((J-m)/x.dS)}l=(l>0)?l:t;if(!G){l=l*-1}var I=J+l;if(I<m||(!G&&J>m)){M.style.left=I+"px"}else{M.style.left=m+"px";L=true}}}}return(L)};this.timerFade=function(l){l.onmouseover=function(){x.o=l;x.aPPause=true;if((!x.lastOver&&!x.o)||(x.lastOver.num&&x.lastOver.num!=x.o.num)||(x.fC&&!E)){clearInterval(x.timerFade);x.timerFade=setInterval(function(){x.h.fade(l)},r)}x.lastOver=l}};this.startaP=function(){if(x.aP){clearInterval(x.aP)}x.o=false;x.aP=setInterval(function(){x.h.aP()},x.aPSpeed)};this.stopaP=function(){if(x.aP){clearInterval(x.aP)}};this.aP=function(){if(!x.aPPause){if(!x.a){x.a=b[b.length-1]}var l=x.a.num;var m=false;if(u==0){if(l<y-1&&l!=-1){x.a=b[l+1];m=b[l+1]}else{x.a=b[0];m=b[0]}}else{if(l>0&&l!=-1){x.a=b[l-1];m=b[l-1]}else{x.a=b[y-1];m=b[y-1]}}clearInterval(x.timerFade);x.timerFade=setInterval(function(){x.h.fade(m)},r)}};this.slide=function(J){var Q=x.list_width;x.slideEnded=false;if(J==undefined){J=false}if(J.style){var t=parseInt(J.style.width)}if(J==false&&x.even==true&&!x.a||(x.a==undefined&&!J)){if(Q!=parseInt(Q)){Q=Q-(0.003*y)}x.h.clearDesc(J);x.slideEnded=true;var T=new Array();var V=new Array();var K=0;for(var R=0;R<y;R++){O=b[R];w=parseInt(O.style.width);if(w<=n){V[V.length]=O;K=K+parseInt(O.style.width)}else{if(w>n){T[T.length]=O}}}var S=q;var N=g;var U=y;for(var R=0;R<T.length;R++){var O,w,G;var L=0;O=T[R];w=parseInt(O.style.width);L=Math.ceil((w-n)/C);L=(L>0)?L:1;if(w-L>n){G=w-L;x.slideEnded=false}else{G=n;if(N>0){var I=Math.ceil(N/U);G=G+I;N=N-I}}if(S-G<0){G=G+(S-G)}O.style.width=(G)+"px";S=S-G;U--}var m=V.length;L=Math.floor((S-K)/m);L=(L>0)?L:1;for(var R=0;R<V.length;R++){O=V[R];w=parseInt(O.style.width);if(w+L<=n||(N>0&&w+L<=n+1)){G=w+L;if(w+L<n+1){x.slideEnded=false}}else{G=n}if(R==V.length-1){G=(S)}if(N>0){var I=Math.ceil(N/U);G=G+I;N=N-I}if(S-G<0){G=G+(S-G)}O.style.width=(G)+"px";S=S-G;U--}}else{if(t<v||(J==false&&x.a&&parseInt(x.a.style.width)<v)){x.h.clearDesc(J);var H=0;var R=0;var M=z;for(R;R<y;R++){if(b[R]!=J||(J==false&&b[R]!=x.a)){var O,w;var L=0;O=b[R];w=parseInt(O.style.width);if(w>j){L=Math.floor((w-j)/C);L=(L>0)?L:1;var l=w-L;if(l==j&&M>0){l++;M--;L--}O.style.width=(l)+"px"}H=H+(w-L)}}if(J.style){J.style.width=(q-H)+"px"}else{if(J==false&&x.a){var P=parseInt(q);for(var R=0;R<y;R++){if(b[R]!=x.a){P=P-parseInt(b[R].style.width)}}x.a.style.width=(P)+"px"}}}else{x.slideEnded=true;if(x.a&&x.a.desc){x.a.desc.aktiv=true;x.slideEnded=x.h.fadeDesc(x.a.desc)}if((J&&J.desc)&&J!=x.a){J.desc.aktiv=true;x.slideEnded=x.h.fadeDesc(J.desc)}}}};this.fade=function(L){if((E||x.fC)){if(x.o!=false&&E){x.h.slide(x.o)}else{if(x.fC&&L==false){x.a=false;x.o=false}if(x.even&&L==false){x.h.slide(false)}else{if(x.a){x.h.slide(x.a)}else{x.h.slide(false)}}}}else{if(x.a){x.h.slide(x.a)}}var w=0;var J=x.getElementsByTagName("li");var t=J.length;var G=1;for(w;w<t;w++){var H;var I=J[w];H=this.gO(I.fader);if(I!=x.a||(x.dDFO&&x.a!=x.o)){if(H<F){I.fader.style.display="block";H=H+0.04;this.sO(I.fader,H);if(H<F){G=0}}if(I.fadeInImg&&I!=x.o){var m=this.gO(I.fadeInImg);m=m-0.04;m=(m>0)?m:0;this.sO(I.fadeInImg,m);if(m>0){G=0}}}}if(x.a&&(!x.dDFO||(x.dDFO&&!x.o))){H=H-f;if(x.a.fader.style.display!="none"){this.sO(x.a.fader,0);x.a.fader.style.display="none"}if(x.a.fadeInImg){var m=this.gO(x.a.fadeInImg);m=m+0.04;if(m<1){this.sO(x.a.fadeInImg,m);if(m<1){G=0}}else{this.sO(x.a.fadeInImg,1)}}}if(x.o){var H;H=this.gO(x.o.fader);if(H>0){H=H-f;if(x.o.fader.style.display!="none"){this.sO(x.o.fader,0);x.o.fader.style.display="none"}}if(x.o.fadeInImg){var m=this.gO(x.o.fadeInImg);m=m+0.04;m=(m<1)?m:1;if(m<1){this.sO(x.o.fadeInImg,m);if(m<1){G=0}}else{this.sO(x.o.fadeInImg,1)}}}var K=true;if(x.a){K=x.h.clearDesc(x.a)}if(G==1&&K&&(x.slideEnded||(x.slideEnded==undefined&&x.even))){x.o=false;x.lastOver=false}};this.sO=function(l,m){if(x.ie){var t=parseInt(m*100);if(t>(100)){t=100}l.style.filter="alpha(opacity="+t+")"}else{l.style.opacity=m}};this.gO=function(l){var m;if(x.ie){m=parseInt(parseFloat(l.style.filter.replace(/[\D\.]/g,"")))/100}else{m=parseFloat(l.style.opacity)}return(m)}};