
// IE only
ADBRITE.INTERMISSION.IE_save_and_overwrite_events = function () {
   ADBRITE.INTERMISSION.body_margin = document.body.style.margin;
   document.body.style.margin = 0;
}

// IE only
ADBRITE.INTERMISSION.IE_restore_events = function () {
   document.body.style.margin = ADBRITE.INTERMISSION.body_margin;
}

ADBRITE.INTERMISSION.hide_objects = function () {
   var object_tags = document.getElementsByTagName('OBJECT');

   for (var i = (object_tags.length - 1); i > -1; i--) {
      if ( ab_isMinIE6 ) {
         var object_id = ADBRITE.get_obj_id(object_tags[i]);
         var param_tags = document.getElementsByTagName('PARAM');
         var param_tags_str = '';
         for (var j = 0; j < param_tags.length; j++) 
            if (param_tags[j].parentNode.id == object_id) param_tags_str += param_tags[j].outerHTML;
      }

      var span_id = "AdBrite_Span_" + Math.floor(Math.random()*999999999);
      var place_holder_node = object_tags[i];
      
      var div_width = ADBRITE.find_width(object_tags[i]);
      var div_height = ADBRITE.find_height(object_tags[i]);

      var surrounding_span = document.createElement('SPAN');
      surrounding_span.id = span_id;
      surrounding_span.name = span_id;
      surrounding_span.style.height = div_height + 'px';
      surrounding_span.style.width = div_height + 'px';

      object_tags[i].parentNode.replaceChild(surrounding_span, object_tags[i]);
      surrounding_span.appendChild(place_holder_node);

      ADBRITE.INTERMISSION.object_tags[i] = new Array(2);
      ADBRITE.INTERMISSION.object_tags[i][0] = span_id;
      ADBRITE.INTERMISSION.object_tags[i][1] = surrounding_span.innerHTML;
      if ( ab_isMinIE6 ) ADBRITE.INTERMISSION.object_tags[i][1] = ADBRITE.INTERMISSION.object_tags[i][1].replace('>', '>' + param_tags_str); // IE only
      surrounding_span.innerHTML = '';
   }
}

ADBRITE.INTERMISSION.hide_embeds = function () {
   var embed_tags = document.getElementsByTagName('EMBED');

   for (var i = (embed_tags.length - 1); i > -1; i--) {
      var span_ID = "AdBrite_Span_" + Math.round(Math.random()*999999999);
      var place_holder_node = embed_tags[i];

      var div_width = ADBRITE.find_width(embed_tags[i]);
      var div_height = ADBRITE.find_height(embed_tags[i]);

      var surrounding_span = document.createElement('span');
      surrounding_span.id = span_ID;
      surrounding_span.name = span_ID;

      embed_tags[i].parentNode.replaceChild(surrounding_span, embed_tags[i]);
      surrounding_span.appendChild(place_holder_node);
      surrounding_span.style.height = div_height + 'px';
      surrounding_span.style.width = div_height + 'px';

      ADBRITE.INTERMISSION.embed_tags[i] = new Array(2);
      ADBRITE.INTERMISSION.embed_tags[i][0] = span_ID;
      ADBRITE.INTERMISSION.embed_tags[i][1] = surrounding_span.innerHTML;

      surrounding_span.innerHTML = '';
   }
}

ADBRITE.INTERMISSION.hide_all_content = function () {
   if (ab_isMinIE6) { // IE only
      ADBRITE.INTERMISSION.remove_iframes();
      ADBRITE.INTERMISSION.hide_select_tags();
   }
   if ( ADBRITE.remove_object_tags ) {
      ADBRITE.INTERMISSION.hide_objects();
      ADBRITE.INTERMISSION.hide_embeds();
   }
}

