From 10d3891bbab0cecaa09bfc431e2ab2421bdff84a Mon Sep 17 00:00:00 2001 From: Joshua Ramon Enslin Date: Wed, 12 Aug 2026 13:56:34 +0200 Subject: [PATCH] Add check to prevent duplicate work in NodaValidationHelper --- src/NodaValidationHelper.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/NodaValidationHelper.php b/src/NodaValidationHelper.php index 75965f3..c9a345b 100644 --- a/src/NodaValidationHelper.php +++ b/src/NodaValidationHelper.php @@ -161,14 +161,19 @@ final class NodaValidationHelper { throw new MDBlacklistedInputException("Term is blacklisted"); } + // Check rewrites + if ($existingPersinstId = NodaIDGetter::getPersinstIDByNamesAndRewrites($mysqli_noda, $lang, $persinst_name_en, $persinst_geburtsjahr, $persinst_sterbejahr, $context_identifier, $institution_id)) { return $existingPersinstId; } - if ($existingPersinstId = NodaIDGetter::getPersinstIDByNamesAndRewrites($mysqli_noda, $lang, $persinst_name, $persinst_geburtsjahr, $persinst_sterbejahr, $context_identifier, $institution_id)) { - return $existingPersinstId; + if ($persinst_name_en !== $persinst_name) { + if ($existingPersinstId = NodaIDGetter::getPersinstIDByNamesAndRewrites($mysqli_noda, $lang, $persinst_name, $persinst_geburtsjahr, $persinst_sterbejahr, $context_identifier, $institution_id)) { + return $existingPersinstId; + } } + // Return 0, no ID found return 0; }