// Default Handlers

function defaultStartSlateHandler(backgroundImage) {
	var str = '';
	str += '<img id="cnnStartSlateImg" src="'+ backgroundImage +'" width="384" height="216">';
	str += '<div id="playDiv">';
	str += '<a href="javascript:VideoPlaylistManager.getInstance().advanceTo(\''+ VideoPlaylistManager.getInstance().activePlaylist +'\',0)">';
	str += '<div id="play_button_ht">';
	str += '<img id="playImg" border="no" src="http://i.cdn.turner.com/cnn/video/bvp/images/play_HT_off.png">';
	str += '</div>';
	str += '</a>';
	str += '</div>';
	return str;
}

function defaultEndSlateHandler(backgroundImage) {
	var str = '';
	str += '<div id="errorDiv" style="padding: 5px; text-align: center;">';
	str += '<div style="width: 270px; margin: 70px auto 0; color: #222; background-color: #999;">';
	str += '<div style="width: 270px; height: 22px; background: transparent url(http://i.cdn.turner.com/nascar/.element/img/2.0/global/video/hdr_videoMsg.gif);"></div>';
	str += '<div style="padding: 5px;">Your video experience has ended.<br><br>Please select another video or <a href="javascript:window.close();" style="padding-left:0;background:inherit;">close this window</a>.</div>';
	str += '</div>';
	str += '</div>';
	return str;
}

function defaultErrorSlateHandler(errorObject) {
	var str = str2 = '';
	if (XMPPlaylistManager.getInstance().SAConfiguration.videoDivId != 'cnnXMPhome') {
		if (errorObject.message.indexOf('PlugInNotFoundError') > -1) { 
			// missing plugin error, only gonna be flash right now
			str += '<div style="border: 1px solid #900; margin: 70px auto 0; width: 250px;">';
			str += '<div style="padding:4px;color:#fdd;background-color:#900;font-weight:bold;">'+ errorObject.innerError.plugIn.displayName +'</div>';
			str += '<div style="color: #900;background-color: #fdd;padding: 5px;">The PlugIn was not found.<br />The plugin can be downloaded at:';
			str += '<br /><br /><a href="'+ errorObject.innerError.plugIn.downloadUrl +'" style="color:#900;background:inherit;font-weight:bold;" target="_blank">'+ errorObject.innerError.plugIn.downloadUrl +'</a></div>';
			str += '</div>';
		} 
		else {
			if ( errorObject.getContext() == 'Connection timeout.' ) {
				str += '<div style="border: 1px solid #900; margin: 70px auto 0; width: 250px;">';
				str += '<div style="padding:4px;color:#fdd;background-color:#900;font-weight:bold;">CONNECTION ERROR</div>';
				str += '<div style="color: #900;background-color: #fdd;padding: 5px;">The connection timed out after attempting to connect for several secounds.';
				str += '<br /><br /><a href="javascript:window.location.reload();" style="color:#900;background:inherit;font-weight:bold;">Try to connect again</a></div>';
				str += '</div>';
			}
			else if ( errorObject.getContext() == 'Connecting to media.' ) {
				str += '<div style="border: 1px solid #900; margin: 70px auto 0; width: 250px;">';
				str += '<div style="padding:4px;color:#fdd;background-color:#900;font-weight:bold;">CONNECTION ERROR</div>';
				str += '<div style="color: #900;background-color: #fdd;padding: 5px;">The connection timed out after attempting to connect for several secounds.';
				str += '<br /><br /><a href="javascript:window.location.reload();" style="color:#900;background:inherit;font-weight:bold;">Try to connect again</a></div>';
				str += '</div>';
			}
			else {
				str += '<div style="border: 1px solid #900; margin: 70px auto 0; width: 250px;">';
				str += '<div style="padding:4px;color:#fdd;background-color:#900;font-weight:bold;">GENERAL ERROR</div>';
				str += '<div style="color: #900;background-color: #fdd;padding: 5px;">A general error has occurred.</div>';
				str += '<div style="display: none;">'+ errorObject.getContext() +'</div>';
				str += '</div>';
			}
		}
		str2 = '<div id="errorDiv" style="padding: 2px; text-align: center; color: #FFFFFF;">'+ str +'</div>';
	}
	return str2;
}

function defaultUpdateContentHandler() {
	// intentionally left blank
}

function defaultMidSlateHandler( backgroundImage ) {
	return '<img id="cnnMidSlateImage" src="'+ backgroundImage +'" width="464" height="240" onload="xmpStartMidSlateTimer()">';
}

// additional handlers that might be reused but weren't part of the core 4 basic examples

function defaultEndSlateHandlerReplayEntirePlaylist(backgroundImage) {
	alert('default end slate handler replay entire playlist');
	str = "<img id='cnnEndSlateImg' src='"+backgroundImage+"' width='384' height='216'>";
	str += '<div id="replayButton"><a onmouseover="flipBVPImage(\'replay\',\'rply_sm\',\'on\',\'_ht\');" onmouseout="flipBVPImage(\'replay\',\'rply_sm\',\'off\',\'_ht\');" href="javascript:XMPPlaylistManager.getInstance().advanceTo(\''+XMPPlaylistManager.getInstance().activePlaylist+'\',0)"><div id="replay_button_ht"><img id="replayImg" border="no" src="http://i.cdn.turner.com/cnn/video/bvp/images/rply_sm_off.png"></div></a></div>';
	return str;
}

function defaultBootErrorSlateHandler(errorObject) {
	if (XMPPlaylistManager.getInstance().SAConfiguration.videoDivId != 'cnnXMPhome') {
		if (errorObject.message.indexOf('PlugInNotFoundError') > -1) { // missing plugin error, only gonna be flash right now
			var str = "<b>"+errorObject.plugIn.displayName+":</b> The PlugIn was not found.<br><br>The plugin can be downloaded at<br><br>";
			str += '<a href="'+errorObject.plugIn.downloadUrl+'" target="_blank">'+errorObject.plugIn.downloadUrl+'</a>';
		}
		document.getElementById(XMPPlaylistManager.getInstance().SAConfiguration.videoDivId).innerHTML = '<div id="errorDiv" style="padding: 2px; text-align: center; color: #FFFFFF;">'+str+'</div>';
	}
}

function xmpStartMidSlateTimer() {
	setTimeout('XMPPlayer.getInstance().advance()', 5000)
}