/*
--------------------------------------------------
shop to date

Autor:    Thomas Müller
          MultiMüller GmbH
Datei:    shop2date.js
Funktion: JavaScript-Funktionen
--------------------------------------------------
*/

// Klassen

function classProduct() {
	this.uid="";
	this.id="";
	this.quantity=0;
	this.caption="";
	this.price=0;
	this.originalprice=-1;
	this.vat=0;
	this.url="";
	this.unit="";
	this.noship="";
	this.weight=0;
	this.actualpriceone=0;
	this.actualpriceall=0;
	this.rebatefrom=new Array;
	this.rebateprice=new Array;
	this.status=0;
	this.minimum=0;
	this.maximum=0;
	this.variationa="";
	this.variationb="";
}

function classVariation() {
	this.id="";
	this.price=0;
	this.originalprice=-1;
	this.weight=0;
	this.rebatefrom=new Array;
	this.rebateprice=new Array;
	this.status=0;
}

function classShippingMethod() {
	this.uid="";
	this.caption="";
	this.info="";
	this.vat=0;
	this.free=0;
	this.price=new Array;
	this.weight=new Array;
	this.actualprice=0;
}

function classPaymentMethod() {
	this.uid="";
	this.caption="";
	this.info="";
	this.pregateway="";
	this.postgateway="";
	this.email="";
	this.price=0;
	this.vat=0;
	this.free=0;
	this.actualprice=0;
	this.noship=0;
	this.parameter=new Array;
	this.version=0;
}
	

function classVat() {
	this.percent=0;
	this.amount=0;
}

// Funktionen

function sortVat(a,b) {	
// Sortier-Funktion für Prozent
	
	return a.percent-b.percent;
}

function toInt(value) {
// Einen Strin in Null umwandel, NaN umgehen

	if (isNaN(value)) {
		return 0;
	}
	else {
		return parseInt(value);
	}
}

function format(num) {
// Als Währung formatieren
	
	num = Math.round(num*100);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)
	cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+"."+num.substring(num.length-(4*i+3));
	return (num + "," + cents);
}

function formatweight(num) {
// Als Gewicht formatieren
	
	num = Math.round(num*1000);
	cents = num%1000;
	num = Math.floor(num/1000).toString();
	cents="000"+cents.toString();
	cents=cents.substr(cents.length-3,cents.length);
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+"."+num.substring(num.length-(4*i+3));
	return (num + "," + cents);
}

