serve.go raw
1 package bridge
2
3 import (
4 "embed"
5 "net/http"
6 )
7
8 //go:embed compose/compose.html compose/decrypt.html
9 var composeFS embed.FS
10
11 // ComposeHandler returns an HTTP handler that serves the compose form.
12 func ComposeHandler() http.HandlerFunc {
13 return func(w http.ResponseWriter, r *http.Request) {
14 data, err := composeFS.ReadFile("compose/compose.html")
15 if err != nil {
16 http.Error(w, "compose form not found", http.StatusInternalServerError)
17 return
18 }
19 w.Header().Set("Content-Type", "text/html; charset=utf-8")
20 w.Write(data)
21 }
22 }
23
24 // DecryptHandler returns an HTTP handler that serves the decrypt page.
25 func DecryptHandler() http.HandlerFunc {
26 return func(w http.ResponseWriter, r *http.Request) {
27 data, err := composeFS.ReadFile("compose/decrypt.html")
28 if err != nil {
29 http.Error(w, "decrypt page not found", http.StatusInternalServerError)
30 return
31 }
32 w.Header().Set("Content-Type", "text/html; charset=utf-8")
33 w.Write(data)
34 }
35 }
36