/*
	Title: ChookTV JavaScript [Version 2.51]
	Author: Tim Keir
	Created: 3/2/2008
	Modified: 16/06/2010
	
	Copyright © 2010 Internet Design Studios Pty Ltd, All Rights Reserved
	http://www.chookdigital.com/
*/



// Embed Variables
var swfPath;
var eiSwfPath;
var BGColour = "#FFFFFF";
var ChookTVDebug = false;

// Declare Variables
var ParentID = '';
var ChannelID = '';
var VideoID = '';
var PlaylistID = '';
var Bitrate = '';
var SettingsURL = '';
var VideoURL = '';

// Container Variables
var Container;
var ContainerBG = '';
var ContainerWidth;
var ContainerHeight;
var ContainerURL;
var CoreURL;
var ContainerType;
var CoreURL = '';

// Playback and Tracking Variables
var scCI;
var scCG;
var PlaylistDisplay;
var ThumbnailURL;
var AutoPlay = false
var AutoPlayNext = true
var useSwfAddress = true;
var ShortSwfAddress = false;
var DeviceType;
var Hash;

// Video Player Variables
var VideoPlayer;
//var Domain = (document.domain == "internal.idstudios.net") ? 'http://internal.idstudios.net/'+Site+'/' : 'http://'+document.domain+'/';
var Domain = (document.domain == "internal.idstudios.net") ? 'http://internal.idstudios.net/'+Site+'/' : 'http://www.'+Site+'/';



// ---------------------------------------------------------------------
// Load & UnLoad Functions
// ---------------------------------------------------------------------

// Load Functions
function Hello() {
}

// Unload Functions
function Goodbye() {
	new Ajax.Request(
		ContainerURL + 'Core/XML/Tracking.asp?Type=StopVideo&Duration=' + GetCurrentTime(),
		{method:'post',asynchronous:true}
	);
}

// ---------------------------------------------------------------------
// Prepare & Render ChookTV (SWF) Functions
// ---------------------------------------------------------------------

// Render Player (Method)
function RenderChookTV(div) {
	// Prepare Container (Get Settings/Dimensions)
	PrepareContainer(div);
	// Define swf locations
	//swfPath = CoreURL + "cdwm/Container.swf"; //+ "?nc=" + new Date().getTime();
	swfPath = CoreURL + "modules/Container.swf";
	eiSwfPath = ContainerURL + "modules/ExpressInstall.swf";
	// Check which version of swfObject to use and then embed
	if(typeof swfobject != "undefined") embedUsingSwfObject2(div);
	else if(typeof SWFObject != "undefined") embedUsingSwfObject(div);
	else alert("ChookTV: Incorrect or missing version of swfObject in use.");	
}

// Embed Flash using swfObject 2.0
function embedUsingSwfObject2(div) {
	if(ChookTVDebug) alert("swfObject 2");
	// Set Flash variables
	var flashvars = {
	  ParentID: ParentID,
	  ChannelID: ChannelID,
	  VideoID: VideoID,
	  PlaylistID: PlaylistID,
	  Bitrate: Bitrate,
	  ContainerBG: ContainerBG,
	  ContainerURL: ContainerURL,
	  CoreURL: CoreURL,
	  ContainerType: ContainerType,
	  CoreURL: CoreURL,
	  SettingsURL: SettingsURL,
	  scCI: scCI,
	  scCG: scCG,
	  PlaylistDisplay: PlaylistDisplay,
	  Thumbnail: ThumbnailURL,
	  AutoPlay: AutoPlay,
	  AutoPlayNext: AutoPlayNext,
	  SwfAddress: useSwfAddress,
	  ShortSwfAddress: ShortSwfAddress,
	  DeviceType: DeviceType,
	  VideoURL: VideoURL,
	  Hash: Hash
	};
	// Set Flash Parameters
	var params = {
	  menu: "false",
	  scale: "noscale",
	  salign: "t",
	  allowFullScreen: "true",
	  allowScriptAccess: "always",
	  bgcolor: BGColour,
	  wmode: "opaque"
	};
	// Set Flash Attributes
	var attributes = {
	  id: "ChookPlayer",
	  name: "ChookPlayer"
	};
	// Embed Flash
	swfobject.embedSWF(swfPath, div, ContainerWidth, ContainerHeight, "9.0.0", eiSwfPath, flashvars, params, attributes);
}

