// random # for ads, client-side to avoid caching
var ord = Math.random()*10000000000000000;

// fill extraAdKeys as needed
// (check if exists b/c demandbase might try to create as well, if in wrong order)
try {		// was seeing inconsistent errors here
	if (! extraAdKeys) var extraAdKeys = Array();
} catch(e) { var extraAdKeys = Array(); }


// get any referrer
referrerValue = function() {     // (might be previously defined differently)
   var domain = "";
   var referrer = document.referrer;

   if (referrer == "") return "";
   if (referrer.indexOf("http://www.google.com/cse") > -1) return ""; // custom search - exception

   rPieces = referrer.split("/");
   dPieces = rPieces[2].split(".");

   if(dPieces.length >= 2) {
     domain = dPieces[dPieces.length-2];
		 //return "referrer=" + domain;
		 return domain;
   }

	return "";
}

// get user agent 
userAgentValue = function() {
  var browser = "";
  // TODO: make more generic when requirements are known
  if (/(iPad|iPhone)/.test(navigator.userAgent)) { // test for iPad or iPhone
    browser = RegExp.$1;
  }
	return browser;
}

// check if referrer is google (no longer used, keep in case called)
isGoogleReferer = function() { return false; }

processReferer = function(url) {	return processAdUrl(url); } // legacy

function processAdUrl(url) {

	adKeys = extraAdKeys.join(';');

	if (adKeys != '') {
		url = url + ';' + adKeys;
	}
	
	return url;
}


// for legacy (set by demandbase callback)
var _rval = '';
var rval = '';		// always set both together

//get referrer separately (otherwise adds every time)
_rval = referrerValue();

if(_rval != ''){
	extraAdKeys[extraAdKeys.length] = "referrer=" + _rval;    // always pass even if blank to verify running
}

// get user agent
var browser_value = userAgentValue();
if (browser_value != "") {
  extraAdKeys[extraAdKeys.length] = "browser=" + browser_value;
}