// Copyright 1999,2000 Roman Krzyzanowski / intermedien GmbH, Nuernberg
//
var isBasketLoaded = false;
var SSL = false;
var backToShopURL = new String("home.html");
//var PlaceOrderAddress = new String("ann.boulens@camarada.ch");
var PlaceOrderAddress = new String("boutique-camarada@stuckelberg.ch");
var items = new Array();
var nrOfItems = 0;
var versand = 0;
var nachnahme = 0;
var orderitems = new String("");
var orderpaymethod = new String("");
var Kunde = new customer('','','','','','','','','','','','','','0','',0,'','','','','','','','','','');
var Bestellung = new order('','','','','','','','','');
var orderWindow;
var shipuid_inland = new Array();
var shipuid_ausland = new Array();
var vatitems = new Array();
vatitems[vatitems.length] = new vat(0,'','','aucune','0',0);

function showBasket(location) {
  var pos = location.pathname.lastIndexOf('/');
  if (pos != -1) {
    backToShopURL = location.pathname.substring(pos+1,location.pathname.length);
  }  
  
  if(window.frames.length == 0) {
    window.location = "basket.html";
  } else {
    window.main_frame.location = "basket.html";
  }
  
}

function openWin(url, windowname, w, h) {
  if (document.location.protocol == 'https:') {
    url = 'http://www.camarada.ch/Boutique/' + url;
  }
  newWin=window.open(url, windowname, "scrollbars=yes,width=" + w + ",height=" + h)
  newWin.focus()
}

function showArt(imagename, w, h)
{
  showWin=window.open("images/products/"+imagename, "article", 
  					  "scrollbars=yes,width=" + w + ",height=" + h)
  showWin.focus()
}

function getURL(filename) {
  var url = new String(filename);
  if (document.location.protocol == 'https:') {
    if (filename == 'basket.html') {
      alert('Vous ne pouvez pas afficher le contenu du panier pendant l\'opération de commande.');
    }
    else if (filename == 'home.html') {
      if (confirm('ATTENTION : vous quittez le serveur sécurisé !\n\nVotre commande va être annulée et votre panier vidé !')) {
        url = 'http://www.camarada.ch/Boutique/';
        self.location = url;
      }
    }  
  } else {
    if(window.frames.length == 0) {
      window.location = url;
    } else {
      window.main_frame.location = url;
    }
  }
}

function browser() {
  var b = new String("unknown");
  if (navigator.appName == "Netscape")
    b = "NN" + navigator.appVersion.charAt(0)
  else if (navigator.appName == "Microsoft Internet Explorer")
    b = "MSIE" + navigator.appVersion.charAt(0);
  return b;         
}

function checknum(str) {
  if (str == "") {
    alert("Veuillez indiquer une valeur comprise entre 0 et 10.")
    return false
  }
  for (var i = 0; i < str.length; i++) {
    var ch = str.substring(i, i + 1)
    if (ch < "0" || ch > "9") {
      alert("Veuillez indiquer une valeur comprise entre 0 et 10.")
      return false
    }
  }
  return true
}

function StringToFloat(str) {
  var s = new String("");
  if (str.indexOf(",") >= 0) {
    s = str.substring(0, str.indexOf(",")) + "." + str.substring(str.indexOf(",")+1, str.length);
  } else s = str;  
  return(parseFloat(s));
}

var eurokurs = StringToFloat('1.5');

function convdec(str) {
  if (str == 0) {
    return "0,00";
  } else {
    var s = "" + Math.round(str * 100);
    return(s.substring(0, s.length-2) + "," + s.substring(s.length-2, s.length));
  }
}

function position(artnr) {
  var j = -1;
  for (var i = 0; i < items.length; i++) {
    if (items[i].artnr == artnr) {
	    j = i;
    }
  }
  return j;  
}

function posname(name) {
  var j = -1;
  for (var i = 0; i < items.length; i++) {
    if (items[i].name == name) {
	    j = i;
    }
  }
  return j;  
}

function getNrOfItems() {
  var j = 0;
  for (var i = 0; i < items.length; i++) {
    j += items[i].qty;
  }  
  return j;  
}

function vat(vid,vstateshort,vstatelong,vname,vvalue,vtotal) {
  this.vid = vid;
  this.vstateshort = vstateshort;
  this.vstatelong = vstatelong;
  this.vname = vname;
  this.vvalue = StringToFloat(vvalue);
  this.vtotal = vtotal;
}

function item(artnr,name,price,qty,uid,image) {
  this.artnr = artnr;
  this.name = name;
  this.price = price;
  this.qty = qty;
  this.uid = uid;
  this.image = image;      
}

