Source of file BuildingBlocksBlockExtension.php
Size: 3,164 Bytes - Last Modified: 2021-12-23T10:52:14+00:00
/var/www/docs.ssmods.com/process/src/code/extensions/BuildingBlocksBlockExtension.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 | <?php class BuildingBlocksBlockExtension extends DataExtension { private static $db = array( 'Description' => 'Text', 'TitleTag' => "Enum('h2,h3,h4,h5,h6,hidden','h2')", 'SubTitle' => "Varchar(255)", 'FxType' => "Varchar(40)", //'FxDefaultState' => "Varchar(40)" ); public function updateCMSFields(\FieldList $fields) { $fields->removeByName('TitleTag'); $fields->removeByName('SubTitle'); $fields->removeByName('FxType'); //$fields->removeByName('FxDefaultState'); $titleTagOptions = $this->owner->dbObject('TitleTag')->enumValues(); foreach($titleTagOptions as $k => $v) { $titleTagOptions[$k] = _t('BuildingBlocksBlockExtension.TitleTag-'. $k, $k); } $fields->addFieldToTab('Root.Main',DropdownField::create('TitleTag',_t('BuildingBlocksBlockExtension.TitleTag','Heading level'),$titleTagOptions),'Description'); $fields->addFieldToTab('Root.Main',TextField::create('SubTitle',_t('BuildingBlocksBlockExtension.SubTitle','Subtitle')),'Description'); $fields->replaceField('Description', TextareaField::create('Description',_t('BuildingBlocksBlockExtension.Description','Description (back end)'))); // FX $fxTypes = Config::inst()->get(get_class($this->owner),'fx_types',Config::UNINHERITED); if(count($fxTypes)) { // Fx Options $fxTypeOptions = []; foreach($fxTypes as $fxType) { $fxTypeOptions[$fxType] = _t('BuildingBlocksBlockExtension.FxType-'. Convert::raw2att($fxType), ucfirst($fxType)); } $fields->findOrMakeTab('Root.Effects',_t('BuildingBlocksBlockExtension.FxTab','Effects')); $fxTypeField = DropdownField::create('FxType',_t('BuildingBlocksBlockExtension.FxType','Effect type'),$fxTypeOptions) ->setHasEmptyDefault(true); $fields->addFieldToTab('Root.Effects',$fxTypeField); /** @todo $fxStates = ['active','inactive']; $fxStateOptions = []; foreach($fxStates as $fxState) { $fxStateOptions[$fxState] = _t('BuildingBlocksBlockExtension.FxState-'. Convert::raw2att($fxState), ucfirst($fxState)); } $fxStateField = DropdownField::create('FxDefaultState',_t('BuildingBlocksBlockExtension.FxDefaultState','Default State'),$fxStateOptions) ->setHasEmptyDefault(true); $fields->addFieldToTab('Root.Effects',$fxStateField); * */ } } public function FxTypeClasses() { if(empty($this->owner->FxType)) { return ''; } $class = 'bb-fx__'. Convert::raw2att($this->owner->FxType); /*if(!empty($this->owner->FxDefaultState)) { $class .= $class .'--'. Convert::raw2att($this->owner->FxDefaultState); }*/ return $class; } public function FxTitleClass() { if(empty($this->owner->FxType)) { return ''; } $type = Convert::raw2att($this->owner->FxType); return 'bb-fx__'. $type .'-title'; } } |