w-agora logo Frequently Asked Questions

 

v1.0b4
3/31/99

Contents:

WHAT IS W-AGORA?

W-Agora (Web-Agora) is a powerful database-driven communications system which allows you and your visitors to store and display messages, files, and other information on your web site.

IS W-AGORA A WEB-BASED BULLETIN BOARD SYSTEM?

Well.. Yes and no. In its default configuration, W-Agora acts as a multiple forum or bulletin board system. For example, users can visit your web site and leave messages for other visitors.

Beyond this simple web-board functionality, W-Agora also includes:

WOW. THIS SOUNDS GREAT! HOW MUCH DOES W-AGORA COST?

It's free. That's right. Free.

Furthermore, W-Agora is distributed under the "artistic license," which means you have full access to the source code. You are free to make additions, bug-fixes, and alterations. We hope that you forward a copy of any improvements you make back so that we can use them for the next distribution of W-Agora!

For more information about the artistic license, read http://www.w-agora.net/license.php.

WHAT ELSE CAN YOU DO WITH W-AGORA?

W-Agora is WAAY more than just a message base, although that's it's "default" configuration. W-Agora is very easily extendable in functionality. Here are some ideas for how you can use W-Agora:

WHAT'S A W-AGORA "THEME"?

W-Agora now supports multiple "looks" for each forum, including custom colors, graphics, layout, backgrounds, icons and style sheets.

Once users begin to customize the look of the W-Agora forums, we'll be grouping these modifications and releasing them as themes which you can use to replace many different aspects of your forum.

What needs to happen for the Theme Library to be created? All it takes is a nice creative person out there to customize their forum (via the easy web-based interface) and send them to us!  Just post your specs to the W-Agora sample forum.

IN WHAT LANGUAGE IS W-AGORA WRITTEN?

PHP 3.x - an AWESOME (and FREE!) embedded, open-source scripting language which is similar in syntax to Perl. The difference is, PHP code is added directly into HTML code, and for web-programming it's much simpler to use.

PHP is easy to learn and is very powerful. There's so much to say about PHP but your best bet is to read about it from the PHP page: http://www.php.net

WHERE CAN I FIND FULL DOCUMENTATION ON USING W-AGORA?

Right here, baby: http://www.w-agora.net/doc.php

WHAT FILES ARE INCLUDED WITH W-AGORA?

There are a quite a few files that make up W-Agora.  The reason for the number of files is that W-Agora is EXTREMELY modular, and each file does one task (and does it well).  You can modify the program very simply by identifying the correct file, making your changes, and watching in amazement as your improvements ripple across the entire system.

It's so easy you won't be able to handle it.

As of version 3.0b3, here are the files:
 

README                  Read this one first

admin.php3              Main administration page

admin_forum.php3        administrate a forum

browse.php3             browse directories on the server

config_forum.php3       configure a forum

delete.php3             delete a note and associated documents

delete_forum.php3       To remove a forum

edit.php3               display form to edit (modify) a note

editfields.php3         Edit (add/delete) fields to be inserted in the database

editform.php3           Program to edit variables which are stored in document

editlist.php3           Edit list of notes

editmsg.php3            Program to edit (customize) messages

edittemplate.php3       Edit the document's template

footer.php3             footer file (include appropriate footer)

getfile.php3            send associated file (attachment to browser)

header.php3             header file (include appropriate header)

insert.php3             Insert a new note

list.php3               list notes

post.php3               display form to post a new note

reply.php3              display reply form

search.php3             search in forum

setup.php3              First installation

update.php3             Modify a note

view.php3               Display a note

w-agora.php3            The Main page



admin:       [All the adminstrative stuff is here]

  admin.list

  agora.msg

  agora.tmpl

  agora.var

  header.php3

  header_admin.php3

  init_conf.php3

  w-agora.list



doc:          [Documentation for W-Agora goes here]

  ChangeLog             Version History

  FileList              Lists the files!

  ToDo                  a lot of things !!!

  doc.html              The documentation
  FAQ.html              The Frequently Asked Questions


images:       [Fun little graphics used by W-Agora]

  add.gif

  back.gif

  delete.gif

  folder.gif

  unknown.gif



include:      [little modules for different systems.  You won't use 'em all]

  bn_namazu             namazu script

  dbaccess.php3 if you want to build your own database support, start here.

  dbm.php3              [g|n]DBM access

  init.php3             initialization

  misc_func.php3        common usage functions

  mimetypes.php3        mime types

  msql1.php3            msql version 1 access

  msql2.php3            mSQL version 2 access

  mysql.php3            mySQL access

  namazu.php3           namazu search engine

  postgres.php3         postgres access

  swish.php3            swish search engine

  mimetypes.php3        mime-types



