function cookie_setzen() {
  var anzParameter = cookie_setzen.arguments.length;
  var parameter = cookie_setzen.arguments;
  // 1. Cookiename
  var name = parameter[0];
  // 2. Cookiewert
  var value = (anzParameter >= 2) ? parameter[1] : "";
  value = escape(value); // URL-Kodierung
  // 3. Haltbarkeitsdatum
  var expires = (anzParameter >= 3) ? parameter[2] : null;
  if (expires != null) 
    if (expires.toGMTString)
      expires = expires.toGMTString();
  // 4. Domain
  var domain = (anzParameter >= 4) ? parameter[3] : null;
  // 5. Pfad
  var path = (anzParameter >= 5) ? parameter[4] : null;
  if (path != null) 
    path = escape(path); // Sonderzeichen umwandeln
  // 6. Sicherheitsstufe
  var secure = (anzParameter >= 6) ? parameter[5] : null;
  // Zusammensetzen des Cookies
  var c = name + "=" + escape(value);
  if (expires != null) 
    c += "; expires=" + expires;
  if (domain != null) 
    c += "; domain=" + domain;
  if (path != null) 
    c += "; path=" + path;
  if (secure) 
    c += "; secure";
  // Cookie setzen
  document.cookie = c;
}
function cookie_lesen(name) {
  var i = document.cookie.indexOf(name + "=");
  var c = "";
  if (i > -1) {
    var ende = document.cookie.indexOf("; ",
               i+name.length+1);
    if (ende == -1)
      ende = document.cookie.length;
    c = document.cookie.substring(i+name.length+1, ende);
  }
  return unescape(c);
}
function cookie_loeschen() {
  var anzParameter = cookie_loeschen.arguments.length;
  var parameter = cookie_loeschen.arguments;
  // 1. Cookiename
  var name = parameter[0];
  // 2. Domain
  var domain = (anzParameter >= 2) ? parameter[1] : null;
  // 3. Pfad
  var path = (anzParameter >= 3) ? parameter[2] : null;
  if (path != null)
    path = escape(path); // Sonderzeichen umwandeln
  // 4. Sicherheitsstufe
  var secure = (anzParameter >= 4) ? parameter[3] : null;
  // Haltbarkeitsdatum
  var expires = new Date(1977, 0, 1, 0, 0, 1);
  // Aufruf von cookie_setzen
  cookie_setzen(name, "", expires, domain, path, secure);
}
function cookie_support() {
  cookie_setzen("testcookie", "ok");
  if (cookie_lesen("testcookie") == "ok") {
    cookie_loeschen("testcookie");
    return true;
  } else {
    return false;
  }
}
function cookie_support_redirect(ja, nein) {
  if (cookie_support())
    location.href = ja;
  else
    location.href = nein;
}
function cookie_lesen_array() {
  var dc = document.cookie; 
  var c = new Array();
  var name, wert;
  while (dc.indexOf("=") > -1) {
    var i = dc.indexOf("=");
    name = dc.substring(0, i);
    wert = cookie_lesen(name);
    c[name] = wert;
    if (dc.indexOf("; ")>0) 
      dc = dc.substring(dc.indexOf("; ")+2, 
                        dc.length);
    else
      dc = "";
  }
  return c;
}
function cookie_laden_collection() {
  var str = cookie_lesen("daten");
  str = unescape(str);
  var temp = new Array();
  // Daten aus Cookie in Array umwandeln
  if (str != "") {
    str = str.replace(/,/g, "\",\""); 
    str = "\"" + str + "\"" 
    eval("temp = [" + str + "]");
  }
  // assoziatives Array erstellen
  var c = new Array();
  for (var i=0; i<temp.length; i+=2) 
    c[temp[i]] = temp[i+1];
  // Array zurückgeben
  return c;
}

function cookie_lesen_collection(name) {
  var c = cookie_laden_collection();
  return c[name];
}

function cookie_speichern_collection(c) {
  var temp = new Array();
  for (var e in c) {
    temp[temp.length]=e;
    temp[temp.length]=c[e];
  }
  cookie_setzen("daten", temp.toString());
}

function cookie_schreiben_collection(name, wert) {
  var c = cookie_laden_collection();
  c[name] = wert;
  cookie_speichern_collection(c);
}
function update(f) {
  for (var i=0; i<f.elements.length; i++)
    if (f.elements[i].type == "text" &&
      f.elements[i].name.substring(0, 6) == "anzahl") {
      var nr = f.elements[i].name.substring(6, 
               f.elements[i].name.length);
      var anzahl = f.elements[i].value;
      anzahl = parseInt(0 + anzahl);
     warenkorb_editieren_cookies(nr, anzahl);
    }
  location.reload();
}