This commit is contained in:
lbenedar
2026-03-05 11:32:32 +03:00
parent 0f096ff94b
commit a5827ae3d7
3 changed files with 65 additions and 41 deletions

View File

@@ -3,13 +3,26 @@ package main
import (
"errors"
"fmt"
"html/template"
"net/http"
"strconv"
"gitea.local.lab/Lbenedar/snippetbox/internal/models"
)
func (app *application) render(w http.ResponseWriter, status int, page string, data *templateData) {
ts, ok := app.templateCache[page]
if !ok {
err := fmt.Errorf("the template %s does not exist", page)
app.serverError(w, err)
return
}
w.WriteHeader(status)
err := ts.ExecuteTemplate(w, "base", data)
if err != nil {
app.serverError(w, err)
}
}
func (app *application) home(w http.ResponseWriter, r *http.Request) {
if r.URL.Path != "/" {
app.notFound(w)
@@ -21,23 +34,9 @@ func (app *application) home(w http.ResponseWriter, r *http.Request) {
app.serverError(w, err)
return
}
files := []string{
"./ui/html/base.tmpl",
"./ui/html/partials/nav.tmpl",
"./ui/html/pages/home.tmpl",
}
ts, err := template.ParseFiles(files...)
if err != nil {
app.serverError(w, err)
return
}
data := &templateData{
app.render(w, http.StatusOK, "home.tmpl", &templateData{
Snippets: snippets,
}
err = ts.ExecuteTemplate(w, "base", data)
if err != nil {
app.serverError(w, err)
}
})
}
func (app *application) snippetView(w http.ResponseWriter, r *http.Request) {
@@ -56,25 +55,9 @@ func (app *application) snippetView(w http.ResponseWriter, r *http.Request) {
}
return
}
files := []string{
"./ui/html/base.tmpl",
"./ui/html/partials/nav.tmpl",
"./ui/html/pages/view.tmpl",
}
ts, err := template.ParseFiles(files...)
if err != nil {
app.serverError(w, err)
return
}
data := &templateData{
app.render(w, http.StatusOK, "view.tmpl", &templateData{
Snippet: snippet,
}
err = ts.ExecuteTemplate(w, "base", data)
if err != nil {
app.serverError(w, err)
}
})
}
func (app *application) snippetCreate(w http.ResponseWriter, r *http.Request) {