// Embed Flash using swfObject 1.5
function embedUsingSwfObject(div) {
	if(ChookTVDebug) alert("swfObject 1.5");
	// Embed Flash
	var so = new SWFObject(swfPath, "ChookPlayer", ContainerWidth, ContainerHeight, "9.0.28", BGColour);
		so.useExpressInstall(eiSwfPath);
		// Set Flash variables
		so.addVariable("ParentID", ParentID);
		so.addVariable("ChannelID", ChannelID);
		so.addVariable("VideoID", VideoID);
		so.addVariable("PlaylistID", PlaylistID);
		so.addVariable("Bitrate", Bitrate);
		so.addVariable("ContainerBG", ContainerBG);
		so.addVariable("ContainerURL", ContainerURL);
		so.addVariable("CoreURL", CoreURL);
		so.addVariable("ContainerType", ContainerType);
		so.addVariable("CoreURL", CoreURL);
		so.addVariable("SettingsURL", SettingsURL);
		so.addVariable("scCI", scCI);
		so.addVariable("scCG", scCG);
		so.addVariable("PlaylistDisplay", PlaylistDisplay);
		so.addVariable("Thumbnail", ThumbnailURL);
		so.addVariable("AutoPlay", AutoPlay);
		so.addVariable("AutoPlayNext", AutoPlayNext);
		so.addVariable("SwfAddress", useSwfAddress);
		so.addVariable("ShortSwfAddress", ShortSwfAddress);
		so.addVariable("DeviceType", DeviceType);
		so.addVariable("VideoURL", VideoURL);
		so.addVariable("Hash", Hash);
		// Set Flash Parameters
		so.addParam("menu", "false");
		so.addParam("wmode", "opaque");
		so.addParam("scale", "noscale");
		so.addParam("salign", "T");
		so.addParam("allowFullScreen", "true");
		so.addParam("allowScriptAccess", "always");
		so.addParam("wmode", "opaque");
		so.write(div);
}

// Get & Clean Background Style
function PrepareContainer(div) {
	// Get Container
	Container = document.getElementById(div);
	// Get Width
	if (ContainerWidth == null) ContainerWidth = Container.style.width.replace('px','');
	// Get Height
	if (ContainerHeight == null) ContainerHeight = Container.style.height.replace('px','');
}

// Change Island (Method)
function ChangeAdvertisement(url) {
	
	//alert("Change Banners!");
	/*
	// Hack to support multiple banners until i revise the way the settings XML handles banners
	var leaderboardURL = "http://ad.au.doubleclick.net/adi/mcn.lifestylechannel.com.au/;tile=1;sz=728x90;ord=1277081054505?";
	var mrecURL = "http://ad.au.doubleclick.net/adi/mcn.lifestylechannel.com.au/;tile=2;sz=300x250;ord=1277081054508?";
	
	// Access the Banner Divs
	var leaderboardDiv = document.getElementById('ctl00_Header_Leaderboard_Banner728x90');
	var leaderboard = leaderboardDiv.getElementsByTagName('iframe')[0];
	var mrecDiv = document.getElementById('ctl00_RightCol_MedRec_Banner300x250');
	var mrec = mrecDiv.getElementsByTagName('iframe')[0];
	
	// Change Banners
	leaderboard.src = leaderboardURL;
	mrec.src = mrecURL;
	*/
	return true;
}


// Resize the Video Player and Container for use with FullPage mode (Double Size)
function ExpandVideoPlayer(nw, nh) {
	if(VideoPlayer == null) VideoPlayer = document.getElementById('ChookPlayer');
	Container.style.width = nw+'px';
	Container.style.height = nh+'px';
	VideoPlayer.style.width = nw+'px';
	VideoPlayer.style.height = nh+'px';
	return false;
}
// Having a unique Shrink function allows you to override this method to support external element resizing and repositioning
function ShrinkVideoPlayer(nw, nh) {
	return ExpandVideoPlayer(nw, nh);
}

