Hi all,
I would like to make a user macro, which does a similar thing to the date formatting used with tasks.
User macro with the bodytext (or a parameter) as a date (dd.mm.yyyy).
If the date is in the past, the formatting shall be changed to red.
Is this possible with a simple user macro?
Thx for any help.
Reto E.
This is super hacky but it works. Maybe there is a better way to handle dates with velocity, but I've had a devil of a time finding it.
## Developed by: Davin Studer ## Date created: 7/1/2014 ## @param Date:title=Date|type=date|desc=Date to start from. Format: dd/mm/YYYY #set ($len = 0) #set ($i = 0) #set ($parts = $paramDate.split("/")) #set ($today = $action.dateFormatter.getCalendar()) ## Having trouble finding out the length/size of $parts ... brute force it #foreach ($part in $parts) #set ($len = $len + 1) #end #if ($len == 3) ## Buiding date variable from parameter string ... can't seem to find a better way to do it with velocity #foreach ($part in $parts) #if ($i == 0) #set ($day = $generalUtil.convertToInteger("$part")) #elseif ($i == 1) #set ($month = $generalUtil.convertToInteger("$part")) #set ($month = $month - 1) #else #set ($year = $generalUtil.convertToInteger("$part")) #end #set ($i = $i + 1) #end #set ($cal = $action.dateFormatter.getCalendar()) $cal.set($year, $month, $day, 0, 0, 0) ## Compare enetered date to today #if($today.timeInMillis > $cal.timeInMillis) <span style="color: #FF0000">$paramDate</span> #else $paramDate #end #else bad date #end
Thx Devin.
I'm new to velocity in confluence. And couldn't find a way to convert a string into a date to work with. Espacially because confluence has a param-type date, but it is treated as a normal string ...
Your 'hack' works for now.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.