diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.gitignore
diff --git a/app.lua b/app.lua
index 4d1acce..3af69ce 100644
--- a/app.lua
+++ b/app.lua
app:enable("etlua")
app.layout = require "views.layout"
+-- Source - https://stackoverflow.com/a
+-- Posted by hookenz, modified by community. See post 'Timeline' for change history
+-- Retrieved 2025-11-26, License - CC BY-SA 4.0
+
+local function dump(o)
+ if type(o) == 'table' then
+ local s = '{ '
+ for k,v in pairs(o) do
+ if type(k) ~= 'number' then k = '"'..k..'"' end
+ s = s .. '['..k..'] = ' .. dump(v) .. ','
+ end
+ return s .. '} '
+ else
+ return tostring(o)
+ end
+end
+
+
app:get("/", function(self)
local res = db.query("SELECT * FROM asunnot")
+ self.dump = dump(res)
self.asunnot = res
return { render = "index" }
end)
diff --git a/koivuhaka.sqlite b/koivuhaka.sqlite
index b3d66b8..4e7ad2a 100644
Binary files a/koivuhaka.sqlite and b/koivuhaka.sqlite differ
diff --git a/logs/access.log b/logs/access.log
new file mode 100644
index 0000000..de3be99
--- /dev/null
+++ b/logs/access.log
+127.0.0.1 - - [25/Nov/2025:14:43:15 +0200] "GET / HTTP/1.1" 200 4229 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:44:24 +0200] "GET / HTTP/1.1" 200 4847 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:44:59 +0200] "GET / HTTP/1.1" 200 5039 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:45:33 +0200] "GET / HTTP/1.1" 200 4931 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:46:07 +0200] "GET / HTTP/1.1" 200 4949 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:46:12 +0200] "GET / HTTP/1.1" 200 4955 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [25/Nov/2025:14:46:13 +0200] "GET / HTTP/1.1" 200 4955 "http://localhost:8080/Pentulive" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:03:51 +0200] "GET / HTTP/1.1" 200 4955 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:03:51 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:03:51 +0200] "GET / HTTP/1.1" 200 4955 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:13:20 +0200] "GET / HTTP/1.1" 200 4955 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:17:39 +0200] "GET / HTTP/1.1" 200 5129 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:18:12 +0200] "GET / HTTP/1.1" 200 5067 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:22:43 +0200] "GET / HTTP/1.1" 200 5375 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:23:03 +0200] "GET / HTTP/1.1" 200 5393 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:24:18 +0200] "GET / HTTP/1.1" 200 5389 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:25:23 +0200] "GET / HTTP/1.1" 200 5419 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:25:35 +0200] "GET / HTTP/1.1" 200 5406 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:26:48 +0200] "GET / HTTP/1.1" 200 5411 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:27:05 +0200] "GET / HTTP/1.1" 200 5411 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:28:39 +0200] "GET / HTTP/1.1" 200 5428 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:29:07 +0200] "GET / HTTP/1.1" 200 5434 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:30:01 +0200] "GET / HTTP/1.1" 200 5396 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:32:08 +0200] "GET / HTTP/1.1" 200 5806 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:32:25 +0200] "GET / HTTP/1.1" 200 5812 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:32:55 +0200] "GET / HTTP/1.1" 200 5804 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:33:12 +0200] "GET / HTTP/1.1" 200 5809 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:33:36 +0200] "GET / HTTP/1.1" 200 5359 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:34:27 +0200] "GET / HTTP/1.1" 200 5375 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:34:40 +0200] "GET / HTTP/1.1" 200 5398 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:34:47 +0200] "GET / HTTP/1.1" 200 5398 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:35:09 +0200] "GET / HTTP/1.1" 200 5404 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:35:21 +0200] "GET / HTTP/1.1" 200 5398 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:35:58 +0200] "GET / HTTP/1.1" 200 5406 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:36:09 +0200] "GET / HTTP/1.1" 200 5361 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:36:35 +0200] "GET / HTTP/1.1" 200 5386 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:36:47 +0200] "GET / HTTP/1.1" 200 5392 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:37:14 +0200] "GET / HTTP/1.1" 200 5405 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:37:27 +0200] "GET / HTTP/1.1" 200 5405 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:38:24 +0200] "GET / HTTP/1.1" 200 5388 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:08:38:43 +0200] "GET / HTTP/1.1" 200 5393 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:14:19 +0200] "GET / HTTP/1.1" 200 5421 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:14:40 +0200] "GET / HTTP/1.1" 200 5449 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:15:06 +0200] "GET / HTTP/1.1" 200 5393 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:15:12 +0200] "GET / HTTP/1.1" 200 5393 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:15:12 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:16:53 +0200] "GET / HTTP/1.1" 200 5411 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:18:31 +0200] "GET / HTTP/1.1" 200 5475 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:20:35 +0200] "GET / HTTP/1.1" 200 5492 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:21:28 +0200] "GET / HTTP/1.1" 200 5503 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:21:39 +0200] "GET / HTTP/1.1" 200 5512 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:21:49 +0200] "GET / HTTP/1.1" 200 5516 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:22:00 +0200] "GET / HTTP/1.1" 200 5519 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:22:28 +0200] "GET / HTTP/1.1" 200 5526 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:22:35 +0200] "GET / HTTP/1.1" 200 5525 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:22:56 +0200] "GET / HTTP/1.1" 200 5521 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:23:22 +0200] "GET / HTTP/1.1" 200 5527 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:24:52 +0200] "GET / HTTP/1.1" 200 5529 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:25:40 +0200] "GET / HTTP/1.1" 200 5537 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:27:24 +0200] "GET / HTTP/1.1" 200 5547 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:27:30 +0200] "GET / HTTP/1.1" 200 5547 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:27:36 +0200] "GET / HTTP/1.1" 200 5547 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:23 +0200] "GET / HTTP/1.1" 200 5569 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:24 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:38 +0200] "GET / HTTP/1.1" 200 5566 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:53 +0200] "GET / HTTP/1.1" 200 5572 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:54 +0200] "GET / HTTP/1.1" 200 5572 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:35:54 +0200] "GET / HTTP/1.1" 200 5572 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:36:27 +0200] "GET / HTTP/1.1" 200 5572 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:36:58 +0200] "GET / HTTP/1.1" 200 5585 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:37:48 +0200] "GET / HTTP/1.1" 200 5584 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:38:59 +0200] "GET / HTTP/1.1" 200 5585 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:39:19 +0200] "GET / HTTP/1.1" 200 5601 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:39:29 +0200] "GET / HTTP/1.1" 200 5600 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:42:28 +0200] "GET / HTTP/1.1" 200 5584 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:42:37 +0200] "GET / HTTP/1.1" 200 5584 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:42:42 +0200] "GET / HTTP/1.1" 200 5584 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:42:55 +0200] "GET / HTTP/1.1" 200 5584 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:43:52 +0200] "GET / HTTP/1.1" 200 5583 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:52:43 +0200] "GET / HTTP/1.1" 200 7553 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:52:44 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:52:57 +0200] "GET / HTTP/1.1" 200 6569 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:53:52 +0200] "GET / HTTP/1.1" 200 6569 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:54:33 +0200] "GET / HTTP/1.1" 200 6659 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:54:40 +0200] "GET / HTTP/1.1" 200 6659 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:55:07 +0200] "GET / HTTP/1.1" 200 6209 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:55:16 +0200] "GET / HTTP/1.1" 200 6185 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:09:55:48 +0200] "GET / HTTP/1.1" 200 6215 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:06 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:10 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:10 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:11 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:12 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:12 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:06:13 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:09:13 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:09:15 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:09:15 +0200] "GET / HTTP/1.1" 200 5874 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:09:16 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:09:25 +0200] "GET / HTTP/1.1" 200 5264 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:10:21 +0200] "GET / HTTP/1.1" 200 5244 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:27:51 +0200] "GET / HTTP/1.1" 200 5274 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:27:52 +0200] "GET / HTTP/1.1" 200 5274 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:29:33 +0200] "GET / HTTP/1.1" 200 5244 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:30:48 +0200] "GET / HTTP/1.1" 200 5301 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:33:55 +0200] "GET / HTTP/1.1" 500 1806 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:34:26 +0200] "GET / HTTP/1.1" 200 7772 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:35:19 +0200] "GET / HTTP/1.1" 200 7772 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:36:09 +0200] "GET / HTTP/1.1" 200 6479 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:36:29 +0200] "GET / HTTP/1.1" 200 4520 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:51:42 +0200] "GET / HTTP/1.1" 200 4520 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:51:56 +0200] "GET / HTTP/1.1" 200 4504 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:53:45 +0200] "GET / HTTP/1.1" 200 4550 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:10:54:27 +0200] "GET / HTTP/1.1" 200 4547 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:11:56:35 +0200] "GET / HTTP/1.1" 500 1620 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:11:56:35 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:11:56:37 +0200] "GET / HTTP/1.1" 500 1620 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:11:58:54 +0200] "GET / HTTP/1.1" 200 4873 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:11:59:58 +0200] "GET / HTTP/1.1" 200 4885 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:00:02 +0200] "GET / HTTP/1.1" 200 4885 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:00:03 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:00:09 +0200] "GET / HTTP/1.1" 200 4885 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:01:12 +0200] "GET / HTTP/1.1" 200 4900 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:01:31 +0200] "GET / HTTP/1.1" 200 4912 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:02:08 +0200] "GET / HTTP/1.1" 200 4910 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:02:18 +0200] "GET / HTTP/1.1" 200 4909 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:04:52 +0200] "GET / HTTP/1.1" 200 4906 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:04:53 +0200] "GET / HTTP/1.1" 200 4906 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:05:13 +0200] "GET / HTTP/1.1" 200 4906 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:05 +0200] "GET / HTTP/1.1" 200 8159 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:06 +0200] "GET / HTTP/1.1" 200 8159 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:18 +0200] "GET / HTTP/1.1" 200 8159 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:19 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:44 +0200] "GET / HTTP/1.1" 200 7780 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:44 +0200] "GET /favicon.ico HTTP/1.1" 404 159 "http://localhost:8080/" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:08:59 +0200] "GET / HTTP/1.1" 200 6190 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:09:08 +0200] "GET / HTTP/1.1" 200 6190 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
+127.0.0.1 - - [26/Nov/2025:12:09:23 +0200] "GET / HTTP/1.1" 200 6190 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0"
diff --git a/logs/error.log b/logs/error.log
new file mode 100644
index 0000000..7fee899
--- /dev/null
+++ b/logs/error.log
+2025/11/25 14:43:13 [alert] 47449#0: lua_code_cache is off; this will hurt performance in /home/lhietala/repos/koivuhaka/nginx.conf.compiled:20
+2025/11/26 08:03:47 [alert] 4333#0: lua_code_cache is off; this will hurt performance in /home/lhietala/repos/koivuhaka/nginx.conf.compiled:20
diff --git a/logs/nginx.pid b/logs/nginx.pid
new file mode 100644
index 0000000..736d2a9
--- /dev/null
+++ b/logs/nginx.pid
+4333
diff --git a/views/index.etlua b/views/index.etlua
index 756f914..5f7bfbc 100644
--- a/views/index.etlua
+++ b/views/index.etlua
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
- <title>Bootstrap demo</title>
+ <title>Koivuhaan asunto</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" crossorigin="anonymous">
</head>
<body>
+ <div class="mb-5 container-fluid px-0 position-relative" style="height: 500px; overflow: hidden">
+ <img class="w-100" src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b0/2010s_residential_area_near_Peltolantie_and_Tikkurilantie_in_Koivuhaka%2C_Vantaa%2C_Finland%2C_2021_September.jpg/2560px-2010s_residential_area_near_Peltolantie_and_Tikkurilantie_in_Koivuhaka%2C_Vantaa%2C_Finland%2C_2021_September.jpg" class="img-fluid">
+ <h1 class="position-absolute top-50 start-50 translate-middle text-white bg-dark px-4 py-2 fw-bold display-6">Koivuhaan Asuntolat</h1>
+ </div>
+
<div class="container">
- <div class="row row-cols-3 g-3">
+ <h2 class="mb-4">Asuntolat</h2>
+ <div class="row row-cols-3 g-3 mb-5">
<% for i, asunto in pairs(asunnot) do %>
<div class="col">
<div class="card">
<img class="card-img-top" src="<%= asunto["kuva"] %>" alt="kuva asunnosta">
- <div class="card-img-overlay">
+ <div class="card-body">
<h4 class="card-title">
<%= asunto["osoite"] %>
</h4>
+ <div class="d-inline-flex gap-2">
+ <small class="text-body-secondary"><%= asunto["hinta"]%> €</small>
+ <small class="text-body-secondary"><%= asunto["pinta-ala"]%> m²</small>
+ <small class="text-body-secondary"><%= asunto["rakennusvuosi"]%></small>
+ </div>
</div>
</div>
</div>
<% end %>
</div>
+ <h2 class="mb-4">Tietoa meistä</h2>
+ <div class="row row-cols-5 g-5 mb-5">
+ <% for i=5,1,-1 do %>
+ <div class="col">
+ <div class="card border-0">
+ <img class="card-img-top rounded-circle" src="https://www.w3schools.com/bootstrap5/img_avatar3.png" alt="jäsen">
+ <div class="card-body">
+ <h5 class="card-title text-center">
+ Matti Meikäläinen
+ </h5>
+ </div>
+ </div>
+ </div>
+ <% end %>
+ </div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js" integrity="sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI" crossorigin="anonymous"></script>
</body>