﻿/****************************** Powłoka Uszczelniajaca ******************************/
function PowlUszcz(id, pow, rabat, typ_zabezp) {
    //atrybuty
    var base = new Material(id)
    base.init()
    var _id         = base.dajId()
    var _nazwa      = base.dajNazwe()
    var _pow        = pow
    var _gr
    var _zuzycie    = 0
    var opakowania  = new Array()
    var ceny        = new Array()
    var _pak        = new Array()
    var _typ_zabezp = typ_zabezp
    var _cena       = 0
    var _cena_r     = 0
    var _rabat      = rabat
          
    //metody
    this.dajId = base.dajId
    this.dajNazwe = base.dajNazwe
    var liczZuzycie = function() {
        if(_id == "CR 65") {
            if(_typ_zabezp == "przeciwwilgociowe") {
                pom = 3.0 * _pow
                _gr = 2.0
            }
            else if(_typ_zabezp == "przeciwwodne") {
                pom = 4.0 * _pow
                _gr = 2.5
            }
            else if(_typ_zabezp == "woda o slupie do 5m") {
                pom = 5.0 * _pow
                _gr = 3.0
            }
            else if(_typ_zabezp == "maksymalna grubosc") {
                pom = 8.0 * _pow
                _gr = 5.0
            }
        }
        else if(_id == "CR 166") {
            if(_typ_zabezp == "przeciwwilgociowe") {
                pom = 3.0 * _pow
                _gr = 2.0
            }
            else if(_typ_zabezp == "przeciwwodne") {
                pom = 4.0 * _pow
                _gr = 2.5
            }
            else if(_typ_zabezp == "maksymalna grubosc") {
                pom = 5.0 * _pow
                _gr = 3.0
            }
        }
        else if(_id == "CL 50") {
            pom = 1.6 * _pow
        }
        else if(_id == "CL 51") {
            pom = 1.1 * _pow
        }
        _zuzycie = pom.toFixed(1)
    } 
    var inicjujOpakowania = function() {

        if((_id == "CR 65") || (_id == "CR 166"))
            opakowania = 25
        else if(_id == "CL 50")
            opakowania = 10
        else if(_id == "CL 51")
            opakowania[0] = 15
            opakowania[1] = 5
    }
    var pakuj = function() {
        if(_id == "CL 51") {
            if(_zuzycie < 5) {
                _pak[1] = 1  
                return
            }
            //jezeli > 10, pakujemy do wiekszych
            //pakujemy zaczynajac od najwiekszej paczki
            for(k = 0; k < opakowania.length; k++)
            _pak[k] = 0
            var masa = _zuzycie
            var reszta
            var i = 0;
            var ile_paczek = 0;
            while(i < opakowania.length) {
                if(masa > 0){
                    ile_paczek = Math.floor(masa / opakowania[i])
                    if(ile_paczek == 0) {
                        _pak[i] = _pak[i] + 1;
                        return;
                    }
                    else {
                        _pak[i] = ile_paczek
                        reszta = masa - ile_paczek * opakowania[i]
                        masa = masa - (masa - reszta)
                        i++
                    }
                }
                else
                    i++
            }
            if(masa > 0)
                _pak[i - 1]++;
        }
        else
            _pak = Math.ceil(_zuzycie / opakowania)
    }
    //Inicjacja cen
    var inicjujCeny = function() {
        if(_id == "CR 65")
            ceny = 44.5
        else if(_id == "CR 166")
            ceny = 287.1
        else if(_id == "CL 50")
            ceny = 238.7
        else if(_id == "CL 51") {
            ceny[0] = 198.0
            ceny[1] = 79.2            
        }
    }
    this.dajCene = function(i) {
        var pom = _cena.toFixed(2)
        return pom
    }
    this.dajCeneR = function(i) {
        var pom = _cena_r.toFixed(2)
        return pom
    }    
    this.dajLiczbePaczkek = function(i) {
        var pom =  _pak
        return pom
    }
    this.dajPaczke = function(i) {
        var pom = opakowania
        return pom
    }
    this.dajZuzycie = function() {
        return _zuzycie
    }
    this.obliczenia = function() {
        liczZuzycie()
        inicjujOpakowania()
        inicjujCeny()
        pakuj()
    }
    this.pisz = function() {
        var kontrolka = document.getElementById("wyniki");
        kontrolka.innerHTML += "<div class='out_mat'>"
        +_id+" ("+_nazwa+")</div>"

        if(_id == "CL 51") {
            for(i = 0; i < opakowania.length; i++) {
                if(_pak[i] > 0) {    
                    var c_netto = ceny[i]
                    _cena += c_netto*1.22*_pak[i]
                    kontrolka.innerHTML += "<div class='out_ile'>"
                        +"("+_pak[i]+" x "+opakowania[i]+" l) x "
                        +floatToCurr(c_netto*1.22)+"</div>" 
                    if(_rabat == 0) {
                        _cena_r = 0
                        kontrolka.innerHTML += "<div class='out_cn_bez_r'>"
                            +floatToCurr(c_netto*1.22*_pak[i])+"</div>";
                    }
                    else {
                        _cena_r += c_netto * (1 - (_rabat/100)) * _pak[i] * 1.22
                        kontrolka.innerHTML += "<div class='out_cn_minus_r'>"
                            +floatToCurr(c_netto * (1 - (_rabat/100)) * _pak[i] * 1.22)+"</div>"
                        kontrolka.innerHTML += "<div class='out_cn'>"
                            +floatToCurr(c_netto*1.22*_pak[i])+"</div>"                   
                    }    
                }
            }
        }
        else 
        {
            _cena = ceny*1.22*_pak
            if(_id == "CR 166")
                kontrolka.innerHTML += "<div class='out_ile'>"
                    +"("+_pak+" x (składnik A (25 kg) + składnik B(10 l))) x "
                    +floatToCurr(ceny*1.22)+"</div>" 
            else if((_id == "CL 50") || (_id == "CR 65"))
                kontrolka.innerHTML += "<div class='out_ile'>"
                    +"("+_pak+" x "+opakowania+" kg) x "
                    +floatToCurr(ceny*1.22)+"</div>" 
            if(_rabat == 0) {
                _cena_r = 0
                kontrolka.innerHTML += "<div class='out_cn_bez_r'>"
                    +floatToCurr(ceny*1.22*_pak)+"</div>";
            }
            else {
                _cena_r += ceny * (1 - (_rabat/100)) * _pak * 1.22
                kontrolka.innerHTML += "<div class='out_cn_minus_r'>"
                    +floatToCurr(ceny * (1 - (_rabat/100)) * _pak * 1.22)+"</div>"
                kontrolka.innerHTML += "<div class='out_cn'>"
                    +floatToCurr(ceny*1.22*_pak)+"</div>"                   
            }    
        }
    }
}

