Skip to content

Commit b85770a

Browse files
committed
feat: add usage increase logic for translation updates, adjusted logic to track usage when empty text becomes non-empty.
1 parent f792edd commit b85770a

1 file changed

Lines changed: 28 additions & 3 deletions

File tree

backend/data/src/main/kotlin/io/tolgee/util/entityPreCommitEventUsageUtil.kt

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,36 @@ package io.tolgee.util
33
import io.tolgee.events.EntityPreCommitEvent
44
import io.tolgee.events.OnEntityPreDelete
55
import io.tolgee.events.OnEntityPrePersist
6+
import io.tolgee.events.OnEntityPreUpdate
7+
import io.tolgee.model.translation.Translation
68

79
fun EntityPreCommitEvent.getUsageIncreaseAmount(): Long {
810
return when (this) {
9-
is OnEntityPrePersist -> 1
10-
is OnEntityPreDelete -> -1
11-
else -> 0
11+
is OnEntityPrePersist -> {
12+
1
13+
}
14+
15+
is OnEntityPreDelete -> {
16+
-1
17+
}
18+
19+
is OnEntityPreUpdate -> {
20+
val entity = this.entity
21+
if (entity is Translation) {
22+
val textIndex = this.propertyNames?.indexOf("text") ?: -1
23+
if (textIndex != -1) {
24+
val previousText = this.previousState?.get(textIndex) as? String
25+
val currentText = entity.text
26+
if (previousText.isNullOrEmpty() && !currentText.isNullOrEmpty()) {
27+
return 1
28+
}
29+
}
30+
}
31+
0
32+
}
33+
34+
else -> {
35+
0
36+
}
1237
}
1338
}

0 commit comments

Comments
 (0)