 function linkage(thelink, windowopen, specialprop){
	   if(specialprop == "true"){
		   var tl = window.open(thelink + "?PID=" + getURLParam('PID'), windowopen, 'top=10,left=20,scrollbars=yes,width=575,height=480,menubar=no,toolbar=no,status=no,location=no;resizable=yes;');
	   }
	   else{
		   if(windowopen == null){
			var t2 = window.open(thelink + "?PID=" + getURLParam('PID'), '_self');
			exit = false;
		   }
		   else{
			var t2 = window.open(thelink + "?PID=" + getURLParam('PID'), windowopen); 
		   }
	   }
 }
 
 //PID stuffies
function getURLParam( name ){

  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var tmpURL = window.location.href;
  var results = regex.exec( tmpURL );
  if( results == null )
    return "";
  else
    return results[1];
}

function staticLoadScript(url)
{
   document.write('<script src="', url, '" type="text/JavaScript"><\/script>');
}

function SetPartnerID(str)
{
	var partner_id
    if ( getURLParam('id') != '' ){
	    partner_id = getURLParam('id');
    }
    else{
	    partner_id = str;
    }
    if ( getURLParam('PID') != '' ){
	    if (partner_id.indexOf("-") > -1) {
	        partner_id = partner_id + ':' + getURLParam('PID')
        }
        else
        {
	        partner_id = partner_id + '-' + getURLParam('PID')
        }
    }
    return partner_id
}

function checkVal1(newPID){
	var dashLoc = newPID.indexOf(':');
	var sEngine;
	var sTerm;
	var len = newPID.length;
	if (dashLoc > 0){
		sEngine = newPID.substr(0, dashLoc);
		sTerm = newPID.substr(dashLoc + 1, len);
		sTerm = sTerm.substr(0, sTerm.indexOf(':'));
	}
	else{
		//default
	}
	return sTerm;
}

function checkVal2(newPID){
	var dashLoc = newPID.indexOf(':');
	var sEngine;
	var sTerm;
	var len = newPID.length;
	if (dashLoc > 0){
		sEngine = newPID.substr(0, dashLoc);
		sTerm= newPID.substr(dashLoc + 1, len);
	}
	else{
		//default
	}
	return sEngine;
}

function checkVal3(newPID){
	var pidSplit = newPID.split(':');

	return pidSplit[2];
}

function checkVal4(newPID){
	var pidSplit = newPID.split(':');

	return pidSplit[3];
}

//Get Referring URL Domain
function GetRefDomain()
{  
  var referrer = GetReferringPage();
  if (!referrer) {
    return false;
  }
  
  var dashLoc = referrer.indexOf('.');                    //grab the engine from the URL
  var dashLoc2;
  var front;                                                    
  var rest;
  var refDir;
  var len = referrer.length;
  if (dashLoc > 0){
	front = referrer.substr(0, dashLoc);
	rest = referrer.substr(dashLoc + 1, len);
	dashLoc2 = rest.indexOf('.');
	if (dashLoc2 > 0){
		refDir = rest.substr(0, dashLoc2);
	}
  }                                                      //end of said grabbing
  
  /*var queryPrefix = DeterminPreFix(referrer);
  alert("referrer is: " + referrer + "\nqueryPrefix is: " + queryPrefix);
  if (!queryPrefix)
  {
  	return false;
  }
  
  var startPos = referrer.toLowerCase().indexOf(queryPrefix);
  if ((startPos < 0) || (startPos + queryPrefix.length == referrer.length)) {
    return false;
  }
  
  var endPos = referrer.indexOf("&", startPos);
  if (endPos < 0) {
    endPos = referrer.length;
  }
  
  var queryString = referrer.substring(startPos + queryPrefix.length, endPos);

  queryString = queryString.replace(/(%22)(.*?)(%22)/gi, function(x,y,z) {return z.replace(/\+/gi," ")});
  queryString = queryString.replace(/(\")(.*?)(\")/gi, function(x,y,z) {return z.replace(/\+/gi," ")});
  
  queryString = queryString.replace(/%20/gi, ", ");
  queryString = queryString.replace(/\+/gi, ", ");

  queryString = queryString.replace(/%22/gi, "");
  queryString = queryString.replace(/\"/gi, "");
  
  queryString = queryString.replace(/%28/gi, "");
  queryString = queryString.replace(/\(/gi, "");
  
  queryString = queryString.replace(/%29/gi, "");
  queryString = queryString.replace(/\)/gi, "");*/
  
  return refDir;
}

/*function DeterminPreFix(referrerString)
{
      
  if (!referrerString) {
  	return false;
  }
  // used by google, Live (msn), Ask (google), altavista (yahoo), iwon (google)
  else if (referrerString.indexOf("q=") >= 0) 
  {
  	return "q=";
  }
  // used by yahoo,
  else if (referrerString.indexOf("p=") >= 0) 
  {
  	return "p=";
  }
  // used by AOL (google), Netscape (google), Lycos (google)
  else if (referrerString.indexOf("query=") >= 0) 
  {
  	return "query=";
  }
  // dmoz (google)
  else if (referrerString.indexOf("search=") >= 0) 
  {
  	return "search=";
  }
  else
  {
  	return false;
  }
}*/


function DeterminReferringDomain()
{
  var referrerString = GetReferringPage();

  if (!referrerString) {
    return false;
  }
  
  var strSplit = referrerString.split("/");
  
  if (strSplit[2].length == 0) 
  {
  	return "Unknown";
  }
  else
  {
  	return strSplit[2];
  }
  
}

function GetReferringPage()
{
  var referrerString = document.referrer.toLowerCase();

  // Test Values:
  //var referrerString = "http://www.complaints.com/directory/2006/march/21/23.htm";

  return referrerString;
}

//test cookie
var expDays = 90; // number of days the cookie should last

function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
var exp = new Date();
exp.setTime (exp.getTime() - 1);
var cval = GetCookie (name);
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
function amt(){
var count = GetCookie('cjCookie')
if(count == null) {
SetCookie('cjCookie','1')
return 1
}
else {
var newcount = parseInt(count) + 1;
DeleteCookie('cjCookie')
SetCookie('cjCookie',newcount,exp)
return count
}
}
function getCookieVal(offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

function checkCount() {
	var count = GetCookie('cjCookie');
	if (count == null){		//first time visitor
		if (getURLParam('PID') != ""){		//if PID exists
			count = getURLParam('PID');		//set as "cookie"
			SetCookie('cjCookie', count, exp);
		}
		else{
			//count = "";  //if no PID exists
			//SetCookie('cjCookie', count, exp);  //set as "cookie" w/ no PID value
		}
	}
	else{					//return visitor, check PID
		if (!getURLParam('PID')){  
			//if no PID, redirect to page and use their cookie from before to continue tracking
			window.location = "http://www.brighthousespecial.com/index.html?PID=" + GetCookie('cjCookie');
		}
		else{
			//PID exists, update cookie to show new PID
			count = getURLParam('PID');		//set as "cookie"
			SetCookie('cjCookie', count, exp);	
		}
	}
}