From: Patrick Date: Sun, 23 Mar 2025 23:20:50 +0000 (+0100) Subject: Mark post lists/feeds to which this item has already been added X-Git-Url: https://gitweb.ps.run/chirp/commitdiff_plain/4dcd5892e7db988893845b389abc4fd1a48d3fec?ds=inline Mark post lists/feeds to which this item has already been added --- diff --git a/src/main.zig b/src/main.zig index d7eec6c..6455207 100644 --- a/src/main.zig +++ b/src/main.zig @@ -620,7 +620,8 @@ fn write_post(res: *http.Response, txn: lmdb.Txn, logged_in: ?Login, post_id: Po while (it.next()) |kv| { const name = kv.val.name; const id = kv.val.list.idx.?; - try res.write("", .{ id, name.constSlice() }); + const list_view = try kv.val.list.open(txn); + try res.write("", .{ id, name.constSlice(), if (list_view.has(post_id) catch false) " *" else "" }); } try res.write("", .{}); try res.write("", .{@intFromEnum(post_id)}); @@ -700,7 +701,8 @@ fn write_profile(res: *http.Response, txn: lmdb.Txn, logged_in: ?Login, user: Us while (it.next()) |kv| { const name = kv.val.name; const id = kv.val.list.idx.?; - try res.write("", .{ id, name.constSlice() }); + const list_view = try kv.val.list.open(txn); + try res.write("", .{ id, name.constSlice(), if (list_view.has(user.id) catch false) " *" else "" }); } try res.write("", .{}); try res.write("", .{@intFromEnum(user.id)}); @@ -1065,7 +1067,7 @@ const GET = struct { const name = kv.val.name; const post_list = kv.val.list; try self.res.write( - \\{s} + \\{s} , .{ post_list.idx.?, name.constSlice() }); try html_form(self.res, "/delete_list", .{ .{ "type=\"hidden\" name=\"list_id\" value=\"{x}\"", .{kv.key} }, @@ -1096,7 +1098,7 @@ const GET = struct { const name = kv.val.name; const user_list = kv.val.list; try self.res.write( - \\{s} + \\{s} , .{ user_list.idx.?, name.constSlice() }); try html_form(self.res, "/delete_feed", .{ .{ "type=\"hidden\" name=\"list_id\" value=\"{x}\"", .{kv.key} },