var winW = 630;
var winH = 460;

function UpdateWindowDimensions()
{
    if (parseInt(navigator.appVersion) > 3) {
        if (navigator.appName == "Netscape") {
            winW = window.innerWidth;
            winH = window.innerHeight;
        }
        if (navigator.appName.indexOf("Microsoft") != -1) {
            winW = document.documentElement.clientWidth;
            winH = document.documentElement.clientHeight;
        }
    }

    // Find available dimensions
    winW -= 200;
    winH -= 100;
}
UpdateWindowDimensions();


function GetUnity() {
    if (navigator.appVersion.indexOf("MSIE") != -1 && navigator.appVersion.toLowerCase().indexOf("win") != -1)
        return document.getElementById("UnityObject");
    else if (navigator.appVersion.toLowerCase().indexOf("safari") != -1)
        return document.getElementById("UnityObject");
    else
        return document.getElementById("UnityEmbed");
}

function ResizeUnity(width, height) {
    var embed = GetUnity();
    embed.width = width;
    embed.height = height;
}

function AutosizeUnity() {
    UpdateWindowDimensions();
    ResizeUnity(winW, winH);
}

function DetectUnityWebPlayer() {
    var tInstalled = false;
    if (navigator.appVersion.indexOf("MSIE") != -1 && navigator.appVersion.toLowerCase().indexOf("win") != -1) {
        tInstalled = DetectUnityWebPlayerActiveX();
    }
    else {
        if (navigator.mimeTypes && navigator.mimeTypes["application/vnd.unity"]) {
            if (navigator.mimeTypes["application/vnd.unity"].enabledPlugin && navigator.plugins && navigator.plugins["Unity Player"]) {
                tInstalled = true;
            }
        }
    }
    return tInstalled;
}

function GetInstallerPath() {
    var tDownloadURL = "";
    var hasXpi = navigator.userAgent.toLowerCase().indexOf("firefox") != -1;

    // Use standalone installer
    if (1) {
        if (navigator.platform == "MacIntel")
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/webplayer-i386.dmg";
        else if (navigator.platform == "MacPPC")
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/webplayer-ppc.dmg";
        else if (navigator.platform.toLowerCase().indexOf("win") != -1)
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/UnityWebPlayer.exe";
        return tDownloadURL;
    }
    // Use XPI installer
    else {
        if (navigator.platform == "MacIntel")
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/UnityWebPlayerOSX.xpi";
        else if (navigator.platform == "MacPPC")
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/UnityWebPlayerOSX.xpi";
        else if (navigator.platform.toLowerCase().indexOf("win") != -1)
            tDownloadURL = "http://webplayer.unity3d.com/download_webplayer-2.x/UnityWebPlayerWin32.xpi";
        return tDownloadURL;
    }
}

function AutomaticReload() {
    navigator.plugins.refresh();
    if (DetectUnityWebPlayer())
        window.location.reload();

    setTimeout('AutomaticReload()', 3000)
}

function WriteUnityTag(filename) {
    if (DetectUnityWebPlayer()) {

        document.write('<object id="UnityObject" classid="clsid:444785F1-DE89-4295-863A-D46C3A781394" width="' + winW + '" height="' + winH + '"> \n');
        document.write('  <param name="src" value="' + filename + '" /> \n');
        document.write('  <embed id="UnityEmbed" src="' + filename + '" width="' + winW + '" height="' + winH + '" type="application/vnd.unity" pluginspage="http://www.unity3d.com/unity-web-player-2.x" /> \n');
        document.write('</object>');
    }
    else {

        var installerPath = GetInstallerPath();
        if (installerPath != "") {
            // Place a link to the right installer depending on the platform we are on. The iframe is very important! Our goals are:
            // 1. Don't have to popup new page
            // 2. This page still remains active, so our automatic reload script will refresh the page when the plugin is installed
            document.write('<div align="center" id="UnityPrompt"> \n');
            document.write('  <a href= ' + installerPath + '><img src="http://webplayer.unity3d.com/installation/getunity.png" border="0"/></a> \n');
            document.write('</div> \n');

            // By default disable ActiveX cab installation, because we can't make a nice Install Now button
            //                      if (navigator.appVersion.indexOf("MSIE") != -1 && navigator.appVersion.toLowerCase().indexOf("win") != -1)
            if (0) {
                document.write('<div id="InnerUnityPrompt"> <p>Title</p>');
                document.write('<p> Contents</p>');
                document.write("</div>");

                var innerUnityPrompt = document.getElementById("InnerUnityPrompt");

                var innerHtmlDoc =
                                            '<object id="UnityInstallerObject" classid="clsid:444785F1-DE89-4295-863A-D46C3A781394" width="320" height="50" codebase="http://webplayer.unity3d.com/download_webplayer-2.x/UnityWebPlayer.cab#version=2,0,0,0">\n' +
                                            '</object>';

                innerUnityPrompt.innerHTML = innerHtmlDoc;
            }

            document.write('<iframe name="InstallerFrame" height="0" width="0" frameborder="0"></iframe>\n');
        }
        else {
            document.write('<div align="center" id="UnityPrompt"> \n');
            document.write('  <a href="javascript: window.open("http://www.unity3d.com/unity-web-player-2.x"); "><img src="http://webplayer.unity3d.com/installation/getunity.png" border="0"/></a> \n');
            document.write('</div> \n');
        }

        AutomaticReload();
    }
}