﻿/// <reference path="jquery-1.3.2-vsdoc2.js" />
/// <reference path="silverlight.js" />

if (!window.DiscoverTec)
  window.DiscoverTec = {};

DiscoverTec.Page = function()
{
  this.loaded = false;
  this.playRequested = false;
}

DiscoverTec.Page.prototype =
{
  handleSourceDownloadComplete: function(sender, args)
  {
    this.loaded = true;
    if (this.playRequested)
    {
      setTimeout(function() { document.getElementById('wmBioObject').Content.MainPage.Start(); }, 750);
      if (typeof (pageTracker) != 'undefined')
        pageTracker._trackEvent('EasterEggs', 'Start', 'William Bio');
    }
  }
}

DiscoverTec.createDelegate = function(instance, method)
{
  return function() { return method.apply(instance, arguments); }
}

DiscoverTec.createSilverlight = function(xapUrl, hostId, controlId)
{
  if (!window.Silverlight)
    return;

  if (Silverlight.isInstalled("3.0"))
  {
    Silverlight.createObjectEx({
      source: xapUrl,
      parentElement: document.getElementById(hostId),
      id: controlId,
      properties: { width: '640px', height: '480px', version: '3.0', isWindowless: 'True', background: '#00000000' },
      events: { onsourcedownloadcomplete: DiscoverTec.createDelegate(page, page.handleSourceDownloadComplete) }
    });

    if (typeof (pageTracker) != 'undefined')
      pageTracker._trackEvent('EasterEggs', 'Install', 'William Bio');
  }
}

var page = new DiscoverTec.Page();

function prepareBios()
{
  if (Silverlight.isInstalled('3.0'))
  {
    $('#wm_bio').parent().after('<div id="wmBioContainer" style="display:none;margin-top:5px;" class="wm_bio"></div><br />');
    DiscoverTec.createSilverlight('ClientBin/wm.xap', 'wmBioContainer', 'wmBioObject');
    $('#wm_bio').one('click', function() { $('#wmBioContainer').slideDown('normal', function() { if (page.loaded) { document.getElementById('wmBioObject').Content.MainPage.Start(); if (typeof (pageTracker) != 'undefined') pageTracker._trackEvent('EasterEggs', 'Start', 'William Bio'); } else page.playRequested = true; }); });
  }
}