DokuWiki

It's better when it's simple

User Tools

Site Tools


plugin:issuetracker

IssueTracker Plugin (2nd Edition)

Compatible with DokuWiki

  • 2017-02-19 "Frusterick Manners" unknown
  • 2016-06-26 "Elenor Of Tsort" unknown
  • 2015-08-10 "Detritus" unknown
  • 2014-09-29 "Hrun" yes

plugin For easy issue tracking

Last updated on
2016-02-26
Provides
Syntax, Action
Repository
Source

Intro

Simply spoken, a user can easily report an issue for defined products. You may also use it as a little platform to discuss topics or follow up on tasks. A flexible report form is delivered to adapt it to your needs. Created Reports are added to an issue log (project). Before that they are checked if important values are complete.

The user is informed by a green info box if the issue was added successfully to the log file. A box will be displayed in the event of missing information. The issue gets an unique ID and will be stored to a file. The admin is informed by mail about a new report.

The complete issue list delivers a detailed overview of the reports. The list output is sortable and can be easily reduced (column wise), to fit your needs.

For security reason all HTML tags are stripped away. A small editor provide you some styling elements with own little syntax. By this xsEditor you can define some basics like text-decoration, lists, colors, links etc. for issue descriptions, comments and resolutions. The best way to go is writing the text first and then styling it.

Members of configured 'assign' groups are allowed to directly edit the entries of the issue list. They can see all columns by default. The issue list is sortable on all columns. The email addresses of 'assign' group members are automatically loaded into the lists select box to be easily set as issue related contact. Tickets fall back to 'New' status if the assignee is deleted. It is not mandatory to assign a responsible contact for an issue.

Admin / assignees and comment creator (not necessarily the Issue reporter) are allowed to modify and delete comments within a work log. If a user specific function is available can be seen by the modify Comment slider below the box and on the little delete-icon at the upper right side within the comment area. Modification info per comment displaying the date of change right hand side above the comment box.

Status modifications on the Issue List items are logged into a file (*.mod-log) to easily follow up who changed something and when. Such file will be created by the first modification of a list item per issue. A link will be visible on Issue Details to view the history of modifications.

IssueTracker provids also a Search function with highlighting found matches. You can enter one to multiple words, where each will be searched for. But it is not a search engine like Google so extended search patterns and logics will not work. The result is a list of linked Issues and Comments containing one or multiple words you are looking for.

⇒ Most current description & Live Demo: fcon - Issue Tracker

Syntax

Simply place the following syntax into the page markup:

====== Report an Issue ======
{{issuetracker>project=myProject1|product=myProduct 1.1,myProduct 1.2|display=form|prod_limit=ON}} 

====== List of Issues ======
~~NOCACHE~~
{{issuetracker>project=your_project|product=Rater|status=all|severity=all|display=issues|view=7|controls=off|myissues=on}}

====== Single Issue Link ======
{{issuetracker>project=project_name|id=3|display=single_issue}}

The optional Report Parameter prod_limit=ON will Limit the product drop-down select control to the Syntax provided products. They have to be configured within plugin configuration too.

IssueList Parameters status, severity, view and display will be set to default (status = ALL, severity = ALL, view = 10, display = ISSUES) if they are not defined.

Combination of status or severity parameters are allowed if they are comma separated:

Example:
--------
{{issuetracker>project=your_project|product=all|status=new,assigned|severity=critical,major|display=issues|view=15|controls=on|myissues=on}}

More information about syntax switches are provided at: IssueTracker description

Sites using this Plugin

You are using the IssueTracker?

Please put your link here:

Installation

Install the plugin using the Plugin Manager and the download URL above, which points to latest version of the plugin.

Refer to Plugins on how to install plugins manually.

Or just download and extract it as folder “issuetracker” into your “\lib\plugins” directory.

Changes

Configuration

The following configurations can be done by the configuration manager: Admin ⇒ Configuration Settings ⇒ Issuetracker Plugin Settings

