README
======

slurf by Bram Van Steenlandt, bram@diomedia.be / www.diomedia.be
partly based on work by randall smith

-overview
By creating slurf I'm trying to fill up a void.
As an IT administrator you often need a small database for this and a small database for that.
Creating those databases is not that hard but getting the users to insert data in it can be cumbersome.
Learing them sql is kind off hard and too complex and web interfaces often take up a lot of screen space.

So we now have a frontend for postgresql for those who don't know anything from postgresql.
You can't edit your database in this software it's only ment for data input/search.

The program takes only a small number of parameters (host,database name, login password) and then builds a very simple interface for data entry or search.
Standard it will show fields in the order they have been created in the database (CREATE TABLE).
It will display popupmenus for enum fields, checkboxes for boolean and picture fields for bytea.
Tables with a foreign key also show a portal for viewing and creating linked records.
Saving/updating is done everytime you leave the field or the record.
If there is a problem you get the same error as you would with normal sql.
You can also export and import your data.
There is an interactive find mode and also a "normal" find mode.
All layouts can be adjusted by writing special xml files, this way a layout for an invoice or something similar can be made.
By using triggers you can create a more automated workflow.
The state of slurf is very beta, it has not yet gone through a lot of testing.

-TODO/BUGS
-code cleanup
-The name of the primary key sequence is now fixed, it only works when the primary key is of type serial.
-Use apple key instead of control on mac os x
-Fix locale on mac 
-When a bytea field does not contain a jpeg we should display a special file icon, now slurf assumes a bytea field always contains an image.
-The xml-layout part works but you don't get an error when there is a fault in your xml file, the woraround for now is open slurf from the terminal and then look closely, the underlying libaries do give some hints a t what is wrong.
-translate to FR
