var cnnIsIntl = (document.cookie.indexOf('SelectedEdition=edition') > -1) ? true : false;
var clickID = (cnnIsIntl) ? 205026 : 89487;

var argAr = parseLocation();
var isOnsite = (argAr['loc'].toLowerCase() == 'onsite') ? true : false;

var sCodeLink = 'http://i.cdn.turner.com/cnn/.element/js/2.0/offsite_s_code.js';
if (isOnsite) {
	if (cnnIsIntl) {
		sCodeLink = 'http://i.cdn.turner.com/cnn/.element/js/2.0/intl_s_code.js';
	} else {
		sCodeLink = 'http://i.cdn.turner.com/cnn/.element/js/2.0/s_code.js';
	}
	if (argAr['cnnSectionName']) {
		var cnnSectionName = unescape(argAr['cnnSectionName']);
	}
	if (argAr['cnnSubSectionName']) {
		var cnnSubSectionName = unescape(argAr['cnnSubSectionName']);
	}
} else if (argAr['loc'] == 'int') {
	sCodeLink = 'http://i.cdn.turner.com/cnn/.element/js/2.0/intloffsite_s_code.js';
}

function parseLocation() {
	var turl = ''+document.location;
	turl = turl.slice(turl.indexOf('?')+1);
	ar = turl.split('&');
	var b = {vid:'undefined', loc:'dom'};

	for (var i = 0; i < ar.length; i++) {
		var c = ar[i].split('=');
		if (c[0].indexOf('vid') > -1) {
			b['vid'] = c[1];
		} else if (c[0].indexOf('loc') > -1) {
			b['loc'] = c[1];
		} else if (c[0].indexOf('cnnSectionName') > -1) {
			b['cnnSectionName'] = c[1];
		} else if (c[0].indexOf('cnnSubSectionName') > -1) {
			b['cnnSubSectionName'] = c[1];
		}
	}
	return b;
}

