var f=$('booking_form');

function dsf (date, y, m, d) {
	var cur=new Date();
	if (date.getTime() < cur.getTime()) return true;
	else return false;
}

function calUpdate(cal) {
	cal.date.setHours(0);
	cal.date.setMinutes(0);
	cal.date.setSeconds(0);
	cal.date.setMilliseconds(0);
	switch (cal.params.inputField.id) {
		case "sd":
			ev=$('ed').value;
			if (ev.match(/^[0-9]{2}\.[0-9]{2}.[0-9]{4}$/)) {
				ee=ev.split('.');
				e=new Date(Date.parse(ee[2]+'/'+ee[1]+'/'+ee[0]));
				if (e.getTime() <= cal.date.getTime()) {
					e=new Date(cal.date.getTime()+Date.DAY);
					ev=(e.getDate().toString().length == 2?e.getDate():'0'+e.getDate())+'.'+((e.getMonth()+1).toString().length == 1?'0':'')+(e.getMonth()+1)+'.'+e.getFullYear();
					$('ed').value=ev;
				}
			}
		break;
		case "ed":
			sv=$('sd').value;
			if (sv.match(/^[0-9]{2}\.[0-9]{2}.[0-9]{4}$/)) {
				se=sv.split('.');
				s=new Date(Date.parse(se[2]+'/'+se[1]+'/'+se[0]));
				if (s.getTime() >= cal.date.getTime()) {
					s=new Date(cal.date.getTime()-Date.DAY);
					sv=(s.getDate().toString().length == 2?s.getDate():'0'+s.getDate())+'.'+((s.getMonth()+1).toString().length == 1?'0':'')+(s.getMonth()+1)+'.'+s.getFullYear();
					$('sd').value=sv;
				}
			}
		break;
	}
}

Calendar.setup({
	inputField: "sd",
	button: "b_sd",
	ifFormat: "%d.%m.%Y",
	firstDay: 1,
	weekNumbers: false,
	showOthers: true,
	dateStatusFunc: dsf,
	onUpdate: calUpdate
});

Calendar.setup({
	inputField: "ed",
	button: "b_ed",
	ifFormat: "%d.%m.%Y",
	firstDay: 1,
	weekNumbers: false,
	showOthers: true,
	dateStatusFunc: dsf,
	onUpdate: calUpdate
});

var b_sd_func=$('b_sd').onclick;
var b_ed_func=$('b_ed').onclick;

