diff options
Diffstat (limited to 'generate_gallery.sh')
-rwxr-xr-x | generate_gallery.sh | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/generate_gallery.sh b/generate_gallery.sh new file mode 100755 index 0000000..1756b4b --- /dev/null +++ b/generate_gallery.sh @@ -0,0 +1,51 @@ +#!/bin/bash +#---------------------------------------------------- +# Version: 0.3.0 +# Author: Florian "Bluewind" Pritz <flo@xssn.at> +# +# Licensed under WTFPL v2 +# (see COPYING for full license text) +# +#---------------------------------------------------- +# put images in folder "foo" and run "$0 foo" +#---------------------------------------------------- + +startdir="$PWD" +datadir="$(dirname "$0")/generate_gallery.d" + +html_template="$datadir/template.html" + +tempfile=$(mktemp "/tmp/image-gallery.XXXXXX") + +for i in "$@"; do + pushd "$i" &>/dev/null + echo > $tempfile + for img in *; do + filename="$(basename "$img")" + pushd "$(dirname "$img")" &>/dev/null + mkdir -p thumbs + if file -b --mime-type "$img" | grep -q "image/.*"; then + if [ ! -e "thumbs/$filename" ]; then + echo "processing: $i/$img" + convert "$filename" -thumbnail 200x200 "thumbs/$filename" + fi + echo "<div class=\"thumbnail\">" \ + "<a rel=\"images\" class=\"thumbnail\" href=\"$img\">" \ + "<img class=\"thumbnail\" alt=\"\" src=\"thumbs/$img\" />" \ + "</a>" \ + "</div>" | sed -r 's/\/\//\//g' >> $tempfile + else + echo "ignoring non-image: $i/$img" + fi + popd &>/dev/null + done + cd "$startdir" + sed -r \ + -e "/%%CONTENT%%/r $tempfile" \ + -e '/%%CONTENT/d' \ + "$html_template" > "$i/index.html" + cp -r "$datadir/fancybox" "$i" + popd &>/dev/null +done + +rm $tempfile |