var TestValidation = {

	someFormValidator: null,
	
	init: function() {
	var options = {};
		
		options.onFormInvalid = function(failures) {
				failures.each(function(fail) {
					$("validation-errors").adopt(new Element("li", {'html': fail}));
				});
			};
		options.onFormValid = function() {
				$('autoForm').submit();
			};
		options.onElementValidating = function(el) {
				el.removeClass("valid").removeClass("error");
			};
		options.onElementInvalid = function(el, err) {
				el.addClass("error");
			};
		options.onElementValid = function(el) {
				el.addClass("valid");
			};
	
		this.someFormValidator = new Validation("autoForm", options);
		
		$("autoForm").addEvent("submit", function(e) {
			new Event(e).stop();
			if($('textField')!=null){
				$('textField').setProperty('required', 'true');
			}
			
			$("validation-errors").empty();
			TestValidation.someFormValidator.validate();

		});
		
		$$("#autoForm .submitButton").addEvent("click", function(e) {
			new Event(e).stop();
			
			$("validation-errors").empty();
			TestValidation.someFormValidator.validate();
		});
		
	}
}



/********** INICJACJA DATAPICKER **********************/
window.addEvent("domready", function() {
	
	$$('input[subtype="fulldate"]').each(function(e){
		if(e.getProperty('subtype')=='fulldate'){
			var options = {};
//			var reservedDays = new Array();
//			reservedDays[6]=new Array();
//			reservedDays[6][18]=true;
			var mooCal = new MooCal(e.getProperty('id'), options);
//			mooCal.reservedDays = reservedDays[1];
			mooCal.minYear = new Date().getFullYear();
			mooCal.maxYear = "2100";
			$("datCal_"+e.getProperty('name')).addEvent("click", function(e){
				var event = new Event(e).stop();
				var x = event.page.x;
				var y = event.page.y;
				mooCal.show(x,y); // Display the calendar at the position of the mouse cursor
			});
		};
	});
});

// validacja formularzy
window.addEvent("domready", TestValidation.init.bind(TestValidation));

