/**
*	Next Contests Plugin
*	
*	@author Iurie Safonov ( iurie.safonov@gmail.com )
*	@version $Id: contests.js,v 1.3 2010-03-04 16:14:26 adu Exp $
*/

(function($) {                                         
$.fn.contests = function(o) {   
    o = $.extend({
		captchaPath : '/images/captcha.jpg.php'
	}, o || {});
	return this.each(function(i){
		var masterElement = $(this);
		var captchaShown = false;

		var captchaImage = $('.captchaImage', masterElement);
		function resetCaptcha() {
			captchaImage.eq(0).attr('src', '/images/captcha.jpg.php?rnd=' + Math.random());
		};
		function highlightErrors (fields) {
			for (var i in fields)
			{
				$('#'+ fields[i] +'__').addClass('inputError');
				if ('captcha' == fields[i])
				{
					resetCaptcha();
					$('.captchaContainer', masterElement).show();
					captchaShown = true;
				}
			}
		}

		// Highlight errors
		if ('object' == typeof(CONTEST_REQUIRED_FIELDS))
		{
			highlightErrors(CONTEST_REQUIRED_FIELDS);
		}
		// Enable captcha
		$('.captchaEnabler', masterElement).bind('keyup', function() 
		{		
			if (!captchaShown)
			{
				resetCaptcha();
				$('.captchaContainer', masterElement).show();
				captchaShown = true;
			}
		});
		// Reset captcha
		captchaImage.bind('click', function (){
				resetCaptcha();
		});
	});
};
})(jQuery);

$(document).ready(function() 
{
	$('.contestForm').contests();
});

