Skip to content
Snippets Groups Projects

Resolve #3007031 "D11 hastranslationchanges on multiple"

3 files
+ 142
0
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -71,6 +71,12 @@ public function validate($entity, Constraint $constraint): void {
@@ -71,6 +71,12 @@ public function validate($entity, Constraint $constraint): void {
// in default revisions.
// in default revisions.
if ($this->hasUntranslatableFieldsChanges($entity)) {
if ($this->hasUntranslatableFieldsChanges($entity)) {
if ($entity->isDefaultTranslationAffectedOnly()) {
if ($entity->isDefaultTranslationAffectedOnly()) {
 
// Verify the original entity is set before calling
 
// hasTranslationChanges() over multiple entity translations.
 
if (!$entity->original) {
 
$id = $entity->getOriginalId() ?? $entity->id();
 
$entity->original = $this->entityTypeManager->getStorage($entity->getEntityTypeId())->loadUnchanged($id);
 
}
foreach ($entity->getTranslationLanguages(FALSE) as $langcode => $language) {
foreach ($entity->getTranslationLanguages(FALSE) as $langcode => $language) {
if ($entity->getTranslation($langcode)->hasTranslationChanges()) {
if ($entity->getTranslation($langcode)->hasTranslationChanges()) {
$this->context->addViolation($constraint->defaultTranslationMessage);
$this->context->addViolation($constraint->defaultTranslationMessage);
Loading