﻿
//参数一：蒙板标题
//参数二：蒙板宽度（即iframe宽度Div自适应）
//参数三：蒙板高度（即iframe高度Div自适应）
//参数四：是否需要滤镜层
//参数五：iframe需要载入的页面

function CreatDialog(Label, width, height, CloseBack, Page) {
    if ($("#PopDiv").length == 0) {
        if (CloseBack == true) {
            $("<div id=\"bodyBack\" style=\"position:absolute;background-color:#000000;left:0px;top:0px;filter:alpha(opacity=40);-moz-opacity:0.4;opacity: 0.4;width:100%;z-index: 100;\">&nbsp;</div>").appendTo("body");
            var hig = getBrowserHeight() + "px";
            $('#bodyBack').css("height", hig);
        }

        $("<div class=\"tab_mb\" id=\"PopDiv\" style=\"position:absolute;z-index: 200;;left:100px;top:100px;width: " + width + "px;\"><div class=\"nr bh\"><div class=\"bt\" id=\"PopTitle\"><div class=\"a\"  id=\"PopLabel\">" + Label + "</div><div class=\"b\"><a href=\"javascript:CloseDialog(" + CloseBack + ",false);\"  onmouseover=\"ChangePopColseImage(0);\" onmouseout=\"ChangePopColseImage(1);\"><img src=\"/images/gb_01.gif\" width=\"33\" height=\"18\" id=\"PopColseImage\"/></a></div></div><div class=\"box\" id=\"PopIframe\" style=\"width: " + width + "px; height: " + height + "px;\" ><iframe frameborder=\"no\" scrolling=\"no\" src=\"" + Page + "\"  style=\"width: " + width + "px; height: " + height + "px;\"  id=\"blogRightSettingFrame\"></iframe></div></div></div>").appendTo("body");

        MovePopDiv(); //加载可移动方法
        Swao.utils.DivMove.centerPopup("PopDiv"); //加载蒙板订位传入需要订位的层的id

    }


}

//关闭蒙板
//参数一：否需要关闭遮盖层 
//参数二：否需要创建等待函数
function CloseDialog(CloseBack, ShowLoading) {
    if (CloseBack == true) {
        $("#bodyBack").html("");
        $("#PopDiv").html("");
        $("#bodyBack").remove();
        $("#PopDiv").remove();
        if (ShowLoading != false) {
            CreatShowLoading();
        }

    }
    else {
        $("#PopDiv").html("");
        $("#PopDiv").remove();
        if (ShowLoading != false) {
            CreatShowLoading();
        }
    }

}

//蒙板关闭X图的变化
function ChangePopColseImage(type) {
    if (type == 0) {
        $("#PopColseImage").attr("src", "/images/gb_02.gif");
    }
    else {
        $("#PopColseImage").attr("src", "/images/gb_01.gif");
    }
}

//PopDiv移动方法调用
function MovePopDiv() {
    $("#PopDiv").Drags({ // move window
        zIndex: 200,
        handle: '#PopTitle',
        callback: {
            onMove: function (e) {
                //$('#droptracer').html('Div Position:(Left:' + e.pageX + ' ,Top:' + e.pageY + ')');
            },
            onDrop: function () {
                //$('#droptracer').html('Div has been dopped');
            }
        }
    });
}

