www.spaceplanner.app

Web client to the spaceplanner API
git clone git://jacobedwards.org/www.spaceplanner.app
Log | Files | Refs

commit 8331d27c2a763e0332e0c6c14b4acb47234c2627
parent 66fe7332f7452b85805892af252c7bf5fce49063
Author: Jacob R. Edwards <jacob@jacobedwards.org>
Date:   Tue,  8 Oct 2024 21:19:55 -0700

Update floorplan gallery style

Label address field among other things.

Diffstat:
Mfiles/floorplans/main.css | 15+++++++++++----
Mfiles/floorplans/main.js | 33+++++++--------------------------
2 files changed, 18 insertions(+), 30 deletions(-)

diff --git a/files/floorplans/main.css b/files/floorplans/main.css @@ -58,11 +58,21 @@ .fp_name { font-size: large; - margin-bottom: .75em; + margin-bottom: .25em; } .fp_address { font-style: italic; + margin-bottom: .5em; +} + +.fp_terms { + margin-top: 0; +} + +.fp_address::before { + content: "Address: "; + font-size: smaller; } /* Maybe I should give these elements two classes: fp_metadata and @@ -84,9 +94,6 @@ input.fp_name, input.fp_synopsis, input.fp_address { padding: 1em; } -.delete_dialog > * { -} - .delete_dialog > input { margin: .5em; font-size: larger; diff --git a/files/floorplans/main.js b/files/floorplans/main.js @@ -3,7 +3,7 @@ import * as etc from "/lib/etc.js" import * as ui from "/lib/ui.js" // These are in the order they should appear -const editables = [ "name", "synopsis", "address" ] +const editables = [ "name", "address", "synopsis" ] function init() { etc.authorize() @@ -39,26 +39,6 @@ function gridview() { } function commit_editable_floorplan_func(element, data) { - let update_display = function() { - let parent = element.querySelector("header") - for (let i in editables) { - let c = floorplan_info_class(editables[i]) - let field = parent.querySelector("." + c) - if (!field) { - throw new Error("Expected ." + c + ", got nothing") - } - if (!field.value) { - field.remove() - } else { - let creator = create_field[editables[i]] - if (!creator) { - throw new Error("Expected " + editables[i] + "in create_field") - } - field.replaceWith(creator(field.value)) - } - } - } - return function () { let patches = [] let fields = Array.from(element.querySelectorAll("header > input")) @@ -80,7 +60,7 @@ function commit_editable_floorplan_func(element, data) { if (!updated) { console.debug("No changes, skipping") - update_display() + element.replaceWith(create_floorplan(data)) return } @@ -89,7 +69,7 @@ function commit_editable_floorplan_func(element, data) { for (let i in rdata) { data[i] = rdata[i] } - update_display() + element.replaceWith(create_floorplan(data)) }) .catch(function(err) { etc.error(err, element) @@ -255,12 +235,13 @@ function create_floorplan(floorplan) { throw new Error("Expected floorplan name") } header.append(create_field.name(floorplan.name, floorplan.id)) - if (floorplan.synopsis) { - header.append(create_field.synopsis(floorplan.synopsis)) - } + if (floorplan.address) { header.append(create_field.address(floorplan.address)) } + if (floorplan.synopsis) { + header.append(create_field.synopsis(floorplan.synopsis)) + } if (floorplan.user != localStorage.getItem("username")) { let footer = document.createElement("footer")