static function registerEmail($email)
 {
     $old = User::getKV('email', $email);
     if (!empty($old)) {
         // TRANS: Error text when trying to register with an already registered e-mail address.
         // TRANS: %s is the URL to recover password at.
         throw new ClientException(sprintf(_m('A user with that email address already exists. You can use the ' . '<a href="%s">password recovery</a> tool to recover a missing password.'), common_local_url('recoverpassword')));
     }
     $valid = false;
     if (Event::handle('StartValidateUserEmail', array(null, $email, &$valid))) {
         $valid = Validate::email($email, common_config('email', 'check_domain'));
         Event::handle('EndValidateUserEmail', array(null, $email, &$valid));
     }
     if (!$valid) {
         // TRANS: Error text when trying to register with an invalid e-mail address.
         throw new ClientException(_m('Not a valid email address.'));
     }
     $confirm = Confirm_address::getAddress($email, self::CONFIRMTYPE);
     if (empty($confirm)) {
         $confirm = Confirm_address::saveNew(null, $email, 'register');
     }
     return $confirm;
 }