src/views/blog-post-editor.lisp
(defpackage murja.views.blog-post-editor
(:use :cl :murja.newui.dispatcher :murja.newui)
(:export :editor)
(:local-nicknames (:json :com.inuoe.jzon))
(:local-nicknames (:modelpost :murja.models.post)))
(in-package :murja.views.blog-post-editor)
(defun editor (post)
(with-state ((title (modelpost:post-title post))
(content (modelpost:article post))) ()
(c :div ()
(c :input (:type "text"
:name "title"
:oninput (e (lambda (value) (format t "new title is ~s ~%" value)))
:value title))
(c :textarea (:name "content"
:oninput (e (lambda (value) (format t "oninput called with text value ~s~%" value ))))
content)
(c :button (:onclick (e (lambda () (format t "Toimiiko edes tää?~%")))) "Click me"))))
(deftab /blog/post/edit (:route "/blog/post/:id/edit"
:require-login t
:captured-route-params (id)
:needed-abilities (list "edit-post")
:subtab t)
(let ((post (modelpost:get-post id :allow-hidden? t)))
(editor post)))