function checkNotNull(str) {
	try{
		var newstr = str.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
		if (newstr != null && newstr != ''){
			return true;
		}
		else
		{
			return false;
		}
	}
	catch(err){
		ExceptionHandler(err, arguments.callee.toString());
		return false;
	}
}
function output_error(obj_id, message){
	try{
		document.getElementById(obj_id).innerHTML = message;
	}catch(err){
		ExceptionHandler(err, arguments.callee.toString(), obj_id);
	}
}
function ExceptionHandler(err, ownName, parameter){
	//var ownName = arguments.callee.toString();
	ownName = ownName.substr('function '.length);        // trim off "function "
	ownName = ownName.substr(0, ownName.indexOf(')')+1);        // trim off everything after the function name
													  
	alert('Error Name: ' + err.name + '\nError Message: ' + err.message + '\nParameter: ' + parameter + '\nLine Number: ' + err.lineNumber + '\nCalleeInfo: ' + ownName);
	return false;
}

function check_contact_form(){
	try{
			if(!checkNotNull(document.getElementById('name').value))
		{
			resetContact();		

			document.getElementById('name').className = 'contact-input1';
			document.getElementById('name').style.border = '1px solid red';
			document.getElementById('name').focus();
			output_error('contact_error', 'Please input Your Name.');
			return false;
		}
		if(!checkNotNull(document.getElementById('email').value))
		{
			resetContact();		

			document.getElementById('email').className = 'contact-input1';
			document.getElementById('email').style.border = '1px solid red';
			document.getElementById('email').focus();
			output_error('contact_error', 'Please input Email.');
			return false;
		}
		if(!checkNotNull(document.getElementById('phone').value))
		{
			resetContact();		

			document.getElementById('phone').className = 'contact-input1';
			document.getElementById('phone').style.border = '1px solid red';
			document.getElementById('phone').focus();
			output_error('contact_error', 'Please input Phone.');
			return false;
		}

	
		
				if(!checkNotNull(document.getElementById('captcha_code').value))
		{
			resetContact();		

			document.getElementById('captcha_code').className = 'contact-input1';
			document.getElementById('captcha_code').style.border = '1px solid red';
			document.getElementById('captcha_code').focus();
			output_error('contact_error', 'Please input Security Code.');
			return false;
		}
		return true;
	}
	catch(err){
		ExceptionHandler(err, arguments.callee.toString());
		return false;
	}
}

function check_free_market_evaluation_form(){
	
	try{
		
		
		if(!checkNotNull(document.getElementById('name').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('name').className = 'contact-input1';
			document.getElementById('name').style.border = '1px solid red';
			document.getElementById('name').focus();
			output_error('contact_error', 'Please input Your Name.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('address').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('address').className = 'contact-input1';
			document.getElementById('address').style.border = '1px solid red';
			document.getElementById('address').focus();
			output_error('contact_error', 'Please input Address.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('town').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('town').className = 'contact-input1';
			document.getElementById('town').style.border = '1px solid red';
			document.getElementById('town').focus();
			output_error('contact_error', 'Please input Town.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('email').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('email').className = 'contact-input1';
			document.getElementById('email').style.border = '1px solid red';
			document.getElementById('email').focus();
			output_error('contact_error', 'Please input Email.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('phone').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('phone').className = 'contact-input1';
			document.getElementById('phone').style.border = '1px solid red';
			document.getElementById('phone').focus();
			output_error('contact_error', 'Please input Phone.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('cell').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('cell').className = 'contact-input1';
			document.getElementById('cell').style.border = '1px solid red';
			document.getElementById('cell').focus();
			output_error('contact_error', 'Please input Cell.');
			return false;
		}
		
		if(!checkNotNull(document.getElementById('about_your_home').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('about_your_home').className = 'contact-input1';
			document.getElementById('about_your_home').style.border = '1px solid red';
			document.getElementById('about_your_home').focus();
			output_error('contact_error', 'Please input About Your Home.');
			return false;
		}

		if(!checkNotNull(document.getElementById('captcha_code').value)) {
			resetFreeMarketEvaluation();		

			document.getElementById('captcha_code').className = 'contact-input1';
			document.getElementById('captcha_code').style.border = '1px solid red';
			document.getElementById('captcha_code').focus();
			output_error('contact_error', 'Please input Security Code.');
			return false;
		}
		
		return true;
		
	}
	
	catch(err){
		
		ExceptionHandler(err, arguments.callee.toString());
		return false;
		
	}
	
}

	function resetContact(){
		document.getElementById('name').style.border = '1px solid #A5ACB2';
		document.getElementById('phone').style.border = '1px solid #A5ACB2';
		document.getElementById('email').style.border = '1px solid #A5ACB2';
		document.getElementById('captcha_code').style.border = '1px solid #A5ACB2';
	}
	
	function resetFreeMarketEvaluation(){
		document.getElementById('name').style.border = '1px solid #A5ACB2';
		document.getElementById('address').style.border = '1px solid #A5ACB2';
		document.getElementById('town').style.border = '1px solid #A5ACB2';
		document.getElementById('phone').style.border = '1px solid #A5ACB2';
		document.getElementById('email').style.border = '1px solid #A5ACB2';
		document.getElementById('cell').style.border = '1px solid #A5ACB2';
		document.getElementById('about_your_home').style.border = '1px solid #A5ACB2';
		document.getElementById('captcha_code').style.border = '1px solid #A5ACB2';
	}
	
	function check_realtor_form(){
	try{
			if(!checkNotNull(document.getElementById('name').value))
		{
			resetContact();		

			document.getElementById('name').className = 'realtor-input1';
			document.getElementById('name').style.border = '1px solid red';
			document.getElementById('name').focus();
			output_error('contact_error', 'Please input Your Name.');
			return false;
		}
		if(!checkNotNull(document.getElementById('email').value))
		{
			resetContact();		

			document.getElementById('email').className = 'realtor-input1';
			document.getElementById('email').style.border = '1px solid red';
			document.getElementById('email').focus();
			output_error('contact_error', 'Please input Email.');
			return false;
		}
		if(!checkNotNull(document.getElementById('phone').value))
		{
			resetContact();		

			document.getElementById('phone').className = 'realtor-input1';
			document.getElementById('phone').style.border = '1px solid red';
			document.getElementById('phone').focus();
			output_error('contact_error', 'Please input Phone.');
			return false;
		}

	
		
				if(!checkNotNull(document.getElementById('captcha_code').value))
		{
			resetContact();		

			document.getElementById('captcha_code').className = 'realtor-input1';
			document.getElementById('captcha_code').style.border = '1px solid red';
			document.getElementById('captcha_code').focus();
			output_error('contact_error', 'Please input Security Code.');
			return false;
		}
		return true;
	}
	catch(err){
		ExceptionHandler(err, arguments.callee.toString());
		return false;
	}
}