function initializeVideo() {

	CNNPlaylistManager.getInstance('saplaylist').controller = new CoreVideoControls('controlsDiv');
	var c = CNNPlaylistManager.getInstance('saplaylist').controller;
	c.addButton('play', CoreVideoControls_Play.init, 'Play_Disabled_HOT', 'Play_ActiveOff_HOT', 'Play_ActiveOff_HOT', CoreVideoControls_Play.clickEvent);
	c.addButton('pause', CoreVideoControls_Pause.init, 'Pause_Disabled_HOT','Pause_ActiveOff_HOT','Pause_ActiveOff_HOT', CoreVideoControls_Pause.clickEvent);
	c.addButton('embed', CoreVideoControls_Embed.init, 'Embed_Disabled_HOT','Embed_ActiveOff_HOT','Embed_ActiveOff_HOT', CoreVideoControls_Embed.clickEvent);
	c.addButton('share', CoreVideoControls_Share.init, 'Share_Disabled_HOT','Share_ActiveOff_HOT','Share_ActiveOff_HOT', CoreVideoControls_Share.clickEvent);
	c.addButton('volume', CoreVideoControls_VolumeButton.init, 'Volume_Disabled_HOT','Volume_Semi_HOT','Volume_Full_HOT', CoreVideoControls_VolumeButton.clickEvent);
	c.addScrubber('volume', CoreVideoControls_VolumeScrubber.init, 'VolumeTrackBackground_HOT',null,'VolumeHandlerBacker_HOT',null,'VolumeHandlerEnabled_HOT',CoreVideoControls_VolumeScrubber.slideChangeEvent, CoreVideoControls_VolumeScrubber.slideChangeEvent);
	c.addScrubber('timeline', CoreVideoControls_Timeline.init, 'TimelineTrackBackground_HOT', 'TimelineTrackBuffer_HOT', 'TimelineHandlerBacker_HOT', 'TimelineHandlerDisabled_HOT', 'TimelineHandlerEnabled_HOT', CoreVideoControls_Timeline.slideEvent, CoreVideoControls_Timeline.changeEvent);
	c.addClock('time and duration', CoreVideoControls_Clock.init, 'TimeSpent_HOT','Duration_HOT','TimeSep_HOT');
	c.initialize(function() { });

	var config = new StandAloneVideoConfiguration();	
	if (isOnsite) {
		if (cnnIsIntl) {
			config.omnitureAccount = 'cnnintl';
			config.omnitureTriggerCommand = 'CNN.EVPOnsiteIntlOmnitureTriggerCommand';
		} else {
			config.omnitureAccount = 'cnn2global';
			config.omnitureTriggerCommand = 'CNN.EVPOnsiteDomOmnitureTriggerCommand';
		}
	} else {
		if (argAr['loc'] == 'int') {
			config.omnitureAccount = 'cnnintloffsite';
			config.omnitureTriggerCommand = 'CNN.EVPIntlOmnitureTriggerCommand';
		} else {
			config.omnitureAccount = 'cnn2globaloffsite';
			config.omnitureTriggerCommand = 'CNN.EVPDomOmnitureTriggerCommand';
		}
	}
	config.nielsenTriggerCommand = 'CNN.EVPNielsenTriggerCommand';
	config.videoArray = new Array(argAr['vid']+'.json');					
	config.videoDivId = 'videoDisplay';		
	config.overrideVideoAd = false;		
	config.loadSynchUnit = true;
	config.bootErrorHandler = defaultBootErrorSlateHandler;
	config.adPattern = '/.element/js/2.0/video/evp/adPatterns/adsAndSlates.json';
	config.controlsHandler	= function(m,a) {
		return ((navigator.appName.indexOf("Microsoft") != -1) ? window["XMPFlashControls"] : document["XMPFlashControls"])[m](a);
	}
	config.errorSlateHandler = defaultErrorSlateHandler;

	config.updateContentHandler = function(dataObject) {
		$('evpHeadline').innerHTML = dataObject.headline;
		$('evpTime').innerHTML = '&nbsp;&nbsp;&nbsp;'+CNNPlaylistManager.getInstance().controller.calculateTime(dataObject.trt);
		$('evpDescription').innerHTML = dataObject.description;
		$('evpBottom').innerHTML = '<font style="font-size: 10px; font-weight: bold; color: #000000;">Source:&nbsp;<a style="color: #004276;" href="'+dataObject.providedBy[0].url+'" target="_blank">'+dataObject.providedBy[0].source+'</a>&nbsp;<font style="font-size: 10px; font-weight: bold; color: #dadada;">|</font>&nbsp;Added <font style="font-weight: normal;">'+dataObject.dateCreated+'</font>';
	}
	config.startSlateHandler = function(backgroundImage) {
		return '<img id="cnnStartSlateImg" src="'+backgroundImage+'" width="384" height="216"><div id="playDiv" style="position: absolute; top: 69px; left: 136px;"><a href="javascript:CNNPlaylistManager.getInstance().advanceTo(\''+CNNPlaylistManager.getInstance().activePlaylist+'\',0)"><div id="play_button_ht"><img id="playImg" border="no" src="http://i.cdn.turner.com/cnn/video/bvp/images/play_HT_off.png"></div></a></div>'; 
	}
	config.endSlateHandler = function(backgroundImage) {
		callControllerMethod('endSlateStarted', true);
		var str = '<img style="filter:alpha(opacity=60);-moz-opacity:.60;opacity:.60;" id="cnnEndSlateImg" src="'+backgroundImage+'" width="384" height="216">'; 
		str += '<div onclick="evpReplay();" onmouseover="this.className=\'endReplayOver\';" onmouseout="this.className=\'endReplay\';" class="endReplay" id="endReplay"></div>';
		str += '<div onclick="CNNPlaylistManager.getInstance().controller.buttons[\'embed\'].clickEvent();" onmouseover="this.className=\'endEmbedOver\';" onmouseout="this.className=\'endEmbed\';" class="endEmbed" id="endEmbed"></div>';
		str += '<div onclick="CNNPlaylistManager.getInstance().controller.buttons[\'share\'].clickEvent();" onmouseover="this.className=\'endShareOver\';" onmouseout="this.className=\'endShare\';" class="endShare" id="endShare"></div>';
		return str;
	}
	
	CNNPlaylistManager.getInstance('saplaylist').SALoadVideo(config);				
}

function initializeCallback() {}

function evpReplay() {
	CNNPlaylistManager.getInstance().advanceTo(CNNPlaylistManager.getInstance().activePlaylist,(CNNPlaylistManager.getInstance().playlists[CNNPlaylistManager.getInstance().activePlaylist].jsonList.length-1));
}