mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
DX: fix typing in SearchProvider
This commit is contained in:
parent
459b91001f
commit
a9db133a7b
@ -90,9 +90,7 @@ class CountPerson implements ExportInterface
|
||||
public function initiateQuery(array $requiredModifiers, array $acl, array $data = [])
|
||||
{
|
||||
// we gather all center the user choose.
|
||||
$centers = array_map(static function ($el) {
|
||||
return $el['center'];
|
||||
}, $acl);
|
||||
$centers = array_map(static fn($el) => $el['center'], $acl);
|
||||
|
||||
$qb = $this->entityManager->createQueryBuilder();
|
||||
|
||||
|
@ -1,44 +0,0 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/*
|
||||
* Chill is a software for social workers
|
||||
*
|
||||
* For the full copyright and license information, please view
|
||||
* the LICENSE file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
namespace Chill\MainBundle\Form;
|
||||
|
||||
use Chill\MainBundle\Search\SearchProvider;
|
||||
use Symfony\Component\Form\AbstractType;
|
||||
use Symfony\Component\Form\FormBuilderInterface;
|
||||
use Symfony\Component\OptionsResolver\OptionsResolver;
|
||||
|
||||
class AdvancedSearchType extends AbstractType
|
||||
{
|
||||
/**
|
||||
* @var SearchProvider
|
||||
*/
|
||||
protected $searchProvider;
|
||||
|
||||
public function __construct(SearchProvider $searchProvider)
|
||||
{
|
||||
$this->searchProvider = $searchProvider;
|
||||
}
|
||||
|
||||
public function buildForm(FormBuilderInterface $builder, array $options)
|
||||
{
|
||||
$this->searchProvider
|
||||
->getHasAdvancedFormByName($options['search_service'])
|
||||
->createSearchForm($builder);
|
||||
}
|
||||
|
||||
public function configureOptions(OptionsResolver $resolver)
|
||||
{
|
||||
$resolver
|
||||
->setRequired('search_service')
|
||||
->setAllowedTypes('search_service', ['string']);
|
||||
}
|
||||
}
|
@ -20,4 +20,6 @@ interface HasAdvancedSearchFormInterface extends SearchInterface
|
||||
public function convertFormDataToQuery(array $data);
|
||||
|
||||
public function convertTermsToFormData(array $terms);
|
||||
|
||||
public function getAdvancedSearchTitle(): string;
|
||||
}
|
||||
|
@ -33,7 +33,7 @@ use function count;
|
||||
class SearchProvider
|
||||
{
|
||||
/**
|
||||
* @var HasAdvancedSearchForm[]
|
||||
* @var HasAdvancedSearchFormInterface[]
|
||||
*/
|
||||
private $hasAdvancedFormSearchServices = [];
|
||||
|
||||
@ -101,13 +101,9 @@ class SearchProvider
|
||||
* return searchservice with an advanced form, defined in service
|
||||
* definition.
|
||||
*
|
||||
* @param string $name
|
||||
*
|
||||
* @throws UnknowSearchNameException
|
||||
*
|
||||
* @return HasAdvancedSearchForm
|
||||
*/
|
||||
public function getHasAdvancedFormByName($name)
|
||||
public function getHasAdvancedFormByName(string $name): HasAdvancedSearchFormInterface
|
||||
{
|
||||
if (array_key_exists($name, $this->hasAdvancedFormSearchServices)) {
|
||||
return $this->hasAdvancedFormSearchServices[$name];
|
||||
@ -119,7 +115,7 @@ class SearchProvider
|
||||
public function getHasAdvancedFormSearchServices()
|
||||
{
|
||||
//sort the array
|
||||
uasort($this->hasAdvancedFormSearchServices, static function (SearchInterface $a, SearchInterface $b) {
|
||||
uasort($this->hasAdvancedFormSearchServices, static function (HasAdvancedSearchFormInterface $a, HasAdvancedSearchFormInterface $b): int {
|
||||
return $a->getOrder() <=> $b->getOrder();
|
||||
});
|
||||
|
||||
|
@ -173,7 +173,7 @@ class PersonSearch extends AbstractSearch implements HasAdvancedSearchFormInterf
|
||||
return $data;
|
||||
}
|
||||
|
||||
public function getAdvancedSearchTitle()
|
||||
public function getAdvancedSearchTitle(): string
|
||||
{
|
||||
return 'Search within persons';
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user