Source of file FAQCategorie.php
Size: 1,817 Bytes - Last Modified: 2021-12-23T10:51:23+00:00
/var/www/docs.ssmods.com/process/src/src/Model/FAQCategorie.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | <?php namespace TheWebmen\FAQ\Model; use SilverStripe\Core\Config\Config; use SilverStripe\ORM\DataObject; use TheWebmen\FAQ\Pages\FAQPage; use SilverStripe\Forms\GridField\GridField; use SilverStripe\Forms\GridField\GridFieldConfig_RecordEditor; use Symbiote\GridFieldExtensions\GridFieldOrderableRows; class FAQCategorie extends DataObject { /** * @config */ private static $itemsPerPage = 15; private static $table_name = 'TheWebmen_FAQCategorie'; private static $singular_name = 'Category'; private static $plural_name = 'Categories'; private static $db = [ 'Title' => 'Varchar(255)', 'Sort' => 'Int' ]; private static $has_one = [ 'Page' => FAQPage::class ]; private static $has_many = [ 'Questions' => FAQQuestion::class ]; private static $summary_fields = [ 'Title' => 'Category', 'Questions.Count' => 'No. Questions', 'Created.Nice' => 'Created' ]; private static $default_sort = 'Sort'; public function summaryFields() { $fields = parent::summaryFields(); $fields['Questions.Count'] = _t(self::class . '.NUMBER_OF_QUESTIONS', 'Number of questions'); return $fields; } public function getCMSFields() { $fields = parent::getCMSFields(); $fields->removeByName('PageID'); $fields->removeByName('Questions'); $fields->removeByName('Sort'); $gridConfig = GridFieldConfig_RecordEditor::create(Config::inst()->get(self::class, 'itemsPerPage')); $gridConfig->addComponent(new GridFieldOrderableRows()); $fields->addFieldToTab('Root.Main', new GridField('Questions', _t(self::class . '.QUESTIONS', 'Questions'), $this->Questions(), $gridConfig)); return $fields; } } |