formError = 0;
alreadyWrong = 0;
date = new Date();
thisDay = date.getDate();
thisMonth = date.getMonth();
thisYear = date.getFullYear();


// Fungsi untuk mengecek apakah ada karakter bukan huruf atau spasi
function isLetterOrWhiteSpace(str)
{
	counter = 0;
	for (i=0;i<str.length;i++)
	{
		if (str.charAt(i) == ' ') continue;
		if ( !((str.charAt(i) >= 'a' && str.charAt(i) <= 'z') || (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z'))) 
		{ 
			counter = 1; 
			break; 
		}
	}
	if (counter == 0) return true;
	return false;
}

// Fungsi untuk mengecek e-mail
function invalidEmail(str)
{
	akeong = str.indexOf("@");
	akeong2 = str.lastIndexOf("@");
	titik = str.indexOf(".");
	spasi = str.indexOf(" ");
	if (spasi != -1 || titik == -1 || akeong == -1 || akeong2!=akeong)
	{
		return true;
	}
	
	if(akeong==0 || titik==0 || akeong==str.length-1 || titik== str.length - 1 || titik == akeong+1)
	{
		return true;	
	}
	
	return false;
}

// Fungsi untuk mengecek apakah ada karakter bukan angka atau spasi
function isDigitOrWhiteSpace(str)
{
	counter = 0;
	for (i=0;i<str.length;i++)
	{
		if (str.charAt(i) == " ") continue;
		if (isNaN(str.charAt(i))) 
		{ 
			counter = 1; 
			break; 
		}
	}
	if (counter == 0) return true;
	return false;
}

// Fungsi untuk mengecek apakah suatu textfield hanya diisi dengan spasi
function isOnlyWhiteSpace(str)
{
	counter = 0;
	for (i=0;i<str.length;i++)
	{
		if (str.charAt(i) != ' ')
		{
			counter = 1;
			break;
		} 
	}
	if (counter == 0) return true;
	return false;
}

// Periksa kecocokan jumlah hari dengan bulan
function validDate(DOBday,DOBmonth,DOByear)
{	
	// Untuk bulan februari 
	if (DOBmonth == 2)
	{
		// Tahun biasa
		if (DOByear % 4 != 0)
		{
			// Jika jumlah hari lebih besar dari 28
			if (DOBday > 28)
			{
				// Maka salah
				return false;
			}
		}
		// Pada tahun-tahun kabisat 
		else if (DOByear % 4 == 0)
		{
			// Jika jumlah hari lebih besar dari 29
			if (DOBday > 29)
			{
				// Maka salah
				return false;
			}
		}
	}
	
	// Untuk bulan-bulan lain
	else if ( (DOBmonth == 4 || DOBmonth == 6 || DOBmonth == 9 || DOBmonth == 11) && DOBday > 30 ) 
	{
		return false;
	}
	return true;
}


// Periksa tanggal lahir
function checkDOB()
{
	if (validDate(form1.DOBday.value,form1.DOBmonth.value,form1.DOByear.value) == false || DOBCheck(form1.DOByear.value)==false) 
	{
		formError = 1;
		errDOB.innerHTML = "Invalid date of birth";
		return false;
	}
	return true;
}




// Jika ternyata di form ada salah, maka kita panggil fungsi ini.
function showErrorAndHalt()
{
	location.href = "#thisTop";
	errorMark.innerHTML = "We've found invalid entries. Please review again your form. Then, re-submit it by pressing the \"Submit\" button.<br><br><br>";
}
