/*
  project: www.inmedias.de
  type: javascript
  description: creates and reads cookies, adds and identifies events
  first edited: 14.04.2003, Stefan Heimann
  last edited: 17.06.2005, Bernd Schnabel
  note: based on a javascript from Netscape DevEdge, http://devedge.netscape.com/
*/


/* binding onload event to function */
addEvent(window, 'load', init);


function createCookie(name, value, days, useLang) {
  var langString = useLang ? getLang() : "";
  var cookie = name + langString + "=" + value + ";";

  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    cookie += " expires=" + date.toGMTString() + ";";
  }
  cookie += " path=/";

  document.cookie = cookie;
}


function readCookie(name, useLang) {
  var langString = useLang ? getLang() : "";

  var nameEQ = name + langString + "=";
  var ca = document.cookie.split(';');

  for(var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1, c.length);
    }

    if (c.indexOf(nameEQ) == 0) {
      return c.substring(nameEQ.length, c.length);
    }
  }
  return null;
}


function getLang() {
  var langString = "";

  if (document.documentElement){
    langString = document.documentElement.lang;
    if (langString != ""){
      langString = "-" + langString;
    }
  }  
  return langString;
}


/* Thanks to Scott Andrew */
function addEvent(obj, evType, fn) {
    if (obj.addEventListener) {
        obj.addEventListener(evType, fn, false);
        return true;
    } else if (obj.attachEvent) {
        var r = obj.attachEvent("on"+evType, fn);
        return r;
    } else {
        return false;
    }
}


function identifyEvent(evt) {
  var evtId;

  if (!evt.srcElement) {
    evtId = evt.target.id;
  }
  else {
    evtId = evt.srcElement.id;  
  }

  return evtId;
}
