Hiding Email Address Form Alter I'm trying to hide non-admin users to view the email address field in the user section. I have the following hook. Right now, I have the current password hidden, but the email sends back a naughty validation requiring email to be added.
You can use similar code as below to hide pass and mail field with optional value.

//drupal_set_message('not admin!');
$form['account']['current_pass']['#required'] = FALSE;  
$form['account']['current_pass']['#access'] = FALSE;
$form['account']['mail']['#required'] = FALSE;    
$form['account']['mail']['#access'] = FALSE;



$form['#validate'] = array_diff($form['#validate'], array('user_validate_current_pass'));
$form['#validate'] = array_diff($form['#validate'], array('user_validate_mail'));