ad_init();

function ad_init(searchterm) {
	google_initstate = 1;
	var adflag = /\badslot\b/i;
	var adconfig = /\bad\-(\w+)\-((\w|\-)+)\b/i;
	var elements = document.getElementsByTagName("div");
	var adslots = [];
	var i=0, adcount=0;
  	
	while (el = elements[i++]) if (adflag.test(el.className)) {
		var adobj = { el: el, count:0, html:"", actual:0, type:"AFC" };
		var attr = el.className.split(" ");
		for (var j in attr) if (m = adconfig.exec(attr[j])) {
			if (is_int(m[2])) { 
				adobj[m[1].toLowerCase()] = parseInt(m[2]); 
			} else { 
				adobj[m[1].toLowerCase()] = m[2];
			}
		}

		if (adobj.count) {
			adcount += adobj.count;
			adslots.push(adobj);
		}

	}

	adslots.sort( function (a,b) { return (a.priority || 99) - (b.priority || 99); });
	google_ad_slots = adslots;

	if (adslots.length) {
		google_ad_client = 'ca-targetcorp_js';
		google_ad_output = 'js';
		google_max_num_ads = adcount;
		google_ad_type = 'text';
		google_encoding = 'utf8';
		google_safe = 'high';

		var filter = /target\.com/;
		if (filter.test(document.domain) == false) {
			google_adtest = 'on';
			google_page_url = location.href.replace(/snowcrest\.amazon\.com/i,'www.target.com'); 
		} else {
			google_page_url = location.href;
		}

		document.write("<script src='http://pagead2.googlesyndication.com/pagead/show_ads.js'><\/script>");
	}
}

function request_afc_ad(params) { /* stub */ }


function is_int(s) {
	if (s == null) return false;
	return (s.toString().search(/^-?[0-9]+$/) == 0);
}

function google_ad_request_done(google_ads) {
	if (google_ads.length && google_initstate != "undefined") {
		for (var i in google_ad_slots) {
			for (var j=0; j < google_ad_slots[i].count; j++) {
				
				var k=0;
				while (k < google_ads.length) {
					google_ad_slots[i].actual++;
					google_ad_slots[i].html += ad_generate(google_ads[k],google_ad_slots[i].id,google_ad_slots[i].actual);
					google_ads.splice(k,1);
					break;
				}
				k++;
			}
		}
	}

	var tag="";

	for (var i=0; i < google_ad_slots.length; i++) {
		var el = google_ad_slots[i].el;
		if (google_ad_slots[i].actual) {
			if (google_ad_slots[i].header == "hide") {
				el.innerHTML = google_ad_slots[i].html
			} else {
				el.innerHTML = '<h5 style="color:#333333;font-weight:bold;font-family:Verdana;font-size:10px;margin:0px;">Ads by Google</h5><br style="line-height:10px;">' + google_ad_slots[i].html
			}
		} else {
			el.style.padding = 0;
		}
		tag += google_ad_slots[i].type + "|" + google_ad_slots[i].id + "|" + google_ad_slots[i].actual;
		if (i < google_ad_slots.length-1) tag += "^";
	}

	/* set variable used for impression tracking */
	waimploc = tag;

}

function ad_generate(data,adid,adnum) {
	var html = '<a href="' + data.url + '" ' + 
		'target="_blank" ' +
		'onclick="ad_track(\'AFC\',\'' + adid + '\',\'' + adnum + '\',\'' + data.visible_url + '\');return true;" ' +
		'onmouseout="window.status=\'\';return true" ' +
		'onmouseover="window.status=\'go to ' +
		data.visible_url + '\';return true" ' +
		'style="text-decoration:none;font-size:11px;font-family:verdana;">' +
		'<span style="text-decoration:underline;color:#333333;display:inline;">' +
		'<b>' + data.line1 +
		'</b><br></span>' +
		'<span style="color:#333333;display:inline;">' +
		data.line2 + ' ' +
		data.line3;

	html += '<br></span><span style="color:#999999;font-size:10px;display:inline;">' +
		data.visible_url +
		'</span></a><BR><BR style="line-height:10px;">';

	return html;
}

function ad_track(type,adid,adnum,url) {
	var script = document.createElement("script");
	script.type = "text/javascript";
	script.src = "http://vs.target.com/interaction.txt?Log=1&event=offsite_google&hosturl="+ escape(window.location) +"&clickloc="+type+"|"+adid+"|"+adnum+"&exiturl=" + escape(url) + "&cb=" + Math.random();
	document.body.appendChild(script);
}