/**
 * CLASS		jmplayer
 * @description	unobtrusively applies MP3 playback for links that has class="jmtrack"
 * @author		Jason Matthews
 * @date		January, 28, 2009
 * @param		url {string} this is assign based on href attribute
 * @param		sender {string} id of the link that is sending the play request
 * @dependents	player.swf, SWFObject.js, jquery.js
 */
var jmplayer = {
	play: function(url,sender){
		var sender = $(sender);
		
		if (sender.hasClass("jmtrack")) {
			if ($("#jmplayer_div").length < 1 ){ //create a container for the flash player
				$("body").append('<style type="text/css">#jmplayer_div{width:1px;height:1px;overflow:hidden;}</style><div id="jmplayer_div"><div id="jmplayer_obj">player</div></div>');
			}			
			var offset = sender.offset();
			//JM move into window view. Flash doesnt play if flash object is not visible
			$("#jmplayer_div").css("left","" + offset.left + "px").css("top","" + offset.top + "px").css("position","absolute");

			$(".jmplaying").addClass("jmtrack").removeClass("jmplaying");
			
			var attributes = {};
			var flashvars = {};
			flashvars.autostart = "true";
			flashvars.file = url;
			
			var params = {};
			params.menu = "false";
			params.allowscriptaccess = "always";
			params.autostart = "true";
			params.wmode = "transparent";
			params.bgcolor = "#FFFFFF";
			swfobject.embedSWF("player.swf", "jmplayer_obj", "1", "1", "9.0.0","expressInstall.swf", flashvars, params, attributes);

			sender.removeClass("jmtrack").addClass("jmplaying");
		}else{
			$("#jmplayer_div").html('<div id="jmplayer_obj">player</div>');
			sender.removeClass("jmplaying").addClass("jmtrack");
		}
	},
	init: function () {
		$(".jmtrack").click(function() { 
			//this.target="_blank";
			if (swfobject.hasFlashPlayerVersion("7")) {
				jmplayer.play(this.href,this);
				return false; 
			}			
		});
	}
}