function customer(anrede,vorname,nachname,zusatz,firma,strasse,plz,ort,land,telefon,email,
                  sendemail,shipto,shipcost,shiptext,shipuid,paymethod,cc,ccvalid,ccnr,
				  cccustname,bank,bankktonr,bankblz,bankcustname,bemerkung)
{
  this.anrede = anrede;
  this.vorname = vorname;
  this.nachname = nachname;
  this.zusatz = zusatz;
  this.firma = firma;
  this.strasse = strasse;
  this.plz = plz;
  this.ort = ort;
  this.land = land;
  this.telefon = telefon;
  this.email = email;
  this.sendemail = sendemail;
  this.shipto = shipto;
  this.shipcost = shipcost;
  this.shiptext = shiptext;
  this.shipuid = shipuid;
  this.paymethod = paymethod;
  this.cc = cc;
  this.ccvalid = ccvalid;
  this.ccnr = ccnr;
  this.cccustname = cccustname;
  this.bank = bank;
  this.bankktonr = bankktonr;
  this.bankblz = bankblz;
  this.bankcustname = bankcustname;
  this.bemerkung = bemerkung;
}

function order(paymethod,items,subtotal,delivery,cod,total,euro,vat,paymethodshort) {
  this.paymethod = paymethod;
  this.items = items;
  this.subtotal = subtotal;
  this.delivery = delivery;
  this.cod = cod;
  this.total = total;
  this.euro = euro;      
  this.vat = vat;
  this.paymethodshort = paymethodshort;      
}

function initBasket(redirect,timeout) {
  var danke = false;
  var ret = false;
  var mailScript = true;
  var msgTxt = new String("Les informations vont être transmises par e-mail grâce au service de traitement automatique mis en place par Camarada.\n\nCes informations ne sont ni cryptées ni sécurisées. Elles sont susceptibles d\'être interceptées par un tiers.\n\nVous pouvez poursuivre ou annuler cette opération.");
  var mailscripturl = 'http://www.camarada.ch/cgi-bin/mws_mail.cgi';
/*  if (navigator.javaEnabled() == true) {
    if (navigator.userAgent.indexOf('Mac') == -1) {
      if (window.main_frame.document.mailer.send()) {
	    danke = true;
      } else {
	    mailScript = true;
  	  }
	} else {
	  mailScript = true;
	}  
  } else {
    mailScript = true;
  }*/
  if (mailScript == true) {
	if (mailscripturl == 'http://www.camarada.ch/cgi-bin/mws_mail.cgi') {
  	  if (confirm(msgTxt)) { 
        ret = true;
        danke = true;
	  }
	} else {
      ret = true;
  	  danke = true;
	}
  }
  if (ret == true) {
    var orderWin=window.open("", "OrderWindow", "scrollbars=yes,width=300,height=100");
  }	
  for (var i = 0; i < items.length; i++) {
    items[i].qty = 0;
  }
  nrOfItems = 0;
  if (danke == true) {
    if (redirect != '') {
	    if(window.frames.length == 0) {
        window.location = redirect;
      } else {
        window.main_frame.location = redirect;
      }
    }
  }	  
  return ret;
}

function cancelOrder() {
  if (document.location.protocol == 'https:') {
    self.location = 'http://www.camarada.ch/Boutique/';
  } else {
    for (var i = 0; i < items.length; i++) {
      items[i].qty = 0;
    }
    nrOfItems = 0;
    if(window.frames.length == 0) {
      window.location = 'home.html';
    } else {
      window.main_frame.location = 'home.html';
    }
  }
  alert("Votre commande est annulée !");  
}

function addToBasket(form) {
  var g=0,h=0,i=0,j=0,k=0,l=-1,m=-1,n=-1,o=-1,p=0;
  for (var idx = 0; idx < form.elements.length; idx++) {
    if (form.elements[idx].name == 'artnr') g = idx;
    else if (form.elements[idx].name == 'name') h = idx;
    else if (form.elements[idx].name == 'price') i = idx;
    else if (form.elements[idx].name == 'image1') k = idx;
    else if (form.elements[idx].name == 'label1') l = idx;
    else if (form.elements[idx].name == 'option1' &&
		(form.elements[idx].type != 'radio' || form.elements[idx].checked)) m = idx;
    else if (form.elements[idx].name == 'label2') n = idx;
    else if (form.elements[idx].name == 'option2' &&
		(form.elements[idx].type != 'radio' || form.elements[idx].checked)) o = idx;
    else if (form.elements[idx].name == 'quantity') p = idx;
  }
  var p_artnr = form.elements[g].value;
  var p_name = form.elements[h].value;
  if(l >= 0 && m >= 0) {
    if (form.elements[m].type == 'select-one') {
      p_name += ', ' + form.elements[l].value;
      p_name += ' ' + form.elements[m].options[form.elements[m].selectedIndex].value;  
    } else {
	  if(form.elements[m].value != '') {
        p_name += ', ' + form.elements[l].value;
        p_name += ' ' + form.elements[m].value;
	  }
    }
  }
  if(n >= 0 && o >= 0) {
    if (form.elements[o].type == 'select-one') {
      p_name += ', ' + form.elements[n].value;
      p_name += ' ' + form.elements[o].options[form.elements[o].selectedIndex].value;  
    } else {
      p_name += ', ' + form.elements[n].value;
      p_name += ' ' + form.elements[o].value;
    }
  }
  var p_price = StringToFloat(form.elements[i].value);
  var p_image = form.elements[k].value;
  var p_qty = parseInt(form.elements[p].options[form.elements[p].selectedIndex].value,10);
  var pos = position(p_artnr);
  if (pos >= 0 ) { // Artikel befindet sich bereits im Warenkorb
    if (items[pos].name == p_name) {
      items[pos].qty += p_qty;
    } else {
      items[items.length] = new item(p_artnr,p_name,p_price,p_qty,1,p_image);
    }  
  } else {
    items[items.length] = new item(p_artnr,p_name,p_price,p_qty,1,p_image);
  }  
  nrOfItems = getNrOfItems();
  openWin('basket_popup.html','newWindow','600','440');
//  parent.basketviewer_frame.location="../basketviewer.html";
}

