diff options
Diffstat (limited to 'explore.lisp')
-rw-r--r-- | explore.lisp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/explore.lisp b/explore.lisp new file mode 100644 index 0000000..f562448 --- /dev/null +++ b/explore.lisp @@ -0,0 +1,32 @@ +;;; explore.lisp + +(in-package :vampire) + +(defun create-media-search-area (parent) + (with-clog-create parent + (p (:content "media search area")))) + +(defun create-playlist-explore-card (parent pl) + (with-clog-create parent + (div () + (img (:bind thumb)) + (section (:h4) + (a (:link (url-to-playlist pl) :content (playlist-title pl))) + (span (:content " -- ")) + (span (:content (secs-to-hms (playlist-duration pl)))))) + (setf (maximum-width thumb) "120px") + (when-let (track (first (playlist-tracks pl))) + (setf (url-src thumb) (or (track-thumb-url track) ""))))) + +(defun create-recent-playlists-area (parent) + (let* ((container (create-div parent))) + (dolist (pl (recent-playlists 10)) + (create-playlist-explore-card container pl)))) + +(defun explore-page (body) + (with-clog-create body + (div () + (navigation-header ()) + ;(media-search-area ()) + (section (:h2 :content "Recent Playlists")) + (recent-playlists-area ())))) |