#initStyles() #placeForInfoAboutMessageToAdmin()
#greetByNameBold($recipient) #set($tasksCount = $taskCount) #set($projectMap = $projectMap) #set($customerMap = $customerMap) #if($deadlineStatusKey) There#if($tasksCount > 1) are $tasksCount $hls.tasksSLASHsubtasks()#else is $tasksCount $hls.taskSLASHsubtask()#end with $messageUtil.message($deadlineStatusKey) deadline.

#end #set($shouldDrawSeparator = false) #foreach( $bean in $ruleBeans) #foreach ( $dateRange in $bean.projectTasksMap.keySet() ) #if($shouldDrawSeparator)
 
#end #set($shouldDrawSeparator = true)
$bean.getFormattedRuleTitle($messageUtil, $dateRange, $textValueColor, $missedColor)

#set($drawTopCPBorder = false) #set($projectNumber = 0) #set( $oddRow = true ) #set( $projectTasks = $bean.projectTasksMap.get($dateRange) ) #foreach( $project in $projectTasks.keySet()) #set( $projectBean = $projectMap.get($project) ) #set( $customerBean = $customerMap.get($projectBean.getCustomerId()) ) #set($drawTopCPBorder = true) #set( $rowNumber = 0) #foreach( $task in $projectTasks.get($project)) #set ( $drawOuterBorderBottom = ($projectNumber == ($projectTasks.keySet().size() - 1) && $rowNumber == ($projectTasks.get($project).size() - 1)) ) #if($oddRow) #set ($bgColorFirst = '#ffffff') #set ($bgColorSecond = '#f7f7f7') #set ( $drawEvenBorderTop = false ) #set ( $drawEvenBorderBottom = false ) #else #set ($bgColorFirst = '#fcfaf3') #set ($bgColorSecond = '#f5f3ed') #set ( $drawEvenBorderTop = ($rowNumber != 0) ) #set ( $drawEvenBorderBottom = ($rowNumber < ($projectTasks.get($project).size() - 1)) ) #end #set($oddRow = !$oddRow) #set($rowNumber = ($rowNumber + 1)) #end #set($projectNumber = ($projectNumber + 1)) #end
$hls.Customer() / $hls.Project() / $hls.TasksAMPSubtasks()
$escapeUtil.getNameEscaped($customerBean) / $escapeUtil.getNameEscaped($projectBean)
$escapeUtil.getNameEscaped($task)

View Estimated vs. Actual Time Report for the listed#if($projectTasks.keySet().size() > 1) $hls.projects()#else $hls.project()#end #end #end
#showFooter($footer)