// Warenkorb-Teilmodul zum Shopmichel ... gehört zum
/* Warenkorbsystem ohne (!) Cookie-Technologie */
/* von J.-Chr. Hanke, Modul-Version 2.10, September 2006 */
// Shopmichel.de Version 2.3 vom September 2006
// 
// Funktion merkt einzelne Produkte vor (Warenkorb)
// gespeichert wird Produkt mit Anzahl
// ... daher universell einsetzbar nicht nur für Warenkorb
// Dank an Chr. Roth für Nachnahme-Skript
// Offene Schnittstelle: Daten können per Formmailer (PHP)
// oder auch per mailto weitergegeben werden.
// Im ersten Falle erhält der Kunde eine Bestätigungs-Mail.

// EDITIEREN ANFANG

var orderinfo="<p class='acht'>Many thanks for <b>Your choice</b>!" +
" You merely still fill out the ordering form now!</p>" +
"<p class='acht'>This one is the most comfortable and fastest way " +
"<strong>Online-Order</strong>, this one us you immediately " +
"with one <b>E-Mail</b> confirming.</p>";

orderinfo+="<h4>Fine print!</h4>" +
"<p class='acht'>You already have yourself<b>inform</b>?<br><br> --&gt; " +
"[ <a href='agb.html' onclick=\"popwin('agb.html'); return false\">" +
"Business conditions</a> ]<br> --&gt; " +
"[ <a href='versandkosten.html' onclick=\"popwin('versandkosten.html'); return false\">" +
"Dispatch costs</a> ]<br><br>" +
"<p class='acht'>Information about it<br><br>  --&gt; " +
"[ <a href='widerruf.html' onclick=\"popwin('widerruf.html'); return false\">" +
"Revocation right</a> ]</p>" +
"<p class='rahmen'>Recommendations : <b class='blue'>print</b> the documents " +
" or you store the documents!</p>";

orderinfo+=shipspeed;

orderinfo+="<h2>Protection of data privacy</h2>" +
"<p class='acht'>We only save your address for  <strong>" +
"Internet purposes</strong> (any time revocable) and giving her  " +
"to third <b>parties only</b> then far, provided that this for this one " +
"execution of the order absolutely is necessary (Forwarding agency)!</p>";

// document.write(orderinfo);

// EDITIEREN ENDE


// Funktion gibt passende Produkt-Daten 
// in ass. Array prodata zurück
function promatch(pro_num) { // 1
// alert("pro_num am Anfang anzeigen: " + pro_num);
var prodata=new Array()
for(i=0;i<prod.length;i++) { // 2

var prodinr=prod[i].split("|")[0];
prodinr=killspace(prodinr);
prodata['prodnr']=prodinr;

var prodititle=prod[i].split("|")[1];
prodititle=killspace(prodititle);
prodata['prodtitle']=prodititle;

var proditext=prod[i].split("|")[2];
proditext=killspace(proditext);
prodata['prodtext']=proditext;

var prodicat=prod[i].split("|")[3];
prodicat=killspace(prodicat);
prodicat=prodicat.split(",")[0];
prodata['prodcat']=prodicat;

var prodiver=prod[i].split("|")[4];
prodiver=killspace(prodiver);
prodiver=prodiver.split(",");

var prodiprice=prod[i].split("|")[5];
prodiprice=killspace(prodiprice);
prodiprice=prodiprice.split(",");

if (prodivat=prod[i].split("|")[6]) {
var prodivat=prod[i].split("|")[6];
prodivat=killspace(prodivat);
} else { 
var prodivat=0; // Abwärtskompatibilität SM 2.07 
}

if (prodivat!="" && prodivat!=0) {
prodivat=vat2;
}
else {
prodivat=vat;
}
prodata['prodvat']=prodivat;

if (prodiver.length>1) { // &&&&&&&&&&&&&&&& 3

for (k=0;k<prodiver.length;k++) { // FOR AUF --- 4
if (pro_num==prodinr+prodiver[k]) { // IF AUF ### 5
prodata['prodver']=prodiver[k];
prodata['prodprice']=prodiprice[k];
return prodata;
} // IF ZU ### // 7
} // FOR ZU --- // 6

} // &&&&&&&&&&&&&&&& // 5

else { // ELSE AUF +++++++++++ 6
if (pro_num==prodinr) { 7
prodata['prodver']="";
prodata['prodprice']=prodiprice[0];

return prodata;
} // 4
} // ELSE ZU ++++++++++ 3

} // 2
} // 1


// ermittelt Anzahl der Produkte
function prodzahl() {
var proza=0; // Variable für Produktanzahl
if (p_safe!="") {
wertinhalt=p_safe.split("#");
for(proza=0;proza<wertinhalt.length-1;proza++) {
}
}
return proza;
}

// WARENKORB GENERIEREN ~~~~~~~~~~~~~~~~~~~~~~~~~~~~

