====== User Page Plugin ======

I wanted a namespace in my wiki for users to create their own personal 
pages. Rather than managing this namespace manually, I wanted DokuWiki 
to simply add each user's name to an index when registering.

===== Usage =====

This is a simple action plugin. There is no interaction with the user 
or admin. When the user registers, a page of your wiki will be modified 
using the user's name and other information. This will probably be 
a link to a page named after the user. You can also configure the plugin 
to create a new page with the user's name.

===== Configuration =====

^    Name    ^           Default          ^          Description                                 ^
|         id |                 wiki:users | Wiki page that will be modified.                     |
|   template |  %%  * [[@ID@|@NAME@]]\\n%%| Template of the text that will be added to the page. |
|     userid |                            | Wiki page that will be created.                      |
|     userns |                      False | Is the ''userid'' the name of a namespace?           |
| createpage |                      False | Should the ''userid'' page be created?               |

The default configuration will add an unordered-list item with the full 
name of the user, and linking to a page with the same ID as the user. If 
''userid'' is empty, then the page will be created in the same namespace 
as ''id'' with the user's ID as its name. The ''id'' page and the ''userid'' 
page don't have to be in the same namespace.

If you enable ''userns'', then the wiki ID ''userid'' is actually a namespace, 
and the user's personal page will be the default start page in that namespace.

Enabling ''createpage'' will automatically create the user's personal page. 
You need to add a page template to your wiki's data directory for this to work.
The plugin will look for template files in this order:

  - The namespace where the page will be created: ''user_ns:_template''
  - A non-standard template name in the namespace of the index page: ''index_ns:_userpage''
  - The namespace where the index page is: ''index_ns:_template''

Page templates cannot be editted within DokuWiki; you must upload the file 
manually using an FTP program.

Page templates, as well as the ''template'' and ''userid'' options can contain 
replacement text. All replacements are effective in page templates. In the 
''template'' option, only ''@ID@'', ''@USER@'', ''@NAME@'', and ''@EMAIL@'' are 
used. The ''userid'' option only replaces ''@USER@''.

^   Text  ^   Replacement                                                 ^
|    @ID@ | The ID of the user's personal wiki page.                      |
|    @NS@ | The namspace of the user's personal wiki page.                |
|  @PAGE@ | The name of the user's personal wiki page without namespace.  |
|  @USER@ | The user's ID.                                                |
|  @NAME@ | The user's full name.                                         |
|  @MAIL@ | The user's email address.                                     |
|  @DATE@ | The current date and time.                                    |

===== License =====

This plugin is licensed under the terms of the GNU General Public License.
You are free to use, copy, modify, etc. If you like the plugin and want
to do something nice for me, please consider dropping a few clams in 
the tip-bucket.

Copyright (C) 2007  Tom N Harris <tnharris@whoopdedo.org>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
