From 702b9dadd5d3ac3276c77c51128878ed3cc020cb Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Wed, 4 Mar 2026 23:17:09 +0100 Subject: [PATCH] working on poll permissions Signed-off-by: Stephan Richter --- .../umbrella/core/constants/Path.java | 9 ++-- .../umbrella/core/constants/Text.java | 1 + .../umbrella/core/model/Permission.java | 2 +- .../srsoftware/umbrella/core/model/Poll.java | 34 +++++++++------ .../src/Components/PermissionEditor.svelte | 2 +- frontend/src/routes/poll/Edit.svelte | 30 +++++++++++-- frontend/src/routes/poll/Index.svelte | 8 ++-- .../de/srsoftware/umbrella/poll/PollDb.java | 8 ++-- .../srsoftware/umbrella/poll/PollModule.java | 43 +++++++++++++++---- .../de/srsoftware/umbrella/poll/SqliteDb.java | 36 +++++++++++----- .../umbrella/project/ProjectModule.java | 1 + 11 files changed, 126 insertions(+), 48 deletions(-) diff --git a/core/src/main/java/de/srsoftware/umbrella/core/constants/Path.java b/core/src/main/java/de/srsoftware/umbrella/core/constants/Path.java index cba6f172..5a0f7bb6 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/constants/Path.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/constants/Path.java @@ -31,10 +31,11 @@ public class Path { public static final String OPTION = "option"; - public static final String PAGE = "page"; - public static final String PASSWORD = "password"; - public static final String PROJECT = "project"; - public static final String PROPERTIES = "properties"; + public static final String PAGE = "page"; + public static final String PASSWORD = "password"; + public static final String PERMISSIONS = "permissions"; + public static final String PROJECT = "project"; + public static final String PROPERTIES = "properties"; public static final String PROPERTY = "property"; public static final String READ = "read"; diff --git a/core/src/main/java/de/srsoftware/umbrella/core/constants/Text.java b/core/src/main/java/de/srsoftware/umbrella/core/constants/Text.java index 0f732d8d..1b27632d 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/constants/Text.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/constants/Text.java @@ -49,6 +49,7 @@ public class Text { public static final Object OPTION = "option" ; public static final String PATH = "path"; + public static final String PERMISSION = "permission"; public static final String POLL = "poll"; public static final String POLLS = "polls"; public static final String PROJECTS = "projects"; diff --git a/core/src/main/java/de/srsoftware/umbrella/core/model/Permission.java b/core/src/main/java/de/srsoftware/umbrella/core/model/Permission.java index 5f0bd945..aa047de6 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/model/Permission.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/model/Permission.java @@ -31,7 +31,7 @@ public enum Permission implements Mappable { for (var p : Permission.values()){ if (p.code == code) return p; } - throw new InvalidParameterException(format("{0} is not a valid permission code")); + throw new InvalidParameterException(format("{0} is not a valid permission code",code)); } @Override diff --git a/core/src/main/java/de/srsoftware/umbrella/core/model/Poll.java b/core/src/main/java/de/srsoftware/umbrella/core/model/Poll.java index e53caccb..6dbc6e64 100644 --- a/core/src/main/java/de/srsoftware/umbrella/core/model/Poll.java +++ b/core/src/main/java/de/srsoftware/umbrella/core/model/Poll.java @@ -18,6 +18,7 @@ public class Poll implements Mappable { public static class Option implements Mappable{ private int id; + Integer status; private String description; private String name; @@ -28,7 +29,6 @@ public class Poll implements Mappable { this.description = description; this.status = status; } - public String description(){ return description; } @@ -104,11 +104,11 @@ public class Poll implements Mappable { return format("Option \"{0}\"",name); } + } public static class Evaluation { // Map