#!/bin/sh

# Shows the date for "fri week" or "mon last" for e.g.

# License: LGPLv2

Usage () {
    echo "Usage: `basename $0` mon|tue|... [next]|week|last" >&2
    exit 1
}

[ "$#" -eq "0" ] && Usage

day=$1
which=$2
[ -z "$which" ] && which=next

case $which in
week)
    if [ `date +%D` = `date --date="next $day" +%D` ]; then
        weeks=+2 #assume we want the next week, not today
    else
        weeks=+1
    fi ;;
last)
    weeks=-1;;
next)
    if [ `date +%D` = `date --date="next $day" +%D` ]; then
        weeks=+1 #assume we want the next week, not today
    else
        weeks=+0
    fi ;;
*)
    Usage;;
esac

date --date="$day $weeks weeks" +%x