﻿// 
//
//SLManager.js -- Manages SL Player 
//
//

var prerollURL;
var linkURL;

function setSilverLightParameters(_prerollURL, _linkURL) {
	//alert('setSilverLightParameters()');
	prerollURL = _prerollURL;
	linkURL = _linkURL;
	createSilverlight();
}

function actCanvasLoaded(sender, eventArgs) {

	//actCanvasLoaded handles the code for any action required once Silverlight 
	// Canvas is Loaded.. This is the Very First Event to use to Change
	// Properties at Runtime.. Added CacheBusting but it could be deactivated by using 
	// comments
	var plugin = sender.getHost();
	var params = plugin.initParams.split(",");
	//var msg = "Params: ";
	var paramSTW 	= [];
	var hash 		= [];
    for (var i = 0; i < params.length; i++)
    {
		hash = params[i].split('=');
		paramSTW.push(hash[0]);
		paramSTW[hash[0]] = hash[1];
        //msg += params[i] + " ";
    }
    //alert(paramSTW["prerollURL"]);
	//alert(prerollURL);
	
	onSilverLightAdvertising();
	
	//var urlofmedia = "http://ozone.tzone.org/~maxlover/stw3.wmv";
	var urlofmedia 			= paramSTW["prerollURL"];
	var sourcefileUrl 		= genCacheBusterUrl(urlofmedia);
	var objWMVPlayback 		= document.getElementById("SilverlightControl").content.findName("objMediaplayer");
	objWMVPlayback.Source 	= sourcefileUrl;
}

function actMediaLoaded()
{
	//actOnLoaded handles the code
	//for handling Stuff once Media Has Been loaded
	// you could start a countdown or Track actions starting here
}

function actStateChange(sender, args) {
		var objWMVPlayback = sender.findName("objMediaplayer");
		var strplayerstatus = objWMVPlayback.currentState;		
		
		//strplayerstatus will return status Playback Object	
		// Opening , Buffering, Playing , Stoped Ect.	
		
		if (strplayerstatus == "Playing"){
		
			// Hide The Status elements
			var elementStatusText = document.getElementById("SilverlightControl").content.findName("objStatusText")
			var elementStatusBackground = document.getElementById("SilverlightControl").content.findName("objStatusBackground")
			elementStatusText.Opacity = "0";
			elementStatusBackground.Opacity = "0";
			objWMVPlayback.Visibility="Visible";
			//ICI il faudrait mettre du code pour faire un Countdown si possible
		}		
}

function actBufferControl(sender, args) {
		var objWMVPlayback = sender.findName("objMediaplayer");
		var strBufferStatus = objWMVPlayback.currentState;	
		var strProgressStatus = Math.round((objWMVPlayback.bufferingProgress)*100);
		var strStatusText = document.getElementById("SilverlightControl").content.findName("objStatusText");
	
		if(strBufferStatus == "Buffering") {			
			strStatusText.text = "Buffering: "+(strProgressStatus)+"%";
			// Updates Buffer Display during Buffering
		}	
	if (strProgressStatus == 100){
			  			// This means that the Video has Finished Buffering
	}	
}

function actFinishedPlay(sender, args) {
		var objWMVPlayback = sender.findName("objMediaplayer");
		var strBufferStatus = objWMVPlayback.currentState;	
		// Player Has Finished Playing Event
		//alert("Player Finished Playing");
		onSilverLightAdvertised();
		playLive();
}

function actFailedtoload(sender, args) {
		var objWMVPlayback = sender.findName("objMediaplayer");
		var strBufferStatus = objWMVPlayback.currentState;	
		// Player Has Failed to Load Media
		onSilverLightAdvertised();
		playLive();
}

function actClicked(sender, args) {
		var objWMVPlayback = sender.findName("objMediaplayer");
		var strBufferStatus = objWMVPlayback.currentState;	
		
		// Player Has Been CLICKED... You can then Run Ad Server 
		//ClickThru Code
		//alert("Player Was Clicked");
		if (linkURL != "" && linkURL != null && linkURL != undefined)
			window.open(linkURL);
}

// TOOL FUNCTIONS
function genCacheBusterUrl (myurl){
	var finalurl = "";
	var locRannum = String(Math.floor(Math.random()*987654321));
	//locRannum = locRannum.substring(2);
	finalurl = myurl + "?" + locRannum;
	return(finalurl);
}