From edcb220e4afd99d294e105c2363fac3fbf0beb62 Mon Sep 17 00:00:00 2001 From: Christopher Joe Date: Fri, 5 May 2017 22:09:10 +1200 Subject: [PATCH] Enhancement add EmailLink form factory server-side --- .../HTMLEditor/HTMLEditorField_Toolbar.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/Forms/HTMLEditor/HTMLEditorField_Toolbar.php b/src/Forms/HTMLEditor/HTMLEditorField_Toolbar.php index 98a2b79b8..0da5cfa6d 100644 --- a/src/Forms/HTMLEditor/HTMLEditorField_Toolbar.php +++ b/src/Forms/HTMLEditor/HTMLEditorField_Toolbar.php @@ -3,6 +3,7 @@ namespace SilverStripe\Forms\HTMLEditor; use SilverStripe\Admin\Forms\EditorExternalLinkFormFactory; +use SilverStripe\Admin\Forms\EditorEmailLinkFormFactory; use SilverStripe\Assets\File; use SilverStripe\CMS\Model\SiteTree; use SilverStripe\Control\Controller; @@ -36,6 +37,7 @@ class HTMLEditorField_Toolbar extends RequestHandler private static $allowed_actions = array( 'LinkForm', 'EditorExternalLink', + 'EditorEmailLink', 'viewfile', 'getanchors' ); @@ -199,6 +201,22 @@ class HTMLEditorField_Toolbar extends RequestHandler return null; } + /** + * Builds and returns the external link form + * + * @return null|Form + */ + public function EditorEmailLink($id = null) + { + /** @var EditorEmailLinkFormFactory $factory */ + $factory = Injector::inst()->get(EditorEmailLinkFormFactory::class); + + if ($factory) { + return $factory->getForm($this->controller, "{$this->name}/EditorEmailLink"); + } + return null; + } + /** * Get the folder ID to filter files by for the "from cms" tab *