
var productArray = new Array();
var basketArray = new Array();
var sum = 0.0;

var fi='';
var fn='';
var l1='';
var by='';
var p4='';
var em='';
var tf='';


var shippingString = '<P></p>';

initProdList();


function pl(pc, bh, pr, gt) {
  this.pc = pc;
  this.bh = bh;
  this.pr = pr;
  this.gt = gt;
}

function ol(pc, bh, pr, ant) {
  this.pc = pc;
  this.bh = bh;
  this.pr = pr;
  this.ant = ant;
}

function initProdList() {
 productArray[0] = new pl('1','P ',567,'K');
}



function po(val) {
  if (val == 0) return("på foresp.");
  var inputVal = ("" + val);
  if (inputVal.indexOf(".") == -1) inputVal += ".00";
  var i = inputVal.indexOf(".");
  var kk = inputVal.substring(0, i);
  var ko = inputVal.substring(i+1, i+3);
  if (ko.length == 1) ko += "0";
  return('Kr. : ' + kk + '.' + ko);
}

function td(str) {
  return('<td>' + str + '</td>');
}

function tdr(str) {
  return('<td align="right">' + str + '</td>');
}

function pp(str) {
  return('<P>' + str + '</P>');
}

function th(str) {
  return('<th bgcolor="#6699FF">' + str + '</th>');
}

function boughtWithCode(code){
  for (var i=0; i<basketArray.length; i++) {
    if (basketArray[i].pc == code) {
      return i;
    }
  }
  return -1;
}

function addBasket(pc, bh, pr) {
  var i = boughtWithCode(pc);
  if (i > -1) {
    var n = basketArray[i].ant + 1;
    basketArray[i].ant = n;
  }
  else {
    basketArray[basketArray.length] = 
             new ol(pc, bh, pr, 1);
  }
  this.refreshBasket();
}



function refreshBasketString() {
  sum = 0.0;
  s = mainFrameHeader();
  s = s + '<h3 align="center" style="background-color: #CCCCCC"><font face="arial">Produktinformasjon / Varebestilling</font></h3><font face="arial">Her kan du bestille varer eller få kontakt for mer informasjon om våre produkter. Velg ønskede produkter fra vår produktkatalog, bruk meny til venstre.  ';
  s = s + '<form name="f">';
  s = s + '<table width="100%">';
  s = s + '<tr>' + th('Antall') + th('Vare') + th('Pris') + th('Total') + '</tr>';
  for (var i=0; i< basketArray.length; i++) {
    var p = basketArray[i];
    s = s + '<tr>';
    s = s + td('<input type="text" size=4 value=\"' + p.ant + 
			'\" name=\"' + p.pc + 
			'\" onMouseOut=\"parent.changeant(this.name, this.value)\"' +
			'\" onBlur=\"parent.changeant(this.name, this.value)\">');
    s = s + td(p.bh);
    s = s + tdr(po(p.pr));
    var total = p.pr * p.ant;
    s = s + tdr(po(total));
    s = s + td('<input type="button" value="Slett" onClick="parent.removeBasket(' + i + ')">');
    s = s + '</tr>';
    sum = sum + total;
  }
  s = s + '<tr><th colspan=3 bgcolor="#CCCCCC">Total (uten mva. og frakt)</th>' + '<th align="right" bgcolor="#CCCCCC">' +
			po(sum) + '</th></tr>';
  s = s + '</table>';
  s = s + '<input type="button" value="Fullfør bestilling" onClick="parent.refreshClose()">';
  s = s + '</form>' + mainFrameFooter();
  return s;
}

function refreshBasket() {
  var doc = parent.frames['mainFrame'].document;
  doc.open();
  doc.writeln(refreshBasketString());
  doc.close();
}


function removeBasket(n) {
  var newArray = new Array(basketArray.length - 1);
  for (var i=0; i< n; i++) {
    newArray[i] = basketArray[i];
  }
  for (var j=n+1; j < basketArray.length; j++) {
    newArray[j-1] = basketArray[j];
  }
  basketArray = newArray;
  this.refreshBasket();
}

