﻿
var __telerik_window_lastWidth = 0;
var __telerik_window_lastHeight = 0;

function Telerik_WindowMessaging_Provider() { }

function Telerik_WindowMessaging_Provider_onLoad(sender, eventArgs) {
    with (sender) {
        setSize(eventArgs.width, eventArgs.height);
        center();
        setActive(true);
    }
    Telerik_WindowMessaging_Provider_Opera_CheckSize(sender);
}

function Telerik_WindowMessaging_Provider_Opera_CheckSize(sender) {
    if (Sys.Browser.name.toLowerCase() == "opera") {
        //we need to manually set the height of the contentFrame, as opera can't work this out
        var icontentcontainerheight = sender.get_contentFrame().parentNode.offsetHeight;
        sender.get_contentFrame().style.height = (icontentcontainerheight + "px");
    }
}

function Telerik_WindowMessaging_Provider_onCommand(sender, eventArgs) {

        var oframe = sender.get_contentFrame();
        var oframecontainer = oframe.parentNode;

        if (eventArgs.get_commandName() == "Maximize") {
            sender.__lastHeight = oframe.offsetHeight;
            setTimeout(function() {
                with (oframe) { 
                    style.height = (oframecontainer.offsetHeight + "px");
                }
                if (window[oframe.name].HttpManager) {
                    window[oframe.name].HttpManager.Browser.events.raiseEvent("onmessagingwindowprovidermaximise", window, { "containerHeight": oframe.parentNode.offsetHeight, "containerWidth": oframe.parentNode.offsetWidth, "frame": oframe });
                }
            }, 100);

        } else {

        setTimeout(function() {
            with (oframe) {
                style.height = (sender.__lastHeight + "px");
            }
            if (window[oframe.name].HttpManager) {
                window[oframe.name].HttpManager.Browser.events.raiseEvent("onmessagingwindowprovidermaximise", window, { "containerHeight": oframe.parentNode.offsetHeight, "containerWidth": oframe.parentNode.offsetWidth, "frame": oframe });
            }
        }, 100);

        }

}
