//CTN Events Tracking - Javascript API v1
function defaultHandler() {return false}
function silentHandler()  {return true}
function customHandler(desc,page,line,chr)  {
 alert(
  'JavaScript error occurred! \n'
 +'The error was handled by '
 +'a customized error handler.\n'
 +'\nError description: \t'+desc
 +'\nPage address:      \t'+page
 +'\nLine number:       \t'+line
 )
 return true
}

window.onerror=silentHandler


//config server variables
var strLocalHostname = location.hostname;
switch (strLocalHostname) {
	case 'ctn.development.groovytrain.com':
		var strLocalPath = "/events_v3/";
		break;
	case 'ctn.jonah.com':
		var strLocalPath = "/events_v3/";
		break;
	case 'events.simplywebcast.com':
		var strLocalPath = "/v2/";
		break;
	case 'events.development.ctn.co.uk':
		var strLocalPath = "/events/";
		break;
	default:
		var strLocalPath = "/events/";
		break;
}

//config variables
var strTrackingURL = strLocalPath + "tracking/capture.asp";
trackingImage = new Image();

//url encode function
function fnURLEncode(strInput)
{
	// The Javascript escape and unescape functions do not correspond
	// with what browsers actually do...
	var SAFECHARS = "0123456789" +					// Numeric
					"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					"abcdefghijklmnopqrstuvwxyz" +
					"-_.!~*'()";					// RFC2396 Mark characters
	var HEX = "0123456789ABCDEF";

	var plaintext = strInput;
	var encoded = "";
	for (var i = 0; i < plaintext.length; i++ ) {
		var ch = plaintext.charAt(i);
	    if (ch == " ") {
		    encoded += "+";				// x-www-urlencoded, rather than %20
		} else if (SAFECHARS.indexOf(ch) != -1) {
		    encoded += ch;
		} else {
		    var charCode = ch.charCodeAt(0);
			if (charCode > 255) {
			    alert( "Unicode Character '" 
                        + ch 
                        + "' cannot be encoded using standard URL encoding.\n" +
				          "(URL encoding only supports 8-bit characters.)\n" +
						  "A space (+) will be substituted." );
				encoded += "+";
			} else {
				encoded += "%";
				encoded += HEX.charAt((charCode >> 4) & 0xF);
				encoded += HEX.charAt(charCode & 0xF);
			}
		}
	}

	return encoded;
};


//main tracking function
function doFlashTracking (lngEventID, lngGroupID, lngClipID, lngSlideID, lngSpeakerID, strActionName, strActionValue) {
	//alert(lngSlide);		
	var strRandomNumber = '';

	for (var n = 0; n < 10; n++) {
		strRandomNumber = strRandomNumber + Math.floor(Math.random()*10) + '';
	}

		
//	var strCaptureURL = strTrackingURL + "?guid=" + fnURLEncode(strGUID) + "&registrationID=" + lngRegistrationID + "&eventID=" + lngEventID + "&eventTypeLive=" + lngEventTypeLive + "&groupID=" + lngGroupID + "&clipID=" + lngClipID + "&slideID=" + lngSlideID + "&speakerID=" + lngSpeakerID + "&actionName=" + strActionName + "&actionValue=" + strActionValue + "&random=" + strRandomNumber;
	var strCaptureURL = strTrackingURL + "?registrationID=&eventID=" + lngEventID + "&eventTypeLive=0&groupID=" + lngGroupID + "&clipID=" + lngClipID + "&slideID=" + lngSlideID + "&speakerID=" + lngSpeakerID + "&actionName=" + strActionName + "&actionValue=" + strActionValue + "&random=" + strRandomNumber;
	trackingImage.src = strCaptureURL;
	//alert(strCaptureURL);
	//prompt("CaptureURL",strCaptureURL);

}

//main tracking function
function doTracking (strGUID, lngRegistrationID, lngEventID, lngEventTypeLive, lngGroupID, lngClipID, lngSlide, lngSpeakerID, strActionName, strActionValue) {
	//alert("doTracking");		
	var strRandomNumber = '';
	var lngSlideID='';

	if (window.slide_slideID) slide_slideID[lngSlide];
	
	for (var n = 0; n < 10; n++) {
		strRandomNumber = strRandomNumber + Math.floor(Math.random()*10) + '';
	}

		
//	var strCaptureURL = strTrackingURL + "?guid=" + fnURLEncode(strGUID) + "&registrationID=" + lngRegistrationID + "&eventID=" + lngEventID + "&eventTypeLive=" + lngEventTypeLive + "&groupID=" + lngGroupID + "&clipID=" + lngClipID + "&slideID=" + lngSlideID + "&speakerID=" + lngSpeakerID + "&actionName=" + strActionName + "&actionValue=" + strActionValue + "&random=" + strRandomNumber;
	var strCaptureURL = strTrackingURL + "?registrationID=" + lngRegistrationID + "&eventID=" + lngEventID + "&eventTypeLive=" + lngEventTypeLive + "&groupID=" + lngGroupID + "&clipID=" + lngClipID + "&slideID=" + lngSlideID + "&speakerID=" + lngSpeakerID + "&actionName=" + strActionName + "&actionValue=" + strActionValue + "&random=" + strRandomNumber;
	trackingImage.src = strCaptureURL;
	//alert(strCaptureURL);
	//prompt("CaptureURL",strCaptureURL);

}