﻿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 ShowMediaDemo() {
    $find('programmaticModalPopupBehavior').show();
    document.getElementById('title_div').innerHTML = 'Media Sample';

    document.getElementById('silverlightmediademo').style.display = 'block';
    document.getElementById('silverlightmediademo').style.visibility = 'visible';

    document.getElementById('silverlightbuttondemo').style.display = 'none';
    document.getElementById('silverlightbuttondemo').style.visibility = 'hidden';

    document.getElementById('silverlightcombodemo').style.display = 'none';
    document.getElementById('silverlightcombodemo').style.visibility = 'hidden';

    LoadSilverlightControl('mediasilverlight', 'silverlightmediademo');
}

function ShowButtonDemo() {
    $find('programmaticModalPopupBehavior').show();
    document.getElementById('title_div').innerHTML = 'Button Sample';

    document.getElementById('silverlightbuttondemo').style.display = 'block';
    document.getElementById('silverlightbuttondemo').style.visibility = 'visible';

    document.getElementById('silverlightmediademo').style.display = 'none';
    document.getElementById('silverlightmediademo').style.visibility = 'hidden';

    document.getElementById('silverlightcombodemo').style.display = 'none';
    document.getElementById('silverlightcombodemo').style.visibility = 'hidden';

    LoadSilverlightControl('buttonsilverlight', 'silverlightbuttondemo');
}

function ShowComboDemo() {    
    $find('programmaticModalPopupBehavior').show();
    document.getElementById('title_div').innerHTML = 'ComboBox Sample';

    document.getElementById('silverlightcombodemo').style.display = 'block';
    document.getElementById('silverlightcombodemo').style.visibility = 'visible';    

    document.getElementById('silverlightmediademo').style.display = 'none';
    document.getElementById('silverlightmediademo').style.visibility = 'hidden';

    document.getElementById('silverlightbuttondemo').style.display = 'none';
    document.getElementById('silverlightbuttondemo').style.visibility = 'hidden';
    
    LoadSilverlightControl('combosilverlight', 'silverlightcombodemo');
}


function HidePopUp() {
    $find('programmaticModalPopupBehavior').hide();
    UnLoadSilverlightControl('buttonsilverlight', 'silverlightbuttondemo');
    UnLoadSilverlightControl('mediasilverlight', 'silverlightmediademo');
    UnLoadSilverlightControl('mediasilverlight', 'silverlightcombodemo');
}

function LoadSilverlightControl(id, silverlightdivid) {
    var control = document.getElementById(id);
    control.setAttribute("Source", "../xap/inspiration/057-053-ArtTechSandBox.xap");    
    document.getElementById(silverlightdivid).style.display = 'block';
    document.getElementById(silverlightdivid).style.visibility = 'visible';
}
function UnLoadSilverlightControl(id, silverlightdivid) {
    var control = document.getElementById(id);
    control.setAttribute("Source", "");
    document.getElementById(silverlightdivid).style.display = 'none';
    document.getElementById(silverlightdivid).style.visibility = 'hidden';
}

function DetectSilverlight() 
{
    var hasSilverlight = Boolean(window.Silverlight);
    var hasSilverlight2 = hasSilverlight && Silverlight.isInstalled('2.0');

    if (hasSilverlight2) {        
        document.getElementById('NoSLDiv').style.display = 'none';
        document.getElementById('SLDiv').style.display = 'block';
    }
    else {
        document.getElementById('NoSLDiv').style.display = 'block';
        document.getElementById('SLDiv').style.display = 'none';       
    }
}


DetectSilverlight();






