The Macro Code

[ CVS ]

Preface:

The macrophile web-page is a mix of dynamic and generated web-pages that utilize an underlying set of code that was and is written by Bennie for the purpose of making this a cohereant and seamless community-oriented site.

After much debate, it was chosen that it was in the best interest of furthering the community to lift up the hood, so to speak, and allow folks to view the ugly underpinnings and engine that runs this place if they are so inclined.

General Information:

Macrophile.com is predominately authored in Perl making use largely of it's Database interface (DBI), templating system (HTML::Template), HTML authoring module (CGI), and it's Object Oriented routines.

Some sections of the site run with different programs that have been altered or configured to work seamlessly with the rest. The best example is that the disocussion board is a program called Phorum, that is written in PHP and is freely available. The other fragment is that the CVS repository web interface is a piece of freeware as well.

More soon...

Directory structure

The code for the generation of this website resides (rather appropriately) in the code/ directory.

Within that directory there are the following directories:

  • cron/ - Where the scripts that run as cron jobs to do nightly checking and updating reside.
  • dbload/ - Where the source file for the non-dynamic pages are and where they can be loaded into the database from, using the loader.pl script.
  • ftp/ - where the scripts that create the visual FTP-index reside.
  • main/ - where the scripts that preprocess and and assembled all the final web pages for the site reside.
  • tmpl-fix/ - where the scripts that hack the tempaltes design into the other sections of the site (such as the discussion board) reside.

Additionally there are the following files:

  • Macro.pm - The big badass library that all of the scripts use to interface the database and reduce code duplication.
  • change.pl - A simple script I use to input new records into the change log.
  • cvsweb.cgi - The script that produces the visualized CVS repository used throught this explanation.
  • macrodb.sh - A simple shell script that dumps the database to a file for backup.
  • macrodb.sql - The flat-file dump of the database produced by the script mentioned above.
  • useradd.pl - A script to input new users and information into the database for new folks who are on macrophile.com

more soon...


Usage of this site is goverend by the AUP
© 1997-2022, Crescendo Communications
Last generated 2011-04-12 20:56:00
<bennie @ macrophile.com>
Welcome !