
var msgs = [

{'url':null,'msg':'Thank you for visiting the Contract Logix Website.', 'site':'Contract Logix Direct', 'urlEasy':'http://www.contractlogix.com'}
,{'url':/^http:\/\/(\w+\.)?google\.com/,'msg':'Welcome! Thanks for visiting from Google', 'site':'Google', 'urlEasy':'http://www.google.com'}
,{'url':/^http:\/\/(\w+\.)?dzone\.com/,'msg':'Welcome! Thanks for visiting from DZone', 'site':'DZone', 'urlEasy':'http://www.dzone.com'}
,{'url':/^http:\/\/(\w+\.)?digg\.com/,'msg':'Welcome! Thanks for visiting from DIGG', 'site':'DIGG', 'urlEasy':'http://www.digg.com'}
,{'url':/^http:\/\/(\w+\.)?propeller\.com/,'msg':'Welcome! Thanks for visiting from Propeller', 'site':'Propeller', 'urlEasy':'http://www.propeller.com'}
,{'url':/^http:\/\/(\w+\.)?yahoo\.com/,'msg':'Welcome! Thanks for visiting from Yahoo', 'site':'Yahoo', 'urlEasy':'http://www.yahoo.com'}
,{'url':/^http:\/\/(\w+\.)?msn\.com/,'msg':'Welcome! Thanks for visiting from MSN', 'site':'MSN', 'urlEasy':'http://www.msn.com'}
,{'url':/^http:\/\/(\w+\.)?bing\.com/,'msg':'Welcome! Thanks for visiting from Bing', 'site':'Bing', 'urlEasy':'http://www.bing.com'}
,{'url':/^http:\/\/(\w+\.)?capterra\.com/,'msg':'Welcome! Thanks for visiting from Capterra', 'site':'Capterra Network', 'urlEasy':'http://www.capterra.com'}
,{'url':/^http:\/\/(\w+\.)?thesoftwarenetwork\.com/,'msg':'Welcome! Thanks for visiting from The Software Network', 'site':'Software Network', 'urlEasy':'http://www.thesoftwarenetwork.com'}
,{'url':/^http:\/\/(\w+\.)?contractlogix\.com/,'msg':'Welcome! Thanks for visiting from Contract Logix', 'site':'Contract Logix Direct', 'urlEasy':'http://www.contractlogix.com'}
,{'url':/^http:\/\/(\w+\.)?twitter\.com/,'msg':'Welcome! Thanks for visiting from Twitter', 'site':'Twitter', 'urlEasy':'http://www.twitter.com'}
,{'url':/^http:\/\/(\w+\.)?facebook\.com/,'msg':'Welcome! Thanks for visiting from Facebook', 'site':'Facebook', 'urlEasy':'http://www.facebook.com'}
,{'url':/^http:\/\/(\w+\.)?business\.com/,'msg':'Welcome! Thanks for visiting from Business.com', 'site':'Business.com', 'urlEasy':'http://www.business.com'}
,{'url':/^http:\/\/(\w+\.)?linkedin\.com/,'msg':'Welcome! Thanks for visiting from LinkedIn', 'site':'LinkedIn', 'urlEasy':'http://www.linkedin.com'}

//You must keep it at the end of the list as it will match any non empty referrer
,{'url':/^http:\/\//,               'msg':'Hello. Thanks for visiting the website.', 'site':'Unknown Referrer'}
];
function DetectReferrer(){

   var ref = document.referrer.toLowerCase();
   
   //var ref = "http://blog.contractlogix.com/index.html?GLC=FGHFYF234234234234j"
   var url = findUrl(ref);
   var site = findSite(ref);
   var msg = findMatch(ref);
   var urlEasy = findUrlEasy(ref);
   
   	var qsParm = new Array();
	function qs() {
	
	var query = window.location.search.substring(1);
	var parms = query.split('&');
	
	for (var i=0; i<parms.length; i++) {
	var pos = parms[i].indexOf('=');
	
	if (pos > 0) {
		var key = parms[i].substring(0,pos);
		var val = parms[i].substring(pos+1);
		qsParm[key] = val;
	}
  }
} 
   qs();
   
 
 if (site == "Google"){
    var queryParm = new Array();
	function queryS() {
	
	var query = document.referrer.toLowerCase();
	var parms = query.split('&');
	
	for (var i=0; i<parms.length; i++) {
	var pos = parms[i].indexOf('=');
	
	if (pos > 0) {
		var key = parms[i].substring(0,pos);
		var val = parms[i].substring(pos+1);
		queryParm[key] = val;
	}
  }
} 
   queryS();
 }
   
   
   
    
  if (site == "Yahoo"){ 
		var queryParm_Yahoo = new Array();
		function queryS_Yahoo() {

	   var the_string = document.referrer.toLowerCase();
	   var parts = the_string.split('?', 2); 
	   var urlStart = parts[0]; 
	   var urlQuerystring  = parts[1];
	   var query = urlQuerystring;
	   var parms = query.split('&');
		
		for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		
		if (pos > 0) {
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			queryParm_Yahoo[key] = val;
		}
	  }
	} 
	queryS_Yahoo();
}

  if (site == "Bing"){ 
		var queryParm_Bing = new Array();
		function queryS_Bing() {

	   var the_string = document.referrer.toLowerCase();
	   var parts = the_string.split('?', 2); 
	   var urlStart = parts[0]; 
	   var urlQuerystring  = parts[1];
	   var query = urlQuerystring;
	   var parms = query.split('&');
		
		for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		
		if (pos > 0) {
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			queryParm_Bing[key] = val;
		}
	  }
	} 
	queryS_Bing();
}

    var organic ="";
	//var referringQueryString = document.referrer.toLowerCase();
	var referringKeywords ="";
	
	if (site == "Google" && qsParm['GLCID']=="" || site == "Google" && qsParm['GLCID']==null){
		organic = "Organic Search";
		referringKeywords = queryParm['q'];
	}
	
	if (site == "Google" && qsParm['GLCID']>""){
		organic = "Pay Per Click";
		referringKeywords = queryParm['q'];
	}
	
	if (site == "Yahoo"){
		referringKeywords = queryParm_Yahoo['p'];
		organic = "Organic Search";
	}
	
	if (site == "Bing"){
		referringKeywords = queryParm_Bing['q'];
		organic = "Organic Search";
	}
	
   	var tReferringKeywords = referringKeywords.replace(/%20/gi, ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	tReferringKeywords = tReferringKeywords.replace('+', ' ');
	

   if(readCookie('referringSite')=="" || readCookie('referringSite')==null) {
	  $("#referringURL2").val(site + '  ' + urlEasy + '  ' + organic + '  ' + tReferringKeywords);
	  $("#referringURL").val(site + '  ' + urlEasy + '  ' + organic + '  ' + tReferringKeywords);
	  //$("#referringURL_Info").html("key: " + tReferringKeywords);
	   
	  createCookie('referringSite',site,7)
	  createCookie('referringUrlEasy',urlEasy,7)
	  createCookie('referringOrganic',organic,7)
	  createCookie('referringQueryString',tReferringKeywords,7)
	  
   } else {
   		var referralStored = readCookie('referringSite') + " | " + readCookie('referringUrlEasy') + " | " + readCookie('referringOrganic') + " | " + readCookie('referringQueryString')
		var querystring_2 = readCookie('referringQueryString')
		
		if (referralStored) {
			$("#referringURL2").val(referralStored);
			$("#referringURL").val(referralStored);
			//$("#referringURL_Info").html("key: " + querystring_2);
		}
	}
}

