function GetBestNr(nr) { var abc = "xABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
	var a = eval(listenr), bestnr = abc.charAt(a), b = eval(nr+1); 
	a = Math.floor(b/100);
 	b -= 100*a; 
	bestnr += a; 
	a = Math.floor(b/10); 
	b -= 10*a; 
	bestnr = bestnr + a + b; 
  return bestnr; 
} 


function GetLenBestNr(txt) { 
	var txt2 = "Art.Nr.A123: "; 
	var x = txt2.length; 
	if (txt.charAt(12) == ":") x++; 
	return x; 
} 


function EntfBestNr(txt) { 
	var x = GetLenBestNr(txt);
	return txt.substring(x, txt.length); 
}


var BROWSER_NAME = GetBrowser();


function GetBrowser() { 
	var txt = navigator.appName; 
 	if (txt.indexOf("Microsoft") >= 0) return("Microsoft");
  	if (txt.indexOf("Netscape") >= 0) { 
		txt = navigator.userAgent; 
		if (txt.indexOf("Opera") >= 0) return("Opera"); 
		return("Netscape"); 
	}
	return txt;
} 


function GetShopPath() {
	var pfad = "" + location.href; 
	var x = pfad.lastIndexOf("/"); 
	if (x<0) return pfad; 
	pfad = pfad.substring(0, x+1); 
	x = pfad.lastIndexOf("/listen/");
	 if (x<0) return pfad; 
 	return pfad.substring(0, x+1);
} 
  
  
function ReadCookie(cookie_name) { 
	if (! document.cookie) return ""; 
	var cookie_string = document.cookie; 
	var cookie_array = cookie_string.split(";");
	var array_size = cookie_array.length; 
	var cookie_teile;
	var i = 0; for(i = 0; i < array_size; i++) { 
		cookie_teile = cookie_array[i].split("="); 
	   if(cookie_teile[0].substring(0, 1) == " ") cookie_teile[0] = cookie_teile[0].substring(1, cookie_teile[0].length); 
		if(cookie_teile[0] == cookie_name) if (cookie_teile.length > 1) return unescape(cookie_teile[1]); 
	}
	return ""; 
}


function WriteCookie(Bezeichner, Wert, Verfall) {
	var jetzt = new Date(),	Auszeit = new Date(jetzt.getTime() + Verfall); 
	document.cookie = Bezeichner+"="+ escape(Wert) + "; expires="+Auszeit.toGMTString()+";"; 
	if (Bezeichner != "Artikel") return true; 
	// var test = "" + ReadCookie(Bezeichner); if (test == Wert) return true; NoCookie(); return false; 
 } 
 

function WriteArtikel(txt){ 
	var Verfallszeit = 1000*60*60*24*30, anzahl = ReadAnzahl(), artikel_array = "";
	if (anzahl > 0) artikel_array = ReadCookie("Artikel"); 
	artikel_array = artikel_array + "#*#" + txt; 
	if (WriteCookie("Artikel", artikel_array, Verfallszeit) == false) return false; 
	anzahl++; 
	WriteAnzahl(anzahl); 
	return true;
}


function ReadArtikel(nr) { 
	var cookie_array = ReadCookie("Artikel"); var anzahl = ReadAnzahl(); 
	if (nr > anzahl) return ""; 
	var n; var x; 
	for (n=0; n <= nr; n++) { 
		x = cookie_array.indexOf("#*#"); 
		if (x<0) break; cookie_array = cookie_array.substring(x+3, cookie_array.length); 
	} 
	x = cookie_array.indexOf("#*#"); 
	if (x >= 0) cookie_array = cookie_array.substring(0, x); 
	return cookie_array; 
} 
	
	
function DeleteArtikelFromCookie(nr) { 
	var anzahl = ReadAnzahl(); 
	if (nr > anzahl) return; 
	var Verfallszeit = 1000*60*60*24*30, cookie_array = ReadCookie("Artikel"), temp_array = "", n,x; 
	for (n=0; n < nr; n++) { 
		temp_array = temp_array + "#*#" + ReadArtikel(n); 
	} 
	for (n=nr+1; n < anzahl; n++) {
		temp_array = temp_array + "#*#" + ReadArtikel(n);
	} 
	WriteCookie("Artikel", temp_array, Verfallszeit); 
	anzahl--; 
	WriteAnzahl(anzahl); 
} 


