#! /bin/bash
# Last edited on 2009-12-31 17:40:54 by stolfi

# Should create files "p.sizes" in each directory, and use them...

export PATH="${STOLFIHOME}/EXPORT/images/tools/bin:${PATH}"

# === MOVING THE ORIGINAL IMAGES TO THEIR CANONICAL DIRECTORIES ==================
# *** IMPORTANT PARAMETERS *******************************************************
today="2009-12-27" # Date when this script was executed.
junkthem=0         # Set this to 1 to move all images to JUNK
testonly=0         # If 1 just prints the commands without executing.

function mov() {
  sdir="$1"; shift  # Directory of source image name.
  snum="$1"; shift  # Variable part of source image name.
  pdir="$1"; shift  # Parent diretory of destination image directory.
  dnum="$1"; shift  # Variable part of destination image directory.
  when="$1"; shift  # Date and time image was taken.
  who="$1"; shift   # Who took the photo.
  cam="$1"; shift   # Device used to produce the image.
  keep=$1; shift    # 1 to keep image, 0 to junk it.
  siz="$1"; shift   # Resize parameter for "convert". 
  rot="$1"; shift   # Rotation parameter for "convert".
  ops="$1"; shift   # Image quality codes (e.g. "(ZCT)"; see below).
  cmt="$1"; shift   # Contents to place in "p.comments". 

  # (J) Junk it.
  # (K) Keep it

  # (N) needs no rotation.
  # (R) needs rotation by 90 degree ccw
  # (Z) needs a lot of cropping 
  # (C) needs non-trivial color correction

  # (S) sharp and good enough to remain as JPEG original size.
  # (P) sharp, convert to PNG with reduction to 2/3 of original size.
  # (H) lightly blurred, needs reduction to about 1/2(???) size.
  # (T) lightly blurred, needs reduction to about 1/3(???) size.
  # (Q) blurred, needs reduction to about 1/4(???) size.
  # (U) too blurry, unusable.
  
  sfile="${sdir}/${snum}"
  ddir="${pdir}/${dnum}"
  dfile="${ddir}/orig.png"
  cmtfile="${ddir}/p.comments"
  
  printf "%s\n" "--- ${sfile} --> ${dfile} ---"
  
  aut="Photo taken ${when} {by ${who}} with ${cam}"

  if [[ testonly -ne 0 ]]; then
    echo "convert ${sfile} -resize "${siz}" -rotate "${rot}" ${dfile}"  >&2;
    echo "${cmt}." | fmt --split-only  >&2;
    echo "${aut}." | fmt --split-only  >&2;
    return
  fi
  
  if [[ ${junkthem} -eq 0 ]]; then
    if [[ ${keep} -eq 0 ]]; then
      echo '!! image skipped'  >&2;
      return
    fi
    # Create a directory for image:
    if [[ ! -d ${ddir} ]] ; then mkdir -p ${ddir} ; fi
    # Create the comments file:
    echo "${cmt}." | fmt --split-only > ${cmtfile}
    echo "${aut}." | fmt --split-only >> ${cmtfile}
    cat ${cmtfile}  >&2;
    # Create the "orig" image file:
    convert ${sfile} -resize "${siz}" -rotate "${rot}" ${dfile}
    ls -l ${dfile}
    display -title "${dnum}/%f" ${dfile}
  else
    if [[ ! -d ${jdir} ]] ; then mkdir -p ${jdir} ; fi
    mv -vi ${sfile} ${jdir}
  fi
}

# Source templates

temp="${STOLFIHOME}/EXPORT/images/temp"
ptmp="${STOLFIHOME}/EXPORT/images/photos/TEMP"

# Destination templates

dtri="${STOLFIHOME}/EXPORT/images/photos/animals"
drsa="${STOLFIHOME}/EXPORT/images/photos/events/2008-04-sand-phd"

dmug="${STOLFIHOME}/EXPORT/images/photos/people"
even="${STOLFIHOME}/EXPORT/images/photos/events"
misc="${STOLFIHOME}/EXPORT/images/photos/misc"
land="${STOLFIHOME}/EXPORT/images/photos/landscapes"
capa="${STOLFIHOME}/EXPORT/images/photos/figures/covers"
plan="${STOLFIHOME}/EXPORT/images/photos/plants"

nada="/dev/null"

export jdir="${STOLFIHOME}/EXPORT/images/JUNK/processed/${today}"

# === CONVERTING ORIGINAL IMAGES TO THE RAW PPM FILES ==================
export cvt=( tools/bin/convert-and-crop-original-images -show )

${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1999-santista/35/orig.jpg
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1999-santista/37/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/43/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/20/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/22N/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/11/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/29/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/34/orig.jpg
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1999-santista/41/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/23/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/27/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/39/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/17/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/12/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/45/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/28/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/01/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/32/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/02/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/25/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/14/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/15/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/13/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/26/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/21/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/38/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/40/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/44/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/42/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/24/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/04/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/18/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/36/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/30/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/19/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/16/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/33/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/08/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/09/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/31/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1999-santista/10/orig.jpg
       
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1997-sunsite/06/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/03/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/07/orig.jpg
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1997-sunsite/05/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/11/orig.jpg
${cvt[@]} -crop   0   0 1000 1400  -size 1000 1400 photos/events-ic/1997-sunsite/01/orig.jpg
${cvt[@]} -crop   0   0  425  595  -size  425  595 photos/events-ic/1997-sunsite/02/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/04/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/08/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/09/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-sunsite/10/orig.jpg
      
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/06/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/03/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/07/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/05/orig.jpg
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1997-posse/11/orig.jpg
${cvt[@]} -crop   0   0  791  565  -size  791  565 photos/events-ic/1997-posse/23/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/12/orig.jpg
${cvt[@]} -crop   0   0  500  700  -size  500  700 photos/events-ic/1997-posse/22/orig.jpg
${cvt[@]} -crop   0   0  653  325  -size  653  325 photos/events-ic/1997-posse/01/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/02/orig.jpg
${cvt[@]} -crop   0   0  826  590  -size  826  590 photos/events-ic/1997-posse/21/orig.jpg
${cvt[@]} -crop   0   0  700  280  -size  700  280 photos/events-ic/1997-posse/04/orig.jpg
${cvt[@]} -crop   0   0  504  756  -size  504  756 photos/events-ic/1997-posse/08/orig.jpg
${cvt[@]} -crop   0   0  640  320  -size  640  320 photos/events-ic/1997-posse/09/orig.jpg
${cvt[@]} -crop   0   0  756  504  -size  756  504 photos/events-ic/1997-posse/10/orig.jpg

exit 0