function findMatch(ref) {
   for(var i=0; i<msgs.length; i++)
      if( ( ref=='' && msgs[i].url==null) || (ref>'' && ref.match(msgs[i].url) ) )
         return msgs[i].msg;
   return null;
}

function findSite(ref) {
   for(var i=0; i<msgs.length; i++)
      if( ( ref=='' && msgs[i].url==null) || (ref>'' && ref.match(msgs[i].url) ) )
         return msgs[i].site;
   return null;
}

function findUrl(ref) {
   for(var i=0; i<msgs.length; i++)
      if( ( ref=='' && msgs[i].url==null) || (ref>'' && ref.match(msgs[i].url) ) )
         return msgs[i].url;
   return null;
}
function findUrlEasy(ref) {
   for(var i=0; i<msgs.length; i++)
      if( ( ref=='' && msgs[i].url==null) || (ref>'' && ref.match(msgs[i].url) ) )
         return msgs[i].urlEasy;
   return null;
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

$(DetectReferrer);

$(document).ready(function(){
	//$.fn.popOpen = function(){
		
		//var popID = "referral_site"; //Get Popup Name
		//var popURL = "#?w=500"; //Get Popup href to define size
		
		//Pull Query & Variables from href URL
		//var query= popURL.split('?');
		//var dim= query[1].split('&');
		//var popWidth = dim[0].split('=')[1]; //Gets the first query string value
		
		
		//Fade in the Popup and add close button
		//$('#' + popID).fadeIn().css({ 'width': Number( popWidth ) }).prepend('<a href="#" class="close_pop"><img src="images/minus_red_24.png" class="btn_close_pop" title="Close Window" alt="Close" /></a>');
		
		//Define margin for center alignment (vertical + horizontal) - we add 80 to the height/width to accomodate for the padding + border width defined in the css
		//var popMargTop = ($('#' + popID).height() + 80) / 2;
		//var popMargLeft = ($('#' + popID).width() + 80) / 2;
		
		//Apply Margin to Popup
		//$('#' + popID).css({ 
			//'margin-top' : -popMargTop,
			//'margin-left' : -popMargLeft
		//});
		
		//Fade in Background
		//$('body').append('<div id="fade"></div>'); //Add the fade layer to bottom of the body tag.
		//$('#fade').css({'filter' : 'alpha(opacity=80)'}).fadeIn(); //Fade in the fade layer 
		
	//};
 
	//When you click on a link with class of poplight and the href starts with a # 
	//$('a.poplight[href^=#]').click(function() {
		//$(this).popOpen(); //Run popOpen function on click
		//return false;
	//});
	
	//$('a.poplight[href=#?w=350]').popOpen(); //Run popOpen function once on load
	
	//Close Popups and Fade Layer
	//$('a.close_pop, #fade').live('click', function() { //When clicking on the close or fade layer...
	  	//$('#fade , .popup_block').fadeOut(); //fade them both out
		//$('#fade').remove();
		//return false;
	//});
 
 //$('#referral_site').popOpen();
	//popOpen
	
});







