Release 2.0.5 (#3888)

- Fixed: mandatory fields / form validation for invoice template
- Added: Duration as calendar title replacer (open: running records)
- Fixed: HTML injection in Calendar
- Fixed: Doctrine Proxies are not initialized (leads to empty customer/project)
- Fixed: tag creation
- Fixed: validation errors do not need to be logged in prod
- Removed: Customer VCard download, as used library is outdated and not maintained
- Added: supporting translations domains in many new places (menu, help_text, page_setup, report, exporter, calendar)
This commit is contained in:
Kevin Papst
2023-03-05 03:08:43 +01:00
committed by GitHub
parent 3b93afabc8
commit 0cbf0053d2
77 changed files with 1306 additions and 874 deletions

View File

@@ -67,13 +67,19 @@ final class AnnotationExtractor implements ExtractorInterface
$parsed = $this->expressionLanguage->parse($arguments['exp'], ['object']);
$columns[$arguments['name']] = new ColumnDefinition(
$name = $arguments['name'];
$columns[$name] = new ColumnDefinition(
$arguments['label'],
$arguments['type'] ?? 'string',
function ($obj) use ($parsed) {
return $parsed->getNodes()->evaluate([], ['object' => $obj]);
}
);
if (\array_key_exists('translationDomain', $arguments) && \is_string($arguments['translationDomain'])) {
$columns[$name]->setTranslationDomain($arguments['translationDomain']);
}
}
foreach ($reflectionClass->getProperties() as $property) {
@@ -103,6 +109,10 @@ final class AnnotationExtractor implements ExtractorInterface
return $property->getValue($obj);
}
);
if (\array_key_exists('translationDomain', $arguments) && \is_string($arguments['translationDomain'])) {
$columns[$name]->setTranslationDomain($arguments['translationDomain']);
}
}
}
@@ -137,6 +147,10 @@ final class AnnotationExtractor implements ExtractorInterface
return $method->invoke($obj);
}
);
if (\array_key_exists('translationDomain', $arguments) && \is_string($arguments['translationDomain'])) {
$columns[$name]->setTranslationDomain($arguments['translationDomain']);
}
}
}