changed default behavior when searching

- instead of ordering by mal_id or popularity, weighted relevancy search happens based on the model's config
This commit is contained in:
pushrbx 2023-07-09 10:52:01 +01:00
parent 7a88c030b4
commit 34231ef1af
3 changed files with 1 additions and 27 deletions

View File

@ -25,14 +25,4 @@ class AnimeSearchHandler extends SearchRequestHandler
{
return new AnimeCollection($paginator);
}
protected function prepareOrderByParam(Collection $requestData): Collection
{
if ($requestData->has("q") && !$requestData->has("order_by")) {
// default order by should be popularity, as MAL seems to use this trick.
$requestData->offsetSet("order_by", AnimeOrderByEnum::popularity());
}
return parent::prepareOrderByParam($requestData);
}
}

View File

@ -28,14 +28,4 @@ class MangaSearchHandler extends SearchRequestHandler
{
return new MangaCollection($paginator);
}
protected function prepareOrderByParam(Collection $requestData): Collection
{
if ($requestData->has("q") && !$requestData->has("order_by")) {
// default order by should be popularity, as MAL seems to use this trick.
$requestData->offsetSet("order_by", MangaOrderByEnum::popularity());
}
return parent::prepareOrderByParam($requestData);
}
}

View File

@ -48,17 +48,11 @@ abstract class SearchRequestHandler implements RequestHandler
protected function prepareOrderByParam(Collection $requestData): Collection
{
if (!$requestData->has('order_by') || !$requestData->get('order_by') instanceof Enum) {
$requestData->offsetSet('order_by', 'mal_id');
return $requestData;
}
if ($requestData->has('order_by')) {
if ($requestData->has('order_by') && !is_null($requestData->get("order_by"))) {
$requestData->offsetSet("order_by", $requestData->get("order_by")->label);
return $requestData;
}
$requestData->offsetSet("order_by", 'mal_id');
return $requestData;
}
}