The Doctis project aims to add support to MantisBT for tracking documents and the issues raised against them during a formal review process.
Documents can be any set of electronic files or physical objects that can have suitable configuration data to uniquely identify them.
The documents themselves do not need to be contained within the system, but rather their leading particulars will include a reference number, and/or a URL to their location.
The easiest way to try Doctis is to duplicate the developers test environment, hosted in a VirtualBox running Debian Linux.
A script to automatically clone, install, and configure Doctis is under development and is currently undergoing beta testing.
- simple to use, requires little to no training
- track status of documents through the review cycle
- track status of issues identified during document reviews (tailor existing mantis functionality)
- maximise maintainability (minimise the diff with mantisbt codebase)
- bulk import of document data from spreadsheet, csv, tsv
- add group feature (users can be assigned to groups)
-
Install VirtualBox on any system it is supported on.
-
Create a new virtual machine, configured with 4GB Memory (RAM), 10+ GB disk, bridged network adaptor.
-
Install a Debian based Linux virtual machine using the ISO image at Debian-13.1.0-amd64-netinst.iso Debian 12 or recent Ubuntu distribution should also work.
-
select the VirtualBox default 'unattended' install option, leave other options as default (this results in a GNOME1 desktop environment)
-
upon initial login, open a terminal window (click top-left corner and then find the black terminal icon)
-
enable sudo (where <username> is your login username) and shutdown2
$ su - # usermod -aG sudo <username> # shutdown now-
create a clone (backup) of this virtual machine as a reference baseline (recommended)
-
start a virtual machine and login to your account
-
-
Download and install the Doctis project.
SIMPLE:
For a default install, enter this single statement into a command shell:
cd Documents && wget -O- https://tinyurl.com/get-doctis | bash
or,
ADVANCED:
- make a working directory, or just change to the existing '~/Documents' directory
cd Documents- copy the provided install script (below) into a file of your choosing, ie. 'install.sh' or fetch it online with:
wget -O- https://tinyurl.com/get-doctis > install.sh- customise the configuration options in the install.sh script as needed (optional):
pico install.sh
- enable the executable property on the script and run it:
chmod +x install.sh ./install.sh
-
Follow the getting-started tips which should eventually be displayed.
NOTE: in order to create new users in mantisbt/doctis, the ability to send email is required and perhaps the most-difficult way to achieve this is to create an App Password for a gmail account. However the system can still be used with predefined user accounts without being able to send email. These accounts can be modified when logged into Doctis with an administrator account. The default account is 'administrator' with password 'root'.
WARNING: this script should only be used inside your Debian based Linux virtual machine. (note this quoted script may be obsolete and you should obtain the lastest online version as per above)
#!/bin/bash
# Customise the email and database credentials for the project to use
email_addr="[email protected]"
email_hash="GmailAppPassword"
mysql_pass="password"
# Do we want a local machine (localhost) only server
# or one available to a Local Area Network (LAN) via ip address (recommended)
# or Fully Qualified Domain Name (FQDN), for public internet server (advanced)
#domain="locahost"
domain=$(ip r get 1 | grep -Eo 'src [^ ]+' | awk '{print $2}')
#domain="my.domain.com"
wget --quiet https://raw.githubusercontent.com/Inspirati/doctis/refs/heads/dev/admin/tools/install-doctis.sh
chmod +x install-doctis.sh
./install-doctis.sh install all ${domain} ${mysql_pass} ${email_addr} ${email_hash} "doctis" | tee logfile.txt```For complete documentation, please read the mantisbt administration guide included with this release in the doc/<lang> directory. The guide is available in text, PDF, and HTML formats.
There is currently no built-in user interface support for bulk adding documents to the database. Bulk document data needs to be added to the database directly using other tools, such as phpMyAdmin or the CLI.
Guidance on keeping this fork standarised with is origins, MantisBT.
More detailed documentation can be found at https://www.mantisbt.org/docs/
-
config_defaults_inc.php- this file contains the default values for all the site-wide variables.
-
config/config_inc.php- You should use this file to change config variable values. Your
values from this file will be used instead of the defaults. This file
will not be overwritten when you upgrade, but config_defaults_inc.php will.
Look at
config/config_inc.php.samplefor an example.
- You should use this file to change config variable values. Your
values from this file will be used instead of the defaults. This file
will not be overwritten when you upgrade, but config_defaults_inc.php will.
Look at
-
core/*_api.php- these files contains all the API library functions. -
global variables are prefixed by
g_ -
parameters in functions are prefixed with
p_-- parameters shouldn't be modified within the function. -
form variables are prefixed with
f_ -
variables that have been cleaned for db insertiong are prefixed with
c_ -
temporary variables are prefixed with
t_. -
count variables have the word
countin the variable name
More detail can be seen in the coding guidelines at: https://www.mantisbt.org/guidelines.php
-
The files are split into three basic categories, viewable pages, include files and pure scripts. Examining the viewable pages (suffix
_page) should make the basic file format fairly easy to see. The file names themselves should make their purpose apparent. The approach used is to break the work into many small files rather than have a small number of really large files. -
For legacy and namespace reasons, there are a few naming anomolies. In particular:
- 'bug' and 'issue' should (for the most part) be considered analogous
- 'dwg' and 'document' should be considered analogous ('doc' and 'document' are keywords which tend to be seriously overloaded)
-
All files are to be edited with TAB SPACES set to 4.
If you are interested in contributing to the development and/or testing of the project, raise a GitHub issue expressing your interest.
Should the installation fail please raise an issue and attach a copy of the generated logfile.txt