config item value comment
plugin»issuetrackerd_format
Y-m-d G:i:s
Y-m-d G:i:s any valid date format expression
plugin»issuetracker»it_data
IssueTracker root within data folder (“” = meta)
plugin»issuetracker»upload
on/off allow symptom file uploads
plugin»issuetracker»max_fsize
1048576 limit file size for uploads in Byte (default 1MB = 1.048.576)
1 Kilo Byte =<tab9>1.024 Byte
1 Mega Byte = 1.048.576 Byte
plugin»issuetracker»ip_blocked
on/off turn on the anti-spam feature
plugin»issuetracker»ip_blockd_time
3 ip will be blocked for 3 minutes before another upload can be initiated
plugin»issuetracker»send_email»
Inform by mail about new issues ?
on/off global switch for following issue details modifications
plugin»issuetracker»mail_templates
Send html email
on/off send html-mails according provided templates instead of plain text
plugin»issuetracker»registered_users»
Edits only by registered users
on/off prevent misusage
plugin»issuetracker»auth_ad_overflow
Prevent AUTH:AD overflow
on/off Default = off, turn on only if AD with huge number of users (>1.000) is connected
(see also DW-Forum: AD Verbindung Limit 1000 values aufheben)
plugin»issuetracker»assgnee_list
loop through plugin conf path and load all assignee-files
needs unique file extension like 'assignees'
file extension Default empty
plugin»issuetracker»profile_updt
Sync on user profile changes
on/off
plugin»issuetracker»validate_mail_addr
Validate reporters e-mail address with DNS
on/off
plugin»issuetracker»userinfo_email»
Inform user automatically by mail about issue mod
on/off the user which created the ticket will be informed about issue modification (not that important anymore due to upper mentioned global and fine tuning switches)
following fine tuning depend on global switch: on/off → inform about new comments
on/off → inform about comment modification
on/off → inform about resolution entry
on/off → inform about resolution modification
on/off → inform about modification of initial description
plugin»issuetracker»shw_mail_addr choice → show assignee by login, name or mail address
plugin»issuetracker»shw_assignee_as
mail address visible instead of user name
(effect only to registered users)
on/off → issue details view will display real names instead of mail address (if current user is registered)
plugin»issuetracker»shwtbl_usr
Configure columns to be shown to user as overview
on/off per column multi select of columns to be displayed if non-admin viewing the issue list
plugin»issuetracker»use_captcha
Use captcha
on/off to prevent misuse by bots, less important for closed wikis together with option “Edits only by registered users” on)
plugin»issuetracker»severity
Define severity levels you will use
(comma separated)
Query,Minor,Medium,Major, Critical,Feature Request different values to define the priority of an issue priority of an issue
(take care that there are no space characters before and after comma)
plugin»issuetracker»status
Define issue status levels you will use
(comma separated)
New,Assigned,External Pending,In Progress,Solved, Canceled,Double each Issue develops through different status levels according your work-flow
→ first value [e.g. “New”] will be taken as status for newly created reports,
→ first value [e.g. “New”] will be taken as status for reports where assignee deleted at Issue List,
→ second value [e.g. “Assigned”] will be taken as status if you assigne a report at Issue List,
→ take care that there are no space characters before and after comma
plugin»issuetracker»status_special
hidden issues, only single status value allowed !
(comma separated)
'Deleted'
plugin»issuetracker»products
Define tracked products
(comma separated)
[Product1],[Product2], define products of the project to be tracked together within one file, where users can report issues
plugin»issuetracker»components
Configure list of components, empty by default
plugin»issuetracker»assign
select wiki user groups pre-selected for assigning issues to
(Pipe ”|” separated)
admin|developer All registered dokuwiki users of these defined groups are allowed assignees for issues. They will be offered option within a drop-down list on the Issue List to be selected as assignee for a ticket. They will be informed by mail immediately after selection.
plugin»issuetracker»noStatIMG
status text instead of icons at Issue list
on/off if you switch on here the status is provided as text.
Usually little icons will be displayed with status text as tooltip to save space on table output. If you modified the status levels you have to store same named gif-images into the IssueTracker images folder to get them visible.
plugin»issuetracker»noSevIMG
severity text instead of icons at Issue list
on/off If you switch on here the severity is provided as text.
Usually little icons will be displayed with severity level text as tooltip to save space on table output. If you modified the severity levels you have to store same named gif-images into the IssueTracker images folder to get them visible.
plugin»issuetracker»ltdReport
Reduce Report form by following selection
on/off per report control to reduce the issue report form from unwanted complexity, just hook the controls you do not need
plugin»issuetracker»ltdListFilters
Exclude these filter controls from Issue List
on/off per report control
plugin»issuetracker»multi_projects
turn on for multi project handling
on/off if multiproject is turned on then project parameter will be ignored, all project files will be loaded and issues displayed
plugin»issuetracker»shw_project_col
show project column
on/off displays an additional, leading column containing the project name per issue
plugin»issuetracker»global_sort
global sort order of selected key
SORT_DESC
plugin»issuetracker»listview_sort
default listview sort order
sortfirstdesc