function changeant(productID, ant) {
  for (var i=0; i< basketArray.length; i++) {
    var p = basketArray[i];
    if (p.pc == productID) {
      if (ant != p.ant) {
 	if (isNaN(ant)) {
		this.refreshBasket();
	}
	else {
     	 	p.ant = parseInt(ant);
		if (p.ant <= 0) {
			this.removeBasket(i);
		}
		else {
        		this.refreshBasket();
		}
	}
      }
    }
  }
}

function mainFrameHeader(){
  return '<body bgColor="white" LINK="black" ALINK="black" vlink="black">';
}

function mainFrameFooter(){
  return '</body>';
}

function refreshList() {
  var doc = parent.frames['mainFrame'].document;
  doc.open();
  doc.writeln(refreshListString());
  doc.close();
}

function ipRow(label,field) {
 return '<tr><td>' + label +'</td><td><input name=\"' + field + '\" type="text" size=30></td></tr>'
}

function refreshClose() {
  var doc = parent.frames['mainFrame'].document;
  doc.open();
  doc.writeln('<body bgColor="white" LINK="black" ALINK="black" vlink="black"><font face="arial">');
  doc.writeln(pp('Fyll ut: <br>Alle med * må fylles ut.'));
  doc.writeln('<form name="order"><table>');
  doc.writeln('<tr><th bgcolor="#6699FF" colspan="2" align="left">Navn</th></tr>');
  doc.writeln(ipRow('Firma', 'fn'));
  doc.writeln(ipRow('Kontaktperson*', 'fi'));
  doc.writeln(ipRow('Avdeling', 'av'));
  doc.writeln('<tr><th bgcolor="#6699FF" colspan="2" align="left">Leveringsadresse</th></tr>');
  doc.writeln(ipRow('Vei/gate', 'l1'));
  doc.writeln(ipRow('Sted','by'));
  doc.writeln(ipRow('Post nr.', 'p4'));
  doc.writeln('<tr><td></td><td></td></tr>');
  doc.writeln(ipRow('E-mail Adresse','em'));
  doc.writeln(ipRow('Tlf. nr.:* ', 'tf'));
  doc.writeln('<tr><th bgcolor="#005aac" colspan="2" align="left"></th></tr>');
  doc.writeln('<tr><td>Total (uten mva. og frakt)</td><td><b>' + po(sum) + '</b></td></tr>');
  doc.writeln('<tr><td colspan="2">' + shippingString + '</td></tr>');
  if (false) {
  }	
  doc.writeln('<tr><td colspan="2"></td></tr>');
  doc.writeln('<tr><td colspan="2"></td></tr>');
  doc.writeln('<tr><td><input type="button" value="Fortsett" onClick="parent.validateAndClose(this.form)"</td></tr>');
  doc.writeln('</form></table>');
  doc.writeln(mainFrameFooter());
  doc.close();
}

function validateAndClose(f) {
  saveForm(f);
  if ( validateForm(f) ) {
    refreshConfirmation(f);
  }
}

function saveForm(f) {
  fi = f.fi.value;
  fn = f.fn.value;
  av = f.av.value;
  l1 = f.l1.value;
  by = f.by.value;
  p4 = f.p4.value;
  em = f.em.value;
  tf = f.tf.value;
}

function loadForm(f) {
  f.fi.value = fi;
  f.fn.value = fn;
  f.av.value = av;
  f.l1.value = l1;
  f.by.value = by;
  f.p4.value = p4;
  f.em.value = em;
  f.tf.value = tf;
}

function validateField(field, minSize, longName, extraText) {
  if (field.value.length < minSize) {
    alert("Vennligst fullfør " + longName + " Felt " + extraText);
    field.focus();
    return true;
  }
  return false;
}

