//----------------------------------------------------
// dcAd
// keyValues should be in the form key=value;nextkey=nextval;
// If not using a keyValue, pass empty string.
//----------------------------------------------------
	
ord=Math.random()*10000000000000000;
incrementalTile = 1;

//funtion to create incremental tild IDs
function incrementTile() {
    incrementalTile++;
}
	
//backwards compatible for old ad tags	
function dcAd(site, zone, adId, keyValues, isFrame) {
	switch (adId) {
		case 'videosponsorbutton':
			size='88x31';
			iFrameWidth=150; //incorrect
			iFrameHeight=31;  //incorrect
		break;
		case 'messaging':
			size='300x250';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'skyscraper':
			size='160x600';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'hpsidebar':
			size='300x40';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'sponsoredby':
			size='330x25';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'hpcenterbar':
			size='355x40';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'modulesponsor':
			size='88x31';
			iFrameWidth=88; //incorrect
			iFrameHeight=55;  //incorrect
		break;
		case 'button2':
			size='120x60';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'navad':
			size='90x120';
			iFrameWidth=90; //incorrect
			iFrameHeight=120;  //incorrect
		break;
		case 'richmedia':
			size='1x3';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'bizdevtext':
			size='1x2';
			iFrameWidth=0; //will never use iframes
			iFrameHeight=0;  //will never use iframes
		break;
		case 'narrowsky':
			size='120x600';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'mainheaderad':
			size='120x60';
			iFrameWidth=120; //incorrect
			iFrameHeight=60;  //incorrect
		break;
		case 'leaderboard':
			size='728x90';
			xIndex=size.indexOf('x');
			iFrameWidth=size.substring(0,xIndex);
			iFrameHeight=size.substring(xIndex+1,size.length);
		break;
		case 'sponsoredwildcard':
			size='1x4';
			xIndex=size.indexOf('x');
			iFrameWidth=0; //will never use iframes
			iFrameHeight=0;  //will never use iframes
		break;
		case 'specialoffer':
			size='1x5';
			xIndex=size.indexOf('x');
			iFrameWidth=0; //will never use iframes
			iFrameHeight=0;  //will never use iframes
		break;
		default:
			size='1x1';
			iFrameWidth=1;
			iFrameHeight=1;
		}
		
	  dcRichAd(site, zone, adId, keyValues, isFrame, iFrameWidth, iFrameHeight);
}


function dcRichAd(site, zone, adId, keyValues, isFrame, iFrameWidth, iFrameHeight) {
	switch (adId) {
		//leave 1 blank for XML video ad
		case 'videosponsorbutton':
			size='88x31';
		break;
		case 'messaging':
			size='300x250';
		break;
		case 'skyscraper':
			size='160x600';
		break;
		case 'hpsidebar':
			size='300x40';
		break;
		case 'sponsoredby':
			size='330x25';
		break;
		case 'hpcenterbar':
			size='355x40';
		break;
		case 'modulesponsor':
			size='88x31';
		break;
		case 'button2':
			size='120x60';
		break;
		case 'navad':
			size='90x120';
		break;
		case 'richmedia':
			size='1x3';
		break;
		case 'bizdevtext':
			size='1x2';
		break;
		case 'narrowsky':
			size='120x600';
		break;
		case 'mainheaderad':
			size='120x60';
		break;
		case 'leaderboard':
			size='728x90';
		break;
		case 'sponsoredwildcard':
			size='1x4';
		break;
		case 'specialoffer':
			size='1x5';
		break;
		}
	
	zone = zone.replace("partners.","partner.");
	tileId = incrementalTile;
	incrementTile();
	
	if (isFrame) {
		document.write('<iframe id="dc'+ ord + 't' + tileId + '" src="#" width="'+iFrameWidth+'" height="'+iFrameHeight+'" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling=no borderCOLOR="#000000" >');
		if (navigator.userAgent.indexOf("Gecko")==-1) {
			document.write('<script language="JavaScript" src="http://ad.doubleclick.net/adj/' + site + '/' + zone + ';' + keyValues + 'tile=' + tileId + ';sz=' + size + ';abr=!ie;ord=' + ord + '?" type="text/javascript"><\/script>');
		}
		document.write('</iframe>');
		
		if (document.getElementById('dc'+ord+'t'+tileId)) { 
			document.getElementById('dc'+ord+'t'+tileId).src = 'http://ad.doubleclick.net/adi/' + site + '/' + zone + ';' + keyValues + 'tile=' + tileId + ';sz=' + size + ';ord=' + ord + '?';
		}
	} else {
		document.write('<script language="JavaScript" src="http://ad.doubleclick.net/adj/' + site + '/' + zone + ';' + keyValues + 'tile=' + tileId + ';sz=' + size + ';ord=' + ord + '?" type="text/javascript"><\/script>');
	}
//</script><noscript><a href="http://ad.doubleclick.net/jump/' + site + '/' + zone + ';' + keyValues + 'tile=' + tileId + ';sz=' + size + ';ord=123456789?" target="_blank"><img src="http://ad.doubleclick.net/ad/cbstest.gustavo/sports;tile=1;sz=300x250;ord=123456789?" width="300" height="250" border="0" alt=""></a></noscript>
}