Beside this configuration settings you have the possibility to use your own severity and status icons.
Simply save the picture files as [your status].gif or [your severity].gif and store them into /dokuwiki/lib/plugins/issuetracker/images folder. For example you configured a status “gelöst” instead of “solved” then your image file name schould be geloest.gif. Therefore the German language file contain two lines where German “Umlaute” will be converted accordingly.

:!: If you are using different status text as originally provided then please check plugin/issuetracker/lang/[your language]/lang.php for

 $lang['issue_resolved_status']

It has to be identical (case sensitive !).

Examples/Usage

Use this plugin to simply create an issue tracking. It owns dokumicrobugtracker 2011-04-13 as initial code base for corrections, which was not working on my installation (Rincewind + Arctic). Probably you noticed the same problems (e.g. edit of entries does not work) and may find a help with this.

1. Report an issue
This is a form shown to the user to provide controls for input of issue information.
Following information are handled:

{{issuetracker>project=your_project|display=form|view=10}} 
ID automatically set
Project automatically set (defined by your_project, see Syntax)
Product user can select from admin pre-defined set of values
Version user to enter version info
User name name derived from login if registered user, else should be entered by user
User mail e-mail derived from login if registered user, else should be entered by user
User phone phonenumber of the user
Add contact a further contact can be added if necessary
Severity user can select from admin pre-defined set of severities
Issue Title the headline of the issue
Issue Description user to enter the issue details
Symptoms user may add up to 3 links targeting files on a symptom server
Captcha user to enter

2. Issue List
The Plugin delivers an issue list, where admin can configure a restricted view for users. The admin view delivers more details in the table.
Admin is able to modify some entries directly on this output, i.e. admin is able to assign the issue to a member of configured user-groups
(see configuration).

 {{issuetracker>project=your_project|status=all|severity=all|display=issues}} 

Remark: All project files of defined IT data store will be loaded if multiproject config switch is turned on.

3. Issue Details view
For better handling and also accessible for users there is a details view of an issue. Therefore the Issue List containing a input and button to specify the isuue ID. This will provide a new page displaying all information of an issue and delivering a comment function for interaction between User and Admin/assigned resource. Both (user/assignee) will be informed about issue updates by email, if configured.

4. General Info
There are multiple files created. First there is a project file containing all issue information except comments. Each issue will have a comments file where the communication is logged. A modification log provides a history to follow-up status changes (answering the when, who, what). All files are stored to data/meta directory with file extension ”.issue”, ”.mod-log” and ”.cmnts”.

Development

Each valuable help is welcome.

Change Log

