]> git.plutz.net Git - shellwiki/blobdiff - attachment.sh
basic attachment upload
[shellwiki] / attachment.sh
index b5e8491298ed398a3e7e733d37ef109c74b10405..9b5d54590258c55d0115155ceb6dadf0dd60d908 100755 (executable)
@@ -61,7 +61,19 @@ attachment_convert(){
 }
 
 if [ "${PATH_INFO%/\[attachment\]/}"  != "${PATH_INFO}" ]; then
-  theme_attachments "${PATH_INFO%\[attachment\]/}"
+  . "$_EXEC/multipart.sh"
+  if multipart_cache; then
+    mkdir -p "$_DATA/pages/${PATH_INFO%/\[attachment\]/}/#attachments/"
+    n=1; while filename=$(multipart_filename "file" "$n"); do
+      filename="$(printf %s "$filename" |tr /\\0 __)"
+      multipart "file" "$n" >"$_DATA/pages/${PATH_INFO%/\[attachment\]/}/#attachments/$filename"
+      n=$((n + 1))
+    done
+    rm -- "$multipart_cachefile"
+    REDIRECT "${_BASE}${PATH_INFO}"
+  else
+    theme_attachments "${PATH_INFO%\[attachment\]/}"
+  fi
 
 elif [ "${PATH_INFO%/\[attachment\]/*}" != "${PATH_INFO}" ]; then
   attpath="${PATH_INFO%/\[attachment\]/*}/#attachments/${PATH_INFO##*/}"