What is it ?
By default, JIRA provides Worklog permissions :
- Work On Issue (EDIT WORLOG) to allow Worklog creation,
- Edit Own Worklogs (EDIT OWN WORLOGS) to allow Own Worklogs Updates,
- Edit All Worklogs (EDIT ALL WORLOGS) to allow All Worklog Updates,
Alkaes Minyaa Time plugin introduces the ability to deny the Creation and Update of Worklog on past dates.
How it works ?
It allows the implementation Worklog Closure Periods :
- Worklog Create Closure
- Worklog Update Closure
When a Worklog Closure is enabled and configured (see below on how do it), the Worklog Creation/Update on past dates is denied, excepted for users who have the Create old Worklog or Edit old Worklog permissions granted
Configure a Worklog Closure
When enabled, its configuration is global, with same rules for all projects.
To configure it, different parameters are available (see the Minyaa Settings page.)
- For Worklog Creation
- End Date for Worklog Create Closure / Worklog.Create.Closure.End.Date : Used to evaluate the End of Closure Period. It is expressed as Relative Date from Today.
- Worklog Create Closure Period / Worklog.Create.Delayed.Period : Used to evaluate the Start of Closure Period. It is expressed as Relative Date from End of Closure Period.
- Create Worklog Respite Date / Worklog.Create.Delayed.End.Date : Used to evaluate the End of Delayed Period. It may be also expressed as Relative Date from End of Closure Period (+X, -X) or from Today.
- For Worklog Edition
- End Date for Worklog Update Closure / Worklog.Update.Closure.End.Date : Used to evaluate the End of Closure Period. It is expressed as Relative Date from Today.
- Worklog Update Closure Period / Worklog.Update.Delayed.Period : Used to evaluate the Start of Closure Period. It is expressed as Relative Date from End of Closure Period.
- Update Worklog Respite Date / Worklog.Update.Delayed.End.Date : Used to evaluate the End of Delayed Period. It may be also expressed as Relative Date from End of Closure Period (+X, -X) or from Today.
They allows to define the 2 distinct periods :
- Closure Period : Period where Worklog Start Dates are controlled on Worklog Creation.
- Delayed Period : Period where Worklog Creation can be done with Worklog Start Dates in Closure Period
Based on these periods, the permission to create/edit Worklog is evaluated based on Worklog Start Date and Worklog Creation date (today). See below some cases ...
Today (Worklog Creation date) is in the Closure Period, the Worklog Start date is allowed :
|Today||x||Today (Worklog Creation date) is in the Delay Period, the Worklog Start date is allowed :|
|Today||x||Today (Worklog Creation date) is after the Delay Period, the Worklog Start date :|
- Worklog no more allowed
- Worklog allowed
- Control may be not relevant depending on how period are calculated.
- NB : Dates are evaluated on Begin of day (at 00:00:00)
If an unauthorized user try to create/edit a Worklog with a Start Date that break Worklog closures rules, an error message as below will be displayed ...
To allow some user to create Worklog without being impacted by Worklog Closure, the grant to the custom permissions are required ...
Override Worklog Closure rules
On Project Permission Scheme, an additional permission is available ...
Combined with the Worklog Closure parameters, you will be able to deny Worklog Creation/Edition on past dates for a part of your users. In practice, when enabled, allowed user will require :
- to be Project Administrator
- or (for Creation) to have the Work on Issue permission (EDIT WORLOG) And the Create Old Worklog permission.
- or (for Edition) to have the Edit Own Worklogs (EDIT OWN WORLOG) or Edit All Worklogs permissions (EDIT ALL WORLOG) And the Edit Old Worklog permission.
Some Samples ...
Find below few sample on how it can be implemented
|#||Parameters||Meanings / Results|
Take care on how are the period defined. The Worklog.Create.Closure.End.Date & Worklog.Update.Closure.End.Date are always based on today and needs to be defined with alignment.
Also, the Relative Unit used to define End of Closure Period does not suppose the Delayed Period is based on same unit.