function showbasket() {

var datentext="<div class='acht'>You note down the " +
"desired <b>products here</b>!</div>";
// alert("Im zeigekorb p_safe zeigen: " + p_safe);
var daten=datentext;
if (c>0 && c<1) { // IF ORDER auf
daten=orderinfo;
} // IF ORDER ZU

if (p_safe!="" && c!=0.1 && c!=0.2 || (Number(a) < minamount)) { // IF SAVE auf
datenstart="<div class='acht'>Number of entries: " + 
prodzahl() + "</b></div><br>";
var k_ct=p_safe.split("#");

var p_ges=0;
var k_nr, k_gist, eunit;
daten="";
for (b=0;b<k_ct.length-1;b++) { // FOR AUF

k_nr=k_ct[b].split("_")[0];
k_gist=k_ct[b].split("_")[1];
prodata=promatch(k_gist);

// Neu: Mit Michel-Kollosions-Schutz!!!
if (!check(k_gist)) { return datentext; }
// Michel-Kollisions-Schutz Ende  

if (prodata['prodver']==""){ 
eunit=""; 
} 
else { 
eunit=unit; 
} 

daten+="<div class='acht'>" + 
"<form name='' class='acht'>" +
"<input type=\"text\" class='acht' name=\"anzahl\" " +
"value='" + k_nr + "' maxlength=\"3\" size=\"3\" " +
"title='Menge hier anpassen'" +
"onblur=\"cookiemaker(+this.value+'_" + k_gist + "')\"> " +

"<a href='javascript:location.reload()' title='Anzeige aktualisieren'>" +
"<img src='engine/help/okay.gif' border='0' width='8' " +
"height='9' alt='Anzeige aktualisieren'></a> " +

"&nbsp;<a href=\"javascript:cookiemaker('0_" + k_gist + "')\" " +
"title='Produkt löschen'>" +
"<img src='engine/help/delete.gif' border='0' width='8' " +
"height='9' alt='Produkt löschen'></a> " +

"&nbsp;(<i>" + k_gist+"</i>)</form>" +
"[ <a href='index.html?sp~" + prodata['prodnr'] + "&c~" + 
prodata['prodcat'] + "' title='Anklicken zum Anzeigen'>" + 
prodata['prodver'] + eunit + " " + 
prodata['prodtitle'] + "</a> ]</div>";

var p_einz=k_nr*prodata['prodprice'];
p_ges+=p_einz;

daten+="<div class='acht'>Preis: <i>" + trim(p_einz) + 
"</i> " + currency + "</div><br>";

} // FOR 1 zu

var ho_form="<div><form name=''><input type='button' " +
"onclick='location=\"index.html?c~0.1&a~" + trim2(p_ges) + "\"" +   
"' value='<<-- To the register:' title='" +
"Order complete in the summary'>" +
"</form></div>\n";

if (prodzahl()>=5) {
daten=datenstart + ho_form + "<br>" + daten;
} else {
daten=datenstart + daten;
}

daten+="<div>-----------------</div>";
daten+="<div class='acht'>Total: <b class='dark'>" + trim(p_ges) + 
"</b> " + currency + "</div>";
daten+="<div>-----------------</div><br>";

daten+="<div class='acht'>[ " +
"<a href='javascript:location.reload();' " +
"title='Anzeige aktualisieren'>" +
"Updating advertisement</a> ]<br>" +
"[ <a href='javascript:delnote()' " +
"title='Alles komplett löschen'>" +
wkname + " deleting</a> ]<br>" +
"</div>" +
"<p class='acht'><b>Changing number?</b><br>" +
"Typing new value in!</p>";

daten+=ho_form;

if (p_ges==0) {
window.name="";
}

if (maxamount > p_ges && maxamount != "") {
daten+="<p class='rahmen'>Tipp: Ab einem Bestellwert von " +
"<b> " + trim(maxamount) + "&nbsp;" + currency + 
"</b> zahlen Sie <strong>keine</strong> " +
"<a href='versandkosten.html' onclick=\"popwin('versandkosten.html'); " +
"return false\">Transportation costs</a>!</p>";
}

/* VORBEREITET ANFANG
else {
daten+="<p class='rahmen'>Tipp: Die Ansicht &raquo;Zur Kasse&laquo; ist " +
"auch als <b class='blue'>Faxausdruck</b> ideal!<br>&lt;----</p>";
} VORBEREITET ENDE */

} // IF SAVE zu

return daten;
}

