﻿if(!window.Silverlight)
    window.Silverlight={};

if (!window.ScriptWeb1)
	window.ScriptWeb1 = {};

ScriptWeb1.Scene = function() 
{
}

ScriptWeb1.Scene.prototype =
{
	handleLoad: function(plugIn, userContext, rootElement) 
	{
		this.plugIn = plugIn;
	}
}
var scene = new ScriptWeb1.Scene();

function getOsAndBrowser () {
    try
    {
        var ua = null;

        ua = window.navigator.userAgent;
        
        var slua = {OS:'Unsupported',Browser:'Unsupported'};
        
        //Silverlight does not support pre-Windows NT platforms
        if (ua.indexOf('Windows NT') >= 0 || ua.indexOf('Mozilla/4.0 (compatible; MSIE 6.0)')>=0) {
            slua.OS = 'Windows';
        }
        else if (ua.indexOf('PPC Mac OS X') >= 0) {
            slua.OS = 'MacPPC';
        }
        else if (ua.indexOf('Intel Mac OS X') >= 0) {
            slua.OS = 'MacIntel';
        }
        
        if ( slua.OS != 'Unsupported' )
        {
            if (ua.indexOf('MSIE') >= 0) {
                if (navigator.userAgent.indexOf('Win64') == -1)
                {
                    if (parseInt(ua.split('MSIE')[1]) >= 6) {
                        slua.Browser  = 'MSIE';
                    }
                }
            }
            else if (ua.indexOf('Firefox') >= 0) {
                var versionArr = ua.split('Firefox/')[1].split('.');
                var major = parseInt(versionArr[0]);
                if (major >= 2) {
                    slua.Browser = 'Firefox';
                }
                else {
                    var minor = parseInt(versionArr[1]);
                    if ((major == 1) && (minor >= 5)) {
                        slua.Browser  = 'Firefox';
                    }
                }
            }
            
            else if (ua.indexOf('Safari') >= 0) {
                slua.Browser = 'Safari';
            }            
        }
        return slua;
    }
    catch (e)
    {
        return false;
    }
}

Silverlight.InstallAndCreateSilverlight = function(version, SilverlightDiv, installExperienceHTML, installPromptDivID, createSilverlightDelegate)
{
    var RetryTimeout=3000;	              //The interval at which Silverlight instantiation is attempted(ms)	
    if ( Silverlight.isInstalled(version) )
    {
	createSilverlightDelegate();
    }
    else
    {
	if ( installExperienceHTML && SilverlightDiv )
	{
	    SilverlightDiv.innerHTML=installExperienceHTML;
	    document.body.innerHTML;
	}
        if (installPromptDivID)
        {
	    var installPromptDiv = document.getElementById(installPromptDivID);
	    if ( installPromptDiv )
		installPromptDiv.innerHTML = Silverlight.createObject(null, null, null, {version: version, inplaceInstallPrompt:true},{}, null);
        }
    var slua = getOsAndBrowser();
	if ( ! (Silverlight.isInstalled(null) || slua.Browser != 'MSIE' ) )
	{
	    TimeoutDelegate = function()
	    {
	        Silverlight.InstallAndCreateSilverlight(version, null, null, null, createSilverlightDelegate);
	    }
	    setTimeout(TimeoutDelegate, RetryTimeout);
	}
    }
}

function createSLObjects()
{
    Silverlight.createObjectEx({
	                source: 'xaml/new_cotonete.xaml',
	                parentElement: document.getElementById('silverlightPlugInHost'),
	                id: 'silverlightPlugIn',
	                properties: {
		                width: '340',
		                height: '268',
		                background:'black',
		                version: '1.0'
	                },
	                events: {
		                //onLoad: Silverlight.createDelegate(scene, scene.handleLoad),
		                onError: function(sender, args) {
				            var errorDiv = document.getElementById("errorLocation");
				            if (errorDiv != null) {
					            var errorText = args.errorType + "- " + args.errorMessage;
            							
					            if (args.ErrorType == "ParserError") {
						            errorText += "<br>File: " + args.xamlFile;
						            errorText += ", line " + args.lineNumber;
						            errorText += " character " + args.charPosition;
					            }
					            else if (args.ErrorType == "RuntimeError") {
						            errorText += "<br>line " + args.lineNumber;
						            errorText += " character " +  args.charPosition;
					            }
					            errorDiv.innerHTML = errorText;
				            }	
			            }
	                },
	                context: null 
                });
}
