eXtropia: the open web technology company
Technology | Support | Tutorials | Development | About Us | Users | Contact Us
Free support
 ::   Support forums
 ::   Frequently asked questions
 ::   Functional Specifications
 ::   eXtropia Tutorials
 ::   Books by eXtropia
 ::   Other books
 ::   Offsite resources
eXtropia WebDB Documentation

Introduction to WebDB


[ TOC ]
[ TOC ]

Overview

Welcome to WebDB, eXtropia's Web-based Database Management software. WebDB allows you to quickly and easily set up simple databases for the web. It's simple model lends itself well to 90% of databases that are put on the web without customization of the Perl code. This flexibility is demonstrated in this model as we provide sample news application, project tracker, inventory manager, and address book as sample applications based on the WebDB template.

In fact, WebDB is a bit different from most other eXtropia applications. There really is not such thing as a webdb.cgi. Frequently, you, the user, will decide what type of database WebDB should be (eg an addressbook) and then modify the configuration parameters in webdb.cgi to fit your requirements. At this point, you would rename webdb.cgi to reflect your application (eg address_book.cgi).

    NOTE: webdb.cgi consists solely of configuration parameters. It contains NO code logic. Logic is contained in a module called WebDB.pm which we discuss later. Thus, webdb.cgi is actually a configuration file that doubles as the executable the web server uses to launch the application. Changing the settings and renaming it to something like "address_book.cgi" does not hinder us from providing you with application updates to the core WebDB.pm module.

This guide is meant to walk you through installing, configuring, and customizing WebDB. Most of you will be able to unpack the application and run it on your server after setting the appropriate file permissions.

In addition, since we recognize that all the eXtropia WebWare2 applications follow a similar design, we have also heavily referenced an extremely detailed eXtropia Applications Guide which we describe in the Further References chapter.

[ TOC ]


Acknowledgements, Incentives, and Credits

