$(document).ready(function() {
    var root = $("#root").attr("href");

    $(".modal").draggable();

    $(".num").live("keydown", function(e) {
        return nums(e);
    });
    $(".num").live("keypress", function(e) {
        return nums(e);
    });
    $(".num").live("keyup", function(e) {
        return nums(e);
    });
/*
    $(".clr").bind("focus", function() {
        clr(this, dict[$(this).attr("rel")]);
    }).bind("blur", function() {
        clr(this, dict[$(this).attr("rel")]);
    });
    */
    $(".clr").live('focus',function() {
        clr(this, dict[$(this).attr("rel")]);
    }).live('blur',function() {
        clr(this, dict[$(this).attr("rel")]);
    });
    $(".login").click(function() {
        $("#logout").css("display", "none");
        $("#login").css("display", "block");
    });

    $("#cancelLogin").click(function() {
        $("#login").css("display", "none");
        $("#logout").css("display", "block");
    });

    $(".showLogin").click(function() {
        $("#divLogin").show("slow");
        $("#showLogin").css("display", "none");
        $("#hideLogin").css("display", "block");
    });

    $(".hideLogin").click(function() {
        $("#divLogin").hide("slow");
        $("#showLogin").css("display", "block");
        $("#hideLogin").css("display", "none");
    });

    $("#changePass").click(function() {
        $(".cngPass").toggle();
    });

    $("#changeNick").click(function() {
        $(".cngNick").toggle();
    });

    $(".continue").click(function() {
        $("#selected-product").fadeOut("slow");
    });

    $("table.product a.notice").live("click", function() {
        $("."+this.id).toggle();
        $(this).toggleClass("notice-remove");
    });

    $(".fav").live("click", function() {
        $(this).toggleClass("inactive");
        var s = this.id.split("_");
        var pid = s[1];
        $.get(root+"scripts/action.php", {"action":"favourite","product":pid});
    });

    $("#sort, #perpage").change(function() {
        $("#sort-form").submit();
    });

    $("#action, #new, #recommend, #sales").click(function() {
        $("#sort-form").submit();
    });

    $("#buy a.note").click(function() {
        $("#note").toggle();
    });

    $(".showhide.hide").live("click", function() {
        $("#favourites").css("display", "none");
        $(this).removeClass("hide").addClass("show").text(dict["show"]);
    });

    $(".showhide.show").live("click", function() {
        $("#favourites").css("display", "block");
        $(this).removeClass("show").addClass("hide").text(dict["hide"]);
    });
    $("#favourites .basket").blur(function() {
        addOrderBasket(this);
    });

    $(".remove-product").live("click", function() {
        var bid = this.id.split("_");
        var pid = bid[1];
        var unit = bid[2];

        $.ajax({
            url: root+"scripts/action.php",
            data: {"action":"removeFromBasket","product":pid,"unit":unit},
            beforeSend: function() {
                $("#order-basket").html('<img src="'+root+'images/loading.gif" alt="" />');
            },
            success: function() {
                getBasket();
            }
        });
    });

    $("#cat").change(function() {
        $.get(root+"scripts/action.php", {"action":"changeCategory","cid":this.value}, function(data) {
            $("#subcat").html(data);
        });
    });
    
    $("#subcat").change(function() {
        loadProducts();
    });

    $(".loadsubcat").click(function() {
        loadProducts();
    });

    $("#invoicing_address").click(function() {
        $("#address").toggle();
    });

    if(document.getElementById("invoicing_address")) {
        if($("#invoicing_address").attr("checked") == true) {
            $("#address").css("display", "block");
        } else {
            $("#address").css("display", "none");
        }
    }
    if($("#order-basket").length > 0 && $('#login').length <= 0){
        getBasket();
        loadProducts();
    }

    /*
    $('form input').keyup(function(e) {
        if(e.keyCode == 13) {
            $(this).parent().children(':submit').trigger('click');
        }
    });
    */
    $('#right').makeFloat({x: 710});
    
    function loadProducts() {
        var akce = $("#action").attr('checked') ? 1 : 0;
        var novinka = $("#new").attr('checked') ? 1 : 0;
        var doporucujeme = $("#recommend").attr('checked') ? 1 : 0;
        var vyprodej = $("#sales").attr('checked') ? 1 : 0;
        var fulltext = $("#search_orderform").val();
        $("#products").html('<img src="'+root+'images/loading.gif" alt="" /> Načítám data...');
        $.get(root+"scripts/action.php", {"action":"changeSubcategory","cid":$("#cat").val(),"subcid":$("#subcat").val(),"akce":akce,"new":novinka,"recommend":doporucujeme,"sales":vyprodej,"fulltext":fulltext}, function(data) {
            $("#products").html(data);
            /*
            $(".clr").bind("focus", function() {
                clr(this, dict[$(this).attr("rel")]);
            }).bind("blur", function() {
                clr(this, dict[$(this).attr("rel")]);
            });
            */            
            $(".basket").bind("blur", function() {
                addOrderBasket(this);
            });
        });                      
    }
                         
    function addOrderBasket(ths) {
        var parts = ths.id.split("_");
        
        var prefix = parts[0];
        var pid = parts[2];
        var amount = $("#"+prefix+"_amount_"+pid).val();
        var unit = $("#"+prefix+"_unit_"+pid).val();
        var note = $("#"+prefix+"_note_"+pid).val();

        $.ajax({
            url: root+"scripts/action.php",
            data: {"action":"addOrderBasket","product":pid,"amount":amount,"unit":unit,"note":note},
            success: function(data) {
                //alert(data);
                getBasket();
            }
        });
    }

    function getBasket() {
        $.ajax({
            url: root+"scripts/action.php",
            data: {"action":"getBasket"},
            beforeSend: function() {
                $("#order-basket").html('<img src="'+root+'images/loading.gif" alt="" />');
            },
            success: function(data) {
                if(data) {
                    $("#order-basket").html(data);
                }
            }
        });
    }

    function clr(obj, txt) {
        if(obj.value == txt) {
            obj.value = '';
        } else if(obj.value == '') {
            obj.value = txt;
        }
    }
    
});

function nums(evt) {
    var charCode = (evt.which) ? evt.which : event.keyCode;
    if ((charCode > 31 && (charCode < 48 || (charCode > 57 && charCode < 96) || charCode > 105)) && charCode != 44 && charCode != 110 && charCode != 46 && charCode == 190) {
        return false;
    }
    
    return true;
    
}


