/*
##################################################
#
# Filename..........: $RCSfile: index.php,v $
# Original Author...: Anthony L. Awtrey
# Version...........: $Revision: 0.1 $
# Last Modified By..: $Author: aawtrey $
# Last Modified.....: $Date: 2006/09/19 04:17:55 $
#
# Copyright 2006 Anthony Awtrey
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
*/
$inc_dir = 'include';
while (!is_dir($inc_dir)) {
$relpath .= '../';
$inc_dir = $relpath . 'include';
if ($relpath == '../../../../../') { $relpath=''; break; }
}
$include_path = ':' . $relpath . 'include';
ini_set("include_path", ini_get("include_path").$include_path);
require_once("master.inc");
$page = new Page();
$page->title = "Documentation Overview";
$page->description = "This page provides an overview of the code that makes up this site.";
$page->content = <<
Here is a description of the way pages are generated using my approach.
This description covers simple pages, but the content may include other objects which generate content such as HTML forms, bible verses, calendars or other kinds of special content. These objects will be covered in their own section.
Some objects can provide complete, abeit simple, applications as well. For example, using the basic components to provide the simple template and form generation I have written objects that act as a shopping cart, a web log, a photo album viewer and a news article library. This application will include many of these small extensible applications to meet its goals.
The first of two objects has already been created to handle searching and presenting bible verses from an various translations of the Bible stored in XML. PHP5 provides access to a fast, simple XML processing library that can dynamically load, process and display specified verses very quickly.
The second object calculates the lectionary dates in a given calendar year. It is not complete, but the basic calendar calculations work. This will be the heart of the worship planning calendar and will help make suggestions for lectionary verses based on the Revised Common Lectionary.
The Hymn catalog will need to be compiled or acquired from the Presbyterian Church and an object will be created to manage searching for hymn references, titles and other indexes. This should be general enough to allow other hymn catalogs to be added in the same way the bible object supports multiple versions of the bible.
The anthem catalog will be a fairly straight-forward database application which will support searching by various indexes. The fact that it will be available on the web means that a large music library can be broken down and entered by the whole choir, reducing the burden on the designated librarian. I will also be creating various importers to help get any existing data stored in other programs into this application.
The menu on the left will provide a more technical overview of the objects that make up the application. The examples are probably sufficient for experienced developers already familiar with PHP and basic coding style, but new developers may want to keep a few reference sites handy with looking at the code.