templates:   [These set up the default looks and settings for the forums]
  admin.conf            configuration file for administration

  default.conf          default configuration file for a new forum

  default.list          variables for list of notes

  default.var           fields to insert in database

  form.*                default localized forms

  header.php3           default header

  msgs.*                localized messages files

  template.*            localized note's template

  w-agora.conf          configuration file for w-agora

CAN I HELP DEVELOP W-AGORA?

Hell yes! W-Agora is always in development. If you have a request for a feature, or you've found a bug or added a feature or you just wanna say "hi", please let us know by posting to the development forum at:

http://www.w-agora.net/support.php

There's plenty of work to be done and we definately want your suggestions and input!

We're especially looking for:

WHAT'S AN "AGORA" ANYWAY?

For the ancient Greeks, the Agora was a public place where people came to buy and sell goods and to meet to exchange news and ideas.

WHAT'S PLANNED FOR THE NEXT RELEASE OF W-AGORA?

Here's what's on the list. Wanna help add some of this?

WHAT'S CHANGED SINCE THE LAST VERSION OF W-AGORA?

W-Agora : Change Log
=====================

1999 March ?? Version 3.0b3
* Enhancements:
 - Added template/theme support (just a beginning, user can not yet create themes from his 
   browser) (private joke: have fun Ron ;-)
 - added Database connection parameters (dbuser, dbpassword, dphost, dbport) in the setup
   and create_forum process.
   !! Warning !! For previously created forums, the configuration file must be edited in order
   to add these variables !!
 - added style sheet support (variable $bn_style)
 - listing customization enhancements:
    - Splitted $bn_line in two variables ($odd_line, $even_line) in order to possibly 
      displaying alternating striped colors for messages.
    - added padding pattern 
    - added begin-level variable
   !! Warning !! The forum.list file must be upgraded for previously created forums
 - ability to discard/accept HTML in fields (Added $bn_html_var array in forum.var + 
   bn_allow_html admin. option)
 - Automatic Htmlization of embeded links : added checkUrl() in misc_func.php3
 - added "preview" button (post.php3, reply.php3, insert.php3) in order to allows 
   users to preview a note before posting it.
 - emphasize quoted text (reply.php3, insert.php3)
 - Display images, text and HTML files inline (view.php3)
 - Added attachment icon, message listing can indicate which have attachment (
   see $attach_icon variable)
 - Added "collapse/expand" and "last in thread" feature (added 'newest' column)
    Thanks to Tom deLombarde <tomd@blackflute.com>
 - Added next/previous thread in the displayed thread (view.php3) (not supported with 
   DBM)
 - Added option case_sensitive in the search() function 
    Thanks to Ron Friedman <friedman@filmmaker.com>
