// JavaScript Document
function validateFullName(obj) {
	var firstName = document.getElementById('firstName');
	var secondName = document.getElementById('secondName');	
	var lastName = document.getElementById('lastName');	
	if (obj == "1") {		
		if (firstName.value == "") {
			alert ("Please enter first name!");
			firstName.focus();
			return false;
		}else if (secondName.value == "") {
			alert ("Please enter second name!");
			secondName.focus();
			return false;
		}else if (lastName.value == "") {
			alert ("Please enter last name!");
			lastName.focus();
			return false;
		}
	}
	return true;
}

function validateClass(obj) {
	var x = document.getElementById('class');	
	if (obj == "1") {	
		if (x.value == "") {
			alert ("Please enter Class/Year!");
			x.focus();
			return false;
		}
	}
	return true;
}

function validateGroup(obj) {
	var x = document.getElementById('group');	
	if (obj == "1") {	
		if (x.value == "") {
			alert ("Please enter group!");
			x.focus();
			return false;
		}
	}
	return true;
}

function validateNumber(obj) {
	var x = document.getElementById('number');
	if (obj == "1") {	
		if (x.value == "") {
			alert ("Please enter number!");
			x.focus();
			return false;
		}else if (isNaN(x.value)) {
			alert ("Please enter valid number!");
			x.focus();
			return false;
		}
	}
	return true;	
}

function validateInstitution(obj) {
	var x = document.getElementById('institution');
	if (obj == "1") {	
		if (x.value == "") {
			alert ("Please enter institution!");
			x.focus();
			return false;
		}
	}
	return true;
}

function validateTown(obj) {
	var x = document.getElementById('town');
	if (obj == "1") {	
		if (x.value == "") {
			alert ("Please enter town!");
			x.focus();
			return false;
		}
	}
	return true;
}

function isValidEmail(str) {
   return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}

function validateEmail(obj) {
	var x = document.getElementById('email');
	if (obj == "1") {		
		if (x.value == "") {
			alert ("Please enter E-mail address!");
			x.focus();
			return false;
		}else if (!isValidEmail(x.value)) {
			alert ("Please enter valid E-mail address!");
			x.focus();
			return false;
		}
	}
	return true;
}

function validateEmail2(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter E-mail address!");
		x.focus();
		return false;
	}else if (!isValidEmail(x.value)) {
		alert ("Please enter valid E-mail address!");
		x.focus();
		return false;
	}
	return true;
}



function validateUserName(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter user name!");
		x.focus();
		return false;
	}
	return true;
}

function validatePassword(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter password!");
		x.focus();
		return false;
	}
	return true;
}

function validatePassword2(obj1,obj2) {
	var x = document.getElementById(obj1);
	var y = document.getElementById(obj2);	
	if (x.value == "") {
		alert ("Please enter password again!");
		x.focus();
		return false;
	}else if (x.value != y.value) {
		alert ("The password is different!");
		x.focus();
		return false;
	}
	return true;
}

function validateName(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter name!");
		x.focus();
		return false;
	}
	return true;
}

function validateUni(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter Affiliation!");
		x.focus();
		return false;
	}
	return true;
}

function validatePhone(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter Phone number!");
		x.focus();
		return false;
//	}else if (isNaN(x.value)) {
//		alert ("Please enter valid Phone number!");
//		x.focus();
//		return false;
	}
	return true;	
}

function validateAddress(obj) {
	var x = document.getElementById(obj);
	if (x.value == "") {
		alert ("Please enter Address!");
		x.focus();
		return false;
	}
	return true;
}

//################################# main functions #################################//

function validateLogin(form,fullName,classYear,group,number,institution,town,email) {
	f = document.getElementById(form);
	startTime = new Date();
	if (validateFullName(fullName) && validateClass(classYear) && validateGroup(group) && validateNumber(number) && validateInstitution(institution) && validateTown(town) && validateEmail(email)) {

		var timeLimit = document.getElementById('timeLimit').value;
		dateNow = new Date();
		var y = dateNow.getFullYear();
		var mnt = dateNow.getMonth();
		var d = dateNow.getDate();
		var h = Math.round(dateNow.getHours());
		var m = dateNow.getMinutes();
		m = parseInt(timeLimit) + parseInt(m);
		if (m > 60) {
			m = m-60;
			h=h+1;
		}
		var s = dateNow.getSeconds();
		dateFuture = new Date(y,mnt,d,h,m,s);
		document.getElementById('startTime').value = dateFuture.getTime();
		f.submit();
	}
}

function validateCreateUser(form,username,password,password2,email,name,uni,phone,address) {	
	var f = document.getElementById(form);
	if (validateUserName(username) && validatePassword(password) && validatePassword2(password2,password) && validateEmail2(email) && validateName(name) && validateUni(uni) && validatePhone(phone) && validateAddress(address)) {
		f.submit();
	}
}
