var __zAdisemTracker = {
  started: false,
  onUnload: function() {
    __zAdisemTracker.unloaded = false;
    var now = new Date();
    var href = 'https://fr.adisem.com/click_quality/finish_visit/' + __zAdisemTracker.encrypted_id + '?duration=' + (now - __zAdisemTracker.loadedOn) +
 				'&clicks=' + __zAdisemTracker.clicks + '&keys=' + __zAdisemTracker.keys + '&new_visitor=' + __zAdisemTracker.getVisitorCookie() +
				"&new_visit=" + encodeURIComponent(__zAdisemTracker.getCookie('_atnv'));
    var start = new Date();
    __zAdisemTracker.buildScript(href);
    while ((new Date() - start) < 500) ;
    return true;
  },
  start: function(client_id) {
    if (__zAdisemTracker.started) return;
    __zAdisemTracker.started = true;

    __zAdisemTracker.referrer = document.referrer;
    __zAdisemTracker.loadedOn = new Date();
    __zAdisemTracker.clicks = __zAdisemTracker.keys = 0;
    __zAdisemTracker.addEvent(window, 'unload',__zAdisemTracker.onUnload);
    __zAdisemTracker.addEvent(document, 'keydown',__zAdisemTracker.onKey);
    __zAdisemTracker.addEvent(document, 'click',__zAdisemTracker.onClick);
    var href='https://fr.adisem.com/click_quality/start_visit/' + client_id + '?visit_id=' +  __zAdisemTracker.getCookie('_atv')+ "&referrer=" +
 				encodeURIComponent(document.referrer) + "&uri="+ encodeURIComponent(window.location.href) + '&new_visitor=' + __zAdisemTracker.getVisitorCookie() +
				"&new_visit=" + __zAdisemTracker.getCookie('_atnv');
    __zAdisemTracker.buildScript(href);
  },
  onKey: function(e) {
    __zAdisemTracker.keys += 1;
    return true;
  },
  onClick: function(e) {
    __zAdisemTracker.clicks += 1;
    return true;
  },
  addEvent: function (obj, type, fn ) {
    if (obj.addEventListener) {
      obj.addEventListener( type, fn, false );
    } else if (obj.attachEvent) {
      obj["e"+type+fn] = fn;
      obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
      obj.attachEvent( "on"+type, obj[type+fn] );
    } else {
      obj["on"+type] = obj["e"+type+fn];
    }
  },
  buildScript: function(href) {
    var element = document.createElement('script');
    element.type = 'text/javascript';
    element.src = href;
    document.getElementsByTagName('head')[0].appendChild(element);
  },
  getCookie: function(name) {
    var dc = document.cookie;
    var entries = dc.split("; ");
    name += "=";
    for (var i = entries.length; --i >= 0; ) {
      if (entries[i].indexOf(name) == 0) {
        return unescape(entries[i].substring(name.length));
      }
    }
    return "";
  },
  getVisitorCookie: function() {
	return __zAdisemTracker.getCookie('_atvtor') || __zAdisemTracker.getCookie('_atvtort');
  },
  setCookie: function(name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
    document.cookie = curCookie;
  },
  setVisit: function(encrypted_id) {
    __zAdisemTracker.encrypted_id = encrypted_id;
    __zAdisemTracker.setCookie('_atv', encrypted_id, null, '/');
  },
  setNewVisit: function(newVisitor, newVisit) {
		var expirationDate = new Date();
		expirationDate.setTime(expirationDate.getTime()+(60*24*60*60*1000));
//		__zAdisemTracker.setCookie('_atvtor', newVisitor, expirationDate);
		__zAdisemTracker.setCookie('_atvtor', newVisitor, expirationDate, '/');
//		__zAdisemTracker.setCookie('_atvtort', newVisitor);
		__zAdisemTracker.setCookie('_atvtort', newVisitor, null, '/');
		__zAdisemTracker.setCookie('_atnv', newVisit, null, '/');
//		__zAdisemTracker.setCookie('_atnv', newVisit);
  }
}
__zAdisemTracker.start('cd0dc3f0f2a636bba49ec7086ee06921');
