The template setup of the
NatSkin differes completely from the standard templates that
come with Foswiki folowing its own inner logic compared to the
Foswiki:Extensions/PatternSkin. The
NatSkinTemplates have especially been designed to simplify subskins overwriting parts
of the
NatSkin.
Every template belongs to a group defined by their function:
Each group consists of one or more
entry templates, e.g. attach group has
three entry templates: attach, attachnew and attachagain,
If a template group has more than one entry template then these build upon
and intercostal
base template, named <name>base template (where <name is
the short name for the template group). The base template might also be
an entry template. The base suffix is then stripped from the template name. For
example in the attach group there are two pure entry template, attachnew and attachagain,
that base on the attach template which is an entry template also. Pure base templates are
for example the renamebase or the oopslogonbase templates. See below for more.
The oops template group is a bit different from the others as it has subgroups of
templates for authentification, notification and error messages.
Some of these groups have an own base template shared among messages of the same type.
All oops templates are finally using the central oops template.
Ssee the INCLUDE hierary below.
Every group uses three
fragment templates:
- <name>body: the html body
- <name>sidebar: the sidebar next to the main area
- <name>topicactions: the upper right fragment displaying possible actions for the current topic page
So the fragment templates
for the attach group are attachbody, attachsidebar and attachtopicactions
(omitting the
nat.tmpl
extension). These can be used by subskins to implement a
different look and feel per web with a minimal amount of code duplication.
All groups finally call the page template that constructs the resulting html by
inserting all TMPL macros. The page template itself only defines defaults for
the standard fragments.
This is the INCLUDE hierarchy of the templates in the
NatSkin.
Each indentation means, that the upper template INCLUDEs the lower template(s).
If a template name has already been defined, further indentations are pruned.
So whenever a template INCLUDEs the page template all
default fragments are left out for clarity.
- Skin Base templates:
- page
- javascript
- defaultbody
- defaultsidebar
- defaulttopicactions
- defaulttopbar
- searchbox
- Attach templates:
- attachagain, attachnew
- attach
- page
- attachbody
- attachsidebar
- attachtopicactions
- Changes templates:
- changes
- page
- changesbody
- changessidebar
- changestopicactions
- Change Form templates:
- changeform
- page
- changeformbody
- changeformsidebar
- changeformtopicactions
- Edit templates:
- edit
- page
- editsidebar
- edittopicactions
- Move Attachment templates:
- moveattachment
- page
- moveattachmentbody
- moveattachmentsidebar
- moveattachmenttopicactions
- Oops templates:
- oops
- page
- oopsbody
- oopssidebar
- oopstopicactions
- Messages:
- oopsbadpwformat, oopschangepasswd, oopsempty, oopslocked, oopslockedrename, oopsmanage, oopsmissing, oopsmngcreateweb, oopsmore, oopsnoformdef, oopsnowikiuser, oopsnoweb, oopspreview, oopsregemail, oopsregexist, oopsregpasswd, oopsregrequ, oopsregthanks, oopsregwiki, oopsrenamenotwikiword, oopsresetpasswd, oopsrev, oopssave, oopstopicexists, oopsupload
- Authentication:
- oopslogon, oopsaccesschange, oopsaccesscreateweb, oopsaccessgroup, oopsaccessrename, oopsaccessview, oopsaccessvote, oopsauth, oopswrongpassword
- System Errors:
- oopsmoveerr, oopsrenameerr, oopssaveerr, oopssendmailerr, oopssoftwareerr
- Preview templates:
- preview
- page
- previewbody
- previewsidebar
- previewtopicactions
- Diff templates:
- rdiff
- page
- rdiffbody
- rdiffsidebar
- rdifftopicactions
- Rename/Move templates:
- rename, renameconfirm, renamerefs
- renamebase
- page
- renamebody
- renamesidebar
- renametopicactions
- Search templates:
- search, searchbookview, searchformat, searchrenameview
- searchbase
- page
- searchbody
- searchsidebar
- searchtopicactions
- View templates:
- view
- page
- viewbody
- viewsidebar
- viewtopicactions