. */ namespace App\Twig; use App\Services\LogSystem\EventCommentType; use Twig\TwigFunction; use App\Services\LogSystem\EventCommentNeededHelper; use Twig\Extension\AbstractExtension; final class MiscExtension extends AbstractExtension { public function __construct(private readonly EventCommentNeededHelper $eventCommentNeededHelper) { } public function getFunctions(): array { return [ new TwigFunction('event_comment_needed', $this->evenCommentNeeded(...)), ]; } private function evenCommentNeeded(string|EventCommentType $operation_type): bool { if (is_string($operation_type)) { $operation_type = EventCommentType::from($operation_type); } return $this->eventCommentNeededHelper->isCommentNeeded($operation_type); } }