#!/bin/sh

# $Id: screenshot.sh,v 1.1.1.1 2003/10/04 16:01:42 karsten Exp $

#  Author Mail URL : Karsten Kruse tecneeq@gmx.net http://www.tecneeq.de/
#  URL             : http://www.tecneeq.de/
#  Firstrelease    : 08.Feb.2001
#  Lastmodified    : 18.Nov.2002
#  Needs           : convert, import, display from Image Magick
#  Copyright       : (C) 2001 by Karsten Kruse tecneeq@gmx.net

lockfiledir=/tmp
outdir=/home/karsten/webs/tecneeq/screens
archivedir=/home/karsten/backup/oldscreens
aftershot_cmd="mktecneeq"

[ -d $lockfiledir ] || $( echo >&2 "lockfiledir $lockfiledir not found" ; exit 1)
[ -d $outdir ] || $( echo >&2 "outdir $outdir not found" ; exit 1)
[ -d $archivedir ] || $( echo >&2 "archivedir $archivedir not found" ; exit 1)
[ -f ${lockfiledir}/screenshot.lock ] && $( echo >&2 "${lockfiledir}/screenshot.lock, remove it" ; exit 1)
touch ${lockfiledir}/screenshot.lock || $( echo >&2 "cannot create lockfile" ; exit 1)

# move old files to archivedir
case `uname -s` in
  Linux)  stamp=`stat -c %Y ${outdir}/latest.png` ;;
  NetBSD) stamp=`stat -f %m ${outdir}/latest.png` ;;
  *) echo "i dont know your stat syntax" ; exit 1 ;;
esac

[ -f ${outdir}/latest.png ] && mv ${outdir}/latest.png ${archivedir}/${stamp}-latest.png
[ -f ${outdir}/latest_mini.jpg ] && mv ${outdir}/latest_mini.jpg ${archivedir}/${stamp}-latest_mini.jpg

import -window root -depth 8 -quality 100 ${outdir}/latest.png
convert -geometry 20%x20% ${outdir}/latest.png ${outdir}/latest_mini.jpg

if [ -n "$DISPLAY" ] ; then
  display -geometry 640x480 ${outdir}/latest.png &
fi

$aftershot_cmd

rm ${lockfiledir}/screenshot.lock
echo -e "\a"

# eof
