2019-11-15 03:03:56 +00:00
|
|
|
package responses
|
|
|
|
|
2019-11-15 04:58:55 +00:00
|
|
|
import (
|
|
|
|
"log"
|
|
|
|
"net/http"
|
|
|
|
)
|
2019-11-15 03:03:56 +00:00
|
|
|
|
|
|
|
// Panic gives a simple error with no template or anything fancy.
|
|
|
|
func Panic(w http.ResponseWriter, code int, message string) {
|
|
|
|
w.WriteHeader(code)
|
|
|
|
w.Write([]byte(message))
|
|
|
|
}
|
2019-11-15 04:58:55 +00:00
|
|
|
|
|
|
|
// Error returns an error page.
|
|
|
|
func Error(w http.ResponseWriter, r *http.Request, code int, message string) {
|
|
|
|
v := map[string]interface{}{
|
|
|
|
"Message": message,
|
|
|
|
}
|
|
|
|
w.WriteHeader(code)
|
|
|
|
|
|
|
|
if err := RenderTemplate(w, r, "_builtin/errors/generic.gohtml", v); err != nil {
|
|
|
|
log.Printf("responses.Error: failed to render a pretty error template: %s", err)
|
|
|
|
w.Write([]byte(message))
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// NotFound returns an HTML 404 page.
|
|
|
|
func NotFound(w http.ResponseWriter, r *http.Request) {
|
|
|
|
if err := RenderTemplate(w, r, "_builtin/errors/404.gohtml", nil); err != nil {
|
|
|
|
log.Printf("responses.NotFound: failed to render a pretty error template: %s", err)
|
|
|
|
w.Write([]byte("Not Found"))
|
|
|
|
}
|
|
|
|
}
|