// JavaScript Document

function popupWindow(url) 
{
	newwindow=window.open(url,'name','width=300,height=200,menubar=yes,status=yes,location=yes,toolbar=yes,scrollbars=yes');
	if (window.focus) {
		newwindow.focus()
	}
	return false;
}

function clearErrorfields()
{
	document.getElementById('fname_error').innerHTML = ""
	document.getElementById('lname_error').innerHTML = ""
	document.getElementById('country_error').innerHTML = ""
	document.getElementById('phone_error').innerHTML = ""
	document.getElementById('mobile_error').innerHTML = ""
	document.getElementById('email_error').innerHTML = ""
	document.getElementById('plot_status_error').innerHTML = ""
	document.getElementById('completion_time_error').innerHTML = ""
	document.getElementById('build_type_error').innerHTML = ""
	document.getElementById('build_size_error').innerHTML = ""
	document.getElementById('comment_error').innerHTML = ""	
}

function validateForm()
{
	salutation = document.getElementById('salutation').value;
	firstname = document.getElementById('first_name').value;
	lastname = document.getElementById('last_name').value;
	country = document.getElementById('country').value;
	phone = document.getElementById('phone').value;
	mobile = document.getElementById('mobile').value;
	email = document.getElementById('email').value;
	plotstatus = document.getElementById('00N2000000265yG').value;
	buildingyear = document.getElementById('00N2000000265y6').value;
	buildingmonth = document.getElementById('00N2000000265y1').value;
	buildtype = document.getElementById('00N2000000265yB').value;
	buildsize = document.getElementById('00N2000000265yL').value;
	comment = document.getElementById('00N20000001is8O').value;
	subscribe = document.getElementById('emailOptOut').checked;

	clearErrorfields();

	if(firstname == ""){
		document.getElementById('fname_error').innerHTML = "Please enter your first name";
		document.getElementById('first_name').focus();
		return false;
	}
	else if(firstname != "" && !isNaN(firstname) || !isAlphabetic(firstname)){
		document.getElementById('fname_error').innerHTML = "Please enter a valid name";
		document.getElementById('first_name').focus();
		return false;		
	}
	else if(firstname.length < 3){
		document.getElementById('fname_error').innerHTML = "Please enter more than two characters";
		document.getElementById('first_name').focus();
		return false;		
	}	
	else{
		firstname = ucfirst( strtolower(firstname) );
	}
		
	if(lastname == ""){
		document.getElementById('lname_error').innerHTML = "Please enter your last name";
		document.getElementById('last_name').focus();
		return false;
	}
	else if(lastname != "" && !isNaN(lastname) ){
		document.getElementById('lname_error').innerHTML = "Please enter a valid name";
		document.getElementById('last_name').focus();
		return false;
	}
	else if(lastname.length < 3){
		document.getElementById('lname_error').innerHTML = "Please enter more than two characters";
		document.getElementById('last_name').focus();
		return false;		
	}	
	else{
		lastname = ucfirst( strtolower(lastname) );
	}
	
	
	if(country == ""){
		document.getElementById('country_error').innerHTML = "Please select your country";
		document.getElementById('country').focus();
		return false;
	}	

	if(phone == ""){
		document.getElementById('phone_error').innerHTML = "Please enter your phone number";
		document.getElementById('phone').focus();
		return false;
	}
	else if(!isValidTeleNum(phone)){
		document.getElementById('phone_error').innerHTML = "Please enter a valid phone number starting with +";
		document.getElementById('phone').focus();
		return false;
	}
		
	
	if(mobile != "" && !isValidTeleNum(mobile)){
		document.getElementById('mobile_error').innerHTML = "Please enter a valid mobile number starting with +";
		document.getElementById('mobile').focus();
		return false;
	}	
		
	
	if(email == ""){
		document.getElementById('email_error').innerHTML = "Please enter your email address";
		document.getElementById('email').focus();
		return false;
	}	
	else if(email != "" && !validateMail(email)){
		document.getElementById('email_error').innerHTML = "Please enter a valid email address";
		document.getElementById('email').focus();
		return false;
	}		

	if(plotstatus == ""){
		document.getElementById('plot_status_error').innerHTML = "Please select your plot status";
		document.getElementById('00N2000000265yG').focus();
		return false;
	}	
	
    if(buildtype == ""){
		document.getElementById('build_type_error').innerHTML = "Please select your building type";
		document.getElementById('00N2000000265yG').focus();
		return false;
	}	

	if(buildsize == ""){
		document.getElementById('build_size_error').innerHTML = "Please enter your building size";
		document.getElementById('00N2000000265yL').focus();
		return false;
	}	
	else if(buildsize != "" && isNaN(buildsize) || (buildsize != "" && buildsize < 0)){
		document.getElementById('build_size_error').innerHTML = "Please enter a valid building size";
		document.getElementById('00N2000000265yL').focus();
		return false;
	}	
	else if(buildsize < 11){
		document.getElementById('build_size_error').innerHTML = "Building size should be more than 10 m<sup>2</sup>";
		document.getElementById('00N2000000265yL').focus();
		return false;
	}
		
//	if(buildingyear == "" || buildingmonth == ""){
	if(buildingyear == ""){
		document.getElementById('completion_time_error').innerHTML = "Please select your building completion time";
		document.getElementById('00N2000000265yG').focus();
		return false;
	}	
	
	
	if(comment == ""){
		document.getElementById('comment_error').innerHTML = "Please add your comment";
		document.getElementById('00N20000001is8O').focus();
		return false;
	}				
	return true;
}

function ucfirst (str) {
    str += '';
    var f = str.charAt(0).toUpperCase();
    return f + str.substr(1);
}

function strtolower (str) {
    return (str + '').toLowerCase();
}

function isAlphabetic(val)
{
	if (val.match(/^[a-zA-Z]+$/)){
		return true;
	}
	else{
		return false;
	}	
}


function isValidTeleNum(num)
{
    if(num.charAt(0) != '+'){
        return false;
    }
    woutplus = num.replace("+","");
    woutspace = woutplus.split(' ').join('')
    woutdash = woutspace.split('-').join('')
    finalized = woutdash;
   
    if(finalized.length > 9 && finalized.length < 15 && !isNaN(finalized)){
        return true;   
    }
    else{
        return false;
    }
}

function validateMail(email)
{	
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(email)) {
		return true;
	}
	return false;
}
