diff --git a/docs/add-ons/file.md b/docs/add-ons/file.md index a7bef039b..485ef45c7 100755 --- a/docs/add-ons/file.md +++ b/docs/add-ons/file.md @@ -128,6 +128,21 @@ You can hard code the file entries tag to show specific files. You may also spec If you want to display only the files that are in certain folder within an Upload Directory, specify the folder ID using this parameter. +### `mime_type=` + + mime_type="image/jpeg|image/png" + +Filter returned files by MIME type. You may specify one or more MIME types; separate multiple values with the pipe character. + +Or use "not" to exclude types: + + mime_type="not video/mp4|video/quicktime" + +Common examples: + +- Images only: `mime_type="image/jpeg|image/png|image/gif"` +- PDFs only: `mime_type="application/pdf"` + ### `limit=` limit="30" diff --git a/docs/development/extension-hooks/cp/login.md b/docs/development/extension-hooks/cp/login.md index a5a275ebb..ee63b213f 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,22 @@ 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..25f8ff351 100755 --- a/docs/development/extension-hooks/global/email.md +++ b/docs/development/extension-hooks/global/email.md @@ -13,8 +13,50 @@ 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 | `Array` | Associative array + +Overwrite an email `from` address. + +How it's called: + + if (ee()->extensions->active_hook('email_from_address')) { + $processed_address = ee()->extensions->call('email_from_address', $from, $name); + $from = $processed_address['from'] ?? $from; + $name = $processed_address['name'] ?? $name; + + if (ee()->extensions->end_script === true) { + return; + } + } + +## `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); + + if (ee()->extensions->end_script === true) { + return; + } + } + ## `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..ae42895e9 100755 --- a/docs/development/extension-hooks/module/member-auth.md +++ b/docs/development/extension-hooks/module/member-auth.md @@ -69,6 +69,24 @@ 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 | diff --git a/docs/installation/changelog.md b/docs/installation/changelog.md index 7374a723c..80f4c3c83 100755 --- a/docs/installation/changelog.md +++ b/docs/installation/changelog.md @@ -8,6 +8,42 @@ --> # ExpressionEngine v7 Change Log +# Version 7.5.15 +(Release: August 20th, 2025) +
Bryan Nielsen
Matt Johnson
Tom Jaeger
Yulya Lebed
Yuri Salimovskiy
robinsowell