var nUrl = document.location.href;
homepage = false;

function dateToString(date) {
	var yyyy = date.getYear();
	var mm = date.getMonth() + 1;
	var dd = date.getDate();
	var hour = date.getHours();
	var min = date.getMinutes();

	if (mm < 10) mm = "0"+mm;
	if (dd < 10) dd = "0"+dd;
	if (hour < 10) hour = "0"+hour;
	if (min < 10) min = "0"+min;
		return ''+mm+dd+hour+min;
}

var now = dateToString(new Date());
// Added to kill second skyscraper and bigbox
noads = (nUrl.indexOf("3032542") != -1 && (now >= "04270000" && now <= "04292359"))?true:false;




var textLinksDate = dateToString(new Date());

if (typeof emailLink != 'undefined') {
typeoftextlink = 'articles';
height = 190;
textLinkAllowed = true;
}
else {
textLinkAllowed = false;
//typeoftextlink = 'homepage';
//height = 70;
}




function writeTag() {
var oDiv=document.createElement("DIV");
if (typeoftextlink == 'homepage') oDiv.style.marginTop = 15 + 'px';
oDiv.innerHTML = "<iframe src=\"http://www.washingtonpost.com/wp-adv/advertisers/textlinks/newsweek/"+typeoftextlink+"/index.html\" width=\"160\" marginwidth=\"0\" height=\""+height+"\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\"></iframe>";
oDiv.innerHTML += "<br><div class=\"textSmallGrey\" style=\"text-align:center;\">advertisement<br><iframe src=\"http://ad.doubleclick.net/adi/"+secondKeyvalues+"\" width=\"160\" marginwidth=\"0\" height=\"600\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\"></iframe></div>";

textLink = document.getElementById("DCol");
textLink.appendChild(oDiv);

}

allowSurvey = true;
if (typeof firstTimeCalled == 'undefined') 
{
var firstTimeCalled = true ;
var firstTimeCalledNew = true ;
}

