function checkForm() {
	f = document.getElementById('first_name');
	score = 0;
	if (f.value != '') {
		m = document.getElementById('message_first_name');
		m.style.visibility = 'hidden';
		score++;
	} else {
		m = document.getElementById('message_first_name');
		m.style.visibility = 'visible';
	}
	
	f = document.getElementById('last_name');
	if (f.value != '') {
		m = document.getElementById('message_last_name');
		m.style.visibility = 'hidden';
		score++;
	} else {
		m = document.getElementById('message_last_name');
		m.style.visibility = 'visible';
	}
	
	f = document.getElementById('address');
	if (f.value != '') {
		m = document.getElementById('message_address');
		m.style.visibility = 'hidden';
		score++;
	} else {
		m = document.getElementById('message_address');
		m.style.visibility = 'visible';
	}
	
	idRegExp = /^\d{10}$/;
	f = document.getElementById('id_number');
	if (f.value != '' && idRegExp.test(f.value)) {
		m = document.getElementById('message_id_number');
		m.style.visibility = 'hidden';
		score++;
	} else {
		m = document.getElementById('message_id_number');
		m.style.visibility = 'visible';
	}

	if (score == 4) {
		m = document.getElementById('form_button');
		m.disabled = false;
	} else {
		m = document.getElementById('form_button');
		m.disabled = true;
	}
}

function postData() {
	var fn = document.getElementById('first_name').value;
	var ln = document.getElementById('last_name').value;
	var ad = document.getElementById('address').value;
	var id = document.getElementById('id_number').value;
		
	var httpRequest = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");

	httpRequest.onreadystatechange = function() {	
		if (httpRequest.readyState == 4 && httpRequest.status == 200) {
			var xmldoc = httpRequest.responseXML;
			var root_node = xmldoc.getElementsByTagName('status').item(0);
			var status = root_node.firstChild.data;
				
			if (status == 'OK') {
				document.getElementById('first_name').value = document.getElementById('last_name').value = document.getElementById('address').value = document.getElementById('id_number').value = '';
				document.getElementById('message_first_name').style.visibility = document.getElementById('message_last_name').style.visibility = document.getElementById('message_address').style.visibility = document.getElementById('message_id_number').style.visibility = 'visible';
				document.getElementById('form_button').disabled = true;
				alert("Petice byla úspěšně odeslána.\n\rDěkujeme za Váš zájem!");
			}
		}
	
	}
		
	httpRequest.open('POST', 'insert.php?cache='+Math.random(), true);
	httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	httpRequest.send('first_name='+fn+'&last_name='+ln+'&address='+ad+'&id='+id);

}

function bubble(pointer) {
	e = pointer.getElementsByTagName('div')[0];
	if (e.className == 'bubble hidden') e.className = 'bubble';
	else e.className = 'bubble hidden';
}

function makeRequest(url) {
	var httpRequest;
	
	var httpRequest = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject("MSXML2.XMLHTTP.3.0");
	
	httpRequest.onreadystatechange = function() { contentHandler(httpRequest); }
	httpRequest.open('GET', url, true);
	httpRequest.send(null);
	
	cal = document.getElementById('calendar');
	leftcol  = document.getElementById('left-col');
	cal.style.visibility = 'hidden';
	leftcol.className = 'preload';
}

