function getParamsArray(paramStr) {
  var par = /(\w+\=[\w\d:/.]*)/gi;
  return paramStr.match(par);
}

function getParams(paramStr) {
  var wf = bf = df = false;
  var res = "";
  var pars = getParamsArray(paramStr);
  if(pars) {
    for(var i=0; i<pars.length; i++) {
      if((pars[i].substring(0,2) == "w=" && !wf) || (pars[i].substring(0,2) == "b=" && !bf) || (pars[i].substring(0,2) == "d=" && !df))
        res += (res.length != 0 ? "&" : "") + pars[i];
      if(pars[i].substring(0,2) == "w=" && !wf) wf = true;
      if(pars[i].substring(0,2) == "b=" && !bf) bf = true;
      if(pars[i].substring(0,2) == "d=" && !df) df = true;
    }
  }
  return res;
}

function getRefAddr() {
  return encodeURIComponent(document.referrer);

  var dr = document.referrer.split('?');
  if(dr && dr.length != 0)
    return dr[0];
  else
    return "";
}

function getBeloeb(vk) {
  var varer = vk.split(';');
  var sum = 0;
  for(var i = 2; i < varer.length; i+=3) {
    sum += parseFloat(varer[i].replace(".","").replace(",","."));
  }
  return sum;
}

function registrerSalg(ordreid,kurv) {
  var p = getParams(document.cookie);
  var beloeb = getBeloeb(kurv);
  
  if(p.length != 0) {
      document.write('<' + 'script type="text/javascript" ');
      document.write('src="http://partner.notebookonline.dk/regsalg.aspx');
      document.write('?' + p + '&o=' + ordreid + '&v=' + beloeb + '">');
      document.write('<' + '/script' + '>');
  }
}

function registrerNavigation() {
  var webref = false; 
  var owndom = (document.referrer.indexOf(window.location.protocol + "//" + window.location.host) == 0);
  var params = "";
  if(owndom) {
    webref = (/(^|;[\s]*)w=\d+($|;)/gi).test(document.cookie);
    params = getParams(document.cookie);
  }
  else {
    webref = (/(^|\?|\&)w=\d+($|\&)/gi).test(window.location.search);
    params = getParams(window.location.search.substr(1));
  }

  if(webref) {
    var pa = null;
    if(!owndom)
        pa = getParamsArray(window.location.search);
    else
        pa = getParamsArray(document.cookie);
    if(pa) {
      var dt = new Date();
      dt.setTime(dt.getTime()+1000*60*20); // indstil til om 20 minutter
      var gotDomain = false;
      var wf = bf = false;
      for(var i=0; i<pa.length; i++) {
        if(pa[i].substring(0,2) == "w=" && !wf) {
          wf = true;
          document.cookie = pa[i] + ";expires=" + dt.toUTCString();
        }
        if(pa[i].substring(0,2) == "b=" && !bf) {
          bf = true;
          document.cookie = pa[i] + ";expires=" + dt.toUTCString();
        }
        if(pa[i].substring(0,2) == "d=" && !gotDomain) {
          gotDomain = true;
          document.cookie = pa[i] + ";expires=" + dt.toUTCString();
        }
      }
      if(!gotDomain) {
        // dom?net var ikke angivet, s? derfor inds?ttes det 
        // aktuelle dom?ne i cookie og i parameterstrengen
        document.cookie = "d=32;expires=" + dt.toUTCString();
        params = "d=32&" + params;
      }
    }

    document.write('<' + 'script type="text/javascript" ');
    document.write('src="http://partner.notebookonline.dk/regnav.aspx');
    document.write('?' + params + '&ref=' + getRefAddr() + '">');
    document.write('<' + '/script' + '>');
  }
}

function navigateHop(obj) {
  if(obj && obj.tagName.toLowerCase() == "a") {
    if(!obj.patched) {
      var hopParams = getParams(document.cookie);
      obj.href += (obj.href.indexOf("?") == -1 ? "?" : "&") + hopParams;
      obj.patched = true;
    }
  }
}

