//JS FOR JOHN

//FORM VALIDATION
function isEmailAddress (string) {
	var addressPattern = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
	return addressPattern.test(string);
}

function notEmptyStr(strValue) {
	var objRegExp  = /\S/;
	return objRegExp.test(strValue);
}
	
function isPhoneNumber(strValue) {
	var cleanPhone = strValue.replace(/\D/g, "")
	var tenDigits  = /\d{10}/;
	return tenDigits.test(cleanPhone);
}
function isZipCode(strValue) {
	var fiveDigits  = /^\d{5}$/;
	return fiveDigits.test(strValue);
}
function isInt(strValue) {
	var anyDigits  = /^\d+$/;
	return anyDigits.test(strValue);
}
function is3Int(strValue) {
	var anyDigits  = /^\d{3}$/;
	return anyDigits.test(strValue);
}
function is4Int(strValue) {
	var anyDigits  = /^\d{4}$/;
	return anyDigits.test(strValue);
}
function checkWork() {
	var error='';
	if (notEmptyStr(document.getElementById('workForm').first_name.value)==false) {
		error+='Please enter your first name.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').last_name.value)==false) {
		error+='Please enter your last name.\r\n';
	}
	if (isEmailAddress(document.getElementById('workForm').email_address.value)==false) {
		error+='Please enter a valid email address.\r\n';
	}	
	if (isPhoneNumber(document.getElementById('workForm').phone.value)==false) {
		error+='Please enter your full ten-digit phone number.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').address.value)==false) {
		error+='Please enter your address.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').city.value)==false) {
		error+='Please enter your city.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').state.value)==false) {
		error+='Please enter your state.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').zip.value)==false) {
		error+='Please enter your zipcode.\r\n';
	}	
	if (notEmptyStr(document.getElementById('workForm').position_sought.value)==false) {
		error+='Please enter the position you are seeking.\r\n';
	}	
	if (notEmptyStr(document.getElementById('workForm').date_available.value)==false) {
		error+='Please enter your date available.\r\n';
	}
	if (notEmptyStr(document.getElementById('workForm').desired_salary.value)==false) {
		error+='Please enter your desired salary.\r\n';
	}	
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function checkRegister() {
	var error='';
	if (notEmptyStr(document.getElementById('registerForm').first_name.value)==false) {
		error+='Please enter your first name.\r\n';
	}
	if (notEmptyStr(document.getElementById('registerForm').last_name.value)==false) {
		error+='Please enter your last name.\r\n';
	}
	if (isEmailAddress(document.getElementById('registerForm').email.value)==false) {
		error+='Please enter a valid email address.\r\n';
	}	
	if (isPhoneNumber(document.getElementById('registerForm').phone.value)==false) {
		error+='Please enter your full ten-digit phone number.\r\n';
	}
	if (notEmptyStr(document.getElementById('registerForm').address.value)==false) {
		error+='Please enter your address.\r\n';
	}
	if (notEmptyStr(document.getElementById('registerForm').city.value)==false) {
		error+='Please enter your city.\r\n';
	}
	if (notEmptyStr(document.getElementById('registerForm').state.value)==false) {
		error+='Please enter your state.\r\n';
	}	
	if ((document.getElementById('registerForm').password.value)!=(document.getElementById('registerForm').password2.value)) {
		error+='Please confirm your password.\r\n';
	}		
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function checkForgot() {
	var error='';
	if (isEmailAddress(document.getElementById('forgotForm').email.value)==false) {
		error+='Please enter a valid email address.\r\n';
	}	
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function checkProp1() {
	var error='';
	if (notEmptyStr(document.getElementById('propertyForm').ContactName.value)==false) {
		error+='Please enter a contact name.\r\n';
	}
	if ((is3Int(document.getElementById('propertyForm').ContactTel1.value)==false) ||(is3Int(document.getElementById('propertyForm').ContactTel2.value)==false) || (is4Int(document.getElementById('propertyForm').ContactTel3.value)==false)) {
		error+='Please enter a valid contact phone number.\r\n';
	}	
	if (notEmptyStr(document.getElementById('propertyForm').Address.value)==false) {
		error+='Please enter a valid address.\r\n';
	}
	if (notEmptyStr(document.getElementById('propertyForm').Neighborhood.value)==false) {
		error+='Please select a neighborhood.\r\n';
	}	
	if (isZipCode(document.getElementById('propertyForm').Zip.value)==false) {
		error+='Please enter a valid 5-digit zip code.\r\n';
	}	
	if (notEmptyStr(document.getElementById('propertyForm').Bedrooms.value)==false) {
		error+='Please select the number of bedrooms.\r\n';
	}	
	if (notEmptyStr(document.getElementById('propertyForm').Bathrooms.value)==false) {
		error+='Please select the number of bathrooms.\r\n';
	}		
	if (isInt(document.getElementById('propertyForm').Rent.value)==false) {
		error+='Please enter the requested rent in digits only.\r\n';
	}	
	if (isInt(document.getElementById('propertyForm').Deposit.value)==false) {
		error+='Please enter the security deposit in digits only.\r\n';
	}	
	if (isInt(document.getElementById('propertyForm').TotalUnits.value)==false) {
		error+='Please enter the total units in digits only.\r\n';
	}	
	if (isInt(document.getElementById('propertyForm').AvailUnits.value)==false) {
		error+='Please enter the available units in digits only.\r\n';
	}	
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function checkOwner() {
	var error='';
	if (notEmptyStr(document.getElementById('ownerForm').FirstName.value)==false) {
		error+='Please enter your first name.\r\n';
	}
	if (notEmptyStr(document.getElementById('ownerForm').LastName.value)==false) {
		error+='Please enter your last name.\r\n';
	}
	if ((document.getElementById('ownerForm').UserPassword.value)!=(document.getElementById('ownerForm').UserPassword2.value)) {
		error+='Please confirm your password.\r\n';
	}	
	if (is4Int(document.getElementById('ownerForm').SSN4.value)==false) {
		error+='Please enter the last four digits of your social security number.\r\n';
	}	
	if (notEmptyStr(document.getElementById('ownerForm').OwnerAddress.value)==false) {
		error+='Please enter a valid address.\r\n';
	}	
	if (notEmptyStr(document.getElementById('ownerForm').OwnerCity.value)==false) {
		error+='Please enter your city.\r\n';
	}	
	if (notEmptyStr(document.getElementById('ownerForm').OwnerState.value)==false) {
		error+='Please enter your state.\r\n';
	}
	if (isZipCode(document.getElementById('ownerForm').OwnerZIP.value)==false) {
		error+='Please enter a valid 5-digit zip code.\r\n';
	}		
	if ((is3Int(document.getElementById('ownerForm').OwnerTel1.value)==false) ||(is3Int(document.getElementById('ownerForm').OwnerTel2.value)==false) || (is4Int(document.getElementById('ownerForm').OwnerTel3.value)==false)) {
		error+='Please enter a valid phone number.\r\n';
	}	
	if (isInt(document.getElementById('ownerForm').Units.value)==false) {
		error+='Please enter the number of units you own in Chicago in digits only.\r\n';
	}	
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function checkSearch() {
	var error='';
	if (notEmptyStr(document.getElementById('searchForm').Bedrooms.value)==false) {
		error+='Please select the number of bedrooms you require.\r\n';
	}
	if (isInt(document.getElementById('searchForm').MaximumRent.value)==false) {
		error+='Please enter the maximum rent you think the landlord charges market-rate renters, not the portion of rent you are responsible for, in digits only.\r\n';
	}	
	if (error=='') {
		return true;
	} else {
		alert (error);
		return false;			
	}
}
function addOnloadEvent(fnc){
  if ( typeof window.addEventListener != "undefined" )
    window.addEventListener( "load", fnc, false );
  else if ( typeof window.attachEvent != "undefined" ) {
    window.attachEvent( "onload", fnc );
  }
  else {
    if ( window.onload != null ) {
      var oldOnload = window.onload;
      window.onload = function ( e ) {
        oldOnload( e );
        window[fnc]();
      };
    }
    else
      window.onload = fnc;
  }
}
function passSet(passID, formID) {
	var pass = '<input type="password" name="password" id="password" value="" class="searchInput" />';   
	document.getElementById(passID).innerHTML = pass;
	document.getElementById(formID).password.focus();
	document.getElementById(formID).password.focus();
}	
function toggleDiv(targetDiv, expanderDiv) {
	if (document.getElementById(targetDiv)) {
		if (document.getElementById(targetDiv).style.display=="none") {
			document.getElementById(targetDiv).style.display="block"
			document.getElementById(expanderDiv).innerHTML='<a href="" onclick="toggleDiv(\''+targetDiv+'\',\''+expanderDiv+'\'); return false;">Close -</a>';	
		} else {
			document.getElementById(targetDiv).style.display="none"
			document.getElementById(expanderDiv).innerHTML='<a href="" onclick="toggleDiv(\''+targetDiv+'\',\''+expanderDiv+'\'); return false;">Expand +</a>';	
		}
	}
}
function toggleDivSpanish(targetDiv, expanderDiv) {
	if (document.getElementById(targetDiv)) {
		if (document.getElementById(targetDiv).style.display=="none") {
			document.getElementById(targetDiv).style.display="block"
			document.getElementById(expanderDiv).innerHTML='<a href="" onclick="toggleDivSpanish(\''+targetDiv+'\',\''+expanderDiv+'\'); return false;">Cierre -</a>';	
		} else {
			document.getElementById(targetDiv).style.display="none"
			document.getElementById(expanderDiv).innerHTML='<a href="" onclick="toggleDivSpanish(\''+targetDiv+'\',\''+expanderDiv+'\'); return false;">Ampl&iacute;ese +</a>';	
		}
	}
}
function confirmDelete() {
	var answer = confirm("Are you sure you want to delete this listing?")
	if (answer){
		return true;
	} else {
		return false;
	}
}