You are here: Foswiki>System Web>NatSkinPlugin (17 Mar 2013, micha)EditAttach

The Natural Skin Plugin


This is the supplemental plugin for the NatSkin. Its main purpose is to supply "skin states" to control different styles and variations to be switched dynamically while you are online.

The documentation of the NatSkinPlugin only covers the additional tags that have been implemented. Have a look at the NatSkin topic for more information.



Syntax: %CURREV%

returns the current topic revision



Syntax: %NATFORMBUTTON{";lt;format>"}%

returns a link to add or change the form attached to a topic. This will be shown on the edit screen depending on WEBFORMs being defined or not. More precisely NATFORMBUTTON returns
  • an empty string if there are no WEBFORMS defined
  • or an "Add form" link if there are but no form is attached yet
  • or a "Change form" link to change the current form

The optional %lt;format> string may contain the following variables
  • $url: the url of the link
  • $action: the link text
  • $1: the complete anchor including the link and the text

For example %NATFORMBUTTON{"| $1"}% will generate a pipe and the formbutton if possible.



returns a list of all known skin styles.



returns a list of all known styles variations.


Syntax: %NATFORMLIST{...}%

returns a formatted list of forms that can be attached to a topic. typically used in the changeform skin template. paramters:
  • header
  • format
  • footer
  • separator
  • selected
  • web
  • topic



substitute for %MAXREV% which differes all too much on Beijing, Cairo and Dakar. This version grants to behave the same.



substitute for the %REVISIONS% tag which only works on the PatternSkin.


Syntax: %NATWEBLOGO{format="..."}%

returns either a textual or a graphical a logo to be used in the header bar depending on a set of preference variables.

NATWEBLOGO will check for a couple of preference variables in the following order:
  1. return %NATSKIN_LOGO% if defined
  2. return %WIKILOGOIMG% if defined
  3. return %WEBLOGOIMG% if defined
  4. return %WIKITOOLNAME% if defined
  5. or return the string 'Foswiki' otherwise

If you want to have a different logo using NatSkin than using another skin on the same site then add the following to the SitePreferences:

  * Set NATSKIN_LOGO = /path/to/your/natskinlogo.gif
  * Set WIKILOGOIMG = /path/to/your/defaultlogo.gif


Syntax: %PREVREV%

returns the previous topic revision taking NumberOfRevisions into account


Syntax: %USERACTIONS{"<format>" ...}%

display separate sets of actions for anonymous or authenticated users.
  • sep="<span> class="natSep">|</span>": separator between actions
  • guest="$login$sep$register$sep$print": format string of actions for guests
  • format="$user$sep$logout$sep$print<br />$edit$sep$attach$sep$move$sep$raw$sep$diff$sep$more": format string of actions for authenticated users
  • restrictedactions="...": list of user actions that are disabled if the user has got no write access to the current topic
  • help="...": help topic used for $help, defaults to UsersGuide (see below)

The "guest" and "format" format strings can use the following variables
  • $attach: link to "attach" topic action
  • $diff: link to diff
  • $edit: link to edit
  • $help: link to a help page
  • $login: link to log in
  • $logout: link to log out
  • $more: link to more dialog
  • $move: link to move dialog
  • $pdf: link to export pdf using the GenPDFAddOn
  • $print: link to print action
  • $raw: link to display topic in raw format
  • $register: link to registration
  • $sep: separator string
  • $user: name of current authenticated user


Syntax: %WEBCOMPONENT{"name" web="<name>" lineprefix="<prefix>" multiple=""}%

  • name: The name of the WebComponent topic.
  • web="<name>": The web to fetch the component from. Default to the current web.
  • lineprefix="<prefix>": A prefix to be added to each line of the web component topic before inclusion. Typically three space characters.
  • multiple : If defined WEBCOMPONENT will allow for multiple inclusions of the same web component topic.

display a web component. A web component "MyComponent" is searched looking for
  1. WebMyComponent in the current web,
  2. SiteMyComponent in the Main web,
  3. SiteMyComponent in the System web and
  4. WebMyComponent in the System web.

The WEBCOMPONENT tag will retrieve the component where it was found first. Thereby the component can be customize for each web separately if required. If it is not defined locally a predefined component will be returned. Components can be predefined in the Main and the System where the name of the component is prefix with "Site" to distinguish them from the local web components that may already be present in the Main and the System. As a last resort the local components of the System are used.

By default the NatSkin comes with predefined components

see also: MYSIDEBAR

Installation Instructions

See NatSkin#Installation_Instructions


Foswiki::Plugins::ZonePlugin>=3.1Required. required for Foswiki < 1.1

Plugin Info

Plugin Author: Michael Daum
Copyright ©: 2003-2013, Michael Daum
License: GPL (GNU General Public License)
Release: 3.99_007
Version: 3.99_007
Change History:  
28 Mar 2013: second beta
14 Mar 2013: first beta of new release
16 Mar 2005: Initial version
Home: Foswiki:Extensions/NatSkinPlugin
Support: Foswiki:Support/NatSkinPlugin
Topic revision: r1 - 17 Mar 2013, micha
This site is powered by FoswikiCopyright © CC-BY-SA by the contributing authors. All material on this collaboration platform is copyrighted under CC-BY-SA by the contributing authors unless otherwise noted.
Ideas, requests, problems regarding Foswiki? Send feedback