Source of file SearchEngineSortByLastEdited.php
Size: 1,535 Bytes - Last Modified: 2021-12-23T10:46:21+00:00
/var/www/docs.ssmods.com/process/src/src/Sorters/SearchEngineSortByLastEdited.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 | <?php namespace Sunnysideup\SearchSimpleSmart\Sorters; use SilverStripe\ORM\FieldType\DBDate; use SilverStripe\ORM\SS_List; use Sunnysideup\SearchSimpleSmart\Abstractions\SearchEngineSortByDescriptor; use Sunnysideup\SearchSimpleSmart\Model\SearchEngineSearchRecord; class SearchEngineSortByLastEdited extends SearchEngineSortByDescriptor { /** * @return string */ public function getShortTitle() { return _t('SearchEngineSortByLastEdited.TITLE', DBDate::class); } /** * returns the description - e.g. "sort by the last Edited date" * @return string */ public function getDescription() { return $this->getShortTitle(); } /** * returns the sort statement that is addeded to search * query prior to searching the SearchEngineDataObjects * * return an array like * Date => ASC * Title => DESC * * @param mixed $sortProviderValues * * @return array|null */ public function getSqlSortArray($sortProviderValues = null) { return ['LastEdited' => 'DESC']; } /** * @return boolean */ public function hasCustomSort($sortProviderValues = null) { return true; } /** * Does any custom filtering * @param SS_List $objects * @param SearchEngineSearchRecord $searchRecord * * @return SS_List */ public function doCustomSort($objects, $searchRecord) { return $this->makeClassGroups($objects); } } |