/********************************************************************
* These functions allow dynamic HTML effects to be added to any     *
* web page and will work on both Netscape Communicator 4.0+ and MS  *
* Internet Explorer 4.0+ browsers.                                  *
********************************************************************/

var layerList = new Array();

function createLayer(name, left, top, width, height, visible, content) {

  var z = layerList.length;
  var layer;

  layerList[z] = name;

  if (document.layers) {
    document.writeln('<layer name="' + name + '" left=' + left + ' top=' + top + ' width=' + width + ' height=' + height + ' visibility=' + (visible ? '"show"' : '"hide"') + ' z-index=' + z + '>');
    document.writeln(content);
    document.writeln('</layer>');
    layer = getLayer(name);
    layer.width = width;
    layer.height = height;
  }

  if (document.all) {
    document.writeln('<div id="' + name + '" style="position:absolute; overflow:none; left:' + left + 'px; top:' + top + 'px; width:' + width + 'px; height:' + height + 'px;' + ' visibility:' + (visible ? 'visible;' : 'hidden;') + ' z-index=' + z + '">');
    document.writeln(content);
    document.writeln('</div>');
  }
  else if (document.getElementById) {
      document.writeln('<div id="' + name + '" style="position:absolute; overflow:none; left:' + left + 'px; top:' + top + 'px; width:' + width + 'px; height:' + height + 'px;' + ' visibility:' + (visible ? 'visible;' : 'hidden;') + ' z-index=' + z + '">');
      document.writeln(content);
      document.writeln('</div>');
  }
}

function hideLayer(name) {

  var layer = getLayer(name);

  if (document.layers)
    layer.visibility = "hide";
  if (document.all)
    layer.visibility = "hidden";
  if (document.getElementById)
    layer.visibility = "hidden";
  
}

function showLayer(name) {

  var layer = getLayer(name);

  if (document.layers)
    layer.visibility = "show";
  if (document.all)
    layer.visibility = "visible";
  if (document.getElementById)
    layer.visibility = "visible";  
  
}

function moveLayer(name, x, y) {

  var layer = getLayer(name);
  if (document.getElementById) {
      layer.left = x;
      layer.top  = y;
    }

  if (document.layers)
    layer.moveTo(x, y);
  if (document.all) {
    layer.left = x;
    layer.top  = y;
  }
}

var animRate = 25;    // Basically sets the update rate for animations.

function slideLayer(name, x, y, speed) {

  var layer = getLayer(name);
  var hrzn, vert, left, top, steps;

  // If the layer is currently being moved, wait and try again later.
 
  if (layer.slideID && layer.slideID != null) {
    setTimeout('slideLayer("' + name + '", ' + x + ', ' + y + ', ' + speed + ')', animRate);
    return;
  }

  if (document.layers) {
    hrzn = x - layer.left;
    vert = y - layer.top;
    left = layer.left;
    top  = layer.top;
  }

  if (document.all) {
    hrzn = x - layer.pixelLeft;
    vert = y - layer.pixelTop;
    left = layer.pixelLeft;
    top  = layer.pixelTop;
  }
   if (document.getElementById) {
      hrzn = x - layer.pixelLeft;
      vert = y - layer.pixelTop;
      left = layer.pixelLeft;
      top  = layer.pixelTop;
    }


  // Calculate how many steps it will take and the size of each step.

  steps = (Math.max(Math.abs(hrzn), Math.abs(vert)) / speed) * (1000 / animRate);

  if (steps <= 0)
    return;

  layer.slideLeft   = left;
  layer.slideTop    = top;
  layer.slideDx     = hrzn / steps;
  layer.slideDy     = vert / steps;
  layer.slideFinalX = x;
  layer.slideFinalY = y;
  layer.slideSteps  = Math.floor(steps);
  layer.slideID     = setTimeout('slideStep("' + name + '")', animRate);
}

function slideStep(name) {

  // Moves the layer one step.

  var layer = getLayer(name);

  layer.slideLeft += layer.slideDx;
  layer.slideTop  += layer.slideDy;
  if (document.layers)
    layer.moveTo(layer.slideLeft, layer.slideTop);
  if (document.all) {
    layer.left = layer.slideLeft;
    layer.top  = layer.slideTop;
  }

  
  // If more steps remain, call this function again.

  if (layer.slideSteps-- > 0)
    layer.slideID = setTimeout('slideStep("' + name + '")', animRate);

  // Otherwise, move layer to final position.

  else {
   if (document.layers)
      layer.moveTo(layer.slideFinalX, layer.slideFinalY);
    if (document.all) {
      layer.left = layer.slideFinalX;
      layer.top  = layer.slideFinalY;
    }
    if (document.getElementById) {
      layer.left = layer.slideFinalX;
      layer.top  = layer.slideFinalY;
    }
    
    layer.slideID = null;
  }
}


function getWinWidth() {

  if (document.layers)
    return(window.innerWidth);
  else if (document.all)
    return(document.body.clientWidth);
  else
    return(null);
}

function getWinHeight() {

  if (document.layers)
    return(window.innerHeight);
  else if (document.all)
    return(document.body.clientHeight);
  else
    return(null);
}

function replaceImage(imagename, imagesrc) {

  var i, layer;

  // If the image exists in the document object, change the source.

  if (document.images[imagename]) {
    document.images[imagename].src = imagesrc;
    return;
  }

  // Otherwise, for Netscape, search through the layers for the named image.

  else if (document.layers) {
    var found = false;
    for (i = 0; i < layerList.length && !found; i++) {
      layer = getLayer(layerList[i]);
      if (layer.document.images[imagename]) {
        layer.document.images[imagename].src = imagesrc;
        found = true;
      }
    }
  }
}

function getLayer(name) {
  // Returns a handle to the named layer.
  if (document.getElementById) {
    layer = eval(document.getElementById(name).style);
    return(layer);
  }

  if (document.layers)
    return(document.layers[name]);
  else if (document.all) {
    layer = eval('document.all.' + name + '.style');
    return(layer);
  }
  else
    return(null);
}

// wordt door timeOut in onLoad aangeroepen
function startQuote() {
		showLayer('lyStreamer');
}
