Contents
An Introduction to Mason (The Warm Up)
How do we run Mason?
Server config:
What does Mason look like?
The Substitution Tag
Substitution Examples
Be careful - HTML Escape
Be careful - URI Escape
Oldskool Templating
Mason Templating - First Attempt
Mason Templating
The revised index.html
The Mason Way - Component Inheritance
An Example Autohandler
A reformed index.html
Inheritance, but the other way
Using Attributes
To Recap
Quick aside: Perl embedded into Mason
Perl embedded into Mason
Mason's Real Power
Calling other Components
Server Config
Moving On: Mason Blocks
Passing parameters
Another way (surprise)
Component Naming Conventions
Where do components live?
An Example DocumentRoot
Deciding where components should live
More comp dirs
A more complex DocumentRoot
show_entry.mhtml
What if I had two blogs?
But what about archive.html?
/blog/comp/archive.mhtml
Our final setup
Twice, fine. Three times - refactor!
More than one site
Symlinks, Hard links, what?
Common Components?
Using Multiple Component Roots (The First Act)
Calling Components in Different Roots
How does it work?
Applying it to two sites
And...
An Experiment in CMS Design (The Second Act)
...my blog looks different from yours!
The Good News
Our two example sites
Making your Blog look nice
Multiple Component Roots...
Back to show_entry.mhtml
The alternative show_entry.mhtml
The Details
The Experiment and Progress
Zaapt is born - The History
Example Sites using Zaapt
Apologies