function validate_user_edit () {
	
		/* FOR TESTING ONLY */ //alert ('Validating a User Record Edit Form');
	
//	Assure they've selected a User Status
	if (getCorrectId('status') && getCorrectId('status').value == '') {
	
		alert ('You must select a User Status');
		
		return false;
	}
	
//	Member / Fellow Start Dates
	if (
		
		(
			getCorrectId('status')
			
				&& 
			
			(
				getCorrectId('status').value == 'RM' ||
				getCorrectId('status').value == 'AM' ||
				getCorrectId('status').value == 'SM' ||
				getCorrectId('status').value == 'HM' ||
				getCorrectId('status').value == 'FM'
			)
		)
		
	) {
		
	//	Member Start Date
		if (
				getCorrectId('status').value == 'RM' ||
				getCorrectId('status').value == 'AM' ||
				getCorrectId('status').value == 'SM' ||
				getCorrectId('status').value == 'HM'
		) {
			
			if (getCorrectId('date_member').value == '' || getCorrectId('date_member').value.length != 10 || getCorrectId('date_member').value == '0000-00-00') {
				
				alert ('MEMBER START DATE\n\nYou must provide a proper date (YYYY-MM-DD) for the Member Start Date.\n\nIf you do not know the Month the Member started, use "-00".\n\nIf you do not know the Day the Member started, use "-00".');
				
				getCorrectId('row_date_member').className 	= 'error';
				
				return false;
			}
		}
		
	//	Fellow Start Date
	//	Needs to be validated for FMs, as well as any other Members RMs that used to be Fellows (i.e.: an RM / AM / SM / HM User record with a value in the Fellow Start Date field)
		if (
				getCorrectId('status').value == 'FM'
				
					||
				
				(
					(
						getCorrectId('status').value == 'RM' ||
						getCorrectId('status').value == 'AM' ||
						getCorrectId('status').value == 'SM' ||
						getCorrectId('status').value == 'HM'
					)
					
						&&
					
					getCorrectId('date_fellow').value != ''
					
						&&
					
					getCorrectId('date_fellow').value != '0000-00-00'
				)
		) {
			
				/* FOR TESTING ONLY */ //alert ("Got a fellow date field to check: "+getCorrectId('date_fellow').value);
			
			if (getCorrectId('date_fellow').value == '' || getCorrectId('date_fellow').value.length != 10 || getCorrectId('date_fellow').value == '0000-00-00') {
				
				alert ('FELLOW START DATE\n\nYou must provide a proper date (YYYY-MM-DD) for the Fellow Start Date.\n\nIf you do not know the Month the Fellow started, use "-00".\n\nIf you do not know the Day the Fellow started, use "-00".');
				
				getCorrectId('row_date_fellow').className 	= 'error';
				
				return false;
			}
		}
	}
	
	
	
//	SPECIAL RULES FOR GUEST ACCOUNTS
	
	if (
			getCorrectId('status').value == 'NM' ||
			getCorrectId('status').value == 'NN' ||
			getCorrectId('status').value == 'RN' ||
			getCorrectId('status').value == 'FN'
	) {
		
			//alert('this is a guest account registration');
		
		if (getCorrectId('location_0_email_1')) {
		
			if (!validateEmailv2(getCorrectId('location_0_email_1').value) && user_status != 'SU') {
				
				alert ('Your Main Email address is invalid.');
				
				return false;
			}
		}
		
		if (getCorrectId('name_last')) {
		
			if (getCorrectId('name_last').value =='' && user_status != 'SU') {
				
				alert ('You must provide a Last Name.');
				
				return false;
			}
		}
		
		if (getCorrectId('gender_m')) {
		
			if (getCorrectId('gender_m').checked == false && getCorrectId('gender_f').checked == false && user_status != 'SU') {
				
				alert ('You must select a gender.');
				
				return false;
			}
		}
		
		if (
			getCorrectId('status').value == 'NM' ||
			getCorrectId('status').value == 'NN'
		) {
		
			if (getCorrectId('sponsor_id')) {
			
				if (getCorrectId('sponsor_id').value == '' && user_status != 'SU') {
					
					alert ('You must name your Sponsor.');
					
					return false;
				}
			}
		}
		
		if (
			getCorrectId('status').value == 'RN' ||
			getCorrectId('status').value == 'FN'
		) {
		
			if (getCorrectId('training_name')) {
			
				if (getCorrectId('training_name').value == '' && user_status != 'SU') {
					
					alert ('You must provide the name of your Training Program.');
					
					return false;
				}
			}
		
			if (getCorrectId('training_year')) {
			
				if (getCorrectId('training_year').value == '' && user_status != 'SU') {
					
					alert ('You must provide the year of your Training Program.');
					
					return false;
				}
			}
		}
	}
	
//	END SPECIAL RULES FOR GUEST ACCOUNTS
	
	
	
	
//	Make sure that anyone requesting a username...
	if (getCorrectId('username') && getCorrectId('username').value != '') {
		
	//..has a password
		if (getCorrectId('password').value == '' && user_status != 'SU') {
		
			alert ('You must supply a Password if requesting a Username.');
		
			return false;
		
		} else if (getCorrectId('location_0_email_1').value == '' && user_status != 'SU') {
		
			alert ('You must supply a Primary Email Address if requesting a Username.');
		
			return false;
		}
	}
	
	
//	Make sure that anyone requesting a password...
	if (getCorrectId('password') && getCorrectId('password').value != '') {
	
	//..has a username
		if (getCorrectId('username').value == '' && user_status != 'SU') {
		
			alert ('You must supply a Username if requesting a Password.');
		
			return false;
		
		} else if (getCorrectId('location_0_email_1').value == '' && user_status != 'SU') {
		
			alert ('You must supply a Primary Email Address if requesting a Username.');
		
			return false;
		}
	}
	
	
//	Validate the Email addresses
	
	if (getCorrectId('location_0_email_1') && getCorrectId('location_0_email_1').value != '') {
	
		if (!validateEmailv2(getCorrectId('location_0_email_1').value) && user_status != 'SU') {
			
			alert ('Your Main Email address is invalid.');
			
			return false;
		}
	}
	
	if (getCorrectId('email_2') && getCorrectId('email_2').value != '') {
	
		if (!validateEmailv2(getCorrectId('email_2').value) && user_status != 'SU') {
			
			alert ('Your Alternate Email address is invalid.');
			
			return false;
		}
	}
	
	for (var q=0; q<10; q++) {
		
		if (getCorrectId('location_' + q + '_email') && getCorrectId('location_' + q + '_email').value != '') {
		
			if (!validateEmailv2(getCorrectId('location_' + q + '_email').value) && user_status != 'SU') {
				
				alert ('Your Additional Location ' + (q+1) + ' Email address is invalid.');
				
				return false;
			}
		}
	}
	
	
	
	
//	ACCOUNT STATUS COURTESY ALERTS
	
	var account_status_value = getCorrectId('account_status').options[getCorrectId('account_status').selectedIndex].value;
	
		/* FOR TESTING ONLY */ //alert ("account_status_value = " + account_status_value);
	
//	Courtesy note to Admin if Account Status is Pending
	if (account_status_value.charAt(0) == 'P') {
		
		alert('NOTE - You are not allowed to submit a record that is still Pending. Set the Account Status to Active and proceed.');
		
		return false;
	}


//	Courtesy note to Admin if Account Status is Inactive
	if (account_status_value.charAt(0) == 'I') {
		
		if (confirm('NOTE - You are submitting a record that is Inactive. If this is correct, click OK. If not, click Cancel.')) {
			
			return true;
			
		} else {
		
			return false;
		}
	}


//	Courtesy note to Admin if Account Status is Deleted
	if (account_status_value.charAt(0) == 'D') {
		
		if (confirm('NOTE - You are submitting a record that is Deleted. If this is correct, click OK. If not, click Cancel.')) {
			
			return true;
			
		} else {
		
			return false;
		}
	}


//	Courtesy note to Admin if in_search_public is left unchecked for a Pending or Active Regular Member
	if (
		
		getCorrectId('in_search_public_N') // in_search_public is on the page
		
			&&
		
		getCorrectId('status').value == "RM" //..and we're editing an RM
		
			&&
		
		(
			account_status_value.charAt(0) != 'I' && 	//..and our guy is neither inactive...
			account_status_value.charAt(0) != 'P'		//..nor pending...
		)
		
			&&
		
		(
			getCorrectId('in_search_public_N').checked == true   // And it's either checked...
			
				||
			
			(
				getCorrectId('in_search_public_N').checked == false   // Or Neither Y or N are checked...
				
					&&
				
				getCorrectId('in_search_public_Y').checked == false
			)
		)
	) {
		
		if (confirm('"Full record searchable in Find a Retina Specialist" is set to NO.\n\nThis record will not be found by users in the public search, "Find a Retina Specialist".')) {
			
			return true;
			
		} else {
			
			return false;
		}
	}
	
//	END ACCOUNT STATUS COURTESY NOTES
	
}