sbp-flarum-search/src/Searchables/Searchable.php

31 lines
662 B
PHP

<?php
namespace Blomstra\Search\Searchables;
use Flarum\Extension\ExtensionManager;
abstract class Searchable
{
/**
* Returns an array of filterable attributes.
*
* @return array|null
*/
abstract public function filters(): ?array;
/**
* An array of strings with which fulltext matching can be executed.
*
* @return array|null
*/
abstract public function fulltext(): ?array;
protected function extensionEnabled(string $extension): bool
{
/** @var ExtensionManager $manager */
$manager = resolve(ExtensionManager::class);
return $manager->isEnabled($extension);
}
}