function contentHandler(httpRequest) {
	if (httpRequest.readyState == 4 && httpRequest.status == 200) {
		var xmldoc 		= httpRequest.responseXML;
		for (i=0; i<xmldoc.childNodes.length; i++) {
			if (xmldoc.childNodes[i].nodeType == 1) rootNode = xmldoc.childNodes[i];
		}
		
		var firstday 	= rootNode.getAttribute('firstday');
		var monthdays 	= rootNode.getAttribute('monthdays');
		var month 		= rootNode.getAttribute('month');
		var curmonth 	= rootNode.getAttribute('curmonth');
		var curday 		= rootNode.getAttribute('curday');
		
		var days = new Array('PONDĚLÍ / MONDAY', 'ÚTERÝ / TUESDAY', 'STŘEDA / WENDESDAY', 'ČTVRTEK / THURSDAY', 'PÁTEK / FRIDAY', 'SOBOTA / SATURDAY', 'NEDĚLE / SUNDAY');
		var months = new Array(6, 7, 8);
		months[6] = new Array('june', 'ČERVEN / JUNE');
		months[7] = new Array('july', 'ČERVENEC / JULY');
		months[8] = new Array('august', 'SRPEN / AUGUST');
		
		var xmldata = rootNode.getElementsByTagName('event');
		var events = new Array();
		var total = xmldata.length;
		
		for (i=0; i<total; i++) {
			var dayIndex = parseInt(xmldata[i].getAttribute('date'));
			events[dayIndex] = new Array('text', 'link');
			events[dayIndex]['text'] = xmldata[i].firstChild.nodeValue;
			events[dayIndex]['link'] = xmldata[i].getAttribute('link');
		}
        var html = '<table border="0" cellpadding="0" cellspacing="0" id="dates">';
		html += '<tr><th colspan="7" id="'+months[month][0]+'"><span>'+months[month][1]+'</span></th></tr>';

		var daycount = -1;
		var weekday = 0;
		var row = 0;
		
		while (daycount < monthdays) {
			html += '<tr>';
			weekday = 0;
			row++;
			for (col=0; col<7; col++) {
				if (col+1 == firstday && daycount < 0) daycount++;
				weekday++;
				if (daycount < monthdays && daycount > -1) {
					daycount++;
					if (events[daycount]!=null) {
						html += '<td';
						if (month == curmonth && daycount < curday || (month < curmonth)) html += ' class="past"'; else html += ' class="future"';
						html += '>';
						html += '<div class="num d-'+daycount+'" onmouseover="bubble(this);" onmouseout="bubble(this);">';
						if (events[daycount]['link']!='') html+= '<a href="'+events[daycount]['link']+'" target="_blank">';
						html += '<span>'+daycount+'<br /></span>';
						if (events[daycount]['link']!='') html+= '</a>';
						html += '<div class="bubble hidden">';
						html += '<div class="bubble-container">';
						html += '<div class="bubble-body">';
						html += '<strong class="brown">'+days[weekday-1]+' '+daycount+'. '+month+'.</strong>';
						html += events[daycount]['text'];
						//if (events[daycount]['link']!='') html+= '<p class="brown">Kliknutím na datum rezervujete vstupenky.&nbsp;/ Click the date to reserve your tickets on-line.</p>';						
						html += '</div>';
						html += '</div>';
						html += '</div>';
						html += '</div>';
						html += '</td>';
					} else {
						html += '<td class="nothing">';
						html += '<div class="num d-'+daycount+'">';
						html += '<span>'+daycount+'</span>';
						html += '</div>';
						html += '</td>';
					}
				} else { 
					html += '<td class="empty">&nbsp;</td>'; 
				}
			}
			html += '</tr>';
		}
		
		if (row < 6) html += '<tr><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td><td class="empty">&nbsp;</td></tr>';
		html += '</table>';
		html += '<div id="months"><a href="javascript:makeRequest(\'cfg/xmlfeed.php?month=6\');" id="m-june"';
		if (month == 6) html += ' class="selected"';
		html += '><span>ČERVEN/JUNE</span></a><span> | </span><a href="javascript:makeRequest(\'cfg/xmlfeed.php?month=7\');" id="m-july"';
		if (month == 7) html += ' class="selected"';
		html += '><span>ČERVENEC/JULY</span></a><span> | </span><a href="javascript:makeRequest(\'cfg/xmlfeed.php?month=8\');" id="m-august"';
		if (month == 8) html += ' class="selected"';
		html += '><span>SRPEN/AUGUST</span></a></div>';

		cal = document.getElementById('calendar');
		leftcol  = document.getElementById('left-col');
		cal.innerHTML = html;
		to = setTimeout(function() { cal.style.visibility = 'visible'; leftcol.className = ''; clearTimeout(to); }, 1400);
	}
}