function htmlChars(myText) {
// Entfernt böse HTML-Zeichen

	myText=myText.replace(/&/g,"&amp;");
	myText=myText.replace(/"/g,"&quot;");
	myText=myText.replace(/'/g,"&#039;");
	myText=myText.replace(/</g,"&lt;");
	myText=myText.replace(/>/g,"&gt;");
	return myText;
}

function iclearChars(myText) {
// Entfernt böse Zeichen für iClear

	myText=myText.replace(/&/g," ");
	myText=myText.replace(/"/g," ");
	myText=myText.replace(/'/g," ");
	myText=myText.replace(/:/g," ");
	myText=myText.replace(/#/g," ");
	myText=myText.replace(/%/g," ");
	return myText;
}


function setCookie(myvalue) {
// Einen Cookie setzen
	var expires= new Date();
	expires.setFullYear(expires.getFullYear()+1);
	document.cookie="s2dm="+escape(myvalue)+"; expires="+expires.toGMTString()+"; path=/";
}

function getCookie() {
// Einen Cookie lesen
	var pos=document.cookie.indexOf("s2dm=");
		
	if (pos != -1) {
		var start=pos+5;
		var ende=document.cookie.indexOf(";", start);

		if (ende == -1) ende = document.cookie.length;
		var myvalue=document.cookie.substring(start, ende);
	
		myvalue=unescape(myvalue)
		return myvalue;
	} 
}

function setMemo(mycaption, myurl) {
// Dem Merkzetteln einen Eintrag hinzufügen
	
	var myvalue=new String();
	var mymemo=getMemo();
	var mymax;
		
	myvalue=myurl+"|||"+mycaption;
	
	mymax=mymemo.length;
	if (mymax>9) mymax=9;
	
	for (i=0;i<mymax;i++) {
		if (mymemo[i][0]!=myurl) {
			myvalue+="||||"+mymemo[i][0]+"|||";
			myvalue+=mymemo[i][1];
		}
	}
			
	setCookie(myvalue);
}

function getMemo() {
// Den Array mit dem Merkzettel liefern

	var mymemo = new Array();
	var myvalue = getCookie();
		
	if (myvalue != null && myvalue !="") {
		mymemo=myvalue.split("||||");
		for (i=0;i<mymemo.length;i++) {
			mymemo[i]=mymemo[i].split("|||");
		}
	}
	return mymemo;
}

function clearCookie() {
	
	if (confirm("Wollen Sie Ihren Merkzettel wirklich löschen?")) {
		setCookie("");
		location.reload()
	}

}

function memoShow() {
// Den Merkzetteln anzeigen

	var mymemo=getMemo();
	
	if (mymemo.length==0) {
		document.write("<p>Es befinden sich keine Produkte auf Ihrem Merkzettel.</p>");
	} else {
		document.write("<table width='100%' cellpadding='2'>");
		for (i=0;i<mymemo.length;i++) {
			document.write("<tr><td align='left' class='s2d'>");
			document.write("<a class='s2d' href='"+mymemo[i][0]+"'>");
			document.write(mymemo[i][1]);
			document.write("</td></tr>");
		}
		document.write("<tr>");		
		document.write("<td class='s2d' align='right'><br><a href='#' onclick='clearCookie();return false;'><img src='images/pbclmemo.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("</table>");	
		document.write("<p><br>Auf dem Merkzettel können Sie Artikel unverbindlich vormerken, um sich diese bei einem späteren Besuch des Shops nochmals anzusehen. Klicken Sie auf einen Eintrag, um ihn anzuzeigen. Damit der Merkzettel funktioniert, müssen Sie Cookies aktiviert haben.</p>");	
	}
}

function addMemo(myproduct, myurl) {
// Merken

	var mymessage="Das Produkt \"[c]\" wurde auf Ihrem Merkzettel eingetragen.";
	mymessage=mymessage.replace(/\[c\]/g,myproduct);
	alert(mymessage);
	setMemo(myproduct, myurl);
}

function basketPut(myproduct, myquantity) {
// Ins Körbchen legen
	
	var found;
	var i;
	var message;
	
	myquantity=toInt(myquantity);
	
	// Lieferbar?
	
	if (myproduct.status==0) {
		alert("Die von Ihnen gewählte Variante ist nicht lieferbar. Bitte wählen Sie eine andere Kombination von Eigenschaften.");
	}
	else {
		// Nicht null!
		if (myquantity<=0) {
			alert("Bitte geben Sie eine gültige Anzahl ein.");
		}
		else {
			message="Wollen Sie [n] [u] \"[c]\" in den Warenkorb legen? Nach Ihrer Bestätigung mit Ja,  können Sie den Warenkorb anzeigen und zur Kasse gehen oder weitereinkaufen und danach zur Kasse gehen.";
			message=message.replace(/\[n\]/,myquantity);
			message=message.replace(/\[u\]/,myproduct.unit);
			message=message.replace(/\[c\]/,myproduct.caption);
	
			if (confirm(message)) {
				found=-1
				for (var i=0; i<parent.basket.length; i++) {
					if ((parent.basket[i].uid==myproduct.uid) && (parent.basket[i].variationa==myproduct.variationa) && (parent.basket[i].variationb==myproduct.variationb)) {
						found=i;
					}
				}
				if (found==-1) {
					found=parent.basket.length;
					parent.basket[found]=new classProduct;
				}
				parent.basket[found].quantity+=parseFloat(myquantity);
				parent.basket[found].uid=myproduct.uid;
				parent.basket[found].id=myproduct.id;
				parent.basket[found].unit=myproduct.unit;
				parent.basket[found].caption=myproduct.caption;
				parent.basket[found].price=myproduct.price;
				parent.basket[found].vat=myproduct.vat;
				parent.basket[found].weight=myproduct.weight;
				parent.basket[found].url=myproduct.url;
				parent.basket[found].noship=myproduct.noship;
				parent.basket[found].minimum=myproduct.minimum;
				parent.basket[found].maximum=myproduct.maximum;
				parent.basket[found].variationa=myproduct.variationa;
				parent.basket[found].variationb=myproduct.variationb;
			
				for (var i=1;i<=5;i++) {
					parent.basket[found].rebatefrom[i]=myproduct.rebatefrom[i];
					parent.basket[found].rebateprice[i]=myproduct.rebateprice[i];
				}
			
				// Maximum und Minumum checken
				if ((parent.basket[found].quantity>parent.basket[found].maximum) && (parent.basket[found].maximum!=0)) {
					message="Die Höchstbestellmenge des Produktes \"[c]\" beträgt [n] [u] - die Bestellmenge wurde automatisch angepasst.";
					message=message.replace(/\[n\]/,parent.basket[found].maximum);
					message=message.replace(/\[u\]/,parent.basket[found].unit);
					message=message.replace(/\[c\]/,parent.basket[found].caption);
					alert(message);
					parent.basket[found].quantity=parent.basket[found].maximum;
				}
				if ((parent.basket[found].quantity<parent.basket[found].minimum) && (parent.basket[found].minimum!=0)) {
					message="Die Mindestbestellmenge des Produktes \"[c]\" beträgt [n] [u] - die Bestellmenge wurde automatisch angepasst.";
					message=message.replace(/\[n\]/,parent.basket[found].minimum);
					message=message.replace(/\[u\]/,parent.basket[found].unit);
					message=message.replace(/\[c\]/,parent.basket[found].caption);
					alert(message);
					parent.basket[found].quantity=parent.basket[found].minimum;
				}
			}
		}
	}
}
	
function basketShow() {
// Körbchen anzeigen

	var sum,i,j,found,vatsum;
	var vat = new Array;
	
	sum=0;
	vatsum=0;
		
	for (i=0;i<parent.basket.length;i++) {
		sum+=parent.basket[i].quantity;
	}
	
	updateActualPrice();
	
	if (sum==0)	{
		// leer
		
		document.write("<p>Der Warenkorb ist leer</p>");
	}
	else {
		// Überschrift zeigen
	
		sum=0;
		document.write("<form name='basketform' onsubmit='reCalc();location.reload();return false;'>");
		document.write("<table width='100%' cellpadding='2'>");
		document.write("<tr>");
		document.write("<td align='left' colspan='3' class='s2d'><strong>Anzahl</strong></td>");
		document.write("<td width='100%' class='s2d'><strong>Bezeichnung</strong></td>");
				document.write("<td nowrap align='right' class='s2d'><strong>Einzelpreis</strong></td>");
		document.write("<td nowrap align='right' class='s2d'><strong>Gesamtpreis</strong></td>");
		document.write("</tr>");
		document.write("<tr>");
		
		// Positionen
		
		for (i=0;i<parent.basket.length;i++) {
			if (parent.basket[i].quantity!=0) {
				document.write("<tr>");
				document.write("<td><a href='#' onclick='deleteItem("+i+");return false;'><img src='images/ptrsh.gif' width='12' height='16' alt='' border='0'></a></td>");
				document.write("<td><input type='text' class='s2d' size='3' maxlength='5' value='"+parent.basket[i].quantity+"' name="+i+"></td>");
				document.write("<td class='s2d'>"+htmlChars(parent.basket[i].unit)+"&nbsp;</td>");
				document.write("<td width='100%' class='s2d'><a class='s2d' href='"+parent.basket[i].url+"'>"+htmlChars(parent.basket[i].caption)+"</a></td>");
								document.write("<td nowrap align='right' class='s2d'>"+format(parent.basket[i].actualpriceone)+" EUR*</td>");
				document.write("<td nowrap align='right' class='s2d'>"+format(parent.basket[i].actualpriceall)+" EUR*</td>");
				document.write("</tr>");
				sum+=parent.basket[i].actualpriceall;
				
				// Ust rechnen
				
				addVat(vat,parent.basket[i].vat,parent.basket[i].actualpriceall);
				
			}
		}
		
		// Abstand
		document.write("<tr>");
					document.write("<td colspan='6' align='left' class='s2d'></td>");		
				document.write("</tr>");
		
		// USt. ausgeben
		vat.sort(sortVat);
		
					
			// Ust
		
			for (i=0;i<vat.length;i++) {
				document.write("<tr>");
				document.write("<td colspan='5' align='right' class='s2d'>"+vat[i].percent+"% USt.:</td>");
				document.write("<td nowrap align='right' class='s2d'>"+format(vat[i].amount)+" EUR*</td>");
				document.write("</tr>");
			}	
			
			// Endbetrag
			
			document.write("<tr>");
			document.write("<td colspan='4' align='left' class='s2d'><input type='image' name='calc' src='images/prcb.gif' border='0' onclick='reCalc();location.reload();return false;'></td>");
			document.write("<td align='right' class='s2d'><strong>Endsumme:</strong></td>");
			document.write("<td nowrap align='right' class='s2d'><strong>"+format(sum)+" EUR*</strong></td>");
			document.write("</tr>");
				
		// Navigation
		
		document.write("</table>");
		document.write("</form>");
	
		document.write("<table width='100%' cellpadding='2'>");
		document.write("<tr>");		
		document.write("<td align='left'><a href='./index.html'><img src='images/psmb.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("<td align='right'><a onclick='reCalc();return true;' href='s2dship.html'><img src='images/pcob.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("</tr>");		
		document.write("</table>");	
	}
}

function addVat(vat,rate,price) {
// USt addieren
	
	var j,found;
	
	if ((rate!=0) && (price!=0)) {

		found=-1;
		for (j=0;j<vat.length;j++) {
			if (vat[j].percent==rate) {
				found=j;
			}
		}
					
		if (found==-1) {
			found=vat.length;
			vat[found]=new classVat;
			vat[found].percent=rate;
			vat[found].amount=0;
		}				
					vat[found].amount+=price/(100+rate)*rate;
			}
}

function updateActualPrice() {
// Tatsächliche Preise im Korb aktualisieren

	for (var i=0;i<parent.basket.length;i++) {
		parent.basket[i].actualpriceone=parent.basket[i].price;
		
		// Rabattstaffel erreicht?
		
		for (var j=0;j<=5;j++) {
			if (parent.basket[i].rebatefrom[j]!=0) {
				if ((parent.basket[i].quantity)>=(parent.basket[i].rebatefrom[j])) {
					parent.basket[i].actualpriceone=parent.basket[i].rebateprice[j];
				}
			}
		}
		
		parent.basket[i].actualpriceall=parent.basket[i].actualpriceone*parent.basket[i].quantity;
	}
	
}

function reCalc() {
// Korb anhand Formular aktualisieren

	var j,i,message;

	for (i=0;i<document.basketform.elements.length;i++) {
		if (document.basketform.elements[i].type=="text") {
			j=parseInt(document.basketform.elements[i].name);
			parent.basket[j].quantity=Math.abs(toInt(document.basketform.elements[i].value));
			
			// Minumum und Maximum
			if ((parent.basket[j].quantity>parent.basket[j].maximum) && (parent.basket[j].maximum!=0) && (parent.basket[j].qunatity!=0)) {
				message="Die Höchstbestellmenge des Produktes \"[c]\" beträgt [n] [u] - die Bestellmenge wurde automatisch angepasst.";
				message=message.replace(/\[n\]/,parent.basket[j].maximum);
				message=message.replace(/\[u\]/,parent.basket[j].unit);
				message=message.replace(/\[c\]/,parent.basket[j].caption);
				alert(message);
				parent.basket[j].quantity=parent.basket[j].maximum;
			}
			if ((parent.basket[j].quantity<parent.basket[j].minimum) && (parent.basket[j].minimum!=0) && (parent.basket[j].qunatity!=0)) {
				message="Die Mindestbestellmenge des Produktes \"[c]\" beträgt [n] [u] - die Bestellmenge wurde automatisch angepasst.";
				message=message.replace(/\[n\]/,parent.basket[j].minimum);
				message=message.replace(/\[u\]/,parent.basket[j].unit);
				message=message.replace(/\[c\]/,parent.basket[j].caption);
				alert(message);
				parent.basket[j].quantity=parent.basket[j].minimum;
			}

		}
	}
}

function deleteItem(id) {
// Element aus Korb entfernen

	var message;
	
	message="Wollen Sie das Produkt \"[c]\" wirklich aus dem Warenkorb löschen?";
	message=message.replace(/\[c\]/,parent.basket[id].caption);

	if (confirm(message)) { 
		parent.basket[id].quantity=0;
		location.reload();
	}
}

function defineShippingMethods() {
// Versand-Methoden definieren

	if (parent.shippingmethod.length==0)
	{
			parent.shippingmethod[1] = new classShippingMethod;
		parent.shippingmethod[1].caption="Deutsche Post";
		parent.shippingmethod[1].info="Lieferung innerhalb Deutschland berechnen wir  pauschal 4,50 EUR pro Bestellung. Ab 99,00 EURO versandkostenfrei.";
		parent.shippingmethod[1].uid="50000193c60808d01";
		parent.shippingmethod[1].free=99;
		parent.shippingmethod[1].vat=19;
					parent.shippingmethod[1].price[1]=4.5;				
			parent.shippingmethod[1].weight[1]=0;				
					parent.shippingmethod[1].price[2]=0;				
			parent.shippingmethod[1].weight[2]=0;				
					parent.shippingmethod[1].price[3]=0;				
			parent.shippingmethod[1].weight[3]=0;				
					parent.shippingmethod[1].price[4]=0;				
			parent.shippingmethod[1].weight[4]=0;				
					parent.shippingmethod[1].price[5]=0;				
			parent.shippingmethod[1].weight[5]=0;				
					parent.shippingmethod[2] = new classShippingMethod;
		parent.shippingmethod[2].caption="Deutsche Post ";
		parent.shippingmethod[2].info="Für Lieferungen nach Österreich, Dänemark, Belgien, Niederlande, Frankreich, Großbritannien, Irland ,  Italien , Spanien, Polen, Portugal und Luxemburg berechnen wir unabhängig vom Bestellwert pauschal 9,50 EUR pro Bestellung.";
		parent.shippingmethod[2].uid="500737959d13b1463";
		parent.shippingmethod[2].free=0;
		parent.shippingmethod[2].vat=19;
					parent.shippingmethod[2].price[1]=9.5;				
			parent.shippingmethod[2].weight[1]=0;				
					parent.shippingmethod[2].price[2]=0;				
			parent.shippingmethod[2].weight[2]=0;				
					parent.shippingmethod[2].price[3]=0;				
			parent.shippingmethod[2].weight[3]=0;				
					parent.shippingmethod[2].price[4]=0;				
			parent.shippingmethod[2].weight[4]=0;				
					parent.shippingmethod[2].price[5]=0;				
			parent.shippingmethod[2].weight[5]=0;				
					parent.shippingmethod[3] = new classShippingMethod;
		parent.shippingmethod[3].caption="Deutsche Post ";
		parent.shippingmethod[3].info="Für Lieferungen in die Schweiz, USA und Kanada berechnen wir unabhängig vom Bestellwert pauschal 13,00 EUR pro Bestellung.";
		parent.shippingmethod[3].uid="500737959d13bbc64";
		parent.shippingmethod[3].free=0;
		parent.shippingmethod[3].vat=19;
					parent.shippingmethod[3].price[1]=13;				
			parent.shippingmethod[3].weight[1]=0;				
					parent.shippingmethod[3].price[2]=0;				
			parent.shippingmethod[3].weight[2]=0;				
					parent.shippingmethod[3].price[3]=0;				
			parent.shippingmethod[3].weight[3]=0;				
					parent.shippingmethod[3].price[4]=0;				
			parent.shippingmethod[3].weight[4]=0;				
					parent.shippingmethod[3].price[5]=0;				
			parent.shippingmethod[3].weight[5]=0;				
					parent.shippingmethod[4] = new classShippingMethod;
		parent.shippingmethod[4].caption="Selbstabholung";
		parent.shippingmethod[4].info="versandkostenfrei";
		parent.shippingmethod[4].uid="5007379b850e30401";
		parent.shippingmethod[4].free=0;
		parent.shippingmethod[4].vat=19;
					parent.shippingmethod[4].price[1]=0;				
			parent.shippingmethod[4].weight[1]=0;				
					parent.shippingmethod[4].price[2]=0;				
			parent.shippingmethod[4].weight[2]=0;				
					parent.shippingmethod[4].price[3]=0;				
			parent.shippingmethod[4].weight[3]=0;				
					parent.shippingmethod[4].price[4]=0;				
			parent.shippingmethod[4].weight[4]=0;				
					parent.shippingmethod[4].price[5]=0;				
			parent.shippingmethod[4].weight[5]=0;				
				}
}

function shippingShow() {
// Versand-Methoden anzeigen

	var i,j,sum,totalweight, totalprice;
	
	defineShippingMethods();
	updateActualPrice();
	
	sum=0;
	totalweight=0;
	totalprice=0;
	
	for (i=0;i<parent.basket.length;i++) {
		sum+=parent.basket[i].quantity;
		totalweight+=parent.basket[i].weight*parent.basket[i].quantity;
		totalprice+=parent.basket[i].actualpriceall;
	}	
	
	if (sum==0)	{
		document.write("<p>Der Warenkorb ist leer</p>");
	}
	else {
		document.write("<form name='shippingform'>");
		document.write("<table width='100%' cellpadding='2'>");
		for (i=1;i<parent.shippingmethod.length;i++) {
			
			parent.shippingmethod[i].actualprice=-1;
						
			if (parent.shippingmethod[i].weight[1]==0) {
				// Nur ein Preis
				parent.shippingmethod[i].actualprice=parent.shippingmethod[i].price[1];
			}
			else {
				// Preis nach Gewicht
				for (j=parent.shippingmethod[i].weight.length;j>0;j--) {
					if (parent.shippingmethod[i].weight[j]!=0) {
						if (totalweight<=parent.shippingmethod[i].weight[j]) {
							parent.shippingmethod[i].actualprice=parent.shippingmethod[i].price[j];
						}
					}
				}
			}
			// Versandkostenfrei?
			if ((totalprice>=parent.shippingmethod[i].free) && (parent.shippingmethod[i].free!=0) && (parent.shippingmethod[i].actualprice!=-1)) {
				parent.shippingmethod[i].actualprice=0;
			}
			
			// Nicht erlaubte Methode?			
			for (j=0;j<parent.basket.length;j++) {
				if (parent.basket[j].quantity!=0) {
					if (parent.basket[j].noship.indexOf(parent.shippingmethod[i].uid)!=-1)
  					parent.shippingmethod[i].actualprice=-1;
				}
			}
			// GGf Auswahl löschen
			if ((parent.shippingmethod[i].actualprice==-1) && (i==parent.selectedshippingmethod)) {
				parent.selectedshippingmethod=-1;
			}
		}
		for (i=1;i<parent.shippingmethod.length;i++) {		
			// Anzeigen
			if (parent.shippingmethod[i].actualprice!=-1) {
				// Wenn nichts gewählt, erstes wählen
				if (parent.selectedshippingmethod==-1) {
					parent.selectedshippingmethod=i
				}
				document.write("<tr>");
				document.write("<td class='s2d'><input type='radio' ")
				if (i==parent.selectedshippingmethod) {
					document.write("checked ");
				}
				document.write("onclick='setShipping();' name='method' value='"+i+"'></td>");
				document.write("<td class='s2d' width='100%'><strong>"+parent.shippingmethod[i].caption+"</strong><br></td>");
				document.write("<td align='right' nowrap class='s2d'><strong>")
				if (parent.shippingmethod[i].actualprice!=0) {
					document.write(format(parent.shippingmethod[i].actualprice)+" EUR*");
				} else {
					document.write("kostenlos");
				} 
				document.write("</strong></td>");
				document.write("</tr>");
				if (parent.shippingmethod[i].info!="") {
					document.write("<tr>");
					document.write("<td></td>");
					document.write("<td class='s2d' width='100%'>"+parent.shippingmethod[i].info+"<br><br></td>");
					document.write("<td></td>");
					document.write("</tr>");
				}
			}
		}
		
		// Gewicht zeigen
		
		if (totalweight>0) {
			document.write("<tr>");
			document.write("<td></td>");
			document.write("<td class='s2d'><br>Gesamtgewicht: "+formatweight(totalweight)+" kg<br><br></td>");
			document.write("<td></td>");
			document.write("</tr>");
		}
		
		// Navigation unten
		document.write("</table>");
		document.write("</form>");		
	
		document.write("<table width='100%' cellpadding='2'>");
		document.write("<tr>");		
		document.write("<td align='left'><a href='s2dbskt.html'><img src='images/pbskt.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("<td align='right'><a href='s2dpayment.html'><img src='images/pcob.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("</tr>");		
		document.write("</table>");
	}
}

function setShipping() {
// Versand-Methode einstellen

	var i;
	parent.selectedshippingmethod=-1;
	for (i=0;i<document.shippingform.method.length;i++) {
		if (document.shippingform.method[i].checked) {
			parent.selectedshippingmethod=document.shippingform.method[i].value;
		}
	}
}

function definePaymentMethods() {
// Bezahl-Methoden definieren

	if (parent.paymentmethod.length==0)
	{
			parent.paymentmethod[1] = new classPaymentMethod;
		parent.paymentmethod[1].caption="Vorkasse";
		parent.paymentmethod[1].info="Vorkasse bedeutet, dass Sie die Gesamtsumme der Bestellung vorab überweisen und wir nach Erhalt der Zahlung die Ware verschicken.  ";
		parent.paymentmethod[1].pregateway="Ihre Bestellung wurde in unser Shopsystem übermittelt. Bitte tragen Sie Ihre Adressdaten in diesem Fenster ein. Sobald sie diese eingegeben und bestätigt wurden, ist die Bestellung abgeschlossen. Vielen Dank für Ihren Besuch in unserem Shop.";
		parent.paymentmethod[1].postgateway="Vielen Dank. Ihre Bestellung wurde entgegengenommen. Sie erhalten in Kürze eine Auftragsbestätigung mit Bankdaten zwecks Vorkasse-Überweisung.";
		parent.paymentmethod[1].email="Herzlichen Dank für Ihre Bestellung bei EGYPT BAZAR! Unsere Auftragsbestätigung mit Kontodaten erhalten Sie in Kürze per Email.";
		parent.paymentmethod[1].noship="";
		parent.paymentmethod[1].uid="5007379593109b0ee";
		parent.paymentmethod[1].price=0;
		parent.paymentmethod[1].vat=0;
		parent.paymentmethod[1].free=0;
		parent.paymentmethod[1].parameter[0]="";
		parent.paymentmethod[1].parameter[1]="";
		parent.paymentmethod[1].parameter[2]="";
		parent.paymentmethod[1].parameter[3]="";
		parent.paymentmethod[1].parameter[4]="";
		parent.paymentmethod[1].parameter[5]="";
		parent.paymentmethod[1].version="shop2dateversion10";
			parent.paymentmethod[2] = new classPaymentMethod;
		parent.paymentmethod[2].caption="Nachnahme";
		parent.paymentmethod[2].info="Bei Nachnahme versenden wir die Ware sofort und der Rechnungsbetrag wird bei Erhalt der Sendung an den Postboten gezahlt. Nachnahme ist nur innerhalb Deutschlands möglich. Bedenken Sie bitte, daß die Post beim Einzug des Rechnungsbetrages eine zusätzliche Gebühr in Höhe von 2.00 € Euro einzieht.  ";
		parent.paymentmethod[2].pregateway="Ihre Bestellung wurde in unser Shopsystem übermittelt. Bitte tragen Sie Ihre Adressdaten in diesem Fenster ein. Sobald sie diese eingegeben und bestätigt wurden, ist die Bestellung abgeschlossen. Vielen Dank für Ihren Besuch in unserem Shop.";
		parent.paymentmethod[2].postgateway="Vielen Dank. Ihre Bestellung wurde entgegengenommen. Sie erhalten in Kürze eine Bestätigungsmail.";
		parent.paymentmethod[2].email="Vielen Dank für Ihre Bestellung. Bitte beachten Sie, dass zusätzlich \"Übermittlungsentgelt\" von € 2  bei der Lieferung von der Post erhoben werden.";
		parent.paymentmethod[2].noship="500737959d13b1463 500737959d13bbc64";
		parent.paymentmethod[2].uid="50000193c609ca03f";
		parent.paymentmethod[2].price=7;
		parent.paymentmethod[2].vat=19;
		parent.paymentmethod[2].free=0;
		parent.paymentmethod[2].parameter[0]="";
		parent.paymentmethod[2].parameter[1]="";
		parent.paymentmethod[2].parameter[2]="";
		parent.paymentmethod[2].parameter[3]="";
		parent.paymentmethod[2].parameter[4]="";
		parent.paymentmethod[2].parameter[5]="";
		parent.paymentmethod[2].version="shop2dateversion10";
			parent.paymentmethod[3] = new classPaymentMethod;
		parent.paymentmethod[3].caption="Paypal";
		parent.paymentmethod[3].info="Sie können auch die Zahlung via Paypal durchführen. Unsere Email für Bezahlung per Paypal lautet: bestsaleman@gmx.de  ";
		parent.paymentmethod[3].pregateway="Ihre Bestellung wurde in unser Shopsystem übermittelt. Bitte tragen Sie Ihre Adressdaten in diesem Fenster ein. Sobald sie diese eingegeben und bestätigt wurden, ist die Bestellung abgeschlossen. Vielen Dank für Ihren Besuch in unserem Shop.";
		parent.paymentmethod[3].postgateway="Herzlichen Dank für Ihre Bestellung bei EGYPT BAZAR! Unsere Auftragsbestätigung mit der Paypal emailadresse erhalten Sie in Kürze per Email.";
		parent.paymentmethod[3].email="Herzlichen Dank für Ihre Bestellung bei EGYPT BAZAR! Unsere Auftragsbestätigung mit der Paypal emailadresse erhalten Sie in Kürze per Email.";
		parent.paymentmethod[3].noship="";
		parent.paymentmethod[3].uid="500737968007dcd01";
		parent.paymentmethod[3].price=0;
		parent.paymentmethod[3].vat=0;
		parent.paymentmethod[3].free=0;
		parent.paymentmethod[3].parameter[0]="";
		parent.paymentmethod[3].parameter[1]="";
		parent.paymentmethod[3].parameter[2]="";
		parent.paymentmethod[3].parameter[3]="";
		parent.paymentmethod[3].parameter[4]="";
		parent.paymentmethod[3].parameter[5]="";
		parent.paymentmethod[3].version="shop2dateversion10";
		}
}


function paymentShow() {
// Bezahl-Methoden anzeigen

	var i,j, totalprice;
	
	definePaymentMethods();
	updateActualPrice();
	
	sum=0;
	totalprice=0;
	
	for (i=0;i<parent.basket.length;i++) {
		sum+=parent.basket[i].quantity;
		totalprice+=parent.basket[i].actualpriceall;
	}	
	
	if (sum==0)	{
		document.write("<p>Der Warenkorb ist leer</p>");
	}
	else {
		document.write("<form name='paymentform'>");
		document.write("<table width='100%' cellpadding='2'>");
		for (i=1;i<parent.paymentmethod.length;i++) {
			
			parent.paymentmethod[i].actualprice=parent.paymentmethod[i].price;
						
			// Versandkostenfrei?
			if ((totalprice>=parent.paymentmethod[i].free) && (parent.paymentmethod[i].free!=0)) {
				parent.paymentmethod[i].actualprice=0;
			}
			
			// Nicht erlaubte Methode?			
			if (parent.selectedshippingmethod!=-1) {
				if (parent.paymentmethod[i].noship.indexOf(parent.shippingmethod[parent.selectedshippingmethod].uid)!=-1) {
  					parent.paymentmethod[i].actualprice=-1;
				}
			}
			
			// GGf Auswahl löschen
			if ((parent.paymentmethod[i].actualprice==-1) && (i==parent.selectedpaymentmethod)) {
				parent.selectedpaymentmethod=-1;
			}
		}
		for (i=1;i<parent.paymentmethod.length;i++) {		
			// Anzeigen
			if (parent.paymentmethod[i].actualprice!=-1) {
				// Wenn nichts gewählt, erstes wählen
				if (parent.selectedpaymentmethod==-1) {
					parent.selectedpaymentmethod=i;
				}
				document.write("<tr>");
				document.write("<td class='s2d'><input type='radio' ")
				if (i==parent.selectedpaymentmethod) {
					document.write("checked ");
				}
				document.write("onclick='setPayment();' name='method' value='"+i+"'></td>");
				document.write("<td class='s2d' width='100%'><strong>"+parent.paymentmethod[i].caption+"</strong><br></td>");
				document.write("<td align='right' nowrap class='s2d'><strong>");
				if (parent.paymentmethod[i].actualprice!=0) {
					document.write(format(parent.paymentmethod[i].actualprice)+" EUR*");
				} else {
					document.write("kostenlos");
				}
				document.write("</strong></td>");
				document.write("</tr>");
				if (parent.paymentmethod[i].info!="") {
					document.write("<tr>");
					document.write("<td></td>");
					document.write("<td class='s2d' width='100%'>"+parent.paymentmethod[i].info+"<br><br></td>");
					document.write("<td></td>");
					document.write("</tr>");
				}
			}
		}
		
		// Navigation unten
		document.write("</table>");
		document.write("</form>");		
	
		document.write("<table width='100%' cellpadding='2'>");
		document.write("<tr>");		
		document.write("<td align='left'><a href='s2dship.html'><img src='images/pbskt.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("<td align='right'><a href='s2dsummary.html'><img src='images/pcob.gif' width='150' height='25' alt='' border='0'></a></td>");
		document.write("</tr>");		
		document.write("</table>");		
	}
}

function setPayment() {
// Bezahl-Methode einstellen

	var i;
	parent.selectedpaymentmethod=-1;
	for (i=0;i<document.paymentform.method.length;i++) {
		if (document.paymentform.method[i].checked) {
			parent.selectedpaymentmethod=document.paymentform.method[i].value;
		}
	}
}

function summaryShow() {
// Zusammenfassung zeigen
	summaryShowEx(false);
}

function summaryShowEx(newwindow) {
// Zusammenfassung oder Bestellformular zeigen

	var sum, i, j, found, vatsum, shippingcost, totalweight;
	var vat = new Array;

	var shippingcaption="";
	var paymentcaption="";
	
	var shopaddress="Allgemeine Geschäftsbedingungen für Käufe im Onlineshop unter http://www.egyptbazar.de<br><br>§ 1 Allgemeines, Geltungsbereich der AGB<br>1.1 Alle Lieferungen und Leistungen von Egypt Bazar erfolgen ausschließlich auf der Grundlage der nachfolgenden Allgemeinen Geschäftsbedingungen in ihrer zum Zeitpunkt der Bestellung gültigen Fassung. Sofern nicht ausdrücklich schriftlich vereinbart, finden abweichende Geschäftsbedingungen keine Anwendung. <br>1.2 Kunde im Sinne dieser Geschäftsbedingungen sind sowohl Verbraucher als auch Unternehmer. Verbraucher im Sinne der Geschäftsbedingungen sind natürliche Personen, die Verträge zu einem Zweck abschließen, der weder ihrer gewerblichen noch ihrer beruflichen Tätigkeit zugerechnet werden können. Unternehmer im Sinne der Geschäftsbedingungen sind natürliche oder juristische Personen oder rechtsfähige Personengesellschaften, die bei Vertragsschluss mit Egypt Bazar in Ausübung ihrer gewerblichen oder selbständigen beruflichen Tätigkeit handeln.<br><br>§ 2 Vertragsschluss, Zustandekommen des Vertrags<br><br>2.1 Mit Ihrer Bestellung geben Sie ein verbindliches Angebot an uns ab, den Vertrag mit Ihnen zu schließen. Wir können dieses Angebot innerhalb von 24 Stunden nach Eingang Ihrer Bestellung mit der Zusendung einer Auftragsbestätigung per E-Mail an Sie annehmen. Sie erhalten zunächst eine Bestätigung des Eingangs Ihrer Bestellung per E-Mail an die von Ihnen angegebene E-Mailadresse (Bestellbestätigung). Durch das nachfolgende Versenden einer Auftragsbestätigung per E-Mail, nehmen wir das Angebot (Ihre Bestellung) auf Vertragsschluss an. <br><br>2.2 Wenn Sie das gewünschte Produkt gefunden haben, können Sie dieses unverbindlich durch Anklicken des Buttons [In den Warenkorb] in den Warenkorb legen. Den Inhalt des Warenkorbs können Sie jederzeit durch Anklicken des Buttons [Warenkorb anzeigen] unverbindlich ansehen. Die Produkte können Sie durch Anklicken des Feldes [Löschen] wieder aus dem Warenkorb entfernen. Bei der Änderung der Stückzahl geben Sie bei „Anzahl“ eine geänderte Zahl ein und klicken dann auf [Summen aktualisieren]. Wenn Sie danach weiter einkaufen möchten, klicken Sie bitte auf [Weiter Einkaufen]. Wenn Sie die Produkte im Warenkorb kaufen wollen, klicken Sie auf den Button [Weiter]. <br><br>Der Bestellvorgang umfasst vier Schritte. Im ersten Schritt unter „Versandarten“ wählen Sie die Versandart oder Selbstabholung aus. Im zweiten Schritt unter „Zahlungsweisen“ bestimmen Sie die von Ihnen gewünschte Zahlungsart. Im dritten Schritt unter „Zusammenfassung“ erhalten Sie nochmals eine Übersicht über Ihre Bestellung und können alle Angaben nochmals überprüfen, löschen oder ändern. Eingabefehler können Sie auch dadurch berichtigen, dass Sie im Browser rückwärts navigieren oder den Bestellvorgang abbrechen und von vorn beginnen. Hier akzeptieren Sie auch unsere Allgemeinen Geschäftsbedingungen und bestätigen die Kenntnisnahme des Widerrufsrechts. Im vierten und letzten Schritt Geben Sie Ihre Rechnungsadresse und eine ggf. abweichende Lieferanschrift ein. Mit den anschließenden Anklicken des Buttons [OK – Bestellung abschicken] versenden Sie die Bestellung an uns.<br><br>2.3 Bei Bestellungen in unserem Online-Shop kommt der Vertrag zustande mit: <br><br>Usama Abdin, EGYPT BAZAR OLINE SHOP, Edelweißstr. 1, D- 61231 Bad Nauheim, Telefon: 06032-867452, E-Mail.: info@egyptbazar.de, USt.IDNr.: DE259018663. <br><br><br><br>§ 3 Speicherung des Vertragstextes <br>Wir schicken eine Bestelleingangsbestätigung sowie eine Auftragsbestätigung mit allen Angaben an die von Ihnen angegebene E-Mailadresse. Sie haben darüber hinaus die Möglichkeit, sowohl die Allgemeinen Geschäftsbedingungen als auch Ihre Bestellung mit allen eingegebenen Daten während des Bestellvorgangs auszudrucken. <br><br><br><br>§ 4 Widerrufsbelehrung<br><br>4.1 Als Verbraucher steht Ihnen ein zweiwöchiges Widerrufsrecht unter folgenden Bedingungen zu:<br><br>Widerrufsrecht<br><br>Sie können Ihre Vertragserklärung innerhalb von zwei Wochen ohne Angabe von Gründen in Textform (z. B. Brief, E-Mail) oder - wenn Ihnen die Sache vor Fristablauf überlassen wird - durch Rücksendung der Sache widerrufen. Die Frist beginnt nach Erhalt dieser Belehrung in Textform, jedoch nicht vor Eingang der Ware beim Empfänger (bei der wiederkehrenden Lieferung gleichartiger Waren nicht vor dem Eingang der ersten Teillieferung) und auch nicht vor Erfüllung unserer Informationspflichten gemäß § 312c Abs. 2 BGB in Verbindung mit § 1 Abs. 1, 2 und 4 BGB-InfoV sowie unserer Pflichten gemäß § 312e Abs. 1 Satz 1 BGB in Verbindung mit § 3 BGB-InfoV. Zur Wahrung der Widerrufsfrist genügt die rechtzeitige Absendung des Widerrufs oder der Sache. Der Widerruf ist zu richten an:<br><br>Usama Abdin, EGYPT BAZAR OLINE SHOP, Edelweißstr. 1, D- 61231 Bad Nauheim, E-Mail: info@egyptbazar.de. <br><br>Widerrufsfolgen <br><br>Im Falle eines wirksamen Widerrufs sind die beiderseits empfangenen Leistungen zurückzugewähren und ggf. gezogene Nutzungen (z. B. Zinsen) herauszugeben. Können Sie uns die empfangene Leistung ganz oder teilweise nicht oder nur in verschlechtertem Zustand zurückgewähren, müssen Sie uns insoweit ggf. Wertersatz leisten. Bei der Überlassung von Sachen gilt dies nicht, wenn die Verschlechterung der Sache ausschließlich auf deren Prüfung - wie sie Ihnen etwa im Ladengeschäft möglich gewesen wäre - zurückzuführen ist. Im Übrigen können Sie die Pflicht zum Wertersatz für eine durch die bestimmungsgemäße Ingebrauchnahme der Sache entstandene Verschlechterung vermeiden, indem Sie die Sache nicht wie Ihr Eigentum in Gebrauch nehmen und alles unterlassen, was deren Wert beeinträchtigt. Paketversandfähige Sachen sind auf unsere Gefahr zurückzusenden. Sie haben die Kosten der Rücksendung zu tragen, wenn die gelieferte Ware der bestellten entspricht und wenn der Preis der zurückzusendenden Sache einen Betrag von 40 Euro nicht übersteigt oder wenn Sie bei einem höheren Preis der Sache zum Zeitpunkt des Widerrufs noch nicht die Gegenleistung oder eine vertraglich vereinbarte Teilzahlung erbracht haben. Anderenfalls ist die Rücksendung für Sie kostenfrei. Nicht paketversandfähige Sachen werden bei Ihnen abgeholt. Verpflichtungen zur Erstattung von Zahlungen müssen innerhalb von 30 Tagen erfüllt werden. Die Frist beginnt für Sie mit der Absendung Ihrer Widerrufserklärung oder der Sache, für uns mit deren Empfang.<br>Besondere Hinweise<br><br>Das Widerrufsrecht besteht nicht bei Fernabsatzverträgen zur Lieferung von Audio- oder Videoaufzeichnungen oder von Software, sofern die gelieferten Datenträger vom Verbraucher entsiegelt worden sind.<br>Ende der Widerrufsbelehrung <br><br>4.2 Wenn Sie Unternehmer im Sinne des § 14 Bürgerlichen Gesetzbuches (BGB) sind und bei Abschluss des Vertrags in Ausübung Ihrer gewerblichen oder selbständigen Tätigkeit handeln, besteht das Widerrufsrecht nicht.<br><br><br><br>§ 5 Kostentragungsvereinbarung<br><br>Machen Sie von Ihrem Widerrufsrecht gemäß § 4 Gebrauch, haben Sie die regelmäßigen Kosten der Rücksendung zu tragen, wenn die gelieferte Ware der bestellten entspricht und wenn der Preis der zurückzusendenden Sache einen Betrag von 40 Euro nicht übersteigt oder wenn Sie bei einem höheren Preis der Sache zum Zeitpunkt des Widerrufs noch nicht die Gegenleistung oder eine vertraglich vereinbarte Teilzahlung erbracht haben. Anderenfalls ist die Rücksendung für Sie kostenfrei.<br><br>§ 6 Eigentumsvorbehalt<br><br>Die gelieferte Ware bleibt bis zur vollständigen Bezahlung unser Eigentum. Vor Übergang des Eigentums ist eine Verpfändung, Sicherungsübereignung, Verarbeitung oder Umgestaltung ohne unsere Zustimmung nicht gestattet.<br><br><br><br>§ 7 Preise und Versandkosten<br><br>7.1 Alle Preise gelten inklusive der gesetzlichen Mehrwertsteuer. Es gilt kein Mindestbestellwert. Wir liefern mit DHL oder einem anderen Anbieter unserer Wahl.<br><br>7.2 Die Versandkosten betragen bei Lieferung innerhalb Deutschlands bei Zahlung per Vorkasse oder Paypal pauschal 4,50 EUR. Bei Zahlung per Nachnahme werden zusätzliche Gebühren in Höhe von 7,00 EUR fällig (2,00 EUR Nachnahmegebühr, die der Zusteller vor Ort erhebt und 5,00 EUR Zahlkartengebühr, die wir Ihnen berechnen). Ab einem Warenwert von 99,00 EUR liefern wie versandkostenfrei. Bei Lieferung per Nachnahme fallen bei einem Warenwert ab 99,00 EUR nur die Nachnahmegebühren in Höhe von 7,00 EUR an.<br><br>7.3 Bei Lieferung nach Österreich, Dänemark, Belgien, Niederlande, Frankreich, Großbritannien, Irland , Italien , Spanien, Polen, Portugal und Luxemburg berechnen wir unabhängig vom Bestellwert pauschal 9,50 EUR pro Bestellung. Bei Lieferungen in die Schweiz, USA und Kanada berechnen wir unabhängig vom Bestellwert pauschal 13,00 EUR pro Bestellung.<br><br>7.4 Bei Lieferungen in das Nicht-EU Ausland fallen zusätzliche Zölle und Gebühren an. Weitere Informationen zur Lieferung in die Schweiz finden Sie auf der Internetseite der Schweizer Zollbehörden unter http://xtares.admin.ch/. <br><br><br><br>§ 8 Lieferbedingungen<br><br>8.1 Wir liefern ausschließlich innerhalb Deutschlands und in die unter Ziffer 7.3 genannten Länder. <br><br>8.2 Die Ware wird, sofern nicht beim Angebot anders angegeben, innerhalb von 2 Werktagen nach Zahlungseingang in den Versand gebracht. Bei Lieferung per Nachnahme wird die Ware, sofern nicht beim Angebot anders angegeben, innerhalb von 2 Werktagen nach Zustellung der Auftragsbestätigung in den Versand gebracht.<br><br><br><br>§ 9 Zahlungsbedingungen<br><br>9.1 Die Zahlung erfolgt wahlweise per Vorkasse durch Vorab-Überweisung, per Paypal oder per Nachnahme. Bei Wahl der Zahlungsart Vorkasse nennen wir Ihnen unsere in der Auftragsbestätigung. Bei Zahlung per Paypal nennen wir Ihnen unsere E-Mail zur Vornahme der Zahlung ebenfalls in der Auftragsbestätigung. Der Rechnungsbetrag ist binnen 10 Tagen nach Zugang der Auftragsbestätigung an uns zu überweisen.<br><br>9.2 Mit Eintritt des Zahlungsverzugs ist der Kaufpreis während des Verzuges in Höhe von 5% über dem Basiszinssatz zu verzinsen. Wir behalten uns vor, einen höheren Verzugsschaden nachzuweisen und geltend zu machen. <br><br><br><br>10. Gewährleistung<br><br>Die Gewährleistung erfolgt nach den gesetzlichen Bestimmungen. <br><br><br>11. Kundendienst<br><br>Bei Anfragen, Reklamationen oder Beschwerden erreichen unseren Kundendienst Montags- Freitags in der zeit von 19:00 bis 21:00 Uhr sowie Samtstags und Sonntags von 9:00 bis 21:00 Uhr telefonisch unter 06032-867452 sowie per E-Mail unter info@egyptbazar.de.<br><br><br><br>12. Trusted Shops-Siegel, Geld-zurück-Garantie<br><br>Wir sind Trusted Shops-Mitglied und bieten Ihnen als zusätzlichen Service die Geld-zurück-Garantie von Atradius an. Wir übernehmen alle Kosten dieser Garantie, Sie müssen sich lediglich nach der Bestellung anmelden. Die Geld-zurück-Garantie greift bei Nicht-Lieferung, Nicht-Erstattung nach Rückgabe und Kreditkartenmissbrauch. Einzelheiten finden Sie unter www.trustedshops.de. <br><br>13. Datenschutz<br><br>13.1 Datenerhebung<br><br>Wir (Egypt Bazar) erheben Daten beim Anbahnen, beim Abschluss, beim Abwickeln und beim Rückabwickeln eines Kaufvertrages. Diese Daten werden von uns erhoben, gespeichert und verarbeitet. <br><br>Ihr Besuch auf unseren Webseiten wird protokolliert. Erfasst werden im Wesentlichen die aktuell von Ihrem PC verwendete IP-Adresse, Datum und Uhrzeit, der Browsertyp und das Betriebssystem Ihres PC sowie die von Ihnen betrachteten Seiten. Ein Personenbezug ist uns im Regelfall nicht möglich und auch nicht beabsichtigt. <br><br>13.2 Datenverwendung und –weitergabe <br><br>Die personenbezogenen Daten, die Sie uns z.B. bei einer Bestellung oder per E-Mail mitteilen (z.B. Ihr Name und Ihre Adresse oder Ihre E-Mail-Adresse), werden nur zur Korrespondenz mit Ihnen und nur für den Zweck verarbeitet, zu dem Sie uns die Daten zur Verfügung gestellt haben. Wir geben Ihre Daten nur an das mit der Lieferung beauftragte Versandunternehmen weiter, soweit dies zur Lieferung der Waren notwendig ist. Zur Abwicklung von Zahlungen geben wir Ihre Zahlungsdaten an das mit der Zahlung beauftragte Kreditinstitut weiter. <br><br>Wir versichern, dass wir Ihre personenbezogenen Daten im übrigen nicht an Dritte weitergeben, es sei denn, dass wir dazu gesetzlich verpflichtet wären oder Sie uns vorher Ihre Zustimmung gegeben haben. Soweit wir zur Durchführung und Abwicklung von Verarbeitungsprozessen Dienstleister in Anspruch nehmen, werden die Vertragsverhältnisse nach den Bestimmungen des Bundesdatenschutzgesetzes geregelt. <br><br>13.3 Einwilligung und Widerruf<br>Wenn Sie uns personenbezogene Daten überlassen haben, können Sie diese jederzeit wieder löschen. Daten für Abrechnungs- und buchhalterische Zwecke sind von einer Kündigung/einem Widerruf bzw. von einer Löschung nicht berührt. <br><br><br>13.4 Speicherdauer<br><br>Personenbezogene Daten, die uns über unsere Website mitgeteilt worden sind, werden nur so lange gespeichert, bis der Zweck erfüllt ist, zu dem sie uns anvertraut wurden. Soweit handels- und steuerrechtliche Aufbewahrungsfristen zu beachten sind, kann die Speicherdauer zu bestimmten Daten bis zu 10 Jahre betragen.<br><br>13.5 Ihre Rechte<br><br>Sollten Sie mit der Speicherung Ihrer personenbezogenen Daten nicht mehr einverstanden oder diese unrichtig geworden sein, werden wir auf eine entsprechende Weisung hin die Löschung oder Sperrung Ihrer Daten veranlassen oder die notwendigen Korrekturen vornehmen (soweit dies nach dem geltendem Recht möglich ist). Auf Wunsch erhalten Sie unentgeltlich Auskunft über alle personenbezogenen Daten, die wir über Sie gespeichert haben.<br><br>Bei Fragen zur Erhebung, Verarbeitung oder Nutzung Ihrer personenbezogenen Daten, bei Auskünften, Berichtigung, Sperrung oder Löschung von Daten wenden Sie sich bitte an:<br><br>Usama Abdin, EGYPT BAZAR OLINE SHOP, E-Mail info@egyptbazar.de.<br><br>§ 14 Schlussbestimmungen<br><br>14.1 Es gilt deutsches Recht unter Ausschluss des einheitlichen UN-Kaufrechts. <br><br>14.2 Bei Kunden, die den Vertrag zu einem Zweck schließen, der nicht der beruflichen oder gewerblichen Tätigkeit zugerechnet werden kann (Verbraucher) gilt diese Rechtswahl nur insoweit, als dadurch nicht der durch zwingende Bestimmungen des Rechts des Staates, in dem er seinen gewöhnlichen Aufenthalt hat, entzogen wird.<br><br>14.3 Soweit Sie Kaufmann, eine juristische Person des öffentlichen Rechts oder ein öffentlich-rechtliches Sondervermögen sind, ist der Gerichtsstand 61231 Bad Nauheim.<br><br>14.4 Die Vertragssprache ist deutsch.<br><br>14.5 Sollte eine Bestimmung des Vertrages oder der Allgemeinen Geschäftsbedingungen unwirksam sein oder werden oder sollte der Vertrag unvollständig sein, so wird der Vertrag im übrigen davon nicht berührt. <br><br><br>Stand 03.07.2009<br>";
	
	sum=0;
	vatsum=0;
	shippingcost=0;
	totalweight=0;
	
	if (newwindow) {
		// Neues Fenster zum Ausdrucken
	
		mywindow=open("","printwindow","left=10,top=10,width=600,height=550,status=yes,scrollbars=yes,menubar=yes,toolbar=yes,resizable=yes");
		mydoc=mywindow.document;
		
		mydoc.write("<html><head><title>Bestellformular</title></head></html>");
		mydoc.write("<body>");

		mydoc.write("<style>");
		mydoc.write("td.s2d {font-size:10pt; font-family : Arial, Helvetica, sans-serif;} ");
		mydoc.write("h1.s2d {font-family: Arial, Helvetica, sans-serif; font-size: 20pt; font-weight : bold; margin-top : 0pt; margin-bottom : 0pt;} ");
		mydoc.write("</style>");
		
		mydoc.write("<table width='100%' cellpadding='5' cellspacing='3' border='0'>");
		mydoc.write("<tr><td class='s2d'><h1 class='s2d'>Bestellformular</h1></td></tr>");
		mydoc.write("<tr><td class='s2d'>"+parent.paymentmethod[parent.selectedpaymentmethod].email+"<br></td></tr>");

		mydoc.write("<tr><td class='s2d'><br></td></tr>");
		mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Name:</strong><br></td></tr>");
		mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Adresse:</strong><br></td></tr>");
		mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>PLZ und Ort:</strong><br></td></tr>");
		mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Telefonnummer:</strong><br></td></tr>");

		mydoc.write("<tr><td class='s2d'><br></td></tr>");
		
		switch (parent.paymentmethod[parent.selectedpaymentmethod].parameter[0]) {
			case "printdebit":
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Kontonummer:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Bankleitzahl:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Kreditinstitut:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Kontoinhaber:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d'><br></td></tr>");
				break;
			case "printcreditcard":
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Kartentyp (bitte ankreuzen): "+parent.paymentmethod[parent.selectedpaymentmethod].parameter[1]+"</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Kartennummer:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Karteninhaber:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Gültig bis:</strong><br></td></tr>");
				mydoc.write("<tr><td class='s2d'><br></td></tr>");
				break;
		}

		mydoc.write("<tr><td class='s2d' style='border-bottom: 1px solid #000000;' solid;'><strong>Datum, Ort, Unterschrift:</strong><br></td></tr>");		
		mydoc.write("<tr><td class='s2d'><br></td></tr>");

		mydoc.write("</table>");
	}
	else {
		mydoc=document;
	}
	
	// Überschrift

	mydoc.write("<table width='100%' cellpadding='2'>");
	mydoc.write("<tr>");
	mydoc.write("<td align='left' colspan='2' class='s2d'><strong>Anzahl</strong></td>");
	mydoc.write("<td width='100%' class='s2d'><strong>Bezeichnung</strong></td>");
		mydoc.write("<td nowrap align='right' class='s2d'><strong>Einzelpreis</strong></td>");
	mydoc.write("<td nowrap align='right' class='s2d'><strong>Gesamtpreis</strong></td>");
	mydoc.write("</tr>");
	mydoc.write("<tr>");
	
	// Positionen
	
	for (i=0;i<parent.basket.length;i++) {
		if (parent.basket[i].quantity!=0) {
			mydoc.write("<tr>");
			mydoc.write("<td class='s2d'>"+parent.basket[i].quantity+"</td>");
			mydoc.write("<td class='s2d'>"+htmlChars(parent.basket[i].unit)+"&nbsp;</td>");
			mydoc.write("<td width='100%' class='s2d'>"+htmlChars(parent.basket[i].caption)+"</td>");
						mydoc.write("<td nowrap align='right' class='s2d'>"+format(parent.basket[i].actualpriceone)+" EUR*</td>");
			mydoc.write("<td nowrap align='right' class='s2d'>"+format(parent.basket[i].actualpriceall)+" EUR*</td>");
			mydoc.write("</tr>");
			
			sum+=parent.basket[i].actualpriceall;
			totalweight+=parent.basket[i].weight*parent.basket[i].quantity;

			// Ust rechnen
			addVat(vat,parent.basket[i].vat,parent.basket[i].actualpriceall);
		}
	}
	
	// Abstand

	mydoc.write("<tr>");
			mydoc.write("<td colspan='5' align='left' class='s2d'></td>");		
		mydoc.write("</tr>");
	
	// Versandkosten
	
	i=parent.selectedshippingmethod;
	if (i!=-1) {
		shippingcaption=parent.shippingmethod[i].caption;
		if (parent.shippingmethod[i].actualprice!=0) {
			shippingcost=parent.shippingmethod[i].actualprice;
			addVat(vat, parent.shippingmethod[i].vat, parent.shippingmethod[i].actualprice);
		}
	}	

	i=parent.selectedpaymentmethod;
	if (i!=-1) {
		paymentcaption=parent.paymentmethod[i].caption;
		if (parent.paymentmethod[i].price!=0) {
			shippingcost+=parent.paymentmethod[i].actualprice;
			addVat(vat, parent.paymentmethod[i].vat, parent.paymentmethod[i].actualprice);
		}
	}	
	
	sum+=shippingcost;
		
	mydoc.write("<tr>");
			mydoc.write("<td colspan='4' align='right' class='s2d'>Versandkosten:</td>");
		mydoc.write("<td nowrap align='right' class='s2d'>"+format(shippingcost)+" EUR*</td>");
	mydoc.write("</tr>");

	// Abstand

	mydoc.write("<tr>");
			mydoc.write("<td colspan='5' align='left'></td>");		
		mydoc.write("</tr>");
	
	
	// Ust zeigen	
	vat.sort(sortVat);

			for (i=0;i<vat.length;i++) {
			mydoc.write("<tr>");
			mydoc.write("<td colspan='4' align='right' class='s2d'>"+vat[i].percent+"% USt.:</td>");
			mydoc.write("<td nowrap align='right' class='s2d'>"+format(vat[i].amount)+" EUR*</td>");
			mydoc.write("</tr>");
		}	

		mydoc.write("<tr>");
		mydoc.write("<td colspan='6' align='left'></td>");		
		mydoc.write("</tr>");

		mydoc.write("<tr>");
		mydoc.write("<td colspan='4' align='right' class='s2d'><strong>Endsumme:</strong></td>");
		mydoc.write("<td nowrap align='right' class='s2d'><strong>"+format(sum)+" EUR*</strong></td>");
		mydoc.write("</tr>");
			
	mydoc.write("</table>");
	mydoc.write("</form>");
	
	mydoc.write("<table cellpadding='2'>");

	mydoc.write("<tr>");
	mydoc.write("<td nowrap class='s2d'>Gewünschte Versandart: </td>");
	mydoc.write("<td nowrap class='s2d'>"+shippingcaption+"</td>");
	mydoc.write("</tr>");
	
	if (totalweight>0) {
		mydoc.write("<tr>");
		mydoc.write("<td nowrap class='s2d'>Gesamtgewicht: </td>");
		mydoc.write("<td nowrap class='s2d'>"+formatweight(totalweight)+" kg</td>");
		mydoc.write("</tr>");
	}

	mydoc.write("<tr>");
	mydoc.write("<td nowrap class='s2d'>Gewünschte Zahlungsweise: </td>");
	mydoc.write("<td nowrap class='s2d'>"+paymentcaption+"</td>");
	mydoc.write("</tr>");
	
	mydoc.write("<tr>");
	mydoc.write("<td nowrap class='s2d' colspan='2'><br></td>");
	mydoc.write("</tr>");

	mydoc.write("</table>");	
		
	if (newwindow) {
		mydoc.write("<table cellpadding='2' width='100%'><tr><td class='s2d' align='center'><br>"+shopaddress+"</td></tr></table>");
		mydoc.write("</body>");
		mydoc.write("</html>");
		mydoc.close();
	}
	else {
		mydoc.write("<table cellpadding='2' width='100%'>");
		mydoc.write("<tr><td class='s2d'><p>Bitte überprüfen Sie Ihre Eingaben. Sie können diese durch Klicken auf \"Zurück\" korrigieren. Wenn alle Eingaben richtig sind, klicken Sie auf \"Weiter\".</p>");
						mydoc.write("</td></tr>");		
		mydoc.write("<form name='formagb'><tr><td class='s2d'><input type='checkbox' name='checkagb' value='1'><strong>Ich habe die AGB zur Kenntnis genommen.</strong><br><br></td></tr></form>");
		mydoc.write("</table>");

		// Jetzt das versteckte Transfer-Formular
		
		switch (parent.paymentmethod[parent.selectedpaymentmethod].parameter[0]) {
			case "iclear":
				// iClear-Modus
		
				mydoc.write("<form name='orderform' action='https://www.iclear.de/servlets/GenBuyTool' method='post' target='orderwindow'>");
				mydoc.write("<input type='hidden' name='ShopID' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[1]+"'>");
				mydoc.write("<input type='hidden' name='BasketID' value='shop to date order'>");
				mydoc.write("<input type='hidden' name='Currency' value='EUR'>");
				j=0;
				
				var products="";
			
				// Produkt-Schleife
			
				for (i=0;i<parent.basket.length;i++) {
					if (parent.basket[i].quantity!=0) {
						j++;
						products+=iclearChars(parent.basket[i].caption)+"::";
						products+=iclearChars(parent.basket[i].id)+"::";
						products+=parent.basket[i].quantity+"::";
													products+=parent.basket[i].actualpriceone/(parent.basket[i].vat/100+1)+"::";
 							products+=parent.basket[i].actualpriceone+"::";
												products+=parent.basket[i].vat+":::";
					}
				}
			
				// Versandart als Produkt

				j++;
				products+=iclearChars("Gewünschte Versandart "+shippingcaption)+"::";
				products+="::";
				products+="1::";
									products+=shippingcost/(parent.shippingmethod[parent.selectedshippingmethod].vat/100+1)+"::";
					products+=shippingcost+"::";
								products+=parent.shippingmethod[parent.selectedshippingmethod].vat+":::";

				mydoc.write("<input type='hidden' name='Products' value='"+products+"'>");
				mydoc.write("<input type='hidden' name='ProductIndex' value='"+j+"'>");
				mydoc.write("</form>");
				break;

			default:
				// Normal-Modus
		
				mydoc.write("<form name='orderform' action='http://www.egyptbazar.de/gateway.php' method='post' target='orderwindow'>");
				j=0;
				for (i=0;i<parent.basket.length;i++) {
					if (parent.basket[i].quantity!=0) {
						j++;
						mydoc.write("<input type='hidden' name='PUID"+j+"' value='"+parent.basket[i].uid+"'>");
						mydoc.write("<input type='hidden' name='PPID"+j+"' value='"+htmlChars(parent.basket[i].id)+"'>");
						mydoc.write("<input type='hidden' name='PQNT"+j+"' value='"+parent.basket[i].quantity+"'>");
						mydoc.write("<input type='hidden' name='PUNT"+j+"' value='"+htmlChars(parent.basket[i].unit)+"'>");
						mydoc.write("<input type='hidden' name='PCAP"+j+"' value='"+htmlChars(parent.basket[i].caption)+"'>");
						mydoc.write("<input type='hidden' name='PPRI"+j+"' value='"+parent.basket[i].actualpriceone+"'>");
						mydoc.write("<input type='hidden' name='PVAT"+j+"' value='"+parent.basket[i].vat+"'>");
						mydoc.write("<input type='hidden' name='PRVA"+j+"' value='"+parent.basket[i].variationa+"'>");
						mydoc.write("<input type='hidden' name='PRVB"+j+"' value='"+parent.basket[i].variationb+"'>");
					}
				}
				mydoc.write("<input type='hidden' name='OPAY' value='"+htmlChars(paymentcaption)+"'>");
				mydoc.write("<input type='hidden' name='OSHP' value='"+htmlChars(shippingcaption)+"'>");
				mydoc.write("<input type='hidden' name='OCUR' value='EUR*'>");
				mydoc.write("<input type='hidden' name='OB2B' value=''>");
				mydoc.write("<input type='hidden' name='OSPR' value='"+shippingcost+"'>");
				mydoc.write("<input type='hidden' name='OSPV' value='"+parent.shippingmethod[parent.selectedshippingmethod].vat+"'>");
				mydoc.write("<input type='hidden' name='OWGT' value='"+totalweight+"'>");
				mydoc.write("<input type='hidden' name='OTOT' value='"+(sum+vatsum)+"'>");
				mydoc.write("<input type='hidden' name='OTVT' value='"+vatsum+"'>");
				mydoc.write("<input type='hidden' name='GVER' value='"+parent.paymentmethod[parent.selectedpaymentmethod].version+"'>");
				mydoc.write("<input type='hidden' name='GPR0' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[0]+"'>");
				mydoc.write("<input type='hidden' name='GPR1' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[1]+"'>");
				mydoc.write("<input type='hidden' name='GPR2' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[2]+"'>");
				mydoc.write("<input type='hidden' name='GPR3' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[3]+"'>");
				mydoc.write("<input type='hidden' name='GPR4' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[4]+"'>");
				mydoc.write("<input type='hidden' name='GPR5' value='"+parent.paymentmethod[parent.selectedpaymentmethod].parameter[5]+"'>");
				mydoc.write("<input type='hidden' name='GMSP' value='"+htmlChars(parent.paymentmethod[parent.selectedpaymentmethod].postgateway)+"'>");
				mydoc.write("<input type='hidden' name='GMSE' value='"+htmlChars(parent.paymentmethod[parent.selectedpaymentmethod].email)+"'>");
				mydoc.write("<input type='hidden' name='GSAD' value='"+htmlChars(shopaddress)+"'>");
				mydoc.write("<input type='hidden' name='GNEW' value=''>");
				mydoc.write("<input type='hidden' name='GTSI' value='XD548412A22D6744EDED85B1F629159F2'>");
				mydoc.write("</form>");
		}
		mydoc.write("<table width='100%' cellpadding='2'>");
		mydoc.write("<tr>");		
		mydoc.write("<td align='left'><a href='s2dpayment.html'><img src='images/pbskt.gif' width='150' height='25' alt='' border='0'></a></td>");
		mydoc.write("<td align='right'><a href='' onclick='submitOrder();return false;'><img src='images/pcob.gif' width='150' height='25' alt='' border='0'></a></td>");
		mydoc.write("</tr>");		
		mydoc.write("</table>");

	}
}

function completeShow() {
	
	// Abschlußscreen zeigen

	document.write("<p>"+parent.paymentmethod[parent.selectedpaymentmethod].pregateway+"<br><br><br></p>");
	document.write("<table width='100%' border='0' cellpadding='0' cellspacing='0'>");
	document.write("<tr>");
	document.write("<td align='left'><a href='s2dsummary.html'><img src='images/pbskt.gif' width='150' height='25' alt='' border='0'></a></td>");
	document.write("<td align='right'><a onclick='parent.basket.length=0;return true;' href='./index.html'><img src='images/psmb.gif' width='150' height='25' alt='' border='0'></a></td>");
	document.write("<tr>");
	document.write("</table>");
}

function submitOrder() {

	// Bestellung absenden
	
	if (!document.formagb.checkagb.checked) {
		alert("Bitte lesen Sie unsere AGB und markieren Sie das Feld \"Ich habe die AGB zur Kenntnis genommen\", bevor Sie fortfahren.")
	}
	else {

		switch (parent.paymentmethod[parent.selectedpaymentmethod].parameter[0]) {
		case "printdebit":
		case "printcod":
		case "printcheque":
		case "printremittance":
		case "printcreditcard":
		case "printinvoice":
			summaryShowEx(true);	
			self.location="s2dcomplete.html";
			break;
		default:
			var mywindow=window.open("","orderwindow","left=10,top=10,width=600,height=550,status=yes,scrollbars=yes");
			mywindow.focus();
			document.orderform.submit();
			self.location="s2dcomplete.html";
		}
	}
}

