/*
# $Id$
*/

var ratingCast = false;
var ratingHover = false;
var rating = 0;

$(document).ready(function() {

	// Embed all video assets
	$('.lead-video div').each(function() {

		// Gather video/image sources
		var container = $(this);
		var vSrc = container.find('input').val();
		var iSrc = container.find('img').attr('src');

		// Embed SWF
		if(vSrc.match(/\.swf$/)) {
			swfobject.embedSWF(
				vSrc,
				container.attr('id'),
				"545",
				"340",
				"9.0.0",
				"/swf/expressInstall.swf", {
				}, {
					menu: "false",
					allowfullscreen: "true",
					allowscriptaccess: "always",
					wmode: "transparent"
				},{
				}
			);
		}
		else {
			swfobject.embedSWF(
				"/swf/flvplayer.swf?r=151",
				container.attr('id'),
				"545",
				"340",
				"9.0.0",
				"/swf/expressInstall.swf", {
					file: vSrc,
					image: iSrc
				}, {
					menu: "false",
					allowfullscreen: "true",
					allowscriptaccess: "always",
					wmode: "transparent"
				},{
					'class': 'flvplayer'
				}
			);
		}
	});

	// Add rating handlers
	$('#current-rating span').data('originalClass', $('#current-rating span').attr('class'))
	$('#current-rating span b').hover(function() {
		if(!ratingCast) {
			ratingHover = true;
		}
	}, function() {
		if(!ratingCast) {
			$('#current-rating span').removeClass().addClass($('#current-rating span').data('originalClass'));
			ratingHover = false;
		}
	});
	$(document).mousemove(function(ev) {
		if(ratingHover && !ratingCast) {
			var span = $('#current-rating span');
			var b = $('#current-rating span b');
			rating = Math.round((ev.clientX-b.position().left+5)/17);
			span.removeClass().addClass('stars stars'+rating);
		}
	});
	$('#current-rating span b').click(function() {

		// Submit rating to server
		if(ratingHover && !ratingCast) {
			ratingCast = true;
			$('#current-rating span b').addClass('busy');
			var url = self.location.toString();
			$.post(url, {rate:rating}, function(r) {
				$('#current-rating span').removeClass().addClass('stars stars'+rating);
				$('#current-rating span b').delay(1000, function() {
					$('#current-rating span b').removeClass('busy');
				});
			});
		}
	});

	// Add AJAX mechanics to report-comment links
	$('a[rel="report-comment"]').click(function() {

		// Submit link
		$(this).css('padding-left', 16).css('background', "url('/images/article/stars-busy.gif') no-repeat left center").html('Please wait ...');
		var _t = $(this);
		$.post(this.href, {dummy:null}, function(r) {
			_t.parent('span').html('Email sent to moderator');
			_t = null;
		});

		// Prevent bubbling
		return false;
	});
});
