key = year-month , value = day::(either rented, open or closed) 2005-jan => 11::rented 2005-jan => 12::rented 2005-jan => 13::open #### use Calendar::Simple; print header, start_html("test"); my @months = qw(January February March April May June July August September October November December); my $mon = shift || (localtime)[4] + 1; my $yr = shift || ((localtime)[5] + 1900); my @month = calendar($mon, $yr); print qq(); print ""; foreach (@month) { print map { "" ? sprintf "%2d ", "$_" : '   ' } @$_; print ""; } print "
Su Mo Tu We Th Fr Sa
$_
";