function GetValue(nr) {
	var wert = ""; 
	if (document.Formular.elements[nr].value) {
		wert = document.Formular.elements[nr].value; 
	} else { 
		var ec = document.Formular.elements[nr].checked; 
		document.Formular.elements[nr].checked=true; 
		if (document.Formular.elements[nr].value) wert = document.Formular.elements[nr].value; 
		document.Formular.elements[nr].checked=ec; 
	} 
	return wert; 
}

function Best(nr, flag) {
	var Anzahl = ReadAnzahl(); 
	if (flag==1) { 
		window.focus(); 
		if (!(document.Formular.elements[nr].checked)) { 
			if (ArtInWk(nr)) { 
				document.Formular.elements[nr].checked = true; 
			} 
		} else { 
			document.Formular.elements[nr].checked = false; flag=0; 
		} 
	}
	 
	if (flag==0) {
		if (document.Formular.elements[nr].checked) { 
			if (ArtInWk(nr) == false) document.Formular.elements[nr].checked = false; 
		} else { 
			var anzahl = ReadAnzahl(), nr2 = -1, name1, wert1, n,x, wert2 = GetValue(nr); 
			for (n=0; n<anzahl; n++) {
				wert1 = ReadArtikel(n); 
				x = wert1.indexOf("#"); 
				if (x>=0) wert1=wert1.substring(x+1, wert1.length); 
				wert1 = EntfBestNr(wert1); 
				if (wert1 == wert2) { 
					nr2=n; break; 
				} 
			} 
			if (nr2>-1) ArtAusWK(nr2); 
		}
	}
} 


function WriteAnzahl(zahl) { 
	var Verfallszeit = 1000*60*60*24*30; 
	WriteCookie("Anzahl", zahl, Verfallszeit); 
} 


function ReadAnzahl() { 
	var txt = ReadCookie("Anzahl"), zahl = 0; 
	if (txt != "") zahl = parseInt(txt); 
	return zahl; 
}


function ArtInWk(nr) {
	var anzahl = ReadAnzahl(), wert = GetValue(nr);
	if (wert == "") {
		alert("Pardon! Ein Programmfehler ist aufgetreten: Der Bestelltext kann leider nicht ausgelesen werden!\nSie können aber die Artikel im Bestellformular in das Feld für zusätzliche Mitteilungen eintragen, oder uns Ihre Bestellung per E-Mail schicken."); 
		return false; 
	} 
	var bestnr = GetBestNr(nr); 
	wert = nr + "#Art.Nr." + bestnr + ": " + wert; 
	return WriteArtikel(wert);
} 


function ArtAusWK(nr) { 
	var anzahl = ReadAnzahl(); 
	if (nr >= anzahl) return; 
	if (nr < 0) return; 
	DeleteArtikelFromCookie(nr); 
} 


function SetCheckBoxes() {
	top.document.title = document.title; 
	if (BROWSER_NAME == "Opera") return; 
	var elements = document.Formular.length, n, anzahl = ReadAnzahl(); 
	if (anzahl < 1) { 
		document.Formular.reset(); return;
	} 
	
	var artikel, nr = 0, x = 0; 
	for (n=0; n<anzahl; n++) { 
		artikel = ReadArtikel(n); 
		x = artikel.indexOf("#"); 
		nr = 0; 
		if (x>=0) { 
			nr = Math.round(artikel.substring(0, x)); 
			artikel = artikel.substring(x+1, artikel.length); 
			artikel = EntfBestNr(artikel); 
		} 
		if (elements > nr) {
			if (GetValue(nr) == artikel) { 
				document.Formular.elements[nr].checked = true; 
				document.Formular.elements[nr].defaultChecked = true;
			}
		}
	} 
	document.Formular.reset(); 
}




function ClearWK(wk_flag) { 
	var Verfallszeit = 1000*60*60*24*30; 
	WriteAnzahl(0); 
	WriteCookie("Artikel", "", Verfallszeit);
	if (wk_flag == 1) location.reload(); 
} 


function DeleteArtikel(nr, wk_flag) {
	ArtAusWK(nr); 
	if (wk_flag == 1) location.reload();
}



