Adjust search for category
This commit is contained in:
@@ -6,7 +6,11 @@ namespace App\Enum;
|
||||
|
||||
enum FindingCategoryEnum: string
|
||||
{
|
||||
case s = 'scultura';
|
||||
case a = 'arredo';
|
||||
case ab = 'abbigliamento e ornamenti personali';
|
||||
case d = 'decorazione parietale';
|
||||
case e = 'epigrafe';
|
||||
case el = 'elemento architettonico';
|
||||
case p = 'pavimentazione';
|
||||
case s = 'scultura';
|
||||
}
|
||||
@@ -48,7 +48,7 @@ class FindingRepository extends ServiceEntityRepository
|
||||
|
||||
if (!empty($filters['category'])) {
|
||||
$qb->andWhere('LOWER(s.category) = :category');
|
||||
$qb->setParameter('category', $filters['category']);
|
||||
$qb->setParameter('category', strtolower($filters['category']));
|
||||
}
|
||||
|
||||
$qb->orderBy('s.label', 'ASC');
|
||||
|
||||
@@ -32,7 +32,9 @@ final class SearchService
|
||||
if (empty($filters)) return new SearchResult([], [], [], [], 0);
|
||||
|
||||
$sites = [];
|
||||
if ((isset($filters['text']) && $filters['text'] !== '') || isset($filters['technique'])) {
|
||||
if ((isset($filters['text']) && $filters['text'] !== '') ||
|
||||
(isset($filters['technique']) && $filters['technique'] !== '')
|
||||
) {
|
||||
$sites = array_map(
|
||||
fn(\App\Entity\Site $s) => $s->toSummary(),
|
||||
$this->siteRepository->findByFilters($filters)
|
||||
@@ -81,7 +83,7 @@ final class SearchService
|
||||
throw new InvalidFilterException("Invalid technique filter: " . $filters['technique']);
|
||||
}
|
||||
|
||||
if (!empty($filters['category']) && FindingCategoryEnum::tryFrom($filters['category']) === null) {
|
||||
if (!empty($filters['category']) && FindingCategoryEnum::tryFrom(strtolower($filters['category'])) === null) {
|
||||
throw new InvalidFilterException("Invalid category filter: " . $filters['category']);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user