Source of file SectionCollector.php
Size: 2,118 Bytes - Last Modified: 2021-12-24T07:09:53+00:00
/var/www/docs.ssmods.com/process/src/src/Model/SectionCollector.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | <?php namespace SilverStripe\NextJS\Model; use SilverStripe\CMS\Model\SiteTree; use SilverStripe\Forms\TreeDropdownField; use SilverStripe\ORM\Limitable; use SilverStripe\Security\Permission; use SilverStripe\Forms\FieldList; class SectionCollector extends StaticBuildCollector { private static $has_one = [ 'Section' => SiteTree::class, ]; /** * @var string */ private static $table_name = 'SectionCollector'; /** * @var string */ private static $singular_name = 'Section Collector'; /** * @var string */ private static $plural_name = 'Section Collectors'; /** * @return FieldList */ public function getCMSFields() { $fields = parent::getCMSFields(); $fields->addFieldToTab('Root.Main', TreeDropdownField::create( 'SectionID', 'Section', SiteTree::class, )); $this->extend('updateCMSFields', $fields); return $fields; } public function getDescription(): string { return _t(__CLASS__ . '.DESCRIPTION', 'Pages in section'); } /** * @return Limitable */ public function collect(): Limitable { return $this->Section()->Children()->limit($this->Limit); } /** * @param null * @param array * @return bool */ public function canCreate($member = null, $context = []) { return Permission::checkMember($member, 'CMS_ACCESS_CMSMain'); } /** * @param null * @param array * @return bool */ public function canEdit($member = null, $context = []) { return Permission::checkMember($member, 'CMS_ACCESS_CMSMain'); } /** * @param null * @param array * @return bool */ public function canDelete($member = null, $context = []) { return Permission::checkMember($member, 'CMS_ACCESS_CMSMain'); } /** * @param null * @param array * @return bool */ public function canView($member = null, $context = []) { return true; } } |