Split grml-scripts into grml-scripts and grml-scripts-core
[grml-scripts-core.git] / usr_bin / iimage
diff --git a/usr_bin/iimage b/usr_bin/iimage
deleted file mode 100755 (executable)
index e71edeb..0000000
+++ /dev/null
@@ -1,2048 +0,0 @@
-#!/bin/bash
-######################################################################
-#
-#           I_I_M_A_G_E
-#
-# Copyright (c) 1996-2004, Ronald Schmidt    <ronsc@ronsc.de>
-#               2000-2004, Holm Sieber       <sieber@prudsys.com>
-#                    2004, Daniel Molkentin  <daniel@molkentin.de>
-#                    2004, Sven Guckes       <guckes@guckes.net>
-#
-# Download: http://www.ronsc.de
-#
-######################################################################
-#
-# All rights reserved.
-#
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in the
-# documentation and/or other materials provided with the distribution.
-# Neither the name of the organization nor the names of its
-# contributors may be used to endorse or promote products derived
-# from this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-#
-######################################################################
-#
-#     Web:     http://www.ronsc.de/iimage/
-#
-#     List:    https://mailman.ronsc.de/listinfo/iimage
-#
-######################################################################
-
-SVN_ID="$Id: iimage 38 2009-12-15 20:30:46Z ronsc $"
-
-# old templates might still use CVS_VERSION
-CVS_VERSION="$SVN_ID"
-
-##############################################################
-# Defaults
-
-PATH=$PATH:/usr/X11R6/bin:/usr/bin
-# external commands: convert identify jpegtran metacam mplayer
-# awk basename cat cp date echo find grep mkdir mv rm uname
-
-FONT="fixed"
-COLOR="white"
-FONTSIZE="14"
-
-DATADIR=".tmp"
-
-LANG=en_US
-
-DISPLAY_GEOMETRY=640x480
-THUMBNAIL_GEOMETRY=150x150
-THUMBNAIL_QUALITY=75
-
-THUMBNAILS="$DISPLAY_GEOMETRY $THUMBNAIL_GEOMETRY"
-
-# Slide-Show Options
-SLIDE_DELAY=5
-SLIDE_LOOP=false
-
-EXCLUDE_ORGINAL=false
-RECURSIVE=false
-IIMAGE_SPECIAL=false
-
-COLUMNS=4
-
-VARIABLES="title description order date ignore iorder \
-           FONT COLOR FONTSIZE CTAG \
-           THUMBNAIL_QUALITY \
-           SLIDE_DELAY SLIDE_LOOP \
-           EXCLUDE_ORGINAL RECURSIVE COLUMNS \
-           AUDIODIR IIMAGE_SPECIAL"
-
-##############################################################
-# handlers
-
-FILE_EXTENSIONS='jpg jpeg gif png avi mov mpeg'
-function AVI_handler_prepare() {
-   # evtl ein bild aus den ersten 10 sec
-
-   if [ "$MPLAYER" ] ; then
-
-
-      DST="$DATADIR/$1.1st.jpg"
-
-      if [ "$DST" -ot "$1" ]; then
-
-         echo -n " 1st"
-         rm -f $DATADIR 00000001.jpg 00000002.jpg
-
-         mplayer -quiet -frames 1 -ao none -vo jpeg -jpeg outdir=$DATADIR $1 >/dev/null 2>/dev/null
-
-         if  [ -f "$DATADIR/00000001.jpg" ] ; then
-            convert "$DATADIR/00000001.jpg" -resize $THUMBNAIL_GEOMETRY "$DST"
-         fi
-
-         rm -f $DATADIR 00000001.jpg 00000002.jpg
-      fi
-   fi
-   true
-}
-
-function AVI_handler_index() {
-   echo -n " I"
-
-   THIS_IMAGE="$1"
-   THIS_HTML="$DATADIR/$THIS_IMAGE.html"
-   THIS_HTML_INFO="$DATADIR/$THIS_IMAGE.info.html"
-
-   if [ -f "$DATADIR/$1.1st.jpg" ] ; then
-      ITEM_ICON=$1.1st.jpg
-   else
-      ITEM_ICON=avi.jpg
-   fi
-   { . $INDEX_ICON_TEMPLATE;} >> "$INDEX_HTML"
-}
-
-function AVI_handler_html() {
-   # keine extra ansicht
-   true;
-}
-
-function MPEG_handler_prepare() {
-   AVI_handler_prepare $@
-}
-function MPEG_handler_index() {
-   AVI_handler_index $@
-}
-function MPEG_handler_html() {
-   AVI_handler_html $@
-}
-
-function MOV_handler_prepare() {
-   # evtl ein bild aus den ersten 10 sec
-   AVI_handler_prepare $1
-}
-
-function MOV_handler_index() {
-   echo -n " I"
-
-   THIS_IMAGE="$1"
-   THIS_HTML="$DATADIR/$THIS_IMAGE.html"
-   THIS_HTML_INFO="$DATADIR/$THIS_IMAGE.info.html"
-   if [ -f "$DATADIR/$1.1st.jpg" ] ; then
-      ITEM_ICON=$1.1st.jpg
-   else
-      ITEM_ICON=mov.jpg
-   fi
-   { . $INDEX_ICON_TEMPLATE ;} >> "$INDEX_HTML"
-}
-
-function MOV_handler_html() {
-   # keine extra ansicht
-   true;
-}
-
-
-function default_handler_index() {
-   echo -n " I"
-
-   THIS_IMAGE="$1"
-   THIS_HTML="$DATADIR/$THIS_IMAGE.html"
-   THIS_HTML_INFO="$DATADIR/$THIS_IMAGE.info.html"
-
-   load_image_infos $1
-
-   { . $INDEX_ITEM_TEMPLATE ; } >> "$INDEX_HTML"
-}
-
-function default_handler_html() {
-
-   FILE="$1"; THIS_IMAGE="$1";
-   load_image_infos $1
-
-   PREV_IMAGE=`( echo index ; cat $DATADIR/slideable ; echo index ; ) | grep -1 "^$THIS_IMAGE$" | head -n 1`
-   NEXT_IMAGE=`( echo index ; cat $DATADIR/slideable ; echo index ; ) | grep -1 "^$THIS_IMAGE$" | tail -n 1`
-
-   POS=$[ $POS + 1 ]
-
-   echo -n " $POS"
-
-   if [ "$NEXT_IMAGE" = "index" ] ; then
-      R_NEXT_HTML="../index.html"
-      R_NEXT_HTML_INFO="../index.html"
-      R_NEXT_HTML_SLIDE="../index.html"
-   else
-      R_NEXT_HTML="$NEXT_IMAGE.html"
-      R_NEXT_HTML_INFO="$NEXT_IMAGE.info.html"
-      R_NEXT_HTML_SLIDE="$NEXT_IMAGE.slide.html"
-   fi
-
-   if [ "$PREV_IMAGE" = "index" ] ; then
-      R_PREV_HTML="../index.html"
-      R_PREV_HTML_INFO="../index.html"
-      R_PREV_HTML_SLIDE="../index.html"
-   else
-      R_PREV_HTML="$PREV_IMAGE.html"
-      R_PREV_HTML_INFO="$PREV_IMAGE.info.html"
-      R_PREV_HTML_SLIDE="$PREV_IMAGE.slide.html"
-   fi
-
-   R_THIS_HTML="$THIS_IMAGE.html"
-   THIS_HTML="$DATADIR/$THIS_IMAGE.html"
-   THIS_HTML_INFO="$DATADIR/$THIS_IMAGE.info.html"
-   THIS_HTML_SLIDE="$DATADIR/$THIS_IMAGE.slide.html"
-
-   if [ "$FIRST_HTML" = "" ] ; then
-      FIRST_HTML="$THIS_HTML";
-   fi
-
-   echo -n " H"
-   { . $HTML_TEMPLATE ;} > "$THIS_HTML"
-
-   echo -n "+"
-   { . $HTML_INFO_TEMPLATE ;} > "$THIS_HTML_INFO"
-
-   echo -n "*"
-   { . $HTML_SLIDE_TEMPLATE ;} > "$THIS_HTML_SLIDE"
-
-}
-
-function default_handler_prepare() {
-   build_thumbnail "$1"
-   echo "$1" >> $DATADIR/slideable
-}
-
-
-##############################################################
-##############################################################
-##############################################################
-##############################################################
-# load config
-if [ -f  /etc/iimage.conf ] ; then . /etc/iimage.conf; fi
-if [ -f  ~/.iimage ] ; then . ~/.iimage; fi
-if [ -f  ~/.iimage/config ] ; then . ~/.iimage/config; fi
-
-dcount=1;
-for dir in `pwd | tr '/' ' '` ; do
-   dfile=`pwd | cut -d"/" -f-$dcount`/description
-   dcount=$[ $dcount + 1 ]
-   if [ -f $dfile ] ; then 
-      . $dfile 2>/dev/null
-   fi
-done
-unset order title description 
-
-if [ -f  ./description ] ; then . ./description 2>/dev/null ; fi
-
-
-##############################################################
-# definitions
-
-VERSION="r`echo $SVN_ID| cut -d " " -f 3`"
-
-HTML_TEMPLATE="$DATADIR/html_template.html"
-HTML_INFO_TEMPLATE="$DATADIR/html_info_template.html"
-HTML_SLIDE_TEMPLATE="$DATADIR/html_slide_template.html"
-
-if [ "$TEMPLATEDIR" = "" ] ; then
-   TEMPLATEDIR="~/.iimage"
-fi
-
-FOOTER_TEMPLATE="$DATADIR/footer_template.html"
-HEAD_TEMPLATE_START="$DATADIR/head_template_start.html"
-HEAD_TEMPLATE_END="$DATADIR/head_template_end.html"
-INDEX_HEAD_TEMPLATE="$DATADIR/index_head_template.html"
-INDEX_ITEM_TEMPLATE="$DATADIR/index_item_template.html"
-INDEX_ICON_TEMPLATE="$DATADIR/index_icon_template.html"
-INDEX_FOOT_TEMPLATE="$DATADIR/index_foot_template.html"
-INDEX_DIR_TEMPLATE="$DATADIR/index_dir_template.html"
-CSS_TEMPLATE="$DATADIR/css_template.css"
-INFO_AWK_TEMPLATE="$DATADIR/display_info_template.awk"
-TRANSP_PIXEL="$DATADIR/transp.gif"
-DIR_ICON="$DATADIR/dir.gif"
-AVI_ICON="$DATADIR/avi.jpg"
-MOV_ICON="$DATADIR/mov.jpg"
-SND_ICON="$DATADIR/snd.png"
-COUNTFILE_CURENT="$DATADIR/count.current"
-COUNTFILE_SUB="$DATADIR/count.sub"
-COUNTFILE_SUM="$DATADIR/count.summ"
-INDEX_HTML="index.html"
-
-DATA_FILES="DIR_ICON \
-TRANSP_PIXEL INFO_AWK_TEMPLATE CSS_TEMPLATE INDEX_DIR_TEMPLATE \
-INDEX_FOOT_TEMPLATE INDEX_ITEM_TEMPLATE INDEX_HEAD_TEMPLATE \
-HTML_INFO_TEMPLATE HTML_TEMPLATE \
-HTML_SLIDE_TEMPLATE AVI_ICON MOV_ICON INDEX_ICON_TEMPLATE \
-SND_ICON HEAD_TEMPLATE_START HEAD_TEMPLATE_END \
-FOOTER_TEMPLATE"
-
-######################################################################
-######################################################################
-######################################################################
-# funktions
-
-function upper() { echo $* | tr "[a-z]" "[A-Z]" ; }
-function lowerr() { echo $* | tr "[A-Z]" "[a-z]" ; }
-
-function load_image_infos() {
-
-   THIS_IMAGE=$1
-
-   TN_IMAGE=$DATADIR/$THUMBNAIL_GEOMETRY/$THIS_IMAGE
-   TN_IMAGE_SIZE=`cat $DATADIR/$THUMBNAIL_GEOMETRY/$THIS_IMAGE.size`
-
-   THIS_IMAGE_GEOMETRY=`cat $DATADIR/$THIS_IMAGE.geometry`
-   if [ "$METACAM" ]; then
-      THIS_IMAGE_DATE="`metainfo $DATADIR/$THIS_IMAGE.metacam \
-         'Image Creation Date'`"
-   elif [ "$JHEAD" ]; then
-      THIS_IMAGE_DATE="`metainfo $DATADIR/$THIS_IMAGE.metacam \
-         'Date/Time'`"
-   fi
-
-   R_IMAGE=../$THIS_IMAGE
-   R_DISPLAY_IMAGE=$DISPLAY_GEOMETRY/$THIS_IMAGE
-   TN_IMAGE=$DATADIR/$THUMBNAIL_GEOMETRY/$THIS_IMAGE
-
-   TN_IMAGE_SIZE=`cat $DATADIR/$THUMBNAIL_GEOMETRY/$THIS_IMAGE.size`
-   R_DISPLAY_IMAGE_SIZE=`cat $DATADIR/$DISPLAY_GEOMETRY/$THIS_IMAGE.size`
-
-   THIS_IMAGE_GEOMETRY=`cat $DATADIR/$THIS_IMAGE.geometry`
-   if [ "$METACAM" ]; then
-      THIS_IMAGE_DATE="`metainfo $DATADIR/$THIS_IMAGE.metacam \
-         'Image Creation Date'`"
-   elif [ "$JHEAD" ]; then
-      THIS_IMAGE_DATE="`metainfo $DATADIR/$THIS_IMAGE.metacam \
-         'Date/Time'`"
-   fi
-
-   EXTENSION=`echo $THIS_IMAGE  | awk -F"." '{print $NF}'`
-   WAV_FILE_BASE=`basename $THIS_IMAGE .$EXTENSION`
-   if [ "$AUDIODIR" != "" ] ; then AUDIODIREXT="$AUDIODIR/"; fi
-   WAV_FILE=`eval \ls "$AUDIODIREXT$WAV_FILE_BASE.[wW][aA][vV]" 2>/dev/null | head -n 1`
-
-   if [ -f "$WAV_FILE" ] ; then
-      EXTRA_SMALL_ICON="<a href=$WAV_FILE><img alt=\"Sound-Logo\" src=\"$DATADIR/snd.png\" align=\"right\" border=\"0\"></a>";
-      EXTRA_SMALL_ICON2="<a href=../$WAV_FILE><img alt=\"Sound-Logo\" src=\"snd.png\" border=\"0\"></a>";
-   else
-      EXTRA_SMALL_ICON=""
-      EXTRA_SMALL_ICON2=""
-   fi
-}
-
-# --------------------------------------------------------------------
-function require() {
-   which $1 2>/dev/null >> $DATADIR/log
-   if which $1 2>/dev/null >/dev/null ; then
-      true
-   else
-      echo "ERROR: $1 not found!"
-      exit;
-   fi
-}
-
-# --------------------------------------------------------------------
-# get filesize
-function filesize() {
-   echo -ne "`ls -L -l -d -G \"$1\" | awk '{print $4}'`"
-}
-
-# --------------------------------------------------------------------
-# read key:val from description-file
-function description() {
-
-   file="description"
-   if [ "$2" != "" ] ; then file="$2"; fi
-
-   if [ -f "$file" ] ; then
-      grep "^$1" "$file" \
-      | awk -F"=" '{for (a=2;a<=NF;a++) {if (b!="") b=b "=" ; \
-                   b=b $a}}END{printf b}' | cut -d"\"" -f 2
-   fi
-}
-
-function wrap_table() {
-   T_COUNT=$[ $T_COUNT + 1 ]
-
-   if [ $T_COUNT -gt $COLUMNS ] ; then
-      echo "</tr><tr>";
-      T_COUNT=1;
-   fi;
-
-   export T_COUNT
-
-   # alte templates meeren dadrin rum
-   [ -f .count ] && echo 0 >.count
-}
-
-# --------------------------------------------------------------------
-function metainfo() {
-   file=$1;
-   tag=$2;
-   cat "$file" | grep "$tag" \
-   | awk -F": " '{ a=$2; while (substr(a,1,1)==" ") \
-                 { a=substr(a,2);} print a}'
-}
-
-# --------------------------------------------------------------------
-function generate_info_table() {
-
-   if [ -f "$DATADIR/$THIS_IMAGE.metacam" ] ; then
-      cat "$DATADIR/$THIS_IMAGE.metacam" | awk -F": " -f "$INFO_AWK_TEMPLATE"
-   fi
-   if [ -f "$DATADIR/$THIS_IMAGE.identify" ] ; then
-      cat "$DATADIR/$THIS_IMAGE.identify" | awk -F": " -f "$INFO_AWK_TEMPLATE"
-   fi
-}
-
-# --------------------------------------------------------------------
-function rotate_image() {
-   FILE="$1"
-   if [ $METACAM ]; then
-     ORIENTATION=`metacam -v "$FILE" 2>/dev/null \
-                | grep Orientation | cut -d":" -f 2  | cut -d"," -f 1 `
-   elif [ $JHEAD ]; then
-     ORIENTATION=`jhead -v "$FILE" 2>/dev/null \
-                | grep "Orientation =" | head -1 | cut -d '=' -f 2 | cut -c 2 `
-   fi
-   ORIENTATION=`echo $ORIENTATION`
-
-   if [ "$ORIENTATION" -a "$ORIENTATION" != "1" ] ; then
-      SIZE=`identify "$FILE"| cut -d" " -f 3`
-      WIDTH=`echo $SIZE | cut -d"x" -f 1 | cut -d"+" -f 1`
-      HEIGHT=`echo $SIZE | cut -d"x" -f 2 | cut -d"+" -f 1`
-
-      if [ "$HEIGHT" -lt "$WIDTH" ] ; then
-
-         mkdir -p .backup
-         if [ ! -f .backup/$FILE ] ; then
-            echo -n " B"
-            cp $FILE .backup/$FILE
-         fi
-
-         if [ "$ORIENTATION" = "6" ] ; then
-            echo -n " /"
-            jpegtran -rotate 90 -copy all "$FILE" >"$FILE""_"
-         else
-            echo -en " \\"
-            jpegtran -rotate 270 -copy all "$FILE" >"$FILE""_"
-         fi
-         mv -f "$FILE""_" "$FILE"
-      fi
-   fi
-}
-
-##############################################################
-# generate thumbnails
-function build_thumbnail() {
-
-   IMAGE="$1"
-
-   if [ "$METACAM" ] || [ "$JHEAD" ]; then
-      if [ -a "$JPEGTRAN" ] ; then
-         rotate_image "$IMAGE"
-      fi
-   fi
-
-   if [ ! -f "$DATADIR/$IMAGE.size" -o \
-        "$DATADIR/$IMAGE.size" -ot "$IMAGE" ] ; then
-      # identify -format "%wx%h" "$IMAGE" > "$DATADIR/$IMAGE.geometry"
-
-      if [ "$IDENTIFY2" ] ; then
-         echo -n " I"
-         identify \
-            -format "  Geometry: %wx%h\n  Format: %m\n  Filesize: %b" \
-            "$IMAGE" > "$DATADIR/$IMAGE.identify"
-      else
-         echo -n " i"
-         identify -verbose "$IMAGE" > "$DATADIR/$IMAGE.identify"
-      fi
-
-      echo -n "S"
-      cat "$DATADIR/$IMAGE.identify" \
-           | grep "^ *.eometry:" \
-           | awk -F': ' '{print $2}' > "$DATADIR/$IMAGE.geometry"
-      cat "$DATADIR/$IMAGE.geometry" \
-           | awk -F"x" '{print "WIDTH=\""$1"\" HEIGHT=\""$2"\""}' > $DATADIR/$IMAGE.size
-   fi
-
-   if [ "$METACAM" ] ; then
-      if [ ! -f "$DATADIR/$IMAGE.metacam" -o \
-             "$DATADIR/$IMAGE.metacam" -ot "$IMAGE" ] ; then
-         echo -n " M"
-         metacam "$IMAGE" >"$DATADIR/$IMAGE.metacam" 2>/dev/null
-      fi
-   elif [ "$JHEAD" ] ; then
-      if [ ! -f "$DATADIR/$IMAGE.metacam" -o \
-             "$DATADIR/$IMAGE.metacam" -ot "$IMAGE" ] ; then
-         echo -n " J"
-         jhead "$IMAGE" >"$DATADIR/$IMAGE.metacam" 2>/dev/null
-      fi
-   fi
-
-   echo -n " "
-
-   LASTIMAGE="";
-
-   for GEOMETRY in $THUMBNAILS; do
-
-      mkdir -p "$DATADIR/$GEOMETRY" || exit
-
-      echo -ne "($GEOMETRY"
-      DST="$DATADIR/$GEOMETRY/$IMAGE"
-
-      if [ ! \( -L "$DST" -a -L "$IMAGE" \) ] ; then
-      if [ ! -s "$DST" -o "$DST" -ot "$IMAGE" -o "$FORCE_TN" = "true" ] ; then
-
-         if [ "$LASTIMAGE" = "" ] ; then
-            LASTIMAGE="$IMAGE";
-         fi
-
-         echo -n " T"
-         convert  -quality $THUMBNAIL_QUALITY \
-                  -resize "$GEOMETRY+0+0>" "$LASTIMAGE" \
-                  "$DST"
-#                  +profile "$LASTIMAGE" \
-
-         LASTIMAGE="$DST"
-
-         # optimize with jpegtran
-
-         JPEG=""
-
-         echo $DST | grep .jpg >/dev/null && JPEG=true
-         echo $DST | grep .JPG >/dev/null && JPEG=true
-         echo $DST | grep .jpeg >/dev/null && JPEG=true
-         echo $DST | grep .JPEG >/dev/null && JPEG=true
-
-         if [ "$JPEGTRAN" -a "$JPEG" ] ; then
-            echo -n " O"
-            jpegtran -copy all -optimize -progressive "$DST" > "$DST.tmp"
-            mv -f "$DST.tmp" "$DST"
-         fi
-
-      fi
-      fi
-
-      if [ ! -f "$DST.size" -o "$DST.size" -ot "$DST" ] ; then
-
-         # imagesite WIDTHxHEIGH
-         # identify -format "%wx%h" "$DST" > "$DST.geometry"
-
-         if [ "$IDENTIFY2" ] ; then
-            echo -n " I"
-            identify \
-               -format "  Geometry: %wx%h\n  Format: %m\n  Filesize: %b" \
-               "$DST" \
-               | grep "^ *.eometry:" \
-               | awk -F': ' '{print $2}' > "$DST.geometry"
-         else
-            echo -n " I"
-            identify -verbose "$DST" | grep "^ *.eometry:" \
-               | awk -F': ' '{print $2}' > "$DST.geometry"
-         fi
-
-         echo -n "S"
-
-         # cache image-geometry
-         cat "$DST.geometry" | awk -F"x" '{print "WIDTH=\""$1"\" HEIGHT=\""$2"\""}' \
-            > "$DST.size"
-
-         if [ "$GEOMETRY" != "$THUMBNAIL_GEOMETRY" -a "$CTAG" ] ; then
-            Y=`cat "$DST.geometry" | cut -d"x" -f2 `
-            echo -n " TG"
-            convert "$DST" -pointsize $FONTSIZE \
-               -font "$FONT" -stroke black -fill black \
-               -draw 'text 10, '"$[ $Y - 10 ]"' "'"$CTAG"'"' "$DST"_
-            mv -f "$DST"_ "$DST"
-            convert "$DST" -pointsize $FONTSIZE \
-               -font "$FONT" -stroke $COLOR -fill $COLOR \
-               -draw 'text 9, '"$[ $Y - 9 ]"' "'"$CTAG"'"' "$DST"_
-            mv -f "$DST"_ "$DST"
-         fi
-
-      fi
-
-      echo -n ") "
-
-   done
-}
-
-##############################################################
-function search_subdirs() {
-
-   ORDER=`description order`
-
-   if [ "$ORDER" = "" ] ; then ORDER="alphabetically"; fi
-
-   if [ "$ORDER" = "accesstime" ] ; then
-      RAWDIRS=`eval "find * -maxdepth 0 -type d $IIMAGE_EXCLUDE"`
-      if [ "$RAWDIRS" != "" ] ; then
-         DIRS=`ls -dt $RAWDIRS`
-      else
-         DIRS=""
-      fi
-   elif [ "$ORDER" = "alphabetically" ] ; then
-      DIRS=`eval "find * -maxdepth 0 -type d $IIMAGE_EXCLUDE"`
-   elif [ "$ORDER" = "dec" ] ; then
-      DIRS=`eval "find * -maxdepth 0 -type d $IIMAGE_EXCLUDE"`
-   else
-      DIRS=$ORDER
-   fi
-
-   COUNT_SUBDIRS=0;
-
-   for DIR in $DIRS ; do
-
-      if [ "$DIR" = "---" ] ; then
-         echo "<tr><td colspan=\"3\"><hr noshade size=\"1\"></td></tr>";
-      else
-
-         FOLDER_DESCRIPTION="";
-         SUB_IMAGE=""
-         SUB_IMAGE_size="";
-         SUB_TITLE="";
-         SUB_COUNT=0;
-
-         if [ -f "$DIR/$COUNTFILE_SUM" ] ; then
-            SUB_COUNT=`cat $DIR/$COUNTFILE_SUM`
-            if [ "$SUB_COUNT" = "" ] ; then SUB_COUNT=0; fi
-         else
-            SUB_COUNT=0;
-         fi
-
-         if [ "$SUB_COUNT" -gt 0 ] ; then
-            SUB_COUNT_STR="$SUB_COUNT";
-         else
-            SUB_COUNT_STR="";
-         fi
-
-
-         COUNT_SUBDIRS=$[ $COUNT_SUBDIRS + $SUB_COUNT ]
-
-         if [ -f "$DIR/description" ]; then
-
-            title="`description title $DIR/description`"
-            date="`description date $DIR/description`"
-            FOLDER_DESCRIPTION="`description description $DIR/description`"
-
-            if [ "$title" = "" ] ; then title=$DIR ; fi
-
-            eval `grep mainimage= $DIR/description`
-
-            SUB_IMAGE=$DIR/$DATADIR/$THUMBNAIL_GEOMETRY/$mainimage
-            SUB_IMAGE_size=$DIR/$DATADIR/$THUMBNAIL_GEOMETRY/$mainimage.size
-
-            SUB_TITLE="$title"
-            if [ "$date" != "none" ] ; then SUB_DATE="$date"; fi
-
-         else
-            SUB_TITLE=$DIR
-         fi
-
-         SUB_DST=$DIR/index.html
-
-         { . $INDEX_DIR_TEMPLATE ;}
-      fi
-
-   done
-
-   echo $COUNT_SUBDIRS > $COUNTFILE_SUB
-
-}
-
-##############################################################
-# create picture index
-
-function check_iimage() {
-   info
-
-   require convert
-   require find
-   require awk
-   require identify
-   require grep
-
-   {
-      uname
-      identify  | grep Version
-      convert  | grep Version
-   } >> $DATADIR/log
-
-   JPEGTRAN="`which jpegtran 2>/dev/null`"
-   MPLAYER="`which mplayer 2>/dev/null`"
-   METACAM="`which metacam 2>/dev/null`"
-   JHEAD="`which jhead 2>/dev/null`"
-   IDENTIFY2=`identify  | grep -- -format 2>/dev/null`
-   IIMAGE_FOLLOW_LINKS="`which iimage_follow_links 2>/dev/null`"
-
-   HOSTNAME=`hostname --fqdn 2>/dev/null || hostname`
-
-   echo -n "features: "
-
-   [ "$JPEGTRAN" ] && echo -n "jpegtran "
-   [ "$MPLAYER" ] && echo -n "mplayer "
-   [ "$METACAM"  ] && echo -n "metacam "
-   [ "$JHEAD"  ] && echo -n "jhead "
-   [ "$IDENTIFY2" ] && echo -n "identify>5.x "
-   [ "$IIMAGE_FOLLOW_LINKS" ] && echo -n "follow_links "
-
-   echo ""
-   echo "legend:   I..identify S..size M..metacam J..jhead T..thumb O..optimize"
-   echo "-----------------------------------------------------------------------------"
-
-   IIMAGE_CHECK="ok"
-   export IIMAGE_CHECK METACAM JPEGTRAN IDENTIFY2 IIMAGE_FOLLOW_LINKS
-
-   IIMAGE_TOPLEVEL=true;
-}
-
-function store_templates() {
-
-   TMPLATES=""
-
-   for file in $DATA_FILES ; do
-
-      base_file=`eval 'echo -e $'$file`
-
-      if [ ! -f $base_file -o "$FORCE_TEMPLATES" = "true" ] ; then
-
-         src_file=`basename $base_file`
-
-         if [ "$TMPLATES" = "" ] ; then
-            echo -en "TEMPLATE:\t"
-            TMPLATES=false;
-         fi
-
-         #"$FORCE_TEMPLATES" = "" -a
-         if [ "(" -f $TEMPLATEDIR/$src_file -o -L $TEMPLATEDIR/$src_file ")" ] ; then
-            cp $TEMPLATEDIR/$src_file $base_file
-            echo -n "~"
-         else
-            eval "put_$file >$base_file"
-            echo -n "o"
-         fi
-      fi
-
-   done
-
-   [ "$TMPLATES" != "" ] && echo # OK
-}
-
-function init_iimage() {
-
-   mkdir -p $DATADIR; ls -l >$DATADIR/ls-l.new; touch $DATADIR/ls-l.old
-
-   date > $DATADIR/log
-   rm -f $DATADIR/errors
-
-   [ "$IIMAGE_CHECK" = "" ] && check_iimage;
-
-
-   # -- einige Dinge ignorieren --
-   IIMAGE_EXCLUDE=""
-   IGNORE=`description ignore`
-
-   IGNORE="$IGNORE $AUDIODIR"
-
-   for file in $IGNORE ; do
-       IIMAGE_EXCLUDE="$IIMAGE_EXCLUDE ! -name \"$file\" "
-   done
-   IIMAGE_EXCLUDE="$IIMAGE_EXCLUDE ! -name $DATADIR"
-   
-   export IIMAGE_EXCLUDE
-
-}
-
-function find_all_images() {
-
-
-
-
-   FILE_EXTENSIONS_UPPER=`upper $FILE_EXTENSIONS`
-
-   ALL_IMAGES=
-   for ext in $FILE_EXTENSIONS $FILE_EXTENSIONS_UPPER ; do
-      ALL_IMAGES="$ALL_IMAGES `eval \"find *.$ext -type f -maxdepth 0 $IIMAGE_EXCLUDE 2>/dev/null \"`"
-   done
-
-   # Bilder sortieren
-
-   IORDER=`description iorder`
-
-   if [ "$IORDER" = "" ] ; then IORDER="alphabetically"; fi
-
-   if [ "$IORDER" = "digicam" ] ; then
-      ALL_IMAGES=`ls $ALL_IMAGES | sort -n -k 2 -t "_"`
-      true
-   elif [ "$IORDER" = "alphabetically" ] ; then
-      # bleibt beim alten
-      true
-   elif [ "$IORDER" = "accesstime" -o "$IORDER" = "accesstime_asc" -o "$IORDER" = "accesstime_ascending" ] ; then
-      ALL_IMAGES=`ls -dtr $ALL_IMAGES`
-      true
-   elif [ "$IORDER" = "accesstime_desc" -o "$IORDER" = "accesstime_descending" -o "$IORDER" = "dec" ] ; then
-      ALL_IMAGES=`ls -dt $ALL_IMAGES`
-      true
-   elif [ "$IORDER" = "description" ] ; then                 # 5.1.2005 hfst
-      # in der Reihenfolge wie die Beschreibungen
-      ALL_IMAGES=`for file in $ALL_IMAGES; do
-         grep -n "^$file" description | awk -F"=" '{print $1}' 
-      done | sort -nt":" | awk -F":" '{print $2}'`            # 5.1.2005 hfst ende
-   else
-      ALL_IMAGES=$IORDER
-   fi
-
-}
-
-
-function prepare_dir () {
-
-   store_templates
-
-   find_all_images
-
-#   mkdir -p $DATADIR
-#   ls -l >$DATADIR/ls-l.new
-#   touch $DATADIR/ls-l.old
-
-   GI_COUNT="`echo $ALL_IMAGES | wc -w`"
-   echo $GI_COUNT > $COUNTFILE_CURENT
-
-   TITLE="`description title`"
-   FOLDER_DESCRIPTION="`description description`"
-
-   if [ "$TITLE" = "" ] ; then
-      TITLE="`basename $PWD`"
-   fi
-
-}
-
-function iimage_recursive() {
-
-   if [ "$RECURSIVE" = "true" ] ; then
-      eval "find * -maxdepth 0 -type d $IIMAGE_EXCLUDE " | while read dir ; do
-         ( cd $dir && $0 $*; )
-      done
-   fi
-}
-
-function prepare_images() {
-
-   # evtl noch modularisieren und erweiterbar machen
-   [ $IIMAGE_FOLLOW_LINKS ] && iimage_follow_links;
-
-   rm -f $DATADIR/slideable
-
-   echo "prepare images ..."
-
-   if [ "$GI_COUNT" -gt "0" ] ; then
-      for image in $ALL_IMAGES ; do
-
-         echo -ne "$image:\t"
-
-         EXTENSION=`echo $image  | awk -F"." '{print $NF}'`
-         EXTENSION=`upper $EXTENSION`
-
-         if declare -f $EXTENSION"_handler_prepare" >/dev/null ; then
-            eval $EXTENSION"_handler_prepare $image"
-         else
-            eval default_handler_prepare $image
-         fi
-         echo #" OK"
-      done
-   fi
-}
-
-
-function build_html() {
-
-   echo "generate html ..."
-
-   T_COUNT=0;
-   export T_COUNT;
-
-   # begin index
-   { . $INDEX_HEAD_TEMPLATE ;} > $INDEX_HTML
-
-   if [ "$GI_COUNT" -gt "0" ] ; then
-
-      COUNT=`cat $DATADIR/slideable | wc -l`
-      POS=0
-
-      for THIS_IMAGE in $ALL_IMAGES ; do
-         echo -en "$THIS_IMAGE:\t"
-
-         DESCRIPTION=`description "$THIS_IMAGE"`
-         THIS_IMAGE_BYTE="$[ `filesize $THIS_IMAGE` / 1024 ]"
-
-         EXTENSION=`echo $THIS_IMAGE  | awk -F"." '{print $NF}'`
-         EXTENSION=`upper $EXTENSION`
-
-         # generate html
-         if declare -f $EXTENSION"_handler_html" >/dev/null ; then
-            eval $EXTENSION"_handler_html $THIS_IMAGE"
-         else
-            eval default_handler_html $THIS_IMAGE
-         fi
-
-         wrap_table >> $INDEX_HTML ;
-
-         # generate index
-         if declare -f $EXTENSION"_handler_html" >/dev/null ; then
-            eval $EXTENSION"_handler_index $THIS_IMAGE "
-         else
-            eval "default_handler_index $THIS_IMAGE "
-         fi
-
-         echo #" OK"
-
-      done
-   fi
-
-   echo -e "\n\n\n\
-<!--\n\
-created with iimage $VERSION \n\
-(c) Ronald Schmidt http://www.ronsc.de \n\n\
-download http://www.ronsc.de/iimage/iimage\n\n\
-$SVN_ID\n\
--->\
-\n\n\n" >> $INDEX_HTML ;
-
-
-   { . $INDEX_FOOT_TEMPLATE ;} >> $INDEX_HTML
-
-
-   if [ -f "$COUNTFILE_CURENT" ] ; then
-      COUNT_CURRENT=`cat $COUNTFILE_CURENT`;
-      if [ "$COUNT_CURRENT" = "" ] ; then COUNT_CURRENT=0; fi
-   else
-      COUNT_CURRENT=0;
-   fi
-
-   if [ -f "$COUNTFILE_SUB" ] ; then
-      COUNT_DIR=`cat $COUNTFILE_SUB`;
-      if [ "$COUNT_DIR" = "" ] ; then COUNT_DIR=0; fi
-   else
-      COUNT_DIR=0;
-   fi
-
-   echo $[ $COUNT_CURRENT + $COUNT_DIR ] > $COUNTFILE_SUM;
-
-}
-
-
-# by Chris Huebsch
-#    www.huebsch-gemacht.de
-function cleanup() {
-
-   ALL_IMAGES=`if [ -d $DATADIR ]; then ( cd $DATADIR; set -C;find  *.geometry -maxdepth 0 2>/dev/null ;) ; fi`
-
-   for file in $ALL_IMAGES; do
-      base=`basename $file .geometry`
-      if [ ! -f $base ]; then
-         echo -n "cleanup $base:";
-
-         for tn in $THUMBNAILS ; do
-            echo -n " $tn";
-            rm -f $DATADIR/$tn/$base $DATADIR/$tn/$base.*
-         done
-         echo -n " M";
-         rm -f $DATADIR/$base.*
-         echo
-      fi;
-   done
-
-#   ls -l>$DATADIR/ls-l.old
-
-
-}
-
-
-function finish_iimage() {
-   ls -l>$DATADIR/ls-l.old
-   if [ "$IIMAGE_TOPLEVEL" ] ; then
-      echo
-      echo -e "finished!\7"
-   fi
-}
-
-function update_description_names() {
-   find_all_images
-   for i in $ALL_IMAGES ; do
-
-      if ! egrep "$i=" ./description >/dev/null ; then
-         echo "$i=`description $i`" >> ./description
-      fi
-
-   done
-}
-
-function create_description_template() {
-
-   DST="./description"
-   if [ -f description ] ; then
-      EXITS=true
-      echo "Error: descriptions-file exists, output on stdout !"
-      DST=/dev/stdout
-      echo ""
-   fi
-
-   for i in $VARIABLES ; do
-      VAL=`description $i`
-      if [ "$VAL" = "" ]; then eval "VAL=\$$i";  fi
-      echo "$i=$VAL" >> $DST
-   done
-   echo "" >> $DST
-
-
-   if [ "$DST" = "./description" ] ; then
-      echo "description generated"
-   fi
-
-}
-
-function generate_header() {
-   if [ "$2" != "" ] ; then
-      export BGCOLOR="$2"
-   else
-      export BGCOLOR="#ffffff"
-   fi
-   if [ "$3" != "" ] ; then
-      export PREFIX="$3"
-   else
-      export PREFIX="."
-   fi
-
-   case $1 in
-      "start") 
-         . $HEAD_TEMPLATE_START 
-         ;;
-      "end") 
-         . $HEAD_TEMPLATE_END 
-         ;;
-      *)
-         . $HEAD_TEMPLATE_START
-         . $HEAD_TEMPLATE_END
-         ;;
-   esac
-}
-
-
-
-######################################################################
-######################################################################
-######################################################################
-
-# --------------------------------------------------------------------
-# FOOTER_TEMPLATE
-function put_FOOTER_TEMPLATE() {
-echo '
-cat << EOF
-   <br/><br/><br/><br/>
-   
-   <span style="font-size: 8pt">
-      download iimage: <a style="font-size: 8pt" href="http://www.ronsc.de/iimage/iimage">www.ronsc.de</a>
-      | (c) by <a style="font-size: 8pt" href="http://www.ronsc.de">Ronald Schmidt</a>
-      <br/>
-      <font color="#cccccc" style="font-size: 8pt">
-         this site is generated at `date` by $USER@$HOSTNAME <br>
-         with iimage version $VERSION, template version '$VERSION' 
-      </font> 
-   </span>
-   </center>
-
-</body>
-</html>
-EOF'
-}
-
-# --------------------------------------------------------------------
-# HEAD_TEMPLATE
-function put_HEAD_TEMPLATE_START() {
-echo '
-cat << EOF
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-   "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-   <head>
-      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-15">
-      <link rel="stylesheet" type="text/css" href="$PREFIX/css_template.css">
-      <title>$TITLE</title>
-   </head>
-   
-<body bgcolor="$BGCOLOR">
-
-<div style="
-   border-left:1pt #ffffff solid;
-   border-top:1pt #ffffff solid;
-   border-bottom:1pt #000000 solid;
-   margin:0pt;
-   padding:0pt;
-   "><div style="
-      border-right:1pt #000000 solid;
-      border-bottom:1pt #8c8ea5 solid;
-      background: #d6d3de;
-      margin:0pt;
-      padding:0pt;
-      ">
-<table cellspacing="0" cellpadding="1" width="100%" border="0">
-   <tr valign="middle" bgcolor="#d6d3de">
-
-      <td align="left" width="10%"> 
-         <a href="http://www.ronsc.de/iimage/iimage">iimage</a> $VERSION
-      </td>
-      <td width="40%">
-         <b>$TITLE </b> $THIS_IMAGE
-      </td>
-      <td align=right>
-EOF
-'
-}
-
-
-# --------------------------------------------------------------------
-# HEAD_TEMPLATE
-function put_HEAD_TEMPLATE_END() {
-echo '
-cat << EOF
-    &nbsp;
-    </td>
-
-  </tr>
-</table>
-
-</div>
-</div>
-
-<!--
-<table cellspacing="0" cellpadding="0" width="100%" border="0">
-<tr valign="middle" bgcolor="#6f6f6f">
-<td><img src="$DATADIR/transp.gif" width="1" height="1" alt=""></td>
-</tr> <tr bgcolor="#e7e7e7"> <td>
-<img src="$DATADIR/transp.gif" width="1" height="1" alt=""></td> </tr> </table>
--->
-
-EOF
-'
-}
-
-
-# --------------------------------------------------------------------
-# HTML_TEMPLATE
-function put_HTML_TEMPLATE() {
-echo '
-cat << EOF
-`generate_header start`
-<a href="../$THIS_HTML_SLIDE">Slideshow</a> &nbsp;&nbsp;&nbsp;&nbsp;
-<a href="../index.html">Index</a> &nbsp;&nbsp;&nbsp;&nbsp;
-<a href="$R_PREV_HTML"><b>&lt;&lt;&lt;</b></a>
-$POS/$COUNT
-<a href="$R_NEXT_HTML"><b>&gt;&gt;&gt;</b></a>
-`generate_header end`
-
-   <br>
-   <center>
-   <font size="-1">&nbsp;$DESCRIPTION&nbsp;</font>
-
-   <table cellspacing="0" cellpadding="0" border="0">
-   <tr>
-
-      <td width="640" height="480" valign="bottom" align="center" >
-`
-if [ "$EXCLUDE_ORGINAL" = "true" ] ; then
-   echo -e "<img alt=\"$R_DISPLAY_IMAGE\" src=\"$R_DISPLAY_IMAGE\" $R_DISPLAY_IMAGE_SIZE border="1">"
-else
-   echo -e "<a href=\"$R_IMAGE\"><img alt=\"$R_DISPLAY_IMAGE\" src=\"$R_DISPLAY_IMAGE\" $R_DISPLAY_IMAGE_SIZE ></a>"
-fi
-`
-      </td>
-   </tr>
-   <tr>
-   <td align="center"><font color="#999999" size="-2">
-   ($THIS_IMAGE_DATE $THIS_IMAGE_GEOMETRY $THIS_IMAGE_BYTE kb )
-
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e "<?  if (IIMAGE_WRAPPER==1) isort_wrapper_ref(\"$THIS_IMAGE\"); ?>"
-fi
-`
-
-   <a href="../$THIS_HTML_INFO"><font color="#999999">more ...</font></a>
-   $EXTRA_SMALL_ICON2
-   </font></td>
-   </tr>
-   </table>
-
-
-`. $FOOTER_TEMPLATE`
-EOF
-'
-
-}
-
-
-# --------------------------------------------------------------------
-# HTML_SLIDE_TEMPLATE
-function put_HTML_SLIDE_TEMPLATE() {
-echo '
-cat << EOF
-`generate_header start "#888888"`
-
-<meta http-equiv="refresh" content="$SLIDE_DELAY; URL=` if [ \"$SLIDE_LOOP\" = \"true\" ] ; then echo $FIRST_HTML ; else echo $R_NEXT_HTML_SLIDE; fi` ">
-      <font color="#888888">Slideshow</font>
-      <a href="../$THIS_HTML">Stop</a> &nbsp;&nbsp;&nbsp;&nbsp;
-      <a href="../index.html">Index</a> &nbsp;&nbsp;&nbsp;&nbsp;
-      <a href="$R_PREV_HTML_SLIDE"><b>&lt;&lt;&lt;</b></a>
-      $POS/$COUNT
-      <a href="$R_NEXT_HTML_SLIDE"><b>&gt;&gt;&gt;</b></a>
-`generate_header end`
-
-   <br>
-   <center>
-
-   <table border="0" cellpadding="5" width="100%">
-
-   <tr><td width="100%" align="center" valign="top">
-
-      <font size="-1" color="#777777">&nbsp;$DESCRIPTION&nbsp;</font>
-
-      <table width="640" cellspacing="0" cellpadding="0" border="0">
-      <tr>
-
-         <td width="640" height="640" valign="middle" align="center" >
-         <img alt="$R_DISPLAY_IMAGE" src="$R_DISPLAY_IMAGE" $R_DISPLAY_IMAGE_SIZE border="1">
-         </td>
-      </tr>
-      </table>
-
-   </td></tr></table>
-
-`. $FOOTER_TEMPLATE`
-EOF
-'
-}
-
-
-
-# --------------------------------------------------------------------
-# HTML_INFO_TEMPLATE
-function put_HTML_INFO_TEMPLATE() {
-echo '
-cat << EOF
-`generate_header start`
-          <a href="../$THIS_HTML_SLIDE">Slideshow</a> &nbsp;&nbsp;&nbsp;&nbsp;
-      <a href="../index.html">Index</a> &nbsp;&nbsp;&nbsp;&nbsp;
-      <a href="$R_PREV_HTML_INFO"><b>&lt;&lt;&lt;</b></a>
-      $POS/$COUNT
-      <a href="$R_NEXT_HTML_INFO"><b>&gt;&gt;&gt;</b></a>
-`generate_header end`
-
-
-   <br>
-
-   <center>
-
-   <table border="0" cellpadding="5">
-
-   <tr><td width="640" valign="top">
-
-      <font size="-1">&nbsp;$DESCRIPTION&nbsp;</font>
-
-      <table width="640" cellspacing="0" cellpadding="0" border="0">
-      <tr>
-
-         <td width="640" height="480" valign="top" align="center" >
-
-`
-if [ "$EXCLUDE_ORGINAL" = "true" ] ; then
-   echo -e "<img src=\"$R_DISPLAY_IMAGE\" alt=\"$R_DISPLAY_IMAGE\" $R_DISPLAY_IMAGE_SIZE border=\"1\">"
-else
-   echo -e "<a href=\"$R_IMAGE\"><img src=\"$R_DISPLAY_IMAGE\" alt=\"$R_DISPLAY_IMAGE\" $R_DISPLAY_IMAGE_SIZE ></a>"
-fi
-`
-         <br>
-         ($THIS_IMAGE_DATE $THIS_IMAGE_GEOMETRY
-         $THIS_IMAGE_BYTE kb )
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e "<?  if (IIMAGE_WRAPPER==1) isort_wrapper_ref(\"$THIS_IMAGE\"); ?>"
-fi
-`
-
-   $EXTRA_SMALL_ICON2
-         </td>
-      </tr>
-      </table>
-   </td><td valign="top">
-
-   `generate_info_table`
-   <a href="../$THIS_HTML"><font color="#999999">close ...</font></a>
-
-   </td></tr></table>
-
-`. $FOOTER_TEMPLATE`
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INDEX_HEAD_TEMPLATE
-function put_INDEX_HEAD_TEMPLATE() {
-echo '
-cat << EOF
-`generate_header start "" "$DATADIR"`
-<a href="../index.html">zur&uuml;ck</a>
-`generate_header end`
-
-<p>
-
-<center>
-<table width="80%" border="0"  cellspacing="20" ><tr>
-<td width="50%" valign="top" align="center">
-<h1>$TITLE</h1>
-
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e "<? if (IIMAGE_WRAPPER==1) { iimage_description(\"$DIR\",\"$SUB_DST\",\"$SUB_TITLE\",2); } else { ?> $FOLDER_DESCRIPTION <? } ?>"
-else
-   echo -e "$FOLDER_DESCRIPTION "
-fi
-`
-
-
-</td>
-
-
-<td width="50%" valign="top">
-
-<table border="0" >
-<tr>
-<td align="center" valign="top">
-<img src="$DIR_ICON" alt="Directory icon">
-</td>
-<td  valign="top">
-<!-- index.html ist wichtig, da es sonst nicht ohne browser geht -->
-<b><a href="../index.html">..</a></b>
-</td>
-</tr>
-`search_subdirs`
-</table>
-
-
-</td></tr></table>
-</center>
-
-<p>
-
-<center>
-<table border="0"><tr>
-
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INDEX_ITEM_TEMPLATE
-function put_INDEX_ITEM_TEMPLATE() {
-echo '
-cat << EOF
-
-<td align="center" valign="bottom" width="200" height="220" >
-<br>
-<span class="small">
-   $DESCRIPTION
-</span>
-<table border="0" cellpadding="0" cellspacing="0">
-<tr>
-   <td width="170" height="170" bgcolor="#dddddd" align="center" valign="middle">
-   <a href="$THIS_HTML"><img alt="Thumbnail" src="$TN_IMAGE" $TN_IMAGE_SIZE ></a>
-   </td>
-</tr>
-<tr>
-   <td bgcolor="#dddddd" align="center" valign="middle">
-   $EXTRA_SMALL_ICON
-   <font size="-2" color="#bbbbbb">$THIS_IMAGE_DATE</font></td>
-</tr>
-<tr>
-   <td align="center" bgcolor="#F7F7F7" class="smallgray">
-   $THIS_IMAGE<br>
-   <a href="$THIS_HTML_INFO">($THIS_IMAGE_GEOMETRY $THIS_IMAGE_BYTE kb)</a>
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e "<?  if (IIMAGE_WRAPPER==1) isort_wrapper_ref(\"$THIS_IMAGE\"); ?>"
-fi
-`
-   </td>
-</tr></table>
-
-
-</td>
-
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INDEX_ICON_TEMPLATE
-function put_INDEX_ICON_TEMPLATE() {
-echo '
-cat << EOF
-
-<td valign="bottom" align="center" width="200" height="220">
-
-<br>
-<span class="small">$DESCRIPTION</font>
-
-<table border="0" cellpadding="0" cellspacing="0">
-<tr>
-   <td width="170" height="170" bgcolor="#dddddd" align="center" valign="middle">
-   <a href="$THIS_IMAGE"><img alt="Icon" src="$DATADIR/$ITEM_ICON" ></a>
-   </td>
-</tr>
-<tr>
-   <td bgcolor="#dddddd" align="center" valign="middle">
-   $EXTRA_SMALL_ICON
-   <font size="-2" color="#bbbbbb">$THIS_IMAGE_DATE</font></td>
-</tr>
-<tr>
-   <td align="center" bgcolor="#F7F7F7" class="smallgray">
-   $THIS_IMAGE<br>
-   ($THIS_IMAGE_BYTE kb)
-
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e "<?  if (IIMAGE_WRAPPER==1) isort_wrapper_ref(\"$THIS_IMAGE\"); ?>"
-fi
-`
-
-   </td>
-</tr></table>
-
-</td>
-
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INDEX_FOOT_TEMPLATE
-function put_INDEX_FOOT_TEMPLATE() {
-echo '
-cat << EOF
-</table>
-
-`. $FOOTER_TEMPLATE`
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INDEX_DIR_TEMPLATE
-function put_INDEX_DIR_TEMPLATE() {
-echo '
-cat << EOF
-
-<tr>
-<td align="center" valign="top">
-   <img src="$DIR_ICON" alt="Directory icon">
-</td>
-
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo -e " <? if (IIMAGE_WRAPPER==1) { iimage_description(\"$DIR\",\"$SUB_DST\",\"$SUB_TITLE\"); } else { ?>"
-fi
-`
-
-
-<td  valign="top">
-   <b><a href="$SUB_DST">$SUB_TITLE</a></b>
-   <br> <font size="-2"><em>$SUB_DATE</em></font>
-</td></tr><tr>
-<td></td>
-<td><font size="-1">$FOLDER_DESCRIPTION</font>
-</td>
-
-`
-if [ "$IIMAGE_SPECIAL" = "true" ] ; then
-   echo "<? } ?>"
-fi
-`
-
-</tr>
-
-EOF
-'
-}
-
-# --------------------------------------------------------------------
-# INFO_AWK_TEMPLATE
-function put_INFO_AWK_TEMPLATE() {
-echo '
-BEGIN{
-   print "<br><table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"
-   a=1;
-}
-(!/---------------/){
-
-   if (a==1) bgcolor="#eeeeee"
-   else bgcolor="#cccccc"
-
-   a=1-a;
-   print "<tr>"
-   print "<td bgcolor=\""bgcolor"\"><font size=\"-2\" >" $1 "</font></td>"
-   print "<td bgcolor=\""bgcolor"\"><font size=\"-2\" >" $2 "</font></td>"
-
-   print "</tr>"
-}
-END{
-   print "</table>"
-}
-'
-}
-
-# --------------------------------------------------------------------
-# CSS_TEMPLATE
-function put_CSS_TEMPLATE() {
-echo '
-body {
-   margin:0pt;
-   padding:0pt;
-}
-* {
-   font-family: verdana,helvetica,sans-serif;
-   font-size: 10pt;
-}
-tt,pre { 
-   font-family:monospace;
-}
-a {
-   text-decoration: none;
-}
-.small, .small * {
-   font-size: 8pt;
-}
-.smallgray, .smallgray * {
-   color: #999999;
-   font-size: 8pt;
-}
-'
-}
-
-# --------------------------------------------------------------------
-function put_TRANSP_PIXEL () {
-echo -ne \
-"\x47\x49\x46\x38\x39\x61\x01\x00\x01\x00\x80\x00\x00\xff\xff\
-\xff\xff\xff\xff\x21\xf9\x04\x01\x0a\x00\x01\x00\x2c\x00\x00\
-\x00\x00\x01\x00\x01\x00\x00\x02\x02\x4c\x01\x00\x3b"
-}
-
-# --------------------------------------------------------------------
-function put_DIR_ICON() {
-echo -ne \
-"\x47\x49\x46\x38\x39\x61\x14\x00\x16\x00\xc2\x00\x00\xff\xff\
-\xff\xff\xcc\x99\xcc\xff\xff\x99\x66\x33\x33\x33\x33\x00\x00\
-\x00\x00\x00\x00\x00\x00\x00\x21\xfe\x4e\x54\x68\x69\x73\x20\
-\x61\x72\x74\x20\x69\x73\x20\x69\x6e\x20\x74\x68\x65\x20\x70\
-\x75\x62\x6c\x69\x63\x20\x64\x6f\x6d\x61\x69\x6e\x2e\x20\x4b\
-\x65\x76\x69\x6e\x20\x48\x75\x67\x68\x65\x73\x2c\x20\x6b\x65\
-\x76\x69\x6e\x68\x40\x65\x69\x74\x2e\x63\x6f\x6d\x2c\x20\x53\
-\x65\x70\x74\x65\x6d\x62\x65\x72\x20\x31\x39\x39\x35\x00\x21\
-\xf9\x04\x01\x00\x00\x02\x00\x2c\x00\x00\x00\x00\x14\x00\x16\
-\x00\x00\x03\x54\x28\xba\xdc\xfe\x30\xca\x49\x59\xb9\xf8\xce\
-\x12\xba\xef\x45\xc4\x7d\x64\xa6\x29\xc5\x40\x7a\x6a\x89\x06\
-\x43\x2c\xc7\x2b\x1c\x8e\xf5\x1a\x13\x57\x9e\x0f\x3c\x9c\x8f\
-\x05\xec\x0d\x49\x45\xe1\x71\x67\x3c\xb2\x82\x4e\x22\x34\xda\
-\x49\x52\x61\x56\x98\x56\xc5\xdd\xc2\x78\x82\xd4\x6c\x3c\x26\
-\x80\xc3\xe6\xb4\x7a\xcd\x23\x2c\x4c\xf0\x8c\x3b\x01\x00\x3b\
-"
-}
-
-# --------------------------------------------------------------------
-function put_AVI_ICON() {
-echo -ne \
-"\xff\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\
-\x48\x00\x48\x00\x00\xff\xfe\x00\x17\x43\x72\x65\x61\x74\x65\
-\x64\x20\x77\x69\x74\x68\x20\x54\x68\x65\x20\x47\x49\x4d\x50\
-\xff\xdb\x00\x43\x00\x08\x06\x06\x07\x06\x05\x08\x07\x07\x07\
-\x09\x09\x08\x0a\x0c\x14\x0d\x0c\x0b\x0b\x0c\x19\x12\x13\x0f\
-\x14\x1d\x1a\x1f\x1e\x1d\x1a\x1c\x1c\x20\x24\x2e\x27\x20\x22\
-\x2c\x23\x1c\x1c\x28\x37\x29\x2c\x30\x31\x34\x34\x34\x1f\x27\
-\x39\x3d\x38\x32\x3c\x2e\x33\x34\x32\xff\xdb\x00\x43\x01\x09\
-\x09\x09\x0c\x0b\x0c\x18\x0d\x0d\x18\x32\x21\x1c\x21\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\xff\xc0\x00\x11\x08\x00\x3b\x00\x3a\x03\x01\x22\
-\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x00\x1b\x00\x00\x02\x03\
-\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x07\
-\x00\x03\x05\x04\x02\x01\xff\xc4\x00\x43\x10\x00\x01\x03\x02\
-\x04\x02\x05\x04\x0d\x0d\x01\x00\x00\x00\x00\x00\x01\x02\x03\
-\x04\x05\x11\x00\x06\x12\x21\x31\x41\x13\x22\x32\x51\x61\x14\
-\x35\x75\xb4\x07\x15\x16\x23\x36\x56\x71\x81\x95\xb1\xb3\xd3\
-\xd4\x24\x33\x42\x43\x53\x55\x63\x72\x82\x91\x93\xa1\xc1\xf0\
-\xff\xc4\x00\x19\x01\x01\x01\x00\x03\x01\x00\x00\x00\x00\x00\
-\x00\x00\x00\x00\x00\x00\x01\x00\x02\x03\x04\x05\xff\xc4\x00\
-\x20\x11\x00\x02\x02\x02\x01\x05\x01\x00\x00\x00\x00\x00\x00\
-\x00\x00\x00\x00\x01\x02\x11\x03\x31\x13\x14\x15\x21\x51\x91\
-\x52\xff\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\
-\x77\xd5\xea\x8d\x51\xa9\xab\x9a\xf3\x4f\x3c\x02\xdb\x69\x0d\
-\x32\x01\x5b\x8b\x5a\xd2\x84\x24\x5c\x81\x72\xa5\x24\x6e\x40\
-\xdf\x72\x31\x9a\x73\x1d\x49\x36\xbe\x4e\xad\x8b\xf0\xf7\xe8\
-\x5f\x88\xc7\xdc\xe3\xe6\x48\xde\x95\xa7\x7a\xeb\x38\xec\xac\
-\xd4\x1a\xa6\xc7\x4c\x87\x96\x50\x84\xf7\x0b\x92\x6e\x2c\x00\
-\xe6\x7c\x37\xc0\x07\x12\xb3\x1d\x49\x20\x95\x64\xea\xe0\x03\
-\xf8\xd0\xbf\x11\x88\x9c\xc7\x52\x50\xba\x72\x75\x6c\x8e\xf0\
-\xf4\x2f\xc4\x60\x7e\x97\x5f\x6f\x34\xb5\x51\x91\x22\xb2\xf4\
-\x68\xb0\x81\x5b\x8c\x45\x46\x92\x10\x2f\x7d\x4e\xd8\xea\x3b\
-\x6e\x11\xb0\x3b\x5c\xe3\x8e\x8d\x5b\xf2\xea\x94\x98\xb9\x76\
-\xa5\x39\x52\xa3\x30\x64\xf9\x3c\xe7\x56\xfb\x2e\xa7\x55\xb4\
-\xa9\x6a\xb9\x49\x24\xec\x41\xdb\xb8\x8d\x8a\x21\x6f\xba\x1a\
-\x9f\xc4\xda\xe7\xf9\xa1\x7e\x23\x17\xc6\xcc\x4c\x39\x35\x88\
-\x53\x62\x4b\xa6\xcb\x7c\x12\xd3\x52\xd2\x9f\x7c\x20\x5c\x80\
-\xb4\x29\x48\x2a\xb5\xce\x9d\x57\xb0\x26\xd6\x06\xd6\x50\x6b\
-\x8c\x57\xe9\x2d\x4e\x61\x2a\x46\xae\xab\x8d\x2b\xb4\xda\xc6\
-\xc5\x27\xe4\x3c\xf9\x8d\xf8\x11\x8c\x1c\xd7\x28\x88\xd2\xa1\
-\x49\xa1\x4f\x9b\x1d\xd5\x25\xc6\xdf\x8c\x52\x3a\x35\x0d\x3a\
-\x4a\x4e\xa0\xa0\xa0\xa4\xdc\x11\x62\x0d\xac\x7b\xa2\x0c\xb1\
-\x30\x29\x91\x73\x1b\x95\xd8\x12\xe3\xc9\x53\x8e\x49\x80\xff\
-\x00\x93\xad\xd7\x1b\x0d\xa9\xce\xaa\x54\x0a\x92\x36\x0a\xb2\
-\xc0\x36\xd8\x90\x48\x00\x10\x01\x5e\x00\x30\x33\x8f\x99\x23\
-\x7a\x56\x9d\xeb\xac\xe2\xaa\xc2\xa2\xbf\x5b\x48\x9c\x7f\x24\
-\x85\x11\x4f\x29\x22\xfd\x65\x38\x74\x27\xe5\x3d\x55\x5b\xc4\
-\x8c\x5b\x9c\x7c\xc9\x1b\xd2\xb4\xef\x5d\x67\x18\xf9\xc1\xc6\
-\x63\xce\x8c\xfb\xa9\x71\x4c\xba\xd2\x98\x7f\xa2\x3d\x70\x35\
-\x0d\x2a\x48\x3c\x4a\x4a\x8e\xdd\xc4\xe1\x13\x9e\x85\x2f\x2c\
-\x52\x72\x9c\xe9\xd4\xfa\x7b\xc9\x8d\xac\xc7\x71\xb7\xc0\x2a\
-\x72\xc0\x59\x1c\x48\xd3\x65\x7d\x78\xab\x2d\x66\x7a\x60\x87\
-\x51\xe8\xe9\xcc\xc0\x4c\x44\x09\x0e\x06\x40\xb2\x93\xc0\x6a\
-\x36\xb9\x56\xdb\x5f\x8f\x2e\x18\xaa\x34\xbc\xa9\x13\x2b\xb5\
-\x4c\x8c\xea\xe5\x42\x48\xd4\x7b\x4b\x75\x4a\xe6\xa5\x90\x2f\
-\xab\x6f\x0e\x18\x09\xab\xd5\xcc\xa8\xa8\x8d\x44\x8e\xd4\x4a\
-\x7a\x1c\xd6\x5b\x01\x4a\x53\x8e\x0e\x0b\x75\x43\x57\x0d\xac\
-\x9f\x0e\x23\x11\x07\xbe\xc6\xcf\x07\x1a\xac\x14\x24\x25\x02\
-\x43\x41\x40\x0f\xd6\x74\x28\xd7\xff\x00\x07\xcd\x83\x75\x2f\
-\x0b\x4c\xb7\x5a\x95\x43\xcb\x8c\x47\x8b\x0e\x9a\xfa\x13\x75\
-\x29\x4b\xa9\xe8\x5b\x8a\x26\xe5\x56\x2d\xf3\x37\x3c\x79\xe0\
-\xaa\x85\x99\xe2\xd7\x52\xe2\x12\xdb\x91\xe5\x35\x62\xe3\x0e\
-\x10\x48\x07\x82\x81\x17\x04\x1e\xf1\xf3\xdb\x11\x1c\xb9\x2b\
-\xe1\x46\x70\xb7\xef\x21\xf6\x0c\xe0\xdb\x01\x39\x27\xe1\x3e\
-\x6f\xf4\x8a\x7e\xc1\x9c\x1b\x60\x03\x03\x38\xf9\x92\x37\xa5\
-\x69\xde\xba\xce\x38\x33\x14\x53\x25\xf8\xa1\x0b\xd0\xa5\x12\
-\x02\xbb\xba\xc8\xe5\x71\x7f\xf7\xff\x00\x47\x7e\x71\xf3\x24\
-\x6f\x4a\xd3\xbd\x75\x9c\x55\x51\xd4\xb7\xe3\x84\xab\x4a\xaf\
-\x60\x7b\xba\xc9\xf1\xdf\x87\xfe\xe4\x88\x1f\x55\xc9\x4d\x3e\
-\x97\x1f\x96\xa6\xde\x50\x1c\x14\xc8\xeb\x5b\x96\x34\xa9\x94\
-\x54\x45\xa6\x21\x0c\xb6\x86\xda\x41\x5d\x92\x81\x60\x06\xa3\
-\xc8\x5f\x1b\x12\xe2\xbe\xa6\x54\xa7\x65\xea\x01\x27\x6e\x8c\
-\x0b\xf8\x62\xf6\x36\x80\xa1\xfc\xff\x00\x59\xf1\x38\x24\xe9\
-\x59\x2d\x8b\x1a\x34\xba\xcd\x39\x72\xfc\x9e\x81\x3d\xf4\xba\
-\xf2\xd4\x92\xb1\xd1\x58\x74\x8b\x3f\xa5\x6e\x4a\xc5\xf1\x24\
-\xd7\xdb\xce\x14\xc9\xce\xd0\x9f\x8a\x85\xac\xb0\xfa\xc2\x83\
-\x83\x42\x87\x3d\x37\xd2\x01\x4a\x4d\xcf\x76\x09\x61\x53\x29\
-\x86\x84\x8a\x73\xcb\x8c\x2a\x72\xda\x53\xe8\x52\xbb\x68\x3c\
-\x52\x9d\x56\xb0\x04\x03\x7b\x91\xc7\x86\x3c\x16\xe0\x0c\xaf\
-\xed\xb1\x8f\x1c\x3e\x23\xf9\x17\x47\xd1\x8f\xce\xea\xed\xda\
-\xdd\xad\x3b\xdf\x1e\x57\x70\x9d\x5b\x8a\xd5\xef\xea\xd6\xf4\
-\x76\x74\xd1\xba\xb7\xba\xd1\xa5\x93\x52\xa6\x33\x1e\x66\x53\
-\xe9\x2d\x09\x33\xd2\xa6\x35\x8d\x3d\x28\x0c\x35\x72\x9b\xf6\
-\xbb\x2a\xe1\xdc\x7b\xb0\x6d\x85\xf2\xa3\xa9\x8c\xe9\x94\x2f\
-\x11\x0c\x74\x8c\xa9\x6b\xd0\xc2\x5b\xd4\xe9\x8e\xee\xbb\xd8\
-\x0d\xf8\x6d\xca\xfc\xaf\x86\x0e\x3b\xb0\x65\x79\x53\x6d\x55\
-\x33\x9b\x2c\x14\x1a\xa6\x61\xe6\xd8\xb2\xe5\x65\xf5\x08\x4c\
-\x17\xe4\x31\x2a\x2c\xa0\xd0\x50\x05\x61\xa7\xdb\x75\x49\x04\
-\x90\x2e\x42\x08\x17\x20\x5e\xdb\x8c\x0b\x3d\x98\xea\xee\x14\
-\x9f\x71\xb5\x90\x53\xc3\xdf\x23\x9e\x60\xfe\xd7\xc3\x0c\x5c\
-\x4c\x6f\x35\x8b\x75\xe6\x1a\xca\xfb\x59\x42\xb4\x7f\xae\x37\
-\xde\xe3\xd9\xcc\x75\x55\x32\xa6\x95\x93\x2b\x5a\x54\x08\x36\
-\x79\x80\x77\xf1\xe9\x6e\x30\xc5\xc4\xc4\x36\x25\x3d\xa7\x4f\
-\xc5\x0c\xd3\xf4\x83\x5f\x7d\x89\xed\x3a\x7e\x28\xe6\x9f\xa4\
-\x5a\xfb\xdc\x3a\xf1\x31\xab\x83\x17\xe5\x7c\x33\xe4\x9f\xb6\
-\x2d\x7d\x8f\x72\xb3\x8d\x54\xe5\x55\xea\x50\xa6\xc6\x71\xb7\
-\xc9\x82\xcc\x99\x25\x65\xa4\x16\xc2\x4d\xec\xa2\x92\x6e\x5c\
-\xef\xd9\x5f\xd9\x95\x89\x89\x8c\xe3\x08\xc5\x54\x55\x18\x39\
-\x39\x79\x67\xff\xd9"
-}
-
-# --------------------------------------------------------------------
-function put_MOV_ICON() {
-echo -ne \
-"\xff\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x01\x00\
-\x48\x00\x48\x00\x00\xff\xfe\x00\x17\x43\x72\x65\x61\x74\x65\
-\x64\x20\x77\x69\x74\x68\x20\x54\x68\x65\x20\x47\x49\x4d\x50\
-\xff\xdb\x00\x43\x00\x08\x06\x06\x07\x06\x05\x08\x07\x07\x07\
-\x09\x09\x08\x0a\x0c\x14\x0d\x0c\x0b\x0b\x0c\x19\x12\x13\x0f\
-\x14\x1d\x1a\x1f\x1e\x1d\x1a\x1c\x1c\x20\x24\x2e\x27\x20\x22\
-\x2c\x23\x1c\x1c\x28\x37\x29\x2c\x30\x31\x34\x34\x34\x1f\x27\
-\x39\x3d\x38\x32\x3c\x2e\x33\x34\x32\xff\xdb\x00\x43\x01\x09\
-\x09\x09\x0c\x0b\x0c\x18\x0d\x0d\x18\x32\x21\x1c\x21\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\x32\
-\x32\x32\x32\xff\xc0\x00\x11\x08\x00\x3b\x00\x3a\x03\x01\x22\
-\x00\x02\x11\x01\x03\x11\x01\xff\xc4\x00\x1b\x00\x00\x02\x03\
-\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x07\
-\x00\x04\x05\x03\x01\x02\xff\xc4\x00\x3e\x10\x00\x01\x03\x03\
-\x03\x01\x03\x07\x0a\x03\x09\x00\x00\x00\x00\x00\x01\x02\x03\
-\x04\x00\x05\x11\x06\x12\x21\x41\x13\x31\x51\x22\x32\x35\x61\
-\x75\x81\xb4\x07\x14\x15\x16\x23\x52\x56\xc1\xd3\xd4\x82\x95\
-\xa1\x36\x53\x55\x63\x73\x91\x93\xb1\xb3\xff\xc4\x00\x18\x01\
-\x01\x00\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\
-\x00\x00\x02\x03\x04\x01\xff\xc4\x00\x24\x11\x00\x02\x02\x01\
-\x03\x02\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x02\
-\x11\x03\x04\x14\x21\x13\x61\x12\x41\x51\x52\x71\x81\x91\xff\
-\xda\x00\x0c\x03\x01\x00\x02\x11\x03\x11\x00\x3f\x00\x78\xde\
-\x2e\xad\x59\xad\xab\x9a\xf3\x4f\x3c\x02\xdb\x69\x0d\x32\x01\
-\x5b\x8b\x71\x69\x42\x12\x32\x40\xc9\x52\x92\x39\x20\x73\xc9\
-\x15\x98\x75\x25\xc8\x10\x0e\x8d\xbe\x0c\xf7\x7d\xb4\x2f\xdc\
-\x57\xba\xcb\xd0\x71\xbd\xab\x6d\xf8\xd6\x6b\xae\xa3\xbc\x33\
-\x65\x88\x99\x2e\x95\x13\xce\xd4\x23\x1b\x94\x41\x1d\xd9\x20\
-\x7a\xc9\x3c\x00\x09\x38\x1c\x80\x38\xab\x52\x5c\x92\x32\xad\
-\x1b\x7c\x03\xfd\x68\x5f\xb8\xa8\x9d\x49\x72\x50\xca\x74\x75\
-\xf0\x8f\x1e\xda\x17\xee\x28\x72\x1d\xed\x8b\xee\x9e\x95\x7a\
-\xb8\x5f\x24\xfc\xd5\x95\x6d\x53\x10\x42\x98\x48\xce\x36\x80\
-\xbc\x05\xaf\xbf\xce\x1b\x41\xf0\xc5\x56\xb3\x6a\x17\x55\x1e\
-\xe5\x32\xc7\x2e\x64\xc6\xad\x85\x3f\x39\x87\x31\xc5\x38\x1c\
-\x49\x04\x9e\xcd\xd5\x79\x5b\xc0\x04\xf2\x48\x3d\xc7\x19\xc8\
-\x00\xb7\xeb\x15\xcf\xf0\x6d\xf3\xfe\x68\x5f\xb8\xae\xf1\xb5\
-\x1b\x0e\x4d\x62\x14\xd8\x92\xed\xb2\xdf\x04\xb4\xd4\xb4\xa7\
-\x0b\x20\x64\xa4\x2d\x0a\x52\x0a\xb1\x93\xb7\x76\x70\x09\xc6\
-\x01\xc5\xcb\x75\xc6\x3d\xd6\xdc\xc4\xe8\x8b\xdc\xc3\xe8\x0b\
-\x41\x23\x07\x07\xa1\x1d\x0f\xab\xa5\x0c\x6a\xb9\x44\x46\x95\
-\x0a\x55\x8a\x7c\xd8\xee\xa8\x38\x87\xe3\x14\x8e\xcd\x40\x27\
-\x69\x49\xdc\x14\x14\x14\x9c\x82\x30\x47\x04\x1f\x00\x0d\x2a\
-\x50\x96\x84\xd4\x8e\xdf\x60\x4b\x8f\x25\x4e\x39\x26\xde\xff\
-\x00\xcd\xd6\xeb\x8d\x76\x6a\x73\xc9\x4a\x81\x52\x47\x01\x58\
-\x58\x07\x1c\x12\x09\x00\x02\x05\x16\xd0\x03\xfa\xcb\xd0\x71\
-\xbd\xab\x6d\xf8\xd6\x6b\x3a\xfa\xab\x6c\xb7\xaf\x0b\xbc\x36\
-\xb7\x62\x46\x64\x45\x4b\x48\xf3\x94\x56\x90\xb5\xe3\xd7\x8d\
-\xbe\xe0\x6b\x47\x59\x7a\x0e\x37\xb5\x6d\xbf\x1a\xcd\x0e\x6b\
-\x26\xa0\x37\x29\xd1\x70\x72\x43\x70\x6e\x0d\x6c\x79\xd8\xea\
-\xc2\xd9\x52\x40\x4e\xe1\xc1\xef\x04\x03\x8c\xe3\x03\x8e\xfa\
-\x03\xec\x5c\x74\xf5\xab\x42\xb6\xec\x5b\x6a\x9c\x8b\x35\x44\
-\x25\x87\xf1\xb9\xc5\x02\x46\x54\x79\xee\xdb\xff\x00\x55\x56\
-\x2e\xa4\x84\xf6\x8a\xb8\x98\xf0\x9a\x87\xd9\x6e\x8d\xd8\xb2\
-\x90\x10\xa7\x1c\x4f\x18\xe3\xbf\x91\x9e\xf3\xd7\xad\x4b\x8d\
-\xcb\x4b\x7d\x06\xc4\x54\xa0\xc9\x87\x1d\x19\x69\x2c\x6e\x24\
-\x7f\x10\xea\x7a\xe4\xf5\xa0\x1b\xcd\xce\x45\xd0\x32\xd5\xbc\
-\x31\x0a\xdc\x80\xa4\xc7\x6d\xad\xdb\x1a\xcf\x0a\x5a\x94\x01\
-\x05\x67\x9e\x7a\x67\xbc\xd0\x0d\x3f\x93\xe7\x90\xe6\x9a\x75\
-\x6c\x80\x23\xaa\x6c\x92\xce\x3e\xef\x6a\xaf\xcf\x26\x8a\x0a\
-\xe9\x7d\x6f\xd4\xb2\xac\xf6\x68\xac\x47\xb6\x5b\x95\x19\x96\
-\xd2\x94\xa1\x17\x30\x1c\x09\xc7\xdd\x52\x07\x3e\xfa\x27\xb2\
-\xdf\xe2\x5f\x62\x29\xf8\xdb\xd0\xb4\x1d\xae\xb2\xe0\xc2\xdb\
-\x57\x7e\x0e\x38\xf7\x8c\x8a\xe0\x33\xb4\x4e\x3e\xb4\xeb\x0c\
-\x7f\x89\x0f\xfc\x19\xa3\x8a\x06\xd1\x1f\xda\x8d\x5f\xed\x24\
-\xfc\x3b\x34\x73\x5d\x00\xfe\xb2\xf4\x1c\x6f\x6a\xdb\x7e\x35\
-\x9a\xcf\xd4\x71\x0c\xa7\xe2\xa5\x2b\xda\xa5\x12\x01\xf5\xee\
-\x47\x4c\xf3\xfd\x7f\x31\xa1\xac\xbd\x07\x1b\xda\xb6\xdf\x8d\
-\x66\xb8\xdc\x42\x96\xf4\x70\x95\x6d\x56\x70\x0f\x87\x94\x9e\
-\x99\xe7\xfa\xfe\x74\x00\x6d\xcf\x43\x47\x71\x2e\x3f\x24\x32\
-\xf1\xc1\x38\x53\x03\x93\x57\xd9\xb7\x26\x2d\x95\x44\x23\xc9\
-\x42\x5c\x29\x6d\xb1\x92\x46\x4f\x00\x0c\xe7\xdd\x9a\xde\x97\
-\x11\xe5\x32\xa5\x3b\x2f\x78\x00\xf1\xd9\x81\x9a\xce\x98\xa8\
-\x6d\x28\x3b\x3a\x3a\x64\x30\x88\xce\x6e\x49\x19\x23\x73\xcd\
-\xa4\xa8\x1e\x79\x01\x47\x9c\xfb\xea\x8d\x46\x5e\x94\x1c\xc9\
-\xe3\x87\x8e\x54\x04\x69\xf9\xb7\xdb\x75\xa1\xb8\xad\x69\xd9\
-\xaf\x79\x29\xf2\x9d\x50\x6b\x1e\x48\x18\xc2\xb9\xe9\x57\xb4\
-\xdc\x8b\xd4\x7d\x69\xda\x4a\xb3\xbf\x0e\x3c\xb6\x14\x1e\x51\
-\x21\x68\xdc\x93\x94\x92\xa4\xf0\x3b\xd5\xc1\xef\xcd\x14\x5b\
-\x21\xd8\xe4\x42\x84\x1b\x61\x0b\x8e\x9b\x89\x68\xbe\xf2\x40\
-\x5b\xbf\x64\xa5\x00\x7d\x5b\x88\x18\xf5\x0a\xaa\xd2\x58\x89\
-\x12\x0c\x9b\xb5\xbe\x33\x6f\x99\xe5\xb5\x36\xa8\xe9\x46\xe6\
-\x4a\x70\x49\x4e\x06\x70\x4f\x06\xb1\x6f\xe7\x49\xb4\xab\xe7\
-\x8f\x2e\xdd\xfe\xcd\x1b\x75\x75\x65\xfd\x18\x95\x31\xa9\x35\
-\x32\x9f\x49\x68\x49\xb8\x05\x30\x56\x36\xf6\xa0\x30\xd6\x4a\
-\x73\xe7\x79\xaa\xee\xf0\x3e\x14\x71\x4b\x91\x16\x35\xb3\x5d\
-\xe9\xab\x5b\x08\x6c\xad\x87\x1e\x53\xae\x84\x8d\xca\x2a\x65\
-\xd2\x01\x3d\xe7\x03\x1f\xef\x4c\x6a\xd9\xa7\xcc\xf2\xc5\xb9\
-\x2a\x69\xd1\x46\x48\x28\x3e\x0c\x3d\x5d\x16\x5c\xad\x3c\xa1\
-\x05\x83\x22\x43\x12\xa2\xca\x4b\x21\x40\x17\x03\x32\x1b\x75\
-\x49\x04\x90\x32\x42\x08\x19\x20\x67\x1c\x8a\x14\x7b\x51\xde\
-\x1c\x52\x48\xd1\xb7\x94\x94\xff\x00\x99\x1c\xf5\x07\xfb\xdf\
-\x55\x31\xea\x60\x78\x56\x82\xb1\x68\xbd\x43\x7a\x5f\x9f\xa4\
-\x2f\x47\xf8\xe3\x7e\xad\x67\x5d\x57\x26\xf2\xa6\x95\x2f\x47\
-\x6a\x20\xa6\x81\x09\xec\x66\x32\xd8\xe4\xe7\x90\x1e\xa6\xe6\
-\x07\x85\x4c\x0f\x0a\x8c\xa1\x19\x2a\x92\xb4\x75\x36\x9d\xa1\
-\x25\xf4\x3a\x7f\x07\xea\x9f\xe6\x2d\x7e\xb5\x4f\xa1\xd3\xf8\
-\x43\x54\xff\x00\x31\x6b\xf5\xa9\xdb\x81\xe1\x53\x03\xc2\xab\
-\xdb\xe1\xf6\x2f\xc4\x4b\xa9\x3f\x56\x2c\xfe\x4f\x34\xaa\xd9\
-\xba\x4a\xbb\xdc\x60\xcd\x8c\xe3\x6f\x93\x05\x99\x32\x4a\xcb\
-\x48\x2d\x84\x9c\xe1\x45\x24\xe4\xb9\xd4\xf0\xae\x9d\x19\x95\
-\x2a\x55\x91\x84\x60\xaa\x2a\x88\xb9\x37\xcb\x3f\xff\xd9"
-}
-
-# --------------------------------------------------------------------
-function put_SND_ICON() {
-echo -ne \
-"\x89\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\
-\x52\x00\x00\x00\x0b\x00\x00\x00\x0b\x08\x06\x00\x00\x00\xa9\
-\xac\x77\x26\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\
-\x00\xff\xa0\xbd\xa7\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\
-\x00\x0b\x11\x00\x00\x0b\x11\x01\x7f\x64\x5f\x91\x00\x00\x00\
-\x07\x74\x49\x4d\x45\x07\xd3\x04\x19\x0b\x3a\x3b\x18\x18\xa2\
-\x48\x00\x00\x01\x86\x49\x44\x41\x54\x78\x9c\x63\x36\x36\x37\
-\x62\x10\x11\xe4\x63\x60\xf8\xf7\x9f\xe1\xeb\xb7\xef\x0c\xe8\
-\x20\x35\xda\x2b\xd2\xd1\x58\x5d\xf4\xf8\x85\x5b\x0f\x18\x67\
-\xe7\x87\x70\x32\x32\xfc\xff\xfe\x9f\x81\x81\xe1\x3f\x23\x03\
-\x53\xda\x84\xb5\xff\x60\x0a\x5b\x92\xbd\x95\x8f\xbc\xfc\x7e\
-\x8a\x9b\x83\xf5\xad\x87\x0c\x8f\x36\x23\x86\x51\x50\x30\x21\
-\x2b\x80\x67\xe7\xd3\xcf\x97\x7f\xfd\xff\x27\xc3\xf9\xff\xdf\
-\x77\x2d\x0e\x26\x1f\x26\x6c\x0a\x67\xe7\x07\x33\xed\x7e\xfe\
-\xa5\x8b\x4b\x86\x5b\xfa\xfb\xdf\x5f\x8c\xff\x38\x38\x78\x6f\
-\x73\xb0\x6f\x62\x42\x52\xc0\xc8\xc0\xc0\xc0\x30\x27\x3f\x84\
-\x69\xdb\xc3\x8f\x26\x3c\xb2\xbc\x19\x0f\xef\xdc\x7b\xab\xc8\
-\xce\xcd\x76\x64\xe7\xf1\x33\x7b\x37\x1e\x3b\xca\x38\x3d\x27\
-\x48\x70\xdf\xab\xaf\xdd\xbf\xfe\x33\xea\x2b\x73\x30\xc5\xab\
-\x0b\x72\x3e\x5a\xf5\xf0\xdd\x53\x76\x09\x66\x9e\x63\x2b\x4e\
-\x5b\x7c\xf8\xf8\xf1\x34\x1f\x1f\x9f\x16\x03\x03\x43\x33\x83\
-\xb7\xaf\x73\xcf\xb1\x53\xc7\xfe\xf5\x4d\xef\xfb\xe7\x12\xe8\
-\xf6\xc3\xc6\xc3\x3e\x2e\xb6\x24\xe2\xbf\x84\xa6\xe8\xa3\x39\
-\x50\xdb\x60\x80\xe5\xf3\xdf\xff\x5e\xaf\xde\xbf\x64\xbc\x7a\
-\xeb\x0a\xc3\xbf\x7f\x7f\xd9\xa5\xe5\xc5\xe6\xde\x7d\x74\x8f\
-\x41\xf8\x27\x47\x65\xca\xc4\xb5\xff\x91\x15\x33\x31\xb3\x30\
-\xcc\x6a\x6c\x6c\xfe\x77\xe9\xf4\x65\x86\x67\x0f\x9f\x30\xfc\
-\xfa\xf1\x93\xe5\xf3\xb3\x9f\x5f\x3c\x1d\x0d\x0f\xa2\x7b\x9c\
-\xf9\xc1\xcd\xfb\x27\x84\x05\xf8\xcf\x72\xf2\x70\x8a\xf3\xf3\
-\x70\xff\xfe\xf7\xe9\xeb\x5a\x27\x79\xb1\x72\x55\x7e\xf6\x6b\
-\x9b\x4e\x5e\x47\x31\x19\x12\x02\x05\x21\x1c\x0c\x0c\x0c\x9c\
-\x0c\xff\x19\x58\x18\x18\xfe\x7f\x61\x60\x60\xf8\x81\xee\x04\
-\x06\x06\x06\x06\x00\xb1\xb5\x9b\x5c\xc8\xf8\x64\x33\x00\x00\
-\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82"
-}
-
-
-######################################################################
-######################################################################
-######################################################################
-
-# --------------------------------------------------------------------
-# print program info
-function info() {
-   echo "_____________________________________________________________________________"
-   echo "IIMAGE $VERSION (c) Ronald Schmidt http://www.ronsc.de"
-   echo ""
-}
-
-# --------------------------------------------------------------------
-# print out version
-function version() {
-   echo "Version$SVN_ID"
-}
-
-# Help by Holm Sieber
-#         sieber@prudsys.com
-# --------------------------------------------------------------------
-# syntax help
-function help() {
-cat << EOF
-SYNTAX:
-   iimage [options]
-
-OPTIONS:
-   -v/-V print CVS version
-   -h    print this syntax help
-   -H    print variables description of description file
-   -R    go recursively through subdirectories
-   -U    get current version of iimage from iimage WWW server
-   -D    get developer version of iimage from iimage WWW server
-   -f    force creation of HTML-Files
-   -T    use new templates from iimage (impl. -f)
-   -F    force rebuild of thumbnails (impl. -f)
-   -d    generate sample desciption-file (impl. -u)
-   -u    update image-names in description-file
-   -a    create AUTORUN.INF
-   -s    include iimage-special-php-tags
-
-DESCRIPTION:
-   IImage generates a set of HTML files as index of all images
-   at current directory. The following image types are recognized:
-EOF
-echo "      $FILE_EXTENSIONS"
-cat << EOF
-   IImage creates a directory ".tmp" in which tumbnails and a lot
-   of html files will be created. At current directory index.html
-   will be a start point for viewing the images.
-      IImage uses a file named "description" which contains some
-   options about the images in the same directory. Use "iimage -H"
-   to get a description of the syntax of this file.
-EOF
-}
-
-# --------------------------------------------------------------------
-# syntax description file
-function help_description() {
-cat << EOF
-VARIABLES in FILE "description"
-   order=       order of appearance of subfolders, "accesstime", 
-                "alphabetically" (default) or "dec" or explicit 
-                order, e.g. "folder1 folderb folder7"
-   iorder=      order of appearance of images, "alphabetically" (default), 
-                "accesstime" (oldest picture first), 
-                "dec" (accesstime, newest picture first), 
-                "digicam" (sorts alphabetically but ignores leading 
-                characters), "description" (order as descriptions)" 
-                or explicit order, e.g. "dscn0002.jpg dscn0232.jpg"
-   title=       title of folder (default: dir-name)
-   date=        folder date
-   description= folder description
-   <filename>=  image "filename" title
-   ignore=      files and directories to ignore
-   AUDIODIR=    optional dir for wav-files
-   EXCLUDE_ORGINAL=
-   DISABLED=
-EOF
-}
-
-######################################################################
-######################################################################
-######################################################################
-
-# parse arguments ####################################################
-
-while getopts ":hHvVRUDTfFduas" OPT ; do
-
-   case $OPT in
-      v|V)  # print version
-         version
-         exit
-         ;;
-      f)
-         FORCE=true
-         ;;
-      a)
-         echo -e "[autorun]\nshellexecute=index.html\n" >AUTORUN.INF
-         ;;
-      F)
-         FORCE_TN=true
-         ;;
-      h)    # print syntax help
-         info
-         help
-         exit
-         ;;
-      H)    # print syntax description file
-         info
-         help_description
-         exit
-         ;;
-      R)    # run recursively
-         RECURSIVE=true
-         ;;
-      U)    # update iimage
-         echo "update $0 from http://www.ronsc.de/iimage/iimage"
-         echo OLD `$0 -v`
-         wget http://www.ronsc.de/iimage/iimage -q --cache=off -O $0
-         echo NEW `$0 -v`
-         exit
-         ;;
-      D)    # update iimage
-         echo "update $0 from http://www.ronsc.de/iimage/devel/iimage"
-         echo OLD `$0 -v`
-         wget http://www.ronsc.de/iimage/devel/iimage.gz -q --cache=off -O $0.gz
-         gunzip -f $0.gz
-         chmod 755 $0
-         echo NEW `$0 -v`
-         exit
-         ;;
-      T)
-         FORCE_TEMPLATES=true
-         ;;
-      d)
-         create_description_template
-         update_description_names
-         exit
-         ;;
-      u)
-         update_description_names
-         exit
-         ;;
-      s)
-         IIMAGE_SPECIAL=true
-         ;;
-      ":")    # wrong argument
-         echo -n "ERROR: Missing argument for option \"$OPTARG\". "
-         echo "Use \"iimage -h\" to get more help."
-         exit 1
-         ;;
-      "*")    # wrong option
-         echo -n "ERROR: Unknown option \"$OPTARG\". "
-         echo "Use \"iimage -h\" to get more help."
-         exit 1
-         ;;
-   esac
-
-done
-
-##############################################################
-
-if [ "$DISABLED" != "" ] ; then
-   echo "directory disabled -> exit"
-   exit
-fi
-
-# check for programms ################################################
-
-init_iimage
-
-[ "$RECURSIVE" = "true" ] && iimage_recursive $*
-
-pwd
-
-NEED_UPDATE=false
-diff --brief $DATADIR/ls-l.new $DATADIR/ls-l.old >/dev/null || NEED_UPDATE=true
-[ "$FORCE" = "true" -o \
-  "$FORCE_TN" = "true" -o \
-  "$FORCE_TEMPLATES" = "true" ] && NEED_UPDATE=true
-
-if [ "$NEED_UPDATE" = "true" ] ; then
-   {
-      prepare_dir;
-
-      prepare_images;
-      build_html;
-
-      cleanup;
-
-   } 2>>$DATADIR/errors | tee -a $DATADIR/log
-fi
-
-finish_iimage;
-
-[ -s $DATADIR/errors ] && echo -e "\nWARNING: there were errors. see $DATADIR/errors"
-
-# vim:ai:expandtab:sw=3:ts=3:tw=200