The Natural Skin Plugin

Support plugin for NatSkin

Description

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

Syntax: %CURREV%

returns the current topic revision

see also: NATMAXREV, PREVREV,

NATFORMBUTTON

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.

KNOWNSTYLES

Syntax: %KNOWNSTYLES%

returns a list of all known skin styles.

KNOWNVARIATIONS

Syntax: %KNOWNVARIATIONS%

returns a list of all known styles variations.

NATFORMLIST

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

NATMAXREV

Syntax: %NATMAXREV%

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

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

PREVREV

Syntax: %PREVREV%

returns the previous topic revision taking NumberOfRevisions into account

USERACTIONS

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 one of GenPDF…Plugins (weasyprint, prince-xml or wkhtmltopdf)
  • $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

WEBCOMPONENT

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

Arguments:
  • 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

Dependencies

NameVersionDescription
Foswiki::Contrib::CopyContrib>=2.0Required
Foswiki::Contrib::FamFamFamContrib>=2075Required
Foswiki::Contrib::JQSelect2Contrib>1.01Required
Foswiki::Contrib::WebFontsContrib>=1Required
Foswiki::Plugins::AutoTemplatePlugin>=2.01Required
Foswiki::Plugins::BreadCrumbsPlugin>=4318Required
Foswiki::Plugins::CaptchaPlugin>=2.0.0Optional
Foswiki::Plugins::DBCachePlugin>=12Required
Foswiki::Plugins::DiffPlugin>=2.0Required.
Foswiki::Plugins::FilterPlugin>=3491Required
Foswiki::Plugins::FlexFormPlugin>=5.3Required
Foswiki::Plugins::FlexWebListPlugin>=3493Required
Foswiki::Plugins::GridLayoutPlugin>=1.00Required
Foswiki::Plugins::ImagePlugin>=2.40Required
Foswiki::Plugins::JQueryPlugin>=7.00Required
Foswiki::Plugins::ListyPlugin>=1Required
Foswiki::Plugins::MetaCommentPlugin>=2.80Optional
Foswiki::Plugins::MimeIconPlugin>=1Required
Foswiki::Plugins::MoreFormfieldsPlugin>=4.00Required
Foswiki::Plugins::MultiLingualPlugin>=2.00Required
Foswiki::Plugins::NatEditPlugin>=8.00Required
Foswiki::Plugins::PageOptimizerPlugin>=0.10Optional
Foswiki::Plugins::RedDotPlugin>=1Required
Foswiki::Plugins::RenderPlugin>=6.00Required
Foswiki::Plugins::SecurityHeadersPlugin>=2.00Optional
Foswiki::Plugins::TopicInteractionPlugin>=1340Required
Foswiki::Plugins::WebLinkPlugin>=1Required
Foswiki::Plugins::ZonePlugin>=3.1Required. required for Foswiki < 1.1
Foswiki::Plugins::TopicTitlePlugin>1.00Required for Foswiki < 2.2

Change History

12 Feb 2019: major release for NatSkin 6.0
23 Jan 2017: better handing of revision infos being attached to a h1; removed detection of old Internet Explorers as well as warning for unsupported browsers; better support for Foswiki:Extensions/DiffPlugin; hide "New" button based on web, not on topic access rights
25 Feb 2016: improved support for pdf printouts; removed secure headers as that's a plugin of its own now
17 Jul 2015: better integration with Foswiki:Extensions/AutoTemplatePlugin; better detection of Internet Explorer versions; added edit_raw action; added support for Foswiki-2.0; properly searching for WebComponents in the web holding the local SitePreferences … which not necessarily is the user web
27 Feb 2015: finally 4.00
29 Aug 2014: third beta
28 Mar 2013: second beta
14 Mar 2013: first beta of new release
16 Mar 2005: Initial version

PackageForm edit

Author Michael Daum
Version 6.00
Release 12 Feb 2019
Description Support plugin for NatSkin
Repository https://github.com/foswiki/NatSkinPlugin
Copyright 2003-2019, Michael Daum http://michaeldaumconsulting.com
License GPL (GNU General Public License)
Home Foswiki:Extensions/NatSkinPlugin
Support Foswiki:Support/NatSkinPlugin
Topic revision: r1 - 14 Feb 2019, UnknownUser
© 2020 Ultranauts - 75 Broad Street, 2nd Floor, Suite 206, New York, NY 10004 - info@ultranauts.co