$.widget('ui.captcha', {
			
	_init: function(options) {
		this.element.show();
		this.element.find('form').unbind().submit($.proxy(this.submit, this));
		this.element.find('.cancel').unbind().click($.proxy(this.hide, this));
		
		Recaptcha.create('6Ldpt7oSAAAAAMl1g_L7XW3_XxD5S7AUuj-SULI0', this.element.find('.captcha')[0], {
			theme : 'custom',
			custom_theme_widget: 'recaptcha_widget',
			callback: Recaptcha.focus_response_field
		});

		if ($.browser.msie && $.browser.version < 7) {
			$(window).unbind($.proxy(this.scroll, this)).scroll($.proxy(this.scroll, this));
		}
	},


	scroll: function() {
		this.element.css('top', $(window).scrollTop() + 'px');
	},
	
	
	hide: function() {
		this.element.hide();
	},
	
	
	submit: function() {
		var challenge = this.element.find('input#recaptcha_challenge_field').val();
		var response = this.element.find('input#recaptcha_response_field').val();

		$.ajax({
			type: 'POST',
			url: 'http://www.clippykitlondon.co.uk/blog/php/recaptcha/validate.php',
			data: 'recaptcha_challenge_field=' + challenge + '&recaptcha_response_field=' + response,
			success: $.proxy(this.submitComplete, this)
		});
		
		return false;
	},
	
	
	submitComplete: function(data) {
		var valid = (data == '1');
		
		if(!valid){
			this.element.find('.captcha-description').css('display', 'none');
			this.element.find('.error').delay(100).fadeIn('slow');
		}

		if (valid) {
			//this.hide();
			this.options.success();
		}
	}

});