ADBRITE.INTERMISSION.show_objects = function () {
   for (i = 0; i < ADBRITE.INTERMISSION.object_tags.length; i++) {
      var adbrite_span_tag = document.getElementById(ADBRITE.INTERMISSION.object_tags[i][0]);
      adbrite_span_tag.innerHTML = ADBRITE.INTERMISSION.object_tags[i][1];
   }
}

// IE only
ADBRITE.INTERMISSION.show_iframes = function () {
   for (i = 0; i < ADBRITE.INTERMISSION.iframe_tags.length; i++) {
      var adbrite_span_tag = document.getElementById(ADBRITE.INTERMISSION.iframe_tags[i][0]);
      adbrite_span_tag.innerHTML = ADBRITE.INTERMISSION.iframe_tags[i][1];
   }
}

// IE only
ADBRITE.INTERMISSION.show_select_tags = function () {
   var select_tags = document.getElementsByTagName('SELECT');
   for (var i = 0; i < select_tags.length; i++) {
      select_tags[i].style.display =  ADBRITE.INTERMISSION.select_tags_visibility[i];
   }
}

ADBRITE.INTERMISSION.show_embeds = function () {
   for (i = 0; i < ADBRITE.INTERMISSION.embed_tags.length; i++) {
      var adbrite_span_tag = document.getElementById(ADBRITE.INTERMISSION.embed_tags[i][0]);
      adbrite_span_tag.innerHTML = ADBRITE.INTERMISSION.embed_tags[i][1];
   }
}

ADBRITE.INTERMISSION.reveal_all_content = function () {
   if (ab_isMinIE6) { // IE only
      ADBRITE.INTERMISSION.show_iframes(); 
      ADBRITE.INTERMISSION.show_select_tags();
   }
   if ( ADBRITE.remove_object_tags ) {
      ADBRITE.INTERMISSION.show_objects();
      ADBRITE.INTERMISSION.show_embeds();
   }
}

ADBRITE.INTERMISSION.hide_intermission = function () {
   ADBRITE.INTERMISSION.gather_and_send_statistics('1');
   window.onresize = "";

   // document.getElementById(ADBRITE.INTERMISSION.outer_span_id).outerHTML = ''; // IE only

   var interstitial_node = document.getElementById(ADBRITE.INTERMISSION.outer_span_id);
   var interstitial_node_parent = interstitial_node.parentNode;
   interstitial_node_parent.removeChild(interstitial_node);

   document.getElementsByTagName("body")[0].style.overflow = 'auto';
   ADBRITE.INTERMISSION.reveal_all_content(document.getElementsByTagName("body")[0]);
   ADBRITE.INTERMISSION.restore_events();
   if ( ab_isMinIE6 ) ADBRITE.INTERMISSION.IE_restore_events(); // IE only
}

ADBRITE.INTERMISSION.create_layer = function () {
   document.getElementsByTagName('body')[0].style.overflow = 'hidden';
   ADBRITE.INTERMISSION.hide_all_content();

   //create outer span
   var IEBox = document.getElementById(ADBRITE.INTERMISSION.outer_span_id);
   IEBox.style.display = 'block';
   IEBox.style.position = 'absolute';
   IEBox.style.width = '100%';
   IEBox.style.height = '100%';
   IEBox.style.left = '0px';
   IEBox.style.top = '0px';
   IEBox.style.background = 'white';
   IEBox.style.zIndex = 32767;
   if ( ab_isMinIE6 ) IEBox.style.filter = 'alpha(opacity=0)';
   else if ( ab_isMinMoz1_5 ) {
      IEBox.style.MozOpacity = 0 + '';
      IEBox.style.opacity = 0 + '';
   }
   IEBox.className = 'noadbriteinline';

   //create inner span
   var Layer = document.getElementById(ADBRITE.INTERMISSION.inner_span_id);
   Layer.style.display = 'block';
   Layer.style.position = 'fixed';
   Layer.style.width = '100%';
   Layer.style.height = '100%';
   Layer.style.left = '0px';
   Layer.style.top = '0px';
   Layer.style.background = 'white';
   Layer.style.zIndex = 32767;
   Layer.className = 'noadbriteinline';
}

