/* use to load functions after loading page - jquery util*/
$(document).ready(function() {
  //$("#homePageTitle").remove();
        /* obsługa kalkulatorów */

        $('.showPopup').mouseover(function() {
            var elementId = $(this).attr('id');
            elementId = elementId.replace("options_", "");
            elementId = elementId.replace("img_opt_", "");
            elementId = elementId.replace("opt_", "");
            $('#popup'+elementId).show();
            return false;
        });

        $('.showPopup').mouseout(function() {
              $('div.popupItemContent').hide();
        });
        
        $('#showNadrukInfo').mouseover(function() {
              $('div#popupNadrukInfo').show();
        });
        
        $('#showNadrukInfo').mouseout(function() {
              $('div.popupItemContent').hide();
        });


        $('select#kubekModel').change(function() {
           getImage('kubki',$("select#kubekModel").val());
        });

         $('a#liczKubki').click(function() {

             var error = '';
             var iloscSztuk = $("input#kubekIlosc").val();

             if(iloscSztuk<36 || isInteger(iloscSztuk)=='false'){
                 error = 'Minimalny nakład to 36 sztuk.';
             }

             if(error!=''){
                 alert(error);
             }
             else{
                 getPrice('kubki',$("select#kubekModel").val());
                 getSupply('kubki',$("select#kubekModel").val());
             }

            return false;
        });

        $('select#kubekModel').change(function() {
            $('div#mainOptions > div input').attr('checked', false);
            hideCalc();
            checkRodzajNadruku('kubki');
            nadrukInfo();
             checkZdobienia('kubki');
        });

        $('input#kubekIlosc').keyup(function() {
            hideCalc();
            checkRodzajNadruku('kubki');
            nadrukInfo();
        });


        $('select#kubekIloscKolorow').change(function() {
            hideCalc();
            checkRodzajNadruku('kubki');
            nadrukInfo();
        });

        $('input.kubekOpcjeDodatkowe').click(function() {
            hideCalc();
            checkRodzajNadruku('kubki');
            nadrukInfo();
        });

        $('select#kubekRodzajNadruku').change(function() {
            nadrukInfo();
            hideCalc();
        });

        $('select#kubekTerminRealizacji').change(function() {
            hideCalc();
            nadrukInfo();
        });

        $('select#iloscPaskow').change(function() {
            hideCalc();
            nadrukInfo();
        });

        $('input#options_11').click(function() {
            $("input#options_12").attr('checked', false);
        });

        $('input#options_12').click(function() {
            $("input#options_11").attr('checked', false);
        });

        $('input#options_13').click(function() {
            $("input#options_14").attr('checked', false);
        });


        $('input#options_14').click(function() {
            $("input#options_13").attr('checked', false);
        });

        $('a#goToForm').click(function(event) {
            fillForm('kubki');
        });         
        
         //wyświetlanie popup z flashem z animacja filiżanki 3d
        $("#showFlashPopup").click(function(){
            $("#flashPopup").show();
            return false;
        })

        $("#flashClose").click(function(){
            $("#flashPopup").hide();
            return false;
        })
}
);

function isInteger(liczba)
    {
        if(liczba.search(/^[0-9\s]+$/) == -1) {
            return 'false';
        }

        return 'true';
    }
   
function fillForm(type){
    if(type=='kubki'){
        //Wypełniam model
        var selectedModel = $("select#kubekModel").val();
        var temat = 'Zapytanie ofertowe: ' + $("select#kubekModel option[value='"+selectedModel+"']").text();
        $("input#name").val(temat);

        //wypełniam kolor kubka
        var aModel = temat.split("-");
        var kolor = aModel[1];
        $("input#kolor").val(kolor);

        var naklad = $("input#kubekIlosc").val();
        $("input#naklad").val(naklad);

        var iloscKolorow = $("select#kubekIloscKolorow").val();
        $("input#ilosc_kolorow").val(iloscKolorow);

        var nadrukVal = $("select#kubekRodzajNadruku").val();
        var nadrukText = $("select#kubekRodzajNadruku option[value='"+nadrukVal+"']").text();
        var infoForm = "Rodzaj nadruku:\n - " +nadrukText+ "\n\n";

        var sOpcjeDodatkowe = '';
        var i = 0;
        $("#mainOptions > div.optionItemContainer").each(function(){
            sCheck = $("#mainOptions > div.optionItemContainer > input:checkbox:checked#options_"+i+"").val();
            if(sCheck=='T'){
                sOpcjeDodatkowe += " + " + $("#mainOptions > div.optionItemContainer > span.optDescr > span#opt_"+i).html();
                if(i==6){
                    sOpcjeDodatkowe +=" : " + $("select#iloscPaskow").val() + " ";
                }
                sOpcjeDodatkowe += " \n";
            }
            i++;
        });

        if(sOpcjeDodatkowe!=''){
            infoForm+="Opcje Dodatkowe: \n" + sOpcjeDodatkowe +"\n";
        }

        var terminVal = $("select#kubekTerminRealizacji").val();

        var terminText = $("select#kubekTerminRealizacji option[value='"+terminVal+"']").text();
        infoForm += "Termin realizacji:\n - " +terminText+ "\n\n";

        var kwotaNetto = $('span#targetPrice').html();
        infoForm+= "Koszt kubków :\n - " + kwotaNetto + " zł (netto)" + " \n\n";

        var przesylkaNetto = $('span#targetSupply').html();
        infoForm+= "Koszt dostawy:\n - " + przesylkaNetto + " zł (netto)" + " \n\n";

        $("textarea#tresc").val(infoForm);
        scrollWin('scrollKubki');
    }
}

