#!/bin/sh -f

# Make damn cal program understand month names, for chrissake - erco

# CONVERT A MONTH NAME OR NUMBER TO A NUMBER
Month2Number()
{
    case "$1" in 
        01|1|jan|Jan|january)	mo=01;;
	02|2|feb|Feb|febuary)	mo=02;; 
	03|3|mar|Mar|march)	mo=03;; 
	04|4|apr|Apr|april)	mo=04;;
	05|5|may|May)		mo=05;;
	06|6|jun|Jun|june)	mo=06;;
	07|7|jul|Jul|july)	mo=07;;
	08|8|aug|Aug|august)	mo=08;;
	09|9|sep|Sep|september)	mo=09;;
	10|oct|Oct|october)	mo=10;;
	11|nov|Nov|november)	mo=11;;
	12|dec|Dec|december)	mo=12;;
	*)			mo=$1;; 
    esac; 
}

# MAIN
{
    CAL=/bin/cal
    if [ -x /usr/bin/cal ]; then CAL=/usr/bin/cal; fi     # LINUX

    YEAR=`date | awk '{ print $6 }'`

    if [ $# = 0 ]; then 
        $CAL;
	exit 0;
    elif [ $# = 1 ]; then 
        Month2Number "$1"; 
	if [ $mo -gt 12 ]; then 
	    $CAL $1; 
	else
	    $CAL $mo $YEAR; 
	fi;
	exit 0;
    elif [ $# = 2 ]; then 
        Month2Number "$1";
	$CAL $mo $2;
	exit 0;
    fi

    $CAL $*
    exit 0
}
