NAME
MojoMojo - A Catalyst & DBIx::Class powered Wiki.
SYNOPSIS
# Set up database (be sure to edit mojomojo.conf first)
./script/mojomojo_spawn_db.pl
# Standalone mode
./bin/mojomo_server.pl
# In apache conf
<Location /mojomojo>
SetHandler perl-script
PerlHandler MojoMojo
</Location>
DESCRIPTION
Mojomojo is a sort of content management system, borrowing many concepts from wikis and blogs. It allows you to maintain a full tree-structure of pages, and to interlink them in various ways. It has full version support, so you can always go back to a previous version and see what's changed with an easy AJAX- based diff system. There are also a bunch of other features like built-in fulltext search, live AJAX preview of editing, and RSS feeds for every wiki page.
To find out more about how you can use MojoMojo, please visit http://mojomojo.org or read the installation instructions in MojoMojo::Installation to try it out yourself.
cache_ie_list
Include/exclude list accessor
cache_hook
Dont cache if CATALYST_NOCACHE is set or if the path is excluded from, based on the value cache_ie_list
.
expand_wikilink
Proxy method for the MojoMojo::Formatter::Wiki expand_wikilink method.
wikiword
Format a wikiword as a link or as a wanted page, as appropriate.
pref
Find or create a preference key, update it if you pass a value then return the current setting.
pref_cached
Get preference key/value from cache if possible.
fixw
Clean up wiki words: replace spaces with underscores and remove non-\w, / and . characters.
prepare_path
We override this method to work around some of Catalyst's assumptions about dispatching. Since MojoMojo supports page namespaces (e.g. '/parent_page/child_page'), with page paths that always start with '/', we strip the trailing slash from $c->req->base. Also, since MojoMojo indicates actions by appending a '.$action' to the path (e.g. '/parent_page/child_page.edit'), we remove the page path and save it in $c->stash->{path} and reset $c->req->path to $action. We save the original URI in $c->stash->{pre_hacked_uri}.
base_uri
Return $c->req->base as an URI object.
uri_for
Override $c->uri_for to append path, if a relative path is used.
SUPPORT
If you want to talk about MojoMojo, there's an IRC channel, irc://irc.perl.org/mojomojo. Commercial support and customization for MojoMojo is also provided by Nordaaker Ltd. Contact arneandmarcus@nordaaker.com
for details.
AUTHORS
Marcus Ramberg marcus@nordaaker.com
David Naughton naughton@umn.edu
Andy Grundman andy@hybridized.org
Jonathan Rockway jrockway@jrockway.us
A number of other contributors over the years.
COPYRIGHT
Copyright 2005-2009, Marcus Ramberg
LICENSE
You may distribute this code under the same terms as Perl itself.