Source of file SlideObject.php
Size: 2,045 Bytes - Last Modified: 2021-12-24T05:19:58+00:00
/var/www/docs.ssmods.com/process/src/src/Model/SlideObject.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | <?php namespace Jellygnite\Elements\Model; use Jellygnite\Elements\Model\BaseElementObject; use Jellygnite\Elements\Model\ElementSlides; use SilverStripe\Forms\DropdownField; use SilverStripe\Forms\FieldList; use SilverStripe\Forms\GridField\GridField; use SilverStripe\Forms\GridField\GridFieldConfig_RecordViewer; /** * Class SlideObject * * @method \SilverStripe\ORM\ManyManyList ElementSlides() */ class SlideObject extends BaseElementObject { private static $db = array( 'PanelPosition' => 'Enum("None,Cover,Top Left,Top Center,Top Right,Center Left,Center,Center Right,Bottom Left,Bottom Center,Bottom Right","None")', ); /** * @return string */ private static $singular_name = 'Slide'; /** * @return string */ private static $plural_name = 'Slides'; /** * @var array */ private static $belongs_many_many = array( 'ElementSlides' => ElementSlides::class, ); /** * @var string */ private static $table_name = 'SlideObject'; /** * @var array */ private static $summary_fields = [ 'Summary', ]; private static $defaults = array ( 'ShowTitle' => '1' ); public function PanelPositionCss(){ return str_replace(' ','-',strtolower($this->PanelPosition)); } /** * @return FieldList * * @throws \Exception */ public function getCMSFields() { $this->beforeUpdateCMSFields(function (FieldList $fields) { $fields->removeByName('ElementSlides'); $fields->insertBefore(DropdownField::create("PanelPosition", "Panel Position", $this->dbObject('PanelPosition')->enumValues() ) , 'Content'); }); $fields = parent::getCMSFields(); $fields->dataFieldByName('Image') ->setFolderName('images/slides') ->setRightTitle('Recommended upload size is 1920px x 900px.'); return $fields; } /** * @return mixed */ public function getSummary() { return $this->dbObject('Content')->Summary(20); } } |