ADBRITE.INTERMISSION.populate_header = function () {
   var header = document.createElement('ispan');
      header.dir = 'ltr';
      header.style.zIndex = '323767';
      header.style.width = '100%';
      header.style.padding = '0px';
      header.style.display = 'block';
      header.style.margin = '0px';
      header.style.position = 'relative';
      header.style.background = '#' + ADBRITE.INTERMISSION.background_color + ' ' + ADBRITE.INTERMISSION.background_image;
      header.innerHTML = '<table cellspacing="0" cellpadding="0" width="100%" style="width:100%;border:0px;padding:0px;margin:0px;display:block;visibility:visible;background-color:transparent;"><tr><td valign="middle" align="left" style="padding:10px 0 10px 15px;white-space:nowrap;background-color:transparent;">' +
   ADBRITE.INTERMISSION.publisher_logo +
   '</td><td valign="middle" align="right" style="vertical-align:middle;padding:10px 15px 10px 0;text-align:right;width:100%;background-color:transparent;"><a href="#" style="font-family:Arial,Helvetica,sans-serif;color:#00f;font-weight:bold;text-decoration:underline;font-size:13px;border:none;visibility:hidden;background-color:transparent;" onClick="ADBRITE.INTERMISSION.hide_intermission(); return false;" id="AdBriteSkipThisAd">' +
   ADBRITE.INTERMISSION.skip_this_ad + '</a></td></tr></table>';

   var bar = document.createElement('ispan');
      bar.id = ADBRITE.INTERMISSION.bar_id;
      bar.style.background = '#ffffff url(\'' + ADBRITE.INTERMISSION.path + '/mb/images/intermission-bar2.gif\') repeat-x top left';
      bar.style.fontFamily = 'Arial, Helvetica, sans-serif';
      bar.style.fontSize = '12px';
      bar.style.color = '#333333';
      bar.style.display = 'block';
      bar.style.margin = '0px';
      bar.style.whiteSpace = 'nowrap';
      bar.style.textAlign = 'left';
      bar.style.borderWidth = '1px 0';
      bar.style.borderColor = '#aeaeae';
      bar.style.borderStyle = 'solid';
      bar.style.padding = '5px 15px';
      bar.innerHTML = '<span style="float:right;margin:0;padding:0;font-size:12px;"><a href="#" style="font-family:Arial,Helvetica,sans-serif;color:#00f;font-weight:bold;text-decoration:underline;font-size:12px;margin:0;padding:0;display:inline;background-color:transparent;text-transform:none;cursor:pointer;" onclick="ADBRITE.INTERMISSION.bookmarked=1;ADBRITE.bookmark_url(\'-1_advertiser\',\'' +
      ADBRITE.INTERMISSION.bookmark_url +
      '\');return(false);">Bookmark This Ad</a>&nbsp;&nbsp;|&nbsp;&nbsp;<a href="#" + style="font-family:Arial, Helvetica, sans-serif;color:#00f;text-decoration:underline;margin:0;padding:0;display:inline;font-weight:bold;background-color:transparent;text-transform:none;cursor:pointer;" onClick="ADBRITE.INTERMISSION.open_new_window(); return false;">Your Ad Here</a></span>' +
      ADBRITE.INTERMISSION.text_headline_and_body();

   var span = document.getElementById(ADBRITE.INTERMISSION.inner_span_id);
   var ifr = document.getElementById(ADBRITE.INTERMISSION.ad_iframe_id);
   span.insertBefore(bar, ifr);
   span.insertBefore(header, bar);
}

