///////////////////////////////////////////////////////////////////
// Ja!!!! Last Night A Scroller Safed My Life!
// Schaut nur wie toll wir programmieren können!
// Uns kann man auch kaufen: www.yaromat.com und www.n-image.com
//
///////////////////////////////////////////////////////////////////


// Wrapper
function YY_c (yy_x,yy_y){
  yyLayerScroll('LC','LC',10, yy_x, yy_y, 0, 0,10,10);
}

// behavior
function YY_LS(lname, yy_x,yy_y, delay, step){//v3.6
  yyLayerScroll(lname,lname,delay, yy_x, yy_y, 0, 0,step,step);
}

// CallScroller
function yyLayerScroll(targetNN, targetIE, delay, ex, ey, dx, dy, sx, sy, yyX, yyY, daT) {//v3.6
  if(daT){target=daT}else{target = MM_findObj(targetNN)}
  if (document.layers) {
    var ct = target.clip.top;
    var cb = target.clip.bottom;
    var cl = target.clip.left;
    var cr = target.clip.right;

    yyY=Math.abs(Math.round((ct-ey)/sy));
    dy=Math.round(-(ct-ey)/yyY);
    yyX=Math.abs(Math.round((cl-ex)/sx));
    dx=Math.round(-(cl-ex)/yyX);
    if(yyX<1){dx=0}else{yyX--};
    if(yyY<1){dy=0}else{yyY--};
    var t = target.top;
    target.clip.top = ct + (dy);
    target.clip.bottom = cb + (dy);
    target.top = t - (dy);
    var l = target.left;
    target.clip.left = cl + dx;
    target.clip.right = cr + dx;
    target.left = l - dx;
  }else {
    if (document.all||document.getElementById) {
      if(document.all){
        var l = target.style.pixelLeft;
        var t = target.style.pixelTop;
      }
      if(document.getElementById){
        var l = parseInt(target.style.left);
        var t = parseInt(target.style.top);
      }
      if (target.style.clip) {
        var clipv = target.style.clip;
                clipv=clipv.replace(/x/gi, "").replace(/t/gi, "");
                clipv=clipv.split("rec(")[1].split(")")[0].split("p");
        var ct = Number(clipv[0]);
        var cr = Number(clipv[1]);
        var cb = Number(clipv[2]);
        var cl = Number(clipv[3]);
      }
      yyY=Math.abs(Math.round((ct-ey)/sy));
      dy=Math.round(-(ct-ey)/yyY);
      yyX=Math.abs(Math.round((cl-ex)/sx));
      dx=Math.round(-(cl-ex)/yyX);

      if(yyX<1)dx=0;
      if(yyY<1)dy=0;
      ncl = cl + dx;
      nct = ct + dy;
      ncr = cr + dx;
      ncb = cb + dy;
      target.style.pixelTop = t - dy;
      target.style.pixelLeft = l - dx;
          target.style.left = l - dx;
      target.style.top = t - dy;
      eval("target.style.clip = 'rect(' + nct + ' ' +  ncr + ' ' + ncb + ' ' + ncl +')'");
      yyY--;
      yyX--;
    }
   }
   if(target.tmtScrollo)clearTimeout(target.tmtScrollo);
   if(yyY>0||yyX>0)target.tmtScrollo  = setTimeout("yyLayerScroll(\"" + targetNN + "\",\"" + targetIE + "\","  + delay + "," + ex+ "," + ey+ "," + dx+ "," + dy + "," +sx + "," + sy + "," + yyX + "," + yyY+ ")", (document.getElementById)?delay/2:delay);
}

function MM_findObj(n, d) { //v3.6
  if(document.getElementById)return MZ_findObj(n);
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  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=MM_findObj(n,d.layers[i].document); return x;
}

function MZ_findObj(n){ //v3.6
        var x,t; if((n.indexOf("?"))>0&&parent.frames.length){t=n.split("?");
        x=eval("parent.frames['"+t[1]+"'].document.getElementById('"+t[0]+"')");
        }else{x=document.getElementById(n)}return x;
}


