
var submit_btn = $('submit_btn');
var submit_default = "Submit";
var submit_active = "Processing...";
var form_container;

Element.implement({
    fieldWarning: function(warningText, warningDelay) {

        this.set({
            value: warningText,
            styles: {
                backgroundColor: "#fcc"
            },
            events: {
                focus: function() {
                    this.set({
                        value:  "",
                        styles: {
                            backgroundColor: "#EDEEF3"
                        }
                    }).removeEvents();
                }
            }
        });

        (function() {
            this.fireEvent("focus").removeEvents();
        }).delay(warningDelay, this);
    }
});


function init_form(f) {
	
	form_container = $('main_container');
	
	
	if (f) {
		
		submit_default = submit_btn.value;
		f.addEvents({
			"submit": function(e) {
				e.preventDefault(); // can also do new Event(e).stop();
				submit_btn.value = submit_active;
				submit_btn.disabled = true;
				cleanData(f.getElements("input,textarea"));
				var noErrors = true;
				$$("input.required,textarea.required").each(function(el) {
					var testedValue = el.get("value");
					if (testedValue.length == 0 || testedValue == "Required field") {
						noErrors = false;
						el.fieldWarning("Required field", 2000);
						submit_btn.value = submit_default;
						submit_btn.disabled = false;
					}
				});
	
				if (noErrors) { // test email
					var testedEmail = $("contact_email").get("value");
					if (!isValid(testedEmail)) {						
						$("contact_email").fieldWarning("INVALID Address: " + testedEmail, 2000);
						submit_btn.value = submit_default;
						submit_btn.disabled = false;
						noErrors = false;
					}
				}
	        
				if (noErrors) {
					//f.empty().addClass('ajax-loading');
					new Request({
						url: this.get("action") + stripped_url,
						data: this,
						onComplete: function() {
							//form_container.removeClass('ajax-loading');
							form_container.set("html", this.response.text);
							form = $('contact_form');
							if (form)
								init_form(form);
						}
					}).send();
				}
			}
		});
	
	}

	
}
	

window.addEvent("domready", function() {
			init_form(form);					 

});