function deleteFromBasket(artnr) {
  var pos = position(artnr);
  items[pos].qty = 0;
  nrOfItems = getNrOfItems();
  if(window.frames.length == 0) {
    window.location = "basket.html";
  } else {
    window.main_frame.location = "basket.html";
  }
//  parent.basketviewer_frame.location="basketviewer.html";
}

function updateBasket(form) {
  for (var g = 0; g < form.elements.length-1;  g += 2) {
    var h = g + 1; 
    var p_artnr = form.elements[g].value;
    var p_qty = parseInt(form.elements[h].value,10);
    var pos = position(p_artnr);
    if (pos >= 0 ) { // Artikel befindet sich bereits im Warenkorb
      items[pos].qty = p_qty;
    }
  }
  nrOfItems = getNrOfItems();
  if(window.frames.length == 0) {
    window.location = "basket.html";
  } else {
    window.main_frame.location = "basket.html";
  }
//  parent.basketviewer_frame.location="basketviewer.html";
}

function showBasketItems() {
  var s = new String("");
  var subtotal = 0;
  var total = 0;
  for (var i=0; i<items.length; i++) {
    if (items[i].qty > 0) {
      s += '<TR>';
      s += '<td width="29" valign="middle" align="center" bgcolor="#FFFFFF"><FONT FACE="Arial, Helvetica, sans-serif" SIZE="1">';
      s += '<input type="hidden" name="artnr" value="' + items[i].artnr + '">';
      s += '<INPUT TYPE="text" NAME="quantity" VALUE="' + items[i].qty + '" SIZE="2" maxlength="3" ';
      s += 'onChange="if (!parent.checknum(this.value)) {this.focus(); this.select()}">';
      s += '</FONT></TD>';
      s += '<td valign="middle" bgcolor="#FFFFFF" colspan="3"><FONT FACE="Arial, Helvetica, sans-serif" SIZE="1"><B>' + items[i].name + '</B></FONT></TD>';
      s += '<td width="54" align="center" valign="middle" bgcolor="#FFFFFF">';
      if (items[i].image != '') {
        s += '<img src="' + items[i].image + '" width="30">';
      } else {
	    s += ' ';
	  }  
      s += '</td>';
      s += '<td width="41" align="right" valign="middle" bgcolor="#FFFFFF"><FONT FACE="Arial, Helvetica, sans-serif" SIZE="1"><B>' + convdec(items[i].price) + '</B></FONT></TD>';
      subtotal = items[i].qty * items[i].price;
      total += subtotal;
      s += '<td width="64" align="right" valign="middle" bgcolor="#FFFFFF"><FONT FACE="Arial, Helvetica, sans-serif" SIZE="1"><B>' + convdec(subtotal) + '</B></FONT></TD>';
      s += '<td width="21" align="center"><a href="javascript:parent.deleteFromBasket(\'' + items[i].artnr + '\')"><img src="../images/p_box.gif" width="9" height="10" border="0"></a></td>\n';
      s += '</TR>';
    }
  }
  s += '<tr valign="baseline">'; 
  s += '<td align="left" colspan="6" bgcolor="#000000" valign="top"><img src="../images/dot_trans.gif" width="1" height="2"></td>';
  s += '<td width="64" align="left" bgcolor="#000000" valign="top"><img src="../images/dot_trans.gif" width="1" height="2"></td></tr>';
  s += '<tr valign="baseline"><td width="29"></td><td width="102"></td><td width="33"></td><td width="53"></td>';
  s += '<td colspan="2" bgcolor="#DDDDDD" align="right"><font face="Arial, Helvetica, sans-serif" size="1"><b>Sous-total :</b></font></td>';
  s += '<td width="64" align="right" bgcolor="#DDDDDD"><font face="Arial, Helvetica, sans-serif" size="1"><b>' + convdec(total) + '</b></font></td>';
  s += '<td width="21" align="center">&nbsp;</td></tr>';
  // Gesamtsumme in Euro
  var eurototal = total / eurokurs;
  s += '<tr valign="baseline"><td width="29"></td><td width="102"></td><td width="33"></td><td width="53"></td>';
  s += '<td colspan="2" bgcolor="#666666" align="right"><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF"><b>en euros :</b></font></td>';
  s += '<td width="64" align="right" bgcolor="#666666"><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF"><b>' + convdec(eurototal) + '</b></font></td>';
  s += '<td width="21" align="center">&nbsp;</td></tr>';
  s += '<tr valign="middle">';
  s += '<td width="312" align="right" colspan="6" valign="top" height="32">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1">Si vous avez modifié les quantités, cliquez sur :</font></b></td>';
  s += '<td width="64" align="right" height="32"><b><font face="Arial, Helvetica, sans-serif" size="1">';
  s += '<INPUT TYPE="button" VALUE="Recalculer" onClick="parent.updateBasket(this.form)">';
  s += '</form></font></b></td>';
  s += '<td width="21" align="center">&nbsp;</td></tr>';
  return s;
}

