function includeOtherJS(filename)
{
	document.write('<script type="text/javascript" src="' + filename + '"></scrip' + 't>'); 
}

includeOtherJS('js/calendar.js');

function openWindow(url, sizex, sizey) {
	if (url.indexOf("?") > 0) {
		window.open(url + "&format=simple", '' , 'scrollbars=yes,menubar=no,height=' + sizey + ',width=' + sizex + ',resizable=yes,toolbar=no,location=no,status=no');
	}
	else {
		window.open(url + "&format=simple", '' , 'scrollbars=yes,menubar=no,height=' + sizey + ',width=' + sizex + ',resizable=yes,toolbar=no,location=no,status=no');
	}
}
function getPageHeight() 
{
	return  window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ?  document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
}
function blanket_size(popUpDivVar) {
	if (typeof window.innerWidth != 'undefined') {
		viewportheight = window.innerHeight;
	} else {
		viewportheight = document.documentElement.clientHeight;
	}
	if ((viewportheight > document.body.parentNode.scrollHeight) && (viewportheight > document.body.parentNode.clientHeight)) {
		blanket_height = viewportheight;
	} else {
		if (document.body.parentNode.clientHeight > document.body.parentNode.scrollHeight) {
			blanket_height = document.body.parentNode.clientHeight;
		} else {
			blanket_height = document.body.parentNode.scrollHeight;
		}
	}
	if (document.getElementById('noteblanket'))
	{
		var blanket = document.getElementById('noteblanket');
		blanket.style.height = blanket_height + 'px';
		var popUpDiv = document.getElementById(popUpDivVar);
		popUpDiv_height = blanket_height/2-150;//150 is half popup's height
		
		if (navigator.appName == "Microsoft Internet Explorer")
		{
			popUpDiv.style.top = getPageHeight() / 2 - 100 + document.body.scrollTop; + 'px'; 
		}
		else
		{
			popUpDiv.style.top = getPageHeight() / 2 - 100 + window.pageYOffset + 'px';
		}
	}
}
function window_pos(popUpDivVar) {
	if (typeof window.innerHeight != 'undefined') {
		viewportwidth = window.innerHeight;
	} else {
		viewportwidth = document.documentElement.clientHeight;
	}
	if ((viewportwidth > document.body.parentNode.scrollWidth) && (viewportwidth > document.body.parentNode.clientWidth)) {
		window_width = viewportwidth;
	} else {
		if (document.body.parentNode.clientWidth > document.body.parentNode.scrollWidth) {
			window_width = document.body.parentNode.clientWidth;
		} else {
			window_width = document.body.parentNode.scrollWidth;
		}
	}
	var popUpDiv = document.getElementById(popUpDivVar);
	window_width=window_width/2-150;//150 is half popup's width
	popUpDiv.style.left = window_width + 'px';
}
function refreshNotes() 
{	
	showNotes();
}
function showNotes() {
	if (!document.getElementById("noteblanket"))
	{
		showNotesOld();
		return;
	}
	var ie=document.all;
	var dom=document.getElementById;
	var notes = document.getElementById("notes");
	blanket_size("notes");
	window_pos("notes");

	toggle('noteblanket');
	toggle('notes');	
	
} 
function showNotesOld() {
	var ie=document.all;
	var dom=document.getElementById;
	var notes = document.getElementById("notes");

	var IpopTop = (document.body.clientHeight - notes.offsetHeight) / 2;
    var IpopLeft = (document.body.clientWidth - notes.offsetWidth) / 2;
            
    notes.style.left=IpopLeft + document.body.scrollLeft;
    notes.style.top=IpopTop + document.body.scrollTop;
    notes.style.display = "block";

	notes.style.visibility = (dom||ie)? "visible" : "show";	
}

function toggle(div_id) 
{
	var ie=document.all;
	var dom=document.getElementById;
	var el = document.getElementById(div_id);
	if (el.style.display == 'none') 
	{
		el.style.display = 'block';
		el.style.visibility = (dom||ie)? "visible" : "show";
	}
	else 
	{
		el.style.display = 'none';
		el.style.visibility = "hidden";
	}
}

function closeNotes() 
{
	var notes = document.getElementById("notes");
	notes.style.visibility = "hidden";
	notes.style.display = "none";
	var noteblanket = document.getElementById("noteblanket");
	noteblanket.style.visibility = "hidden";
	noteblanket.style.display = "none";
}

