SkillsPlugin
This plugin allows users to specify what skills they have and their level of proficiency. The user can then display their skills on their home page, and view other users skills by browsing through specific categories/skills.
Example
Below is a screenshot of the users skill being displayed on their homepage. Click for the full image.
To get the skills displayed on the users home page, as in this example, see
SkillsDisplayOnHomePage.
User Interface
Users
The user interface for general users can be found at the following places:
Managing Categories and Skills
To create, modify or delete categories/skills, follow the instructions at
SkillsAdminIntroduction.
Syntax Rules
The Plugin handles a
%SKILLS{}%
variable that performs different actions. The
action=""
is a required parameter.
-
%SKILLS{ action="userskills" }%
- Displays the skills for the specific user. Parameter | Comment | Default |
user="WikiGuest" | The user who's skills to display (you do not need to specify the Main web). | Current user |
twisty="open" | Can be: =open - starts expanded; closed - starts collapsed; off - disabled. | "closed" |
-
%SKILLS{ action="edit" }%
- Displays a form allowing the current logged in user to edit their skills.
-
%SKILLS{ action="editall" }%
- Displays a form allowing the current logged in user to edit their skills in a big table.
-
%SKILLS{ action="browse" }%
- Lists the specific skills/categories, and the users who have them. Parameter | Comment | Default |
category="Cat1, Cat2" | If category is defined, will list all the users who have skills in that category. | All categories |
skill="Skill1, Skill2" | If category and skill are defined, lists all the users who have that skill. | All skills |
twisty="open" | Can be: open - starts expanded; top - open at the top level, closed at the second level; closed - starts collapsed; off - disabled. | "closed" |
-
%SKILLS{ action="search" }%
- Provides a form allowing you to search users skills.
-
%SKILLS{ action="showcategories" }%
- shows all existing categories. Parameter | Comment | Default |
format | Format of a category. Tokens: $category , $n . | "$category" |
separator | Separator between tags, $n can be used for newlines. | ", " |
-
%SKILLS{ action="showskills" }%
- shows all existing skills. Parameter | Comment | Default |
category | Specific category | all |
format | Format of a skill. Tokens: $skill , $category , $n . | "$skill" |
separator | Separator between skills, $n can be used for newlines. | ", " |
categoryseparator | Separator between categories, $n can be used for newlines. | "$n" |
prefix | Prefix before each category. Tokens $category , $n . | none |
suffix | Suffix after each category. Tokens $category , $n . | none |
-
%SKILLRATINGS{ ... }%
- shows a list of the skill levels, as set by %SKILLSPLUGIN_RATINGS% (see below). Parameters are:
-
format="..."
- set the format of each skill name, where "..." is a string that may contain the following placeholders:
-
$name
- the skill name. You can replace whitespace in the string by providing a replacement in brackets e.g $name( )
will expand to the level name with all whitespace replaced by  
.
-
$value
- the numeric value of the skill level
-
$marker
- the selection marker
- Standard placeholders as described in FormatTokens
-
separator="$n"
- output list separator
-
selection="..."
- Entry to be selected in list (integer). If one of the skills matches this selection, then $marker
in the format
will be expanded.
-
marker="selected" - Text for =$marker
if the item matches selection
- Example: (if plugin is enabled)
%SKILLRATINGS{"$name(+)=$value$marker" separator="; " selection="3" marker=" (selected)"}%
expands to %SKILLRATINGS{"$name(+)=$value$marker" separator="; " selection="3" marker=" (selected)"}%
Plugin Settings
Plugin settings are stored as preferences variables in
SitePreferences (or in WebPreferences, or in individual topics).
- RECOMMENDED: By default, skills are taken from / added to an external file. You can use a standard Foswiki topic instead, by defining the
SKILLSPLUGIN_SKILLSTOPIC
preference to be a fully qualified topic name e.g.
-
Set SKILLSPLUGIN_SKILLSTOPIC = MyWeb.MySkillSet
Normal Foswiki protections on this topic are respected. You must use a skills topic if you want skill descriptions to appear as tooltips.
- You can override the default skill levels by setting the preference
SKILLSPLUGIN_RATINGS
to a comma-separated list of level names e.g.
-
Set SKILLSPLUGIN_RATINGS = None,Child,Adolescent,Adult,Crusty
The default is None,Ancient Knowledge,Working Knowledge,Expert,Guru
IMPORTANT! If you used the ALLOWADDSKILLS preference with a prior
version, please note that this preference was inherently insecure and has
been removed. Define SKILLSPLUGIN_SKILLSTOPIC instead, and use standard
Foswiki permissions to control access to it.
Each category is defined as a first-level heading, using ---+, subcategories
using ---++, and skills in that category as lowest level headings. You can have as many levels of headings as you need. Category and skill descriptions
should follow immediately after the relevant heading. For example:
All text up to the first heading will be ignored
---+ Air Transport
Travelling in the air
---++ Flying a Helicopter
Anything with a big propellor on the top
---++ Hot Air Ballooning
Politician-powered travel
---+ Land Transport
Giving in to gravity
---++ Walking
Good for you
---++ Driving
Bad for everyone else
Installation Instructions
You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.
Open configure, and open the "Extensions" section. Use "Find More Extensions" to get a list of available extensions. Select "Install".
If you have any problems, or if the extension isn't available in
configure
, then you can still install manually from the command-line. See
http://foswiki.org/Support/ManuallyInstallingExtensions for more help.
Next:
- Create a skills topic, and add some categories and skills
Plugin Info