if (firstTimeCalled == true)
{
if (typeof point == 'undefined') point = '';
if (typeof tile == 'undefined') tile = '';


var debugAdCode = false ;
if (document.location.search.indexOf("debugAdCode")+1)
  debugAdCode = true ;
var show_doubleclick_ad = true ;


// constants
var KEEP_NODE = false ;
var CHANGE_NODE = true ;
 
// changed on first call to placeAd


//var adUniqueNumber = '' ;
//var newsAncestorAsString = new String("") ;
// var newsAncestorAsString = new String(",metro,nation,style,opinion,food,outlook,magazine,books,digest,archive,print,") ;

// changed on first call to placeAd or when assertive is true
var adAncestor = new String() ;
var adNoda = new String() ;
var adSite = new String() ;
var adZone = new String() ;
var adSiteZone = new String() ;
var adDir = new String() ;
var adArgs = 0 ;

/* layer = 0 ==> no layer */
/* layer = [1-6] ==> use layer, layer should match tile */
/* w = width, h = height */
function placeAd(layer,node,kw,pos,dir,w,h,tile)
{

if (node.indexOf("bt") != -1)
	var site='bt';
else
	var site = 'nw';

if (show_doubleclick_ad)
{
  
  // if ((tile == 1||layer == 1||kw == 1) || (layer ==0) || (node.substring(5,15) == "liveonline") || (node.substring(5,13) == "washtech"))
	if(typeof ord == "undefined")
{
    var axel = Math.random()+"";
	ord = axel * 1000000000000000000;
    adUniqueNumber = ord+'?' ;
}
  
  if (node.indexOf("/") == -1) node += "/" ;

  // only pass in abbreviated argument list: layer [0,1,2] and node (tile and pos are set based on layer)
  // usage: placeAd(layer,node); example: placeAd(1,'wpni.entertain/music');
  if ( arguments.length == 2 )
  {
	adArgs = 2 ;
    platform = 'STATIC' ;
    layer = arguments[0] ;
    if (layer == 0) { tile = 1 } else { tile = layer }
    node = arguments[1] ;
    pos = setPosition(tile); w = setWidth(tile); h = setHeight(tile);
	
if( typeof(PSTaxonomy) != 'undefined')
{
		if (PSTaxonomy == '82427') //for tech cc
		{
		node='newsweek.tipsheet/tech';
		}
		else if (PSTaxonomy == '82429') // for tech cc
		{
		node='newsweek.enterprise/enterprise/tech';
		}
		else if (PSTaxonomy == '71330') // special section 1for future energy
		{
		node='newsweek.enterprise/enterprise/future_energy';
		}
		else if (PSTaxonomy == '82430') // for business cc
		{
		node='newsweek.enterprise/enterprise/smallbiz';
		}
		else if (PSTaxonomy == '82431') // for business cc
		{
		node='newsweek.enterprise/enterprise/biztravel';
		}
		else if (PSTaxonomy == '82432') // for business cc
		{
		node='newsweek.enterprise/enterprise/globalbiz';
		}
		else if (PSTaxonomy == '82433') // for business cc
		{
		node='newsweek.enterprise/enterprise/mgmt';
		}
		else if (PSTaxonomy == '82428') // for newsweek cc
		{
		node='newsweek.tipsheet/money';
		}


}

	kw = '';dir='';
	dir=getDir(node);
	node=mkNode(node);

}
  
  // only pass in abbreviated argument list: layer, node, and tile (pos is set based on tile)
  // this is to be used when layer is 0, but you still need to set tile=1 and tile=2
  // usage: placeAd(layer,node,tile); example: placeAd(0,'wpni.entertain/music',1);


  //insert interstitial value in the top banner
    inter_value="";  
    
    

    kw = mkKeyword(kw,node) ;
    dir = mkDir(dir) ;

	    // POPUNDER LOGIC TO DETERMINE IF USER CAME FROM GOOGLE and is on Newsweek:
if ( ( (document.location.href.indexOf('?ng')) == -1) && (site=='nw') )
{
	if (layer== 1) var inter_value='dcopt=ist;'
	else if (((kw == 'cover')||(kw=='front'))&&(layer == 2)) var inter_value='dcopt=ist;';
}

	var keyvalues = node+dir+inter_value+"kw="+kw+";pos="+pos+";"+point+"sz="+w+"x"+h+";tile="+tile+";ord="+adUniqueNumber;
  
  var adCode = "" ;
  adCode += ('<s\cript language="JavaScript1.1" src="http://ad.doubleclick.net/adj/'+keyvalues+'">');
  adCode += ('</s\cript>');
  
  // code for hard-coded Marketplace promo tile above sky on BT
  if (site == 'bt')
  {
  	if (tile == 12)
    adCode = '';
	if (tile == 3)
  adCode = '<div style="padding-bottom:20;"><A href="http://www.msnbc.com/modules/bt/BT_marketplace_index.html" target="new"><IMG alt="Budget Travel Marketplace" src="http://msnbcmedia.msn.com/i/msnbc/Components/Art/TRAVEL/Budget_Travel/05_March/tz160_mkplace.gif" width="160" border="0" height="60"></A></div>'+adCode;
  }

  if ( (typeof ceTag != 'undefined') && (ceTag) ) adCode = '';
  
  if (debugAdCode) {  adCode += debugTextArea(adCode); }


	if (tile == 7 && noads) null;
	else document.write(adCode);


	
// insert second skyscraper call here (added 9/3/04)
if ( (layer==3) && (site=='nw'))
	{
	var keyvalues = node+dir+inter_value+"kw="+kw+";pos=lowersky;"+point+"sz="+w+"x"+h+";tile="+tile+";ord="+adUniqueNumber;
	if (textLinkAllowed) {
	secondKeyvalues = node+dir+inter_value+"kw="+kw+";pos=lowersky;"+point+"sz="+w+"x"+h+";tile="+tile+";ord="+adUniqueNumber;
	setTimeout("writeTag()",3000);
	}
	else {
	if (!noads) {
	document.write('<font color="#FFFFFF">t</font><s\cript src="http://media.washingtonpost.com/wp-srv/ad/nw/lowersky.js"></scr\ipt>')
	document.write('<script language="JavaScript1.1" src="http://ad.doubleclick.net/adj/'+keyvalues+'">');
	document.write('</s\cript>');	
	}
	}
	}
// end second skyscraper call	


  firstTimeCalled = false ;
  
} // end if (show_doubleclick_ad)

} // end placeAd



function setPosition(tile)
{
  var p = "ad"+tile ;
  // document.write(p) ;
  return p ;
}

function setWidth(tile)
{
  var wi ;
  if      ( tile == 1 ) { wi = "728"; }	// leaderboard
  else if ( tile == 2 ) { wi = "300"; } // showcase
  else if ( tile == 3 ) { wi = "160"; } // skyscraper
  else if ( tile == 4 ) { wi = "120"; } // 120x30
  else if ( tile == 5 ) { wi = "180"; } // 180x150
  else if ( tile == 6 ) { wi = "120"; } // 120x163
  else if ( tile == 7 ) { wi = "300"; } // 300x250 2nd Slot
  else if ( tile == 8 ) { wi = "728"; } // 728x90 2nd Slot
  else if ( tile == 9 ) { wi = "160"; } // 160x60 above the sky
  else if ( tile == 10 ) { wi = "468"; } // 468x60 banner
  else if ( tile == 11 ) { wi = "1"; } // 1x1
  else if ( tile == 12 ) { wi = "120"; } // 120x163
  else if ( tile == 13 ) { wi = "160"; } // 160x600
  else if ( tile == 14 ) { wi = "446"; } // 446x33

// document.write(wi) ;
  return wi ;
}

function setHeight(tile)
{
  var he ;
  if      ( tile == 1 ) { he="90"; }
  else if ( tile == 2 ) { he="250"; }
  else if ( tile == 3 ) { he="600"; }
  else if ( tile == 4 ) { he="30"; }
  else if ( tile == 5 ) { he="150"; }
  else if ( tile == 6 ) { he="163"; } // 120x163
  else if ( tile == 7 ) { he="250"; } // 300x250 2nd call.
  else if ( tile == 8 ) { he="90"; } // 728x90 2nd call.
  else if ( tile == 9 ) { he = "60"; } // 160x60 above the sky
  else if ( tile == 10 ) { he = "60"; } // 468x60 banner
  else if ( tile == 11 ) { he = "1"; } // 1x1
  else if ( tile == 12 ) { he = "163"; } // 120x163
  else if ( tile == 13 ) { he = "600"; } // 160x600
  else if ( tile == 14 ) { he = "33"; } // 446x33

// document.write(he) ;
  return he ;
}


function mkDir(myDir)
{
  var dirAry = myDir.split("/") ;
  var dirBreakUp = 0 ;
  if ( dirAry.length > dirBreakUp )
  {
    var myDir = "" ;
    for(var i=0;i<dirBreakUp;i++)
    {
      myDir += dirAry[i] ;
      if (i < dirBreakUp-1)
        myDir += "/" ;
    }
    myDir += ";" ;
    for(var i=0;i<dirAry.length;i++)
    {
      myDir += "dir="+dirAry[i]+";" ;
    }
  }
  else
  {
    myDir += ";" ;
  }
  return myDir ;
}

function mkKeyword(myKeyword,myNode)
{
  if (myKeyword == "" )
  {
    if (myNode.indexOf("/") != -1 )
    {
      nodeAry = myNode.split("/") ;
      myKeyword = nodeAry[1] ;
    }
  }
  return myKeyword ;
}

function getDir(node)
{
  var dirAry = node.split("/") ;
  var newDir = "" ;
  if (dirAry.length > 1)
  {
    for (i=1;i<dirAry.length;i++)
	{
	  newDir += dirAry[i] ;
	  if (i!=dirAry.length-1)
	    newDir += "/" ;
	}
  }
  return newDir ;
}

function mkNode(node)
{
  var dirAry = node.split("/") ;
  var newNode = node ;
  if (dirAry.length >3)
  {
    newNode = "" ;
    for (i=0;i<3;i++)
    {
      newNode += dirAry[i] ;
      if (i!=2)
        newNode += "/" ;
    }
  }
  return newNode ;
}


function debugTextArea(ac)
{
  var re = new RegExp("\"","g") ;
  ac = ac.replace(re,"\\\"") ;
  return '<form><textarea wrap=physical cols=\"+55+\" rows=\"+10+\">'+ac+'</textarea></form>';
}


  // get ancestor from node
  function getAdAncestor(node)
  {
	var end = node.indexOf("/") ;
	if ( end == -1 )
	  return node ;
    else
	{
	  var adAncestor = node.substring(0,end) ;	
      return adAncestor ;
	}
  }

  
  // get ad node
  function getAdNode(node,ancestor)
  {
    if ( isNewsAncestor(ancestor) )
	  return node ;
	else
	{
	  var start = node.indexOf("/")+1 ;
	  if (start)
        return node.substring(start) ;
	  else
	    return "" ;
	}
  }

  // get ad node
  function getAdZone(node)
  {
    var ary = new Array() ;
	if ( node.indexOf("/") != -1 )
	  ary = node.split("/") ;
	else
	  ary[0] = node ;

	if ( ary.length <= 2 )
	  return node ;
	else
	{
	  var zone = '' ;
	  for(var i=0; i<2; i++)
	  {
	    zone += ary[i] ;
		if (i==0) zone += "/" ;
	  }
	  return zone ;
	}
  }
  
  function getAdDir(node)
  {
    var page = "" ;
    var ary = new Array() ;
	if ( node.indexOf("/") != -1 )
	  ary = node.split("/") ;
	else
	  ary[0] = node ;

	var dir = '' ;
	for(var i=0; i<ary.length; i++)
	{
	  // parse out article string if present in ancestor
	  if ( i == 0 &&
	       ary[i].indexOf("article") != -1 &&
		   ary[i].indexOf("article") == ary[i].length - "article".length &&
		   ary[i] != "article" )
	  {
	    ary[i] = ary[i].substring(0,ary[i].indexOf("article")) ;
		page = "page=article;" ;
	  }
	  dir += "dir="+ary[i]+";" ;
	}
	return "dir="+ary[ary.length-1]+"node;"+dir+page ;
  }

  // check if adSite should be wpni.news
  function isNewsAncestor(ancestor)
  {
    if ( newsAncestorAsString != null &&
	     newsAncestorAsString != ""   &&
		 newsAncestorAsString.indexOf(","+ancestor+",") != -1
	   )
      return true  ;
    else
	  return false ;
  }
  
  function cleanNode(node)
  {
    if ( node.charAt(node.length-1) == "/" )
	  return node.substring(0,node.length-1) ;
	else
	  return node ;
  }

// end crk added 17 July 2002

}
//end "if first timecalled logic"