/// <reference path="SilverlightAnalytics.js" />

var m_msAnalytics;

function SetMSAnalytics(msAnalytics)
{
    m_msAnalytics = m_msAnalytics;
}
function AddAnalytics(rootElement)
{
    /// <summary>Add analytics to the buttons and to the movie</summary>
    /// <param name="rootElement" type="UIElement">the root element</param>
    
    var analytics = new SilverlightAnalytics(LogEventToMSAnalytics, m_xaml);

    analytics.TrackElementEvent(rootElement, "SourceCode", "MouseLeftButtonUp");
    analytics.TrackElementEvent(rootElement, "PDF", "MouseLeftButtonUp");
    analytics.TrackElementEvent(rootElement, "XPS", "MouseLeftButtonUp");
    analytics.TrackElementEvent(rootElement, "WPF", "MouseLeftButtonUp");
    analytics.TrackElementEvent(rootElement, "SendInfo", "MouseLeftButtonUp");
    analytics.TrackElementEvent(rootElement, "url", "MouseLeftButtonDown");
    
    var movie = rootElement.findName("Movie");
    
    analytics.TrackMedia(movie, 5);
}

function LogEventToWebTrends(eventName)
{
    ///<summary>Track a RIA event using WebTrends</summary>
    ///<param name="eventName" type="String">the name of the event</param>
    
    // This is just for testing purposes
    window.status = "Analytics event logged: " + eventName;
    
    // This is the WebTrends function to track a RIA event
    dcsMultiTrack("DCS.dcssip", "xmldocs.net", "DCS.dcsuri", "/Analytics/" + eventName);
}

function LogEventToMSAnalytics(eventName)
{
    ///<summary>Track a RIA event using Microsoft Analytics (Gatineau)</summary>
    ///<param name="eventName" type="String">the name of the event</param>
    
    window.status = "Analytics event logged: " + eventName;
    
    var url = document.URL + "/" + eventName;
    
    msAnalytics.PageViewRegistered = false; 
    
    msAnalytics.TargetPage = url;
    
    msAnalytics.TrackPage();
}


function LogEventToGoogleAnalytics(eventName)
{
    ///<summary>Track a RIA event using Google Analytics</summary>
    ///<param name="eventName" type="String">the name of the event</param>
    
    urchinTracker(eventName);
}