I'm going to pull a complete slacker move and simply paste what
I've typed at http://langworth.com/AnotherWiki ...

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

Axkit::App::Anotherwiki is an enhanced wiki for AxKit. Unfortunately, I've
stopped developing for AxKit recently and I'm hoping that someone will be
interested enough to pick up where I left off.

I really like Axkit::XSP::Wiki and I strongly considered simply extending
it -- it is really cool. However, I felt that the wiki would be better
suited as an AxKit Provider/Plugin combo.

Anyway, the code is decently commented, and testing was kept in mind
(inline tests are in the utility modules). 

A release of the project for Feb. 20th, 2004 is available at:

http://langworth.com/downloads/AxKit-App-AnotherWiki-20FEB2004.tar.gz

Features

    - Uses CGI::Wiki as a backend instead of homebrew which
      simplifies the code a little and provides searching and
      conflict management

    - Uses Text::Kwikiformatish (see TextKwikiFormatish) to turn
      KwikiText into XHTML (which kind of cheating in AxKit
      terms)

    - Configurable handlers for when a wiki page is created or
      modified.  AnotherWiki comes with an email notification
      plugin.

    - Allows custom XSLT stylesheets to be used for freeform XML
      wiki pages, like Axkit::XSP::Wiki

    - Robust error handling -- errors produce informative error
      pages, XML syntax errors even show xmllint-like output

    - Built-in redirection to the default wiki page -- e.g.,
      /wiki/ would forward to /wiki/Homepage
    
    - Internally, the wiki object is a singleton class in an
      attempt to ensure fast wiki node access

    - AnotherWiki almost works out of the box -- set up the
      Apache directives like in the synopsis, put the XSLT
      stylesheets in the right spot, and you're done. (I made
      sure of this)

Synopsis

As taken from the README:

    # let this plugin handle http://whatever.com/wiki
    <Location /wiki>

        # load AnotherWiki's core and tell AxKit to handle it
        PerlModule          AxKit::App::AnotherWiki
        PerlHandler         AxKit
        AxContentProvider   AxKit::App::AnotherWiki::Provider
        AxAddPlugin         AxKit::App::AnotherWiki::Plugin

        # location where to store wiki database (a file) & index (a dir)
        PerlSetVar          WikiStoreDB         /home/bass/www/db/wiki-store
        PerlSetVar          WikiIndexDB         /home/bass/www/db/wiki-index

        # optionally use the email-notification handler
        PerlModule          AxKit::App::AnotherWiki::EmailNotify
        PerlSetVar          WikiChangeHandler   AxKit::App::AnotherWiki::EmailNotify
        PerlSetVar          NotifyAddress       [EMAIL PROTECTED]

        # run all output throgh these stylesheets
        AxAddProcessor      text/xsl /style/xsl/wiki.xsl
        AxAddProcessor      text/xsl /style/xsl/document.xsl

    </Location>

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

-- 
Ian Langworth
Project Guerrilla
Northeastern University
College of Computer and Information Science


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to