Source of file HtmlEditorFolder_Toolbar.php
Size: 1,559 Bytes - Last Modified: 2022-01-13T10:01:20+00:00
/var/www/docs.ssmods.com/process/src/code/HtmlEditorFolder_Toolbar.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 | <?php /** * Class HtmlEditorFolder_Toolbar * Extension for HtmlEditorField_Toolbar which sets folder name for media form, including default folder for "From CMS" */ class HtmlEditorFolder_Toolbar extends Extension { /** * @return mixed folder path as set by current page, or false if not found */ function getCurrentFolder() { foreach( array( $this->owner->controller, $this->owner->controller->currentPage() ) as $obj ){ if( $obj && $obj->hasMethod('getHtmlEditorFolder') ){ return $obj->getHtmlEditorFolder(); } } return false; } /** * Update the media form, set current folder and use our upload field template (displays upload path) * @param $form */ function updateMediaForm($form) { if ($uploadField = $form->Fields()->dataFieldByName('AssetUploadField')) { $uploadField->setFolderName($this->getCurrentFolder()); $uploadField->setTemplate('HtmlEditorFolder_UploadField'); } } /** * Update parent folder ID for "From CMS" default folder selection (media dialog) * @param $parentID */ function updateAttachParentID(&$parentID) { if ( ($folderPath = $this->getCurrentFolder()) && ($parentFolder = Folder::find_or_make($folderPath)) ) { $parentID = $parentFolder->ID; } } /** * Update the link form, set current folder * @param $form */ function updateLinkForm($form) { if ($uploadField = $form->Fields()->dataFieldByName('file')) { $uploadField->setFolderName($this->getCurrentFolder()); $uploadField->setDisplayFolderName($this->getCurrentFolder()); } } } |