package routes
import (
+ "fmt"
"html/template"
"log"
"net/http"
return func(w http.ResponseWriter, _ *http.Request) {
err := templ.ExecuteTemplate(w, "404.html", "")
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ fmt.Fprintf(w, "505 Internal Server Error")
}
}
}
err := templ.ExecuteTemplate(w, "blog-page.html", post)
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ http.Redirect(w, r, "/404", http.StatusSeeOther)
+ return
}
}
}
)
func Blog(templ *template.Template, posts []*blog.BlogPost) http.HandlerFunc {
- return func(w http.ResponseWriter, _ *http.Request) {
+ return func(w http.ResponseWriter, r *http.Request) {
err := templ.ExecuteTemplate(w, "blog.html", posts)
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ http.Redirect(w, r, "/404", http.StatusSeeOther)
+ return
}
}
}
)
func Index(templ *template.Template) http.HandlerFunc {
- return func(w http.ResponseWriter, _ *http.Request) {
+ return func(w http.ResponseWriter, r *http.Request) {
err := templ.ExecuteTemplate(w, "index.html", "")
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ http.Redirect(w, r, "/404", http.StatusSeeOther)
+ return
}
}
}
)
func NothingToSee(templ *template.Template) http.HandlerFunc {
- return func(w http.ResponseWriter, _ *http.Request) {
+ return func(w http.ResponseWriter, r *http.Request) {
err := templ.ExecuteTemplate(w, "nothing-to-see.html", "")
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ http.Redirect(w, r, "/404", http.StatusSeeOther)
+ return
}
}
}
)
func Projects(templ *template.Template) http.HandlerFunc {
- return func(w http.ResponseWriter, _ *http.Request) {
+ return func(w http.ResponseWriter, r *http.Request) {
err := templ.ExecuteTemplate(w, "projects.html", "")
if err != nil {
- log.Fatal(err)
+ log.Print(err)
+ http.Redirect(w, r, "/404", http.StatusSeeOther)
+ return
}
}
}
<br />
<div class="terminal-line">I think you're a little lost, ay?</div>
<div class="terminal-line">(or maybe I forgot smth, sorry)</div>
+ <div class="terminal-line">(or maybe this is just an error, never cared to build an actual error page, sorry)</div>
<br />
<div class="terminal-line">Either way, turn back, pal!</div>
<div class="terminal-line">It's not too late!</div>