/**

 */
(function ($) {

    jQuery.fn.showModal = function (options) {
        var elt = this.get(0);
        if (!elt)
            return null;

        elt.boxoptions = options;
        elt.mask = document.createElement('div');
        elt.mask.setAttribute('class', 'modalmask');
        document.body.appendChild(elt.mask);
        var m = $(elt.mask);
    
        var win = $(window);
    
        var winH = win.height();
        var winW = win.width();
        var maskHeight = $(document).height();
        var maskWidth = winW;

        m.css({'width':maskWidth,'height':maskHeight});
        m.show();

        this.css('top',  winH/2 - this.outerHeight()/2 + win.scrollTop());
        this.css('left', winW/2 - this.outerWidth()/2 + win.scrollLeft());
 
        this.show(); 

        return this;
    };

    jQuery.fn.hideModal = function () {
        var elt = this.get(0);
        if (elt.mask) {
            $(elt.mask).hide();
            document.body.removeChild(elt.mask);
            elt.mask = null;
        }
        if (elt.boxoptions)
            elt.boxoptions = null;
        this.hide();
        return this;
    };

    jQuery.fn.closeConfirmModal = function () {
        var elt = this.get(0);
        if (elt.boxoptions && elt.boxoptions.onconfirm)
            elt.boxoptions.onconfirm(elt.boxoptions);
        this.hideModal();
        return this;
    };



}(jQuery));
