head	1.1;
access;
symbols;
locks; strict;
comment	@# @;


1.1
date	99.11.27.21.41.00;	author mag;	state Exp;
branches;
next	;


desc
@@


1.1
log
@Initial revision
@
text
@Barracuda V0.8
--------------

This is a Web-based Task Tracking (and document directory) System which uses
Postgres database engine and written in PHP3 and C.

The original design and development is by:
	Laszlo Keresztfalvi <kereszt@@bunuel.tii.matav.hu>

The "object oriented" database design, the database based user
authentication and planned future ACL based access control is by:
	Arpad Magosanyi <mag@@bunuel.tii.matav.hu>

It is a preliminary version: It works, but there are some things which
should be written, namely some triggers to ensure database consistency,
access control, documentation etc.

See the file /usr/doc/barracuda/TODO for things that should be done.

--------

First of all. You can login into the Barracuda system as 'admin' with
password 'admin' (without the ' ;) Also you can (should :) modify this
default password... if you intend to use Barracuda for serious.

Yepp, now some access control works. You can use the group assignment. Also
it is not solved on DB level (Mag?) but I think it is quite enough for now.

- Rights:
	- Manager: you can assign new members, or remove from this group (for
	last you can remove yourself ;) And you can fully edit any object
	assigned to this group.
	
	- Read: You can only read the objects as static text.

	- Write: You can write NEW class/task/doc into this object.
	Now, this is strange if used without read permission. It means you can
	read the classes/tasks assigned to the appropriate group, but cannot the
	content (documents). I've planned it for something like an operator can
	put the problem into a group, but cannot read what happens, just see the
	status/priority. Also it sounds not too reasonal so I'm waiting for
	better ideas.

Now, only a manager of the group (with write access) can modify/delete any
object assigned to the group.

/* Modifing a document is not reasonable because modifying an already
upstanding document is not really acceptable as not indicating the
modification. This should be processed by deleting the original and/or
inserting a new one indicating (in the future) in the history that
modification has taken or new version has taken in place at the actual
timestamp. I plan this when you will be able to copy, move the objects
beacuse it can be hard to retype the whole object. Also require a purge idea
to really empty what is not needed. */

	One more note. Admin user and group treated as simple user/group in the
object segment. Admin's and its group's privilege is the user creation,
deletion.. and of course assignment (so it can assign itself to any group).
By default admin cannot edit the groups' objects only if assigns itself to
the group. ...Just to ensure you won't be surprised when navigating as admin
user.


	I do not plan a CVS like revision tracking or such system. Barracuda is
designed for team-work: communication among the team members, work-flow
tracking, formal work-groups etc. Now, you can include <HREF> tags into the
simple doc text body, which is not chewed (Oke, oke, I plan some security
check to allow only some simple tags, but you can know who created the doc).
These tags are shown as real html links in the static text when displaying
the doc. This way you can link-in anything, or you can store files as
attachments in the documents.
	The document is intended to be informative object to reflect about the
changes, the made work, but not containing the changes or work itself
(generally exists somewhere out of Barracuda). It just can hold the
reference to the work (link), or the result (attachment - this is not for
sharing papers for modification!). There are other systems (like RCS, CVS,
and more) to share files for parallel development, or document revision
tracking. Barracuda is for documenting the work and the flow in an office
manner to help anybody to join to the ongoing tasks, or to take some from
people on holiday. I think you got the idea.


Enjoy! And send feedbacks please!

	Laszlo KERESZTFALVI
	<kereszt@@iname.com>
@
