#!/bin/sh -
umask 077

bakdir="$HOME/tmp"	# save copy of mbox's here in case of problems

# mebrowse - browse and delete my personal browseable mailboxes
# Steve Kinzler, steve@kinzler.com, Nov 09/Dec 13/Feb 15
# https://kinzler.com/me/home.html#web

case "$#,$1" in
*,-h)		echo "usage: $0 [ host ] [ sleep ]" 1>&2; exit 1;;
0,*|*,[0-9]*)	host=;;
*)		host="$1"; shift;;
esac
case "$1" in
[0-9]*)		sleep="$1";;
*)		sleep=;;
esac

#et x "`mailaudit -b`"
set x "$HOME/work/#__BROWSE.mbox" "$HOME/work/#_esoteric.mbox" \
      "$HOME/work/#_tech.mbox"

shift; did=; n=1
for mbox
do
	bak=
	if test -n "$bakdir" -a -d "$bakdir"
	then
		# NOTE: assuming $bakdir/mebrowse* being cleaned up elsehow
		bak="$bakdir/mebrowse$$-$n"
		n=`expr $n + 1`
	fi

	case "$host" in
	'')	test -f "$mbox"	|| continue
		did=t
		mimebrowse "$mbox"
		test -n "$bak" -a -s "$mbox" && cat < "$mbox" > "$bak"
		rm -f "$mbox";;

	*)	tmp=/tmp/mb$$; trap "rm -f $tmp; exit" 0 1 2 13 15
		ssh "$host" -n cat "'$mbox'"\; rm -f "'$mbox'" 2> $tmp |
			case "$bak" in ?*) tee "$bak";; *) cat;; esac |
			inbrowse -w
		test -n "$bak" -a ! -s "$bak" && rm -f "$bak"
		test -s $tmp || did=t;;
	esac
done

test -n "$did" -a -n "$sleep" && exec sleep "$sleep"