function processOrderStep1(form) {
  Kunde.shipto = 'Inland';
  Kunde.shipcost = '0';
  Kunde.shiptext = 'National';
  Kunde.shipuid = shipuid_inland[0];
  Kunde.paymethod = 'Rechnung';
  if (Kunde.paymethod == 'Kreditkarte') {
    Kunde.cc = form.cc.options[form.cc.selectedIndex].value;
    Kunde.ccvalid = form.ccvalid.value;
    Kunde.ccnr = form.ccnr.value;
    Kunde.cccustname = form.cccustname.value;
  }
  if (Kunde.paymethod == 'Bankeinzug') {
    Kunde.bank = form.bank.value;
    Kunde.bankktonr = form.bankktonr.value;
    Kunde.bankblz = form.bankblz.value;
    Kunde.bankcustname = form.bankcustname.value;
  }
  if (Kunde.paymethod == 'Nachnahme') {
    nachnahme = StringToFloat('');
  } else {
    nachnahme = 0;
  }  
  /*  window.main_frame.location = 'order2.html';  */
}

function processOrderStep2(form) {
  processOrderStep1(form);
  for (var i=0; i<form.anrede.length; i++) {
    if (form.anrede[i].checked) {Kunde.anrede = form.anrede[i].value;}
  }
  Kunde.vorname = form.vorname.value;
  Kunde.nachname = form.nachname.value;
  Kunde.zusatz = form.zusatz.value;
  Kunde.firma = form.firma.value;
  Kunde.strasse = form.strasse.value;
  Kunde.plz = form.plz.value;
  Kunde.ort = form.ort.value;
  Kunde.land = form.land.value;
  Kunde.telefon = form.telefon.value;
  Kunde.email = form.email.value;
  Kunde.bemerkung = form.bemerkung.value;
  if(window.frames.length == 0) {
    window.location = 'order3.html';
  } else {
    window.main_frame.location = 'order3.html';
  }
}

function setStatus(form) {
  var s = new String("");
  for (var i=0; i<form.elements.length; i++) {
    if (form.elements[i].type == 'radio') {
      var radiofield = form.elements[i];
      var radiovalue = eval('Kunde.'+radiofield.name);
      if (radiovalue == '' && radiofield.name == 'paymethod') {
	    radiofield.checked = true;
/*	    if (isNaN(form.paymethod.length)) {
		  form.paymethod.checked = true;
		} else {
          form.paymethod[0].checked = true;
		}  */
      } else {
        if (radiofield.value == radiovalue) {radiofield.checked = true;}
      }  
    }
    if (form.elements[i].type == 'select-one') {
      var selectfield = form.elements[i];
      for (var j=0; j<selectfield.length; j++) {
        if (selectfield.name.indexOf('shipping') == 0) {
          var text = Kunde.shiptext;
        } else {
          var text = eval('Kunde.'+selectfield.name);
        }  
        if (selectfield.options[j].text == text) {selectfield.options[j].selected = true;}
      }
    }
    if (form.elements[i].type == 'checkbox') {
      var checkboxfield = form.elements[i];
      if (checkboxfield.value == eval('Kunde.'+checkboxfield.name)) {checkboxfield.checked = true;}
    }  
  }
}

