 function linkage(thelink, windowopen, specialprop){
	   if(specialprop == "true"){
		   var tl = window.open(thelink + "?PID=" + getURLParam('PID'), windowopen, 'top=10,left=20,scrollbars=yes,width=690,height=500,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 pidSplit = newPID.split(':');

	return pidSplit[1];
}

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

	return pidSplit[0];
}

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;
}