var trackingObj = new Object();
trackingObj.currentVisible = "xblockA";
trackingObj.fadeInOpacity = 0;
trackingObj.fadeOutOpacity = 100;
trackingObj.active = false;
trackingObj.milliseconds = 1;
trackingObj.steps = 4;
trackingObj.prefix = "x";
trackingObj.prefixCL = "y";
trackingObj.hrefs = {
  "blockB": "http://www.westsidestudio.co.za",
  "blockC": "http://www.magichour.co.za/cabal/index.htm",
  "blockD": "http://www.magichour.co.za/mh_index.htm",
  "blockE": "http://www.magichour.co.za/blackarts/index.htm"
}
function updateBlockA(elem){
  if(trackingObj.active)
    return;
  var callerid = elem.id;
  if (trackingObj.prefix+callerid == trackingObj.currentVisible)
    return;
  
  var fadeOutElem = document.getElementById(trackingObj.currentVisible);
  var fadeInElem = document.getElementById(trackingObj.prefix+callerid);
  
  document.getElementById("clicklink").href = trackingObj.hrefs[callerid];
  trackingObj.currentVisible = trackingObj.prefix+callerid;
    
  trackingObj.active = true;
  setTimeout(function(){goFade(fadeInElem,fadeOutElem)},trackingObj.milliseconds);
}

function goFade(fadeInElem,fadeOutElem){
  if (!trackingObj.active)
    return;
  
  updateOpacity(fadeInElem,"in");
  updateOpacity(fadeOutElem,"out");
    
  if (trackingObj.fadeOutOpacity <= 0){
    trackingObj.fadeInOpacity = 0;
    trackingObj.fadeOutOpacity = 100;
    setOpacity(fadeInElem,100);
    setOpacity(fadeOutElem,0);
    trackingObj.active = false;
    //showOpacity(fadeInElem);
    return;
  }
  setTimeout(function(){goFade(fadeInElem,fadeOutElem)},trackingObj.milliseconds);
}

//change the opacity for different browsers
function updateOpacity(targElem,direction) {
  var opacity = 0;
  if (direction == "in"){
    trackingObj.fadeInOpacity += trackingObj.steps;
    opacity = trackingObj.fadeInOpacity;
  } else {
    trackingObj.fadeOutOpacity -= trackingObj.steps;
    opacity = trackingObj.fadeOutOpacity;
  }
  //document.getElementById("debug").innerHTML = "milliseconds: "+trackingObj.milliseconds+"<br />fadeInOpacity: "+trackingObj.fadeInOpacity+"<br />fadeOutOpacity: "+trackingObj.fadeOutOpacity;
  setOpacity(targElem,opacity);
}

function setOpacity(targElem,opacity){
  targElem.style.opacity = (opacity / 100);
  targElem.style.MozOpacity = (opacity / 100);
  targElem.style.KhtmlOpacity = (opacity / 100);
  targElem.style.filter = "alpha(opacity=" + opacity + ")";
}

function showOpacity(targElem){
  var opacStr = targElem.id+" | "+targElem.style.opacity+" | "+targElem.style.MozOpacity+" | "+targElem.style.KhtmlOpacity+" | "+targElem.style.filter;
  alert(opacStr);
}
