/**
 * Javascript  bind-buttons
 *
 * @copyright   2010 SimonRichards
 * @category    Laminex CMS
 * @package     Formica
 * @version     $Id$
 */

/**
 * Bind the button on click with live event
 */
function bindButtons() {
    $(".submit").live("click", function() {
        var form = $(this).closest("form");
        document.getElementById(form.attr("id")).submit();
    });

    $(".view-all").live("click", function() {
        var form = $(this).closest("form");
        form.find("input[name=view-all-flag]").val("1");

        document.getElementById(form.attr("id")).submit();
    });

    $(".add-to-fav").live("click", function() {
        $("#cart-empty").hide();

        var cookieSwatch  = $.cookie("swatches");
        var cookieBrochure  = $.cookie("brochures");
        var totalSwatch = 0;
        if (cookieSwatch != null && cookieSwatch != "" && cookieSwatch != undefined) {
            totalSwatch = cookieSwatch.split(" ").length;
        }
        var totalBrochure = 0;
        if (cookieBrochure != null && cookieBrochure != "" && cookieBrochure != undefined) {
            totalBrochure = cookieBrochure.split(" ").length;
        }
        var total = parseFloat(totalSwatch) + parseFloat(totalBrochure);
        if (total > 8) {
            alert("Reached the maximum limit for ordered content");
            return false;
        }

        var options = { path: '/', expires: 1 };
        var classes = $(this).attr("class").split(" ");
        var id      = classes[0].substr(3);

        if (cookieSwatch == null) {
            $.cookie("swatches", $.trim(id), options);
        } else {
            var current = cookieSwatch.split(" ").sort();
            var exist = false;
            var count = current.length;

            for (var i = 0; i < count; i += 1) {
                if (current[i] == id) {
                    exist = true;
                }
            }

            if (!exist) {
                $.cookie("swatches", $.trim(cookieSwatch) + " " + $.trim(id), options);
            }
        }

        $("#cart div.hidden").slideDown();
        updateCart();
    });

    $(".order-brochure-red, .order-brochure-grey").live("click", function() {
        $("#cart-empty").hide();

        var cookieSwatch  = $.cookie("swatches");
        var cookieBrochure  = $.cookie("brochures");
        var totalSwatch = 0;
        if (cookieSwatch != null && cookieSwatch != "" && cookieSwatch != undefined) {
            totalSwatch = cookieSwatch.split(" ").length;
        }
        var totalBrochure = 0;
        if (cookieBrochure != null && cookieBrochure != "" && cookieBrochure != undefined) {
            totalBrochure = cookieBrochure.split(" ").length;
        }
        var total = parseFloat(totalSwatch) + parseFloat(totalBrochure);
        if (total > 8) {
            alert("Reached the maximum limit for ordered content");
            return false;
        }

        var options = { path: '/', expires: 1 };
        var target  = $(this).attr("rel");
        var array   = target.split("-");
        var id      = array[0];
        var subId   = array[1];

        if (cookieBrochure == null) {
            $.cookie("brochures", $.trim(target), options);
        } else {
            var current = cookieBrochure.split(" ").sort();
            var exist = false;
            var count = current.length;

            for (var i = 0; i < count; i += 1) {
                if (current[i] == target) {
                    exist = true;
                }
            }

            if (!exist) {
                $.cookie("brochures", $.trim(cookieBrochure) + " " + $.trim(target), options);
            }
        }

        $("#cart div.hidden").slideDown();
        updateCart();
    });

    $(".paginate").live("click", function() {
        $("input[name=page_num]").val($(this).val());
        $("input[name=pagination]").val($(this).val());
        var form = $(this).closest("form");
        document.getElementById(form.attr("id")).submit();
    });

    $(".nextPage").live("click", function() {
        var current = parseFloat($("input[name=pagination]").val());
        var total = parseFloat($("input[name=totalPages]").val());

        if (current == total) {
            return false;
        }

        $("input[name=pagination]").val(current+1);
        var form = $(this).closest("form");
        document.getElementById(form.attr("id")).submit();
    });

    $(".previousPage").live("click", function() {
        var current = parseFloat($("input[name=pagination]").val());

        if (current == 1) {
            return false;
        }

        $("input[name=pagination]").val(current-1);
        var form = $(this).closest("form");
        document.getElementById(form.attr("id")).submit();
    });
}

