var eu3Ads = {

  adRefreshRate: 2,

  adFrameSrc:null,
  adFrameName: null,
  adFrame: null,
  adRefreshCounter: 0,
  adRefreshTotal: 0,
  adFrameLock: false,
  adFrameFirstLoad: true,

  writeAdFrame: function(id, src) {
    eu3Ads.adFrameName = id;
    eu3Ads.adFrameSrc = src;
    document.write('<div id="ad_' + id +'" class="adDiv"><iframe id="' + id);
    document.write('" width="300" height="250" class="adFrame" src="');
    document.write(src +'" scroll="no"></iframe></div>');
  },

  getTrackingIframe: function() {
    if (typeof frm_name != "undefined") {
      try {
        var frm_obj = document.getElementById('mmx_' + frm_name);
        //frm_obj.onload = eu3Ads.doRefresh;
        if (frm_obj.addEventListener) {
          frm_obj.addEventListener('load', eu3Ads.doRefresh, false);
        } else if (frm_obj.attachEvent) {
          frm_obj.attachEvent('onload', eu3Ads.doRefresh);
        }
      } catch(e) {}
    }
  },

  doRefresh: function() {
    
    eu3Ads.adRefreshCounter++;
    if (eu3Ads.adFrameFirstLoad == true) {
      eu3Ads.adFrameFirstLoad = false;
      eu3Ads.adRefreshCounter = 0;
    } else if (eu3Ads.adRefreshCounter>=eu3Ads.adRefreshRate) {
      if (eu3Ads.adFrame == null) {
        try {
          eu3Ads.adFrame = document.getElementById(eu3Ads.adFrameName);
          if (eu3Ads.adFrame.addEventListener) {
            eu3Ads.adFrame.addEventListener('load', eu3Ads.unLockAd, false);
          } else if (eu3Ads.adFrame.attachEvent) {
            eu3Ads.adFrame.attachEvent('onload', eu3Ads.unLockAd);
          }
        } catch(e) {}
      }
      if (eu3Ads.adFrame != null && eu3Ads.adFrameLock == false) {
        eu3Ads.adFrameLock = true;
        eu3Ads.adRefreshTotal++;
        //var src = eu3Ads.adFrameSrc + "&d="+(Math.random()*100000);
        var src = eu3Ads.adFrameSrc + "&d=" + eu3Ads.adRefreshTotal
        //alert("OLD: "+eu3Ads.adFrame.src+" NEW:"+src);
        eu3Ads.adFrame.src = src;
        eu3Ads.adRefreshCounter = 0;
      }
    }
  },

  unLockAd: function() {
    //alert('unlocking');
    eu3Ads.adFrameLock = false;
  }

}