function showNotes2() {
	
	blanket_size('notes2');
	window_pos('notes2');
	/*
	var ie=document.all;
	var dom=document.getElementById;
	var notes = document.getElementById("notes2");

	var positionTop = document.documentElement.clientHeight / 2 - 100;
            
	var y = getQueryVariable("position");
	if (y > 0)
	{
		y = parseInt(y) + positionTop;
		notes.style.top = y + "px";
	}            
	*/
	toggle('noteblanket');
	toggle('notes2');	
}

function closeNotes2() {
	var notes = document.getElementById("notes2");
	notes.style.visibility = "hidden";
	var noteblanket = document.getElementById("noteblanket");
	noteblanket.style.visibility = "hidden";
}
function keepPosition($element) {
	if (navigator.appName == "Microsoft Internet Explorer"){
		$element.position.value = document.body.scrollTop;
	}
	else{
		$element.position.value = window.pageYOffset;
	}
}

function setPosition() {
	var y = getQueryVariable("position");
	if (y > 0) {
			window.scrollTo(0, y);
	}
}

function getQueryVariable(variable) {
	var query = window.location.search.substring(1);
	var vars = query.split("&");
	for (var i=0;i<vars.length;i++) {
		var pair = vars[i].split("=");
		if (pair[0] == variable) {
			return pair[1];
		}
	}
	return "";
}

function checkBirthDate(inputvalue) {
	if (inputvalue == "") 
		return true;

	var validformat = /^\d{8}$/ //Basic check for format validity
	if (!validformat.test(inputvalue)) {
		var validformat = /^\d{6}$/ //Basic check for format validity
		if (!validformat.test(inputvalue)) {
			window.alert("Syöttämässäsi syntymäajassa on virhe. Anna muodossa PPKKVVVV");
			return false;
		}
	}
	
	var day = inputvalue.substring(0, 2);
	var month = inputvalue.substring(2, 4);
	var year = inputvalue.substring(4, 8);
	if (year < 100 && year > 10) {
		year = 1900 + parseInt(year);
	}
	else if (year < 11) {
		year = 2000 + parseInt(year);
	}

	var dateobject = new Date(year, (month - 1), day);

	if (((dateobject.getMonth()+1) != month) || (dateobject.getDate() != day) || (dateobject.getFullYear() != year)) {
		window.alert("Syöttämässäsi syntymäajassa on virhe. Anna muodossa PPKKVVVV");
		return false;
	}
	return true;
}
function checkDate(inputvalue) {
	if (inputvalue == "") 
		return true;
	var validformat = /^\d{1,2}[\/|\-|\.]\d{1,2}[\/|\-|\.]\d{2,4}$/ //Basic check for format validity
	if (!validformat.test(inputvalue)) {
		var validformat = /^\d{1,2}[\/|\-|\.]\d{1,2}[\/|\-|\.]$/ //Basic check for format validity
		if (!validformat.test(inputvalue)) {
			window.alert("Syöttämässäsi päivämäärässä on virhe. Anna muodossa PP.KK.VVVV");
			return false;
		}
	}
	var separated = inputvalue.split(".");
	
	var day = separated[0];
	var month = separated[1];
	var year = separated[2];
	if (year < 100 && year > 10) {
		year = 1900 + parseInt(year);
	}
	else if (year < 11 && year > 0) {
		year = 2000 + parseInt(year);
	}
	else {
		var d = new Date();
		year = d.getFullYear();
	}

	var dateobject = new Date(year, (month - 1), day);

	if (((dateobject.getMonth()+1) != month) || (dateobject.getDate() != day)) {
		window.alert("Syöttämässäsi päivämäärässä on virhe. Anna muodossa PPKKVVVV");
		return false;
	}
	return true;
}

var openeddivs = Array();

function toggleDIV(value)
{
	var div = "cdiv_" + value;
	var arrowpic = "arrow_" + value;
	var elem = document.getElementById(arrowpic);
	var elemdiv = document.getElementById(div);
	if (openeddivs[value])
	{
		elem.src = "pic/down.gif";
		openeddivs[value] = false;
		elemdiv.style.height = "200px";	
	}
	else
	{
		elem.src = "pic/up.gif";
		openeddivs[value] = true;
		elemdiv.style.height = elemdiv.scrollHeight + "px";	
	}
}

function getNotesFromServer()
{
	new Ajax.Request('getNotes.php', {
	   	 method:'get',
	  	  onSuccess: function(transport){      
	  	  	var notetext = transport.responseText;	  	  	
	  	  	notetext = notetext.replace(/<p.*>/gi, " ");	  	  	
	  	  	notetext = notetext.replace(/<(?:.|\s)*?>/g, " ");  	
	  	  	window.alert(notetext);
	   	 },
	    onFailure: function(transport) { 
	     }
	  });
}
