$A.onload(function() {
	function validateCaptcha(ct) {
		if (validateCaptcha.req)
			validateCaptcha.req.abort();

		validateCaptcha.req = $A.ajax({
			method: "get",
			url: captchaUrl+"v="+escape(ct.value),
			oncomplete: function(r) {
				ct.className = r.responseText == "true" ? "" : "failure";
			}
		});
	}

	var captchaImage   = $A("captcha_image"),
		captchaTextbox = $A("contact_captcha"),
		refreshLink    = $A("captcha_refresh_link");

	var srcNum = 0;
	refreshLink.onclick = function() {
		captchaImage.src = captchaUrl+(srcNum++);
		captchaTextbox.className = "failure";
		return false;
	};
	captchaTextbox.onchange = function() {
		captchaTextbox.className = "updating";
		validateCaptcha(captchaTextbox);
	};
});