Date Changes
2014-12-04 BugFix:
#252 Cannot create an issue report
2014-12-01 BugFix:
#252 Cannot create an issue report
#248 not all Results for Filterselection
#245 Version number lost after send report
#242 PHP error
#241 no Mail after fill in a solution
#240 medium in progress Taggic Issuetracker configuration of Severity/Status images
#239 search for ticket number fails
#237 Next/Previous Issues Button did not work in IE
#236 Wrong detail url for changed issues
#235 Column "user" is empty
#234 wrong link when multi project handling without show project column
#232 problems with "German Umlaute"
#231 I´ve a lot of = charaters (html-mails)
#228 only 1 Symptom Link is working
#224 "NetworkError: 404 Not Found .... issuetracker/datepick/jsDatePick_ltr.css"
#221 modification of mail template and syntax.php
#218 extend German lang.php
#217 Eliminate further objects from print out of Issue Details
#201 Title's URL on filter list missing project

NewFeature:
#250 extra fileUpload only for admins
#249 Extend Syntax by optional column configuration
#233 Sorting Tickets: wrong order
#230 Automatic creation of defined it_data folder
#223 configurable visibility of single filter controls
#222 extend functionality on multi-projects with different assignee groups
#220 add a syntax option for mail address
#213 feature request in progress André Tavares Reminders
2014-05-06 BugFix:
#186 Problem with symlink farmed wikis
#188 Issue links in list jump into nirvana
#189 Bugs in Text Emailtemplates
#211 Error while loging in ?
#216 Printing out an issue without edit buttons

NewFeature:
#192 Sortability of tables should be visible by icon and/or cursor
#193 turn on MyIssues flag by syntax
#194 Global sort of issues
#206 Extend filter controls by "Version" and "assigned" colums
#210 provide add plan info within issue details
2013-06-25 BugFix:
#184 search fails in multi project mode
#183 text-email-notification jams category "assigned" with "value"
#182 multi-project handling
#181 event check log written into dokuwiki root
History for more historical information please refer to fcon IssueTracker- Change Log

Version/Requirements

The plugin was tested with DW listed on top of this page and also with related on the Stick version.
My standard browsers are Internet Explorer and Firefox due to majority of users using this.
This is not the guarantee that it works for all environmental configuration.

Further Improvements

If you have a wish what should be improved then please register for fcon - IssueTracker and report a feature request.

Discussion

Please use only the DokuWiki User Forum for discussion and Issue Tracker to raise your problems. You can mention it here but this page is not regularily tracked and if something is solved it will be cleaned from this page (better to use the forum due to automated notifications on an issue).

Partial Russian translation (to Taggic: don't use for GitHub-repository, please).

FAQ

For collection of FAQ please check: IssueTracker - FAQ

Comments

incredibly awesome - thanks for adding this plugin!
by robert

I keep getting the error “Please provide a better description” when trying to create an issue no matter what I do. Is there something I need to change on the configuration?

This is because for some reason, in the syntax.php file at the beginning of the validation function chkFormular, the value of the textfield is set to its innrHTML attribute.

frm.description.value = frm.description.innerHTML

This effectively clears the content of the textarea which thus have no content when it's checked for content funther down in the function. So just comment the above stated row (row 1205) and it all should work.


Issue title not being saved (a bug fix?)
by wagners

First of all, thank you for providing IssueTracker plugin!

I have installed IssueTracker on Dokuwiki (Release 2017-02-19b “Frusterick Manners”) and noted that the issue title was not being persisted in file [my_project].issues when submitting a new issue report. Apparently, I understand this problem as an effect of change #309, since that the problem was solved here changing syntax.php from:

 $issues[$issue_id]['title'] = htmlspecialchars($_REQUEST['title']);
 $issues[$issue_id]['title'] = htmlspecialchars($_REQUEST['ittitle']);
plugin/issuetracker.txt · Last modified: 2017-11-01 13:58 by Aleksandr