/*
===============消息插件============
===========!需要jquary支持=========
//为防止页面混乱，一个页面同时只能打开一个消息，如果前一个消息未关闭，则自动关闭上一个消息
//messageStr:消息正文，支持html
//typeStr:消息类型包括 error,info,loading
//titileAble:是否显示title，显示则可以拖动，可以手动关闭
//closeTime:自动关闭时间，0表示不自动关闭
//intTop,intLeft:绝对订位的x,y,都为0或不设置则居中,已logo位置为参考点
//callbackFn:TODO：
*/
var xMsgBox = {
    mBoxIds: [],

    showMsgbox: function (messageStr, typeStr, titileAble, closeTime, intTop, intLeft, width, callbackFn) {
        if (this.mBoxIds.length > 0) {
            this.removeMsgBox();
        }
        var boxElm = $('<div class="tab_tsxx" style=" position:absolute;z-index:1000;"></div>').attr("id", "mainMsgBox" + this.mBoxIds.length);

        if (isNaN(width) || width == 0) {
            $(boxElm).css("width", "250px");
        }
        else {
            $(boxElm).css("width", "500px");
        }
        var contenElm = $('<div></div>');

        var einfo = this.getTypeInfo(typeStr);
        contenElm.append(this.titleInstance(einfo.title, titileAble));

        contenElm.append("<div class=\"nr bh clear\"><div class=\"box bh\"> <div class=\"xx " + einfo.style + "\"> " + messageStr + " </div></div></div>");


        boxElm.append(contenElm);
        boxElm.append("<div class=\"lb1 bh\"><div class=\"d\"></div><div class=\"e\"></div></div>");
        this.mBoxIds[0] = boxElm.attr("id");
        $("body").append(boxElm);

        if ((intTop == 0 && intLeft == 0) || isNaN(intTop) || isNaN(intLeft)) {
            //都为0则居中
            $(boxElm).scrollCenter();
        }
        else {
            var OffsetStr1 = $("#101bblogo").offset();
            left1 = OffsetStr1.left;
            top1 = OffsetStr1.top;


            $(boxElm).css({
                left: left1 + intTop + "px",
                top: top1 + intLeft + "px"
            });
        }
        $(boxElm).Drags({
            zIndex: 300,
            handle: '#titleMsgBox',
            callback: {
                onMove: function (e) {
                },
                onDrop: function () {
                    //$(boxElm).scrollCenter();
                }
            }
        });

        //checkTime
        if (!isNaN(closeTime)) {
            if (closeTime > 0) {
                clearTimeout(GlobalHuDou.MsgHistoryTime);
                GlobalHuDou.MsgHistoryTime = setTimeout(this.closeMsgbox, closeTime);
            }
        }

    },

    getTypeInfo: function (typeStr) {
        switch (typeStr) {
            case "error":
                return { title: "错误信息", style: "tsbg_jg" };
                break;
            case "info":
                return { title: "消息信息", style: "tsbg_dp" };
                break;
            case "loading":
                return { title: "等待信息", style: "tsbg_dd" };
                break;
        }
    },

    titleInstance: function (titleStr, titileAble) {
        var titleElm = $('<div></div>').attr("id", "titleMsgBox").addClass('lb bh');
        titleElm.append("<div class=\"a\"></div>");
        titleElm.append("<div class=\"b\">" + titleStr + "</div>");

        var closeDiv1 = $('<div class="c"></div>');
        var closeDiv2 = $('<div class="gb"></div>');
        if (titileAble) {
            var img = $('<a href="#"><img src="/images/tb_13.gif" title="关闭" alt="[X]" width="12" height="12" /></a>');
            img.bind("mousedown", this.closeMsgbox);
            closeDiv2.append(img);
        }
        closeDiv1.append(closeDiv2);
        titleElm.append(closeDiv1);

        return titleElm;
    },

    closeMsgbox: function () {
        clearTimeout(GlobalHuDou.MsgHistoryTime);
        $("#" + xMsgBox.mBoxIds[0]).remove();
        xMsgBox.mBoxIds.splice(0, 1);
        // $("#" + xMsgBox.mBoxIds[0]).slideUp("fase",this.removeMsgBox);

    },

    removeMsgBox: function () {
        $("#" + xMsgBox.mBoxIds[0]).remove();
        xMsgBox.mBoxIds.splice(0, 1);
    }
}


/*
===========!需要jquary支持=========
简单loading效果
closeTime表示关闭时间 =0不关闭
objname是参照对象
intop,intleft是相对参照物的位置
*/
var xMsgLoad = {
    mLoadIds: [],

    showMsgLoad: function (closeTime, objname, intTop, intLeft) {
        if (this.mLoadIds.length > 0) {
            this.removeMsgLoad();
        }
        var boxElm = $('<div class="top_20"></div>').attr("id", "mainMsgLoad" + this.mLoadIds.length);

        var img = $('<img src="images/load_03.gif" title="loading" alt="loading" />');

        boxElm.append(img);
        boxElm.css({ "padding": "10px 30px", "background-color": "#ffffff", "position": "absolute", "float": "left" });

        this.mLoadIds[0] = boxElm.attr("id");
        $("body").append(boxElm);

        if ((intTop == 0 && intLeft == 0) || isNaN(intTop) || isNaN(intLeft)) {
            //都为0则居中
            $(boxElm).scrollCenter();
        }
        else {
            var OffsetStr1 = $("#" + objname).offset();
            left1 = OffsetStr1.left;
            top1 = OffsetStr1.top;


            $(boxElm).css({
                left: left1 + intTop + "px",
                top: top1 + intLeft + "px"
            });
        }

        if (objname == 'activeTab') {
            $("#eventSet").height(50);
        }

        //checkTime
        if (!isNaN(closeTime)) {
            if (closeTime > 0) {
                clearTimeout(GlobalHuDou.MsgHistoryTime);
                GlobalHuDou.MsgHistoryTime = setTimeout(this.closeMsgLoad, closeTime);
            }
        }

    },



    closeMsgLoad: function () {
        clearTimeout(GlobalHuDou.MsgHistoryTime);
        $("#eventSet").height('auto');
        $("#" + xMsgLoad.mLoadIds[0]).fadeOut("fase", this.removeMsgLoad);

    },

    removeMsgLoad: function () {
        $("#" + xMsgLoad.mLoadIds[0]).remove();
        xMsgLoad.mLoadIds.splice(0, 1);
    }
}
 
