Source of file SectionLinkBlock.php
Size: 1,577 Bytes - Last Modified: 2021-12-23T10:11:59+00:00
/var/www/docs.ssmods.com/process/src/code/Blocks/Link/SectionLinkBlock.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | <?php class SectionLinkBlock extends Section { private static $db = array( 'Content'=>'HTMLText' ); private static $has_many = array( 'LinkElements' => 'LinkElement' ); public function getCMSFields() { $fields = parent::getCMSFields(); /********************************* * Link Element Builder ********************************/ $sectiondataColumns = new GridFieldDataColumns(); $sectiondataColumns->setDisplayFields( array( 'ID' => 'ID', 'Title' => 'Title', 'ClassName' => 'Class Name' ) ); $sectionmultiClassConfig = new GridFieldAddNewMultiClass(); $sectionmultiClassConfig->setClasses( array( 'ExternalLink' => ExternalLink::get_link_type(), 'InternalLink' => InternalLink::get_link_type(), 'DownloadFile' => DownloadFile::get_link_type(), ) ); $saveWarning = LiteralField::create("Warning", "<p class='cms-warning-label'>To Add Content please save changes</p>"); $sectionconfig = GridFieldConfig_RelationEditor::create() ->removeComponentsByType('GridFieldAddNewButton') ->addComponents( new GridFieldDeleteAction(), $sectionmultiClassConfig, $sectiondataColumns ); if ($this->ID) { $sectionconfig->addComponent(new GridFieldOrderableRows('SortOrder')); } else { $fields->addFieldToTab('Root.Links', $saveWarning); } $sectiongridField = GridField::create('LinkElements', "Link Elements", $this->LinkElements(), $sectionconfig); $fields->addFieldToTab("Root.Links", $sectiongridField); $this->removeEmptyTabs($fields); return $fields; } } |