Server side form validation 2
This commit is contained in:
@ -76,6 +76,33 @@ func (m *Repository) MakeReservation(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// PostMakeReservation is the make reservation page post handler
|
||||
func (m *Repository) PostMakeReservation(w http.ResponseWriter, r *http.Request) {
|
||||
err := r.ParseForm()
|
||||
if err != nil {
|
||||
log.Println(err)
|
||||
return
|
||||
}
|
||||
|
||||
reservation := models.Reservation{
|
||||
FirstName: r.Form.Get("first_name"),
|
||||
LastName: r.Form.Get("last_name"),
|
||||
Email: r.Form.Get("email"),
|
||||
Phone: r.Form.Get("phone"),
|
||||
}
|
||||
|
||||
form := forms.New(r.PostForm)
|
||||
|
||||
form.Has("first_name", r)
|
||||
|
||||
if !form.Valid() {
|
||||
data := make(map[string]interface{})
|
||||
data["reservation"] = reservation
|
||||
|
||||
render.RenderTemplate(w, r, "make-reservation.page.tmpl", &models.TemplateData{
|
||||
Data: data,
|
||||
Form: form,
|
||||
})
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
// Availability is the search for availability page handler
|
||||
|
Reference in New Issue
Block a user