This page describes the official plugins and providers available for
ScrewTurn Wiki.
They are all included in the
standard download packages.
SQL Server Data Providers
ScrewTurn Wiki 3.0 is now using the concept of
federated data providers, meaning that you can configure the Settings Storage Provider and all other data providers are configured automatically.
The following providers are available for SQL Server, all packaged in
SqlServerProviders.dll:
- SQL Server Settings Storage Provider (
ScrewTurn.Wiki.Plugins.SqlServer.SqlServerSettingsStorageProvider) - SQL Server Users Storage Provider (
ScrewTurn.Wiki.Plugins.SqlServer.SqlServerUsersStorageProvider) - SQL Server Pages Storage Provider (
ScrewTurn.Wiki.Plugins.SqlServer.SqlServerPagesStorageProvider) - SQL Server Files Storage Provider (
ScrewTurn.Wiki.Plugins.SqlServer.SqlServerFilesStorageProvider)
Configuration
The only configuration they need is a valid SQL Server connection string.
If you are using the
federated mode, the connection string must be set in the "web.config" file, as explained in the
installation instructions.
If you are using the providers separately, you can set the connection string in the
Provider section of the administration interface, as explained in the
help section.
Active Directory Provider
The Active Directory plugin allows you to authenticate using your Active Directory credentials.
Configuration
The configuration string of the plugin must at least contain the mapping between ActiveDirectory groups and wiki groups in the form:
GroupMap=ActiveDirectoryGroup1:WikiGroup1
GroupMap=ActiveDirectoryGroup2:WikiGroup2
You can also map multiple AD groups to the same wiki group or the other way round, for example:
GroupMap=ActiveDirectoryGroup1,ActiveDirectoryGroup2:WikiGroup1
GroupMap=ActiveDirectoryGroup1:WikiGroup1,WikiGroup2
Other configuration options are:
CommonGroups=wikigroup1[,WikiGroup2...]
gives all AD users membership in common wiki groups (Users, etc.)DefaultGroups=WikiGroup1[,WikiGroup2...]
gives AD users with no wiki group membership default wiki groups (Users, etc.)Domain=some.domain
authenticates against the given domain (if not specified tries to resolve it from the local machine)Server=somedomaincontroller.some.domain
authenticates against the given server if the webserver is not joined to the domain (this is mutual exclusive with Domain=some.domain)Username=someusername
Password=somepassword
queries Active Directory as the specified user on the domainDefaultEmail=example.com
In case the user doesn't have an email address in his ActiveDirectory profile, sets the email to a predefined value in the form displayname@example.comCaseInsensitive
login username is case insensitive.
To activate automatic login with your Active Directory credentials, you have to configure your IIS server to enable "Windows Authentication" and to disable "Anonymous Authentication".
You have also to modify the
web.config file and add the following string inside the
<system.web /> section:
<anonymousIdentification enabled="false" />
<authentication mode="Windows" />
In Internet Explorer to avoid the username and password prompt, remember to add the wiki to the trusted sites list. This way IE sends authentication data automatically based on your current Windows account.
Formatter Providers
ScrewTurn Wiki also includes some formatter providers that allows you to add functions to your wiki.
Download Counter Plugin
The
Download Counter Plugin allows you to count the number of times a file or attachment was downloaded. Once installed (no configuration needed), you can use the following markup anywhere in your wiki:
<countDownloads pattern="..."[ startDate="yyyy/mm/dd"]>
<file name="..."[ provider="..."] />
<attachment name="..." page="..."[ provider="..."] />
</countDownloads>
The
pattern attribute determines the output text of the formatter. It can contain any string and any of the following placeholders (case insensitive):
- #COUNT#: total download count
- #DAILY#: downloads per day
- #WEEKLY#: downloads per week
- #MONTHLY#: downloads per month.
startDate is the date used for calculating the daily, weekly and monthly downloads values. If omitted,
January 1st, 2009 is assumed.
The
countDownloads root tag can contain one or more
file and
attachment elements. The
name attribute is respectively the full name of the file or the name of the attachment. The optional
provider attribute is the full type name of the files storage provider that manages the file or attachment. If omitted, the default provider is assumed. For attachment elements, the
page attribute specifies the name of the page the attachment belongs to.
The output of the plugin is determined by the
pattern attribute. The pattern string is rendered, replacing the placeholders with their respective calculated values.
For example, a pattern string formed as follows:
Downloads: #count# (#weekly# downloads per week)
Would generate an output like this:
Downloads: 1234 (45 downloads per week)
Caching
The plugin caches its output for 5 minutes, so that the load against the data storage is reduced.
Multilanguage Content Plugin
The
Multilanguage Content Plugin allows you to write and display content in different languages. You must wrap language-specific content with the following XML tags:
<en-us>Content in English.</en-us>
<it-it>Content in Italian.</it-it>
<fr-fr>Content in French.</fr-fr>
...
At this moment, the plugin only supports the languages available for the wiki's user interface. If a language is missing for a block of content, the plugin will display the content in the default language of the wiki. If the content does not specify any language, the plugin will display all the content.
You can localize (translate) the content both in pages and meta-files (Sidebar, Header, etc.).
Note: due to the architecture of the Wiki Engine, the
Multilanguage Content Plugin does not support
{TOC} tags.
Configuration
If you specify a configuration string equal to
display warning, the plugin will display a message at the top of the page, informing the user on the type of translation available (content translated in her language, content not available in her language), and presenting a link to the Language Selection page.
Unfuddle Tickets Plugin
The
Unfuddle Tickets Plugin allows to display a list of open tickets, retrieving them from an
Unfuddle account. You can see an example in the
tickets page.
Simply place the following markup in a page to get the tickets list:
{Unfuddle}Why Unfuddle?
Simple. We use
Unfuddle for managing the
ScrewTurn Wiki project and we find the service simply outstanding. We needed a way to display the open tickets to the public, so we wrote this plugin. Even if you don't use
Unfuddle, you might find it useful as a starting point for writing your own version, linked to your issue tracker of choice.
Configuration
The configuration string of the plugin simply consists in three lines:
http://ACCOUNT_NAME.unfuddle.com/api/v1/projects/PROJECT_ID/
USERNAME
PASSWORD
Make sure to replace
ACCOUNT_NAME,
PROJECT_ID,
USERNAME and
PASSWORD with the appropriate values (the user account needs read-only access to all the project features). Also make sure to replace
http with
https if your account uses SSL.
Caching
The plugin caches its output for 10 minutes, so that the load on Unfuddle's servers and network traffic are reduced.
Footnotes Plugin
The
Footnotes Plugin, originally built by
Jens Felsner allows to add footnotes and references to your wiki pages.
You can use the following syntax:
Some text that needs a reference<ref>Reference content</ref>
...
<references />
The content of
<ref></ref> can be anything: plain text, a link, whatever. The plugin will render your footnotes replacing the
<references /> tag.
RSS Feed Plugin
The
RSS Feed Plugin allows to display the latest item in a generic RSS feed, or alternatively the latest tweet in a
Twitter feed.
You can use the following syntax:
{RSS:http://path/to/the/rss/feed.xml}
{Twitter:http://twitter.com/statuses/user_timeline/user-id.rss}