From 8ba0a69e9e004e3192a8bacede244182d83e96b4 Mon Sep 17 00:00:00 2001 From: robinsowell Date: Mon, 4 Aug 2025 14:37:12 -0400 Subject: [PATCH 1/2] Adding email address hooks docs Documenting new hooks related to email address overrides. https://github.com/ExpressionEngine/ExpressionEngine/pull/4805 --- docs/development/extension-hooks/cp/login.md | 23 ++++++++++- .../extension-hooks/global/email.md | 39 +++++++++++++++++++ .../extension-hooks/module/member-auth.md | 21 ++++++++++ 3 files changed, 82 insertions(+), 1 deletion(-) diff --git a/docs/development/extension-hooks/cp/login.md b/docs/development/extension-hooks/cp/login.md index a5a275ebb..0932c2a5a 100755 --- a/docs/development/extension-hooks/cp/login.md +++ b/docs/development/extension-hooks/cp/login.md @@ -54,7 +54,7 @@ How it's called: $this->extensions->call('cp_member_logout'); if ($this->extensions->end_script === TRUE) return; - + ## `cp_member_reset_password()` | Parameter | Type | @@ -67,3 +67,24 @@ How it's called: $this->extensions->call('cp_member_process_reset_password'); if ($this->extensions->end_script === TRUE) return; + +## `cp_member_send_reset_token_start($address)` + +| Parameter | Type | Description +| --------- | -------- | --------------------------------------------------------------- +| $address | `String` | Email address posted from the control panel reset password form +| Returns | `String` | Email address after extension processes it + +Additional processing of email address sent via control panel reset password form. + +How it's called: + +``` + if (ee()->extensions->active_hook('member_auth_send_reset_token_start')) { + $address = ee()->extensions->call('member_auth_send_reset_token_start', $address); + if (ee()->extensions->end_script === true) { + return; + } + } +``` + diff --git a/docs/development/extension-hooks/global/email.md b/docs/development/extension-hooks/global/email.md index 6efd70ff6..69cf7a48b 100755 --- a/docs/development/extension-hooks/global/email.md +++ b/docs/development/extension-hooks/global/email.md @@ -13,8 +13,47 @@ lang: php # Email Library Extension Hooks +## `email_from_address($from, $name)` + +| Parameter | Type | Description +| --------- | -------- | -------------------------------------- +| $from | `String` | Email `from` address +| $name | `String` | Email `name` for `from` address +| Returns | `String` | Manipulated Email `from` address + +Overwrite an email `from` address. + +How it's called: + +``` + if (ee()->extensions->active_hook('email_from_address')) { + $from = ee()->extensions->call('email_from_address', $from, $name); + } +``` + +## `email_to_address($to)` + +| Parameter | Type | Description +| --------- | -------- | -------------------------------------- +| $to | `String` | Email `from` address +| Returns | `String` | Manipulated Email `to` address + +Overwrite an email `to` address. + +How it's called: + +``` + if (ee()->extensions->active_hook('email_to_address')) { + $to = ee()->extensions->call('email_to_address', $to); + } +``` + + ## `email_send(&$data)` + + + | Parameter | Type | Description | | --------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | &\$data | `Array` | Array of data about email to be sent (see above) passed [by reference](https://php.net/manual/en/language.references.pass.php) so data may be altered without needing to return the altered data | diff --git a/docs/development/extension-hooks/module/member-auth.md b/docs/development/extension-hooks/module/member-auth.md index 08fca9d76..e672a6704 100755 --- a/docs/development/extension-hooks/module/member-auth.md +++ b/docs/development/extension-hooks/module/member-auth.md @@ -69,6 +69,27 @@ How it's called: $edata = ee()->extensions->call('member_member_logout'); if (ee()->extensions->end_script === TRUE) return; +## `member_auth_send_reset_token_start($address)` + +| Parameter | Type | Description +| --------- | -------- | --------------------------------------------- +| $address | `String` | Email address posted from reset password form +| Returns | `String` | Email address after extension processes it + +Additional processing of email address sent via reset password form. Happens after basic security checks, but before email address check occurs. + +How it's called: + +``` + if (ee()->extensions->active_hook('member_auth_send_reset_token_start')) { + $address = ee()->extensions->call('member_auth_send_reset_token_start', $address); + if (ee()->extensions->end_script === true) { + return; + } + } +``` + + ## `member_process_reset_password()` | Parameter | Type | Description | From 48f6e007a8f946142b92b5dedafbbc00a5f616ad Mon Sep 17 00:00:00 2001 From: robinsowell Date: Wed, 6 Aug 2025 09:32:49 -0400 Subject: [PATCH 2/2] Cleaning up display issues --- docs/development/extension-hooks/cp/login.md | 4 +--- docs/development/extension-hooks/global/email.md | 7 ------- docs/development/extension-hooks/module/member-auth.md | 3 --- 3 files changed, 1 insertion(+), 13 deletions(-) diff --git a/docs/development/extension-hooks/cp/login.md b/docs/development/extension-hooks/cp/login.md index 0932c2a5a..ee63b213f 100755 --- a/docs/development/extension-hooks/cp/login.md +++ b/docs/development/extension-hooks/cp/login.md @@ -79,12 +79,10 @@ Additional processing of email address sent via control panel reset password for How it's called: -``` if (ee()->extensions->active_hook('member_auth_send_reset_token_start')) { $address = ee()->extensions->call('member_auth_send_reset_token_start', $address); if (ee()->extensions->end_script === true) { return; } } -``` - + diff --git a/docs/development/extension-hooks/global/email.md b/docs/development/extension-hooks/global/email.md index 69cf7a48b..616002b84 100755 --- a/docs/development/extension-hooks/global/email.md +++ b/docs/development/extension-hooks/global/email.md @@ -25,11 +25,9 @@ Overwrite an email `from` address. How it's called: -``` if (ee()->extensions->active_hook('email_from_address')) { $from = ee()->extensions->call('email_from_address', $from, $name); } -``` ## `email_to_address($to)` @@ -42,18 +40,13 @@ Overwrite an email `to` address. How it's called: -``` if (ee()->extensions->active_hook('email_to_address')) { $to = ee()->extensions->call('email_to_address', $to); } -``` - ## `email_send(&$data)` - - | Parameter | Type | Description | | --------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | &\$data | `Array` | Array of data about email to be sent (see above) passed [by reference](https://php.net/manual/en/language.references.pass.php) so data may be altered without needing to return the altered data | diff --git a/docs/development/extension-hooks/module/member-auth.md b/docs/development/extension-hooks/module/member-auth.md index e672a6704..ae42895e9 100755 --- a/docs/development/extension-hooks/module/member-auth.md +++ b/docs/development/extension-hooks/module/member-auth.md @@ -80,15 +80,12 @@ Additional processing of email address sent via reset password form. Happens af How it's called: -``` if (ee()->extensions->active_hook('member_auth_send_reset_token_start')) { $address = ee()->extensions->call('member_auth_send_reset_token_start', $address); if (ee()->extensions->end_script === true) { return; } } -``` - ## `member_process_reset_password()`