// Objekt finden
function findObj(n, d) { //v4.0

var p,i,x;
if(!d) d=document;
if(!(x=d[n])&&d.all) x=d.all[n];
for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n);

return x;
}

// Text Scrollen
var s_next;
var s_top = 0;
var s_max;
var s_min = 2;

var s_next = new Array();
var s_top = new Array(0,0);
var s_max = new Array();
var s_min = new Array(2,2);

if( navigator.platform.indexOf("Mac") != -1 )
        s_min = 0;

function a_index(contText,a_contText) {
var arrayindex;
for (z_index=0;z_index<a_contText.length;z_index++)
{
 if (a_contText[z_index]==contText)
 {
  arrayindex = z_index;
 }
}

return arrayindex;
}

function initscroller(contMaske,contText,ScrollerUp,ScrollerDown)
{
         var arrayindex = a_index(contText,a_container);

        var text  = findObj(contText);
        var maske = findObj(contMaske);

        if( document.layers ) // Netscape 4.x
        {

                s_max[arrayindex] = maske.clip.height - text.clip.height;
        }
        else // Netscape 6 / MSIE
        {
                s_max[arrayindex] = maske.offsetHeight - text.offsetHeight;
        }

        Scroll(0,contMaske,contText);

        if(s_max[arrayindex] >= 0){
                if( document.layers ){
                        /*
                        document.layers[ScrollerDown].visibility = "hide";
                        document.layers[ScrollerUp].visibility = "hide";
                        */
                        document.layers[ScrollerDown].display = "none";
                        document.layers[ScrollerUp].display = "none";
                }

                else {
                      /*
                        var lay = findObj(ScrollerUp);
                        lay.style.visibility = "hidden";
                        var lay = findObj(ScrollerDown);
                        lay.style.visibility = "hidden";
                      */
                        var lay = findObj(ScrollerUp);
                        lay.style.display = "none";
                        var lay = findObj(ScrollerDown);
                        lay.style.display = "none";

                }

        }

}

function Scroll(schritt,contMaske,contText)
{
        var arrayindex = a_index(contText,a_container);
        var text  = findObj(contText);
        var maske = findObj(contMaske);

        if( !s_max[arrayindex] )
        {
                if( document.layers ) // Netscape 4.x
                        s_max[arrayindex] = maske.clip.height - text.clip.height;
                else // Netscape 6 / MSIE
                        s_max[arrayindex] = maske.offsetHeight - text.offsetHeight;
        }
        if( isNaN(schritt) )
                s_top[arrayindex] = -Anker(schritt,contText);
        else
                s_top[arrayindex] += schritt;

        if( s_top[arrayindex] < s_max[arrayindex] )
                s_top[arrayindex] = s_max[arrayindex];
        if( s_top[arrayindex] > s_min[arrayindex] )
                s_top[arrayindex] = s_min[arrayindex];

        if( document.layers )
        {
                document.contMaske.document.contText.top = s_top[arrayindex];
        }
        else
        {
                text.style.top = s_top[arrayindex];
        }

        if( s_next[arrayindex] )
                clearTimeout( s_next[arrayindex] );
        if( schritt != 0 && !isNaN(schritt) )
        {
                s_next[arrayindex] = window.setTimeout("Scroll("+schritt+",'"+contMaske+"','"+contText+"');",40);
        }
}
function Anker(name,contText)
{
        var anker = findObj(name);
        var ankertext  = findObj(contText);
        if( document.layers )
        {
                var ankerY = ankertext.document.anchors[name].y;
                return(ankerY);
        } else {
                if( document.all ){
                        return anker.offsetTop;
                } else {
                        return anker.offsetTop - ankertext.offsetTop;
                }
        }
}

function Scrollmaus(schritt,contMaske,contText)
{
        var arrayindex = a_index(contText,a_container);
        var text  = findObj(contText);
        var maske = findObj(contMaske);

        if( !s_max[arrayindex] )
        {
                if( document.layers ) // Netscape 4.x
                        s_max[arrayindex] = maske.clip.height - text.clip.height;
                else // Netscape 6 / MSIE
                        s_max[arrayindex] = maske.offsetHeight - text.offsetHeight;
        }
        if( isNaN(schritt) )
                s_top[arrayindex] = -Anker(schritt,contText);
        else
                s_top[arrayindex] += schritt;

        if( s_top[arrayindex] < s_max[arrayindex] )
                s_top[arrayindex] = s_max[arrayindex];
        if( s_top[arrayindex] > s_min[arrayindex] )
                s_top[arrayindex] = s_min[arrayindex];

        if( document.layers )
        {
                document.contMaske.document.contText.top = s_top[arrayindex];
        }
        else
        {
                text.style.top = s_top[arrayindex];
        }

        if( s_next[arrayindex] )
                clearTimeout( s_next[arrayindex] );
        if( schritt != 0 && !isNaN(schritt) )
        {
                //s_next[arrayindex] = window.setTimeout("Scroll("+schritt+",'"+contMaske+"','"+contText+"');",40);
        }
}

  //var nWert = 0;
function RadEreignis(contMaske,contText)
  {
  var nWert = 0;
  nWert=nWert+(event.wheelDelta/5);
  Scrollmaus(nWert,contMaske,contText);
  }

//var delta = 0;
function wheel(event)
  {

        var delta = 0;

        if (!event)
        {
         event = window.event;
        }

        if(event.currentTarget.hasChildNodes())
        var contMaske = event.currentTarget.id;
        var contText  = event.currentTarget.childNodes[1].id;

        if (event.wheelDelta)
        {
                delta = delta+(event.wheelDelta/5);
                if (window.opera) delta = -delta*8;
        }
        else if (event.detail)
        {
                delta = -event.detail*8;
        }
        if (delta)

   Scrollmaus(delta,contMaske,contText);

  }

function initwhell(contMaske,contText)
{
var text  = findObj(contText);
var maske = findObj(contMaske);
if (maske.addEventListener)
// DOMMouseScroll is for mozilla.
maske.addEventListener('DOMMouseScroll', wheel, false);
// IE/Opera.
//maske.onmousewheel = maske.onmousewheel = wheel;

}