eXtropia applications are open source applications (http://www.extropia.com/open_source_case_study.html). As such, the applications we've written are not just the result of a single group of people at eXtropia -- rather we rely on the entire open source community for feedback on both the code and documentation.

[ TOC ]


Where to Find The Credits...

The Further References chapter at the end of this guide acknowledges some of the people who have helped make this guide and the software that it describes possible. Right off the bat, we simply have to acknowledge Stas Bekman's Documentation Creation generator for creating the HTML and PDF version of this documentation from a simple set of POD files!

[ TOC ]


How To Get Credit: Documentation

The best way to get your name in there is to offer us suggestions to improve this documentation. Also, we do not intend this to be the only documentation for WebDB. We realize that different people have different ideas of how to approach learning software.

To that end, we would welcome links to any alternative documentation including documentation that may be translations of this or other guides to other languages. We love supporting this stuff *globally* and we love to see alternate language support grow. Over the past six years the eXtropia team has been located in USA, Europe, and as you read this, in Asia's information hub, Singapore.

[ TOC ]


How To Get Credit: Programming/Community

As with other open source communities, we also welcome additions, suggestions, and cool hacks (http://www.extropia.com/hacks/) to the software originated at eXtropia. The more we incorporate from you, the better our software will be.

[ TOC ]


How To Read This Guide

At first glance, you might think there is a lot to this guide. The PDF version is over 60 pages long. However, we feel that it is currently organized in a way that the most people will benefit.

Basically, we wrote the guide in the most verbose manner possible so that all the information you need could be provided in one place. However, we also realize that you have better things to do than read documentation, so our organization of this guide reflects this.

If you are already familiar with eXtropia applications, you should be able to skim through the the chapter on installation and set up the application pretty quickly. If you are completely new at the process, we suggest that you also pick up a copy of the eXtropia Applications Guide described in Appendix A: Further References.

Chances are good that you may actually fall into more than one of these or in-between, so we'll leave it up to your best judgement about how you should read the guide. To help you decide which sections would be most useful to read, we have abandoned our practice of distributing huge read me text files and instead have fully hyperlinked HTML pages and PDF files which include hyperlinked table of contents. Enjoy!

[ TOC ]


What's Included in WebDB

As we stated before, WebDB is not is not an application by itself. Rather it is an enabler that allows you to create applications with it. A WebDB application is nothing without a database behind it; your database is your application!

To demonstrate this, we have distributed four sample configurations of WebDB contained in news.cgi, project_tracker.cgi, inventory_manager.cgi, and address_book.cgi. Note that eXtropia applications are Object-Powered. This means that the WebDB logic is not inside of the CGI script. The CGI script merely sets up configuration variables unique to your environment and requirements and then subsequently calls the WebDB object to configure and run it.

The following describes these sample applications in greater depth:

  • address_book.cgi

    The Address Book can be used to track friends, family, as well as business contacts. Nearly every organization with an Intranet has an on-line internet address book.

  • project_tracker.cgi

    The Project Tracker allows you to track projects, their status, and the various relationships that effect a projects delivery. Some additional features are enabled such as the capability to color projects based on their status. An overdue project can go into the red zone!

  • news.cgi

    The News application allows you to post and read news articles. Useful for a web site to manage the news items that it displays. It can also be used as an extremely simple groupware tool where a sales force can occasionally update news of what is going on in their areas. There is an administrative script as well.

  • inventory_manager.cgi

    The Inventory manager is useful for managing the contents of a web store database. You can also use it to track collections such as CD collections and whatever else you might be interested in.

  • recruit.cgi and recruit_admin.cgi

  • guestbook.cgi

  • bbs.cgi

    There are many uses for a bulletin board system on the Web. A ``BBS'' can be used to make information continually available that would normally be shared only during infrequent meetings. Within a BBS, users can discuss topics, reading the responses to their ideas at their leisure. On the Internet, vendors can use a BBS to discuss their products or offer technical support. Additionally, users on the Internet can set up a BBS spontaneously to discuss things that interest them or just for fun. The main feature of WebBBS is that it allows a user to post messages as well as post replies to existing messages. WebBBS keeps track of which messages are posts and which ones are replies and displays them in a hierarchical tree-like fashion.

  • bug_tracker.cgi

    BugTracker is a useful tool for programmers of all types and experience levels. Make sure your projects stay on track by keeping track of bugs and feature requests. Many clients now require a listing of such bugs. BugTracker is a must for all software projects.

  • comment_form.cgi

    Allows a user to enter comments and send it via email to the administrator. The comments are also saved to the administrator's choice of database.

  • doc_manager.cgi

    Document Manager is ideal for tracking and using documents when on the go. Useful for coordinating files among a decentralized team.

  • expense.cgi and expense_admin.cgi

    A great tool for the office manager to help control expenses while maintaining an easy to use listing of all expense requests. Permits approval and data tallying.

  • jump_form.cgi

    A simple script that takes a listing of URLs and permits the user to be redirected with a click of a button.

  • mlm.cgi (Mailing List Manager)

    Allows list users to add and remove themselves as well as enter in posts for approval.

  • survey.cgi and survey_admin.cgi

    Ever want to find out what your users are interested in? Here's your chance! Allows easy customization to ask questions of all sorts while emailing it to the administrator and maintaining a database of the information.

  • tell_a_friend.cgi

    Allow users to send email to a friend with a preset link based on where the user came from. Can also keep track of who is doing what.

  • todo.cgi

    A To Do List! Enter in your tasks to help manage your day and projects.

  • webcal.cgi

    A very powerful groupware calendar system designed for a network of professionals over a wide area network. Permits user authentication, Day, Month, Year views, event spanning, and recurring events.

Enjoy!

The eXtropia Team [ TOC ]


[ TOC ]


[ TOC ]
Master Copy URL: http://www.extropia.com/support/docs/webdb/
Copyright © 2000-2001 Extropia. All rights reserved.
[ TOC ]
Written by eXtropia.
Last Modified at 11/09/2001