◊(define parent-page (parent here))
◊(define previous-page (previous here))
◊(define next-page (next here))
◊(define here-title (or (select-from-metas 'title here) (symbol->string here)))
◊(define toolbar? (not (select-from-metas 'toolbar-blank metas)))
◊(define (make-side-nav id url text)
◊div[#:class "nav-outer" #:id id]{◊(link (or url "") ◊div[#:class "nav-inner"]{◊div[#:class "nav-flex" text]})})
◊(define center-cell-width 14)
◊(define side-cell-width (/ (- 100 (+ 10 (* center-cell-width 2))) 2))
◊(local-require pollen/tag)
◊; the name `link` is already defined as a function that makes hyperlinks,
◊; so we use `make-default-tag-function` to make a literal `link` tag
◊(define literal-link (make-default-tag-function 'link))
◊(define (make-subnav children)
(apply ul #:class "subnav"
(for/list ([child (in-list children)])
(li (xref (select-from-metas 'title child))))))
◊(local-require css-tools)
◊(capitalize-first-letter here-title) | Typography for Lawyers
◊if[(not (select-from-metas 'tfl-font-template metas)) ""]{
}
◊(when/block (hash-ref metas 'tfl-font-template #f)
◊string-append{
})
◊(define (empty-string) "")
◊(define (default-body)
◊body{ ◊; use this body for all other pages
◊div[#:id "top-stripe"]{}
◊div[#:id "content"]{
◊doc
◊(gap 1)
◊(make-subnav (or (children here) null))}
◊(if previous-page ◊make-side-nav["prev" previous-page]{<} "")
◊(if next-page ◊make-side-nav["next" next-page]{>} "")
◊;
◊(if (not toolbar?)
(empty-string)
◊div[#:class "nav-outer" #:id "bottom"]{
◊div[#:class "nav-inner"]{
◊span[#:id "left"]{◊(if (eq? here 'toc.html)
◊xref["index.html"]{home}
◊xref{◊(select 'title previous-page)})}
◊span{◊xref["/index.html"]{TFL home}}
◊span[#:id "right"]{◊(if next-page ◊xref{◊(select 'title next-page)} ◊xref["https://www.google.com/search?q=boxer+puppies&safe=off&tbm=isch"]{boxer puppies})}}})})
◊(->html (body (default-body)))