// Global Configuration Options for Ascent Player

var apPath = '/resources/ascentplayer'; // path to ascent player folder
var uiPath = '/ascentplayer'; // path to local override folder, where UI instances are stored

var mainUI = 'resoundUI-v3.swf'; // name of swf (in above folder) to use for main UI

// dimensions of main UI
//var mainUIWidth = 216;
//var mainUIHeight = 100;

var mainUIWidth = 395;
var mainUIHeight = 75;


var detachedUI = 'resoundDetachedUI-v3.swf'; // name of swf (in above folder) to use for detached UI

// dimensions of detachedUI
var detachedUIWidth = 375;
var detachedUIHeight = 100;


var popupTitle = "RESOUNDworship.org Player";

// write callback functions here, and they'll be available in either player state....

// callback javascript functions

var playCallbackFn = 'playCallback';
var stopCallbackFn = 'stopCallback';
var pauseCallbackFn = 'pauseCallback';
var resumeCallbackFn = 'resumeCallback';
var finishCallbackFn = 'finishCallback';
var statusCallbackFn = 'statusCallback';

// callback URL (made from flash)
// all callbacks are posted to this script - it's assumed it will pull out the variables...
var callbackUrl = '/playerlog';

function playCallback(obj) {
	
	//example: Call a google analytics event for the track....
	// obviously relies on google analytics being pre-loaded on the page...
	
	if(isPopup) {
		window.opener.addClass(obj.currentId);
	} else {
		addClass(obj.currentId);	
	}
	
	if (_gaq) {
		_gaq.push(['_trackEvent', 'Audio', 'Play', obj.currentTitle]);
	} 
	
}

function stopCallback(obj) {
	
	//example: Call a google analytics event for the track....
	// obviously relies on google analytics being pre-loaded on the page...
	
	if(isPopup) {
		window.opener.removeClass(obj.currentId);
	} else {
		removeClass(obj.currentId);	
	}
	
	pos = parseInt(obj.playPosition / 1000);
	
	if (_gaq) {
		_gaq.push(['_trackEvent', 'Audio', 'Stop', obj.currentTitle, pos]);
	} 
	
}

function pauseCallback(obj) {
	
	//example: Call a google analytics event for the track....
	// obviously relies on google analytics being pre-loaded on the page...
	
	if (_gaq) {
		_gaq.push(['_trackEvent', 'Audio', 'Pause', obj.currentTitle]);
	} 
	
}

function resumeCallback(obj) {
	
	//example: Call a google analytics event for the track....
	// obviously relies on google analytics being pre-loaded on the page...
	if (_gaq) {
		_gaq.push(['_trackEvent', 'Audio', 'Resume', obj.currentTitle]);
	} 
} 

function finishCallback(obj) {
	
	//example: Call a google analytics event for the track....
	// obviously relies on google analytics being pre-loaded on the page...
	if(isPopup) {
		window.opener.removeClass(obj.currentId);
	} else {
		removeClass(obj.currentId);	
	}
	
	if (_gaq) {
		_gaq.push(['_trackEvent', 'Audio', 'Finish', obj.currentTitle]);
	} 
	
}


function statusCallback(obj) {
	
	if(obj.isPlaying) {
		
		if(isPopup) {
			window.opener.addClass(obj.currentId);
		} else {
			addClass(obj.currentId);	
		}
		
	} 

}

function openLink(url) {
	
	if(isPopup) {
		if (window.opener) {
			window.opener.location = url;
		} else {
			window.open(url);	
		}
	} else {
		window.location = url;	
	}
	
}

function addClass(id) {
	$('.btn' + id).addClass('playing');
}


function removeClass(id) {
	$('.btn' + id).removeClass('playing');
}

function togglePlay(data) {
	//alert(data);
	//alert(data[2]);
	if ($('.btn' + data[2]).hasClass('playing')) {
		stop();	
	} else {
		setTrack(data[0], data[1], data[2], data[3]);	
	}
}

function togglePlayJson(data) {
	togglePlay($.parseJSON(data));
}


function togglePlayOld(title, url, id) {
	if ($('.btn' + id).hasClass('playing')) {
		stop();	
	} else {
		setTrack(title, url, id);	
	}
}
