Skip to content

Commit 1a1c47b

Browse files
authoredDec 17, 2024··
Merge pull request #20 from cleverage/16_context_bug
#16 Fix context field on nested array
2 parents ebdfa8d + 37a0b8b commit 1a1c47b

File tree

3 files changed

+34
-4
lines changed

3 files changed

+34
-4
lines changed
 

‎src/Admin/Field/ContextField.php

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
/*
6+
* This file is part of the CleverAge/UiProcessBundle package.
7+
*
8+
* Copyright (c) Clever-Age
9+
*
10+
* For the full copyright and license information, please view the LICENSE
11+
* file that was distributed with this source code.
12+
*/
13+
14+
namespace CleverAge\UiProcessBundle\Admin\Field;
15+
16+
use EasyCorp\Bundle\EasyAdminBundle\Contracts\Field\FieldInterface;
17+
use EasyCorp\Bundle\EasyAdminBundle\Field\FieldTrait;
18+
19+
class ContextField implements FieldInterface
20+
{
21+
use FieldTrait;
22+
23+
public static function new(string $propertyName, ?string $label = null): self
24+
{
25+
return (new self())
26+
->setProperty($propertyName)
27+
->setLabel($label)
28+
->setTemplatePath('@CleverAgeUiProcess/admin/field/array.html.twig');
29+
}
30+
}

‎src/Controller/Admin/LogRecordCrudController.php

+2-3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
namespace CleverAge\UiProcessBundle\Controller\Admin;
1515

1616
use CleverAge\ProcessBundle\Configuration\ProcessConfiguration;
17+
use CleverAge\UiProcessBundle\Admin\Field\ContextField;
1718
use CleverAge\UiProcessBundle\Admin\Field\LogLevelField;
1819
use CleverAge\UiProcessBundle\Admin\Filter\LogProcessFilter;
1920
use CleverAge\UiProcessBundle\Entity\LogRecord;
@@ -23,7 +24,6 @@
2324
use EasyCorp\Bundle\EasyAdminBundle\Config\Crud;
2425
use EasyCorp\Bundle\EasyAdminBundle\Config\Filters;
2526
use EasyCorp\Bundle\EasyAdminBundle\Controller\AbstractCrudController;
26-
use EasyCorp\Bundle\EasyAdminBundle\Field\ArrayField;
2727
use EasyCorp\Bundle\EasyAdminBundle\Field\BooleanField;
2828
use EasyCorp\Bundle\EasyAdminBundle\Field\DateTimeField;
2929
use EasyCorp\Bundle\EasyAdminBundle\Field\TextField;
@@ -52,8 +52,7 @@ public function configureFields(string $pageName): iterable
5252
LogLevelField::new('level'),
5353
TextField::new('message')->setMaxLength(512),
5454
DateTimeField::new('createdAt')->setFormat('Y/M/dd H:mm:ss'),
55-
ArrayField::new('context')
56-
->setTemplatePath('@CleverAgeUiProcess/admin/field/array.html.twig')
55+
ContextField::new('context')
5756
->onlyOnDetail(),
5857
BooleanField::new('contextIsEmpty', 'Has context info ?')
5958
->onlyOnIndex()

‎src/Controller/Admin/ProcessExecutionCrudController.php

+2-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
namespace CleverAge\UiProcessBundle\Controller\Admin;
1515

16+
use CleverAge\UiProcessBundle\Admin\Field\ContextField;
1617
use CleverAge\UiProcessBundle\Admin\Field\EnumField;
1718
use CleverAge\UiProcessBundle\Entity\ProcessExecution;
1819
use CleverAge\UiProcessBundle\Repository\ProcessExecutionRepository;
@@ -58,7 +59,7 @@ public function configureFields(string $pageName): iterable
5859
return $entity->duration(); // returned format can be changed here
5960
}),
6061
ArrayField::new('report')->setTemplatePath('@CleverAgeUiProcess/admin/field/report.html.twig'),
61-
ArrayField::new('context')->setTemplatePath('@CleverAgeUiProcess/admin/field/report.html.twig'),
62+
ContextField::new('context'),
6263
];
6364
}
6465

0 commit comments

Comments
 (0)
Please sign in to comment.