Authoring and Live Mode
Introduction
Lenya has two modes it can run in:
- In Authoring mode it is a web application enabling editors to interactively manipulate the structure as well as the content of a publication.
- In Live mode it will render a publication as a website.
Authoring Mode
Authoring a publication involves a number of different tasks:
- Creating new documents
- Moving documents around in the sitetree
- Editing a document's content
- Editing a document's metadata
but also:
- Editing a publication's metadata
- Managing the resource types and editors available
- Maintaining access control policies both for editing and for the live publication
Transactions that manipulate the publication are implemented through usecases, using the Usecase Framework. There are for example usecases that:
- Create a new document
- Delete a document
- Edit a document's metadata
- Call an editor to edit the document's content
Live Mode
The Live Mode is all about presenting a publication to the viewer.
HTTP requests are passed through a Cocoon sitemap which will then use the appropriate generators, transformers and serializers which will return a page to the browser in reply to the request.
Serving a Lenya publication with plain Cocoon only?
The fact that Live Mode is all about serving pages controlled by a sitemap often raises the question if it was possible to serve a publication that has been edited with Lenya from a plain Cocoon instance.
Sometimes this might be a requirement if the production site offers Cocoon hosting but not Lenya hosting for example. Also some architects feel better if the editor portion is not at all installed on an outside facing prodction server.
While it would theoretically be possible, at the time of writing a Lenya publication will need Lenya even for Live mode. The reason is that the sitemaps use some custom Cocoon components that are part of Lenya, such as the PageEnvelope input module for example.
Again, it would be possible to extract these components from Lenya and package them with a plain instance of Cocoon to achive to goal of having a "Live mode only" version of Lenya that will not allow any editing. Yet this work has not yet been done.