﻿//walidacja kontrolki DDL_SzerSzczelin
function walidujSilikon(pole) {
    ukryj_ostrzezenia("val_SzerSzczelin")
    if(pole.value != "") {
        var v1 = walidujSelect("DDL_SzerSzczelin", "val_SzerSzczelin")
        var v2 = walidujSelect("DDL_TypSilikonu", "val_TypSilikonu")     
        return v1 && v2
    }
    else
        return true
}

function walidacja() {
    var v1  = walidujSelect("DDL_WymPlytek", "val_WymPlytek")
    var v2  = walidujSelect("DDL_SzerSpoiny", "val_SzerSpoiny")
    var v3  = walidujSelect("DDL_RodzZaprawy", "val_RodzZaprawy")
    var v4  = walidujSelect("DDL_RodzSpoinySc", "val_RodzSpoinySc")
    var v5  = walidujSelect("DDL_GrupaSc", "val_GrupaSc")
    var v6  = walidujSelect("DDL_RodzSpoinyPo", "val_RodzSpoinyPo")
    var v7  = walidujSelect("DDL_GrupaPo", "val_GrupaPo")
    var v8  = walidujTB("TB_PowSc", "val_PowSc")
    var v9  = walidujTB("TB_PowPo", "val_PowPo")
    var v10 = walidujTB("TB_DlSzczelin", "val_DlSzczelin")
    var v11 = walidujSilikon(document.getElementById("TB_DlSzczelin"))
    var v12 = walidujTB("TB_Rabat", "val_Rabat")
    if(v1 && v2 && v3 && v4 && v5 && v6 && v7 && v8 && v9 && v10 && v11 && 12)
        return true;
    else 
        return false
}   

function licz() {
    if(walidacja() == true) {
        /************************** Kontrolki **************************/
        //Wymiar plytek
        var wp_k    = document.getElementById("DDL_WymPlytek")
        var wp_id	= wp_k.options[wp_k.selectedIndex].value
        //Szerokosc spoiny
        var ss_k    = document.getElementById("DDL_SzerSpoiny")
        var ss_id	= ss_k.options[ss_k.selectedIndex].value
        //Zaprawa sciany
        var za_k    = document.getElementById("DDL_RodzZaprawy")
        var za_id   = za_k.options[za_k.selectedIndex].value
        //Spoina sciany
        var spsc_k    = document.getElementById("DDL_RodzSpoinySc")
        var spsc_id   = spsc_k.options[spsc_k.selectedIndex].value
        //Grupa spoiny sciany
        var grsc_k    = document.getElementById("DDL_GrupaSc")
        var grsc_id   = grsc_k.options[grsc_k.selectedIndex].value
        //Spoina podlogi
        var sppo_k    = document.getElementById("DDL_RodzSpoinyPo")
        var sppo_id   = sppo_k.options[sppo_k.selectedIndex].value
        //Grupa spoiny sciany
        var grpo_k    = document.getElementById("DDL_GrupaPo")
        var grpo_id   = grpo_k.options[grpo_k.selectedIndex].value
        //Dlugosc szczelin dylatacjynych
        var ds_k	= document.getElementById("TB_DlSzczelin")
        var ds	    = popraw_wartosc(ds_k.value)
       //Szerokosc szczelin dylatacyjnych
        var ssz_k	= document.getElementById("DDL_SzerSzczelin")
        var ssz_id	= ssz_k.options[ssz_k.selectedIndex].value
       //Typ silikonu
        var ts_k	= document.getElementById("DDL_TypSilikonu")
        var ts_id	= ts_k.options[ts_k.selectedIndex].value
        //Pole powierzchni scian
        var powsc_k   = document.getElementById("TB_PowSc")
        var powsc     = popraw_wartosc(powsc_k.value)  
        //Pole powierzchni posadzki
        var powpo_k   = document.getElementById("TB_PowPo")
        var powpo     = popraw_wartosc(powpo_k.value)  
        //Rabat
        var rabat_k = document.getElementById("TB_Rabat")
        var rabat   = popraw_wartosc(rabat_k.value)
        
        /************************** Obliczenia **************************/
        //Obiekt do oksportu wynikow
        var eksport = new Object()

        //zapisujemy cene sumaryczna materialow        
        var cena = 0
        var cena_r = 0

        //wyniki - pasek z tytulem
        if(rabat == 0) {
				piszWynikiTytulBezRabatu()
				piszWynikiTytulBezRabatuDoDruku2(powsc+powpo)
		}
        else  {
            piszWynikiTytulZRabatem()
            piszWynikiTytulZRabatemDoDruku2(rabat, powsc+powpo)
        }
        //Zaprawa, tworzymy jesli jest wymagana
        //arg konstruktora: id, pole powierzchni, rabat, wymiar plytek
        var za = new Zaprawa(za_id, powsc + powpo, rabat, wp_id);
        za.obliczenia()
        za.pisz()
        cena += parseFloat(za.dajCene())
        cena_r += parseFloat(za.dajCeneR())
        eksport.za = za

        //Spoina - tworzymy jeden albo dwa obiekty
        //arg konstruktora: id, rabat, powierzchnia, grupa, wymiar plytek, szerokosc spoiny
        if((spsc_id == sppo_id) && (grsc_id == grpo_id)) {
            var sp = new Spoina(spsc_id, powsc + powpo, rabat, grsc_id, wp_id, ss_id);
            sp.obliczenia()
            sp.pisz()
            cena += parseFloat(sp.dajCene())
            cena_r += parseFloat(sp.dajCeneR())
            eksport.sp = sp
        }
        else {
            var spsc = new Spoina(spsc_id, powsc, rabat, grsc_id, wp_id, ss_id);
            spsc.obliczenia()
            spsc.pisz()
            cena += parseFloat(spsc.dajCene())
            cena_r += parseFloat(spsc.dajCeneR())
            eksport.spsc = spsc

            var sppo = new Spoina(sppo_id, powpo, rabat, grpo_id, wp_id, ss_id);
            sppo.obliczenia()
            sppo.pisz()
            cena += parseFloat(sppo.dajCene())
            cena_r += parseFloat(sppo.dajCeneR())
            eksport.sppo = sppo
        }
        //Uszczelniacz - tworzymy obiekt jezeli uzytkownik podaje dlugosc szczelin
        if(ds > 0) {
            //arg konstruktora: id, rabat, dlugosc dylatacji, 
            //szerokosc szczelin, typ uszczelniacza
            var usz = new Uszczelniacz("CS 25", rabat, ds, ssz_id, ts_id);
            usz.obliczenia()
            usz.pisz()
            cena += parseFloat(usz.dajCene())
            cena_r += parseFloat(usz.dajCeneR())
            eksport.usz = usz
        }
       
        /************************** Sumaryczna cena **************************/
        //pasek podsumowania
        if(rabat == 0)
            piszWynikiSumaBezRabatu(floatToCurr(cena))
        else {
            piszWynikiSumaZRabatem(floatToCurr(cena), floatToCurr(cena_r))
        }
          
        document.getElementById("BTN_Drukuj").disabled = false
	    return eksport
    }
    else {
        alert("Wypełnij poprawnie formularz.")
    }
}

function zapisz() {
	var l = new licz()
	alert("Id gruntu: "+l.mp.dajId())
}
