Set asset-directory explicitly

Evgeny PisemskyMon Aug 26 09:30:09+0300 2024

0ed5a42

Set asset-directory explicitly

gitile/config.scm

3030
            config-index-title
3131
            config-intro
3232
            config-footer
33+
            asset-directory
3334
            avatar-url-template
3435
            avatar-hash-algorithm
3536
            set-parameters-from-config!))

4647
  (intro        config-intro)
4748
  (footer       config-footer))
4849
50+
(define asset-directory
51+
  (make-parameter #f))
52+
4953
(define avatar-url-template
5054
  (make-parameter "https://avatar.lepiller.eu/cat-avatar-generator.php?seed=$hash"))
5155

5660
  (let ((params (config-database config)))
5761
    (if (list? params)
5862
        (begin
63+
          (asset-directory
64+
           (or (assoc-ref params 'asset-directory)
65+
               (asset-directory)))
5966
          (avatar-url-template
6067
           (or (assoc-ref params 'avatar-url-template)
6168
               (avatar-url-template)))

gitile/handler.scm

4242
  (dir asset-dir)
4343
  (mime asset-mime))
4444
45-
(define (asset-directory)
46-
  (canonicalize-path
47-
   (string-append (dirname (current-filename)) "/../assets")))
48-
4945
(define (asset-list-specific dir subdir suffix mime)
5046
  (map (lambda (name)
5147
         (make-asset (string-append "/" subdir "/" name)

254250
                         (substring request (string-length slug))))
255251
               (loop projects))))))))
256252
257-
  (define assets (asset-list (asset-directory)))
253+
  (define assets (if (asset-directory)
254+
                     (asset-list (asset-directory))
255+
                     (list)))
258256
259257
  (match config
260258
    (($ <config> port host database repositories base-git-url index-title intro