function showOrderItems() {
  Bestellung.items = '';
  var s = new String("");
  var versand = StringToFloat(Kunde.shipcost);
  var subtotal = 0;
  var total = 0;
  for (var i=0; i<vatitems.length; i++) {vatitems[i].vtotal = 0}
  for (var i=0; i<items.length; i++) {
    if (items[i].qty > 0) {
      s += '<tr bgcolor="#EEEEEE">'; 
      s += '<td width="30" valign="middle" align="center">';
      s += '<font face="Arial, Helvetica, sans-serif" size="1"><b>' + items[i].qty + '</b></font></td>';
      s += '<td valign="middle" colspan="3"><font face="Arial, Helvetica, sans-serif" size="1"><b>(' + items[i].artnr + ') ' + items[i].name + '</b></font></td>';
      s += '<td width="57" align="right" valign="middle"><font face="Arial, Helvetica, sans-serif" size="1"><b>' + convdec(items[i].price) + '</b></font></td>';
      subtotal = items[i].qty * items[i].price;
      if (items[i].uid > 0) {
        for (var j=0; j<vatitems.length; j++) {
		  if (vatitems[j].vid == items[i].uid) {
            vatitems[j].vtotal += subtotal - (subtotal / (1+(vatitems[j].vvalue / 100)));
		  }
		}  
      }
      total += subtotal;
      s += '<td width="56" align="right" valign="middle"><font face="Arial, Helvetica, sans-serif" size="1"><b>' + convdec(subtotal) + '</b></font></td>';
      s += '</tr>';
      if (Bestellung.items != '') {Bestellung.items += '#';}
      Bestellung.items += items[i].qty + '__' + items[i].artnr + '__' + items[i].name + '__' + convdec(items[i].price) + '__' + convdec(subtotal);
    }
  }    
  s += '<tr><td valign="top" align="left" colspan="5" bgcolor="#000000"><img src="images/dot_trans.gif" width="1" height="5"></td>';
  s += '<td width="56" align="left" valign="top" bgcolor="#000000"><img src="images/dot_trans.gif" width="1" height="5"></td></tr>';
  // Zwischensumme
  //s += '<tr><td width="30"></td><td width="176"></td><td valign="top" colspan="3" bgcolor="#DDDDDD" align="right">';
  //s += '<b><font face="Arial, Helvetica, sans-serif" size="1">Sous-total&nbsp;:</font></b></td>';
  //s += '<td width="56" align="right" bgcolor="#DDDDDD" valign="top">';
  //s += '<b><font face="Arial, Helvetica, sans-serif" size="1">' + convdec(total) + '</font></b></td></tr>';
  Bestellung.subtotal = 'Sous-total__' + convdec(total);
  // Versandkosten
  if (Kunde.shipuid > 0) {
    for (var j=0; j<vatitems.length; j++) {
      if (vatitems[j].vid == Kunde.shipuid) {
        vatitems[j].vtotal += Kunde.shipcost - (Kunde.shipcost / (1+(vatitems[j].vvalue / 100)));
	  }
	}  
  }
  // Nachnahme
  // Gesamtbetrag inkl. MwSt.
  s += '<tr><td width="30"></td><td width="176"></td>';
  s += '<td valign="top" colspan="3" bgcolor="#000000" align="right">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">Total TTC&nbsp;:</font></b></td>';
  s += '<td width="56" align="right" bgcolor="#000000" valign="top">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">' + convdec(total+versand+nachnahme) + '</font></b></td></tr>';
  Bestellung.total = 'Total TTC__' + convdec(total+versand+nachnahme);
  // Gesamtsumme in Euro
  var eurototal = (total+versand+nachnahme) / eurokurs;
  s += '<tr><td width="30"></td><td width="176"></td>';
  s += '<td valign="top" colspan="3" bgcolor="#666666" align="right">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">en euros&nbsp;:</font></b></td>';
  s += '<td width="56" align="right" bgcolor="#666666" valign="top">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">' + convdec(eurototal) + '</font></b></td></tr>';
  Bestellung.euro = 'en euros__' + convdec(eurototal);
  s += '<tr><td width="30"></td><td width="176"></td>';
  s += '<td valign="top" colspan="3" bgcolor="#DDDDDD" align="right">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1">+ Frais de port&nbsp;:</font></b></td>';
  s += '<td width="56" align="right" bgcolor="#DDDDDD" valign="top">';
  s += '<b><font face="Arial, Helvetica, sans-serif" size="1">Selon tarifs<br>de la poste</font></b></td></tr>';
  // enthaltene Mehrwertsteuer
  return s;
}

function showOrder1Form() {
  var s = new String("");
  // Shipping Inland
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="left" valign="baseline">\n'; 
  s += '<font face="Arial, Helvetica, sans-serif" size="2"><input type="radio" name="shipto" value="Inland" checked>&nbsp;<b>National&nbsp;:</b></font></td>\n';
  s += '<td width="298" valign="baseline"><font face="Arial, Helvetica, sans-serif" size="1">\n';
  s += '<select name="shipping1">\n';
  var count = 0;
  shipuid_inland[count] = 0;
  s += '<option value="0" checked>envoi postal</option>\n';
  ++count;
  s += '</select></font></td></tr>\n';
  // Shipping Ausland
  // Kreditkarte
  // Bankeinzug
  // Nachnahme
  // Rechnung
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2"><b>A réception de facture&nbsp;:</b></font></td>\n';
  s += '<td width="298"><input type="radio" name="paymethod" value="Rechnung" checked></td></tr>\n';
  // Scheck
  return s;
}

