documentation changes

This commit is contained in:
david 2002-05-21 03:45:22 +00:00
parent 67c98c0952
commit 41903c1b18
2 changed files with 52 additions and 27 deletions

View File

@ -22,8 +22,10 @@ Anyone may browse and search the database, however only registered users can
make changes to the database at this time.
Each user is recorded in the `username' table. If the 'admin' field is 't',
the user may alter anything in the database. If the document_user table also
has a record for that user, the user may edit those documents.
the user may alter any document information in the database. If the 'sysadmin'
field is set to 't', the user may also alter system data, such as
configuration records. If the document_user table has a record for a user,
the user may edit those documents and their meta-data.
Admins may add new maintainers and documents.
@ -39,36 +41,16 @@ including user and document administration.
Architecture
------------
Lampadas is implemented as a set of Perl scripts that generate web pages
through the Common Gateway Interface (CGI). These scripts depend upon a Perl
module called 'Lampadas', which is implemented in 'Lampadas.pm'.
Lampadas is implemented as a set of Python modules. See the documentation
in /lampadas/pylib/doc/ for information about the Python libraries.
The data is stored in a PostgreSQL database for scalability and speed.
The goal is to eventually provide support for mod_perl as well as additional
The goal is to eventually provide support for mod_python as well as additional
databases.
Nicolas Chauvat is working on a Python port which is not yet functional.
Requirements
------------
Lampadas requires several Perl modules to be installed and working
properly. All of these modules are available from the Comprehensive Perl
Archive Network (CPAN) at http://www.cpan.org.
See Makefile.PL for a list of required modules.
To install a Perl module, type 'perl -MCPAN -e shell' to get a CPAN shell,
then type 'install <module>' to install each module. For more information, see
CPAN's website or your Perl documentation.
Lampadas also requires the following external programs:
file
grep
head
The LDP Database, upon which Lampadas is based, was written in Perl.
We are working on a Python conversion which is not yet functional.
System Variables

43
LDP/lampadas/TODO Normal file
View File

@ -0,0 +1,43 @@
Lampadas TODO List
------------------
Add an item, or claim an item by adding your name...
Guylhem wants to be able to flag a document, "maintainers needed", even if it
is maintained but the maintainer needs or wants help. (David)
Display the number of times the document has been read. Think of and add other
metrics of this nature. This should be an optional feature, since it will add
overhead and some admins might not want that overhead. (David)
We need a cron job that runs nightly and stores statistics into the stats and
stats_cdf tables. This should be a Python module (Stats.py), which deletes
and then replaces any existing records for the current day. The cron job would
just be a call to that library. So put the Python module in pylib, but put the
wrapper script under /lampadas/cron (a new directory). See the old Perl code,
and just port it. Feel free to recommend additional metrics that would be
valuable to the management of the site. Also add user count, which didn't
apply to the LDPL but does apply to Lampadas. And docs served, pages served.
Write a Makefile to install Lampadas onto a fresh system. Also let `make test`
run the unit tests, and `make clean` remove any installation. `make tar` and
other build targets would be nice, too.
Add date_entered timestamps to additional records where it is appropriate.
Maybe even to all of them. It's nice meta-data to have. And add creator_id
also, to record the user who created the record. Then it will have to
be passed in through all the Add methods.
Remember the number of times a user has logged on, and when they last logged
on, and maybe even their IP address in case of DoS or other attacks by a user.
Improve the security system so that instead of single boolean fields to get
permissions (e.g., the admin and sysadmin fields), each user can be assigned
a role which comes with a set of permissions. This will allow more fine-
grained control over permissions, so admins can customize them to fit their
particular organizational needs.
Flatten the topic/subtopic structures into a single table with topic_id as
the record identifier, plus topic_num and subtopic_num for display only.
This will let people reorder and renumber topics without having to alter any
referring records in document_topic.