(defpackage :coleslaw-mathjax
(:use :cl)
(:export #:enable)
(:import-from :coleslaw #:add-injection
#:content
#:index
#:content-tags
#:index-posts))
(in-package :coleslaw-mathjax)
(defvar *mathjax-header* "
")
(defun enable ()
(labels ((math-post-p (obj)
(member "math" (content-tags obj) :test #'string=))
(mathjax-p (obj)
(etypecase obj
(content (math-post-p obj))
(index (some #'math-post-p (index-posts obj))))))
(add-injection (list *mathjax-header* #'mathjax-p) :head)))