for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace PH\Bundle\SubscriptionBundle\Form\Type;
use PH\Bundle\SubscriptionBundle\Provider\SubscriptionIntervalsProviderInterface;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
use Symfony\Component\OptionsResolver\OptionsResolver;
final class IntervalChoiceType extends AbstractType
{
/**
* @var SubscriptionIntervalsProviderInterface
*/
private $subscriptionIntervalsProvider;
* IntervalChoiceType constructor.
*
* @param SubscriptionIntervalsProviderInterface $subscriptionIntervalsProvider
public function __construct(SubscriptionIntervalsProviderInterface $subscriptionIntervalsProvider)
$this->subscriptionIntervalsProvider = $subscriptionIntervalsProvider;
}
* {@inheritdoc}
public function configureOptions(OptionsResolver $resolver): void
$resolver
->setDefaults([
'choices' => $this->subscriptionIntervalsProvider->getIntervals(),
])
;
public function getParent(): string
return ChoiceType::class;
public function getBlockPrefix(): string
return 'ph_interval_choice';