From: Evan Prodromou Date: Mon, 11 Apr 2011 20:38:57 +0000 (-0400) Subject: hooks for adding email addresses X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=25c5a1f0efa55246e20fbac540482857dd503bd9;p=quix0rs-gnu-social.git hooks for adding email addresses --- diff --git a/EVENTS.txt b/EVENTS.txt index 4614ef3da5..6ac607382b 100644 --- a/EVENTS.txt +++ b/EVENTS.txt @@ -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 + diff --git a/actions/emailsettings.php b/actions/emailsettings.php index d515715eda..9493be80aa 100644 --- a/actions/emailsettings.php +++ b/actions/emailsettings.php @@ -404,23 +404,28 @@ 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(); - mail_confirm_address($user, $confirm->code, $user->nickname, $email); + 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)); + } // 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. '.