| Current Path : /home/rtorresani/www/vendor/magento/module-cms/Ui/Component/Page/ |
| Current File : //home/rtorresani/www/vendor/magento/module-cms/Ui/Component/Page/FulltextFilter.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\Cms\Ui\Component\Page;
use Magento\Cms\Ui\Component\AddFilterInterface;
use Magento\Framework\Api\Filter;
use Magento\Framework\Api\FilterBuilder;
use Magento\Framework\Api\Search\SearchCriteriaBuilder;
/**
* Adds fulltext filter for CMS Page title attribute.
*/
class FulltextFilter implements AddFilterInterface
{
/**
* @var FilterBuilder
*/
private $filterBuilder;
/**
* @param FilterBuilder $filterBuilder
*/
public function __construct(FilterBuilder $filterBuilder)
{
$this->filterBuilder = $filterBuilder;
}
/**
* @inheritdoc
*/
public function addFilter(SearchCriteriaBuilder $searchCriteriaBuilder, Filter $filter)
{
$titleFilter = $this->filterBuilder->setField('title')
->setValue(sprintf('%%%s%%', $filter->getValue()))
->setConditionType('like')
->create();
$searchCriteriaBuilder->addFilter($titleFilter);
}
}