// advertiser javascript 

function adObject() {
  this.src = undefined;
  this.alt = undefined;
  this.mediaId = undefined;
  this.url = undefined;    
}

var adMedia = new Array();
var currentAd = new Array();

function cycleAd(adSpaceIndex) {
  if (adMedia[adSpaceIndex] != undefined && 
      adMedia[adSpaceIndex].length > 0) {
      
      // advance to next image (or reset if on last image or just starting)
      currentIndex = currentAd[adSpaceIndex];
      if (currentIndex == undefined || (currentIndex == (adMedia[adSpaceIndex].length - 1))) {
        nextIndex = 0;    
      } else {              
        nextIndex = currentIndex + 1;         
      }        
            
      adSpaceImg = document.getElementById('adSpace'+adSpaceIndex);
      adSpaceImg.src = adMedia[adSpaceIndex][nextIndex].src;
      adSpaceImg.alt = adMedia[adSpaceIndex][nextIndex].alt;      

      opacity('adSpace'+adSpaceIndex, 25, 100, 3500);
  
      currentAd[adSpaceIndex] = nextIndex;      
  }
}

function adClick(adSpaceIndex, page) {  
  if (adMedia[adSpaceIndex] != undefined && 
      adMedia[adSpaceIndex].length > 0) {

    currentIndex = currentAd[adSpaceIndex];
    var targetURL = adMedia[adSpaceIndex][currentIndex].url;
    
    if (targetURL != undefined && targetURL != '#') {   
      updateHitCounter(adMedia[adSpaceIndex][currentIndex].mediaId, page);
      newWindowClone("http://"+targetURL, 'advertiser');      
    }
  }
}


function updateHitCounter(mediaId, page) {
  var url = "servlet/UpdateAdHitCounter?mediaId="+mediaId;
  if (page != undefined) {
    url += "&page="+page;
  } 
  
  sendXMLHttpRequest(url);   
}


function sendXMLHttpRequest(url) {
  req = false;
    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest) {
    try {
       req = new XMLHttpRequest();
    } catch(e) {
      req = false;
    }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
        try {
           req = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            try {
               req = new ActiveXObject("Microsoft.XMLHTTP");
            } catch(e) {
               req = false;
            }
        }
    }
    
    if(req) {
        req.onreadystatechange = processReqChange;
        req.open("GET", url, true);
        req.send("");
    }
}

function processReqChange() { }