// Alustetaan muuttujat.
var FooterHeightOsoite = ''
var FooterHeightLinkit = ''
var isNS4
var isIE4
var isIE5
var isNS6

// Tarkistetaan selain.
isNS4 = (document.layers) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false;
isIE5 = (document.all && document.getElementById) ? true : false;

function initialize(){
// Etsit&auml;&auml;n <span> -tagit; StaticFooterLinkit ja StaticFooterOsoite.
// Tarkistetaan niiden korkeus ja selainikkunan korkeus ja aktivoidaan oikea staticit_** -funktio.

	if (isIE4 || isIE5){
		FooterHeightLinkit = StaticFooterLinkit.offsetHeight
		FooterHeightOsoite = StaticFooterOsoite.offsetHeight

		setInterval("staticit_ie()",10)
		StaticFooterLinkit.style.visibility = "visible"
		StaticFooterOsoite.style.visibility = "visible"

	}
	else if (isNS4){
		FooterHeightLinkit = document.StaticFooterLinkit.document.height
		FooterHeightOsoite = document.StaticFooterOsoite.document.height
		
		setInterval("staticit_ns()",10)
		document.StaticFooterLinkit.visibility = "show"
		document.StaticFooterOsoite.visibility = "show"

	}
	else if (isNS6){		
		FooterHeightLinkit = document.getElementById("StaticFooterLinkit").offsetHeight;
		FooterHeightOsoite = document.getElementById("StaticFooterOsoite").offsetHeight;

		setInterval("staticit_ns6()",10)
		document.getElementById("StaticFooterLinkit").style.visibility = "visible"
		document.getElementById("StaticFooterOsoite").style.visibility = "visible"

	}
}

function staticit_ie(){
	StaticFooterLinkit.style.pixelTop = document.body.scrollTop + document.body.clientHeight - FooterHeightLinkit;
	StaticFooterOsoite.style.pixelTop = document.body.scrollTop + document.body.clientHeight - FooterHeightLinkit - FooterHeightOsoite;
}

function staticit_ns(){
	document.StaticFooterLinkit.top = pageYOffset + window.innerHeight - FooterHeightLinkit
	document.StaticFooterOsoite.top = pageYOffset + window.innerHeight - FooterHeightLinkit - FooterHeightOsoite
}

function staticit_ns6(){
	document.getElementById("StaticFooterLinkit").style.top = pageYOffset + window.innerHeight - FooterHeightLinkit
	document.getElementById("StaticFooterOsoite").style.top = pageYOffset + window.innerHeight - FooterHeightLinkit - FooterHeightOsoite
}

//--------------------------------------------
function replace( sString, sStr1, sStr2 ) {
// Tarkistaa lomakkeen tyhj&auml;t kent&auml;t, myös v&auml;lilynnit.
//--------------------------------------------
	var arrTemp = sString.split( sStr1 );
	return arrTemp.join( sStr2 );
}

//--------------------------------------------
function SubmitSendPage(strMessage1, strMessage2) {
//Sivun l&auml;hetys ja tarkistus ett&auml; kentiss&auml; on kirjoitusta.
//--------------------------------------------
	if( replace(document.frmSendPage.email.value," ", "").length < 1 ) {alert(strMessage1);document.frmSendPage.email.focus();return false;}

	if( replace(document.frmSendPage.name.value," ", "").length < 1 )  {alert(strMessage2);document.frmSendPage.name.focus();return false;}

}


//--------------------------------------------
function SubmitEditPage(){
//Lomakkeen l&auml;hetys ja tarkistus ett&auml; pakollisissa kentiss&auml; on kirjoitusta.
//--------------------------------------------
	var alertMsg = "";
	var bDataChanged = false;

	if(document.forms["PageEdit"]){
		objEl = document.forms["PageEdit"].elements;
		for(var i=0; i < objEl.length; i++ ){
			if(objEl[i].getAttribute("IsOptional") == "False" && objEl[i].value == ""){
				alertMsg = alertMsg + objEl[i].name + " puuttuu. \n"
			}
			else if(objEl[i].getAttribute("IsOptional") == "False" && objEl[i].value != ""){
			}
		}
		if(alertMsg.length < 1){
			return true;
			document.forms[0].submit();
		}
		else{
			alert(alertMsg);
			return false;
		}
	}
}


//--------------------------------------------
function OpenParent(theURL) {
// Avaa parent-ikkunaan parametrin&auml; tulleen urlin ja sulkee l&auml;hett&auml;v&auml;n ikkunan.
//--------------------------------------------
	window.opener.location = theURL;
	this.window.close();
}

//--------------------------------------------
function popup(theURL,winName,features) {
// Avaa uuden selainikkunan n&auml;ytön keskelle.
//--------------------------------------------
	var winleft = (screen.width - 500) / 2;
	var wintop  = (screen.height - 300) / 2;
	features = features + ',left='+winleft + ',top='+wintop
	msgWindow = window.open(theURL,winName,features);
	msgWindow.focus();
}


