summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpiep <sebastian@lightweb-media.de>2025-06-17 09:10:59 +0200
committerpiep <sebastian@lightweb-media.de>2025-06-17 09:10:59 +0200
commita473f44788ee1297864032057db6c01d6ebebefc (patch)
tree3e8057a54b5a46a8c95e84c6b02c8e90c9995c68
parent8885fa15229aaccfe099cf3d1dcc8f204c5fee9a (diff)
init
-rw-r--r--htroot/api/bookmarks/get_bookmarks.json14
-rw-r--r--source/net/yacy/data/BookmarksDB.java27
-rw-r--r--source/net/yacy/htroot/api/bookmarks/get_bookmarks.java5
3 files changed, 30 insertions, 16 deletions
diff --git a/htroot/api/bookmarks/get_bookmarks.json b/htroot/api/bookmarks/get_bookmarks.json
index b535f1723..c80247536 100644
--- a/htroot/api/bookmarks/get_bookmarks.json
+++ b/htroot/api/bookmarks/get_bookmarks.json
@@ -1,18 +1,18 @@
#(display)#
{
-page: #[page]#,
-total: #[total]#,
-posts: [
+"page": #[page]#,
+"total": #[total]#,
+"posts": [
#{bookmarks}#
-{bookmark:["#[hash]#",#(public)#"public"::"private"#(/public)#,"#[title]#","#[link]#","#[tags]#","#[folders]#","#[date]#"]}#[comma]#
+"#[hash]#",#(public)#"public"::"private"#(/public)#,"#[title]#","#[link]#","#[tags]#","#[folders]#","#[date]#"]#[comma]#
#{/bookmarks}#
]
}
::
{
-page: #[page]#,
-total: #[total]#,
-rows: [
+"page": #[page]#,
+"total": #[total]#,
+"rows": [
#{bookmarks}#
{id:"#[id]#",cell:[
"#[hash]#",
diff --git a/source/net/yacy/data/BookmarksDB.java b/source/net/yacy/data/BookmarksDB.java
index fd5854925..dcd949a3a 100644
--- a/source/net/yacy/data/BookmarksDB.java
+++ b/source/net/yacy/data/BookmarksDB.java
@@ -527,18 +527,29 @@ public class BookmarksDB {
return this.tagNames;
}
- public String getTagsString() {
- final String s[] = CommonPattern.COMMA.split(ListManager.collection2string(getTags()));
- final StringBuilder stringBuilder = new StringBuilder();
- for (final String element : s){
- if(!element.startsWith("/")){
- stringBuilder.append(element);
- stringBuilder.append(",");
+ public String getTagsString() {
+ Map<String, String> tagsMap = getTags(); // Assuming getTags returns a HashMap of Strings
+ StringBuilder stringBuilder = new StringBuilder();
+
+ int tagCount = tagsMap.size();
+ int currentTag = 0;
+
+ for (Map.Entry<String, String> entry : tagsMap.entrySet()) {
+ String element = entry.getValue();
+
+ if (!element.startsWith("/")) {
+ stringBuilder.append(element); // Append the element
+ currentTag++;
+
+ if (currentTag < tagCount) {
+ stringBuilder.append(","); // Add comma if it's not the last element
}
}
- return stringBuilder.toString();
}
+ return stringBuilder.toString();
+ }
+
public String getFoldersString(){
final String s[] = CommonPattern.COMMA.split(ListManager.collection2string(getTags()));
final StringBuilder stringBuilder = new StringBuilder();
diff --git a/source/net/yacy/htroot/api/bookmarks/get_bookmarks.java b/source/net/yacy/htroot/api/bookmarks/get_bookmarks.java
index fc52cbc96..1c66ef89a 100644
--- a/source/net/yacy/htroot/api/bookmarks/get_bookmarks.java
+++ b/source/net/yacy/htroot/api/bookmarks/get_bookmarks.java
@@ -186,12 +186,15 @@ public class get_bookmarks {
prop.put("display_bookmarks_"+count+"_tags", bookmark.getTagsString());
prop.put("display_bookmarks_"+count+"_folders", (bookmark.getFoldersString()));
+
+ prop.put("display_bookmarks_"+count+"_tagsjson", bookmark.getTagsString());
+
count++;
}
}
// eliminate the trailing comma for Json output
- prop.put("display_bookmarks_" + (itemsPerPage - 1) + "_comma", "");
+ prop.put("display_bookmarks_" + (count - 1) + "_comma", "");
prop.put("display_bookmarks", count);
while(it.hasNext()){