function resetAds(newOrd, dcSeed){
    //for the newOrd, the video ad is Tile 1
    incrementalTile = 2;
	for (var i=0;i<document.getElementsByTagName("iframe").length;i++) {
		iFrameID=document.getElementsByTagName("iframe")[i].id;
		//if the iFrame is for a Double Click ad...
		if (iFrameID.substring(0,2)=="dc"){
			
			//don't need to redraw iFrame
			//recall Double Click
				
				if (document.getElementById(iFrameID)) { 

					//pull out all variables I need fromt he current source as a string
					iFrameSrc=document.getElementById(iFrameID).src;
					
					if (iFrameSrc.indexOf("DCRefresh") == -1){
						//first call to refresh
						//string manipulation of DC call
						
						keyvaluesStartPos=iFrameSrc.indexOf(";")+1;
						keyvaluesEndPos=iFrameSrc.indexOf("tile",keyvaluesStartPos);
						//tileStartPos=iFrameSrc.indexOf("tile=")+5;
						//tileEndPos=iFrameSrc.indexOf(";", tileStartPos);
						sizeStartPos=iFrameSrc.indexOf("sz=")+3;
						sizeEndPos=iFrameSrc.indexOf(";", sizeStartPos);
						ordStartPos=iFrameSrc.indexOf("ord=")+4;
						ordEndPos=iFrameSrc.indexOf("?",ordStartPos);
						zoneStartPos=iFrameSrc.lastIndexOf("/")+1;
						zoneEndPos=iFrameSrc.indexOf(";",zoneStartPos);
						}
					else {
						//not the first call to refresh
						//string manipulation of dcrefresh

						keyvaluesStartPos=iFrameSrc.indexOf("?keyValues=")+11;
						keyvaluesEndPos=iFrameSrc.indexOf("&tileId=",keyvaluesStartPos);
						//tileStartPos=iFrameSrc.indexOf("&tileId=")+8;
						//tileEndPos=iFrameSrc.indexOf("&size=", tileStartPos);
						sizeStartPos=iFrameSrc.indexOf("&size=")+6;
						sizeEndPos=iFrameSrc.indexOf("&ord=", sizeStartPos);
						ordStartPos=iFrameSrc.indexOf("&ord=")+5;
						ordEndPos=iFrameSrc.indexOf("&zone=", ordStartPos);
						zoneStartPos=iFrameSrc.indexOf("&zone=")+6;
						zoneEndPos=iFrameSrc.indexOf("&dcSeed=",zoneStartPos);
						}
					
					zone=iFrameSrc.substring(zoneStartPos,zoneEndPos);
					keyValues=iFrameSrc.substring(keyvaluesStartPos,keyvaluesEndPos);
					//tile=iFrameSrc.substring(tileStartPos,tileEndPos);
					//use the new tileID, not existing one
					tile = incrementalTile;
	                incrementTile();
					size=iFrameSrc.substring(sizeStartPos,sizeEndPos);
					//ord passed in function
					//ord=iFrameSrc.substring(ordStartPos,ordEndPos);
					
					//alert("keyValues="+ keyValues +"\n"+"tileId="+ tile +"\n"+"size="+ size +"\n"+"ord="+ newOrd +"\n"+"zone="+ zone +"\n");
				
					var thisFrame=document.getElementById(iFrameID);
					if (iFrameSrc.indexOf("DCRefresh") == -1)
				  	    thisFrame.src="./services/DCRefresh.aspx?keyValues=" + escape(keyValues) + "&tileId=" + tile + "&size=" + size + "&ord=" + newOrd + "&zone=" + zone + "&dcSeed=" + dcSeed;
					else
						thisFrame.src="./services/DCRefresh.aspx?keyValues=" + keyValues + "&tileId=" + tile + "&size=" + size + "&ord=" + newOrd + "&zone=" + zone + "&dcSeed=" + dcSeed;
				}
			}
		}
	}
	
	
	//This function is passed to the video section players as a substitute to resetAds 
	function doNothing(newOrd, dcSeed){
		
	}