#include <stdio.h>
#include <sys/time.h>

#include "structs.h"

char filename[50];

#define MAXMONTHS 100
#define W_SUCCESS 0
#define W_BADENTRY 1
#define W_FILE 2

extern char *suffix();
extern char *month();

events = NULL;
int y, m, d;

showDay( yr, mn, dy )
int yr, mn, dy;
{
  static int y = 0, m = 0, d = 0;
  static simpleEvent *simp;
  static int numitems = 0;
  static simpleEvent *itemarray[50];

  simpleEvent *ptr;
  char *str;
  char ststr[20], endstr[20];
  char temp[500];
  int w;
  int i, j, pos, last;

  if ( y != yr || m != mn || d != dy )
    {
      y = yr; m = mn; d = dy;
      if ( simp != NULL )
	freeSimple( simp );

      simp = cvtEventToSimple( events, y, m, d );
    }

  sprintf( temp, "%s %d%s, %d", month( m ), d, suffix( d ), y );

  for ( i = 0; i < ( 80 - strlen( temp ) )/2; i++ )
    fprintf( stdout, " " );

  fprintf( stdout, "%s\n\n", temp );

  ptr = simp;
  while ( ptr != NULL )
    {
      if ( ptr->info->desc != NULL )
	{
	  w = index( ptr->info->desc, '\n' ) - ptr->info->desc;
	  if ( w < 0 )
	    w = strlen( ptr->info->desc ); /* 500+ dies; bug */
	  timeToStr( ptr->starttime, ststr );
	  timeToStr( ptr->endtime, endstr );
	  fprintf( stdout, "%s - %s   %.*s\n",
		  ststr, endstr,
		  w, ptr->info->desc );

	  ptr = ptr->next;
	}
    }
}

int command()
{
  return 0;
}


main(argc,argv)
int argc;
char **argv;
{
  struct timeval time;
  struct tm *timestr;
  int n;
  char *str;

/*
 * File stuff
 */
  sprintf( filename, "%s/.tc", getenv( "HOME" ) ); /* errors... */

  addFileToEvents( filename, &events ); /* put error stuff here */

  gettimeofday( &time, NULL );
  timestr = localtime( &time.tv_sec );
  m = timestr->tm_mon + 1;
  d = timestr->tm_year + 1900;
  y = timestr->tm_mday;
  showDay( d, m, y );

  while ( command() );
}
