Source of file CarouselSiteTreeExtension.php
Size: 1,268 Bytes - Last Modified: 2019-05-30T11:04:08+00:00
/var/www/docs.ssmods.com/process/src/code/extensions/CarouselSiteTreeExtension.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 | <?php class CarouselSiteTreeExtension extends DataExtension { static $many_many = [ 'CarouselSlides' => 'CarouselSlide', ]; static $many_many_extraFields=array( 'CarouselSlides'=>array( 'SortOrder'=>'Int' ) ); static $showCarouselTab = []; public static function show_carousel_tab($array = array()) { if (empty($array)) { return; } if (is_array($array)) { self::$showCarouselTab = $array; } else { self::$showCarouselTab = array($array); } } public function updateCMSFields(FieldList $fields) { if (count(self::$showCarouselTab) > 0 && !in_array($this->owner->ClassName, self::$showCarouselTab)) { return; } $conf=GridFieldConfig_RelationEditor::create(); $conf->addComponent(new GridFieldSortableRows('SortOrder')); $carouselGrid = new GridField( 'CarouselSlides', 'Carousel Slides', $this->owner->CarouselSlides(), $conf ); $fields->addFieldToTab('Root.Carousel', $carouselGrid); parent::updateCMSFields($fields); } } |