* Fixes, code changes:
 - Deleted notes were not removed from search results fixed in delete.php3
    Thanks to Andrew <andrew.macintyre@aba.gov.au>
 - several fixes in posgres.php3 (Ron Friedman <friedman@filmmaker.com>
 - fixed bug in update.php3 => HTML file was modified even if the update was forbidden 
   (bad password)
 - deleteNote() : thread column was not updated if root note was deleted => fixed
 - column's order is now unimportant (msql, mysql)
 - fixed bug in the msql search() (cannot use LIKE w/ a TEXT field in mSQL)
    Thanks to Jesus M. Castagnetto <jesusmc@scripps.edu>
 - fixed bug in swish.php3: 
    removed -HBthec parameter in swish search, 
    swish.conf was not taken into account during indexation: fixed 
 - Now only needed fields are stored in the listing array (added list_var[] array 
   in forum.var)
 - Changed the variable's arrays format: 
     $db_var_size : removed
     $bn_var_size, $list_var, $bn_bind_var are now associative arrays
   !! Warning!! The forum.var file must be upgraded for previously created forums
 - Added updates and fixes to the japanese messages and namazu module
    Thanks to Jun Kuwamura <juk@rccm.co.jp>

1998 November 23 Version 3.0b2
 - fixed bug in update.php3 => attachments where lost after editing a message
 - added default .htaccess file in directories admin, conf, forums
 - added Postgres support (many thanks to Ron Friedman <friedman@filmmaker.com> ! )
 - fixed bug in create_forum => mySQL forums where created with bad variable 
   names if w-agora was installed with mySQL access.
 - fixed bugs in msql.php3: 
     o removed call to msql_errno 
     o replaced BLOB type to char(1024)
     o invalid msql_seek in insert() -> fixed 
     o set $debug to 0
     o added msql2 support (createForum() )
 - changed DBM code (optimization) so notes are read only once
 - changed all Database access:
    o added an abstract class "dbaccess.php3" which define all functions that 
      must be implemented 
    o changed listNotes() so notes are read in one DB access (all notes are now 
      stored in an array, this array is displayed by DBaccess.getThread()
 - renamed variable $action to $bn_action, added it in all script files
 - added "Content-disposition" header (getfile.php3)
 - Added new variable $bn_dir_forums : base directory used to install new forums
 - Added next/previous page feature
        o new variable $bn_maxthreads : limit # of threads displayed on one page
 - now password must be entered twice in create_forum form
 - delete_forum now deletes all files in $bn_dir
 - attachments where not deleted -> fixed
 - insert & update forms now brings back to view.php3 instead of list
 - check for invalid characters in forum's name (create_forum.php3)
 - msgForm() => window.close is done after opener.location update (misc_func.php3)
 - added mimetype file => set default mime-type for attached files throw the 
   browser
 - updated german messages & form
 - word wrapping :
     o Replaced <PRE></pre> tags in templates with <TR>
     o added "WRAP=physical" in textarea
     o added nl2br in insert/update

1998 September 09 Version 3.0b1
 - fixed bug with unitialized $search_engine variable after installation, 
   renamed it to $bn_search_engine
 - added field "thread" in mysql table (contains the thread the note belongs 
   to)
 - made getThread() and search() working with mysql
 - added portuguese messages 46 & 47 Thanks again to Adelino <adelino@infologia.pt>
 - fixed bug in editTemplate.php3: replaced fileInode() with file_exists()
 - fixed bugs with quotes in editmsg.php3 and editTemplate.php3
 - now allows attachments in update.php3
 - added German messages. Thanks to Helmut Wirth <wirth@bison-soft.de> 
 - insert.php3: call before_access file before creating HTMl note to allow 
   variable modification before insert in database
 - dbm.php3: preserve old fields not presents in the update form
 - swish.php3: $bn was not initialized in search() -> fixed

1998 September 01 Version 3.0a1 (new PHP3.0 version)

 - PHP3 port, main part of code has been rewritten to use new PHP features.
 - replaced remaining exec() calls with equivalent php functions
 - made server file attachment works on Windows
 - basic mail address verification before send it
 - File upload: now copy the uploaded file in a separate directory so that
   differents file with the same name can be attached to different notes
 - search: notes are displayed throw view.php3 so they can be stored 
   outside the web server tree
 - made search classes to provide a more flexible interface to other search 
   tools
 - added getThread() => display current thread at the end of the displayed note
 - added search() function in $db_access.php3 files => basic search in database
        -------------------------------------------------------

1998 July ?? Version 2.0b2
 - msql.phtml, mysql.phtml: fixed bug in deleteForum() (invalid call to 
   getpassword() )
 - Display password in form only if modify or delete options are validated
 - admin/install.phtml: fixed bug when insert new forum in main table if 
   forum and admin db access type are not the same.
 - Added Namazu search. Thanks to Jun Kuwamura <juk@rccm.co.jp>
 - Added Japanese messages (msgs|form|template.ja, form_install.phtml)
   Thanks to Jun Kuwamura <juk@rccm.co.jp>
 - admin/w-agora.list: suppressed trailing ")"
 - admin/agora.var: fixed bug in mandatory fields: replace $bind_var 
   with $bn_bind_var
 - insert.phtml, update.phtml, post.phtml: added "do_post" variable so 
   insert.phtml & update.phtml can only be called from post (basic check !!!)
 - post.phtml: this time really added msg[45] (user wrote) :)

1998 March 31 Version 2.0b1
        
        - change $bn_before_insert to $bn_before_access, add it to view.phtml
        - msgs.xx:      - add message 24 (delete.phtml)
                        - add message 45 (post.phtml)
        - Add Portuguese messages (msgs|form|template.pt, form_install.phtml)
          Thanks to Adelino Monteiro <adelino@infologia.pt>
        - (m[y]sql.phtml, dbm.phtml) : Add setErrorReporting (0) 
          (@unlink not supported) 
        - insert.phtml: - add "Reply-to" header and original message in body 
                          of admin. mail. 
                        - Add $username in "from:" header.      
        - post.phtml:   - add " user wrote:" ($msg[45]) in quoted text.
                        - fix PB with invalid char in quoted text if empty
                          textarea (add JS QuoteText() function)
        - delete.phtml: replace fixed text with customized messages
        - delete_forum.phtml:
                - OK button return to admin(list) instead of delete_forum
                - can use admin password to remove a forum
        - admin/install.phtml: force forum password to admin password
        - Update Documentation an ToDo files
        - init.phtml: made OpenWindow() compatible with old browsers 
          (window.opener...), add window.focus() then comment it for old browsers :(
        - view.phtml:   - add "Content-disposition" header
                        - Change include ("note") to ReadFile() for security 
                          reason
        - header.phtml, form.xx: Change fields disposition, textarea
          and window size to better fit in small screens
        - edittemplate.phtml: fix bug with newline characters
        - delete_forum.phtml: now remove file index.swish


1998 Feb 28: Version 2.0a1

        - (msql.phtml) suppress "@" character in msql_ListTables and 
          msql_listfields causing parsing error (php2.0b7) => add 
          seterrorReporting()
        - update README and doc/FileList files
        - add images 'add.gif' and 'delete.gif'
        - (admin.list, w-agora.list) Threaded Forums : opportunity to create 
          "sub-forums"
        - (edittemplate.phtml) accept quotation marks in the template's 
          contents
        - (post.phtml) Add "Re: " in subject only for the first reply in the
          thread
        - (delete.phtml, update.phtml) 
                - now include "$bn_before_insert" file before deleting or 
                  updating a note.
                - set new variable $action = "delete|insert|update" before 
                  including file
        - (dbm.phtml) fix bug in updateNote() : childs notes were lost
          after update.
        - add delete_forum.phtml: deleting a forum now remove notes, DBM file 
          or SQL tablebase and configurations files
        - Fix some syntax errors (not detected by PHP 2.0 parser)
        - Merge config.phtml with admin_forum.phtml (config.phtml suppressed)
        - (misc_func.phtml) "beautify" MsgForm()
        - (browse.phtml) fix invalid image url
        - (admin_forum.phtml): Option "change fields" only displayed if access
           mode is "DBM"


1998 Feb 04: Version 2.0a0

        * Complete rewriting of the program (Split program in several 
          modules)
        * New features
                - Multi forum management (add "bn" parameter)
                - Add mSQL, mySQL support
        - Customization:
                - Can define/edit the fields which are stored in the database
                - Listing of notes is entirely customizable
                - Possibility to edit the form and header/footer files via 
                  the browser           
                - Note are generated from a template, the entire template 
                  is customizable
        - New admin/config. parameters :
                - Maximum (uploaded) file size
                - Date format
                - "No-frame" option
                - PHP file to be executed before inserting a new note
                - user mail reply
        - Modify note:
                - All fields can now be modified. The HTML file is recreated 
                  from form fields
        - Delete notes
                - Possibility (for administrator) to delete several notes               
        - Reply:
                - Add "quoted reply"
                - Send mail to original sender          
        - Server browse and server file attachment:
                - The browse option is now disabled by default
                - icons are delivered in images directory 
                - Change default starting (root) directory to /tmp
                - security enhancements:
                        - Check if option enabled before start browsing;
                        - Cannot attach file outside the browse directory
                        - Cannot browse server upside the browse directory  
        - Miscellaneous:        
                - suppress "admin" and "delete" buttons in header
                - Suppress server-side browser type checking
                - Windows's compatibility (all file access are now made via standard
                  functions calls)

        -------------------------------------------------------

1997 March 13: Version 1.2b2
        - Suppress tags </BODY> and </HTML> in the document 
        - Suppress tag <PRE> in table
        - add $bn_swish containing the pathname of the swish executable
        - Completed documentation (renamed welcome.html to doc.html)

1997 March 10: Version 1.2b1
        - Fix variable conflict with PHP Apache module version
          ($path_dir and url_dir renamed as $bn_dir and $bn_url respectively)
        - Add frame parameter ($bn_frame1 and $bn_frame2)
        - Backup config. file only if it exists => avoid error msg in 
          Apache log
        - Remove FirstTime file only if config. file created
        - Fix problem with specials chars (', ",..) in the REPLY Form
        - Initialize $bn_mail_address with Apache variable $SERVER_ADMIN

1997 Feb 20: Version 1.2b0
        - First public version uploaded to vex.net 

WHO HAS CONTRIBUTED TO W-AGORA?