What you need to start.
course/control requires a webserver that supports PHP. It has been tested on Apache on Linux (although it should work on any system that runs Apache/PHP), and Xitami and IIS on Win2K. Until the MySQL port is finished, Windows systems aren't recommended because installing PostgreSQL in Cygwin can be a little frustrating. If your system already has a working Cygwin PostgreSQL installation, then it should work fine. Which brings us to our second requirement:
A Relational Database Management System (RDBMS):
PostgreSQL (version 7.2 or greater) is currently the only supported RDBMS, although the MySQL port shouldn't take too long. In the future, I would like to see ports to other RDBMSs, but, since I don't have access to any commercial dbs (and feel it is sort of outside the scope of what I'm personally trying to do), I will be unable to actually do this. Still, I can see the utility of course/control running in SQLServer or Oracle.
Since 99% of course/control is written in PHP, this is a fairly important prerequisite. You must have at least version 4.2.0. It's written with the assumption that Register Globals = off. If you don't understand that, don't worry about it.
Some Authentication Mechanism:
course/control includes no authentication mechanism of its own. Since it's impossible to predict the needs of every (or any) institution, authentication will remain detached from the program itself. The course/control username is based on the $_SERVER["REMOTE_USER"], so any Basic Authentication should work.
Optional Things that make course/control better:
Although these aren't “requirements”, per se (meaning the basic functionality of course/control would still exist without them), there would be modification needed to implement course/control without them.
This is probably the easiest to live without. What is really needed are the libs to compile into PHP. If you don't run LDAP as your directory service at your institution, however, there is very little point in using it. If whatever type of directory service you do use is available though PHP, I would recommend using it instead.
Yaz is a set of Z39.50 libraries. Since almost any Integrated Library System (ILS) has a Z39.50 interface, this is the easiest way to provide interaction between course/control and your catalog. If you plan using course/control as a standalone system, with no interaction with your catalog, then nevermind this feature. course/control will require a lot of modification to leave out Z39.50.
Fax Server Daemon:
A real crowd pleaser is for faculty to be able to fax a document to the server and be able to immediately add it to their course listing as a pdf. Any fax server will do, although included with course/control is a faxrcvd perl script for Hylafax (our personal favorite) that will convert your incoming fax from tiff to pdf and rename the file so course/control can identify it later. If you have no fax/modem or no phone line or just plain don't want faculty to fax to your system, this functionality can be left out rather easily.
course/control News and Announcements
course/control User's List
Last Modified: October 1, 2002 by Ross Singer