function checkZdobienia(type){
     $.ajax({
		type: "GET",
		url: baseHref+"index/calculators/getrodzajzdobienia",
		data: {typeobj: type,kubek_id:$("select#kubekModel").val()},
		dataType: 'json',
                asynchronous: 'false',
		success: function(msg){
                    $('div#mainOptions > div.optionItemContainer').hide();
                    for ( var i in msg )
                    {
                        $('div#mainOptions > div#option_id_'+msg[i].optionValue).show();

                    }
		}
	});
}

function checkRodzajNadruku(type){
    var lastCheckedVal =  $("select#kubekRodzajNadruku").val();
    var bOpcjeDodatkowe = 'false';
    var i =0;
    $("#mainOptions > div.optionItemContainer").each(function(){
        sCheck = $("#mainOptions > div.optionItemContainer > input:checkbox:checked#options_"+i+"").val();
        if(sCheck=='T'){
            bOpcjeDodatkowe = 'true';
        }
        i++;
    });

   aRodzajeNames = Array("Druk bezpośredni - 1 kolor","Druk bezpośredni 2-6 kolorów","Kalkomania - nadruk z 1 strony","Kalkomania - nadruk z dwóch stron","Kalkomania - nadruk na całej powierzchni");
   $("select#kubekRodzajNadruku").html("<option value=''>Ładowanie - proszę czekać</option>");
   $.ajax({
		type: "GET",
		url: baseHref+"index/calculators/getrodzajnardukukubki",
		data: {typeobj: type,kubek_ilosc: $("input#kubekIlosc").val(), kubek_ilosc_kolorow: $("select#kubekIloscKolorow").val(),kubek_opcje_dodatkowe: bOpcjeDodatkowe,kubek_id:$("select#kubekModel").val()},
		dataType: 'json',
                asynchronous: 'false',
		success: function(msg){
                    var options = '';
                    for (var i = 0; i < msg.length; i++) {
                        options += '<option value="' + msg[i].optionValue + '">' + aRodzajeNames[msg[i].optionDisplay] + '</option>';
                    }
                    $("select#kubekRodzajNadruku").html(options);
                    $('select#kubekRodzajNadruku').val(lastCheckedVal);
                     nadrukInfo();
		}
	});

}

function nadrukInfo(){
   var checkRodzajId = $("select#kubekRodzajNadruku").val();
    var infoText = '';
    if(checkRodzajId=='0' || checkRodzajId=='1'){
        infoText = '<span class="rodzajName">Druk bezpośredni</span>';
        infoText +='Jest to druk maszynowy  wykonywany bezpośrednio na produkcie, w pełnych kolorach (max. 6).';
    }
    else{
        infoText = '<span class="rodzajName">Nadruk kalką ceramiczną</span>';
        infoText +='Jest to druk na kalce ceramicznej, która po zadrukowaniu jest nanoszona ręcznie na kubek. Istnieje możliwość drukowania projektów w postaci zdjęcia. ';
    }
    if(checkRodzajId!=''){
        $("div#calcDescriptionBot").html(infoText);
    }

}

function hideCalc(){
    $('div#resultsNoCalcInfo').show();
    $('div#resultAmmounts').hide();
    $('span#targetPrice').html('');
    $('span#targetSupply').html('');
    $('a#goToForm').hide();
}

function getImage(type,idObj){
         $.ajax({
	   type: "GET",
	   url: baseHref+"index/calculators/getcalcimage/",
	   data: ({typeobj: type, idobj: idObj}),
	   success: function(data){
                $('div#imgPreview').html(data);
            }
	 });
}

function getPrice(type,idObj){
        var sOptionsList = '';
        var i = 0;
        $("div#mainOptions > div.optionItemContainer").each(function(){
            sCheck = $("div#mainOptions > div.optionItemContainer > input:checkbox:checked#options_"+i).val();
            if(sCheck=='T'){
                sOptionsList += $("#mainOptions > div.optionItemContainer > input:checkbox:checked#options_"+i+"").attr('name')+'-';
            }
            i++;

    });
         $.ajax({
	   type: "GET",
	   url: baseHref+"index/calculators/getprice"+type+"/",
           asynchronous: 'false',
	   data: ({typeobj: type,idobj: idObj,ilosc_sztuk: $("input#kubekIlosc").val(),kubek_opcje_dodatkowe: sOptionsList,kubek_ilosc_paskow: $("select#iloscPaskow").val(),kubek_rodzaj_nadruku: $("select#kubekRodzajNadruku").val(),kubek_ilosc_kolorow: $("select#kubekIloscKolorow").val(),kubek_termin_realizacji: $("select#kubekTerminRealizacji").val()}),
	   success: function(data){
               $("span#targetPrice").html(data.replace(/"/gi, ""));
               $('div#resultsNoCalcInfo').hide();
               $('div#resultAmmounts').show();
               $('a#goToForm').show();
            }
	 });
}

function getSupply(type,idObj){

    $.ajax({
       type: "GET",
       url: baseHref+"index/calculators/getsupply"+type+"/",
       asynchronous: 'false',
       data: ({typeobj: type,idobj: idObj,ilosc_sztuk: $("input#kubekIlosc").val()}),
       success: function(data){
            $("span#targetSupply").html(data.replace(/"/gi, ""));
            $('div#resultsNoCalcInfo').hide();
            $('div#resultAmmounts').show();
            $('a#goToForm').show();
        }
     });
}

function scrollWin(target){
    $('html, body').animate({scrollTop: $("#"+target).offset().top}, 500);
}
