mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
fix cs
This commit is contained in:
parent
25147704ad
commit
ebd817f61e
@ -32,6 +32,7 @@ class AdminDocGeneratorTemplateController extends CRUDController
|
|||||||
switch ($action) {
|
switch ($action) {
|
||||||
case 'new':
|
case 'new':
|
||||||
$context = $this->contextManager->getContextByKey($request->get('context'));
|
$context = $this->contextManager->getContextByKey($request->get('context'));
|
||||||
|
// no break
|
||||||
case 'edit':
|
case 'edit':
|
||||||
$context = $this->contextManager->getContextByDocGeneratorTemplate($entity);
|
$context = $this->contextManager->getContextByDocGeneratorTemplate($entity);
|
||||||
|
|
||||||
@ -39,6 +40,7 @@ class AdminDocGeneratorTemplateController extends CRUDController
|
|||||||
$defaultTemplateParameters,
|
$defaultTemplateParameters,
|
||||||
['context' => $context]
|
['context' => $context]
|
||||||
);
|
);
|
||||||
|
|
||||||
case 'index':
|
case 'index':
|
||||||
return array_merge(
|
return array_merge(
|
||||||
$defaultTemplateParameters,
|
$defaultTemplateParameters,
|
||||||
@ -48,7 +50,6 @@ class AdminDocGeneratorTemplateController extends CRUDController
|
|||||||
default:
|
default:
|
||||||
return parent::generateTemplateParameter($action, $entity, $request, $defaultTemplateParameters); // TODO: Change the autogenerated stub
|
return parent::generateTemplateParameter($action, $entity, $request, $defaultTemplateParameters); // TODO: Change the autogenerated stub
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function new(Request $request): Response
|
public function new(Request $request): Response
|
||||||
|
@ -90,7 +90,6 @@ final class DocGeneratorTemplateController extends AbstractController
|
|||||||
int $entityId,
|
int $entityId,
|
||||||
Request $request
|
Request $request
|
||||||
): Response {
|
): Response {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$context = $this->contextManager->getContextByDocGeneratorTemplate($template);
|
$context = $this->contextManager->getContextByDocGeneratorTemplate($template);
|
||||||
} catch (ContextNotFoundException $e) {
|
} catch (ContextNotFoundException $e) {
|
||||||
|
@ -1,18 +1,28 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
namespace Chill\DocGeneratorBundle\Menu;
|
namespace Chill\DocGeneratorBundle\Menu;
|
||||||
|
|
||||||
use Chill\MainBundle\Routing\LocalMenuBuilderInterface;
|
use Chill\MainBundle\Routing\LocalMenuBuilderInterface;
|
||||||
use Knp\Menu\MenuItem;
|
use Knp\Menu\MenuItem;
|
||||||
use Symfony\Component\Security\Core\Security;
|
use Symfony\Component\Security\Core\Security;
|
||||||
use Symfony\Contracts\Translation\TranslatorInterface;
|
use Symfony\Contracts\Translation\TranslatorInterface;
|
||||||
|
use function in_array;
|
||||||
|
|
||||||
class AdminMenuBuilder implements LocalMenuBuilderInterface
|
class AdminMenuBuilder implements LocalMenuBuilderInterface
|
||||||
{
|
{
|
||||||
private TranslatorInterface $translator;
|
|
||||||
|
|
||||||
private Security $security;
|
private Security $security;
|
||||||
|
|
||||||
|
private TranslatorInterface $translator;
|
||||||
|
|
||||||
public function __construct(TranslatorInterface $translator, Security $security)
|
public function __construct(TranslatorInterface $translator, Security $security)
|
||||||
{
|
{
|
||||||
$this->translator = $translator;
|
$this->translator = $translator;
|
||||||
@ -22,12 +32,12 @@ class AdminMenuBuilder implements LocalMenuBuilderInterface
|
|||||||
public function buildMenu($menuId, MenuItem $menu, array $parameters)
|
public function buildMenu($menuId, MenuItem $menu, array $parameters)
|
||||||
{
|
{
|
||||||
if ($this->security->isGranted('ROLE_ADMIN')) {
|
if ($this->security->isGranted('ROLE_ADMIN')) {
|
||||||
if (in_array($menuId, ['admin_index', 'admin_section'])) {
|
if (in_array($menuId, ['admin_index', 'admin_section'], true)) {
|
||||||
$menu->addChild($this->translator->trans('docgen.Document generation'), [
|
$menu->addChild($this->translator->trans('docgen.Document generation'), [
|
||||||
'route' => 'chill_crud_docgen_template_index'
|
'route' => 'chill_crud_docgen_template_index',
|
||||||
])->setExtras([
|
])->setExtras([
|
||||||
'order' => 350,
|
'order' => 350,
|
||||||
'explain' => 'docgen.Manage templates and document generation'
|
'explain' => 'docgen.Manage templates and document generation',
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -37,6 +47,4 @@ class AdminMenuBuilder implements LocalMenuBuilderInterface
|
|||||||
{
|
{
|
||||||
return ['admin_index', 'admin_section', 'docgen_admin'];
|
return ['admin_index', 'admin_section', 'docgen_admin'];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -212,6 +212,7 @@ class DocGenObjectNormalizer implements NormalizerAwareInterface, NormalizerInte
|
|||||||
|
|
||||||
if (is_iterable($value)) {
|
if (is_iterable($value)) {
|
||||||
$arr = [];
|
$arr = [];
|
||||||
|
|
||||||
foreach ($value as $k => $v) {
|
foreach ($value as $k => $v) {
|
||||||
$arr[$k] =
|
$arr[$k] =
|
||||||
$this->normalizer->normalize($v, $format, array_merge(
|
$this->normalizer->normalize($v, $format, array_merge(
|
||||||
|
@ -11,7 +11,7 @@ declare(strict_types=1);
|
|||||||
|
|
||||||
namespace Chill\PersonBundle\Entity;
|
namespace Chill\PersonBundle\Entity;
|
||||||
|
|
||||||
use DateTimeImmutable;
|
use DateTime;
|
||||||
use DateTimeInterface;
|
use DateTimeInterface;
|
||||||
use Doctrine\ORM\Mapping as ORM;
|
use Doctrine\ORM\Mapping as ORM;
|
||||||
use Symfony\Component\Serializer\Annotation\DiscriminatorMap;
|
use Symfony\Component\Serializer\Annotation\DiscriminatorMap;
|
||||||
@ -38,7 +38,7 @@ class AccompanyingPeriodParticipation
|
|||||||
* @ORM\Column(type="date", nullable=true)
|
* @ORM\Column(type="date", nullable=true)
|
||||||
* @Groups({"read", "docgen:read"})
|
* @Groups({"read", "docgen:read"})
|
||||||
*/
|
*/
|
||||||
private ?\DateTime $endDate = null;
|
private ?DateTime $endDate = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @ORM\Id
|
* @ORM\Id
|
||||||
@ -59,11 +59,11 @@ class AccompanyingPeriodParticipation
|
|||||||
* @ORM\Column(type="date", nullable=false)
|
* @ORM\Column(type="date", nullable=false)
|
||||||
* @Groups({"read", "docgen:read"})
|
* @Groups({"read", "docgen:read"})
|
||||||
*/
|
*/
|
||||||
private ?\DateTime $startDate = null;
|
private ?DateTime $startDate = null;
|
||||||
|
|
||||||
public function __construct(AccompanyingPeriod $accompanyingPeriod, Person $person)
|
public function __construct(AccompanyingPeriod $accompanyingPeriod, Person $person)
|
||||||
{
|
{
|
||||||
$this->startDate = new \DateTime('now');
|
$this->startDate = new DateTime('now');
|
||||||
$this->accompanyingPeriod = $accompanyingPeriod;
|
$this->accompanyingPeriod = $accompanyingPeriod;
|
||||||
$this->person = $person;
|
$this->person = $person;
|
||||||
}
|
}
|
||||||
|
@ -157,8 +157,6 @@ class Household
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param DateTimeImmutable|null $now
|
|
||||||
* @return Collection
|
|
||||||
* @Serializer\Groups({"docgen:read"})
|
* @Serializer\Groups({"docgen:read"})
|
||||||
*/
|
*/
|
||||||
public function getCurrentMembers(?DateTimeImmutable $now = null): Collection
|
public function getCurrentMembers(?DateTimeImmutable $now = null): Collection
|
||||||
|
@ -12,7 +12,6 @@ declare(strict_types=1);
|
|||||||
namespace Chill\PersonBundle\Serializer\Normalizer;
|
namespace Chill\PersonBundle\Serializer\Normalizer;
|
||||||
|
|
||||||
use Chill\PersonBundle\Entity\SocialWork\SocialAction;
|
use Chill\PersonBundle\Entity\SocialWork\SocialAction;
|
||||||
use Chill\PersonBundle\Entity\SocialWork\SocialIssue;
|
|
||||||
use Chill\PersonBundle\Templating\Entity\SocialActionRender;
|
use Chill\PersonBundle\Templating\Entity\SocialActionRender;
|
||||||
use Symfony\Component\Serializer\Normalizer\NormalizerAwareInterface;
|
use Symfony\Component\Serializer\Normalizer\NormalizerAwareInterface;
|
||||||
use Symfony\Component\Serializer\Normalizer\NormalizerAwareTrait;
|
use Symfony\Component\Serializer\Normalizer\NormalizerAwareTrait;
|
||||||
@ -41,8 +40,8 @@ class SocialActionNormalizer implements NormalizerAwareInterface, NormalizerInte
|
|||||||
'desactivationDate' => $this->normalizer->normalize($socialAction->getDesactivationDate()),
|
'desactivationDate' => $this->normalizer->normalize($socialAction->getDesactivationDate()),
|
||||||
'title' => $socialAction->getTitle(),
|
'title' => $socialAction->getTitle(),
|
||||||
];
|
];
|
||||||
case 'docgen':
|
|
||||||
|
|
||||||
|
case 'docgen':
|
||||||
if (null === $socialAction) {
|
if (null === $socialAction) {
|
||||||
return ['id' => 0, 'title' => '', 'text' => ''];
|
return ['id' => 0, 'title' => '', 'text' => ''];
|
||||||
}
|
}
|
||||||
@ -52,12 +51,13 @@ class SocialActionNormalizer implements NormalizerAwareInterface, NormalizerInte
|
|||||||
'text' => $this->render->renderString($socialAction, []),
|
'text' => $this->render->renderString($socialAction, []),
|
||||||
'title' => $socialAction->getTitle(),
|
'title' => $socialAction->getTitle(),
|
||||||
];
|
];
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new \Symfony\Component\Serializer\Exception\RuntimeException("format not supported");
|
throw new \Symfony\Component\Serializer\Exception\RuntimeException('format not supported');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function supportsNormalization($data, string $format = null, array $context = [])
|
public function supportsNormalization($data, ?string $format = null, array $context = [])
|
||||||
{
|
{
|
||||||
if ($data instanceof SocialAction && 'json' === $format) {
|
if ($data instanceof SocialAction && 'json' === $format) {
|
||||||
return true;
|
return true;
|
||||||
@ -68,7 +68,7 @@ class SocialActionNormalizer implements NormalizerAwareInterface, NormalizerInte
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (null === $data && ($context['docgen:expects'] ?? null) === SocialAction::class) {
|
if (null === $data && SocialAction::class === ($context['docgen:expects'] ?? null)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,9 +16,8 @@ use Chill\PersonBundle\Templating\Entity\SocialIssueRender;
|
|||||||
use Symfony\Component\Serializer\Normalizer\ContextAwareNormalizerInterface;
|
use Symfony\Component\Serializer\Normalizer\ContextAwareNormalizerInterface;
|
||||||
use Symfony\Component\Serializer\Normalizer\NormalizerAwareInterface;
|
use Symfony\Component\Serializer\Normalizer\NormalizerAwareInterface;
|
||||||
use Symfony\Component\Serializer\Normalizer\NormalizerAwareTrait;
|
use Symfony\Component\Serializer\Normalizer\NormalizerAwareTrait;
|
||||||
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
|
|
||||||
|
|
||||||
class SocialIssueNormalizer implements NormalizerAwareInterface, ContextAwareNormalizerInterface
|
class SocialIssueNormalizer implements ContextAwareNormalizerInterface, NormalizerAwareInterface
|
||||||
{
|
{
|
||||||
use NormalizerAwareTrait;
|
use NormalizerAwareTrait;
|
||||||
|
|
||||||
@ -42,8 +41,8 @@ class SocialIssueNormalizer implements NormalizerAwareInterface, ContextAwareNor
|
|||||||
'title' => $socialIssue->getTitle(),
|
'title' => $socialIssue->getTitle(),
|
||||||
'text' => $this->render->renderString($socialIssue, []),
|
'text' => $this->render->renderString($socialIssue, []),
|
||||||
];
|
];
|
||||||
case 'docgen':
|
|
||||||
|
|
||||||
|
case 'docgen':
|
||||||
if (null === $socialIssue) {
|
if (null === $socialIssue) {
|
||||||
return ['id' => 0, 'title' => '', 'text' => ''];
|
return ['id' => 0, 'title' => '', 'text' => ''];
|
||||||
}
|
}
|
||||||
@ -56,20 +55,20 @@ class SocialIssueNormalizer implements NormalizerAwareInterface, ContextAwareNor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function supportsNormalization($data, string $format = null, array $context = [])
|
public function supportsNormalization($data, ?string $format = null, array $context = [])
|
||||||
{
|
{
|
||||||
if ($data instanceof SocialIssue && 'json' === $format) {
|
if ($data instanceof SocialIssue && 'json' === $format) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ('docgen' === $format) {
|
if ('docgen' === $format) {
|
||||||
if ($data instanceof SocialIssue) {
|
if ($data instanceof SocialIssue) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (null === $data && ($context['docgen:expects'] ?? null) === SocialIssue::class) {
|
if (null === $data && SocialIssue::class === ($context['docgen:expects'] ?? null)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
@ -80,22 +80,6 @@ final class AccompanyingPeriodDocGenNormalizerTest extends KernelTestCase
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testNormalizeParticipations()
|
|
||||||
{
|
|
||||||
$period = new AccompanyingPeriod();
|
|
||||||
$period->addPerson($person = new Person());
|
|
||||||
$person->setFirstName('test');
|
|
||||||
|
|
||||||
$data = $this->normalizer->normalize($period, 'docgen', ['docgen:expects' => AccompanyingPeriod::class]);
|
|
||||||
|
|
||||||
$this->assertIsArray($data);
|
|
||||||
$this->assertArrayHasKey('participations', $data);
|
|
||||||
$this->assertCount(1, $data['participations']);
|
|
||||||
|
|
||||||
$this->assertArrayHasKey('currentParticipations', $data);
|
|
||||||
$this->assertCount(1, $data['currentParticipations']);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function testNormalizeNull()
|
public function testNormalizeNull()
|
||||||
{
|
{
|
||||||
$data = $this->normalizer->normalize(null, 'docgen', ['docgen:expects' => AccompanyingPeriod::class]);
|
$data = $this->normalizer->normalize(null, 'docgen', ['docgen:expects' => AccompanyingPeriod::class]);
|
||||||
@ -134,4 +118,20 @@ final class AccompanyingPeriodDocGenNormalizerTest extends KernelTestCase
|
|||||||
$this->assertEquals($item, $data[$key]);
|
$this->assertEquals($item, $data[$key]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function testNormalizeParticipations()
|
||||||
|
{
|
||||||
|
$period = new AccompanyingPeriod();
|
||||||
|
$period->addPerson($person = new Person());
|
||||||
|
$person->setFirstName('test');
|
||||||
|
|
||||||
|
$data = $this->normalizer->normalize($period, 'docgen', ['docgen:expects' => AccompanyingPeriod::class]);
|
||||||
|
|
||||||
|
$this->assertIsArray($data);
|
||||||
|
$this->assertArrayHasKey('participations', $data);
|
||||||
|
$this->assertCount(1, $data['participations']);
|
||||||
|
|
||||||
|
$this->assertArrayHasKey('currentParticipations', $data);
|
||||||
|
$this->assertCount(1, $data['currentParticipations']);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user