ADBRITE.INTERMISSION.populate_iframe = function () {
   var bdy = document.getElementsByTagName('body')[0];
   var ifr = document.getElementById(ADBRITE.INTERMISSION.ad_iframe_id);
   ifr.style.display = 'block';
   ifr.style.position = 'relative';
   //alert('display: '+ ifr.style.display +
   //      '\nposition: ' + ifr.style.position + 
    //     '\nheight: ' + ADBRITE.INTERMISSION.calculate_iframe_height() +
      //   '\nwidth:' + ADBRITE.INTERMISSION.calculate_iframe_width());
   ifr.scrolling = 'auto';
   ADBRITE.INTERMISSION.resize_iframe();
}

ADBRITE.INTERMISSION.populate_msg = function () {
   var div = document.createElement('div');
   div.id = ADBRITE.INTERMISSION.bumper_id;
   div.style.display = 'block';
   div.style.height = ADBRITE.INTERMISSION.calculate_iframe_height();
   div.style.width  = ADBRITE.INTERMISSION.calculate_iframe_width();
   div.style.margin = '12% 0 0 0';
   div.style.textAlign = 'center';
   var h2 = document.createElement('abh2');
   h2.style.fontFamily = "'Trebuchet MS',Arial,sans-serif";
   h2.style.display = 'block';
   h2.style.fontSize = '30px';
   h2.style.color = "#666666";
   h2.style.textAlign = "center";
   h2.style.margin = "0 0 20px 0";
   h2.style.padding = "0";
   h2.innerHTML = ADBRITE.INTERMISSION.publisher_name + ' is brought to you today by';
   div.appendChild(h2);
   var h1 = document.createElement('abh1');
   h1.style.fontFamily = "'Trebuchet MS',Arial,sans-serif";
   h1.style.display = 'block';
   h1.style.fontSize = '75px';
   h1.style.color = "#000";
   h1.style.textAlign = "center";
   h1.style.margin = "0";
   h1.style.padding = "0";
   h1.style.borderWidth = "0";
   if (ADBRITE.INTERMISSION.advertiser_logo != '') {
      var img = document.createElement('img');
      img.src = ADBRITE.INTERMISSION.advertiser_logo;
      img.alt = ADBRITE.INTERMISSION.advertiser_name;
      img.style.padding = '0';
      img.style.margin = '0';
      img.style.border = 'none';
      img.style.position = 'relative';
      h1.appendChild(img);
   } else {
      h1.innerHTML = ADBRITE.INTERMISSION.advertiser_name;
      h1.style.lineHeight = "80px";
   }
   div.appendChild(h1);
   document.getElementById(ADBRITE.INTERMISSION.inner_span_id).appendChild(div);
   setTimeout("ADBRITE.INTERMISSION.fade_out(100, 2, (new Date().getTime() + 1500))", 2200); 
}

ADBRITE.INTERMISSION.init = function () {
   ADBRITE.INTERMISSION.begin_time = new Date();
   ADBRITE.INTERMISSION.save_and_overwrite_events();
   if ( ab_isMinIE6 ) ADBRITE.INTERMISSION.IE_save_and_overwrite_events(); // IE only
   ADBRITE.INTERMISSION.create_layer();
   scrollTo(0,0);
   ADBRITE.INTERMISSION.fade_in(0, 2, (new Date().getTime() + 1200));
   ADBRITE.INTERMISSION.populate_header();
   ADBRITE.INTERMISSION.populate_msg();
   ADBRITE.append_script( ADBRITE.INTERMISSION.iframe_source + '&dnr=1', ADBRITE.INTERMISSION.span_id );
   window.onresize = ADBRITE.INTERMISSION.resize_iframe;
}

if (adbrite_intermission_initialization_count < 2) { 
   ADBRITE.INTERMISSION.init();
   ++adbrite_intermission_initialization_count; 
} 

// set cookie
if ( ADBRITE.INTERMISSION.set_intermission_shown_url ) {
   ADBRITE.INTERMISSION.set_intermission_shown_url += '&rand=' + Math.round(Math.random()*999999999);
   ADBRITE.append_script( ADBRITE.INTERMISSION.set_intermission_shown_url, ADBRITE.INTERMISSION.span_id );
}
