$(document).ready(function() {
        
    var FELTET_AR_32 = 200;
    var FELTET_AR_45 = 350;
    var FUSZER_AR_32 = 50;
    var FUSZER_AR_45 = 100;
        
    var HUS_START = 300;
    var HUS_END = 399;
    var ZOLDSEG_START = 400;
    var ZOLDSEG_END = 499;
    var SAJT_START = 500;
    var SAJT_END = 599;
    var EGYEB_START = 600;
    var EGYEB_END = 699;
    var FUSZER_START = 700;
    var FUSZER_END = 799;
        
    function pkInit() {
        $(".pk-cim").text("Pizza Forte");
        $("#pk-feltetek").hide();
        $("#pk-tesztak").show();
        
        tesztaHide();
        $("#pk-100").fadeIn("200").css("z-index","1");
        $("#pk-100b").attr("checked",true);
        
        szoszHide();
        $(".pk-szosz").each(function() {
            $(this).css("z-index","2");
        });
        $("#pk-200").fadeIn("200").css("z-index","3");
        
        $("#pk-200b").attr("checked",true);
        
        feltetHide(); 
               
        // mozzarella
        $("#pk-500b").attr("checked", true);
        
        checkPrice();

        $("#pk-nev").val('Pizza Forte');        
   
        $("body").data("pk_ar", 0);
        $("body").data("pk_hus", 0);
        $("body").data("pk_zoldseg", 0);
        $("body").data("pk_sajt", 0);
        $("body").data("pk_egyeb", 0);
        $("body").data("pk_fuszer", 0);
        $("body").data("hiba", 0);

        
        
    }
    
    
    
    // menu --------

    $("#pk-gomb-tesztak").click(function() {  
        $("#pk-feltetek").hide();
        $("#pk-tesztak").show();
    });
    
    $("#pk-gomb-feltetek").click(function() {
        $("#pk-tesztak").hide();
        $("#pk-feltetek").show();
    });
    
    // tesztak -------
    
    function tesztaHide() {
        $(".pk-teszta").each(function() {
            $(this).fadeOut("200");
        });
    };    

    $(".pk-teszta-b").click(function() {
        var t = "#" + this.id.substring(0,6);
        //alert(t);
        tesztaHide();
        $(t).fadeIn("200");
    });
    
    // szoszok -----
    
    function szoszHide() {
        $(".pk-szosz").each(function() {
            $(this).fadeOut("200");
        });
    };   
     
    $(".pk-szosz-b").click(function() {
        var theID = this.id.substring(0,6); 
        //alert(theID);
        var t = "#" + theID;
        //alert(t);
        szoszHide();
        $(t).fadeIn("200");
    });
        
    
    // feltetek ----
    
    function feltetHide() {
        $(".pk-feltet").each(function() {
          $(this).animate({
        			width: '246px', 
        			height: '246px',
                    marginTop: '-20px',
                    marginRight: '-20px',
                    marginBottom: '-20px',
                    marginLeft: '-20px',
                    opacity: '0'
        		}, 200);
          $("#" + this.id + "b").removeAttr("checked");
          $("#" + this.id + "b2").removeAttr("checked");
        });
    }
    
    
    function feltetRendez(t) {
        $(".pk-feltet").each(function(index) {
          $(this).css('z-index',index + 100);
        });
        $(t).css('z-index',200);
    }; 
    
    /*     
    function feltetRendezVissza() {
        $(".pk-feltet").each(function(index) {
          $(this).css('z-index',index-(index*2));
        });
    };
    
    $("#pk-f1").click(function() {
        feltetRendez();
    });  
    */

    $("#pk-gomb-ujrakezdes").click(function() {
        pkInit();
    });

    $(".pk-feltet-b").click(function() {
        var t = "#" + this.id.substring(0,6);

        // ha A-t kikapcsolom es B be van kapcsolva
        if(!$(this).attr("checked") && $(t + "b2").attr("checked")) {
            $(t + "b2").removeAttr("checked");
        }        
        
        //feltetvizsgalat
        var feltet = $("#pizzakreator input:checkbox:checked");
        var feltetszam = feltet.length;
        
        if(feltetszam > 8) {
            $(this).removeAttr("checked");
            alert("Legfeljebb 8 feltét választható!");
        } else {
            feltetRendez(t);
            
            if(this.id != 'pk-500b' ||
              (this.id == "pk-500b" && $(t + "b2").attr("checked") && $(this).attr("checked")) ||
              (this.id == "pk-500b" && !$(t + "b2").attr("checked") && $(this).attr("checked") && $(t).css('opacity') == '1') ||
              (this.id == "pk-500b" && !$(t + "b2").attr("checked") && !$(this).attr("checked") && $(t).css('opacity') == '1')) { // mozzarella
                if($(t).css('opacity') == '0') {
                    $(t).animate({
            			width: '206px', 
            			height: '206px',
                        marginTop: '0',
                        marginRight: '0',
                        marginBottom: '0',
                        marginLeft: '0',
                        opacity: '1'
            		}, 200);
                } else {
                    $(t).animate({
            			width: '246px', 
            			height: '246px',
                        marginTop: '-20px',
                        marginRight: '-20px',
                        marginBottom: '-20px',
                        marginLeft: '-20px',
                        opacity: '0'
            		}, 200); 
                }
            }
        }
    });

    $(".pk-feltet-b2").click(function() {
        var t = "#" + this.id.substring(0,6);
                    
        // ha A nincs bekapcsolva es B-t bekapcsolom
        if(!$(t + "b").attr("checked") && $(this).attr("checked")) {

            // feltetvizsgalat
            var feltet = $("#pizzakreator input:checkbox:checked");
            var feltetszam = feltet.length;
            //alert(feltetszam);
            if(feltetszam <= 7) {
                // ha B-vel egyutt max 7, akkor mehet A is ( = 8)
                //DEBUG
                //alert("<= 7, mehet mindketto");
                $(t + "b").trigger("click");
                $(this).attr("checked", true);
            } else if(feltetszam == 8){
                // ha B-vel egyutt 8, akkor B mar nem fog ferni, de A meg igen -> clicktrigger ( = 8)
                //DEBUG
                //alert("==8, így csak A")         
                $(t + "b").trigger("click");       
            } else {
                // ha feltetszam meg 8-nal is nagyobb, akkor nem lesz jo egyik se
                $(t + "b").removeAttr("checked");
            };  
        } 
        
        // mozzarella
        // az A kattintasara nem valt, csak B-re
        if((this.id == "pk-500b2" && $(t + "b").attr("checked") && $(this).attr("checked")) ||
           (this.id == "pk-500b2" && $(t + "b").attr("checked") && !$(this).attr("checked"))) { 
            $(t + "b").trigger("click");
            $(t + "b").attr("checked", true);
        }
               
        // feltetvizsgalat
        var feltet = $("#pizzakreator input:checkbox:checked");
        var feltetszam = feltet.length;  
        if(feltetszam > 8) {
            $(this).removeAttr("checked");
            alert("Legfeljebb 8 feltét választható!");
        };
        // DEBUG  
        //alert(feltetszam);
    });
    
    // ar
    /*
     klasszikus, 32cm 1300ft + 200ft
     klasszikus, 45cm 2300ft + 350ft
     italiai   , 32cm 1300ft + 200ft
   
     4 feltet
    */
    
    function checkPrice() {
        var feltet = $("#pizzakreator input:checkbox:checked");
        var teszta = $("input[name='pk-teszta']:checked").val();
        
        var feltetszam = feltet.length;

        var termekar = 0;
        
        var uj_husok = 0;
        var uj_zoldsegek = 0;
        var uj_sajtok = 0;
        var uj_egyebek = 0;
        var uj_fuszerek = 0;
                
        // mozzarella
        var moz = 1;
        
        // megszamolom a jelenlegi felteteket
        feltet.each(function() {
            var theID = $(this).val();
            if(theID >= HUS_START && theID <= HUS_END) {
                uj_husok++;
            } else if(theID >= ZOLDSEG_START && theID <= ZOLDSEG_END) {
                uj_zoldsegek++;
            } else if(theID >= SAJT_START && theID <= SAJT_END) {
                uj_sajtok++;
                if(moz == 1 && theID == 500) { // mozzarella
                    moz--;
                }
            } else if(theID >= EGYEB_START && theID <= EGYEB_END) {
                uj_egyebek++;
            } else if(theID >= FUSZER_START && theID <= FUSZER_END) {
                uj_fuszerek++;
            }
        }); 
          
        switch(teszta) {
            case '100':
                termekar = 1400;
                termekar += uj_fuszerek * FUSZER_AR_32;
                break;
            case '101':
                termekar = 2500;
                termekar += uj_fuszerek * FUSZER_AR_45;
                break;
            case '102':
                termekar = 1400;
                termekar += uj_fuszerek * FUSZER_AR_32;
                break;
            case '103':
                termekar = 1600;
                termekar += uj_fuszerek * FUSZER_AR_32;
                break;
        }  
        
        var mozDB = (moz == 0) ? 1 : 0;
        if(feltetszam - mozDB - uj_fuszerek >= 4) { // kivonom a fuszereket is, mert azt kulon arazzuk
            var feltetek = uj_husok + uj_zoldsegek + uj_egyebek + uj_sajtok;
            if(teszta == 100 || teszta == 102 || teszta == 103) { // 32cm pizza
                termekar += (feltetek - 4 - mozDB) * FELTET_AR_32;
            } else if(teszta == 101) { // 45cm pizza
                termekar += (feltetek - 4 - mozDB) * FELTET_AR_45;
            }
        }
        
        // DEBUG
        //alert("hus: " + uj_husok +"\nzold: " + uj_zoldsegek + "\nsajt: " + uj_sajtok + "\negyeb: " + uj_egyebek  + "\nfusz: " + uj_fuszerek + "\nar: " + termekar + "\nfeltetszam: " + feltetszam);

        $("#pk-prc").val(termekar);        
        
        $("#pk-ar").children().first().text(termekar + " Ft");
        
        $("#pk-feltetekszama").text("feltétek: " + feltetszam);
        $("#pk-husok").text(" húsfeltétek: " + uj_husok);
        $("#pk-zoldsegek").text(" zöldség feltétek: " + uj_zoldsegek);
        $("#pk-egyebek").text(" egyéb feltétek: " + uj_egyebek);
        $("#pk-sajtok").text(" sajtok: " + uj_sajtok);
        $("#pk-fuszerek").text(" fűszerek: " + uj_fuszerek);
    }
    
    $("#pizzakreator input:checkbox").click(function() {
       checkPrice(); 
    });
    $("#pizzakreator input:radio").click(function() {
       checkPrice();
    });

    pkInit();       
    
});