function showOrder2Form() {
  var s = new String("");
  // Anrede
  s += '<tr valign="baseline" bgcolor="#EEEEEE">\n'; 
  s += '<td width="108" align="right"><font face="Arial, Helvetica, sans-serif" size="2">Qualité&nbsp;:</font></td>\n';
  s += '<td width="298"><input type="radio" name="anrede" value="M." checked>\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">M.</font> \n';
  s += '<input type="radio" name="anrede" value="Mme/Mlle">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Mme/Mlle</font></td></tr>\n';
  // Vorname
  s += '<tr valign="baseline" bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Nom&nbsp;:</font></td>\n';
  s += '<td width="298"><font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="vorname" size="30" value="' + Kunde.vorname + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'Nom\')">\n';
  s += '<img src="../images/li_cross_grey666666.gif" width="8" height="10"></font></td></tr>\n';
  // Nachnahme
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Prénom :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="nachname" size="30" value="' + Kunde.nachname + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'Prénom\')">\n';
  s += '<b><img src="../images/li_cross_grey666666.gif" width="8" height="10"></b> \n';
  s += '</font></td></tr>\n';
  // Zusatz
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Complément :</font></td>\n';
  s += '<td width="298"><font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="zusatz" size="30" value="' + Kunde.zusatz + '"></font></td></tr>\n';
  // Firma
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Société :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="firma" size="30" value="' + Kunde.firma + '"></font></td></tr>\n';
  // Strasse
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Adresse :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="strasse" size="30" value="' + Kunde.strasse + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'Adresse\')">\n';
  s += '<b><img src="../images/li_cross_grey666666.gif" width="8" height="10"></b></font></td></tr>\n';
  // PLZ / Ort
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">CP/Ville :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="plz" size="7" maxlength="10" value="' + Kunde.plz + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'CP\')">\n';
  s += '<input type="text" name="ort" size="21" value="' + Kunde.ort + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'Ville\')">\n';
  s += '<b><img src="../images/li_cross_grey666666.gif" width="8" height="10"></b></font></td></tr>\n';
  // Land
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Pays :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="land" size="30" value="' + Kunde.land + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isNotEmpty\', \'Pays\')">\n';
  s += '<b><img src="../images/li_cross_grey666666.gif" width="8" height="10"></b></font></td></tr>\n';
  // Telefon
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Téléphone :</font></td>\n';
  s += '<td width="298"> <font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="telefon" size="30" value="' + Kunde.telefon + '"></font></td></tr>\n';
  // E-Mail
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">E-mail :</font></td>\n';
  s += '<td width="298"><font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<input type="text" name="email" size="30" value="' + Kunde.email + '" ';
  s += 'onChange="parent.validate(window, form1, this, \'isValidEmail\', \'\')"></font></td></tr>\n';
  // Bemerkungen
  s += '<tr bgcolor="#EEEEEE"><td width="108" align="right" valign="top">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="2">Remarques :</font></td>\n';
  s += '<td width="298"><font face="Arial, Helvetica, sans-serif" size="2"> \n';
  s += '<textarea name="bemerkung" cols="30" rows="3" wrap="VIRTUAL">' + Kunde.bemerkung + '</textarea></font></td></tr>\n';
  return s;
}

function showCustomerData() {
  var s = new String("");
  s += '<table width="400" border="0" cellspacing="2" cellpadding="2">';
  s += '<tr valign="baseline"><td align="left" valign="top" colspan="2">&nbsp;</td></tr>';
  // Bestellanschrift
  s += '<tr valign="top" align="left"><td width="101" valign="top">';
  s += '<font size="2" face="Arial, Helvetica, sans-serif">Adresse :</font></td>';
  s += '<td width="319"><p><font face="Arial, Helvetica, sans-serif" size="2">';
  s += Kunde.anrede + '<br>';
  if (Kunde.zusatz != '') {s += Kunde.zusatz + ' ';}
  s += Kunde.vorname + ' ' + Kunde.nachname + '<br>';
  if (Kunde.firma != '') {s += Kunde.firma + '<br>';}
  s += Kunde.strasse + '<br>';
  s += Kunde.plz + ' ' + Kunde.ort;
  s += '</font></p></td></tr>';
  // Land
  s += '<tr><td width="101" align="left">';
  s += '<font size="2" face="Arial, Helvetica, sans-serif">Pays :</font></td>';
  s += '<td width="319"><font face="Arial, Helvetica, sans-serif" size="2">' + Kunde.land + '</font></td></tr>';
  // Telefon
  if (Kunde.telefon != '') {
    s += '<tr><td width="101" align="left">';
    s += '<font size="2" face="Arial, Helvetica, sans-serif">Téléphone :</font></td>';
    s += '<td width="319"> <font face="Arial, Helvetica, sans-serif" size="2">' + Kunde.telefon + '</font></td></tr>';
  }
  // E-Mail
  if (Kunde.email != '') {
    s += '<tr><td width="101" align="left">';
    s += '<font size="2" face="Arial, Helvetica, sans-serif">E-mail :</font></td>';
    s += '<td width="319"><font face="Arial, Helvetica, sans-serif" size="2">' + Kunde.email + '</font></td></tr>';
  }
  s += '<tr><td width="101" align="left">&nbsp;</td><td width="319">&nbsp;</td></tr>';
  // Versandart        
  s += '<tr><td width="101" align="left">';
  s += '<font size="2" face="Arial, Helvetica, sans-serif">Mode d\'expédition :</font></td>';
  s += '<td width="319"><font face="Arial, Helvetica, sans-serif" size="2">' + Kunde.shiptext + '</font></td></tr>';
  s += '<tr><td width="101" align="left">&nbsp;</td><td width="319">&nbsp;</td></tr>';
  // Zahlungsweise
  s += '<tr><td width="101" align="left">';
  s += '<font size="2" face="Arial, Helvetica, sans-serif">Mode de règlement :</font></td>';
  // Kreditkarte
  if (Kunde.paymethod == 'Kreditkarte') {
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Carte de crédit : ' + Kunde.cc + '</font></td></tr>';
    s += '<tr><td width="101" align="left">&nbsp;</td>';
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">';
    s += 'Numéro de carte : ' + Kunde.ccnr + ' Date d\'expiration : ' + Kunde.ccvalid + '</font></td></tr>';
    s += '<tr><td width="101" align="left">&nbsp;</td>';
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Titulaire de la carte : ' + Kunde.cccustname + '</font></td></tr>';
    Bestellung.paymethod = 'Carte de crédit#' + Kunde.cc + '#Numéro de carte ' + Kunde.ccnr + '#Date d\'expiration ' + Kunde.ccvalid + '#Titulaire de la carte ' + Kunde.cccustname; 
    Bestellung.paymethodshort = 'Carte de crédit';
  }
  if (Kunde.paymethod == 'Bankeinzug') {          
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Prélèvement ' + Kunde.bankktonr + '</font></td></tr>';
    s += '<tr><td width="101" align="left">&nbsp;</td>';
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Code Banque ' + Kunde.bankblz + ', ' + Kunde.bank + '</font></td></tr>';
    s += '<tr><td width="101" align="left">&nbsp;</td>';
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Détenteur : ' + Kunde.bankcustname + '</font></td></tr>';
    Bestellung.paymethod = 'Prélèvement#Prélèvement ' + Kunde.bankktonr + '#Code Banque ' + Kunde.bankblz + '#Institut ' + Kunde.bank + '#Détenteur ' + Kunde.bankcustname; 
    Bestellung.paymethodshort = 'Prélèvement';
  }
  if (Kunde.paymethod == 'Nachnahme') {  
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Contre remboursement</font></td></tr>';
    Bestellung.paymethod = 'Contre remboursement';
    Bestellung.paymethodshort = 'Contre remboursement';
  }
  if (Kunde.paymethod == 'Rechnung') {  
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">A réception de facture</font></td></tr>';
    Bestellung.paymethod = 'A réception de facture';
    Bestellung.paymethodshort = 'A réception de facture';
  }
  if (Kunde.paymethod == 'Scheck') {  
    s += '<td width="319"><font size="2" face="Arial, Helvetica, sans-serif">Chèque à la commande</font></td></tr>';
    Bestellung.paymethod = 'Chèque à la commande';
    Bestellung.paymethodshort = 'Chèque à la commande';
  }
  // Bemerkungen
  if (Kunde.bemerkung != '') {
    s += '<tr><td width="101" align="left" valign="top">';
    s += '<font size="2" face="Arial, Helvetica, sans-serif">Remarques :</font></td>';
    s += '<td width="319"><font face="Arial, Helvetica, sans-serif" size="2">' + Kunde.bemerkung + '</font></td></tr>';
  }
  s += '</table>';  
  return s;
}

