function parseURL(url)
{
  var a = document.createElement('a');
  a.href = url;
  return {
    source: url,
    protocol: a.protocol.replace(':', ''),
    host: a.hostname,
    port: a.port,
    query: a.search
  };
}


function setCookie(c_name, value, expiredays)
{
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + expiredays);
  document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}


function querySt(ji)
{
  hu = window.location.search.substring(1);
  gy = hu.split("&");
  for (i = 0; i < gy.length; i++)
  {
    ft = gy[i].split("=");
    if (ft[0] == ji)
    {
      return ft[1];
    }
  }

  return null;
}


function getCookie(c_name)
{
  if (document.cookie.length > 0)
  {
    c_start = document.cookie.indexOf(c_name + "=");
    if (c_start != -1)
    {
      c_start = c_start + c_name.length + 1;
      c_end = document.cookie.indexOf(";", c_start);
      if (c_end == -1) c_end = document.cookie.length;
      return unescape(document.cookie.substring(c_start, c_end));
    }
  }
  return "";
}

function set_leadsource()
{
  var src;
  var cookieLeadSource = getCookie("LeadSource");
  if (cookieLeadSource == "")
  {
    var ls = querySt("ls");
    var qrysrc = querySt("source");
    if (ls)
    {
      setCookie("LeadSource", ls, 10000);
      return ls;
    }
    else if (qrysrc)
    {
      setCookie("LeadSource", qrysrc, 10000);
      return qrysrc;
    }
    else
    {
      var info = parseURL(document.referrer);
      setCookie("LeadSource", info.host, 10000);
      return info.host;
    }
  }
  else
    return cookieLeadSource;
}


function set_referer_url()
{
  var cookieReferer = getCookie("Referer");
  if (cookieReferer == "")
	{
    setCookie("Referer", document.referrer, 10000);
    return document.referrer;
	}
	else
	{
		return cookieReferer;
	}
}



function set_cookie_from_google()
{
  var utmz = getCookie('__utmz');
  //utmz = '113869458.1247569677.11.10.utmcsr=infusionblog.com|utmccn=(referral)|utmcmd=referral|utmcct=/company-info/infusion-crm-and-analytics/';
  var holder = /[^u](u.*)/.exec(utmz);

	if(!holder || holder.length == 0)
	{ alert("holder not set");
 		 return;
	}


	var string = holder[1];
  var ga_vars = string.split("\|");
  var type, keywords;

  for (var i = 0; i < ga_vars.length; i++)
  {
    key_value = ga_vars[i].split("=");
    if (key_value[0] == "utmcmd")
    {
      setCookie("Type", key_value[1], 10000);
      type = key_value[1];
    }
    if (key_value[0] == "utmctr")
    {
      setCookie("Keywords", key_value[1], 10000);
      keyword = key_value[1];
    }
  }
}


function presetvalues() {
   set_cookie_from_google();
   var scrap1 = set_leadsource();
   var scrap5 = set_referer_url();
}

function setvalues() {
   //set_cookie_from_google();
   document.forms[0].elements['Contact0_LeadSource2'].value = set_leadsource();
   document.forms[0].elements['Contact0_LinkType'].value = getCookie('Type');
   document.forms[0].elements['Contact0_Keywords'].value = getCookie('Keywords');
   document.forms[0].elements['Contact0_FormUrl'].value = window.location.href;
   document.forms[0].elements['Contact0_ReferringURL'].value = set_referer_url();
}


