src/views/blog-main.lisp

DOWNLOAD
(defpackage murja.views.blog-main
  (:use :cl :murja.views.components.root :murja.views.components.tab)
  (:import-from :murja.models.user :user-nickname)
  (:import-from :cl-hash-util :hash)
  (:import-from :murja.routes.root-routes :@check-if-initial)
  (:import-from :murja.middleware.auth :@ssr-authenticated :*user*)
  (:import-from :murja.routes.settings-routes :get-settings)
  (:import-from :murja.middleware.db :@transaction)
  (:import-from :murja.newui :@newui :c :with-state)
  (:import-from :easy-routes :defroute)


  (:import-from murja.newui.dispatcher :deftab :@dispatcher)

  (:export :blog-root-view))

(in-package :murja.views.blog-main)

(deftab /only-logged-in (:route "/only-logged-in"
			 :require-login t
			 :title "This shouldn't be visible")
  (c :div ()
     "Näkyyköhän tää?"))

(deftab / (:route "/blog/"
	   :title "Home")
  (let* ((settings (get-settings))
	 (page-size (gethash "recent-post-count" settings))
	 (page 1)
	 (page-posts (murja.models.post:get-page page page-size)))

    ;; (when *user*
    ;;   (setf (gethash "Secret logged in user tab" tabs-spec)
    ;; 	    (c :div () (format nil "Welcome ~a" (user-nickname *user*)))))

    (murja.views.components.page:page page-posts)))