Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Next »

Available since 1.2.0 version

Date object propertyTypeDescriptionSample value
formatDateTimeStringdate and time in Jira datetime format11/sep/16 1:15 PM
formatDateStringdate in Jira date format11/sep/16
formatDateISOStringdate in ISO 8601 'YYYY-MM-DD' format2016-09-11
formatTimeStringtime in Jira time format1:15 PM
dayNumberday as number3
dayLongStringday in 'DD' format03
weekNumberweek number in year36
monthNumbermonth as number7
monthLongStringmonth in 'MM' format07
yearNumberyear number2016

Operations on date object

On date object user can do math operations and modify final date value. For example user can add minutes, hours, days, weeks, months or set hour/minutes to exact value. See available operation below:

Date object methodsDescriptionSample usage
MODIFYING METHODS
withMinutes(<integerValue>)

modifies the date by setting specified number of minutes.

Integer value must be in the range [0,59]

$repeating.date.withMinutes(0)
withHours(<integerValue>)

modifies the date by setting specified number of hours.

Integer value must be in the range [0,23]

$repeating.date.withHours(12)
addMinutes(<integerValue>)modifies the date by adding specified number of minutes$repeating.date.addMinutes(15)
addMinutesStrict(<integerValue>)modifies the date by adding specified number of minutes with respecting non-working days$repeating.date.addMinutesStrict(15)
addHours(<integerValue>)modifies the date by adding specified number of hours$repeating.date.addHours(2)
addHoursStrict(<integerValue>)modifies the date by adding specified number of hours with respecting non-working days$repeating.date.addHoursStrict(2)
addDays(<integerValue>)modifies the date by adding specified number of days$repeating.date.addDays(2)
addDaysStrict(<integerValue>)modifies the date by adding specified number of days with respecting non-working days$repeating.date.addDaysStrict(2)
addWeeks(<integerValue>)modifies the date by adding specified number of weeks$repeating.date.addWeeks(1)
addWeeksStrict(<integerValue>)modifies the date by adding specified number of weeks with respecting non-working days$repeating.date.addWeeksStrict(1)
addMonths(<integerValue>)modifies the date by adding specified number of months$repeating.date.addMonths(15)
addMonthsStrict(<integerValue>)modifies the date by adding specified number of months with respecting non-working days$repeating.date.addMonthsStrict(15)
addYears(<integerValue>)modifies the date by adding specified number of years$repeating.date.addYears(1)
addYearsStrict(<integerValue>)modifies the date by adding specified number of years with respecting non-working days$repeating.date.addYearsStrict(1)
COMPARISON METHODS
isBefore(<dateObject | dateString>)

check if the date is before given date

Parameter can be other date object or date / date time in ISO format YYYY-MM-DD'T'hh:mm:ss

$repeating.date.isEqal($sourceIssue.dueDate)
isAfter(<dateObject | dateString>)

check if the date is after given date

Parameter can be other date object or date / date time in ISO format YYYY-MM-DD'T'hh:mm:ss

$repeating.date.isAfter('2018-09-13T13:30:00')
isEqual(<dateObject | dateString>)

check if the date is equal to given date

Parameter can be other date object or date / date time in ISO format YYYY-MM-DD'T'hh:mm:ss

$repeating.date.isEqual('2018-09-13')

Differences between strict and non-strict date modifications

Below is quick and simple comparison how strict mode with respecting non-working days differ from simple date modifications. 

Repeating date is: 19/Sep/18 2:45 PM
Non-working days are: 20/Sep/18 and 21/Sep/18

$repeating.date.addDays(5) vs $repeating.date.addDaysStrict(5)
24/Sep/18 2:45 PM vs 26/Sep/18 2:45 PM

$repeating.date.addMinutes(25) vs $repeating.date.addMinutesStrict(25)
19/Sep/18 3:10 PM vs 19/Sep/18 3:10 PM

$repeating.date.addMinutes(4335) vs $repeating.date.addMinutesStrict(4335) (4335 minutes is equal to 3 days 15 minutes)
22/Sep/18 3:00 PM vs 24/Sep/18 3:00 PM

$repeating.date.addHours(10) vs $repeating.date.addHoursStrict(10)
20/Sep/18 12:45 AM vs 22/Sep/18 12:45 AM

$repeating.date.addHours(76) vs $repeating.date.addHoursStrict(76) (76 hours is equal to 3 days 4 hours)
22/Sep/18 6:45 PM vs 24/Sep/18 6:45 PM

$repeating.date.addHours(82) vs $repeating.date.addHoursStrict(82) (82 hours is equal to 3 days 10 hours)
23/Sep/18 12:45 AM vs 25/Sep/18 12:45 AM

$repeating.date.addMonths(2) vs $repeating.date.addMonthsStrict(2)
19/Nov/18 1:45 PM vs 21/Nov/18 1:45 PM

$repeating.date.addYears(1) vs $repeating.date.addYearsStrict(1)
19/Sep/19 2:45 PM vs 21/Sep/19 2:45 PM

Sample date comparisons in velocity templates

Velocity expressionSample value
$repeating.date.isAfter('2018-09-13T13:30:00')true
$repeating.date.isEqual('2018-09-13')true
$repeating.date.isAfter($sourceIssue.dueDate)false
$sourceIssue.updatedDate.month < 8false
#if($repeating.date.month > 4)Some value#{else}other value#endSome value
  • No labels