From c8873de08b7669bfd33eae23e9de722d9c256d9a Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Sun, 13 Jul 2014 15:29:58 +0200 Subject: [PATCH] Start and End EmailFormData events include current profile --- EVENTS.txt | 8 +++++--- actions/emailsettings.php | 4 ++-- plugins/EmailSummary/EmailSummaryPlugin.php | 7 +++---- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/EVENTS.txt b/EVENTS.txt index b61fff8a18..5b6483093e 100644 --- a/EVENTS.txt +++ b/EVENTS.txt @@ -290,11 +290,13 @@ StartProfileSaveForm: before starting to save a profile settings form EndProfileSaveForm: after saving a profile settings form (after commit, no profile or user object!) - $action: action object being shown -StartEmailFormData: just before showing text entry fields on email settings page -- $action: action object being shown +StartEmailFormData: just before showing form input fields on email settings page +- $action: Action object being shown +- $scoped: Profile for whom settings are being configured -EndEmailFormData: just after showing text entry fields on email settings page +EndEmailFormData: just after showing form input fields on email settings page - $action: action object being shown +- $scoped: Profile for whom settings are being configured StartEmailSaveForm: before starting to save a email settings form - $action: action object being shown diff --git a/actions/emailsettings.php b/actions/emailsettings.php index ad16d4da4b..117c4c4f7c 100644 --- a/actions/emailsettings.php +++ b/actions/emailsettings.php @@ -206,7 +206,7 @@ class EmailsettingsAction extends SettingsAction $this->elementStart('ul', 'form_data'); - if (Event::handle('StartEmailFormData', array($this))) { + if (Event::handle('StartEmailFormData', array($this, $this->scoped))) { $this->elementStart('li'); $this->checkbox('emailnotifysub', // TRANS: Checkbox label in e-mail preferences form. @@ -244,7 +244,7 @@ class EmailsettingsAction extends SettingsAction _('Publish a MicroID for my email address.'), $user->emailmicroid); $this->elementEnd('li'); - Event::handle('EndEmailFormData', array($this)); + Event::handle('EndEmailFormData', array($this, $this->scoped)); } $this->elementEnd('ul'); // TRANS: Button label to save e-mail preferences. diff --git a/plugins/EmailSummary/EmailSummaryPlugin.php b/plugins/EmailSummary/EmailSummaryPlugin.php index d67ddf9fb3..da94322411 100644 --- a/plugins/EmailSummary/EmailSummaryPlugin.php +++ b/plugins/EmailSummary/EmailSummaryPlugin.php @@ -96,18 +96,17 @@ class EmailSummaryPlugin extends Plugin * Add a checkbox to turn off email summaries * * @param Action $action Action being executed (emailsettings) + * @param Profile $scoped Profile for whom settings are configured (current user) * * @return boolean hook value */ - function onEndEmailFormData($action) + public function onEndEmailFormData(Action $action, Profile $scoped) { - $user = common_current_user(); - $action->elementStart('li'); $action->checkbox('emailsummary', // TRANS: Checkbox label in e-mail preferences form. _m('Send me a periodic summary of updates from my network'), - Email_summary_status::getSendSummary($user->id)); + Email_summary_status::getSendSummary($scoped->id)); $action->elementEnd('li'); return true; }