extended Project event translations

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
2026-01-20 20:21:54 +01:00
parent 1cb4d2ff14
commit 8c10f820d5
4 changed files with 35 additions and 14 deletions

View File

@@ -16,8 +16,8 @@ import java.util.Map;
public class ProjectEvent extends Event<Project>{
private final UmbrellaUser newMember;
private UmbrellaUser newMember;
public ProjectEvent(UmbrellaUser initiator, Project project, EventType type){
super(initiator, PROJECT, project, type);
newMember = null;
@@ -49,12 +49,12 @@ public class ProjectEvent extends Event<Project>{
}
private Translatable describeCreate() {
var head = t("You have been added to the new project '{project}', created by {user}':\n\n{body}", Field.PROJECT, payload().name(), BODY, payload().description(), USER, initiator().name());
var head = t("You have been added to the new project '{project}', created by {user}:\n\n{body}", Field.PROJECT, payload().name(), BODY, payload().description(), USER, initiator().name());
return t("{head}\n\n{link}","head",head,"link",link());
}
private Translatable describeMemberAdded() {
var head = t("'{name}' has been added to '{project}' by '{user}'.",NAME,newMember.name(),Field.PROJECT,payload().name(),USER,initiator().name());
var head = t("'{name}' has been added to '{object}' by '{user}'.",NAME,newMember.name(),Field.OBJECT,payload().name(),USER,initiator().name());
return t("{head}\n\n{link}","head",head,"link",link());
}
@@ -63,6 +63,11 @@ public class ProjectEvent extends Event<Project>{
return t("{head}\n\n{link}","head",head,"link",link());
}
@Override
protected Map<String, Object> filter(Map<String, Object> map) {
map.remove(MEMBERS);
return super.filter(map);
}
@Override
public boolean isIntendedFor(UmbrellaUser user) {
@@ -76,9 +81,11 @@ public class ProjectEvent extends Event<Project>{
return t("You can view/edit this project at {base_url}/project/{id}/view",ID,payload().id());
}
@Override
public Translatable subject() {
return t("{user} edited {object}",USER,initiator(),OBJECT,payload().name());
}
}
return switch (eventType()){
case CREATE -> t("The project '{project}' has been created", Field.PROJECT, payload().name());
case DELETE -> t("The project '{project}' has been deleted",Field.PROJECT, payload().name());
case MEMBER_ADDED, UPDATE -> t("Project '{project}' was edited",Field.PROJECT,payload().name());
};
}}

View File

@@ -50,11 +50,6 @@ public class TaskEvent extends Event<Task>{
};
}
private Translatable describeMemberAdded() {
var head = t("'{name}' has been added to '{task}' by '{user}'.",NAME,newMember.name(),Field.TASK,payload().name(),USER,initiator().name());
return t("{head}\n\n{link}","head",head,"link",link());
}
private Translatable describeCreate() {
String parentName = null;
var pid = payload().parentTaskId();
@@ -71,6 +66,11 @@ public class TaskEvent extends Event<Task>{
return t("{head}\n\n{link}","head",head,"link",link());
}
private Translatable describeMemberAdded() {
var head = t("'{name}' has been added to '{object}' by '{user}'.",NAME,newMember.name(), OBJECT,payload().name(),USER,initiator().name());
return t("{head}\n\n{link}","head",head,"link",link());
}
private Translatable describeUpdate() {
var head = t("Changes in task '{task}':\n\n{body}",Field.TASK,payload().name(),BODY,diff().orElse(""));
return t("{head}\n\n{link}","head",head,"link",link());