summaryrefslogtreecommitdiff
path: root/system/admin/handlers.go
diff options
context:
space:
mode:
Diffstat (limited to 'system/admin/handlers.go')
-rw-r--r--system/admin/handlers.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/system/admin/handlers.go b/system/admin/handlers.go
index babcff1..3933d3d 100644
--- a/system/admin/handlers.go
+++ b/system/admin/handlers.go
@@ -1926,6 +1926,23 @@ func editHandler(res http.ResponseWriter, req *http.Request) {
return
}
+ // Let's be nice and make a proper item for the Hookable methods
+ dec := schema.NewDecoder()
+ dec.IgnoreUnknownKeys(true)
+ dec.SetAliasTag("json")
+ err = dec.Decode(post, req.PostForm)
+ if err != nil {
+ log.Println("Error decoding post form for edit handler:", t, err)
+ res.WriteHeader(http.StatusBadRequest)
+ errView, err := Error400()
+ if err != nil {
+ return
+ }
+
+ res.Write(errView)
+ return
+ }
+
if cid == "-1" {
err = hook.BeforeAdminCreate(res, req)
if err != nil {
@@ -2061,6 +2078,17 @@ func deleteHandler(res http.ResponseWriter, req *http.Request) {
return
}
+ data, err := db.Content(t + ":" + id)
+ if err != nil {
+ log.Println("Error in db.Content ", t+":"+id, err)
+ return
+ }
+
+ err = json.Unmarshal(data, post)
+ if err != nil {
+ log.Println("Error unmarshalling ", t, "=", id, err, " Hooks will be called on a zero-value.")
+ }
+
reject := req.URL.Query().Get("reject")
if reject == "true" {
err = hook.BeforeReject(res, req)