Source of file ImageGalleryEntry.php
Size: 1,906 Bytes - Last Modified: 2021-12-23T10:42:00+00:00
/var/www/docs.ssmods.com/process/src/src/Model/ImageGalleryEntry.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 | <?php namespace Sunnysideup\ImageGalleryBasic\Model; use SilverStripe\CMS\Model\SiteTree; use SilverStripe\Assets\Image; use SilverStripe\ORM\DataObject; class ImageGalleryEntry extends DataObject { private static $table_name = 'ImageGalleryEntry'; private static $singular_name = "Image Gallery Picture"; private static $plural_name = "Image Gallery Pictures"; private static $db = array( "Title" => "Varchar(100)", "Sort" => "Int" ); private static $has_one = array( "Parent" => SiteTree::class, "Image" => Image::class ); private static $searchable_fields = array( "Title" => "PartialMatchFilter" ); private static $summary_fields = array( "Image.CMSThumbNail" => "Image", "Title" => "Title" ); private static $field_labels = array( "Sort" => "Sorting Index Number (lower numbers show first)" ); private static $casting = array( "BestTitle" => "Varchar" ); //CRUD settings private static $default_sort = "Sort ASC, Title ASC"; private static $defaults = array( "Sort" => 100 ); public function getBestTitle() { $image = $this->Image(); if ($image && $image->exists()) { if ($image->Title) { if ($this->Title !== $image->Title) { $this->Title = $image->Title; $this->write(); } return $image->Title; } } return $this->Title; } public function populateDefaults() { parent::populateDefaults(); $this->Sort = 100; } /** * CMS Fields * @return FieldList */ public function getCMSFields() { $fields = parent::getCMSFields(); $fields->removeFieldFromTab('Root.Main', 'Title'); return $fields; } } |