diff options
Diffstat (limited to 'src/cgg-dirgen')
| -rwxr-xr-x | src/cgg-dirgen | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/cgg-dirgen b/src/cgg-dirgen index 0df3943..4cff755 100755 --- a/src/cgg-dirgen +++ b/src/cgg-dirgen @@ -23,6 +23,8 @@ PREVIEW_PATH="preview" NO_FULLSIZE="no" EXT_THUMB="no" EXT_THUMB_PATH="thumbnails" +EXT_EXIF="no" +EXT_EXIF_PATH="exif" print_help() @@ -37,6 +39,8 @@ print_help() echo " - deprecated, use global <nofullsize /> tag" echo " -t, --thumbnails [dir] Use supplied thumbnails" echo " - takes optional [dir] argument (default=\"thumbnails\")" + echo " -e, --exif [dir] Use external EXIF data (.exv file extension)" + echo " - takes optional [dir] argument (default=\"exif\")" } @@ -64,6 +68,14 @@ while [[ $1 = -* ]]; do shift fi ;; + -e|--exif) + EXT_EXIF="yes" + shift + if [[ ! $1 == -* && ! "x$1" == "x" ]]; then + EXT_EXIF_PATH="$1" + shift + fi + ;; -h|--help|-\?) print_help; exit @@ -93,10 +105,12 @@ XML_HEADER_STOP for i in `find -L . -maxdepth 1 -type f -iname '*.jpg' -or -iname '*.jpeg' -or -iname '*.gif' -or -iname '*.png' | sort`; do INCL=""; + INCL_AFTER=""; if [[ ${PREVIEW} == "yes" ]]; then INCL=" preview=\"${PREVIEW_PATH}/`echo $i | cut -b 3-`\""; fi if [[ ${EXT_THUMB} == "yes" ]]; then INCL+=" thumbnail=\"${EXT_THUMB_PATH}/`echo $i | cut -b 3-`\""; fi if [[ ${NO_FULLSIZE} == "yes" ]]; then INCL+=">\n <nofullsize /"; fi - echo -e " <item src=\"`echo $i | cut -b 3-`\"${INCL}>\n <title> </title>\n <title_description> </title_description>\n </item>\n"; + if [[ ${EXT_EXIF} == "yes" ]]; then INCL_AFTER+=" <metadata>\n <external_exif src=\"${EXT_EXIF_PATH}/`echo ${i%.*}.exv | cut -b 3-`\" />\n </metadata>\n"; fi + echo -e " <item src=\"`echo $i | cut -b 3-`\"${INCL}>\n <title> </title>\n <title_description> </title_description>\n${INCL_AFTER} </item>\n"; done cat << XML_FOOTER_STOP |
