﻿Type.registerNamespace("Res.Commerce.Web.Composants.Commandes.V01");
Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier = function (element) {
    Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.initializeBase(this, [element]);
    this._urlPanier = null;
};
Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.prototype = {
    initialize: function () {
        Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.callBaseMethod(this, "initialize");

        $("#memo_panier_rapide").bind("mouseenter", Function.createDelegate(this, this.showApercuPanier));
        $("#memo_panier_rapide").bind("mouseleave", Function.createDelegate(this, this.hideApercuPanier));
        if ($(".memo_mp_produits").children("div").children().length != 0) {
            $('.memo_mp_produit').hover(function () {
                return $(this).addClass('hover');
            }, function () {
                return $(this).removeClass('hover');
            });
            $('.memo_mp_produits').scrollable({
                vertical: true,
                mousewheel: true
            });
        }
        $('#memo_fp_acceder_panier').click(Function.createDelegate(this, this.redirectPanier));
    },
    dispose: function () {

        if ($(".memo_mp_produits").children("div").children().length != 0) {
            $("#memo_panier_rapide").die('mouseenter mouseleave');
            $('.memo_mp_produit').die('hover');
            $('#memo_fp_acceder_panier').die('click');
        }
        Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.callBaseMethod(this, "dispose");
    },
    AddHtml: function (result) {
        var html = result.Html;
        var script = result.Script;
        var element = $('#' + this._element.id);
        element.empty();
        element.append(html);

        if (script != null) {
            // On dispose les évènements actuel
            this.dispose();
            // On rebranche les nouveaux
            eval(script);
        }
    },
    redirectPanier: function () {
        window.location.replace(this._urlPanier);

    },
    showApercuPanier: function () {
        if ($(".memo_mp_produits").children("div").children().length != 0) {
            $("#memo_mini_panier").show();
        }
    },
    hideApercuPanier: function () {
        if ($(".memo_mp_produits").children("div").children().length != 0) {
            $("#memo_mini_panier").hide();
        }
    },
    dispose: function () {
        Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.callBaseMethod(this, "dispose");
    },
    saveClientState: function () {
        return null;
    },
    get_UrlPanier: function () {
        return this._urlPanier;
    },
    set_UrlPanier: function (value) {
        this._urlPanier = value;
    }

};
Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier.registerClass("Res.Commerce.Web.Composants.Commandes.V01.ApercuPanier", Res.Commerce.Web.Composants.ScriptControlBase);
if (typeof (Sys) !== "undefined") Sys.Application.notifyScriptLoaded(); 
