Introduction to WebDB
[ TOC ]
[ TOC ]
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 ]
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 ]
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 ]
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 ]
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 ]
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 ]
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 |
|