DokuWiki Installer


This page assists in the first time installation and configuration of Dokuwiki. More info on this installer is available on it's own documentation page.

DokuWiki uses ordinary files for the storage of wiki pages and other information associated with those pages (e.g. images, search indexes, old revisions, etc). In order to operate successfully DokuWiki must have write access to the directories that hold those files. This installer is not capable of setting up directory permissions. That normally needs to be done directly on a command shell or if you are using hosting, through FTP or your hosting control panel (e.g. cPanel).

This installer will setup your DokuWiki configuration for ACL, which in turn allows administrator login and access to DokuWiki's admin menu for installing plugins, managing users, managing access to wiki pages and alteration of configuration settings. It isn't required for DokuWiki to operate, however it will make Dokuwiki easier to administer.

Experienced users or users with special setup requirements should use these links for details concerning installation instructions and configuration settings.

For security reasons this script will only work with a new and unmodified Dokuwiki installation. You should either re-extract the files from the downloaded package or consult the complete Dokuwiki installation instructions

driven by DokuWiki powered by PHP
Mantis Users Directory [Mantis Bug Tracker Wiki]

User Tools

Site Tools


This is an old revision of the document!

Mantis Users Directory

Author: Victor Boctor


Recently, I've decided to add a users directory to Mantis Website. This directory lists some of the companies / projects that uses the Mantis Bug Tracker. At the moment, the process for an entry to be added is as follows:

  • An authorized person from the organization sends me an email.
  • I add the entries that I got about once a month.
  • I reply back confirming that the entry has been added, thank them for submitting it, and requesting a link back if possible.

The data that is currently captured is:

  • The email (in one of my email boxes) – not a very reliable repository. The email has the contact name, contact email address, and request for addition.
  • The company/project name.
  • The URL of the company.
  • The URL of the Mantis installation if public.

The problem with this process is that it is a manual process which ends up consuming from my time as well as causing a delay from the time the entry was submitted till the time it is added. This is in addition to potentially losing some entries.

How can this be automated?

Request Form

  • Contact Name
  • Contact Email Address
  • Company/Project Name
  • Website URL
  • Mantis URL
  • Comments
  • Captcha - Used to confirm that the form is not submitted by a bot.

Email to Confirm Contact Email Address

  • Send a confirmation email to the contact email. The contact email will need to click on a link to confirm his address.
  • Delete entries in the database that hasn't been confirmed for a week or longer.

Approval Request Email

  • Once the email is confirmed, then a request for approval is sent to the administrator. The request email will include all the information about the directory entry + an approve / reject hyper links.
  • If the administrator clicks approve, then the directory entry is added and a notification email is sent to the person who submitted the request.
  • If the administrator clicks reject, then no email is sent and the entry is discarded form the database.

Entry Added Email

  • This is the email that is sent to the person who submitted the request when the request is approved.

Users Directory Page

This page is similar to the users directory that we currently have. However, it is populated from the approved entries in the database, rather than from entries that are hard-coded in the PHP file. Following are some guidelines:

  • Entries are group by the first letter of the company name.
  • Empty groups must not be displayed (e.g. if no companies start with Z, then don't display it).
  • Within each group, entries are sorted alphabetically by the company name.
  • High profile entries are to be displayed in bold or have an icon next to them.
  • The total number of entries should be shown at the end of the page.

Database Schema

The database used will be a MySQL database. The schema should look as follows:

mantis_user_directory_entry table

  • entry_id - primary key - auto-increment
  • hash - an auto-generate hash that is used when approving / rejecting the entry. The entry_id is not used since it is a predictable sequential number.
  • date_submitted - timestamp
  • company_name - 50 varchar
  • contact_name - 50 varchar
  • contact_email - 255 varchar
  • website_url - 255 varchar
  • mantis_url - 255 varchar
  • comments - text
  • status - int(1) - (0 - submitted, 1 - confirmed, 2 - approved).
  • high_profile - int (1) - (0 - no, 1 - yes) - examples of high profile mantis users are Airbus, Volvo, Zend, etc. – This will be set manually in the database, default 0.

Technical Requirements

  • Support MySQL 4.x/5.x database
  • Support PHP 4.x/5.x
  • Use PHPMailer for sending emails. There should be a configuration entry that can be used to specify the path where phpmailer is installed on the webserver.
  • Have a single configuration file (no changes to source files to modify configs).
  • Follow Mantis coding guidelines (
  • It must be very easy to change the users directory page layout or the content of the emails.
mantisbt/users_directory.1164514899.txt.gz · Last modified: 2008/10/29 04:31 (external edit)