//
// Media Center Video Player
//
(function(jQuery) {
//
// plugin definition
//
jQuery.fn.mcPlayer = function(options) {

// Uncomment line below if you do not use jquery.mediacenter.js
	jQuery.require("js/v2/_src/jquery.rater.js");

	// work out main settings (without metadata) - only do this work once per plugin call
	var main_opts = jQuery.extend({}, jQuery.fn.mcPlayer.defaults, options);
 
	// iterate and reformat each matched element
	return this.each(function() {
		$this = jQuery(this);

		// if metadata is present, extend main_opts, otherwise just use main_opts
		var o = jQuery.meta ? jQuery.extend({}, main_opts, $this.data()) : main_opts;

		jQuery.fn.mcPlayer.setPlayer(o);

		var player = jQuery("#" + o.params.objectDiv, o.playerDiv).get(0);

//		jQuery(document).unbind('play.video').bind('play.video', function(e, data) {
		jQuery(document).bind('play.video', function(e, data) {

			jQuery.fn.mcPlayer.setVideo(player, data, o);

			player.SetVariable("player:jsPlay", "");
		});

//		jQuery(document).unbind('set.video').bind('set.video', function(e, data) {
		jQuery(document).bind('set.video', function(e, data) {
			jQuery.fn.mcPlayer.setVideo(player, data, o);
			// Store Video data
//			$this.data("video", o.video);
		});
		// Wait for FLV player to be ready
//		setTimeout('jQuery(document).trigger("player.ready")',750);
//	jQuery(document).trigger("player.ready", {});
		window.setTimeout("jQuery.fn.mcPlayer.testPlayerReady()",450);

	});
};

jQuery.fn.mcPlayer.testPlayerReady = function() {
//		alert('Player Ready');
		jQuery(document).trigger("player.ready");
};


jQuery.fn.mcPlayer.setVideo = function (player, data, o) {
//DP_Debug.logWarning("mcChannelList: ON load");
	// Set Video
	player.SetVariable("player:jsStop", "");

	player.SetVariable("player:jsUrl", data.video.link);
//	player.SetVariable("player:jsUrl", data.video.link + "&r=" + new Date().getTime());

//	player.SetVariable("player:jsTitle", '\n\n\n\n\n'+data.video.title);

	player.SetVariable("player:jsStartImage", 'http://www.sportweek.fr/commun/n500x310/'+data.video.img);

	// Bug du player Start et Stop permet de mettre à jour l'image de la vidéo
//	player.SetVariable("player:jsPlay", "");
//	player.SetVariable("player:jsStop", "");

//	setTimeout('void(0)", {})',150);
	jQuery(o.videoTitleDiv).html(data.video.title);
	jQuery(o.videoDescDiv).html(data.video.description);

	// Update Video Rating
	jQuery('#mcVideoRater').rater({
		id		: data.video.guid,
		rating	: data.video.rank*1,
		labels	: ['Nul !', 'Mediocre', 'Moyen', 'Bien', 'Excellent !'],
		url		: 'setRank.php'
	});

	// Update Copyright
	jQuery(o.videoCopyright).empty();
	jQuery(o.videoCopyright).html('Copyright: '+data.video.copyright);
};



//
// Create Player Code and insert it into Page
//
jQuery.fn.mcPlayer.setPlayer = function(o) {
	var code = o.playerCode;
	var reg;
	jQuery(o.playerDiv).empty(); 
	jQuery.each( o.params, function(_key, _val){
		reg = new RegExp('%%'+_key+'%%', "g");
		code = code.replace(reg, _val);
	});
	jQuery(code).appendTo(o.playerDiv);
};

/*
 *	Default values
 */
jQuery.fn.mcPlayer.defaults = {
	//Divs
	playerDiv			: "#mcPlayer",
	videoDescDiv		: "#mcVideoDesc",
	videoRatingDiv		: "#mcVideoRating",
	videoCopyright		: "#mcVideoCopyright",
	videoTitleDiv		: "#mcVideoTitle",
	autoscroll			: true,
	
	// FLV Player params 
	playerCode			: '<object id="%%objectDiv%%" type="application/x-shockwave-flash" data="player_flv_maxi.swf' + "?r=" + new Date().getTime()+'" width="%%pwidth%%" height="%%pheight%%"><param name="movie" value="player_flv_maxi.swf' + "?r=" + new Date().getTime()+'" /><param value="transparent" name="wmode"/><param name="allowFullScreen" value="true" /><param name="FlashVars" value="margin=%%margin%%&amp;flv=%%flv%%&amp;title=%%title%%&amp;startimage=%%startimage%%&amp;width=%%pwidth%%&amp;height=%%pheight%%&amp;autoload=%%autoload%%&amp;volume=%%volume%%&amp;bgcolor=%%bgcolor%%&amp;bgcolor1=%%bgcolor1%%&amp;bgcolor2=%%bgcolor2%%&amp;showstop=1&amp;showvolume=1&amp;showtime=0&amp;showplayer=%%showplayer%%&amp;showfullscreen=1&amp;playercolor=%%playercolor%%&amp;loadingcolor=%%loadcolor%%&amp;buttoncolor=%%btncolor%%&amp;buttonovercolor=%%btncolorhover%%&amp;slidercolor1=%%slidercolor1%%&amp;slidercolor2=%%slidercolor2%%&amp;sliderovercolor=%%slidercolorhover%%&amp;buffermessage=Chargement _n_&amp;titlesize=24&amp;ondoubleclick=fullscreen&amp;top1=http://www.sportweek.fr/images/sportweek-video.png|75|0&amp;showiconplay=1&amp;iconplaybgalpha=50&amp;videobgcolor=%%videobgcolor%%&amp;showtitleandstartimage=0" /></object>',

	params				: {
		objectDiv			: "mcFLVPlayer",
//		flv					: "videos/intro.flv",
		flv					: "",
		title				: "SportweekTV",
		startimage			: "images/v2/intro600-red.jpg",
//		startimage			: "",
		showplayer			: "always",
		pwidth				: 608,
		pheight				: 363,
		autoload			: 1,
		volume				: 100,
		margin				: 0,
		bgcolor				: "222222",
		bgcolor1			: "333333",
		bgcolor2			: "000000",
		playercolor			: "333333",
		loadcolor			: "cc0200",
		btncolor			: "ffffff",
		btncolorhover		: "ff0200",
		slidercolor1		: "5a5757",
		slidercolor2		: "000000",
		slidercolorhover	: "cc0200",
		videobgcolor		: "000000"
	}
};

//
// end of closure
//
})(jQuery);