Project SiteWebTributeDownload

WebTribute is a web-based PHP/PostgreSQL simple content management system.

It is designed to be used with Macromedia Dreamweaver templates, and is intended to replicate the functionality of Contribute.

Installation Instructions:

What you need:

  1. Download Webtribute and untar/gunzip it in your webserver's document root
  2. Create a Postgres user named wwwuser - this user does not need to create users or databases (createuser wwwuser)
  3. Give wwwuser a password (alter user wwwuser password 'password')
  4. Create a Postgres database named webtribute (createdb webtribute)
  5. As a user that can create databases, run psql webtribute < /path/to/webtribute/database/webtribute.sql or load webtribute.sql into phpPgAdmin
  6. WebTribute has no built in authentication. Set up some sort of authentication on the directory you installed WebTribute into.
  7. Update the "Admin" account in the authors table to reflect a valid login. This will be your WebTribute administrator account. The username must match the valid login's username.
  8. Update the default "site" in the sites table. Add any other virtual hosts that you may have. htmlArea is the default WYSIWYG editor.
  9. If you have virtual hosts, symlink the WebTribute directory into the document root of each virtual host.
  10. At this point a decision need to be made.
    Your website's document directories must either be writeable by the webserver user, or you must use fileWriter.
  11. Update lib/configuration.php to reflect your site.
    If your web document directories are writeable by the webserver, set FILESYSTEM_PERMS to privileged and WEB_USER as the webserver username.
    If not, set FILESYSTEM_PERMS to 'unprivileged', set WEB_USER to the user account to write to the filesystem and set up sudo to allow the unprivleged user to run webtribute-fileWriter as the privileged user.
  12. Update the sessionDomain in classes/session.class.php to reflect your domain.
  13. Save your Dreamweaver template(s) as html files to the templates directory.
  14. Manually paste your template into the templates table (this is a To Do) and assign the proper site.
  15. Edit lib/TemplateAreaDefinitions.php. This is probably the most complicated part without real documentation. See here for valid template area definitions.
  16. Open a web browser to your Webtribute directory and log in. Choose your site and edit away!

There are quite a few "To Dos", namely to actually create the admin functions and implement much more granular permissions.

Template Area Definitions:
Template Area Definitions are how WebTribute knows to display the proper editing areas for a given template.
Definition Types
titleAppears as a standard Text type form field. Used only for document titles
freeformWill create a link to the "miniEditor" (popup window) and display a standard Textarea form field
editor-*Will create a link to the "miniEditor" (popup window) and display a WYSIWYG editor with a comma delimited list of features available (i.e. link,fontstyle) use editor-full for complete WYSIWYG functionality.
inlineEditor-*Same as above, but instead of creating a link to the miniEditor, will appear inline in the template display.
simpleTextAppears as a standard Text type form field.

"$areas" is a hash of "template area names" as keys and definition types as values.

"$headAreas" is an array of template area names that wouldn't normally display in a page (i.e. items in the <head></head> tags). Logo