// UbiCast overlay window script

// overlay table
var overlay_window_table = new Object();
overlay_window_table["close_text"] = "";

function overlay_window_init(overlay_id) {
    overlay_window_table[overlay_id] = new Object();
    
    overlay_window_table[overlay_id]["init_done"] = true;
    overlay_window_table[overlay_id]["displayed"] = false;
    overlay_window_table[overlay_id]["title"] = "";
    overlay_window_table[overlay_id]["related_block"] = "";
    overlay_window_table[overlay_id]["content_string"] = "";
    overlay_window_table[overlay_id]["width"] = "auto";
    overlay_window_table[overlay_id]["height"] = "auto";
    
    var html_base = "";
    html_base += "<div class=\"ubicast-overlay-bg\" onclick=\"javascript: overlay_window_hide('"+overlay_id+"');\"></div>";
    html_base += "    <table class=\"ubicast-overlay-window-table\"><tr><td>";
    html_base += "        <div class=\"ubicast-overlay-window\">";
    html_base += "            <div class=\"ubicast-overlay-window-inner\">";
    html_base += "                <div class=\"ubicast-overlay-window-title\"><h2 id=\"window_"+overlay_id+"_title\"></h2></div>";
    html_base += "                <div class=\"ubicast-overlay-window-close\" onclick=\"javascript: overlay_window_hide('"+overlay_id+"');\" title=\""+overlay_window_table["close_text"]+"\"></div>";
    html_base += "                <div class=\"ubicast-overlay-window-content\" id=\"window_"+overlay_id+"_content\"></div>";
    html_base += "            </div>";
    html_base += "        </div>";
    html_base += "    </td></tr></table>";
    html_base += "</div>";
    $("#"+overlay_id).html(html_base);
    
    overlay_window_onresize(overlay_id);
}

function overlay_window_check_init(overlay_id) {
    var init_done = false;
    try { if (overlay_window_table[overlay_id]["init_done"] == true) init_done = true; }
    catch (e) { }
    if (init_done == false) overlay_window_init(overlay_id);
}

function overlay_window_is_displayed(overlay_id) {
    try {
        if(overlay_window_table[overlay_id]["overlay_displayed"] == true) return true;
        else return false;
    }
    catch (e) { return false; }
}

function overlay_window_onresize(overlay_id) {
    overlay_window_check_init(overlay_id);
    //var overlay_max_width = $(window).width() - 26; // 20 for margin, 6 for border
    var overlay_max_height = $(window).height() - 51; // 20 for margin, 3 for border, 28 for title
    $("#window_"+overlay_id+"_content").css("max-height", overlay_max_height+"px");
    $("#window_"+overlay_id+"_content iframe.window_main_iframe").css("height", overlay_max_height+"px");
}

function overlay_window_set_size(overlay_id, width, height) {
    overlay_window_check_init(overlay_id);
    overlay_window_table[overlay_id]["width"] = width;
    overlay_window_table[overlay_id]["height"] = height;
    $("#"+overlay_id+" div.ubicast-overlay-window").css("width", width);
    $("#window_"+overlay_id+"_content").css("height", height);
}

function overlay_window_set_title(overlay_id, title) {
    overlay_window_check_init(overlay_id);
    overlay_window_table[overlay_id]["title"] = title;
}

function overlay_window_set_content_block(overlay_id, block_to_copy) {
    overlay_window_check_init(overlay_id);
    overlay_window_table[overlay_id]["related_block"] = block_to_copy;
    overlay_window_table[overlay_id]["content_string"] = "";
}

function overlay_window_set_content_string(overlay_id, string) {
    overlay_window_check_init(overlay_id);
    overlay_window_table[overlay_id]["related_block"] = "";
    overlay_window_table[overlay_id]["content_string"] = string;
}

function overlay_window_show(overlay_id) {
    overlay_window_check_init(overlay_id);
    $("#window_"+overlay_id+"_title").html(overlay_window_table[overlay_id]["title"]);
    if (overlay_window_table[overlay_id]["related_block"] != "") {
        $("#window_"+overlay_id+"_content").html($("#"+overlay_window_table[overlay_id]["related_block"]).html());
        $("#"+overlay_window_table[overlay_id]["related_block"]).html("");
    }
    else {
        $("#window_"+overlay_id+"_content").html(overlay_window_table[overlay_id]["content_string"]);
    }
    $("#"+overlay_id).addClass("visible");
    overlay_window_table[overlay_id]["displayed"] = true;
}

function overlay_window_hide(overlay_id) {
    overlay_window_check_init(overlay_id);
    if (overlay_window_table[overlay_id]["related_block"] != "") {
        $("#"+overlay_window_table[overlay_id]["related_block"]).html($("#window_"+overlay_id+"_content").html());
    }
    $("#window_"+overlay_id+"_content").html("");
    $("#"+overlay_id).removeClass("visible");
    overlay_window_table[overlay_id]["displayed"] = false;
}


