]> git.plutz.net Git - shellwiki/blobdiff - macros/attachments
Merge commit '9acd3b2b516d560f4b8ff1db6e13b4ff519abfce'
[shellwiki] / macros / attachments
index 0a49075a74afaa001de2eb0b1daeb118ce5c11fb..bcd6722117985cf06bab8a0575755e2381fcb876 100755 (executable)
@@ -1,6 +1,7 @@
 #!/bin/sh
 
 . "$_EXEC/cgilite/cgilite.sh"
+. "$_EXEC/acl.sh"
 . "$_EXEC/tools.sh"
 
 page="$1"
@@ -9,6 +10,8 @@ if [ "${page#/}" = "$page" ]; then
   page="$(PATH "${PATH_INFO}/$page")"
 fi
 
+acl_read "$page" || exit 0
+
 printf %s\\n '<ul class="macro attachment list">'
 
 for file in "$_EXEC/pages/$page/#attachments"/* "$_DATA/pages/$page/#attachments"/*; do
@@ -17,9 +20,10 @@ for file in "$_EXEC/pages/$page/#attachments"/* "$_DATA/pages/$page/#attachments
   stat="$(stat -c '%s %Y' -- "$file" 2>&-)" || continue
   size="${stat% *}" date="${stat#* }"
 
-  printf '<li><span class=name>%s</span>
+  printf '<li><a class=name href="[attachment]/%s">%s</a>
           <span class=size>%s</span><span class=date>%s</span></li>' \
-    "$(HTML "${file##*/}")" "$(size_human "$size")" "$(date -d @"$date" +"%F %T")"
+    "$(HTML "${file##*/}")" "$(HTML "${file##*/}")" \
+    "$(size_human "$size")" "$(date -d @"$date" +"%F %T")"
 done
 
 printf %s\\n '</ul>'