﻿jQuery.extend({
    showLoading: function(data) {
        var messageBar = initBar();
        messageBar.css("background", "red");
        messageBar.css("color", "#ffffff");
        messageBar.html(data);
        messageBar.show();
    },
    showNotify: function(data) {
        var messageBar = initBar();
        messageBar.css("background", "#ccff66");
        messageBar.css("color", "#000000");
        messageBar.html(genMessage(data));
        messageBar.fadeIn("slow");
        messageBar.fadeOut(3000);
        parent.$("body").css("height", "100%");
    },
    showAlert: function(message, data) {
        var messageBar = initBar();
        messageBar.css("background", "red");
        messageBar.css("color", "#ffffff");
        messageBar.fadeIn("slow");
        messageBar.html(genError(message, data));
        parent.$("body").css("height", "100%");
    },
    clearMessage: function() {
        var messageBar = initBar();
        messageBar.hide();
        parent.$("body").css("height", "100%");
    }
});

function initBar() {
    if (parent.$("#messagebar").length == 0) {
        parent.$("body").append("<div id='messagebar'></div>");
	}
	var messageBar = parent.$("#messagebar"); 
    messageBar.css("padding", "3px");
    messageBar.css("text-align", "center");
    messageBar.css("position", "absolute");
    messageBar.css("left", "0px");
    messageBar.css("top", parent.document.documentElement.scrollTop+"px");
	return messageBar;
}
function genMessage(data) {
    return data+"&nbsp;&nbsp;<a href='javascript:$.clearMessage();'>[x]</a>";
}
function genError(message,data) {
    var ss = "";
    ss += "<a href=\"#\" onclick='javascript:showDMsgDetail();' style='color:#fff;text-decoration:none;'>";
    ss += message;
    ss += "</a>";
    ss += "&nbsp;&nbsp";
    ss += "<a href=\"#\" onclick='javascript:$.clearMessage();'>[x]</a>";
    if (data!=null&&data!=undefined&&data!="") {
        ss += "<div id='dmsg' style='font-size:75%;color:#000;text-align:left;background:#fff;padding:10px;display:none;'>";
        ss += "<b>" + data.NativeMessage + "</b><br/><br/>";
        ss += data.StackTrace.replace("\n","<br/>");
        ss += "</div>";
    }
    return ss;
}
function showDMsgDetail() {
    if ($("#dmsg")!=null&&$("#dmsg")!=undefined) {
        $("#dmsg").css("display","");
    }
}