function stringf(str,width,align) {
  var s = new String("");
  var i = width - str.length;
  if (i > 0) {
    for (var j=0; j<i; ++j) {
      s += " ";
    }
  } else {
    str = str.substring(0, width);
  }  
  if (align == "left") s = str + s
  else s += str;
  return s;
}

function printMessage(DateStr) {
  var versand = StringToFloat(Kunde.shipcost);
  var s = new String("");
  s += 'CAMARADA#';
  s += DateStr + '#';
  s += Kunde.anrede + '#';
  if (Kunde.zusatz != '') {s += Kunde.zusatz + ' ';}
  s += Kunde.vorname + ' ' + Kunde.nachname + '#';
  if (Kunde.firma != '') {s += Kunde.firma + '#';}
  s += Kunde.strasse + '#';
  s += Kunde.plz + ' ' + Kunde.ort + '#';
  s += Kunde.land + '#';
  s += Kunde.telefon + '#';
  s += Kunde.email + '#';
  s += 'Mode d\'expédition#';
  s += Kunde.shiptext + '; ' + convdec(versand) + '#';
  s += 'Mode de règlement#';
  s += Bestellung.paymethod + '#';
  s += '--------------------------------------------------------------------------------#';
  s += Bestellung.items + '#';
  s += '--------------------------------------------------------------------------------#';
  s += Bestellung.subtotal + '#';
  s += Bestellung.delivery + '#';
  s += Bestellung.cod + '#';
  s += '--------------------------------------------------------------------------------#';
  s += Bestellung.total + '#';
  s += Bestellung.euro + '#';
  s += Bestellung.vat + '#';
  s += '--------------------------------------------------------------------------------#';
  s += '#Remarques#';
  if (Kunde.bemerkung == '') s+= 'aucune'
  else s += convertLF(Kunde.bemerkung);
  s += '#';
  return s;
}

