major improvement to easylist for usability on mobile devices

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
2025-11-29 00:43:58 +01:00
parent 600b0f2cf4
commit 8f82ca87b4
11 changed files with 119 additions and 91 deletions

View File

@@ -14,6 +14,8 @@ import static de.srsoftware.umbrella.core.model.Permission.OWNER;
import static de.srsoftware.umbrella.project.Constants.PERMISSIONS;
import static de.srsoftware.umbrella.task.Constants.*;
import static java.lang.System.Logger.Level.WARNING;
import static java.net.URLDecoder.decode;
import static java.nio.charset.StandardCharsets.UTF_8;
import com.sun.net.httpserver.HttpExchange;
import de.srsoftware.configuration.Configuration;
@@ -180,11 +182,16 @@ public class TaskModule extends BaseHandler implements TaskService {
}
private boolean getTaggedTasks(Path path, UmbrellaUser user, HttpExchange ex) throws IOException {
var tag = path.toString();
var tag = decode(path.toString(), UTF_8);
var tags = tagService().getTagUses(user,tag);
var taskIds = nullable(tags.get(TASK)).orElseGet(ArrayList::new);
var tasks = taskDb.load(taskIds);
return sendContent(ex, mapValues(tasks));
var tasks = mapValues(taskDb.load(taskIds));
var taskTags = tagService().getTags(TASK,taskIds,user);
for (var entry : tasks.entrySet()){
var list = taskTags.get(entry.getKey());
entry.getValue().put(TAGS,list==null?List.of():list);
}
return sendContent(ex, tasks);
}
private boolean getTask(HttpExchange ex, long taskId, UmbrellaUser user) throws IOException {