function SetFocus(TargetFormName) {
  var target = 0;
  if (TargetFormName != "") {
    for (i=0; i<document.forms.length; i++) {
      if (document.forms[i].name == TargetFormName) {
        target = i;
        break;
      }
    }
  }

  var TargetForm = document.forms[target];
    
  for (i=0; i<TargetForm.length; i++) {
    if ( (TargetForm.elements[i].type != "image") && 
         (TargetForm.elements[i].type != "hidden") &&
         (TargetForm.elements[i].type != "reset") &&
         (TargetForm.elements[i].type != "submit") ) {
      TargetForm.elements[i].focus();

      if ( (TargetForm.elements[i].type == "text") ||   
           (TargetForm.elements[i].type == "password") ) {
        TargetForm.elements[i].select();
      }

      break;
    }
  }
}

function SetFocusPP(prefix) {
  if (document.forms.length > 0) {
    var field = document.forms[0];
    for (i=0; i<field.length; i++) {
      if ( (field.elements[i].name == prefix) &&
           (field.elements[i].type != "image") &&
           (field.elements[i].type != "hidden") &&
           (field.elements[i].type != "reset") &&
           (field.elements[i].type != "submit") ) {

        document.forms[0].elements[i-1].focus();

        if ( (field.elements[i].type == "text") ||
             (field.elements[i].type == "password") )
          document.forms[0].elements[i].select();

        break;
      }
    }
  }
}

function doRound(x, places) {
  return Math.round(x * Math.pow(10, places)) / Math.pow(10, places);
}

function updatemaatpp(oform, prefix, max_breedte, max_hoogte, pp_type, pp_prijs2) {
  var pp_hoogte = oform.pp_hoogte.value.replace(',','.');
  var pp_breedte = oform.pp_breedte.value.replace(',','.');
  var curr_field = oform[prefix];

  curr_field.value = curr_field.value.replace(',','.');

  if (oform!="") {
    if (isNaN(doRound(curr_field.value,1))) {
      alert('Verkeerde invoer!'); 
      curr_field.value=0;
      SetFocusPP(prefix);
      return false;
    }  else {
      curr_field.value = doRound(curr_field.value,1);
      if (curr_field.value ==  Math.floor(curr_field.value))
        curr_field.value = curr_field.value+'.0';
    }
  }
  if (prefix == 'pp_hoogte' || prefix == 'pp_breedte') {
  	if (pp_type == 11)
  	  min_maat = 15;
  	else
  	  min_maat = 10;
    if (pp_hoogte < min_maat || pp_breedte < min_maat) { 
      alert('De lijstmaat moet minimaal ' + min_maat + ' x ' + min_maat + ' cm zijn.'); 
      if (pp_hoogte < min_maat) {
      	oform.pp_hoogte.value = min_maat;
        SetFocusPP('pp_hoogte');
      }
      else {
      	oform.pp_breedte.value = min_maat;
        SetFocusPP('pp_breedte');
      }
      return false;
    }
  } else {
    ;
  }

  if ((pp_hoogte <= max_hoogte && pp_breedte <= max_breedte) ||
      (pp_hoogte <= max_breedte && pp_breedte <= max_hoogte) ) {
     ;
  } else {
    alert('Uw maat is: ' + pp_breedte + ' X ' + pp_hoogte + ' De maximum maat is: ' + max_breedte + ' X ' + max_hoogte); 
    oform.pp_calc_prijs.value = "PRIJS?";
    return false;
  }
  xl_format=0;
  if ((pp_hoogte > 70 || pp_breedte > 100) &&
      (pp_hoogte > 100 || pp_breedte > 70) )
    xl_format=1;
  // Glas available?
  if (document.getElementById("id2") != null) {
    if (((pp_hoogte*pp_breedte) > 10000) &&
  	  (document.getElementById('id2').value != 29)) {
  	alert('Lijsten boven de 1m2, worden alleen geleverd met 2mm Plexiglas');
      document.getElementById('id2').value = 29;
    }
  }
//  if ((pp_hoogte > 100 || pp_breedte > 150) &&
//      (pp_hoogte > 150 || pp_breedte > 100) )
//   xl_format=2;
//2010  if ((pp_hoogte*pp_breedte) > 15000 )
//2010   xl_format=2;


  glas_format=0;
//  if ((pp_hoogte > 100 || pp_breedte > 120) &&
//      (pp_hoogte > 120 || pp_breedte > 100) )
//2010  if ((pp_hoogte*pp_breedte) > 15000 )
//2010    glas_format=1;

  if (pp_type == 11) {
    oform.pp_calc_prijs.value = calc_lijst(oform.pp_breedte.value,
                                           oform.pp_hoogte.value,
                                           oform.pp_prijs.value,
                                           pp_type,
                                           0,   
                                           0,
                                           0,
                                           0,
                                           0);
  } else {
    oform.pp_calc_prijs.value = calc_lijst(oform.pp_breedte.value,
                                           oform.pp_hoogte.value,
                                           oform.pp_prijs.value,
                                           pp_type,
                                           document.getElementById('id2').value,
                                           document.getElementById('id1').value,
                                           xl_format,
                                           glas_format,
                                           pp_prijs2);
  }
  

  return true;
}

