var cnnIsIntl = false;
var clickID = 2200;

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) {
	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']);
	}
}

//moneyoverride:
sCodeLink = 'http://i.cdn.turner.com/money/javascript/omniture/s_code_remote.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 getSectionInfo(section)
{
	var obj = {name:'', uri:''};

	switch(section)
	{
		case '/video/luxury':
			obj.name = 'Luxury';
			obj.uri = section;
			break;

		case '/video/markets':
			obj.name = 'Markets';
			obj.uri = section;
			break;

		case '/video/moneymag':
			obj.name = 'Money Magazine';
			obj.uri = section;
			break;

		case '/video/news':
			obj.name = 'Business News';
			obj.uri = section;
			break;

		case '/video/pf':
			obj.name = 'Personal Finance';
			obj.uri = section;
			break;

		case '/video/fortune':
			obj.name = 'Fortune';
			obj.uri = section;
			break;

		case '/video/smallbusiness':
			obj.name = 'Small Business';
			obj.uri = section;
			break;

		case '/video/technology':
			obj.name = 'Technology';
			obj.uri = section;
			break;

		//legacy
	 	case '/video/fsb':
			obj.name = 'Small Business';
			obj.uri = '/video/smallbusiness';
			break;

		default:
			if(section.indexOf('autos') != -1) {
				obj.name = 'Luxury';
				obj.uri = '/video/luxury';
			}
			else if(section.indexOf('business2') != -1) {
				obj.name = 'Business 2.0';
				obj.uri = '/video/fortune';
			}
			else {
				obj.name = 'Business News';
				obj.uri = '/video/news';
			}
			break;
	}

	return obj;
}


