Open History Timeline v1.1

Installation Manual

Setting up the OHT

1. Unpack the files; Place the contents of the cgi-bin directory in the cgi-bin (or a subdirectory) of your web server's cgi-bin (the portion of the server that is allowed to run CGI scripts). Place the contents of the htdocs directory in regular public portion (or a subdirectory) of your website.

2. Load the initial MySQL tables data (init_database.sql). Typically this can be done with the "mysql" command line tool and the "source" command; or else via a web-based interface like phpMyAdmin (you can choose to upload the init_datbase.sql into the database).

3. Ensure that a few key file/directory permissions are set. Scripts (.cgi files) in the cgi-bin directory must all be "world read-executable" (705). In addition two directories in the htdocs folder must be "world read-write-executable" (707). These are the "uploads" and "thumbnails" directories. Uploaded images are placed in "uploads" and the automatically generated thumbnails of these images get created in "thumbnails".

4. Set path and database settings in two places. The key settings file is called "DB_connect.pm" in the cgi-bin directory. Here you need to change the variables that tell the system where the cgi-bin and htdocs directories are located, as well as the various settings needed to connect to the MySQL database. The same database settings also need to be recorded in the file "DB_connect.php" in htdocs. This allows PHP to record information about thumbnail images to the database.

5. View the timeline (cgi-bin/timeline.cgi) to test the connection. Go to "add a question" to go to the login/register page. Register as a new user, a password will be sent to you via email.

6. Use the Editroom (cgi-bin/editroom.cgi) to view the site's "back-end". Use the default editor account: "root" with password "ohtroot" to login. IMPORTANT: Use the editroom to change this root password! Click on "edit users" and click "edit" next to the root account. You can also edit the user account you created in step 5 to be an "editor". Once you've done this, you can use your regular account to log in to the editroom to administer the site. You can repeat this step for any number of users you would like to give access to the editroom.

Summary

LIBRARY REQUIREMENTS

PERL: Mail::Mailer, DBI (DBD::MySQL)
PHP: GD & MySQL support (for thumbnail generation)

MySQL Table Structures (to be "sourced" into the database)
cgi-bin/init_database.sql

Permissions:
chmod 705 cgi-bin/*.cgi
chmod 707 htdocs/uploads
chmod 707 htdocs/thumbnails

Path & Database Settings:
cgi-bin/DB_connect.pm : Key Path & MySQL settings
htdocs/DB_connect.php : Add MySQL settings (again, used to record thumbnail information)

Key URLs:
cgi-bin/editroom.cgi : The editor's "back-end"
cgi-bin/timeline.cgi : The public "front-end"

INITIAL LOGIN
user: "root" with password "ohtroot"

ADDITIONAL NOTES
cgi-bin/templates/about.html : The contents of the about page
Emails sent out to users when they register or request their passwords are defined in cgi-bin/Users.pm.