Simplified sending HTMX

This commit is contained in:
Caleb Gardner
2024-11-01 11:46:07 -05:00
parent 6925ff9e0c
commit 0f2b0f4f5d
4 changed files with 12 additions and 21 deletions
+2 -10
View File
@@ -24,11 +24,7 @@ func latestBlogsHandle(w http.ResponseWriter, r *http.Request) {
for _, b := range latest {
out += b.HTMX(blogApp, r.Context())
}
if r.Header.Get("Hx-Request") == "true" {
w.Write([]byte("<title>Darkstorm.tech</title>" + out))
} else {
sendContent(w, r, out, "", "")
}
sendContent(w, r, out, "", "")
}
func blogHandle(w http.ResponseWriter, r *http.Request, blog string) {
@@ -44,9 +40,5 @@ func blogHandle(w http.ResponseWriter, r *http.Request, blog string) {
sendContent(w, r, "Error getting page", "", "")
return
}
if r.Header.Get("Hx-Request") == "true" {
w.Write([]byte("<title>" + bl.Title + "</title>" + bl.HTMX(blogApp, r.Context())))
} else {
sendContent(w, r, bl.HTMX(blogApp, r.Context()), bl.Title, bl.Favicon)
}
sendContent(w, r, bl.HTMX(blogApp, r.Context()), bl.Title, bl.Favicon)
}
+2 -6
View File
@@ -21,7 +21,7 @@ func filesRequest(w http.ResponseWriter, r *http.Request) {
if err != nil {
if os.IsNotExist(err) {
pageContent = "<p>404 Not Found</p>"
// w.WriteHeader(http.StatusNotFound)
w.WriteHeader(http.StatusNotFound)
} else {
pageContent = "<p>Server error!</p>"
w.WriteHeader(http.StatusInternalServerError)
@@ -52,9 +52,5 @@ func filesRequest(w http.ResponseWriter, r *http.Request) {
return
}
}
if r.Header.Get("Hx-Request") == "true" {
w.Write([]byte(pageContent))
} else {
sendContent(w, r, pageContent, "Files", "")
}
sendContent(w, r, pageContent, "Files", "")
}
+1 -5
View File
@@ -14,9 +14,5 @@ func portfolioRequest(w http.ResponseWriter, r *http.Request) {
sendContent(w, r, "Error getting portfolio", "", "")
return
}
if r.Header.Get("Hx-Request") == "true" {
w.Write([]byte("<title>Portfolio</title>" + proj.FullHTMX(r.Context(), blogApp, selectedTech)))
} else {
sendContent(w, r, proj.FullHTMX(r.Context(), blogApp, selectedTech), "Portfolio", "")
}
sendContent(w, r, proj.FullHTMX(r.Context(), blogApp, selectedTech), "Portfolio", "")
}
+7
View File
@@ -17,6 +17,13 @@ const (
)
func sendContent(w http.ResponseWriter, r *http.Request, content string, title string, favicon string) {
if title == "" {
title = "Darkstorm.tech"
}
if r.Header.Get("Hx-Request") == "true" {
w.Write([]byte("<title>" + title + "</title>" + content))
return
}
if r.URL.Query().Get("contentOnly") == "true" {
json.NewEncoder(w).Encode(map[string]string{"content": content, "title": title, "favicon": favicon})
return