summaryrefslogtreecommitdiffstats
path: root/api/handlers/html.go
blob: dd5d4e8690b1545500bf5ac93fd0a77976f34a53 (plain)
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
package handlers

import (
	"net/http"

	"git.leonardobishop.net/history/pkg/entries"
	"git.leonardobishop.net/history/pkg/html"
)

func GetEntriesHtml(entriesService entries.Service, htmlService html.Service) http.HandlerFunc {
	return func(w http.ResponseWriter, r *http.Request) {
		entries, err := entriesService.GetEntries()
		if err != nil {
			w.WriteHeader(http.StatusInternalServerError)
			return
		}

		html, err := htmlService.GenerateHtml(entries)
		if err != nil {
			w.WriteHeader(http.StatusInternalServerError)
			return
		}

		w.Header().Set("Content-Type", "text/html;charset=UTF-8")
		w.Write([]byte(html))
	}
}