//Validations for the mian page      		
function validateLoginForm()
{
var x=document.forms["login"]["user"].value;
if (x==null || x=="")
	{
	alert("Please enter your username");
	document.getElementById('name').focus();
	return false;
	}
var y=document.forms["login"]["pass"].value;
	if (y==null || y=="")
	{
	alert("Please enter password");
	document.getElementById('pass').focus();
	return false;
	}
}
//Validate contact form
function validateContactForm(){
	var url = './ajax/contactus.php';
	var params;
	var fullname=document.forms["contactus"]["fullname"].value;
	var email=document.forms["contactus"]["email"].value;
	var message=document.forms["contactus"]["email_message"].value;
	var emailtrigger=document.forms["contactus"]["emailtrigger"].value;
	//validation goes here
	
	//AJAX request
	var callback = function(){
		alert('email sent');
	}
	params = '?emailtrigger=1&email='+email + '&fullname=' + fullname + '&msg=' + message;
	var response = sendRequest('POST', url, true, callback, params);
}
//Validate sign-up form
function validateSignupForm(){

	var EMAIL_PATERN = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	var PIN_PATERN = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	var username=document.forms["signup"]["username"].value;
	var pin1=document.forms["signup"]["pin1"].value;
	var pin2=document.forms["signup"]["pin2"].value;
	var email=document.forms["signup"]["email"].value;
	var emailformat=document.forms["signup"]["email"].value;
	
	var errEl = document.getElementById('username-err');
	  	errEl.innerHTML = '';	  
		errEl = document.getElementById('pin1-err');
  		errEl.innerHTML = '';
		errEl = document.getElementById('email-err');
  		errEl.innerHTML = '';
		errEl = document.getElementById('pin2-err');
  		errEl.innerHTML = '';
	document.getElementById("username").style.border="1px green solid";
	document.getElementById("pin1").style.border="1px green solid";
	document.getElementById("email").style.border="1px green solid";
	document.getElementById("pin2").style.border="1px green solid";
	var hasError = false;
	
	//Email Validation Required
	if (email==null || email=="")
	{
	  if(!hasError){
	  	var errEl = document.getElementById('email-err');
	  	errEl.innerHTML = "<font color=red> Please enter e-mail.</font>";
	  	document.getElementById('email').focus();
	  }
	  document.getElementById("email").style.border="1px red solid"; 
	  hasError = true;  
	}
	else {
	 	var errEl = document.getElementById('email-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("email").style.border="1px green solid";	
	}
	
	var emailPattern = EMAIL_PATERN;///^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/; 
	//Email Validation Format
	if (emailPattern.test(emailformat)==false) {  
	  if(!hasError){
	  	var errEl = document.getElementById('email-err');
	  	errEl.innerHTML = "<font color=red> Please enter valid email</font>";
	  	document.getElementById('email').focus();
	  }
	  document.getElementById("email").style.border="1px red solid"; 
	  hasError = true;  
	}
	else {
		var errEl = document.getElementById('email-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("email").style.border="1px green solid";	    
	}
	
	//Username Required Validation
	if (username==null || username=="")
	{
		if(!hasError){
	  		var errEl = document.getElementById('username-err');
	  		errEl.innerHTML = "<font color=red> Please enter username</font>";
	  		document.getElementById('username').focus();
	  	}
	  	document.getElementById("username").style.border="1px red solid"; 
	  	hasError = true;  
	}
	else {
		var errEl = document.getElementById('username-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("username").style.border="1px green solid";	    
	}
	
	//Password Validation
	if (pin1==null || pin1=="")
	{
	  if(!hasError){
	  	var errEl = document.getElementById('pin1-err');
	  	errEl.innerHTML = "<font color=red> Please enter password</font>";
	  	document.getElementById('pin1').focus();
	  }
	  
	  document.getElementById("pin1").style.border="1px red solid"; 
	  hasError = true;  
	}
	else {
		var errEl = document.getElementById('pin1-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("pin1").style.border="1px green solid";	    
	}
	
	//Password format validation
	//var pinPattern = (?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{6,12})$; 
	var pinPattern = PIN_PATERN;///(?!^[0-9]*$)(?!^[a-zA-Z]*$)({6,12})$/; 
	
	//Password Validation Format
	//if (!pinPattern.test(pin1)) { 
	if(!validatePwd(pin1)){
	  if(!hasError){
	  	var errEl = document.getElementById('pin1-err');
	  	errEl.innerHTML = "<font color=red>Invalid password format.</font>";
	  	document.getElementById('pin1').focus();
	  }
	  document.getElementById("pin1").style.border="1px red solid"; 
	  hasError = true;  
	}
	else {
		var errEl = document.getElementById('pin1-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("pin1").style.border="1px green solid";	    
	}

	//Password Confirmation Validation
	if (pin2!=pin1 || pin2=="")
	{
	  if(!hasError){
	  	var errEl = document.getElementById('pin2-err');
	  	errEl.innerHTML = "<font color=red> Passwords do not match.</font>";
	  	document.getElementById('pin2').focus();
	  }
	  document.getElementById("pin2").style.border="1px red solid"; 
	  hasError = true;  
	}
	else {
		var errEl = document.getElementById('pin2-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("pin2").style.border="1px green solid";	    
	}
	
	return !hasError;
}

function validatePwd(pw){
	var valid = 6 <= pw.length && 2 <= (
    /[a-z]/i.test(pw) +
    /[0-9]/.test(pw) +
    /[~!@#$^%*]/.test(pw)
	);
return valid;
}

//Ajax function to check username       
function checkId(username)
{

	if (username.length==0)
  	{ 
  		document.getElementById("username").innerHTML="";
  		return;
  	}
  
	var url = "test/ajax/checkNewUser.php?user="+username;
	var raspuns = sendRequest('GET', url, false);     
	
    if(raspuns==0)
    {
    	document.getElementById("username-err").innerHTML="<font color=red> Sorry, " + username +" is taken. Please re-select.</font>";
    	document.getElementById('username').value="";
    	document.getElementById("username").style.border="1px red solid";
    	document.getElementById('username').focus();
    }
    else
    {
        document.getElementById("username-err").innerHTML="";
        document.getElementById("username").style.border="1px green solid";
    }
   
}

//Remind and validate password
function remindPassword()
{
	var pinReset=document.getElementById("emailReset").value;
	//Email Exist error
	if (pinReset==null || pinReset=="")
	{
	  	var errEl = document.getElementById('emailReset-err');
	  	errEl.innerHTML = "<font color=red> Please enter e-mail.</font>";
	  	document.getElementById('emailReset').focus();
	}	
	//Email Validation Format
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	if (emailPattern.test(pinReset)==false) {  
	  	var errEl = document.getElementById('emailReset-err');
	  	errEl.innerHTML = "<font color=red> Please enter valid email</font>";
	  	document.getElementById('emailReset').focus();
	  document.getElementById("emailReset").style.border="1px red solid"; 
	}
	else {
		var errEl = document.getElementById('emailReset-err');
	  	errEl.innerHTML = '';
	  	document.getElementById("emailReset").style.border="1px green solid";	    
		//AJAX
		var url = "test/ajax/remindPassword.php?email="+pinReset;
		//alert(url);
		var raspuns2 = sendRequest('GET', url, false);
		document.getElementById("emailReset-err").innerHTML=raspuns2;
		}
}
