CalFusion Source Code Description

The CalFusion prototype consists of several major elements, each of which contains multiple files. This description identifies the main source codes files (by directory), and describes if they are new code or modified shareware. (Note: this is not an exhaustive description of every file!)

HyperCal-3.21

The majority of files for the user interface (UI module) and email parser (Web Data / File Management module) can be found in this directory and its subdirectories.

HyperCal is a shareware program (obtained from RCBowen.com) which was modified to create the CalFusion user interface. It consists of a combination of CGI scripts, template files, and a Perl module containing shared functions used in the CGI scripts.

The following files were modified for CalFusion:
Hypercal.pm (Perl module containing shared functions)
index.cgi (main HyperCal CGI script)

Two new HTML files were created for the frames implementation:
calendar.html
startup.html

HyperCal-3.21/datafiles

This directory contains various text data files and associated lock files, and also contains the parser scripts:

parser.pl (Perl script which reads email accounts and stores messages in output files)
periodic_script (shell script used to implement periodic read function for prototype)

calfusion.config is the configuration file which specifies the email accounts to be read by the parser script; for the currently configured accounts, the output files are Fun.out and Speakers.out. In addition, a log file which is updated by the parser (calfusion.log) is stored in this directory.

HyperCal-3.21/templates

The following HyperCal HTML templates were modified for CalFusion:
hypercal.html
month_view.html
display.html

In addition, the following new template file was created to support displaying the full text of the email:
email_display.html

This directory also contains a stylesheet and a number of GIF files used in the user interface.

alien_form

This directory contain the files used for the send function (obtained from Jon's CGI-scape).

The following files were modified for CalFusion:

af.cgi (CGI script which provides form-to-email function; minor changes made for configuration and debugging only)
send_af.html (CGI form for CalFusion email; essentially new but using alien-form convention for substituting data into fields as shown in sample file orig_files/email.txt)
af_email.txt (template for email message; modified to include CalFusion field)
af_output.txt (template for HTML display after message is sent; added back link)

POP3Client-2.7

This directory contains Perl library files (obtained from CPAN) used to read email. No files in the library were modified. (Test files located in the subdirectory POP3Client-2.7/t were used in development but are not used in the prototype.)

Time-modules-100.010301

This directory contains Perl library files (obtained from CPAN) which are required by HyperCal for data manipulation functions. No files in this library were modified.