aboutsummaryrefslogtreecommitdiff
path: root/handler.go
blob: 64be7258990602388a98ed4ae57d37643ab39b7d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Copyright (C) 2021-2021 Fuwn
// SPDX-License-Identifier: GPL-3.0-only

package main

func handle() {
	routes()
	errors()
	meta()
	redirect()
}

func routes() {
	// TODO: Automate this
	createRoute("/", "default.gmi", "pages/index.gmi")
	createRoute("/skills", "default.gmi", "pages/skills.gmi")
	createRoute("/interests", "default.gmi", "pages/interests.gmi")
	createRoute("/contact", "default.gmi", "pages/contact.gmi")
	createRoute("/gemini", "default.gmi", "pages/gemini.gmi")
	createRoute("/gopher", "default.gmi", "pages/gopher.gmi")
	createRoute("/donate", "default.gmi", "pages/donate.gmi")

	// TODO: Iterate over content/pages/blog directory to automate blog routing
	createBlogRoute("/programming_languages", "pages/blog/programming_languages", "Programming Languages", false, noDateNoShow)
	createBlogHandler("/blog")
}

func errors() {
	createErrorRoute("/*", "error.gmi", "pages/error/404.gmi", "404")
}

func meta() {
	createFileRoute("/favicon.txt", "favicon.txt")
	createFileRoute("/favicon.ico", "favicon.ico")
	createFileRoute("/robots.txt", "robots.txt")
}

func redirect() {
	createRedirectRoute("/x/*", "/proxy", true)
}