Source of file SimpleGalleryExtension.php
Size: 1,837 Bytes - Last Modified: 2021-12-23T11:00:34+00:00
/var/www/docs.ssmods.com/process/src/src/SimpleGalleryExtension.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 | <?php namespace g4b0\SimpleGallery; use SilverStripe\ORM\DataObject; use SilverStripe\ORM\DataExtension; use SilverStripe\Forms\FieldList; /** * SimpleGalleryExtension * * @author Gabriele Brosulo <gabriele.brosulo@zirak.it> * @creation-date 02-Apr-2014 */ class SimpleGalleryExtension extends DataExtension { private static $has_many = [ 'Images' => 'SimpleGalleryImage' ]; public function updateCMSFields(FieldList $fields) { parent::updateCMSFields($fields); $fields->removeByName('Images'); $name = Config::inst()->get('SimpleGalleryExtension', 'gallery_name'); if ($this->owner->ID > 0) { $folder = Config::inst()->get('SimpleGalleryExtension', 'folder_path'); if (strlen($folder) == 0) { $folder = 'simplegallery'; } $gridFieldConfig = GridFieldConfig_RecordEditor::create(); ; $bu = new GridFieldBulkImageUpload('Image', array('Title')); $bu->setConfig('folderName', $folder); $gridFieldConfig->addComponent($bu); $gridFieldSortableRows = new GridFieldSortableRows('SortOrder'); $gridFieldConfig->addComponent($gridFieldSortableRows->setAppendToTop(true)); $gridfield = new GridField("Gallery", $name, $this->SortedImages(true), $gridFieldConfig); $fields->addFieldToTab('Root.' . $name, $gridfield); } return $fields; } public function SortedImages($includeDisabled = false) { $retVal = $this->owner->Images(); if (!$includeDisabled) { $retVal = $retVal->filter(array('Disabled' => 0)); } $retVal = $retVal->sort("SortOrder"); return $retVal; } } ?> |