function validateForm(f) {
  if (validateField(f.fi, 2, "Kontaktperson*", "")) { return false;}
  if (validateField(f.tf, 8, "Tlf.nr.*", "")) { return false;}
  return true;
}

function hidden(name,value) {
  return '<input name=\"' + name + '\" type="hidden" value=\"' + value + '\">';
}

function refreshConfirmation(f) {
  cr = "\n";
  var doc = parent.frames['mainFrame'].document;
  doc.open();
  doc.writeln('<body bgColor="white" LINK="black" ALINK="black" vlink="black">');
  doc.writeln('<h3 align="center" style="background-color:  #CCCCCC"><font face="arial">Bekreftelse</font></h3><font face="arial">');
  doc.writeln('<p>' + 'Hei ' + fi + ' vennligst sjekk at alt er riktig, før du klikker <I>Send </I> Knapp</p>');
  doc.writeln("<form method='POST' action='http://www.activeisp.com/scripts/sendformmail.dll'>");
  doc.writeln("<input type='hidden' name='mail-to' value='post@airproduct.no'>");
  doc.writeln("<input type='hidden' name='mail-from' value='" + em + "'>");
  doc.writeln("<input type='hidden' name='mail-subject' value='web ordre'>");
  doc.writeln("<input type='hidden' name='mail-success' value=' '>");
  doc.writeln('<table>' + '<tr>' + th('Vare') + th('Antall') + '</tr>');
  for (var i=0; i< basketArray.length; i++) {
    var p = basketArray[i];
    doc.writeln('<tr>')
    doc.writeln(td(p.bh));
    doc.writeln(tdr(p.ant));
    doc.writeln('</tr>');
  }
  doc.writeln('</table>');
  doc.writeln('<BR>Sendes til adresse:<BR>');
  doc.writeln(fn + '<BR>' + av + '<BR>');
  doc.writeln(l1 + '<BR>' + by + '<BR>' + p4 +'<BR>');
  doc.writeln(pp('Total ordre (uten mva. og frakt) &nbsp; &nbsp; &nbsp; ' + po(sum)));
  doc.writeln(pp(shippingString));
  bodyString = fi + cr + fn + cr + l1 + cr + av + cr + by + cr +
			p4 + cr;
  bodyString = bodyString + em + cr + tf + cr;

  for (var i=0; i< basketArray.length; i++) {
    var p = basketArray[i];
    bodyString = bodyString + "Antall  " + p.ant + ' ' + "nr.: " + ' ' + p.pc + ' ' + p.bh +
			 ' ' + "pris : " + p.pr + ' ' + " sum " + p.pr * p.ant*100/100 + cr;
  }
  bodyString = bodyString + "total " + po(sum);
  doc.writeln(hidden("Kontaktperson:",urlString(bodyString)));
  doc.writeln(pp('<p>Ønsker å bli kontaktet for mer informasjon om disse produkter(kryss av hvis ønsklig)<input type="checkbox" value="Mer info" name="ja"></p>'));
  doc.writeln('<input type="hidden" name="mail-from">');
  doc.writeln('<input type="submit" value="Send Ordre">');
  doc.writeln('<input type="button" value="Annuler" onClick="parent.refreshBasket()">');
  doc.writeln('</form>' + mainFrameFooter());
  doc.close();
}

function urlString(s) 
{
  return s;
}

function numberAsString(n) {
  var s='';
  for (var i=0; i < n.length; i++) {
    d = n.substring(i,i+1);
    e = digitToString(d);
    if (e != "Z") {
      s = s + e;
    }
  }
  return s;
}

function digitToString(d) {
  var keyString='encryptdig';
  var n=parseInt(d);
  if ( (n >= 0) && (n <= 9) ) {
    return keyString.substring(n,n+1);
  }
  else {
    return "Z";
  }
}




var help = mainFrameHeader() + '<h1 align="center">H</h1>' +
	'<p></p>' +
        mainFrameFooter();




