diff --git a/abrechenbarkeit.lua b/abrechenbarkeit.lua index 2faa38e..0768d4a 100755 --- a/abrechenbarkeit.lua +++ b/abrechenbarkeit.lua @@ -54,6 +54,21 @@ local query = parse_query(os.getenv("QUERY_STRING")) local stylesheet = io.open("style.css"):read("a") local script = io.open("script.js"):read("a") +local function get_user_theme(username) + local c = "" + if username == "_jeb" then + c = "html { animation: 2s jeb infinite; }" + c = c .. "@keyframes jeb {\n" + for i=0,100 do + c = c .. string.format("%.02f%% { --hue: %.02f; } \n", i, i / 100 * 360) + end + c = c .. "\n}" + elseif username == "Dinnerbone" then + c = "html { transform: scale(-1); } " + end + return c +end + local function respond(status, title, body) print(string.format("Status: %d", status)) print("Content-Type: text/html") @@ -64,6 +79,7 @@ local function respond(status, title, body) %s + %s @@ -79,7 +95,13 @@ local function respond(status, title, body) Products Source - ]], escape(title), stylesheet, script, config.head_extra or "")) + ]], + escape(title), + stylesheet, + get_user_theme(path and path:sub(2)), + script, + config.head_extra or "" + )) body() print("") end diff --git a/style.css b/style.css index 78d914a..ad5048f 100644 --- a/style.css +++ b/style.css @@ -84,6 +84,7 @@ form.creation { background-color: var(--b2); padding: 1em; margin-top: 2em; + border-radius: 4px; } form.creation>h3 { @@ -127,6 +128,7 @@ li { padding: 1em; margin: .5em; margin-left: 0; + border-radius: 4px; } .name { @@ -234,6 +236,7 @@ h3 { /* grid-auto-rows: minmax(5em, 2); */ /* grid-template-columns: repeat(2, calc(50% - 2em)); */ grid-template-columns: auto 10em; + border-radius: 4px; } form.box> :first-child,