// Get the HTTP Object
function getHTTPObject(){
   if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP");
   else if (window.XMLHttpRequest) return new XMLHttpRequest();
   else {
      alert("Your browser does not support AJAX.");
      return null;
   }
}

// Change the value of the outputText field
function setOutput(){
   if(httpObject.readyState == 4){
     if(parseInt(httpObject.responseText) > 0){
	   var dekorfaktor = 1;
	   for (var i=8; i<=17; i++) { // Standarddekore
         if ($('id[3]'+i).checked == true) {
		 var dekorfaktor = 1.2;
	     }
	   }
	   for (var i=18; i<=21; i++) { // Sonderdekorfarben1
         if ($('id[3]'+i).checked == true) {
		 var dekorfaktor = 1.35;
	     }
	   }
	   for (var i=708; i<=709; i++) { // Sonderdekorfarben2
         if ($('id[3]'+i).checked == true) {
		 var dekorfaktor = 1.35;
	     }
	   }
	   if ($('id[121]990').checked == true) { // Meranti
         var dekorfaktor = 1.15;
	   }
	   if ($('id[121]991').checked == true) { // Lärche
         var dekorfaktor = 1.2;
	   }
	   if ($('id[121]992').checked == true) { // Eiche
         var dekorfaktor = 1.4;
	   }

	   var profilfaktor = 0;
	   if ($('id[2]4').checked == true) { // IDEAL 5000
         var profilfaktor = 0.05;
	   }
	   if ($('id[2]5').checked == true) { // IDEAL 6000
         var profilfaktor = 0.1;
	   }
	   if ($('id[2]988').checked == true) { // Holz Roundline
         var profilfaktor = 0.05;
	   }

	   if($('id[1]1004').checked==true) {
	     var elementpreis = (httpObject.responseText * holzalu_faktor) * dekorfaktor;
         $('id[txt_64]').value = elementpreis;
         var mp = elementpreis * 1.19;
	   } else {
	       var elementpreis = httpObject.responseText;
           $('id[txt_64]').value = (elementpreis * dekorfaktor) + (elementpreis * profilfaktor);
           var mp = ((elementpreis * dekorfaktor) + (elementpreis * profilfaktor)) * 1.19;
	     }
	   mp = Math.round(parseFloat(mp)/0.01)*0.01;
	   var k = (Math.round(mp * 100) / 100).toString();
  	   k += (k.indexOf('.') == -1)? '.00' : '00';
 	   k = k.substring(0, k.indexOf('.') + 3);
	   k = k.replace(/\./g, ',');
	   k = k.substring(0, k.indexOf(',')+3);
       document.getElementById('gesamtpreis').value = mp;
       while (k.search(/\d{4}/) != -1)              // solange noch 4 Ziffern aufeinander folgen
  	   k = k.replace(/(\d+)(\d{3})/, "$1.$2");  // setze vor die letzen drei einen Punkt
       document.getElementById('basispreis').innerHTML = k;
       document.getElementById('bh_alert').innerHTML = '';
       document.getElementById('bh_alert').style.display='none';
       //calculate_additional_prices();
       $('rollpreis_tmp').value = 0;
       $('id[txt_92]').value = 0;

       if ($('id[38]363').checked==true) {
         if ($('show_rofueschie_ns').checked==true) {
         rofueschie_neubau();
         }
         if ($('show_rofueschie_as').checked==true) {
         rofueschie_altbau();
         }
       } else {
           clear_rofueschie();
         }
       /*
       var qm = parseInt($('id[txt_5]').value) * parseInt($('id[txt_6]').value) / 1000000; // Quadratmeter
       if ((parseFloat(qm) > 6 || parseInt($('id[txt_5]').value > 3000)) && $('panzerteilung').value == '0') {
		calculate_final_price_rav('rav_h', '', '366');$('show_rav').checked=false;$('id[39]366').checked=true;$('rav_yes').style.display='none';
	    calculate_final_price_rav('rav_k', '', '447');$('show_rav_k').checked=false;$('id[43]447').checked=true;$('rav_k_yes').style.display='none';
	  	clear_rofueschie();
	  	clear_vorbau();
		clear_aufbau();
		$('rollladen1').style.display='none';
	  	$('rollladen2').style.display='none';
	  	$('id[38]362').checked=true;
       } else {
          $('rollladen1').style.display='block';
	      $('rollladen2').style.display='block';
          }
       */
        document.getElementById('konfig_div').style.display='none';
        document.getElementById('konfig_step2').style.display='block';
        document.getElementById('check_1_2').style.display='none';
        document.getElementById('submit_1_2').style.display='block';
        document.getElementById('pixel').scrollIntoView();
        document.getElementById('redstep1').innerHTML='<span style="color:#000"><u>Schritt 1: Basiskonfiguration</u></span>';
        document.getElementById('tdstep1').style.backgroundColor = "#E9E9E9";
        document.getElementById('redstep2').innerHTML='<span style="color:#C40000"><u>Schritt 2: Detailkonfiguration</u></span>';
        document.getElementById('tdstep2').style.backgroundColor = "#E9E9E9";

     } else {
       document.getElementById('konfig_div').style.display='block';
       document.getElementById('konfig_step2').style.display='none';
       document.getElementById('check_1_2').style.display='block';
       document.getElementById('submit_1_2').style.display='none';
       document.getElementById('div_bh').scrollIntoView();
       document.getElementById('bh_alert').innerHTML = '<span style="color:#ff3300;">Die konfigurierte T&uuml;re ist in dieser Gr&ouml;ße leider nicht lieferbar.</span>';
       document.getElementById('bh_alert').style.display='block';
       }
   httpObject = getHTTPObject();
   httpObject.open("GET", "additional_prices_tuere.php?xc="+parseInt($('id[txt_5]').value)+"&yc="+parseInt($('id[txt_6]').value)+"&gp="+document.getElementById('gesamtpreis').value+"&df="+dekorfaktor+"&bb="+$('beschlag').value+"&ww="+$('wings').value+"&rf="+parseInt($('ravfaktor').value)+"&iv_val="+parseInt($('iv_val').value)+"&tgr_val="+parseInt($('tgr_val').value)+"&ssv_val="+parseInt($('ssv_val').value)+"&siv_val="+parseInt($('siv_val').value)+"&osv_val="+parseInt($('osv_val').value)+"&res_val="+parseInt($('res_val').value)+"&fap_val="+parseInt($('fap_val').value)+"&fbap_val="+parseInt($('fbap_val').value)+"&aus_val="+parseInt($('aus_val').value)+"&rfsn_val="+parseInt($('rfsn_val').value)+"&rfsa_val="+parseInt($('rfsa_val').value)+"&resv_val="+parseInt($('resv_val').value)+"&resa_val="+parseInt($('resa_val').value)+"&rhoch_val="+parseInt($('rhoch_val').value)+"&rahoch_val="+parseInt($('rahoch_val').value)+"&bes_val="+parseInt($('bes_val').value)+"&gri_val="+parseInt($('gri_val').value)+"&rav_k_r_val="+parseInt($('rav_h_l_val').value)+"&rav_k_r_val="+parseInt($('rav_h_r_val').value)+"&rav_k_r_val="+parseInt($('rav_k_l_val').value)+"&rav_k_r_val="+parseInt($('rav_k_r_val').value)+"&rav_h_o_val="+parseInt($('rav_h_o_val').value)+"&rav_h_u_val="+parseInt($('rav_h_u_val').value)+"&rav_k_o_val="+parseInt($('rav_k_o_val').value)+"&rav_k_u_val="+parseInt($('rav_k_u_val').value)+"&nao_val="+parseInt($('nao_val').value)+"&bos_val="+parseInt($('bos_val').value)+"&stg_val="+parseInt($('stg_val').value), true);
   httpObject.onreadystatechange = addPriceOutput;
   httpObject.send(null);
   }
}


