﻿var umpEmbeddedDisplayCarousel = true;
var umpEmbeddedDisplayContentInfo = true;
var umpEmbeddedPlayerSize = null;


//*********************** Load Universal Media Player SWF ***************************
function LoadEmbeddedUniversalMediaPlayerSWF(displayCarousel, displayContentInfo, size) {
    var params = { menu: "false", allowfullscreen: "true", allowscriptaccess: "always", wmode: "transparent" };
    var expressInstallURL = "http://serve.a-widget.com/kickFlash/scripts/expressInstall2.swf";
    var swfURL = "http://serve.a-widget.com/service/getWidgetSwf.kickAction";

    flashvars = { affiliateSiteId: UmpIntelAffiliateId, widgetId: UmpSizeId[size], width: UmpSizeDimensions[size].Width, height: UmpSizeDimensions[size].Height, eventCallbackFunc: "UmpEmbeddedEventCallBack", loadedJSCallback: "UmpEmbeddedLoadCallBack", clickJSCallback: "UmpEmbeddedClickCallBack", referralUrl: "http://www.microsoft.com", js: 1};
    attributes = { id: UmpObjectId.EMBEDDED, name: UmpObjectId.EMBEDDED };
    swfobject.embedSWF(swfURL, UmpSwfContainer.EMBEDDED, UmpSizeDimensions[size].Width, UmpSizeDimensions[size].Height, "9.0.28", expressInstallURL, flashvars, params, attributes);

    umpEmbeddedDisplayCarousel = displayCarousel;
    umpEmbeddedDisplayContentInfo = displayContentInfo;
    umpEmbeddedPlayerSize = size;
}


//*********************** Instantiate Universal Media Player JS Controls ***************************
var umpEmbedded = new UniversalMediaPlayer();


//*********************** Register for Universal Media Player Events ***************************
AddHandler(window, "load", function() { UmpInitEmbeddedPlayer(); });

function UmpInitEmbeddedPlayer() {
    umpEmbedded.OnCarouselDisplayStateChange = function() { UmpToggleEmbeddedUmpCarouselControls(); };

    document.getElementById('mod-ump-container').style.width = UmpSizeDimensions[umpEmbeddedPlayerSize].Width + 'px';
    document.getElementById('mod-ump-container').style.height = umpEmbedded.CalculatePlayerHeight(umpEmbeddedDisplayCarousel, umpEmbeddedDisplayContentInfo, umpEmbeddedPlayerSize) + 'px';
    document.getElementById('mod-ump-carousel-button-container').className = UmpSizeCarouselButtonClass[umpEmbeddedPlayerSize];
}

function UmpToggleEmbeddedUmpCarouselControls() {
    var controlContainer = document.getElementById('mod-ump-carousel-button-container');
    controlContainer.style.display = controlContainer.currentStyle.display == 'block' ? 'none' : 'block';
}


//*********************** Universal Media Player Flash to JS Interop CallBack Methods ***************************
function UmpEmbeddedClickCallBack(clickedSWF, clickedComponent) {
    umpEmbedded.OnPlayerClick(clickedSWF, clickedComponent);
}

function UmpEmbeddedLoadCallBack(loadedSWF) {
    umpEmbedded.Initialize(UmpObjectId.EMBEDDED);
    umpEmbedded.OnPlayerLoad(loadedSWF);
    umpEmbedded.RegisterElements(UmpSubscriber.EMBEDDED);
    
    if (!umpEmbeddedDisplayCarousel) { umpEmbedded.DisplayCarousel(UmpComponentDisplayState.OFF); }
    if (!umpEmbeddedDisplayContentInfo) { umpEmbedded.DisplayContentInfo(UmpComponentDisplayState.OFF); }
}

function UmpEmbeddedEventCallBack(componentName, event) {
    umpEmbedded.OnPlayerEvent(componentName, event);
}

function UmpUpdateEmbedCode() {
    var mediaURL = umpEmbedded.GetProperty(UmpComponentName.CAROUSEL, UmpKaProperty.ENCLOSURE, true);
    setTimeout(CreateDelegate(umpEmbedded, function() { umpEmbedded.SetEmbedCode(mediaURL, umpEmbedded.m_DefaultPageURL) }), 200);
}

function UmpCarouselMediaChangeEventHandler() {
    umpModal.FireEvent(UmpEvent.MEDIA_CHANGE);
}

function UmpMediaEndEventHandler() {
    umpEmbedded.FireEvent(UmpEvent.MEDIA_END);
}

function UmpMediaPercentCompleteEventHandler() {
    umpEmbedded.FireEvent(UmpEvent.MEDIA_PERCENT_COMPLETE);
}
