|
|
@@ -184,6 +184,10 @@ class SearchComposer { |
|
|
|
function (array $providerData) use ($route, $routeParameters) { |
|
|
|
$appId = $providerData['appId']; |
|
|
|
$provider = $providerData['provider']; |
|
|
|
$order = $provider->getOrder($route, $routeParameters); |
|
|
|
if ($order === null) { |
|
|
|
return; |
|
|
|
} |
|
|
|
$triggers = [$provider->getId()]; |
|
|
|
if ($provider instanceof IFilteringProvider) { |
|
|
|
$triggers += $provider->getAlternateIds(); |
|
|
@@ -197,7 +201,7 @@ class SearchComposer { |
|
|
|
'appId' => $appId, |
|
|
|
'name' => $provider->getName(), |
|
|
|
'icon' => $this->fetchIcon($appId, $provider->getId()), |
|
|
|
'order' => $provider->getOrder($route, $routeParameters), |
|
|
|
'order' => $order, |
|
|
|
'triggers' => $triggers, |
|
|
|
'filters' => $this->getFiltersType($filters, $provider->getId()), |
|
|
|
'inAppSearch' => $provider instanceof IInAppSearch, |
|
|
@@ -205,6 +209,7 @@ class SearchComposer { |
|
|
|
}, |
|
|
|
$this->providers, |
|
|
|
); |
|
|
|
$providers = array_filter($providers); |
|
|
|
|
|
|
|
// Sort providers by order and strip associative keys |
|
|
|
usort($providers, function ($provider1, $provider2) { |