Source of file CMSSiteTreeFilter_StatusDeletedPages.php
Size: 1,107 Bytes - Last Modified: 2021-12-23T10:28:18+00:00
/var/www/docs.ssmods.com/process/src/code/Controllers/CMSSiteTreeFilter_StatusDeletedPages.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | <?php namespace SilverStripe\CMS\Controllers; use SilverStripe\CMS\Model\SiteTree; use SilverStripe\ORM\SS_List; use SilverStripe\Versioned\Versioned; /** * Filters pages which have a status "Deleted". */ class CMSSiteTreeFilter_StatusDeletedPages extends CMSSiteTreeFilter { /** * @var string */ protected $childrenMethod = "AllHistoricalChildren"; /** * @var string */ protected $numChildrenMethod = 'numHistoricalChildren'; public static function title() { return _t(__CLASS__ . '.Title', 'Archived pages'); } /** * Filters out all pages who's status is set to "Deleted". * * @see {@link SiteTree::getStatusFlags()} * @return SS_List */ public function getFilteredPages() { $pages = Versioned::get_including_deleted(SiteTree::class); $pages = $this->applyDefaultFilters($pages); $pages = $pages->filterByCallback(function (SiteTree $page) { // Doesn't exist on either stage or live return $page->isArchived(); }); return $pages; } } |