commit 64d7caef5a5c63966f54d17dabdb1355550f4db4
parent 8b62d81ae43da6433c9b7b65ff89d4e4c69fe437
Author: Jacob R. Edwards <jacob@jacobedwards.org>
Date: Mon, 5 Aug 2024 23:43:12 -0700
Add delete button to floorplans
There's also a dummy edit button, to be added later. The delete
button lacks confirmation at this point.
Diffstat:
1 file changed, 36 insertions(+), 0 deletions(-)
diff --git a/files/floorplans/main.js b/files/floorplans/main.js
@@ -5,10 +5,46 @@ function init() {
.then(show_floorplans)
}
+function edit_floorplan_func(item, floorplan) {
+ return function() {
+ set_error("Edit not implemented", item)
+ }
+}
+
+function delete_floorplan_func(item, floorplan) {
+ return function() {
+ api_fetch("DELETE", "floorplans/" + floorplan.user + "/" + floorplan.name)
+ .then(function() {
+ item.parentElement.remove()
+ })
+ .catch(function(err) {
+ set_error("Unable to delete floorplan: " + err, item)
+ })
+ }
+}
+
function create_floorplan(floorplan) {
root = document.createElement("div")
root.setAttribute("class", "floorplan")
+ aside = document.createElement("aside")
+
+ button = document.createElement("button")
+ button.addEventListener("click", edit_floorplan_func(root, floorplan), false)
+ // ! instead of a pencil for now
+ button.appendChild(document.createTextNode("!"))
+ button.setAttribute("title", "Edit metadata")
+ aside.append(button)
+
+ button = document.createElement("button")
+ button.addEventListener("click", delete_floorplan_func(root, floorplan), false)
+ // # instead of a trashcan for now
+ button.appendChild(document.createTextNode("#"))
+ button.setAttribute("title", "Delete floorplan")
+ aside.append(button)
+
+ root.append(aside)
+
header = document.createElement("header")
heading = document.createElement("h2")
header.append(heading)