diff --git a/src/Forms/Form.php b/src/Forms/Form.php index c816c53f3..9e0f852db 100644 --- a/src/Forms/Form.php +++ b/src/Forms/Form.php @@ -1552,10 +1552,13 @@ class Form extends ViewableData implements HasRequestHandler HTTPCacheControlMiddleware::singleton()->disableCache(); } - $return = $this->renderWith($this->getTemplates()); + $context = $this; + $this->extend('onBeforeRender', $context); + + $return = $context->renderWith($context->getTemplates()); // Now that we're rendered, clear message - $this->clearMessage(); + $context->clearMessage(); return $return; } diff --git a/src/Forms/FormField.php b/src/Forms/FormField.php index 8632cfedf..bd24b8392 100644 --- a/src/Forms/FormField.php +++ b/src/Forms/FormField.php @@ -927,7 +927,7 @@ class FormField extends RequestHandler $context = $context->customise($properties); } - $result = $context->renderWith($this->getTemplates()); + $result = $context->renderWith($context->getTemplates()); // Trim whitespace from the result, so that trailing newlines are suppressed. Works for strings and HTMLText values if (is_string($result)) { @@ -959,10 +959,10 @@ class FormField extends RequestHandler $this->extend('onBeforeRenderHolder', $context, $properties); if (count($properties ?? [])) { - $context = $this->customise($properties); + $context = $context->customise($properties); } - return $context->renderWith($this->getFieldHolderTemplates()); + return $context->renderWith($context->getFieldHolderTemplates()); } /**