DokuWiki Integration to glFusion CMS

DokuWiki is a standards compliant, simple to use Wiki, mainly aimed at creating documentation of any kind. It is targeted at developer teams, workgroups and small companies. It has a simple but powerful syntax which makes sure the datafiles remain readable outside the Wiki and eases the creation of structured texts. All data is stored in plain text files – no database is required.

The DokuWiki Integration Plugin for glFusion provides an integration with your glFusion v1.2.0+ website. This plugin is based on DokuWiki 2009-12-25c, the latest release available at the time of publishing this plugin release.

This plugin will provide the following features:

  • Integrated user authentication - All glFusion users will be mapped to DokuWiki. There will be no need to have DokuWiki provide any user administration.
  • DokuWiki's contents will be searched using glFusion's Search and Advanced Search.
  • glFusion's administrators (members of the Root group) will have administrative capabilities in DokuWiki.
  • glFusion groups can be used to assign permissions in DokuWiki.
  • Integration with glFusion's What's New block.
  • Support for a [wiki:] auto tag.
  • Support for all glFusion auto tags.
  • Automatic detection of the users language setting so DokuWiki will use the same language.
  • DokuWiki will be integrated into the glFusion site's layout (this is accomplished by using a custom DokuWiki skin).
  • Integration with the Tag Plugin

System Requirements

DokuWiki has the following system requirements:

  • PHP 5.1.2 and higher.
  • PHP's GD extension for use with libGD 2 (a graphics library) is recommended but not needed
  • DokuWiki should work in PHP's Safe Mode, depending on your hosters configuration you may need to use the safemodehack option
  • DokuWiki is designed to run with PHP's Option register_globals set to off.

This integration is based on glFusion v1.2.0 and will not work with previous version of glFusion.

DokuWiki requires that your site be configured with UTF-8 encoding. If you site is not already setup for UTF-8, you may want to consider converting. Installing DokuWiki on a non-UTF-8 site will work, but some characters may get corrupted.

For those running on Windows IIS, if you have IIS password installed to mimic .htaccess password behavior you will have issues with DokuWiki. In order to get around this delete all .htaccess files in /public_html/dokuwiki/. Do not delete the .htaccess files unless you have a problem, this is a rare set of circumstances.

Installation

The DokuWiki Plugin uses the glFusion automated plugin installer. Simply upload the distribution using the glFusion plugin installer located in the Plugin Administration page.

Manual Installation

Some users have reported issues when using the automatic plugin installer. Due to the size of the DokuWiki plugin (number of files in the distribution), some web servers may timeout before the plugin installer is able to copy all the files to their proper location. In this case, you will need to perform a manual installation.

Once you have the files loaded onto your web server, you will need to rename or copy the following .dist files to their corresponding .php file:

  • public_html/conf/acl.auth.php.dist to acl.auth.php
  • public_html/conf/local.php.dist to local.php
  • private/plugins/dokuwiki/config.php.dist to config.php

Once you have renamed the distribution files (new installs only, upgrades do not need to copy these files), you can now tell glFusion to install the plugin. Go to the Plugin Administration screen and select the install icon from the plugin list.

DokuWiki must have write permissions to the public_html/dokuwiki/data/ directory and all directories below it. The plugin installer will check these permissions, please ensure they are writable by your web server.

Upgrading DokuWiki

To upgrade an existing DokuWiki installation, simply upload the latest version through the Plugin Administration page. All your wiki pages will be left as they are.

Configuring DokuWiki

The DokuWiki plugin allows you to tailor some of the glFusion integration features by modifying the config.php file located in the private/plugins/dokuwiki/ directory.

Enable What's New Integration

If this is set to 1, DokuWiki will be integrated into the glFusion What's New block. Set to 0 to disable integration.

  $_DW_CONF['enable_whats_new']           = 1;

What's New Days

Set this to the number of days that will be included in the What's New block.

  $_DW_CONF['whats_new_days']             = 14;

What's New Length

Set this to the maximum number of characters wide you will allow listings in the What's New block. Truncated items will have a … appended to the end.

  $_DW_CONF['whatsnew_length']            = 24;

Login Required

Set this to 1 to require a user to be logged into the site before granting access to DokuWiki. Set to 0 to allow non-logged in users access.

  $_DW_CONF['loginrequired']              = 0;

Restrict to Group

If you want only allow access to DokuWiki for a specific group, place that group name in the . Leave the entry as to allow all groups access to DokuWiki.

  $_DW_CONF['restrict_to_group']          = '';

Disable Search Integration

Set this to 1 to disable search integration with glFusion's main search feature. Set to 0 to allow DokuWiki results to be displayed in glFusion's main search.

  $_DW_CONF['disable_search_integration'] = 0;

