var goValue = GetCookie('markitquest');
var gsDod = "";
var gsAid = "";
var gsRef = "";
var gsCSP = "";
var gsCGP = "";
 
//get the "src" value  
var src = QueryStrValue("AID");

if (goValue == null) {
  if (src != null && src != "" && document.referrer != ""){
	setCookieVal('markitquest',src,true,"");  
  }
}
else{
  var d = new Date();
  d.setTime(QueryStrValue("DOD",unescape(goValue)));	
  gsDod = d.toGMTString();
  gsAid = QueryStrValue("AID",unescape(goValue)); 	
  gsRef = QueryStrValue("REF",unescape(goValue));
  gsCSP = QueryStrValue("CSP",unescape(goValue));	
  gsCGP = location.href;
}

function QueryStrValue(varname){
       var argv = QueryStrValue.arguments;
       var argc = QueryStrValue.arguments.length;
        
       if(argc < 1)return "";

       var s;
       //var re = new RegExp(varname + "=([A-Za-z0-9_-\s:/.]{1,30})(?:%26|[\?]*|&)","gi");
       var re = new RegExp(varname + "=([A-Za-z0-9_\s:/\.,-]{1,255})","gi");

       var str = (argc > 1) ? argv[1] : location.search;
	 
       var arr = str.match(re); 

       if(arr != null){
	  s = RegExp.$1;	
       }
       else{
	 s = "";  
       }			

       if(s == null)s = "";

       return(s); 
}
   			

function setCookieVal (name,source,Settime,cvalue){
    var d = new Date ();
    var value = "";
    
    if(Settime == true)
    {		
      value += "DOD=";
      value +=d.setTime(d.getTime());
    }
    else
    {
       value += cvalue; 
    }
    
    if(source != "")
    {
       value += "&AID=" + source;

       //add the referrer
       value += "&REF=" + document.referrer;
    }

    //add the current page location
    value += "&CSP=" + location.href;
     		

    pathname = "/";
    myDomain = location.hostname; 
    
    // set expiry date to 90 from now.
    var largeExpDate = new Date ();
    largeExpDate.setTime(largeExpDate.getTime() + (90 * 24 * 3600 * 1000));
    SetCookie(name,value,largeExpDate.toGMTString(),pathname);//,myDomain);
}

function getCookieVal (offset) {
   var endstr = document.cookie.indexOf (";", offset);
   if (endstr == -1)
      endstr = document.cookie.length;
   return unescape((unescape(document.cookie)).substring(offset, endstr));
}
 
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 ((unescape(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("?") + escape (value) + ((expires == null) ? "" : ("; expires=" +
expires)) +
                ((path == null) ? "" : ("; path=" + path)) +
                ((domain == null) ? "" : ("; domain=" + domain)) +
                ((secure == true) ? "; secure" : "");
}