Sort entries by last name (again)
[clinton/website/site-support.git] / books.lisp
index 383baea..40d0b53 100644 (file)
                                 :element-type 'extended-char
                                 :if-exists :supersede
                                 :if-does-not-exist :create)
-      (html-template:fill-and-print-template
-       template-path
-       (book-database-vars
-       (with-open-file (book-stream book-path :element-type 'extended-char)
-         (read book-stream)))
-       :stream muse-stream))))
+      (let ((html-template:*string-modifier* #'identity))
+       (html-template:fill-and-print-template
+        template-path
+        (book-database-vars
+         (sort (copy-list (with-open-file
+                              (book-stream book-path :element-type 'extended-char)
+                            (read book-stream)))
+               (lambda (e1 e2)
+                 (let ((se1 (string-upcase (symbol-name (car (last e1)))))
+                       (se2 (string-upcase (symbol-name (car (last e2))))))
+                   (string< se1 se2)))
+               :key #'car))
+        :stream muse-stream)))))