﻿function onSilverlightError(sender, args) {
    var appSource = "";
    if (sender != null && sender != 0) {
        appSource = sender.getHost().Source;
    } 
    var errorType = args.ErrorType;
    var iErrorCode = args.ErrorCode;
    
    var errMsg = "Unhandled Error in Silverlight 2 Application " +  appSource + "\n" ;

    errMsg += "Code: "+ iErrorCode + "    \n";
    errMsg += "Category: " + errorType + "       \n";
    errMsg += "Message: " + args.ErrorMessage + "     \n";

    if (errorType == "ParserError")
    {
        errMsg += "File: " + args.xamlFile + "     \n";
        errMsg += "Line: " + args.lineNumber + "     \n";
        errMsg += "Position: " + args.charPosition + "     \n";
    }
    else if (errorType == "RuntimeError")
    {           
        if (args.lineNumber != 0)
        {
            errMsg += "Line: " + args.lineNumber + "     \n";
            errMsg += "Position: " +  args.charPosition + "     \n";
        }
        errMsg += "MethodName: " + args.methodName + "     \n";
    }

    throw new Error(errMsg);
}
    
function loadSilverlight(source,height,width)
{
    document.writeln('<object type="application/x-silverlight-2" data="data:application/x-silverlight-2," width="' + width + '" height="' + height + '"');
    document.writeln('<param name="background" value="Transparent" />');
    document.writeln('<param name="windowless" value="True" />');
    document.writeln('<param name="source" value="'+ source +'" />');
    document.writeln('<param name="initParams" value="ConfigurationProvider=DarkTheme,DataProvider=XmlDataProvider;Path=Data.xml"/>');
    document.writeln('<param name="onerror" value="onSilverlightError" />');
    document.writeln('<!-- Display installation image. --><a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;"><img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/></a>');
    document.writeln('</object>');
}