function getQueryVariable(variable) { 
   var query = window.location.search.substring(1); 
   var vars = query.split("&"); 
   for (var i=0;i<vars.length;i++) { 
      var pair = vars[i].split("="); 
      if (pair[0] == variable) { 
         return pair[1]; 
      } 
   } 
} 

//return cookie value in cookie c_name.
function RL_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 null
}

//return query value in query string
function RL_getArgs(query,name) {
    var pairs = query.split("&");                 // Break at &.
    var args = new Object();
    for(var i = 0; i < pairs.length; i++) {
        var pos = pairs[i].indexOf('=');          // Look for "name=value".
        if (pos == -1) continue;                  // If not found, skip.
        var argname = pairs[i].substring(0,pos);  // Extract the name.
        var value = pairs[i].substring(pos+1);    // Extract the value.
        value = unescape(value);
        args[argname] = unescape(value);          // Store as a property.
    }
    return args[name];
}

function RL_setCookie (name, value) {
   var argv = RL_setCookie.arguments;
   var argc = RL_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 RL_getJS () {
   var is_reachlocal = 0;
   var rl_tag = 0;
   var scid = getQueryVariable("scid");
   var cid = getQueryVariable("cid");
   var tc = getQueryVariable("tc");

   var tagging_cookie = RL_getCookie('RlocalTag');
   if (tagging_cookie) rl_tag = RL_getArgs(tagging_cookie, 'rl_tag');

   if (typeof(scid) != "undefined" &&
      typeof(cid) != "undefined" &&
      typeof(tc) != "undefined") {
      is_reachlocal = 1;
      RL_setCookie("RlocalTag", "rl_tag=1", null,"/",null,null);
      return is_reachlocal;
   }

   return rl_tag;
}
