window.addEvent('domready', function() {
	var month	= data.getMonth();
	var year	= data.getFullYear();
	$('calendar_mounth').addEvent('change', function() {
		var month_tmp = this.value;
		if (month_tmp < 1 || month_tmp > 12) this.value = month;
		else {
			month = month_tmp - 1;
			data = new Date(year, month, day);
			clear();
			put();
		}
	});
	$('calendar_year').addEvent('change', function() {
		var year_tmp = this.value;
		if (year_tmp < 1970 || year_tmp > 2099) this.value = year;
		else {
			year = year_tmp
			data = new Date(year, month, day);
			clear();
			put();
		}
	});
	function change(to) {
		var month_tmp = $('calendar_mounth').value;
		var year_tmp = $('calendar_year').value;
		switch (to) {
			case 0:
				if (month_tmp == 1 && year_tmp == 1970) return;
				month_tmp--;
				if (month_tmp < 1) {
					month_tmp = 12;
					year_tmp--;
				}
			break;
			case 1:
				if (month_tmp == 12 && year_tmp == 2099) return;
				month_tmp++;
				if (month_tmp > 12) {
					month_tmp = 1;
					year_tmp++;
				}
			break;
		}
		year = year_tmp;
		month = month_tmp - 1;
		data = new Date(year, month, day);
		$('calendar_year').value = year_tmp;
		$('calendar_mounth').value = month_tmp;
		clear();
		put();
	}
	$('calendar_left').addEvent('click', function() {
		change(0);
	});
	$('calendar_right').addEvent('click', function() {
		change(1);
	});
	function clear() {
		for (var i = 1; i <= 42; i++) {
			$('c_' + i).set('text', '');
		}
	}
	function put() {
		var days;
		var day_n = data.getDay();
		if (day_n == 0) day_n = 7;
		if (month == 0) days = 31;
		if (month == 1) days = 28;
		if (month == 2) days = 31;
		if (month == 3) days = 30;
		if (month == 4) days = 31;
		if (month == 5) days = 30;
		if (month == 6) days = 31;
		if (month == 7) days = 31;
		if (month == 8) days = 30;
		if (month == 9) days = 31;
		if (month == 10) days = 30;
		if (month == 11) days = 31;
		for (var i = 1972; i <= 2096; i+= 4) {
			if (year == i && month == 1) days = 29;
		}
		var s = 0;
		for (i = 1; i <= 42; i++) {
			if (i >= day_n && s < days) {
				s++;
				var data_str = year+'-';
				if (month < 9) data_str+= '0'+(month+1)+'-';
				else data_str+= (month+1)+'-';
				if (s < 10) data_str+= '0'+(s);
				else data_str+= s;
				if (dates[data_str]) {
					var c = '<a href="' + cal_link + data_str + '">' + s + '</a>';
				} else {
					var c = s;
				}
				if (data_str == data_cur) {
					var c = '<span>' + c + '</span>';
				}
				$('c_' + i).set('html', c);
			}
			
		}
		
	}
});
