Source of file CMSNicetiesTraitForTabs.php
Size: 1,339 Bytes - Last Modified: 2021-12-23T10:39:07+00:00
/var/www/docs.ssmods.com/process/src/src/Traits/CMSNicetiesTraitForTabs.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | <?php namespace Sunnysideup\CMSNiceties\Traits; use SilverStripe\Forms\FieldList; use SilverStripe\Forms\Tab; trait CMSNicetiesTraitForTabs { public function addSeparator(FieldList $fields, string $name, ?string $after = 'Main') { if (false !== $after) { $tab = Tab::create($name, '|'); $fields->insertAfter($tab, $after); } else { $fields->addFieldsToTab( 'Root.' . $name, [] ); $fields->fieldByName('Root.' . $name)->setTitle('|'); } } public function addTab(FieldList $fields, string $name, ?string $after = 'Main') { // add spaces between capitals $items = preg_split('#(?=[A-Z])#', $name); $title = is_array($items) ? trim(implode(' ', $items)) : $name; if (false !== $after) { if (! $this->isArchived()) { $fields->removeFieldFromTab( 'Root', $name ); $tab = Tab::create($name, $title); $fields->insertAfter($tab, $after); } } else { $fields->addFieldsToTab( 'Root.' . $name, [] ); $fields->fieldByName('Root.' . $name)->setTitle($title); } } } |