function shipform() {
var shipadd=0; // Additionswert für Versandkostenstaffel

// Versandkostenstaffel berücksichtigen Anfang ***********
if (shipstep) {

if (stepvalue.indexOf(",")>=0) { // shipstep-Array-If ANFANG
var pressv=0; // Vorgängerwert für ssv (stepsplitvalue)

stepvalue=stepvalue.split(",");

for (l=0;l<stepvalue.length;l++) { // FOR AUF

ssv=stepvalue[l].split("=")[0];
ssa=stepvalue[l].split("=")[1];

if (Number(a)>pressv && Number(a) <= ssv) {
var shipadd=ssa;
} 
pressv=ssv;
} // FOR ZU

} // shipstep-Array-If ENDE

} // Versandkostenstaffel berücksichtigen Ende ***********

// alert("shipadd = " + shipadd);

if (Number(a) < minamount) {
return "<p>The minimum order quantity amounts " + 
trim(minamount) + " " + currency + "!</p>" +
"<form><input type=\"button\" onclick=" +
"\"location='index.html?c~2'\" " +
"value=\"Please further shop --&gt;\"></form>";
}
var shipform="<h4><p>Transportation costs: Since this online shop is imaginary for customers from all the world we must a transportation costs making bowl of € 39.- since we deliver from Brazil. You get the true one with an originally Brazilian postmark. If you order from Brazil, we ask you to change to the Brazilian version of the online shop. </p><p>For further information, please, you click on transportation costs. Thank you for your understanding.</p> 1. How do you want to pay?</h4>\n" +
"<p>Wir liefern:</p>\n" +
"<form name='shipform' onsubmit='return shipcheck()'>\n";

if (ship.indexOf(",")>=0) { // ship-Array-If ANFANG

ship=ship.split(",");

for (h=0;h<ship.length;h++) {
shipform+="<div><input type='radio' value='" + 
h + "' name='sc'> per <strong>" +
ship[h].split("=")[0] + "</strong>";

if (Number(a) > maxamount && maxamount != 0) {

//*CR*
//shipform+="&nbsp;(keine Versandkosten)</div>\n ";
if (ship[h].split("=")[0]=="Nachnahme")
{
  shipform+="&nbsp;(zuzügl. <b>" + trim(ship_nn) + "&nbsp;" + currency + "</b> Nachnahmegebühr)</div>\n ";
}
else
{
  shipform+="&nbsp;(keine Versandkosten)</div>\n ";
}

} 
else {
vkosten=Number(ship[h].split("=")[1])+Number(shipadd);
//*CR*
if (ship[h].split("=")[0]=="Nachnahme")
{
  shipform+="&nbsp;(zuzügl. <b>" + trim(vkosten) + 
"&nbsp;" + currency + "</b> Versandkosten, <b>" + trim(ship_nn) + "&nbsp;" + currency +"</b> Nachnahme-Gebühr)</div>\n ";
}
else
{
  shipform+="&nbsp;(plus <b>" + trim(vkosten) + 
"&nbsp;" + currency + "</b> Transportation costs)</div>\n ";
}

}

} // FOR ZU

} // Shipping-Array-If ENDE
else {
shipform+="<div>... ausschließlich per <strong>" + 
ship.split("=")[0] + "</strong>.<br>";

vkosten=Number(ship.split("=")[1])+Number(shipadd);
if (Number(a) > maxamount && maxamount != 0) {
vkosten=0;
} 

//*CR*
if (ship[h].split("=")[0]=="Nachnahme")
{
shipform+="The transportation costs amount <b>" + trim(vkosten) +
"&nbsp;" + currency + "</b> plus <b>" + trim(ship_nn) + "&nbsp;" + currency + "</b> Cash on delivery charges.<br>" +
"<input type='hidden' name='sc2' value='0'></div>";
}
else
{
shipform+="The transportation costs amount <b>" + trim(vkosten) +
"&nbsp;" + currency + "</b>.<br>" +
"<input type='hidden' name='sc2' value='0'></div>";
}

}

shipform+="<p><input type=\"button\" onclick=" +
"\"location='index.html?c~1'\" " +
"value=\"Stop order!\" " +
"title=\"Do you prefer to shop further?\">\n" +
"<input type=\"submit\" class='blue' " +
"value=\"Ordering now --&gt;&gt;\" " +
"title=\"Execute order for the next step!\">\n" +

"</form></p>\n";

return shipform;
}

function shipcheck() {
var sm=""; // ship method
var notfound=true;

if (document.shipform.sc2) {
sm=document.shipform.sc2.value;
notfound=false;
}

else {
var rg=document.shipform.sc;

for (y=0;y<rg.length;y++) { // for ANFANG

if (rg[y].checked) {
sm=rg[y].value;
notfound=false;
break; 
}

} // for ENDE
} // else ENDE

if (notfound) {
alert ("Please choose a mode of transport!");
return false;
}

window.location="index.html?c~0.2&sm~" + sm; 
return false;
}


// löscht den Notizzettel/Warenkorb auf Nachfrage // neu
function delnote() {
if (confirm("Really want you the complete " +wkname+" delete?")) { 
delcookie();
}
}

// löscht den gesamten Notizzettel/Warenkorb
function delcookie() {
window.name="";
location.reload();
}

// Michel-Kollisions-Schutz für Shophopper
function check(gw) {

ft=false;
for(i=0;i<prod.length;i++) { // FOR LOOP AUSSEN AUF '''''
p_nr=prod[i].split("|")[0];
p_nr=killspace(p_nr);
p_ver=prod[i].split("|")[4];
p_ver=killspace(p_ver);

if (p_ver.indexOf(",")>=0) { // Versions-Array
ppver=p_ver.split(",");
for (j=0;j<ppver.length;j++) {
if (gw==p_nr+ppver[j]) {
ft=true;
break;
}
} // for zu
} // Versions-Array ENDE
else if (gw==p_nr) {
ft=true;
break;
}
}
if (!ft) {
alert("Were you shop straight somewhere else?\n" +
"Welcome to us!");
delcookie();
}
return ft;
}