|
|
@ -19,8 +19,8 @@
|
|
|
|
(head
|
|
|
|
(head
|
|
|
|
(meta ((charset "UTF-8")))
|
|
|
|
(meta ((charset "UTF-8")))
|
|
|
|
(link ((rel "stylesheet")
|
|
|
|
(link ((rel "stylesheet")
|
|
|
|
(type "text/css")
|
|
|
|
(type "text/css")
|
|
|
|
(href ,(format "/~a" DASHBOARD_CSS)))))
|
|
|
|
(href ,(format "/~a" DASHBOARD_CSS)))))
|
|
|
|
,body-xexpr))
|
|
|
|
,body-xexpr))
|
|
|
|
|
|
|
|
|
|
|
|
;; to make dummy requests for debugging
|
|
|
|
;; to make dummy requests for debugging
|
|
|
@ -109,8 +109,7 @@
|
|
|
|
(define url-to-parent (string-replace url-to-parent-dashboard DASHBOARD_NAME ""))
|
|
|
|
(define url-to-parent (string-replace url-to-parent-dashboard DASHBOARD_NAME ""))
|
|
|
|
|
|
|
|
|
|
|
|
`(tr ,@(map make-link-cell (list
|
|
|
|
`(tr ,@(map make-link-cell (list
|
|
|
|
(cons url-to-parent-dashboard "←")
|
|
|
|
(cons url-to-parent-dashboard url-to-parent)
|
|
|
|
(cons url-to-parent url-to-parent)
|
|
|
|
|
|
|
|
empty-cell
|
|
|
|
empty-cell
|
|
|
|
(cons #f "(parent dir)")
|
|
|
|
(cons #f "(parent dir)")
|
|
|
|
empty-cell))))
|
|
|
|
empty-cell))))
|
|
|
@ -125,24 +124,27 @@
|
|
|
|
(define source (and (not (empty? possible-sources)) (->string (car possible-sources))))
|
|
|
|
(define source (and (not (empty? possible-sources)) (->string (car possible-sources))))
|
|
|
|
`(tr ,@(map make-link-cell
|
|
|
|
`(tr ,@(map make-link-cell
|
|
|
|
(append (list
|
|
|
|
(append (list
|
|
|
|
;; folder traversal cell
|
|
|
|
(cond ;; main cell
|
|
|
|
(if (directory-exists? (build-path dir filename)) ; links subdir to its dashboard
|
|
|
|
[(directory-exists? (build-path dir filename)) ; links subdir to its dashboard
|
|
|
|
(cons (format "~a/~a" filename DASHBOARD_NAME) "→")
|
|
|
|
(cons (format "~a/~a" filename DASHBOARD_NAME) (format "~a/" filename))]
|
|
|
|
empty-cell)
|
|
|
|
[source (cons #f `(a ((href ,filename)) ,filename (span ((class "file-ext")) "." ,(get-ext source))))]
|
|
|
|
(cons filename filename) ; main cell
|
|
|
|
[else (cons filename filename)])
|
|
|
|
(if source ; source cell (if needed)
|
|
|
|
|
|
|
|
(cons (format "raw/~a" source) (format "~a source" (get-ext source)))
|
|
|
|
(cond ; source cell (if needed)
|
|
|
|
empty-cell)
|
|
|
|
[(has-ext? filename POLLEN_TREE_EXT) (cons (format "raw/~a" filename) "ptree")]
|
|
|
|
|
|
|
|
[source (cons (format "raw/~a" source) "in")]
|
|
|
|
|
|
|
|
[else empty-cell])
|
|
|
|
(cond ; raw cell (if needed)
|
|
|
|
(cond ; raw cell (if needed)
|
|
|
|
[(directory-exists? (build-path dir filename)) (cons #f "(subdir)")]
|
|
|
|
[(directory-exists? (build-path dir filename)) (cons #f #f)]
|
|
|
|
[(has-binary-ext? filename) (cons #f "(binary)")]
|
|
|
|
[(has-binary-ext? filename) (cons #f "(binary)")]
|
|
|
|
[else (cons (format "raw/~a" filename) "output")]))
|
|
|
|
[(has-ext? filename POLLEN_TREE_EXT) empty-cell]
|
|
|
|
(if source
|
|
|
|
[else (cons (format "raw/~a" filename) "out")]))
|
|
|
|
|
|
|
|
#|(if source
|
|
|
|
(list
|
|
|
|
(list
|
|
|
|
(if (has-ext? source POLLEN_DECODER_EXT) ; xexpr cell for pollen decoder files
|
|
|
|
(if (has-ext? source POLLEN_DECODER_EXT) ; xexpr cell for pollen decoder files
|
|
|
|
(cons (format "xexpr/~a" source) "xexpr")
|
|
|
|
(cons (format "xexpr/~a" source) "xexpr")
|
|
|
|
empty-cell))
|
|
|
|
empty-cell))
|
|
|
|
(make-list 1 empty-cell))))))
|
|
|
|
(make-list 1 empty-cell))|#))))
|
|
|
|
|
|
|
|
|
|
|
|
(define (ineligible-path? x) (or (not (visible? x)) (member x RESERVED_PATHS)))
|
|
|
|
(define (ineligible-path? x) (or (not (visible? x)) (member x RESERVED_PATHS)))
|
|
|
|
(define project-paths (filter-not ineligible-path? (directory-list dir)))
|
|
|
|
(define project-paths (filter-not ineligible-path? (directory-list dir)))
|
|
|
|