From 0b186ab64df1c909ebedd1b5a4572fa63122c272 Mon Sep 17 00:00:00 2001 From: "Paul Buetow (mars.fritz.box)" Date: Sat, 19 Nov 2011 23:54:30 +0100 Subject: Rename script --- generate.sh | 108 ------------------------------------------------------ generate_album.sh | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 108 insertions(+), 108 deletions(-) delete mode 100755 generate.sh create mode 100755 generate_album.sh diff --git a/generate.sh b/generate.sh deleted file mode 100755 index 070f989..0000000 --- a/generate.sh +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/bash - -# Small image gallery script -# 2011 (c) Paul C. Buetow - -declare -i THUMBGEOMETRY=250 -declare -i GEOMETRY=800 -declare -i MAXPREVIEWS=100 - -declare -r TITLE='Picture gallery' -declare -r INCOMING=./incoming - -template () { - local -r template=$1 - local -r html=$2 - - if [ -d ./templates/ ]; then - source ./templates/${template}.tmpl >> ./html/${html}.html - else - source ../templates/${template}.tmpl >> ../html/${html}.html - fi -} - -scale () { - cd $INCOMING && find ./ -iname \*.jpg | sort | while read jpg; do - if [ ! -f ../photos/$jpg ]; then - echo Scaling $jpg - convert -auto-orient \ - -geometry $GEOMETRY $jpg ../photos/$jpg; - fi - done - cd .. -} - -generate () { - local num=$1 - local name=page-${num} - local -i i=0 - - template header $name - template header-first-add $name - - cd photos && find ./ -iname \*.jpg | sort | sed 's;^\./;;' | \ - while read jpg; do - - (( i++ )) - - if [ $i -gt $MAXPREVIEWS ]; then - i=1 - (( num++ )) - - next=page-${num} - template next $name - template footer $name - - prev=$name - name=$next - template header $name - template prev $name - fi - - # Preview page - template preview $name - - # View page - template header ${num}-${i} - template view ${num}-${i} - template footer ${num}-${i} - - if [ ! -f ../thumbs/$jpg ]; then - echo Creating thumb for $jpg; - convert -geometry x$THUMBGEOMETRY $jpg \ - ../thumbs/$jpg - fi - done - cd .. - - template footer $(cd html;ls -t page-*.html | head -n 1 | sed 's/.html//') - - ls html/*.html | grep -v page- | cut -d'-' -f1 | uniq | \ - while read prefix; do - - declare page=$(ls -t ${prefix}-*.html | \ - head -n 1 | sed 's#html/\(.*\)-.*.html#\1#') - declare lastview=$(ls -t ${prefix}-*.html | \ - head -n 1 | sed 's/.*-\(.*\).html/\1/') - declare prevredirect=${page}-0 - declare nextredirect=${page}-$((lastview+1)) - - redirectpage=$(( page-1 ))-$MAXPREVIEWS - template redirect $prevredirect - - if [ $lastview -eq $MAXPREVIEWS ]; then - redirectpage=$(( page+1 ))-1 - else - redirectpage=${page}-${lastview} - template redirect 0-$MAXPREVIEWS - - redirectpage=1-1 - fi - - template redirect $nextredirect - done -} - -scale -rm html/*.html 2>/dev/null -generate 1 diff --git a/generate_album.sh b/generate_album.sh new file mode 100755 index 0000000..070f989 --- /dev/null +++ b/generate_album.sh @@ -0,0 +1,108 @@ +#!/bin/bash + +# Small image gallery script +# 2011 (c) Paul C. Buetow + +declare -i THUMBGEOMETRY=250 +declare -i GEOMETRY=800 +declare -i MAXPREVIEWS=100 + +declare -r TITLE='Picture gallery' +declare -r INCOMING=./incoming + +template () { + local -r template=$1 + local -r html=$2 + + if [ -d ./templates/ ]; then + source ./templates/${template}.tmpl >> ./html/${html}.html + else + source ../templates/${template}.tmpl >> ../html/${html}.html + fi +} + +scale () { + cd $INCOMING && find ./ -iname \*.jpg | sort | while read jpg; do + if [ ! -f ../photos/$jpg ]; then + echo Scaling $jpg + convert -auto-orient \ + -geometry $GEOMETRY $jpg ../photos/$jpg; + fi + done + cd .. +} + +generate () { + local num=$1 + local name=page-${num} + local -i i=0 + + template header $name + template header-first-add $name + + cd photos && find ./ -iname \*.jpg | sort | sed 's;^\./;;' | \ + while read jpg; do + + (( i++ )) + + if [ $i -gt $MAXPREVIEWS ]; then + i=1 + (( num++ )) + + next=page-${num} + template next $name + template footer $name + + prev=$name + name=$next + template header $name + template prev $name + fi + + # Preview page + template preview $name + + # View page + template header ${num}-${i} + template view ${num}-${i} + template footer ${num}-${i} + + if [ ! -f ../thumbs/$jpg ]; then + echo Creating thumb for $jpg; + convert -geometry x$THUMBGEOMETRY $jpg \ + ../thumbs/$jpg + fi + done + cd .. + + template footer $(cd html;ls -t page-*.html | head -n 1 | sed 's/.html//') + + ls html/*.html | grep -v page- | cut -d'-' -f1 | uniq | \ + while read prefix; do + + declare page=$(ls -t ${prefix}-*.html | \ + head -n 1 | sed 's#html/\(.*\)-.*.html#\1#') + declare lastview=$(ls -t ${prefix}-*.html | \ + head -n 1 | sed 's/.*-\(.*\).html/\1/') + declare prevredirect=${page}-0 + declare nextredirect=${page}-$((lastview+1)) + + redirectpage=$(( page-1 ))-$MAXPREVIEWS + template redirect $prevredirect + + if [ $lastview -eq $MAXPREVIEWS ]; then + redirectpage=$(( page+1 ))-1 + else + redirectpage=${page}-${lastview} + template redirect 0-$MAXPREVIEWS + + redirectpage=1-1 + fi + + template redirect $nextredirect + done +} + +scale +rm html/*.html 2>/dev/null +generate 1 -- cgit v1.2.3