//--------------------------------------------
function SubmitForm(frmName, txtIsEmpty){
//--> Lomakkeen l&auml;hetys ja tarkistus ett&auml; pakollisissa kentiss&auml; on kirjoitusta.
//--------------------------------------------
	var alertMsg = "";

	if(document.forms[frmName]){
		objEl = document.forms[frmName].elements;
		//k&auml;yd&auml;&auml;n lomakkeen kent&auml;t&auml; l&auml;pi ja otetaan tyhj&auml;t pakolliset kent&auml;t talteen...
		for(var i=0; i < objEl.length; i++ ){
			if(objEl[i].getAttribute("IsOptional") == 0 && replace(objEl[i].value," ", "").length < 1){
				alertMsg = alertMsg + objEl[i].title + " " + txtIsEmpty + ". \n"
			}
		}

		//tarkistetaan tuliko puutteita...
		if(alertMsg.length < 1){
			return true;
//			document.forms[frmName].submit();
		}
		else{
			alert(alertMsg);
			return false;
		}

	}

}


//-----------------------------------------------------------------------------
function checkCalendarDates (strError,frmName) {
//-----------------------------------------------------------------------------
	var isErr
	var form	= document.forms[frmName];
	var startD	= form.StartDate.value;
	var endD	= form.EndDate.value;
	var parD	= form.ParticipationDeadline.value;

//comDate(form.day1.value,form.day2.value);
	//Tarkistetaan alkaa pvm.
	if(startD.length > 1){
		if(!isDate(startD)){
			isErr = true;
		}
	}

	//Tarkistetaan loppuu pvm.
	if(endD.length > 1){
		if(!isDate(endD)){
			isErr = true;
		}
	}

	//Tarkistetaan ilmoittautumis pvm.
	if(endD.length > 1){
		if(!isDate(endD)){
			isErr = true;
		}
	}

	//Tarkistetaan ettei loppu pvm ole suurempikuin alkaa pvm.
	if(startD.length > 1 && endD.length > 1){
		if(compareDate(startD,endD)){
			isErr = true;
		}
	}

	//Tarkistetaan ettei ilmoittautumis pvm ole suurempikuin alkaa pvm.
	if(parD.length > 1 && startD.length > 1){
		if(compareDate(parD,startD)){
			isErr = true;
		}
	}
	
	//Tarkistetaan tuliko virheit&auml; ja palautetaan true/false(error viesti).
	if(isErr){
		alert(strError);
		return false;
	}
	else{
		return true;
	}

}

//-----------------------------------------------------------------------------
function isDate(dateStr) {
//-----------------------------------------------------------------------------
    var datePat = /^(\d{1,2})(\/|.)(\d{1,2})(\/|.)(\d{4})$/;
    var matchArray = dateStr.match(datePat); // is the format ok?

    if (matchArray == null) {
        alert("P&auml;iv&auml;m&auml;&auml;r&auml;n muoto pit&auml;&auml; olla: pp.kk.vvvv");
        return false;
    }

    day 	= matchArray[1]; // parse date into variables
    month 	= matchArray[3]; 
    year 	= matchArray[5];

    if (month < 1 || month > 12) { // check month range
        return false;
    }

    if (day < 1 || day > 31) {
        return false;
    }

    if ((month==4 || month==6 || month==9 || month==11) && day==31) {
        return false;
    }

    if (month == 2) { // check for february 29th
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day > 29 || (day==29 && !isleap)) {
            return false;
        }
    }

    return true; //true; // date is valid
}

//-----------------------------------------------------------------------------
function compareDate(dateStr1,dateStr2) {
//-----------------------------------------------------------------------------
	var d 			= new Date();
    var datePat 	= /^(\d{1,2})(\/|.)(\d{1,2})(\/|.)(\d{4})$/;
    var matchArray1 = dateStr1.match(datePat); // is the format ok?
    var matchArray2 = dateStr2.match(datePat); // is the format ok?

	var day1 	 = new Date(matchArray1[5]+"/"+matchArray1[3]+"/"+ matchArray1[1]);
	
	if(dateStr2.length > 1){
		var day2 = new Date(matchArray2[5]+"/"+matchArray2[3]+"/"+ matchArray2[1]);
	}
	else{
		var day2 = new Date(d.getYear() +"/"+ (d.getMonth()+1) + "/" +d.getDate());
	}
//	var today 	= new Date(d.getYear() +"/"+ (d.getMonth()+1) + "/" +d.getDate()); 
//	var day2 	= new Date(matchArray2[5]+"/"+matchArray2[3]+"/"+ matchArray2[1]);
	if(day1 > day2){
//		alert('false > eka suurempi')
		return true; //ensimm&auml;inen pvm on suurempi.
	}
	else{
//		alert('true > eka pienempi')
		return false; //ensimm&auml;inen pvm on pienempi.
	}
}