GET https://legaldesign.sandbox-skrea.fr/catalogue

Security

Token

There is no security token.

Firewall

customer Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context customer
entry_point security.authenticator.form_login.customer
user_checker App\Security\CustomerChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "switch_user"
  "form_login"
  "remember_me"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#98
  -map: Symfony\Component\Security\Http\AccessMap {#99 …}
  -logger: Monolog\Logger {#66 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#124
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#178 …}
  -sessionKey: "_security_customer"
  -logger: Monolog\Logger {#66 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#125 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#73 …}
  -registered: false
  -trustResolver: Symfony\Component\Security\Core\Authentication\AuthenticationTrustResolver {#60 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#127 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#399
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#129 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\SwitchUserListener {#395
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#179 …}
  -provider: Symfony\Bridge\Doctrine\Security\User\EntityUserProvider {#70 …}
  -userChecker: App\Security\CustomerChecker {#386 …}
  -firewallName: "customer"
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#406 …}
  -usernameParameter: "_switch_user"
  -role: "ROLE_ALLOWED_TO_SWITCH"
  -logger: Monolog\Logger {#66 …}
  -dispatcher: Symfony\Component\HttpKernel\Debug\TraceableEventDispatcher {#328 …}
  -stateless: false
  -urlGenerator: Symfony\Bundle\FrameworkBundle\Routing\Router {#193 …}
  -targetRoute: null
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#394
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#179 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#406 …}
  -map: Symfony\Component\Security\Http\AccessMap {#99 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#72
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#179 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "/compte/deconnexion"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#55 …}
  -csrfTokenManager: null
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#73 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
3
"App\Security\Voter\CanDownloadVoter"

Access decision log

# Result Attributes Object
1 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1259
  -id: 25
  -title: "Kit - Rupture conventionnelle - Régime social et fiscal"
  -description: """
    Le régime social de l'indemnité de rupture conventionnelle a évolué au 1er Janvier 2026. \r\n
    Mais quelles sont les répercussions financières réelles ? L'augmentation du coût de la rupture conventionnelle est-il significatif ? \r\n
    \r\n
    Pour répondre à ces questions, ce kit comporte 2 infographies, avec des exemples chiffrés analysant le régime social, fiscal et la CSG/CRDS, au travers de 2 mises en perspective :\r\n
    1- "Hier" VS "Aujourd'hui" \r\n
    2- Salarié pouvant prétendre à la retraite VS salarié ne pouvant pas y prétendre.\r\n
    \r\n
    [grasorange]Cette infographie est uniquement accessible avec l'abonnement premium.[/grasorange]
    """
  -createdAt: DateTimeImmutable @1714716865 {#1270
    date: 2024-05-03 08:14:25.0 Europe/Paris (+02:00)
  }
  -updatedAt: DateTimeImmutable @1769178950 {#1266
    date: 2026-01-23 15:35:50.0 Europe/Paris (+01:00)
  }
  -thumbnail: "kit-rc-regime-social-et-fiscal-2026-6973874624759473148007.webp"
  -thumbnailFile: null
  -document: "kit-rc-regime-social-et-fiscal-2026-697387462517b485676578.pdf"
  -documentFile: null
  -promoted: false
  -categories: Doctrine\ORM\PersistentCollection {#1257 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1767222000 {#1246
    date: 2026-01-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "kit-rupture-conventionnelle-regime-social-et-fiscal"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#570 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1255 …}
  -isPurchasable: false
  -additionalInfos: null
  -positionOnHome: null
  -mainPdf: "kit-rc-regime-social-et-fiscal-2026-6973874625d31056227353.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: true
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
2 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1250
  -id: 103
  -title: "Kit - Forfait jours - Simulateurs de calcul"
  -description: """
    Le forfait annuel en jours permet à des salariés autonomes de travailler selon un nombre de jours fixé par l'accord collectif qui le met en place.\r\n
    \r\n
    En fonction de ce nombre de jours et des aléas du calendrier, le salarié bénéficie de jours de repos supplémentaires à prendre au cours de l'année. \r\n
    Par ailleurs, en cas d'embauche en cours d'année, il est important de déterminer le nombre de jours qu'il doit travailler jusqu'au 31 décembre ainsi que le nombre de jours de repos pouvant être pris.\r\n
    \r\n
    Ce kit vous donne accès à 2 simulateurs qui calculent automatiquement : \r\n
    \r\n
    1- En cas d'embauche en cours d'année en 2026 : le nombre de jours à travailler et de repos pouvant être pris. \r\n
    Vous aurez à renseigner 2 cellules : Le nombre de jours prévus par votre accord collectif et la date d'entrée en 2026.\r\n
    \r\n
    2- Pour les salariés déjà embauchés avec un droit à congés payés complet : le nombre de jours de repos à planifier en 2026.\r\n
    Vous aurez à renseigner uniquement le nombre de jours prévu par votre accord collectif.\r\n
    \r\n
    [grasorange] Ce kit est disponible avec notre abonnement premium ou dans notre book dédié à la gestion des forfaits jours lequel contient plusieurs infographies sur ce thème.[/grasorange]
    """
  -createdAt: DateTimeImmutable @1728030988 {#1253
    date: 2024-10-04 10:36:28.0 Europe/Paris (+02:00)
  }
  -updatedAt: DateTimeImmutable @1770040402 {#1252
    date: 2026-02-02 14:53:22.0 Europe/Paris (+01:00)
  }
  -thumbnail: "kit-jnt-cours-d-annee-2026-1-6980ac529b83d830738769.webp"
  -thumbnailFile: null
  -document: "kit-simulateur-6980ac529bdc6759325988.zip"
  -documentFile: null
  -promoted: false
  -categories: Doctrine\ORM\PersistentCollection {#1249 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1767222000 {#1251
    date: 2026-01-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "kit-forfait-jours-simulateurs-de-calcul"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#570 …}
  -price: null
  -parent: Proxies\__CG__\App\Entity\Infographics\Infographic {#1345 …}
  -children: Doctrine\ORM\PersistentCollection {#1346 …}
  -isPurchasable: false
  -additionalInfos: null
  -positionOnHome: 2
  -mainPdf: "kit-jnt-cours-d-annee-2026-1-6980ac529c243550855361.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: true
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
3 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1352
  -id: 104
  -title: "Kit - Les obligations sociales - Seuils d'effectif"
  -description: """
    Que vous lanciez votre start-up ou que votre entreprise soit déjà bien établie, la question de votre conformité aux obligations sociales reste incontournable.\r\n
    \r\n
    Ce kit récapitule les principales obligations collectives prévues par le Code du travail, en fonction de l’effectif de l’entreprise, jusqu’à 1000 salariés.\r\n
    \r\n
    Pour chaque seuil, des liens interactifs vers les dispositions légales vous garantissent une information fiable et un gain de temps précieux.\r\n
    \r\n
    \r\n
    Un outil simple et pratique pour savoir d’un coup d’œil ce que vous avez déjà accompli, ce qu’il reste à faire ou anticiper les étapes à venir dans votre développement.
    """
  -createdAt: DateTimeImmutable @1733406562 {#1274
    date: 2024-12-05 14:49:22.0 Europe/Paris (+01:00)
  }
  -updatedAt: DateTimeImmutable @1770371369 {#1354
    date: 2026-02-06 10:49:29.0 Europe/Paris (+01:00)
  }
  -thumbnail: "les-obligations-sociales-seuils-d-effectif-vf-6751af628f23e695733742.webp"
  -thumbnailFile: null
  -document: "les-obligations-sociales-seuils-d-effectif-2026-69845cfa89e88500335755.pdf"
  -documentFile: null
  -promoted: true
  -categories: Doctrine\ORM\PersistentCollection {#1351 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1767222000 {#1353
    date: 2026-01-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "kit-les-obligations-sociales-seuils-d-effectif"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#579 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1357 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: null
  -mainPdf: "les-obligations-sociales-seuils-d-effectif-vf-6751af628fd8f904210649.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
4 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1362
  -id: 136
  -title: "Cahier de corrections - Hiver 2025"
  -description: """
    Les fêtes sont terminées, place aux bonnes résolutions... et aux réponses !\r\n
    \r\n
    Après les révisions, voici venu le moment de vérifier vos connaissances avec ce cahier de corrections.\r\n
    \r\n
    Vous y trouverez les solutions aux exercices proposés. Pour une compréhension plus approfondie des réponses et une vision globale des sujets traités, prenez le temps de lire les extraits de notre revue mensuelle le Barthélémag.
    """
  -createdAt: DateTimeImmutable @1767715224 {#1359
    date: 2026-01-06 17:00:24.0 Europe/Paris (+01:00)
  }
  -updatedAt: DateTimeImmutable @1767715224 {#1360
    date: 2026-01-06 17:00:24.0 Europe/Paris (+01:00)
  }
  -thumbnail: "cahier-de-corrections-2026-vf-695d3198c0413420595890.webp"
  -thumbnailFile: null
  -document: "cahier-de-corrections-2026-vf-695d3198c105d562368207.pdf"
  -documentFile: null
  -promoted: true
  -categories: Doctrine\ORM\PersistentCollection {#1363 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1767222000 {#1361
    date: 2026-01-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "cahier-de-corrections-hiver-2025"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#579 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1365 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: 1
  -mainPdf: "cahier-de-corrections-2026-vf-695d3198c462c261531626.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
5 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1370
  -id: 133
  -title: "Les entretiens de parcours professionnels"
  -description: """
    La loi du 24 octobre 2025 marque une évolution dans la gestion des carrières des salariés.\r\n
    \r\n
    Ce qu'il faut retenir : \r\n
    - Le salarié bénéficie d’un entretien de parcours professionnel au cours de la première année de son embauche ;\r\n
    - Les entretiens doivent avoir lieu tous les 4 ans (au lieu de 2 ans) ;\r\n
    - Un état des lieux récapitulatif du parcours aura lieu tous les 8 ans (en remplacement du "bilan" qui avait lieu tous les 6 ans)\r\n
    - Un entretien devra être organisé à l’issue de certaines absences (congé parental, maladie ...), lors de la visite médicale de mi-carrière et avant l'entretien de fin de carrière.\r\n
    \r\n
    L’entretien de parcours professionnel couvre un champ plus large en ne se limitant plus à la formation ou aux aspirations d’évolution.\r\n
    \r\n
    Nous vous présentons de manière claire ce nouveau dispositif dans ce kit
    """
  -createdAt: DateTimeImmutable @1765364349 {#1367
    date: 2025-12-10 11:59:09.0 Europe/Paris (+01:00)
  }
  -updatedAt: DateTimeImmutable @1766051107 {#1368
    date: 2025-12-18 10:45:07.0 Europe/Paris (+01:00)
  }
  -thumbnail: "entretien-parcours-pro-vf-1-6943b87a5fef7947829860.webp"
  -thumbnailFile: null
  -document: "entretien-parcours-pro-vf-6939527d7be75322630963.pdf"
  -documentFile: null
  -promoted: true
  -categories: Doctrine\ORM\PersistentCollection {#1371 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1764543600 {#1369
    date: 2025-12-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "les-entretiens-de-parcours-professionnels"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#579 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1373 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: 3
  -mainPdf: "entretien-parcours-pro-vf-6939527d7cc33970442476.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
6 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1378
  -id: 134
  -title: "Le cahier de révision - Hiver 2025"
  -description: """
    Après le succès de l’édition 2024, notre cahier de révision revient pour accompagner la période des fêtes de quelques pauses studieuses. Cette année encore, nous avons imaginé un format ludique pour mettre à l’épreuve vos connaissances sur les sujets RH et juridiques qui ont marqué 2025 et qui façonneront les enjeux sociaux de 2026.\r\n
    \r\n
    \r\n
    Au programme : des thématiques incontournables comme les élections professionnelles, les entretiens de parcours professionnels, la transparence salariale, l’égalité professionnelle entre les femmes et les hommes.... Autant de sujets parfois simples en apparence, mais dont les réponses peuvent vous réserver quelques surprises !\r\n
    \r\n
    Pour accompagner vos révisions, nous avons glissé dans ces pages une sélection d’articles, dont certains issus de notre revue mensuelle le Barthélémag, histoire de vous offrir une vraie pause lecture au coin du feu.
    """
  -createdAt: DateTimeImmutable @1765527963 {#1375
    date: 2025-12-12 09:26:03.0 Europe/Paris (+01:00)
  }
  -updatedAt: DateTimeImmutable @1765527965 {#1376
    date: 2025-12-12 09:26:05.0 Europe/Paris (+01:00)
  }
  -thumbnail: "cahier-revision-2025-hiver-vf-693bd19d1a2ba311771459.webp"
  -thumbnailFile: null
  -document: "cahier-revision-2025-hiver-vf-693bd19d1aecc533679546.pdf"
  -documentFile: null
  -promoted: true
  -categories: Doctrine\ORM\PersistentCollection {#1379 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1764543600 {#1377
    date: 2025-12-01 00:00:00.0 Europe/Paris (+01:00)
  }
  -slug: "le-cahier-de-revision-hiver-2025"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#579 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1381 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: 2
  -mainPdf: "cahier-revision-2025-hiver-vf-693bd19d1e32f520260388.pdf"
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
7 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1386
  -id: 19
  -title: "Kit - Loi partage de la valeur"
  -description: """
    Quels sont les 4 principaux dispositifs mis en place par la loi partage de la valeur ?\r\n
    \r\n
    La 1ère infographie porte sur les modalités de mise en place de la PPV et les montants exonérés pour 2025.\r\n
    La 2ème traite de la modulation de la prime, de ses 3 spécificités et de la date à laquelle s'apprécie la présence des salariés pour son versement.\r\n
    La 3ème infographie concerne l'obligation de mettre en place un dispositif de partage de la valeur dans les entreprises de moins de 50 salariés.\r\n
    La dernière traite de l'obligation de négocier sur l'augmentation exceptionnelle du bénéfice net fiscal dans les entreprises d'au moins 50 salariés.\r\n
    \r\n
    Nous restons à votre disposition pour vous accompagner dans la mise en place de l'un de ces dispositifs.
    """
  -createdAt: DateTimeImmutable @1714716312 {#1383
    date: 2024-05-03 08:05:12.0 Europe/Paris (+02:00)
  }
  -updatedAt: DateTimeImmutable @1751019014 {#1384
    date: 2025-06-27 12:10:14.0 Europe/Paris (+02:00)
  }
  -thumbnail: "kit-loi-partage-de-la-valeur-685e6e069eb15149972927.webp"
  -thumbnailFile: null
  -document: "kit-loi-partage-de-la-valeur-685e6e069f555362102941.pdf"
  -documentFile: null
  -promoted: false
  -categories: Doctrine\ORM\PersistentCollection {#1387 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1746050400 {#1385
    date: 2025-05-01 00:00:00.0 Europe/Paris (+02:00)
  }
  -slug: "kit-prime-partage-de-la-valeur-pour-2024"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#580 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1389 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: null
  -mainPdf: null
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
8 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1394
  -id: 47
  -title: "Activité partielle - Procédure de déclaration"
  -description: """
    Le recours à l'activité partielle fait l'objet d'une réglementation précise. \r\n
    \r\n
    Dans cette infographie, nous faisons le point sur :\r\n
    1- les conditions de mise en œuvre de l'activité partielle\r\n
    2- les démarches administratives à effectuer pour l'autorisation d'y recourir et le remboursement des sommes\r\n
    3- les délais applicables\r\n
    \r\n
    Notre expertise est à votre disposition pour vous accompagner à mettre en place l'activité partielle dans votre entreprise.
    """
  -createdAt: DateTimeImmutable @1715939373 {#1391
    date: 2024-05-17 11:49:33.0 Europe/Paris (+02:00)
  }
  -updatedAt: DateTimeImmutable @1751016957 {#1392
    date: 2025-06-27 11:35:57.0 Europe/Paris (+02:00)
  }
  -thumbnail: "activite-partielle-procedure-de-declaration-685e65fdcd82f608094456.webp"
  -thumbnailFile: null
  -document: "activite-partielle-procedure-de-declaration-685e65fdcdff2930317007.pdf"
  -documentFile: null
  -promoted: false
  -categories: Doctrine\ORM\PersistentCollection {#1395 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1746050400 {#1393
    date: 2025-05-01 00:00:00.0 Europe/Paris (+02:00)
  }
  -slug: "activite-partielle-procedure-de-declaration"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#580 …}
  -price: null
  -parent: null
  -children: Doctrine\ORM\PersistentCollection {#1397 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: null
  -mainPdf: null
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details
9 DENIED INFO_PREMIUM
App\Entity\Infographics\Infographic {#1402
  -id: 65
  -title: "AT - Obligations déclaratives"
  -description: """
    Lorsqu'un accident du travail survient, l'employeur est tenu par des obligations déclaratives spécifiques. \r\n
    \r\n
    Il doit rapidement transmettre une déclaration à la caisse d'assurance maladie en veillant à respecter les délais impartis. \r\n
    Il doit également prendre contact avec le médecin du travail et, dans certains cas, l'inspecteur du travail. \r\n
    Enfin, une réunion avec les  membres du comité social et économique (CSE) devra avoir lieu. \r\n
    Ces démarches concourent non seulement à la protection du salarié mais également au maintien d'un environnement de travail sécurisé. \r\n
    \r\n
    Pour vous éclairer dans vos démarches, faites appel à notre expertise.\r\n
    \r\n
    [grasorange]Cette infographie fait partie d'un book qui en contient d'autres sur le même thème.\r\n
    Certaines sont accessibles uniquement dans ce book.[/grasorange]
    """
  -createdAt: DateTimeImmutable @1715941171 {#1399
    date: 2024-05-17 12:19:31.0 Europe/Paris (+02:00)
  }
  -updatedAt: DateTimeImmutable @1751016985 {#1400
    date: 2025-06-27 11:36:25.0 Europe/Paris (+02:00)
  }
  -thumbnail: "at-obligations-declaratives-685e6619caeb7325596123.webp"
  -thumbnailFile: null
  -document: "at-obligations-declaratives-685e6619cb665778828360.pdf"
  -documentFile: null
  -promoted: false
  -categories: Doctrine\ORM\PersistentCollection {#1403 …}
  -theme: null
  -publishedAt: DateTimeImmutable @1746050400 {#1401
    date: 2025-05-01 00:00:00.0 Europe/Paris (+02:00)
  }
  -slug: "at-obligations-declaratives"
  -customer: null
  -type: App\Enum\InfographicsAvailability {#580 …}
  -price: null
  -parent: Proxies\__CG__\App\Entity\Infographics\Infographic {#1405 …}
  -children: Doctrine\ORM\PersistentCollection {#1407 …}
  -isPurchasable: true
  -additionalInfos: null
  -positionOnHome: null
  -mainPdf: null
  -mainPdfFile: null
  -bonusDocs: null
  -bonusDocsFile: null
  -availableOnPremium: false
  -deletedAt: null
}
"App\Security\Voter\CanDownloadVoter"
ACCESS DENIED
Show voter details