glFusion Left / Right Blocks

Select whether the left / right / both / or none display.

  • 0 → Display Left navigation only
  • 1 → Display Right navigation only
  • 2 → Display both Left and Right
  • 3 → None
  $_DW_CONF['displayblocks'] = 0;

Public Directory

If you would like to rename the directory where DokuWiki resides inside glFusion's public_html/ directory, change the name here.

  $_DW_CONF['public_dir']			= '/dokuwiki/';

DokuWiki Configuration

There are a few protected DokuWiki configuration options that cannot be edited:

  • User Manager is disabled by the plugin - user management is done in glFusion
  • The following Configuration Management fields cannot be edited
    • Use access control lists
    • Autogenerate passwords
    • Authentication backend
    • Password encryption method
    • Superuser

All other DokuWiki configuration settings can be customized to meet your specific needs. For full details on each configuration option, please see wiki:config.

DokuWiki Templates

DokuWiki's layout can be customized through templates (aka. skins). The DokuWiki Integration Plugin must use a customized DokuWiki template to properly integrate the look and feel of the glFusion site. Included with the plugin is one customized skins, glfusion.

The glfusion skin is the default skin included with DokuWiki but it has been customized by removing much of the header information that is provided by glFusion.

If you wish to change the look and feel, or use a different DokuWiki template, you must make the following changes (at a minimum):

  • add a call to glFusion's COM_siteHeader() near the beginning of the template
  • add a call to glFusion's COM_siteFooter() at the bottom of the template
  • remove all HTML header tags (you will need to leave the meta data)

Review the modifications to the glfusion templates for examples.

glFusion Groups and DokuWiki Permissions

After a successful installation, there are two default permissions:

  • glFusion Root members will be DokuWiki administrators
  • ALL users will have read access

To grant additional permissions, you can map glFusion groups to DokuWiki permissions. To map these permissions, go into the Admins Only → DokuWiki → Access Control List Management. From here, you will see the group ALL has Read permissions. You can add a new group by entering its name in the text box and selecting the permissions.

DokuWiki does not support spaces or _ (underscores) in the Group names. So these items are stripped from the glFusion groups. For example, the glFusion group Logged-in Users will become LoggedinUsers.

glFusion Integration

The DokuWiki plugin allows you to integrate certain parts of DokuWiki in with your glFusion site.

What's New Block

You can enable / disable having DokuWiki display new / edited files in glFusion's What's New Block by editing the config.php file in the plugins/dokuwiki/ directory. Set $_DW_CONF['enable_whats_new'] = 1 to enable, or 0 to disable.

To set how long items show in the What's New block, change the $_DW_CONF['whats_new_days'] setting to the number of days you want to use.

You can also trim (truncate) the page names displayed in the What's New block (to prevent wrapping) by setting the $_DW_CONF['whatsnew_length'] option to the number of characters to use.

Auto Tag

This plugin creates a new auto tag: [wiki:] To utilize this tag in your glFusion articles or forums, the syntax is:

  [wiki:documentid optional link text]

The document id can be found in the URL (the document id for this article is dokuwikiplugin:start).

glFusion Auto Tags

The DokuWiki plugin supports all glFusion auto tags in the page content. This allows you to easily reference other content from your glFusion site in the wiki documents.

Using DokuWiki

For all usage questions and documentation on how to utilize DokuWiki, please refer to the DokuWiki Web Site.

ChangeLog

2.0.0

  • New configuration option to control which blocks display.
  • Improved glFusion integration - now supports the PLG_itemSaved and PLG_itemDeleted plugin calls.
  • Upgraded core DokuWiki release to 2009-12-25c
  • Search results now honor url-rewrite setting
  • Ensure both path and URL are properly set in DW configuration

v1.7.4

  • Fixed issue where anonymous users were able to subscribe to page changes

v1.7.3

  • Fixed issue where auto tags did not honor DW url rewrite setting
  • Add Dutch translation

v1.7.2

  • Fixed issue where glFusion email was not properly set
  • Added autotags plugin to implement glFusion auto tags in the wiki
  • Changed initial setting for use nice URLs to none
  • Both DokuWiki and glFusion use the same EmailValidator - ensure it is only loaded once.
  • Change initial configuration settings so URL rewrite is not used.
  • Fixed error in image retrieval where it did not know about glFusion permissions.

v1.7.1

  • Fixed LFI issue with main DokuWiki code
  • What's New block did not use DokuWiki's URL rewrite setting
 
Logged in as: Guest (Guest)
dokuwikiplugin/start.txt · Last modified: 2010/05/14 11:29 by Guest
 
Except where otherwise noted, content on this wiki is licensed under the following license:GNU Free Documentation License 1.2