hooks for adding email addresses

This commit is contained in:
Evan Prodromou 2011-04-11 16:38:57 -04:00
parent 09cffc1928
commit 25c5a1f0ef
2 changed files with 26 additions and 13 deletions

View File

@ -1334,3 +1334,11 @@ EndShowThreadedNoticeSub: when showing a reply to a notice
- $parent: parent notice
- $child: child notice
StartAddEmailAddress: when adding an email address through the Web UI
- $user: user getting the new address
- $email: email being added
EndAddEmailAddress: done adding an email address through the Web UI
- $user: user getting the new address
- $email: email being added

View File

@ -404,24 +404,29 @@ class EmailsettingsAction extends SettingsAction
return;
}
$confirm = new Confirm_address();
if (Event::handle('StartAddEmailAddress', array($user, $email))) {
$confirm->address = $email;
$confirm->address_type = 'email';
$confirm->user_id = $user->id;
$confirm->code = common_confirmation_code(64);
$confirm = new Confirm_address();
$result = $confirm->insert();
$confirm->address = $email;
$confirm->address_type = 'email';
$confirm->user_id = $user->id;
$confirm->code = common_confirmation_code(64);
if ($result === false) {
common_log_db_error($confirm, 'INSERT', __FILE__);
// TRANS: Server error thrown on database error adding e-mail confirmation code.
$this->serverError(_('Could not insert confirmation code.'));
return;
$result = $confirm->insert();
if ($result === false) {
common_log_db_error($confirm, 'INSERT', __FILE__);
// TRANS: Server error thrown on database error adding e-mail confirmation code.
$this->serverError(_('Could not insert confirmation code.'));
return;
}
mail_confirm_address($user, $confirm->code, $user->nickname, $email);
Event::handle('EndAddEmailAddress', array($user, $email));
}
mail_confirm_address($user, $confirm->code, $user->nickname, $email);
// TRANS: Message given saving valid e-mail address that is to be confirmed.
$msg = _('A confirmation code was sent to the email address you added. '.
'Check your inbox (and spam box!) for the code and instructions '.