Source of file NewsCategory.php
Size: 1,276 Bytes - Last Modified: 2021-12-23T10:10:48+00:00
/var/www/docs.ssmods.com/process/src/code/NewsCategory.php
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | <?php class NewsCategory extends DataObject { private static $db = array( 'Title' => 'Varchar(100)', 'URLSegment' => 'Varchar(100)', 'SortOrder' => 'Int' ); private static $has_one = array( 'ArticleHolder' => 'ArticleHolder' ); private static $belongs_many_many = array( 'Articles' => 'ArticlePage' ); public static $default_sort = 'SortOrder'; public function getCMSFields() { $fields = parent::getCMSFields(); // Remove fields that are automatically set. $fields->removeByName('SortOrder'); $fields->removeByName('ArticleHolderID'); $fields->removeByName('Articles'); return $fields; } public function onBeforeWrite() { if (!$this->URLSegment) { $filter = URLSegmentFilter::create(); $this->URLSegment = $filter->filter($this->Title); } parent::onBeforeWrite(); } public function Link() { return $this->ArticleHolder()->Link('/category/' . $this->URLSegment); } public function SortedArticles() { return $this->Articles(NULL, 'Date DESC'); } public function canCreate($member = NULL) { return TRUE; } public function canEdit($member = NULL) { return TRUE; } public function canDelete($member = NULL) { return TRUE; } public function canView($member = NULL) { return TRUE; } } |