﻿// JScript File

function OverlayDisplayDialog(dialogId, width, height, title, content, buttons) {

    var box = '';

    box += '<div class="OverlayWindow" style="width: ' + width + 'px;">';
    box += '    <div class="OverlayWindowContent">';
    box += '        <div class="OverlayWindowTop"></div>';

    box += '        <div class="OverlayHeader">';
    box += '            <div class="OverlayWindowTitle">' + title + '</div>';
    box += '            <div class="OverlayWindowCloseButton"><a href="" onClick="OverlayHide(\'' + dialogId + '\'); return false;">Close</a></div>';
    box += '        </div>';

    box += '        <div class="OverlayWindowContentArea">';
    box += content;
    box += '        </div>';
    box += '        <div class="OverlayWindowButtons">';
    box += buttons;
    box += '        </div>';
    box += '    </div>';
    box += '    <div class="OverlayWindowBottom"><div></div></div>';
    box += '</div>';

    OverlayDisplay(dialogId, width, height, box);

}

function OverlayDisplayDialogWithFrame(src) {

    content = "<iframe id='OverlayFrame' name='OverlayFrame' src='" + src + "' style='border: none;' frameborder='none'></iframe>";
    OverlayDisplayDialog("OverlayWindow", 0, 0, "", content, "");

}

function OverlayDisplay(overlayId, width, height, content) {

    // gather dimensions of the document - must cover whole document with div
    var documentHeight = $(document).height();
    var documentWidth = $(document).width();

    // find the position to place the overlay - scrollposition + half window height
    var position = OverlayGetCenteredPosition (width, height);
    var top = position.y1;
    var left = position.x1;

    // build the overlay content
    var overlay = '';

    overlay += '<div class="OverlayBackground" style="width: ' + documentWidth + 'px; height: ' + documentHeight + 'px;"></div>';
    
    // add a blank iframe to cover background form fields if ie6
    if (!window.XMLHttpRequest) {
    	overlay += '<iframe style="border: none; width: ' + width + 'px; height: ' + height + 'px; position: absolute; left: ' + left + 'px; top: ' + top + 'px; progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0);" src="x"></iframe>';
    }
    
    overlay += '<div class="OverlayPositionLayer" style="left: ' + left + 'px; top: ' + top + 'px;">';
    overlay += content;
    overlay += '</div>';

    $("#" + overlayId).html(overlay);

}

function OverlayHide(overlayId) {

    $("#" + overlayId).html("");

}

function OverlayGetCenteredPosition (width, height) {

   // find the position to place the overlay - scrollposition + half window height
    var topPosition = $(window).scrollTop();
    var windowHeight = $(window).height();
    var top = topPosition + (windowHeight - height) / 2;
    var left = ($(window).width() - width) / 2;

    return {
        x1: left,
        y1: top
    };

}

function OverlaySetAttributes (title, width, height, buttonData) {

    $(".OverlayWindowTitle").html(title);

    var buttons = "";
    for (var i = 0; i < buttonData.length; i++) {
        if (buttonData[i].onclick.substr(0, 5) == "this.") {
            buttonData[i].onclick = buttonData[i].onclick.replace("this.", "window.frames.OverlayFrame.");
        }
        buttons += "<input type='button' id='" + buttonData[i].id + "' value='" + buttonData[i].value + "' onClick='" + buttonData[i].onclick + "'/>";
    }
    $(".OverlayWindowButtons").html(buttons);

    OverlayResize (width, height);

}

function OverlayResize(width, height) {

    $(".OverlayWindow").width(width);
    //$(".OverlayWindowContent").height(height);
    $("#OverlayFrame").css("height", height + "px");

    var position = OverlayGetCenteredPosition (width, height + 150);
    $(".OverlayPositionLayer").css("left", position.x1 + "px");
    $(".OverlayPositionLayer").css("top", position.y1 + "px");

}
