Source of file SkeletonPart.php
Size: 1,238 Bytes - Last Modified: 2017-08-08T02:23:00+00:00
/var/www/docs.ssmods.com/process/src/src/Models/SkeletonPart.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | <?php namespace DNADesign\ElementalSkeletons\Models; use SilverStripe\ORM\DataObject; use SilverStripe\Forms\DropdownField; use DNADesign\Elemental\Extensions\ElementalAreasExtension; /** * Creates a archetype of elements that can be used as a template that is defined * within the CMS */ class SkeletonPart extends DataObject { private static $db = array( 'ElementType' => 'Varchar', 'Sort' => 'Int', ); private static $has_one = array( 'Skeleton' => Skeleton::class ); private static $table_name = 'ElementSkeletonPart'; private static $summary_fields = array( 'ElementName' ); private static $field_labels = array( 'ElementName' => 'Element Name' ); public function getCMSFields() { $fields = parent::getCMSFields(); $pageType = $this->Skeleton()->PageType; $elementTypes = ElementalAreasExtension::get_available_types_for_class($pageType); $fields->removeByName('Sort'); $fields->removeByName('SkeletonID'); $fields->replaceField('ElementType', $et = DropdownField::create('ElementType', 'Which element type', $elementTypes)); $et->setEmptyString('Please choose...'); return $fields; } public function ElementName() { return singleton($this->ElementType)->getElementType(); } } |