﻿(function($) {
    //a is message & b is title;
    $.urPopup = function(params) {
        var mousedownflag = false;
        var thisOverlay = document.createElement("div");
        jQuery(thisOverlay).addClass("urOverlay");
        document.body.appendChild(thisOverlay);
        jQuery(thisOverlay).height($(document).height());
        jQuery(thisOverlay).fadeTo(150, 0.8);
        var bodyDiv = document.createElement("div");
        jQuery(bodyDiv).addClass("urdialogBody");
        jQuery(bodyDiv).appendTo(jQuery("body"));
        //---Add header
        var dialogHeader = document.createElement("div");
        jQuery(dialogHeader).addClass("urdialogHeader");

        var closeDiv = document.createElement("div");
        jQuery(closeDiv).addClass("urdialogCloseBtn");
        jQuery(closeDiv).css({ cursor: 'pointer' });
        jQuery(closeDiv).mouseover(function() {
            jQuery(this).css({ backgroundPosition: '0px -16px' });
        });
        jQuery(closeDiv).mouseleave(function() {
            jQuery(this).css({ backgroundPosition: '0px 0px' });
        });

        if (params.URL) {
            jQuery(closeDiv).bind("click", { dialog: jQuery(bodyDiv), overLay: jQuery(thisOverlay) }, function(e) { jQuery(e.data.dialog).slideUp(200, function() { jQuery(this).remove() }); jQuery(e.data.overLay).fadeOut(250, function() { jQuery(this).remove(); window.location = params.URL; }) })
        }
        else
            jQuery(closeDiv).bind("click", { dialog: jQuery(bodyDiv), overLay: jQuery(thisOverlay) }, function(e) { jQuery(e.data.dialog).slideUp(200, function() { jQuery(this).remove() }); jQuery(e.data.overLay).fadeOut(250, function() { jQuery(this).remove() }) })

        jQuery(dialogHeader).append(jQuery(closeDiv));

        jQuery(dialogHeader).appendTo(jQuery(bodyDiv));
        //---Add Text
        var dialogMessage = document.createElement("div");
        jQuery(dialogMessage).addClass("urdialogMessage");
        jQuery(dialogMessage).appendTo(jQuery(bodyDiv));


        jQuery(bodyDiv).bind('mouseup', {}, function(e) { mousedownflag = false });
        if (params.message) {
            jQuery(dialogMessage).html(params.message);

        }
        else {
            jQuery(dialogMessage).html("");
            jQuery(bodyDiv).width(200);
            jQuery(bodyDiv).css("left", ((jQuery("body").width()) / 2) - (jQuery(bodyDiv).width() / 2));
        }
        if (params.title) {
            var headerText = document.createElement("div");
            jQuery(headerText).addClass("urDialogTitle")
            jQuery(headerText).appendTo(dialogHeader);
            jQuery(headerText).html(params.title);
        }
        //Define Icon
        if (params.icon) {
            var TitleIcon = document.createElement("img");
            jQuery(TitleIcon).addClass("urdialogTitleIcon");
            jQuery(TitleIcon).attr("src", params.icon)
            jQuery(TitleIcon).appendTo(dialogHeader);
        }
        if (params.width) {
            jQuery(bodyDiv).width(params.width)
        }
        if (params.height) {
            jQuery(dialogMessage).height(params.height)
        }
        jQuery(dialogHeader).width(jQuery(bodyDiv).width());
        jQuery(dialogMessage).width(jQuery(bodyDiv).width());
        var scrollTimeout = null;

        jQuery(window).scroll(function() {
            if (mousedownflag)
                return;
            if (scrollTimeout === null) {

            }
            else {
                clearTimeout(scrollTimeout);
            }
            scrollTimeout = setTimeout(function() { jQuery(thisOverlay).height($(document).height()); jQuery(bodyDiv).animate({ top: jQuery(document).scrollTop() + 30 }, 400); }, 200);
        });

        jQuery(bodyDiv).css("left", ((jQuery("body").width()) / 2) - (jQuery(bodyDiv).width() / 2) + "px");
        jQuery(bodyDiv).css("top", jQuery(document).scrollTop() + 30 + "px");
        jQuery(document).ready(function() {
            jQuery(bodyDiv).css("left", ((jQuery("body").width()) / 2) - (jQuery(bodyDiv).width() / 2) + "px");
            jQuery(bodyDiv).css("top", jQuery(document).scrollTop() + 30 + "px");
            jQuery(thisOverlay).height($(document).height());
        });
        jQuery(bodyDiv).slideToggle();
        jQuery(window).resize(function() {
            jQuery(bodyDiv).css("left", ((jQuery("body").width()) / 2) - (jQuery(bodyDiv).width() / 2) + "px");
            jQuery(bodyDiv).css("top", jQuery(document).scrollTop() + 30 + "px");
        });
    };
})(jQuery);
