diff --git a/system/config/Config.cfc b/system/config/Config.cfc index d547cdce99..50d85a52ae 100644 --- a/system/config/Config.cfc +++ b/system/config/Config.cfc @@ -329,6 +329,8 @@ component { interceptorSettings.customInterceptionPoints.append( "postEditRecordAction" ); interceptorSettings.customInterceptionPoints.append( "preRenderRecordForViewRecord" ); interceptorSettings.customInterceptionPoints.append( "postRenderRecordForViewRecord" ); + interceptorSettings.customInterceptionPoints.append( "prePrepareEmailHtmlContent" ); + interceptorSettings.customInterceptionPoints.append( "postGetEmailLayoutConfig" ); } private void function __setupCachebox() { diff --git a/system/services/email/EmailLayoutService.cfc b/system/services/email/EmailLayoutService.cfc index 6774d06e4c..411d31d713 100644 --- a/system/services/email/EmailLayoutService.cfc +++ b/system/services/email/EmailLayoutService.cfc @@ -283,7 +283,13 @@ component { } } - return config; + var interceptorArgs = { + config = config + , args = arguments + }; + $announceInterception( "postGetEmailLayoutConfig", interceptorArgs ); + + return interceptorArgs.config; } // PRIVATE HELPERS diff --git a/system/services/email/EmailTemplateService.cfc b/system/services/email/EmailTemplateService.cfc index d5a653981a..03ad95f0c4 100644 --- a/system/services/email/EmailTemplateService.cfc +++ b/system/services/email/EmailTemplateService.cfc @@ -1617,8 +1617,11 @@ component { , unsubscribeLink , template , viewOnline + , cacheSuffix = "" ) { - var cacheKey = ( $helpers.isTrue( arguments.useDefaultContent ?: "" ) ? "default" : "saved" ) & "rawhtml" & arguments.template; + $announceInterception( "prePrepareEmailHtmlContent", arguments ); + + var cacheKey = arguments.cacheSuffix & ( $helpers.isTrue( arguments.useDefaultContent ?: "" ) ? "default" : "saved" ) & "rawhtml" & arguments.template; var fromCache = _getTemplateCache().get( cacheKey ); if ( !IsNull( local.fromCache ) ) {