Untitled
unknown
plain_text
2 years ago
816 B
9
Indexable
/**
* Custom filter handler for filtering by file name.
*
* @ViewsFilter("custom_filter_handler")
*/
class CustomFilterHandler extends StringFilter {
/**
* {@inheritdoc}
*/
public function query() {
$this->ensureMyTable();
$this->query->addRelationship('node__field_attachments', 'field_attachments_target_id', ['table' => 'media__field_media_document', 'field' => 'entity_id']);
$this->query->addRelationship('media__field_media_document', 'field_media_document_target_id', ['table' => 'file_managed', 'field' => 'fid']);
if (!empty($this->value)) {
$escaped_value = Database::getConnection()->escapeLike($this->value);
$this->query->addWhere(0, "file_managed.filename LIKE :file_name", [':file_name' => '%' . $escaped_value . '%']);
}
}
}
Editor is loading...