Fix a few things related to running pages and trying to read directories.

main
Zed A. Shaw 10 months ago
parent a43d47fc01
commit 044be2a8c6
  1. 31
      commands/app.js
  2. 2
      knexfile.cjs
  3. 16
      pages/index.html

@ -52,19 +52,24 @@ const configure = async (fastify, opts) => {
app.register(Formbody);
app.get("/*", (req, rep) => {
const target = path.resolve(path.join("pages", req.url));
const index = path.resolve(path.join("pages", req.url, "index.html"));
if(fs.existsSync(index)) {
const result = nunjucks.render(index);
rep.code(200).type("text/html").send(result);
} else if(fs.existsSync(target)) {
const fname = req.url.slice(1);
const result = nunjucks.render(fname);
rep.code(200).type("text/html").send(result);
} else {
console.error("404 NOT FOUND", target, "NO INDEX", index);
rep.code(404).type("text/html").send("Not Found");
try {
const target = path.resolve(path.join("pages", req.url));
const index = path.resolve(path.join("pages", req.url, "index.html"));
if(fs.existsSync(index) && !fs.statSync(index).isDirectory()) {
const result = nunjucks.render(index);
rep.code(200).type("text/html").send(result);
} else if(fs.existsSync(target)) {
const fname = req.url.slice(1);
const result = nunjucks.render(fname);
rep.code(200).type("text/html").send(result);
} else {
console.error("404 NOT FOUND", target, "NO INDEX", index);
rep.code(404).type("text/html").send("Not Found");
}
} catch(error) {
console.error(error);
rep.code(500).type("text/html").send("Internal Server Error");
}
});

@ -6,7 +6,7 @@ module.exports = {
client: 'sqlite3',
useNullAsDefault: true,
connection: {
filename: './dev.sqlite3'
filename: './db/dev.sqlite3'
}
},

@ -1,16 +1,5 @@
<!doctype html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<script src="/alpine.js"></script>
<title>Bandolier2</title>
{% include "./header.html" %}
<style>
@import "/open-props.min.css";
@import "/normalize.min.css";
body {
display: flex;
flex-direction: column;
@ -118,5 +107,4 @@ button.primary:hover {
One day I will learn how to run without falling.
</blockquote>
</section>
</body>
</html>
{% include "./footer.html" %}
Loading…
Cancel
Save