diff --git a/src/DataTables/Column/PrettyBoolColumn.php b/src/DataTables/Column/PrettyBoolColumn.php
new file mode 100644
index 00000000..da6af1c4
--- /dev/null
+++ b/src/DataTables/Column/PrettyBoolColumn.php
@@ -0,0 +1,49 @@
+translator = $translator;
+ }
+
+ public function normalize($value): ?bool
+ {
+ if (null === $value) {
+ return null;
+ }
+
+ return (bool) $value;
+ }
+
+ public function render($value, $context)
+ {
+ if ($value === true) {
+ return ' '
+ . $this->translator->trans('bool.true')
+ . '';
+ }
+
+ if ($value === false) {
+ return ' '
+ . $this->translator->trans('bool.false')
+ . '';
+ }
+
+ if ($value === null) {
+ return ' '
+ . $this->translator->trans('bool.unknown')
+ . '';
+ }
+
+ throw new \RuntimeException('Unexpected value!');
+ }
+}
\ No newline at end of file
diff --git a/src/DataTables/PartsDataTable.php b/src/DataTables/PartsDataTable.php
index 4f06bc82..bdfb33af 100644
--- a/src/DataTables/PartsDataTable.php
+++ b/src/DataTables/PartsDataTable.php
@@ -47,6 +47,7 @@ use App\DataTables\Column\IconLinkColumn;
use App\DataTables\Column\LocaleDateTimeColumn;
use App\DataTables\Column\MarkdownColumn;
use App\DataTables\Column\PartAttachmentsColumn;
+use App\DataTables\Column\PrettyBoolColumn;
use App\DataTables\Column\TagsColumn;
use App\DataTables\Filters\PartFilter;
use App\Entity\Parts\Category;
@@ -255,18 +256,12 @@ final class PartsDataTable implements DataTableTypeInterface
'label' => $this->translator->trans('part.table.lastModified'),
'visible' => false,
])
- ->add('needs_review', BoolColumn::class, [
+ ->add('needs_review', PrettyBoolColumn::class, [
'label' => $this->translator->trans('part.table.needsReview'),
- 'trueValue' => $this->translator->trans('true'),
- 'falseValue' => $this->translator->trans('false'),
- 'nullValue' => '',
'visible' => false,
])
- ->add('favorite', BoolColumn::class, [
+ ->add('favorite', PrettyBoolColumn::class, [
'label' => $this->translator->trans('part.table.favorite'),
- 'trueValue' => $this->translator->trans('true'),
- 'falseValue' => $this->translator->trans('false'),
- 'nullValue' => '',
'visible' => false,
])
->add('manufacturing_status', MapColumn::class, [