function printAttachment(DateStr) {
  var s = new String("");
  s += 'shopname=CAMARADA&';
  s += 'date=' + DateStr + '&';
  s += 'salutation=' + Kunde.anrede + '&';
  s += 'firstname=' + Kunde.vorname + '&';
  s += 'lastname=' + Kunde.nachname + '&';
  s += 'addition=' + Kunde.zusatz + '&';
  s += 'company=' + Kunde.firma + '&';
  s += 'street=' + Kunde.strasse + '&';
  s += 'zip=' + Kunde.plz + '&';
  s += 'city=' + Kunde.ort + '&';
  s += 'country=' + Kunde.land + '&';
  s += 'phone=' + Kunde.telefon + '&';
  s += 'email=' + Kunde.email + '&';
  if (Kunde.shipto == 'Inland') {
    s += 'shipto=National&';
  } else {
    s += 'shipto=International&';
  }
  s += 'shipcost=' + Kunde.shipcost + '&';
  s += 'shiptext=' + Kunde.shiptext + '&';
  s += 'paymethod=' + Bestellung.paymethodshort + '&';
  s += 'cc=' + Kunde.cc + '&';
  s += 'ccvalid=' + Kunde.ccvalid + '&';
  s += 'ccnr=' + Kunde.ccnr + '&';
  s += 'cccustname=' + Kunde.cccustname + '&';
  s += 'bank=' + Kunde.bank + '&';
  s += 'bankktonr=' + Kunde.bankktonr + '&';
  s += 'bankblz=' + Kunde.bankblz + '&';
  s += 'bankcustname=' + Kunde.bankcustname + '&';
  s += 'orderpaymethod=' + Bestellung.paymethod + '&';
  s += 'orderitems=' + Bestellung.items + '&';
  s += 'ordersubtotal=' + Bestellung.subtotal + '&';
  s += 'orderdelivery=' + Bestellung.delivery + '&';
  s += 'ordercod=' + Bestellung.cod + '&';
  s += 'ordertotal=' + Bestellung.total + '&';
  s += 'ordereuro=' + Bestellung.euro + '&';
  s += 'ordervat=' + Bestellung.vat;
  return escape(s);
}

function convertMessage(msg) {
  var s = new String("");
  var startpos = 0;
  var i = msg.indexOf('#',startpos);
  while (i != -1) {
    s += msg.substring(startpos,i) + '\n';
    startpos = i + 1;
    i = msg.indexOf('#',startpos);
  }
  s += msg.substring(startpos,msg.length);
  return s;
}

function convertLF(msg) {
  var s = new String("");
  var startpos = 0;
  var i = msg.indexOf('\n',startpos);
  while (i != -1) {
    s += msg.substring(startpos,i) + '#';
    startpos = i + 1;
    i = msg.indexOf('\n',startpos);
  }
  s += msg.substring(startpos,msg.length);
  return s;
}

function printEMail() {
  var s = new String("");
  var msg = new String("");
  var mailfrom = new String("");
  var Now = new Date();
  var DateStr = Now.getDate() + '.';
  var year = Now.getYear();
  if (year < 2000) year += 1900;
  if ((Now.getMonth()+1) < 10) DateStr += '0' + (Now.getMonth()+1) + '.' + year
  else DateStr += (Now.getMonth()+1) + '.' + year;
  msg = printMessage(DateStr);
  if (Kunde.email != "") {mailfrom = Kunde.email;} else {mailfrom = "boutique-camarada@stuckelberg.ch";}
  if (Kunde.paymethod == "Scheck") {
    s += '<form method="post">\n';
    s += '<font face="Arial, Helvetica, sans-serif" size="1"><input type="button" value="Imprimer la commande" onClick="print()"></font></form>\n';
  } else {  
/*    s += '<APPLET NAME="mailer" CODE="SendMultipartMail.class" WIDTH="400" HEIGHT="60">\n';
    s += '<PARAM Name="From" Value="' + mailfrom + '">\n';
	s += '<PARAM Name="To" Value="' + PlaceOrderAddress + '">\n';
  	s += '<PARAM Name="Subject" Value="Bestellung: CAMARADA">\n';
	s += '<PARAM Name="Message" Value="' + msg + '">\n';
	s += '<PARAM Name="Attachment" Value="' + printAttachment(DateStr) + '">\n';
	s += '<PARAM Name="Font" Value="Helvetica">\n';
    s += '</APPLET>\n';*/
    s += '<form method="post" action="http://www.camarada.ch/cgi-bin/mws_mail.cgi" target="OrderWindow" onSubmit="return parent.initBasket(\'order4.html\',3000)">\n';
    s += '<input type="hidden" name="From" value="' + mailfrom + '">\n';
    s += '<input type="hidden" name="To" value="' + PlaceOrderAddress + '">\n';
    s += '<input type="hidden" name="Subject" value="Commande CAMARADA">\n';
    s += '<input type="hidden" name="Message" value="' + convertMessage(msg) + '">\n';
    s += '<input type="hidden" name="Attachment" value="' + printAttachment(DateStr) + '">\n';
    s += '<font face="Arial, Helvetica, sans-serif" size="1"><input type="submit" value="Envoyer la commande"></font></form>\n';
  }	
  return s;
}

function printAnrede() {
  var s = new String("");
  s = Kunde.anrede +' ' + Kunde.vorname +' ' + Kunde.nachname + ',\n';
  return s;
}

function printOrderButton() {
  var s = new String("");
  s += '<form name="form2" method="post">\n';
  s += '<font face="Arial, Helvetica, sans-serif" size="1">\n';   
  s += '<input type="button" value="Parcourir les articles" onClick="history.back()">\n';
  s += '<input type="button" value="Poursuivre la commande" onClick="self.location=\'order2.html\';">\n';
  s += '</font></form>\n';
  return s;          
}

// *****************************************************
// the following codeline must be the last one !!!
// *****************************************************
isBasketLoaded = true;



