$(document).ready(function() {



    // lite sökfunktionalitet


    $("input#soktext").focus(function() {
        log.debug("Soktext focus: ");
        if ($(this).attr("value") == $(this).attr("title")) {
            $(this).attr("value", "");
            $(this).val = "";
        }
    });

    $("input#soktext").blur(function() {
        log.debug("Soktext blur: " + $(this).attr("title"));
        if ($(this).attr("value") == "") {
            $(this).attr("value", $(this).attr("title"));
            $(this).val = $(this).attr("title");

        }
    });

    $("#sokskicka").click(function() {
        $("#sokresultatdiv").html("<p>Söker...</p>").slideDown();
        var soktext = $("#soktext").val();

        // $("#sokresultatdiv").load("sokfunk.php", { soktext: soktext } ).slideDown();
        $("#sokresultatdiv").load("sokfunk.php", { soktext: soktext }, function() {
            $("div.soktraff:even").addClass("evenbg");
            $("div#sokresultatdiv").css("border", "1px solid #eee");
        });

        return false;

    });


    $("a.preview").click(function() {
        var previewartid = $(this).attr('rel');
        alert(previewartid);
        $("div[rel='" + previewartid + "']").toggle();
    });




    // kolla ifall det finns några fula area-konturlinjer som ska åtgärdas
    $("area").each(function() {
        $(this).css("border", "none");
    });


    // second hand filter
    // nytt innehåll till andra select utgångspunkt i region
    $("#sh_filter_main").change(function() {

        // kolla vilket värde som valts i första listan
        var cursupertagid = $("#sh_filter_main").val();

        // hämta hem de aktuella underalternativen ifall man valt en ny regionsomfattning
        var action = "sh_second";
        var tagtyp = "sh";
        $("#sh_filter_second").load("ajaxfunc.php", { action: action, supertagid: cursupertagid }, function(thetext) {

            // $("#sh_filter_second option:eq(0)").attr("selected", "selected");

        });

        sh_filterupdate(tagtyp);

    });



    // projekt filter
    // nytt innehåll till andra select utgångspunkt i världsdel
    $("#filter_main").change(function() {

        // kolla vilket värde som valts i första listan
        var cursupertagid = $("#filter_main").val();
        if (cursupertagid != 0) {
            // hämta hem de aktuella underalternativen ifall man valt en ny världsdel
            var action = "geo_second";
            var tagtyp = "geo";
            $("#filter_second").load("ajaxfunc.php", { action: action, supertagid: cursupertagid }, function(thetext) {

                $("#filter_second option:eq(0)").attr("selected", "selected");
                filterupdate(tagtyp);
            });
        }
        else {
            // ta bort alla andra alternativ förutom nr 0
            $("#filter_second option:eq(0)").attr("selected", "selected");
            $("#filter_second option:gt(0)").remove();
            var tagtyp = "geo";
            filterupdate(tagtyp);

        }

    });


    $("#filter_second").change(function() {
        filterupdate("geo");
    });

    $("#filter_third").change(function() {
        filterupdate("geo");
    });



    function filterupdate(vilken_tagtyp) {
        log.debug("Filterupdate...");

        var t1 = jQuery.trim($("#filter_main option:selected").text());
        var t2 = $("#filter_second option:selected").text();
        var t3 = $("#filter_third").val();

        $("#art_block").load("ajaxfunc.php", { action: "tagart", t1: t1, t2: t2, t3: t3, tagtyp: vilken_tagtyp }, function(text) {
            log.debug("" + t1 + "|" + t2 + "|" + t3 + "|" + vilken_tagtyp);


            ajaxlinksinit();
            pagination_init();
            // definiera att den första länken inom pagineringen ska visas
            $(".sr_sidlank:eq(0)").trigger("click");
        });

    }


    $("#sh_filter_second").change(function() {
        sh_filterupdate("sh");
    });

    $("#sh_filter_third").change(function() {
        sh_filterupdate("sh");
    });


    function sh_filterupdate(vilken_tagtyp) {

        var t1 = $("#sh_filter_main option:selected").text();
        // var t2 = $("#sh_filter_second option:selected").text();
        var t2 = "";
        // var t3 = $("#sh_filter_third").val();
        var t3 = "";

        $("#art_block").load("ajaxfunc.php", { action: "tagart", t1: t1, t2: t2, t3: t3, tagtyp: vilken_tagtyp }, function(text) {
            log.debug(t1 + " " + t2 + " " + t3 + " " + vilken_tagtyp);

            ajaxlinksinit();
            // pagination_init();
            // definiera att den första länken inom pagineringen ska visas
            $(".sr_sidlank:eq(0)").trigger("click");
        });

    }


    $("#fablink").hover(function() {
        $("#shfab").show();
        $("#fab").show();
    });

    $("#fablink").click(function() {
        $("#shfab").slideToggle();
        $("#fab").slideToggle();
    });



    $("#fab").hover(function() {
        $("#art_block").show();
    });

    function hide_fab() {
        // $("#art_block").slideUp();

        $("#shfab").slideUp();
        $("#fab").slideUp();
        $("#fablink").slideDown();
    }

    function show_fab() {
        // $("#art_block").slideDown();
        $("#shfab").slideDown();
        $("#fab").slideDown();
        $("#fablink").slideUp();

    }

    // visa / dölj filterfunltioner
    $("#fabtoggle").click(function() {
        $("#art_block").slideToggle();
    });




    function ajaxlinksinit() {

        $("a.ajaxlink").click(function(event) {

            // $(this).css("color", "orange");

            var artid = $(this).attr("rel");

            $("div#ajaxcontent").load("ajaxfunc.php", { action: "ajaxart", artid: artid }, function(text) {

                // ta bort den artikelrubrik som sattes vid sidans startade visning
                $("#artikelrubrik").remove();
                // dölj rutan med sökrsultat
                hide_fab();

            });


            event.preventDefault();
            event.stopPropagation();

            return false;

        });

    }







    pagination_init();

    // skapa så många länkar som det behövs för att visa 
    // ett urval med offset som antal i varje visning
    function pagination_init() {

        // kolla hur många span.sr som finns i eve sökresultat
        var sr_hurmanga = $(".sr").size();
        var sr_offset = 10;
        var sr_start = 0;



        // kolla hur många uppdelade sidor som behövs
        var sr_antalsidor = sr_hurmanga / sr_offset;
        var sr_lankblock = "";

        for (i = 0; i < sr_antalsidor; i++) {
            sr_lankblock += "&nbsp;<a href='#' class='sr_sidlank' rel='" + i + "'  title='" + i + "' > " + (i + 1) + " </a>&nbsp;";
        }

        log.debug("Pag: " + sr_antalsidor + " ");

        if (sr_antalsidor > 1) {
            $("#pagination").html(" : <br /><br />" + sr_lankblock);
        }

        // definiera beteendet för länkarna a.sidlank
        $("a.sr_sidlank").click(function() {

            var sr_curstart = parseInt($(this).attr("rel")) * parseInt(sr_offset) + -1;
            var sr_curend = parseInt(sr_curstart) + parseInt(sr_offset) + 1;
            $(".sr").hide();
            $(".sr:lt(" + sr_curend + "):gt(" + sr_curstart + ")").fadeIn();
            log.debug("sr_curstart: " + sr_curstart + " sr_curend: " + sr_curstart);
        });

    }

    // lite kartfunktionalitet för SH

    $("area").click(function() {
        $(this).blur();
        // $("#infotext").text($(this).attr("rel"));
        // kolla vilken rel som noterades genom att logga den
        log.debug($(this).attr("rel"));
        var valdregion = $(this).attr("rel");
        // kolla ifall vi kan markera det option som har detta value
        // $("#regionslista").selectOptions(valdregion);
        // $("#sh_filter_main").selectOptions(valdregion);
        $("#sh_filter_main option").removeAttr("selected");
        $("#sh_filter_main option[@value='" + valdregion + "']").attr("selected", "selected");
        sh_filterupdate("sh");
    });



    // sätt rätt färg på textfält
    $("input:text").addClass("white");


    // 2008-11-10 12:00:13 skapa tabbar i den händelse det är en beställningsfunktion
    $("ul.tabify").tabify();


    // kolla vilken betalmetd som valts - visa fakturaadressfält ifall
    // faktura valt som betalmetod.
    $("#betalmetod_faktura").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("faktura");
        log.debug("Ok, du valde: " + $("#method").val());

        $("div#foretag_info").removeClass("hiddenstuff");
        $("div#foretag_info_final").removeClass("hiddenstuff");
        $("table#foretag_info_tabell input.sometimesreq").addClass("req");
        init_req_input();

    });



    $(".nocompinfo").click(function() {
        $("div#foretag_info").addClass("hiddenstuff");
        $("div#foretag_info_final").addClass("hiddenstuff");
        $("table#foretag_info_tabell input.sometiesreq").removeClass("req");
    });

    $("#betalmetod_avi").click(function() {
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });

    $("#betalmetod_kontokort").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("cc.cekab");
        $("#pageSet").val("kontokort");
        log.debug("Nu valde du kk");
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });


    $("#betalmetod_direkt_fsb").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("direct.fsb");
        $("#pageSet").val("direkt");
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });


    $("#betalmetod_direkt_seb").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("direct.sebp");
        $("#pageSet").val("direkt");
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });

    $("#betalmetod_direkt_nb").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("direct.nb");
        $("#pageSet").val("direkt");
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });


    $("#betalmetod_direkt_shb").click(function() {
        // sätt företagsfält som synliga
        $("#method").val("direct.shb");
        $("#pageSet").val("direkt");
        $("table#foretag_info_tabell input.sometimesreq").removeClass("req");
        init_req_input();
    });



    $("#personinfo_start").click(function() {
        kollainfo();
    });


    // submitfunktioner för färdigt formulär
    $("#nollfelskicka").click(function() {

        // dags att skicka formulärets info
        $("#shop_form").submit();

    });



    // datatrigger för att göra sammanställningen i shopen
    $("#datatrigger").click(function() {


        // kolla först om det finns en markerad 
        log.info("Pageset: " + $("#pageSet").val());
        log.info("Method: " + $("#method").val());
        //log.warn("Vi testar: " + $("input:radio[name='gavo_pris']:checked").val());


        if ($("input[name='gavo_pris']:checked").val() == -1) {
            // valfritt belopp är det som ska läsas in som final_gavo_pris
            $("#final_gavo_pris").val($("#gavo_pris_valfritt").val());
            log.debug("Valfritt belopp : " + $("#final_gavo_pris").val());
        }
        else {
            $("#final_gavo_pris").val($("input[name='gavo_pris']:checked").val());
        }

        var belopp = parseFloat($("#final_gavo_pris").val()) * 100;
        // log.warn("Beloppet: " + belopp);


        // skapa en sammanställning genom att plocka ihop
        // artnr : beskrivning : antal : pris i ören :

        var datastring = $("#gavo_id").val() + ":" + $("#gavo_rubrik").text() + ":";
        datastring += $("#gavo_antal").val() + ":" + belopp + ":";


        // 2008-12-11 14:25:39
        // gör ytterligare en koll på om det finns ett kundval av utskrift från EHJ av gåvobevis
        if ($("input[name='gavobevis_service']:checked").val() == 1) {
            log.warn("Kunden har valt service utskrift av EHJ");
            // lägg till lite info till datastring för de extra 20 kr
            //datastring += "123:Hantering Gåvobevis:1:2000:";
        }
        else {
            log.info("Kunden skriver själv ut gb...");
        }

        $("input#data").val(datastring);

        log.info("Data: " + $("input#data").val());

        // skapa en sammanställning till det som ska tas ställning till

        // gör först en koll att de aktuella fälten som är tvingande faktiskt innehåller
        // några uppgifter så attdet går att skicka beställningen

        var felkod = "";

        var okinfo = kollainfo();
        var okmetod = kollametod();
        var okbelopp = kollabelopp();
        var okantal = kollaantal();

        var conftext = "";

        if (okinfo == 1) {
            conftext = "<h3>Sammanställning</h3>";
            // 2008-11-28 15:33:57
            // conftext += "<p> Du har valt att ge <strong>" + $("#final_gavo_pris").val() + " kr </strong><br />\n";
            if ($("#method").val() == "inbetalningsavi") {
                conftext += "<p>Här visas en sammanställning av din beställning. Kontrollera att uppgifterna stämmer."
                conftext += "För att ändra en uppgift, gå tillbaka till respektive flik och justera."
                conftext += "<br/><br/>Beställningen slutförs när du klickar på Beställ. </p>\n"
            }
            else {
                conftext += "<p>Här visas en sammanställning av din beställning. Kontrollera att uppgifterna stämmer."
                conftext += "För att ändra en uppgift, gå tillbaka till respektive flik och justera."
                conftext += "<br/><br/>Klicka på Gå vidare för att genomföra din betalning.</p>\n"
            }
            conftext += "<h3>Ändamål</h3><p>Du har valt att ge <strong>" + $("#gavo_antal").val() * $("#final_gavo_pris").val() + " kr </strong><br />\n";
            conftext += "till ändamål: <strong>" + $("#gavo_rubrik").text() + "</strong></p>\n";

            // 2008-12-11 14:42:56
            // gör ytterligare en koll på om det finns ett kundval av utskrift från EHJ av gåvobevis
            if ($("input[name='gavobevis_service']:checked").val() == 1) {
                //conftext += "<p>Hantering Gåvobevis/Minnesgåvogram: <strong>20 kr</strong></p>\n";
            }

            // NYTT 080209
            // fortsätt med de angivna uppgifterna om mottagare
            if ($("#Rec_FirstName").val() != null) {
                conftext += "\n<h3>Mottagare</h3><p>";

                conftext += "\n<br />" + $("#Rec_FirstName").val() + " " + $("#Rec_LastName").val();
                conftext += "\n<br />" + $("#Rec_Adress").val();
                conftext += "\n<br />" + $("#Rec_Byra").val();
                conftext += "\n<br />" + $("#Rec_Postal").val() + " " + $("#Rec_City").val();
                conftext += "\n<br />" + $("#Rec_Country").val();
                conftext += "\n<br />";
            }

            // fortsätt med de angivna uppgifterna från kunden
            conftext += "\n<h3>Dina uppgifter</h3><p>\n";

            conftext += "\n<br />" + $("#billingFirstName").val() + " " + $("#billingLastName").val();
            conftext += "\n<br />" + $("#billingAddress").val();
            conftext += "\n<br />" + $("#billingZipCode").val() + " " + $("#billingCity").val();
            conftext += "\n<br />" + $("#billingCountry").val();
            conftext += "\n<br />" + $("#eMail").val();
            conftext += "\n<br />";

            if ($("#method").val() == "faktura") {
                conftext += "\n<span id='foretag_info_final'>";

                conftext += "\n<br />" + $("#foretag_namn").val();
                conftext += "\n<br />" + $("#foretag_adress").val();
                conftext += "\n<br />" + $("#foretag_postnr").val() + " " + $("#foretag_ort").val();
                conftext += "\n<br />" + $("#billingCountry").val();

                conftext += "\n</span>";
            }

            conftext += "\n</p>\n";

        }
        else {
            conftext += "<h3 class='obs' >Saknar information om beställare (Flik 3)</h3>";
            conftext += "<p> För att kunna skicka din gåva behöver du komplettera information i föregående steg</p>";
            felkod += "\n Saknar kundinfo ";
        }

        // kolla även att en betalmetod valts
        if (okmetod == "0") {
            conftext += "\n<h3 class='obs' >Saknar betalmetod (Flik 4)</h3>\n";
            conftext += "\n<p> För att kunna skicka din gåva behöver du välja en betalningsmetod.</p>\n";

            felkod += "\n Saknar betalningsmetod";
        }
        else {
            var metodkod = $("input[name='betalmetod']:checked").val();
            $("#method").val(metodkod);
            var metodklartext = $("input[name='betalmetod']:checked").attr("rel");

            conftext += "<h3>Betalmetod</h3><p>\n";
            conftext += metodklartext + "</p>\n";
        }


        if (okbelopp != 1) {
            conftext += "\n<h3 class='obs' >Saknar belopp (Flik 1)</h3>\n";
            conftext += "\n<p> För att kunna skicka din gåva behöver du ange ett belopp.</p>\n";
            felkod += "\n Saknar belopp";
        }

        if (okantal < 1) {
            conftext += "\n<h3 class='obs' >Saknar antal i beställning (Flik 1)</h3>\n";
            conftext += "\n<p> För att kunna göra en beställning behöver du ange antal.</p>\n";
            felkod += "\n Saknar antal";
        }


        
            if (felkod == "") {
                if ($("input[name='gavobevis_service']:checked").val() == 0) {
                    conftext += "<h3>Gåvobevis/Minnesgåvogram</h3><p>Du har valt att själva skriva ut och förmedla ditt Gåvobevis/Minnesgåvogram till mottagaren för din hälsning. <a href='";
                    conftext += "gavobevis_pdfgen.php?gavo_mottagare=" + $("#gavo_mottagare").val() + "&gavo_givare=" + $("#gavo_givare").val() + "&gavo_halsning=" + jQuery.trim($("#gavo_halsning").val()) + "&gavoid=" + $("#gavoid").val() + "&dt=" + Date();
                    conftext += "' target='_blank' > Skriv ut <img src='bilder/printButton.png' border='0' /></a></p>\n\n";
                }
                else if ($("input[name='gavobevis_service']:checked").val() == 1) {
                    conftext += "<h3>Gåvobevis/Minnesgåvogram</h3><p>Du har valt att Erikshjälpen skriver ut och sänder ditt Gåvobevis/Minnesgåvogram till mottagaren av din hälsning."
                    conftext += "<a href='";
                    conftext += "gavobevis_pdfgen.php?gavo_mottagare=" + $("#gavo_mottagare").val() + "&gavo_givare=" + $("#gavo_givare").val() + "&gavo_halsning=" + jQuery.trim($("#gavo_halsning").val()) + "&gavoid=" + $("#gavoid").val() + "&dt=" + Date();
                    conftext += "' target='_blank' > Förhandsgranska <img src='bilder/Zoom.png' border='0' /></a></p>\n\n";
                }
            

            // visa en skickaknapp
            //if( $("#method").val() == "inbetalningsavi" )
            //{
            conftext += "\n<p><input type='submit' value='Beställ' id='nollfelskicka' /></p>\n";
            //}
            //else
            //{
            //conftext += "\n<p><input type='submit' value='Gå vidare' id='nollfelskicka' /></p>\n";
            //}
        }

        conftext += "\n<h3 class='obs'>Har du problem med beställningen?</h3> <p>Kontakta oss så hjälper vi dig. E-post: <a href='mailto:info@erikshjalpen.se'>info@erikshjalpen.se</a></p><p>Eller ring oss på 0383-46 74 50</p>\n";

        $("#steg_bekrafta").html(conftext);



    });

    function init_req_input() {
        $("input.req").blur(function() {
            kollainfo();
        });
    }

    init_req_input();


    function kollabelopp() {
        var resultat = 0;
        if ($("#final_gavo_pris").val() > 0) {
            resultat = 1;
            $("#gavo_pris_valfritt").css("background", "#fff");
        }
        else {
            $("#gavo_pris_valfritt").css("background", "#ddd");
        }

        return resultat;
    }


    function kollametod() {
        var resultat = "0";
        resultat += $("input[name='betalmetod']:checked").val();

        return resultat;
    }


    function kollainfo() {
        // visa alla fält med vit bg först
        $("input:text").css("background", "#fff");

        // kolla tvingande fält
        var resultat = 1;

        $("input.req").each(function() {



            // markera fält som inte innehåller data med bgfärg
            if ($(this).val() == "") {
                $(this).css("background", "#ddd");
                resultat = 0;
            }
            else {
                $(this).css("background", "#fff");
            }


        });

        return resultat;

    }


    function kollaantal() {
        var resultat = $("#gavo_antal").val();

        if (resultat > 0) {
            // helt ok om man beställt fler än noll produkter av nåt
        }
        else {
            resultat = 0;
        }

        return resultat;

    }


    // end doc ready standard.js
});