function initializeVideo() {
	var config = new StandAloneVideoConfiguration();
	CNNPlaylistManager.getInstance(config.playlistName).controller = new CoreVideoControls('controlsContainer');

	var c = CNNPlaylistManager.getInstance(config.playlistName).controller;	
	/* new style */
	c.addButton('play', CoreVideoControls_Play.init, 'Play_Disabled_BVP', 'Play_ActiveOff_BVP', 'Play_ActiveOff_BVP', CoreVideoControls_Play.clickEvent);
	c.addButton('pause', CoreVideoControls_Pause.init, 'Pause_Disabled_BVP','Pause_ActiveOff_BVP','Pause_ActiveOff_BVP', CoreVideoControls_Pause.clickEvent);
	c.addButton('share', CoreVideoControls_Share.init, 'Share_Disabled_BVP','Share_ActiveOff_BVP','Share_ActiveOff_BVP', CoreVideoControls_Share.clickEvent);
	c.addButton('volume', CoreVideoControls_VolumeButton.init, 'Volume_Disabled_BVP','Volume_Semi_BVP','Volume_Full_BVP', CoreVideoControls_VolumeButton.clickEvent);	
	c.addScrubber('volume', CoreVideoControls_VolumeScrubber.init, 'VolumeTrackBackground_BVP',	'VolumeTrackBuffer_BVP','VolumeHandlerBacker_BVP',null,'VolumeHandlerEnabled_BVP',CoreVideoControls_VolumeScrubber.slideChangeEvent, CoreVideoControls_VolumeScrubber.slideChangeEvent);	
	c.addButton('mute', CoreVideoControls_MuteButton.init, 'Mute_Disabled_BVP','Mute_ActiveOff_BVP','Mute_ActiveOff_BVP', CoreVideoControls_MuteButton.clickEvent);
	c.addScrubber('timeline', CoreVideoControls_Timeline.init, 'TimelineTrackBackground_BVP', 'TimelineTrackBuffer_BVP', 'TimelineHandlerBacker_BVP', 'TimelineHandlerDisabled_BVP', 'TimelineHandlerEnabled_BVP', CoreVideoControls_Timeline.slideEvent, CoreVideoControls_Timeline.changeEvent);
	c.addClock('time and duration', CoreVideoControls_Clock.init, 'TimeSpent_BVP','Duration_BVP','TimeSep_BVP');	

	c.initialize(function() { });

	if (isOnsite) {
		config.omnitureAccount = 'cnn2global';
		config.omnitureTriggerCommand = 'CNN.EVPOnsiteDomOmnitureTriggerCommand';
	} else {
		config.omnitureAccount = 'cnn2globaloffsite';
		config.omnitureTriggerCommand = 'CNN.EVPDomOmnitureTriggerCommand';
	}

	config.videoArray = new Array(argAr['vid']+'.json');
	config.videoDivId = 'videoDisplay';
	config.contentDivId = 'cnnVidText';
	config.adDivId = 'cnnVPAd';
	config.overrideVideoAd = false;

	//override with money
	config.omnitureAccount = 'aolturnercnnmoney'
	config.omnitureTriggerCommand = 'CNN.BVPOmnitureTriggerCommand';

	//config.loadSynchUnit = true;
	config.loadSynchUnit = false;

	//config.adPattern = '/.element/script/3.0/video/evp/adPatterns/adsAndSlates.json';
	config.adPattern = '/.element/script/3.0/video/evp/adPatterns/noAdsWithSlates.json';

	config.bootErrorHandler = defaultBootErrorSlateHandler;
	config.errorSlateHandler = defaultErrorSlateHandler;
	config.controlsHandler	= function(m,a) {
		return ((navigator.appName.indexOf("Microsoft") != -1) ? window["XMPFlashControls"] : document["XMPFlashControls"])[m](a);
	}
	
	config.updateContentHandler = function(dataObject) {
		var str = '';
		var activePlaylist = CNNPlaylistManager.getInstance().activePlaylist;
		if(dataObject.headline != null)
		{
			str = '<div class="bvp_deschead">';
			str += '<h1>' + ((dataObject.headline != null) ? dataObject.headline : '') + '</h1>';
			str += '	<span class="bvp_desctimestamp">'+((dataObject.dateCreated != null) ? dataObject.dateCreated : '') + '</span>';
//			str += '	<a href="http://money.cnn.com'+getSectionInfo(dataObject.section).uri+'" target="_top">'+ getSectionInfo(dataObject.section).name+'</a>';
			str += '</div>';
			str += '<div class="bvp_desctext">'+((dataObject.description != null) ? dataObject.description : '');
			str += '</div>';
			clickTitle = dataObject.headline;
			clickURL = ((window.location.href.split("/"))[2])+'/video/?/'+dataObject.id.slice(1,dataObject.id.length);
			commonLoc="&fb=Y&url="+escape(getClickURL())+"&title="+escape(getClickTitle())+"&random="+Math.random()+"&partnerID="+partnerID+"&expire="+escape(getClickExpire());
		}
		
		document.getElementById(CNNPlaylistManager.getInstance().SAConfiguration.contentDivId).innerHTML = str;
	}
	
	config.startSlateHandler = function(backgroundImage) {
		var str = '';
		CNNPlaylistManager.getInstance().controller.enablePlay(true);
		str = '<div id="slateStart">';
		str += '	<img id="startSlateBgImage" src="'+backgroundImage+'" width="384" height="216">';
		str += '	<div id="initPlayButton">';
		str += '		<a href="javascript:CNNPlaylistManager.beginPlayback();">';
		str += '			<img id="playImg" src="http://i.cdn.turner.com/money/video/bvp/images/1.gif" />';
		str += '		</a>';
		str += '	</div>';
		str += '</div>';

		return str;
	}
	
	config.endSlateHandler = function(backgroundImage) {
		callControllerMethod('endSlateStarted', true);

		var str = '';
		str += '<div id="slateEnd">';
		str += '	<img id="endSlateBgImage" src="'+backgroundImage+'"  width="384" height="216" />';
		str += '	<div class="cnnSlateBottom">';
		str += '		<div id="replayButton">';
		str += '			<div id="replay_button_ht">';
		str += '				<a href="javascript:evpReplay()">';
		str += '					<img id="playImg" src="http://i.cdn.turner.com/money/video/bvp/images/1.gif" />';
		str += '				</a>';
		str += '			</div>';
		str += '			<a href="javascript:evpReplay()"> REPLAY </a>';
		str += '		</div>';
		str += '		<div id="cnnSlateBlockBot" class="cnnSlateBlock">';
		str += '			<a href="http://money.cnn.com/video/" target="_top">See all CNNMoney.com video</a>';
		str += '		</div>';
		str += '	</div>';
		str += '</div>';

		return str;
	}

	CNNPlaylistManager.getInstance(config.playlistName).SALoadVideo(config);
}

function initializeCallback() {}

function evpReplay() {
	CNNPlaylistManager.getInstance().advanceTo(CNNPlaylistManager.getInstance().activePlaylist,(CNNPlaylistManager.getInstance().playlists[CNNPlaylistManager.getInstance().activePlaylist].jsonList.length-1));
}

