The no-deprecated filter is not always applied for preview messages #6065
Labels
keep-fresh
"Keep Fresh" issues should not be marked as stale.
type: bug
Existing functionality is broken
User Story
As a developper, I want to filter the default messages and see the result in the preview mode.
Details
Each email defines the default message in a function with two filters. The first one will deprecate soon, so I prefered to use the second filter.
For some emails ('new-donor-register', new-offline-donation' after issue #6063...), the function to define the default message is a class method named
get_default_email_message()
.Theinit(
) function calls this function as a parameter toload()
, so before the instance is loaded. And$this->config
is not yet defined.To apply the second filter, the hook name contains
$this->config['id']}
, that is not defined, and the hook name isgive__get_default_email_message
.Suggested solution
Define default_email_message after the load:
$this->config['default_email_message'] = ( false !== give_get_option( 'new-offline-donation_email_message' ) ) ? give_get_option( 'new-offline-donation_email_message' ) : $this->get_default_email_message();
The text was updated successfully, but these errors were encountered: