/***********************************************************************************************************************************
 Autoformatting of Date and Valid Date Check

 CUSTOM DATE FUNCTIONS WRITTEN BY Dest@pobox.com
	FormatDate()-  AUTOINSERTS the /'s IN A DATE
	CheckDate()- Validates Date Entered is a Valid Date

	COPY AND PASTE THE FOLLOWING INTO YOUR INPUT FIELD AND CHANGE TO APPROPRIATE FRAME LOCATION (ie: parent. or self.) :
	onchange="CheckDate(this)" onkeydown="FormatDate(this, window.event.keyCode,'down')" onkeyup="FormatDate(this, window.event.keyCode,'up')"
***********************************************************************************************************************************/

function CheckDate(THISDATE) 
{
	var err=0
	sPvm = THISDATE.value
	if (sPvm.length == 0 )
	{
		return true
	}
	if (sPvm.length < 8) err=5
	
	nPos = sPvm.indexOf(".", 0)
	sPaiva = sPvm.substring(0, nPos)
	sPvm = sPvm.substr( nPos+1 )
	
	nPos = sPvm.indexOf(".", 0)
	sKuukausi = sPvm.substring(0, nPos)

	sVuosi = sPvm.substr( nPos+1 )
	
	if (err == 0)
	{
		if (isNaN(parseInt(sPaiva) ) == true ) err=1
		else
		{
			nPaiva = parseInt(sPaiva)
			if (nPaiva < 1 || nPaiva > 31)	err = 1
			else
			{
				if (isNaN(parseInt(sKuukausi) ) == true ) err=2
				else
				{
					nKuukausi = parseInt(sKuukausi)
					if (nKuukausi < 1 || nKuukausi > 12) err = 2
					else
					{
						if (isNaN(parseInt(sVuosi)) == true ) err=3
						else
						{
							nVuosi = parseInt(sVuosi)
							if ((nVuosi > 100 && nVuosi < 1900 ) || (nVuosi > 2049)) err = 3
						}
					}
				}
			}
		}
	}	
	if (err == 0)
	{
		if (nKuukausi==4 || nKuukausi==6 || nKuukausi==9 || nKuukausi==11)
		{
			if (nPaiva==31) err=1
		}
	
		if (nKuukausi==2)
		{
			var g=parseInt(nVuosi/4)
			if (isNaN(g)) 
			{
				err=3
			}
			if (nPaiva > 29) err=1
			if (nPaiva == 29 && ((nVuosi/4)!=parseInt(nVuosi/4))) err=4
		}
	}
	if (err==1) 
	{
		errTeksti = "Annettu (" + THISDATE.value + ") päiväosa virheellinen. Syötä päivämäärä uudelleen."
	}
	if (err==2) 
	{
		errTeksti = "Annettu (" + THISDATE.value + ") kuukausiosa virheellinen. Syötä päivämäärä uudelleen."
	}
	if (err==3) 
	{
		errTeksti = "Annettu (" + THISDATE.value + ") vuosiosa virheellinen. Syötä päivämäärä uudelleen."
	}
	if (err==4) 
	{
		errTeksti = "Annettu (" + THISDATE.value + ") karkauspäivä/-vuosi virheellinen. Syötä päivämäärä uudelleen."
	}
	if (err==5) 
	{
		errTeksti = "Annettu (" + THISDATE.value + ") päivämäärä virheellinen. Oikea muoto pp.kk.vvvv."
	}
	if (err > 0)
	{
		alert(errTeksti);
		THISDATE.focus();
		return false;
	}
}


/*************************************************************************
    Tutkii formin ja laittaa h_RaporttiKenttaSelitteet tietoon
    kaikki tarvittavat tiedot ; erotettuna
*************************************************************************/
function fnRaporttiKentatKiinni(form)
{
    form.elements[0].value = '*';
    for (Count = 0; Count < form.elements.length; Count++) {

        if (form.elements[Count].type == "select-one") 
        {
            Item = form.elements[Count].selectedIndex;
            Result = form.elements[Count].options[Item].text;
            //alert(form.elements[Count].name + '*' + Result + "*");
            form.elements[0].value = form.elements[0].value + form.elements[Count].name + '*' + Result + '*';
        }
        else if (form.elements[Count].type == "select-multiple") 
        {
            for (i = 0; i < form.elements[Count].length; i++) {
                if (form.elements[Count][i].selected)
            	{
            	    /*Item = form.elements[Count][i].seletedIndex;
                    Result = form.elements[Count].options[Item].text;
                    alert(Result);*/
                    form.elements[0].value = form.elements[0].value + form.elements[Count].name + '*' + form.elements[Count][i].text + '*'
                    //alert(form.elements[Count].name + '**' + form.elements[Count][i].text + "*");
                }
            }
        }
        else if ((form.elements[Count].name != "Tulosta") && (form.elements[Count].name != "Tyhjenna") && (form.elements[Count].name != "h_RaporttiKenttaSelitteet"))
        {
            if ((form.elements[Count].name != "TulostaPAinike") && (form.elements[Count].name != "TyhjennaPainike"))
            {
				form.elements[0].value = form.elements[0].value + form.elements[Count].name + '*' + form.elements[Count].value  + '*'
				//alert(form.elements[Count].name + '*' + form.elements[Count].value  + '*');
			}
            
        }
    }
    form.elements[1].value='Tulosta';
    form.submit();
}

function fnRaporttiTyhjenna(form)
{
	form.elements[0].value='';
	form.elements[1].value='';
    form.reset();
    form.elements[2].value='Tyhjenna';
    form.submit();
}

