try {
	var controlbarReady = playerReady;
} catch (err){
}

playerReady = function(obj) {
	try {
		var player = jQuery("#"+obj['id']);
		player.each(function (){
			this.addModelListener("STATE","playTracker");
			this.addControllerListener("MUTE","muteTracker");
			this.addControllerListener("VOLUME","volumeTracker");
		});
		player.addControlbar();
	} catch (err){
	}
	try {
		controlbarReady(obj);
	} catch (err){
	}
}

jQuery.fn.addControlbar = function(options) {
	var settings = jQuery.extend({
		'prefix': 'jw_controlbar',
		'elements': {
			'play': {
				'width': '37px',
				'height': '22px',
				'background-image': 'url('+siteURL+'/wp-content/themes/rac105/assets/img/playbtnm.png)',
				'float': 'left',
				'display': 'block'
			},
			'pause': {
				'width': '37px',
				'height': '22px',
				'background-image': 'url('+siteURL+'/wp-content/themes/rac105/assets/img/playbtnm.png)',
				'background-position': 'right top',
				'float': 'left',
				'display': 'none'
			},
			'volume': {
				'width': '45%',
				'float': 'left',
				'display': 'block',
				'margin': '5px'
			},
			'mute': {
				'width': '16px',
				'height': '16px',
				'float': 'left',
				'display': 'block',
				'background-image': 'url('+siteURL+'/wp-content/themes/rac105/assets/img/sound_none.png)'
			},
			'unmute': {
				'width': '16px',
				'height': '16px',
				'float': 'left',
				'display': 'none',
				'background-image': 'url('+siteURL+'/wp-content/themes/rac105/assets/img/sound_mute.png)'
			}
		}
	}, options);

	this.after(buildControlbar(settings));
	var player = this[0];
	var playerSiblings = this.siblings();
	var play = jQuery("."+settings.prefix+".play", playerSiblings);
	var pause = jQuery("."+settings.prefix+".pause", playerSiblings);
	var mute = jQuery("."+settings.prefix+".mute", playerSiblings);
	var unmute = jQuery("."+settings.prefix+".unmute", playerSiblings);
	var volume = jQuery("."+settings.prefix+".volume", playerSiblings);

	play.click(function() {
		player.sendEvent("PLAY", true);
	});

	pause.click(function() {
		player.sendEvent("PLAY", false);
	});

	mute.click(function() {
		player.sendEvent("MUTE", true);
	});

	unmute.click(function() {
		player.sendEvent("MUTE", false);
	});

	volume.slider({
		range: "min",
		min: 0,
		max: 100,
		value: player.getConfig()['volume'],
		slide: function(event, ui) {
			player.sendEvent("VOLUME", ui.value);
		}
	});
};

function buildControlbar(settings) {
	var result = '';
	result += '<div id="controlBar" class="'+settings.prefix+'" style="width:200px">';
	for (element in settings.elements) {
		var style = '';
		for (styleElement in settings.elements[element]){
			style += styleElement+':'+settings.elements[element][styleElement]+';';
		}
		if (element == 'volume')
			result += '<div class="volumeWrapper">';

		result += '<div class="'+settings.prefix+' '+element+'" style="'+style+'">&nbsp;</div>';

		if (element == 'volume')
			result += '</div>';
	}
	result += '</div>';
	return result;
}

function play(player) {
	player.sendEvent("PLAY");
	return false;
}

function playTracker(obj) {
	var player = jQuery("#"+obj['id']);
	var playerSiblings = player.siblings();
	if (obj.newstate == "PLAYING") {
		jQuery(".jw_controlbar.pause", playerSiblings).css("display","block");
		jQuery(".jw_controlbar.play", playerSiblings).css("display","none");
	} else {
		jQuery(".jw_controlbar.pause", playerSiblings).css("display","none");
		jQuery(".jw_controlbar.play", playerSiblings).css("display","block");
	}
}

function muteTracker(obj) {
	var player = jQuery("#"+obj['id']);
	var playerSiblings = player.siblings();
	if ( ! obj.state) {
		jQuery(".jw_controlbar.mute", playerSiblings).css("display","block");
		jQuery(".jw_controlbar.unmute", playerSiblings).css("display","none");
		setVolume(jQuery(".jw_controlbar.volume", playerSiblings), player[0].getConfig()['volume']);
	} else {
		jQuery(".jw_controlbar.mute", playerSiblings).css("display","none");
		jQuery(".jw_controlbar.unmute", playerSiblings).css("display","block");
		setVolume(jQuery(".jw_controlbar.volume", playerSiblings), 0);
	}
}

function volumeTracker(obj) {
	var player = jQuery("#"+obj['id']);
	var playerSiblings = player.siblings();
	setVolume(jQuery(".jw_controlbar.volume", playerSiblings),obj.percentage);
}

function setVolume(slider, value) {
	slider.slider('option', 'value', value);
}
