Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions app/config/config_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ parameters:
services:
AppBundle\Offices\OfficeFinder:
class: AppBundle\Offices\NullOfficeFinder
autowire: true
arguments: ['@geocoder']

Afup\Tests\Support\PlanetePHP\FeedHttpClientFactory: ~
Expand Down
1 change: 1 addition & 0 deletions app/config/services.yml
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,7 @@ services:
arguments: ['@Psr\Http\Client\ClientInterface', null, "%google_maps_api_key%"]

AppBundle\Offices\OfficeFinder:
autowire: true
arguments: ['@geocoder']

AppBundle\Subscriber\SitemapXmlSubscriber:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Antennes;

final class AntennesCollection
final class AntenneRepository
{
/** @var array<string, Antenne> */
private array $antennes;
Expand Down
10 changes: 6 additions & 4 deletions sources/AppBundle/Association/Form/CompanyPublicProfile.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Association\Form;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
Expand All @@ -27,12 +27,14 @@ class CompanyPublicProfile extends AbstractType
public const DESCRIPTION_MAX_LENGTH = 2000;
public const MEMBERSHIP_REASON_MAX_LENGTH = 150;

public function __construct(
private readonly AntenneRepository $antennesRepository,
) {}

public function buildForm(FormBuilderInterface $builder, array $options): void
{
$antennesCollection = new AntennesCollection();

$antennesInfos = [];
foreach ($antennesCollection->getAll() as $antenne) {
foreach ($this->antennesRepository->getAll() as $antenne) {
$antennesInfos[$antenne->label] = $antenne->code;
}

Expand Down
18 changes: 6 additions & 12 deletions sources/AppBundle/Association/Form/ContactDetailsType.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
namespace AppBundle\Association\Form;

use Afup\Site\Utils\Pays;
use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Association\Model\User;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
Expand All @@ -23,15 +23,10 @@

class ContactDetailsType extends AbstractType
{
/**
* @var Pays
*/
public $countryService;

public function __construct(Pays $countryService)
{
$this->countryService = $countryService;
}
public function __construct(
private readonly Pays $countryService,
private readonly AntenneRepository $antenneRepository,
) {}

public function buildForm(FormBuilderInterface $builder, array $options): void
{
Expand Down Expand Up @@ -111,9 +106,8 @@ public function configureOptions(OptionsResolver $resolver): void
*/
private function getOfficesList(): array
{
$antennesCollection = new AntennesCollection();
$offices = ['' => '-Aucune-'];
foreach ($antennesCollection->getAllSortedByLabels() as $antenne) {
foreach ($this->antenneRepository->getAllSortedByLabels() as $antenne) {
$offices[$antenne->label] = $antenne->code;
}
return $offices;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,23 @@

namespace AppBundle\Association\Form;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\OptionsResolver\OptionsResolver;

class NearestOfficeChoiceType extends AbstractType
{
public function __construct(
private readonly AntenneRepository $antennesRepository,
) {}

public function configureOptions(OptionsResolver $resolver): void
{
parent::configureOptions($resolver);

$antennesCollection = new AntennesCollection();
$offices = ['-Aucune-' => ''];
foreach ($antennesCollection->getAllSortedByLabels() as $antenne) {
foreach ($this->antennesRepository->getAllSortedByLabels() as $antenne) {
$offices[$antenne->label] = $antenne->code;
}

Expand Down
6 changes: 3 additions & 3 deletions sources/AppBundle/Association/Model/User.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Association\Model;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Association\Model\Repository\UserRepository;
use AppBundle\Association\NotifiableInterface;
use AppBundle\Validator\Constraints as AppAssert;
Expand Down Expand Up @@ -199,7 +199,7 @@ public function setNearestOffice($nearestOffice): self
return $this;
}

public function getNearestOfficeLabel()
public function getNearestOfficeLabel(AntenneRepository $antenneRepository)
{
$code = $this->getNearestOffice();

Expand All @@ -208,7 +208,7 @@ public function getNearestOfficeLabel()
return null;
}

return (new AntennesCollection())->findByCode($code)->label;
return $antenneRepository->findByCode($code)->label;
}

/**
Expand Down
4 changes: 3 additions & 1 deletion sources/AppBundle/Command/IndexMeetupsCommand.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

use Algolia\AlgoliaSearch\Exceptions\AlgoliaException;
use Algolia\AlgoliaSearch\SearchClient;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Event\Model\Repository\MeetupRepository;
use AppBundle\Indexation\Meetups\Runner;
use Symfony\Component\Console\Command\Command;
Expand All @@ -18,6 +19,7 @@ class IndexMeetupsCommand extends Command
public function __construct(
private readonly SearchClient $searchClient,
private readonly MeetupRepository $meetupRepository,
private readonly AntenneRepository $antenneRepository,
) {
parent::__construct();
}
Expand All @@ -40,7 +42,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int
$this->runScraping($output);
}

$runner = new Runner($this->searchClient, $this->meetupRepository);
$runner = new Runner($this->searchClient, $this->meetupRepository, $this->antenneRepository);
$runner->run();

return Command::SUCCESS;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
namespace AppBundle\Controller\Admin\Antennes;

use AppBundle\Antennes\Antenne;
use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Twig\Environment;

final readonly class AntenneListAction
{
public function __construct(
private AntennesCollection $antennesCollection,
private AntenneRepository $antennesCollection,
private Environment $twig,
) {}

Expand Down
6 changes: 3 additions & 3 deletions sources/AppBundle/Controller/Admin/Members/UserListAction.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Controller\Admin\Members;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Association\Model\Repository\UserRepository;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
Expand All @@ -14,7 +14,7 @@ class UserListAction
{
public function __construct(
private readonly UserRepository $userRepository,
private readonly AntennesCollection $antennesCollection,
private readonly AntenneRepository $antenneRepository,
private readonly Environment $twig,
) {}

Expand All @@ -28,7 +28,7 @@ public function __invoke(Request $request): Response
$onlyDisplayActive = !$request->query->getBoolean('alsoDisplayInactive');

return new Response($this->twig->render('admin/members/user_list.html.twig', [
'antennes' => $this->antennesCollection->getAll(),
'antennes' => $this->antenneRepository->getAll(),
'users' => $this->userRepository->search(
$sort,
$direction,
Expand Down
4 changes: 2 additions & 2 deletions sources/AppBundle/Controller/Api/Antennes/GetOneAction.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@

namespace AppBundle\Controller\Api\Antennes;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Event\Model\Repository\MeetupRepository;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;

final readonly class GetOneAction
{
public function __construct(
private AntennesCollection $antennesCollection,
private AntenneRepository $antennesCollection,
private MeetupRepository $meetupRepository,
) {}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
namespace AppBundle\Controller\Website\CompanyPublicProfile;

use AppBundle\Antennes\Antenne;
use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Association\Model\CompanyMember;
use AppBundle\Association\Model\Repository\CompanyMemberRepository;
use AppBundle\Association\UserMembership\BadgesComputer;
Expand All @@ -18,6 +18,7 @@ public function __construct(
CompanyMemberRepository $companyMemberRepository,
private readonly ViewRenderer $view,
private readonly BadgesComputer $badgesComputer,
private readonly AntenneRepository $antenneRepository,
) {
parent::__construct($companyMemberRepository);
}
Expand All @@ -38,10 +39,9 @@ public function __invoke(int $id, string $slug): Response
*/
private function getRelatedAfupAntennes(CompanyMember $companyMember): array
{
$antennesCollection = new AntennesCollection();
$antennes = [];
foreach ($companyMember->getFormattedRelatedAfupOffices() as $localOffice) {
$antenne = $antennesCollection->findByCode($localOffice);
$antenne = $this->antenneRepository->findByCode($localOffice);
if ($antenne->hideOnOfficesPage) {
continue;
}
Expand Down
4 changes: 3 additions & 1 deletion sources/AppBundle/Controller/Website/Member/IndexAction.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

namespace AppBundle\Controller\Website\Member;

use AppBundle\Antennes\AntenneRepository;
use AppBundle\Association\Model\Repository\GeneralMeetingQuestionRepository;
use AppBundle\Association\Model\Repository\TechletterSubscriptionsRepository;
use AppBundle\Association\UserMembership\BadgesComputer;
Expand All @@ -26,6 +27,7 @@ public function __construct(
private readonly BadgesComputer $badgesComputer,
private readonly TechletterSubscriptionsRepository $techletterSubscriptionsRepository,
private readonly Authentication $authentication,
private readonly AntenneRepository $antenneRepository,
) {}

public function __invoke(): Response
Expand Down Expand Up @@ -64,7 +66,7 @@ public function __invoke(): Response
'has_member_subscribed_to_techletter' => $this->techletterSubscriptionsRepository->hasUserSubscribed($user),
'membership_fee_call_to_update' => null === $daysBeforeMembershipExpiration || $daysBeforeMembershipExpiration < self::DAYS_BEFORE_CALL_TO_UPDATE,
'has_up_to_date_membership_fee' => $user->hasUpToDateMembershipFee(),
'office_label' => $user->getNearestOfficeLabel(),
'office_label' => $user->getNearestOfficeLabel($this->antenneRepository),
'has_general_meeting_planned' => $hasGeneralMeetingPlanned,
'has_user_rspved_to_next_general_meeting' => $generalMeetingFactory->hasUserRspvedToLastGeneralMeeting($user),
'membershipfee_end_date' => $dateFinCotisation,
Expand Down
5 changes: 3 additions & 2 deletions sources/AppBundle/Controller/Website/Static/OfficesAction.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Controller\Website\Static;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Twig\ViewRenderer;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
Expand All @@ -13,12 +13,13 @@ final class OfficesAction extends AbstractController
{
public function __construct(
private readonly ViewRenderer $view,
private readonly AntenneRepository $antennesRepository,
) {}

public function __invoke(): Response
{
return $this->view->render('site/offices.html.twig', [
'antennes' => (new AntennesCollection())->getAllSortedByLabels(),
'antennes' => $this->antennesRepository->getAllSortedByLabels(),
]);
}
}
5 changes: 3 additions & 2 deletions sources/AppBundle/Controller/Website/Talks/ListAction.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Controller\Website\Talks;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Twig\ViewRenderer;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\DependencyInjection\Attribute\Autowire;
Expand All @@ -20,6 +20,7 @@ public function __construct(
private readonly string $algoliaAppId,
#[Autowire('%algolia_frontend_api_key%')]
private readonly string $algoliaFrontendApikey,
private readonly AntenneRepository $antennesRepository,
) {}

public function __invoke(Request $request): Response
Expand All @@ -43,7 +44,7 @@ public function __invoke(Request $request): Response
return $this->view->render('site/talks/list.html.twig', [
'title' => $title,
'canonical' => $canonical,
'antennes' => (new AntennesCollection())->getAllSortedByLabels(),
'antennes' => $this->antennesRepository->getAllSortedByLabels(),
'algolia_app_id' => $this->algoliaAppId,
'algolia_api_key' => $this->algoliaFrontendApikey,
]);
Expand Down
11 changes: 4 additions & 7 deletions sources/AppBundle/Event/Form/TicketType.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

namespace AppBundle\Event\Form;

use AppBundle\Antennes\AntennesCollection;
use AppBundle\Antennes\AntenneRepository;
use AppBundle\Event\Model\Repository\EventRepository;
use AppBundle\Event\Model\Repository\TicketEventTypeRepository;
use AppBundle\Event\Model\Repository\TicketSpecialPriceRepository;
Expand All @@ -29,17 +29,14 @@ class TicketType extends AbstractType
public const MEMBER_PERSONAL = 1;
public const MEMBER_CORPORATE = 2;

private readonly AntennesCollection $antennesCollection;

public function __construct(
private readonly EventRepository $eventRepository,
private readonly TicketEventTypeRepository $ticketEventTypeRepository,
private readonly TicketTypeAvailability $ticketTypeAvailability,
private readonly TicketSpecialPriceRepository $ticketSpecialPriceRepository,
private readonly TicketTypeRepository $ticketTypeRepository,
) {
$this->antennesCollection = new AntennesCollection();
}
private readonly AntenneRepository $antenneRepository,
) {}

public function buildForm(FormBuilderInterface $builder, array $options): void
{
Expand Down Expand Up @@ -78,7 +75,7 @@ public function buildForm(FormBuilderInterface $builder, array $options): void
->add('nearestOffice', ChoiceType::class, [
'label' => 'Antenne de prédilection',
'required' => false,
'choices' => array_flip($this->antennesCollection->getOrderedLabelsByKey()),
'choices' => array_flip($this->antenneRepository->getOrderedLabelsByKey()),
])
;

Expand Down
Loading
Loading