#!/bin/bash
if [ -z $USER ]; then
	echo "\$USER isn't set."
	exit
fi

if [ -z $EMAIL ]; then
	echo "\$EMAIL isn't set; no mail address will be logged."
else
	MAILLOG=" <$EMAIL>"
fi

if [ -z $REALNAME ]; then
	REALNAME=`grep $USER /etc/passwd | awk -F : '{print $5}' | awk -F , '{print $1}'`
fi

TMPF="changetmp-$$"

echo "`date +'%Y-%m-%d'`  ${REALNAME}${MAILLOG}" > $TMPF
echo '	' >> $TMPF

cp $TMPF .${TMPF}.orig

${EDITOR:vi} +2 $TMPF

diff $TMPF .${TMPF}.orig > /dev/null
if [ $? = 0 ] ; then 
	echo Nothing logged.
	rm $TMPF
else
	echo Logged:
	cat $TMPF

	# back up ChangeLog
	[ ! -d .backups ] && mkdir .backups
	cp ChangeLog .backups/ChangeLog-`date +'%Y-%m-%d-%H:%M:%S'`
	
	# append existing ChangeLog
	cat ChangeLog >> $TMPF
	mv $TMPF ChangeLog
fi

rm .${TMPF}.orig

