MojoMojo::Controller::Page - Page controller
This controller is the main juice of MojoMojo. It handles all the actions related to wiki pages. Actions are redispatched to this controller based on MojoMojo's custom prepare_path method.
Every private action here expects to have a page path in args. They can be called with urls like "/page1/page2.action".
This is probably the most common action in MojoMojo. A lot of the other actions redispatch to this one. It will prepare the stash for page view, and set the template to
view.tt, unless another is already set.
It also takes an optional 'rev' parameter, in which case it will load the provided revision instead.
This action is called as
.search on the current page when the user performs a search. The user can choose to search the entire site or a subtree starting from the current page.
This action is the same as the "view" action, but with a printer-friendly template.
Same as "view" action, but with a template that only outputs the barebones body of the page. There are no headers, footers, or navigation bars. Useful for transclusion (see MojoMojo::Formatter::Include).
Tag list for the bottom of page views.
pages_viewable($c, $user, @pages)
Filters an array of pages, returning only those that the given user has permission to view.
All nodes in this namespace. Computes tags, all pages, backlinks, wanted and orphan pages.
Display all pages that are part of the subtree for the current node.
Recently changed pages in this namespace. Also computes the most used tags.
Overview of available feeds for this node.
RSS feed with headlines of recent nodes in this namespace.
Full content ATOM feed of recent nodes in this namespace.
Full content RSS feed of recent nodes in this namespace.
Page showing available export options.
"Page not found" page, suggesting alternatives, and allowing creation of the page. Root::auto detaches here for actions on nonexistent pages (e.g. c<bogus.export>).
Search results embeddable in another page (for use with "suggest").
Meta information about the current page: revision list, content size, number of children and descendants, links to/from, attachments.
Marcus Ramberg <email@example.com>
This library is free software. You can redistribute it and/or modify it under the same terms as Perl itself.