function addPriceOutput() {
   if(httpObject.readyState == 4){
   eval(""+httpObject.responseText+"");
       if ($('id[38]364').checked==true) {
       $('id[txt_79]').value=$('id[txt_5]').value;
	   $('id[txt_80]').value=$('id[txt_6]').value;
       kastenfarbe_check();
       kastenhoehe_check();
	   fenstergroesse_roll_events('0','0','0','0');
       if ($('id[87]827').checked==true) roll_rav_rechts();
       if ($('id[87]828').checked==true) roll_rav_links();
       calculateRollFaktor();
       }
       if ($('id[38]365').checked==true) {
       $('id[txt_94]').value=$('id[txt_5]').value;
	   $('id[txt_95]').value=$('id[txt_6]').value;
       kastenhoehe_check2();
       //aufbaukasten_check();
       fenstergroesse_roll_events('0','0','0','0');
       calculateRollFaktor();
       }
   }
}


function validateFirstStep() {
   var firstStepCheck = true;

   if (Validation.validate($('valgr'),'')==false) {
   firstStepCheck = false;
   $('valgr').scrollIntoView();
   }
   var vft = $('validate_ftype').value;
   if (Validation.validate($(''+vft+''),'')==false) {
   firstStepCheck = false;
   $($('validate_ftype').value).up(1).style.border = '2px red solid';
   $($('validate_ftype').value).up(1).scrollIntoView();
   }

   if (Validation.validate($('id[txt_5]'),'')==false || Validation.validate($('id[txt_6]'),'')==false) {
   firstStepCheck = false;
   }

   if ($('et_vx').style.display != 'none' && Validation.validate($('etvert1x2'),'')==false) {
   firstStepCheck = false;
   $('vertx_msg').innerHTML='Die Summe der H&ouml;henangaben muss identisch<br> sein mit der oben angegebenen Gesamth&ouml;he.';
   }
   if ($('et_v1').style.display != 'none' && Validation.validate($('etvert1x1'),'')==false) {
   firstStepCheck = false;
   $('vertx_msg').innerHTML='Der Wert muss identisch sein mit<br> der oben angegebenen Gesamth&ouml;he.';
   }

   if ($('et_hx').style.display != 'none' && Validation.validate($('ethori1x2'),'')==false) {
   firstStepCheck = false;
   }
   if ($('et_h1').style.display != 'none' && Validation.validate($('ethori1x1'),'')==false) {
   firstStepCheck = false;
   }

   if (firstStepCheck==true) {
   calculateBasePrice();
   }
}



// Implement business logic
function calculateBasePrice(){
   httpObject = getHTTPObject();
   if (httpObject != null) {
   	  var kuhofe;
   	  if($('id[1]1').checked==true) kuhofe = 'KT';
   	  if($('id[1]2').checked==true) kuhofe = 'HT';
   	  if($('id[1]1004').checked==true) kuhofe = 'HT';
      httpObject.open("GET", "csv_preisliste.php?pl="+kuhofe+$('preisliste').value+"&x="+parseInt($('id[txt_5]').value)+"&y="+parseInt($('id[txt_6]').value), true);
      httpObject.onreadystatechange = setOutput;
      httpObject.send(null);
   }
}

var httpObject = null;