function calc_lijst(pp_b, pp_h, prijs, pp_type, glas, kleur, xl_format, glas_format, prijs2) {
  var omtrek = pp_b*2 + pp_h*2;
  var oppervlakte = (pp_b*pp_h) / 10000;
  var pp_prijs;
  var glas1 = 92.5;
  var glas2 = 185;

  // omtrek moet minimaal 120 centimeter zijn
  if (omtrek < 120)    omtrek = 120;
  // oppervlakte moet minimaal 0,7 m2 zijn
  if (xl_format > 0 && oppervlakte < 0.7) oppervlakte = 0.7;
  // baklijsten + 16 centimeter
  if (pp_type == 11)
    omtrek = omtrek*1+16*1;


  // alu en houten lijsten + 1 centimeter
  if ((pp_type == 12) || (pp_type == 15))
    omtrek = omtrek*1+1*1;

  if (xl_format > 0) {
	  pp_prijs = prijs2 * oppervlakte;
  } else {
    pp_prijs = prijs * (omtrek/100);
  }
  // baklijst
  if (pp_type == 11)
    pp_prijs = pp_prijs*1.1 + 5*1.4;
  // Prijs van alu en houten lijste + 20% verlies marge
  if ((pp_type == 12) || (pp_type == 15))
    pp_prijs = pp_prijs*1.2;

  // mat glas of kunststof (helder = 27) 25% extra
  if ((xl_format == 0 || glas_format == 0) && (glas == 28 || glas == 29))
    pp_prijs = pp_prijs*1.25;

//  if (glas == 36 || (xl_format > 0) {
  if (glas == 36) {
    if (xl_format < 2) pp_prijs = pp_prijs*1 + (glas1 * oppervlakte);
    if (xl_format == 2) pp_prijs = pp_prijs*1 + (glas2 * oppervlakte);
  }

  // Nu de kleur nummers met de + % berekening
  if (kleur == 1) /* Mat Zilver */
    pp_prijs = pp_prijs*1;
  else if (kleur == 2) /* Mat Zwart 7%*/
    pp_prijs = pp_prijs*1.07;
  else if (kleur == 3) /* Mat X */
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 4) /* Mat Xe */
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 5) /* Mat Goud 7%*/
    pp_prijs = pp_prijs*1.07;
  else if (kleur == 6) /* Mat Champagne 7%*/
    pp_prijs = pp_prijs*1.07;
  else if (kleur == 10) /* Zwart 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 11) /* Kersen 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 12) /* Koloniaal 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 13) /* Zilver 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 15) /* Blank ongelakt 0%*/
    pp_prijs = pp_prijs*1;
  else if (kleur == 16) /* Licht ingewassen 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 17) /* Hoogglans antraciet 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 18) /* Hoogglans brons 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 19) /* Hoogglans goud 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 20) /* Hoogglans zilver 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 21) /* Hoogglas zwart 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 22) { /* Wit alu 7%, wit hout 10% */
  	if (pp_type == 12)
      pp_prijs = pp_prijs*1.10;
  	else
      pp_prijs = pp_prijs*1.07;
  }
  else if (kleur == 23) /* Donkerblauw 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 24) /* Lichtblauw 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 25) /* Lichtrood 30%*/
    pp_prijs = pp_prijs*1.3;
  else if (kleur == 30) /* Brons 7%*/
    pp_prijs = pp_prijs*1.07;
  else if (kleur == 31) /* Goud 10%*/
    pp_prijs = pp_prijs*1.1;
  else if (kleur == 32) /* Beuken 10%*/
    pp_prijs = pp_prijs*1.1;


  pp_prijs = doRound(pp_prijs, 2);
  if (pp_prijs ==  Math.floor(pp_prijs))
    pp_prijs = pp_prijs+'.00';
  else if ((pp_prijs*10) ==  Math.floor(pp_prijs*10))
    pp_prijs = pp_prijs+'0';
  
  return (pp_prijs);
}

function check_check(oform, prefix)
{
oform[prefix].value=1;
}

function uncheck_check(oform, prefix)
{
oform[prefix].value=0;
}

