2016-08-16 03:22:58 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace SilverStripe\CMS\Controllers;
|
|
|
|
|
2017-09-20 03:51:07 +02:00
|
|
|
use SilverStripe\CMS\Model\SiteTree;
|
2017-03-21 05:26:46 +01:00
|
|
|
use SilverStripe\Versioned\Versioned;
|
2016-08-16 03:22:58 +02:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Gets all pages which have changed on stage.
|
|
|
|
*/
|
|
|
|
class CMSSiteTreeFilter_ChangedPages extends CMSSiteTreeFilter
|
|
|
|
{
|
|
|
|
|
2017-01-25 21:59:25 +01:00
|
|
|
public static function title()
|
|
|
|
{
|
2018-02-20 22:32:13 +01:00
|
|
|
return _t(__CLASS__ . '.Title', "Modified pages");
|
2017-01-25 21:59:25 +01:00
|
|
|
}
|
2016-08-16 03:22:58 +02:00
|
|
|
|
2017-01-25 21:59:25 +01:00
|
|
|
public function getFilteredPages()
|
|
|
|
{
|
2017-09-20 03:51:07 +02:00
|
|
|
$pages = Versioned::get_by_stage(SiteTree::class, Versioned::DRAFT);
|
2017-01-25 21:59:25 +01:00
|
|
|
$pages = $this->applyDefaultFilters($pages)
|
|
|
|
->leftJoin('SiteTree_Live', '"SiteTree_Live"."ID" = "SiteTree"."ID"')
|
|
|
|
->where('"SiteTree"."Version" <> "SiteTree_Live"."Version"');
|
|
|
|
return $pages;
|
|
|
|
}
|
2016-08-16 03:22:58 +02:00
|
|
|
}
|