#disable_html_escaping()
## from listbynamewithnavlink.jsp
###macro (listwithnavlink $issue $list $name)
## #if ($list && !$list.isEmpty())
## #foreach ($item in $list)
## $textutils.htmlEncode($item.name)#if ($velocityCount != $list.size()),#end
## #end
## #else
## $i18n.getText('common.words.none')
## #end
###end
##
###macro (printIssueLinks $issues $linkName)
## #foreach ($issue in $issues)
##
## Issue key and summary
#if ($issue.subTask == true)
#set ($parent = $issue.parentObject)
$textutils.htmlEncode($parent.summary)
($textutils.htmlEncode($parent.key))
|
$i18n.getText('issue.field.status'): |
$textutils.htmlEncode($issue.statusObject.nameTranslation, false) |
$i18n.getText('issue.field.project'): |
$textutils.htmlEncode($issue.project.name) |
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'components', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.components'): |
#listwithnavlink ($issue $issue.components 'component')
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'versions', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.affectsversions'): |
#listwithnavlink ($issue $issue.affectedVersions 'version')
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'fixVersions', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.fixversions'): |
#listwithnavlink ($issue $issue.fixVersions 'fixfor')
|
#end
#if ($issue.securityLevel && $fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'security', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.securitylevel'): |
$textutils.htmlEncode($issue.securityLevel.name)
#if ($issue.securityLevel.description && $issue.securityLevel.description != '')
($textutils.htmlEncode($issue.securityLevel.description))
#end
|
#end
$i18n.getText('issue.field.type'):
|
$textutils.htmlEncode($issue.issueTypeObject.nameTranslation, false)
|
#if (($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'priority', $issue.issueTypeObject.id) == false) && ($issue.priorityObject))
$i18n.getText('issue.field.priority'):
|
$textutils.htmlEncode($issue.priorityObject.nameTranslation, false)
|
#end
## Need to check if the reporter view is hidden or not, also requires reformatting
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'reporter', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.reporter'):
|
#if ($issue.reporter)
$userformat.formatUserkey(${issue.reporterId}, 'profileLinkExternal', 'word_reporter')
#else
$i18n.getText('common.words.anonymous')
#end
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'assignee', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.assignee'):
|
#if ($issue.assignee)
$userformat.formatUserkey(${issue.assigneeId}, 'profileLinkExternal', 'word_assignee')
#else
$i18n.getText('common.concepts.unassigned')
#end
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'resolution', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.resolution'):
|
#if ($issue.resolutionObject)
$textutils.htmlEncode($issue.resolutionObject.nameTranslation, false)
#else
$i18n.getText('common.resolution.unresolved')
#end
|
#if ($votingEnabled == true)
$i18n.getText('common.concepts.votes'):
|
$issue.votes
|
#else
|
#end
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'labels', $issue.issueTypeObject.id) == false)
$i18n.getText('issue.field.labels'):
|
#if ($issue.labels && $issue.labels.size() > 0)
#foreach($label in $issue.labels)$textutils.htmlEncode($label.label)#commaonly($issue.labels)#end
#else
$i18n.getText('common.words.none')
#end
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'timetracking', $issue.issueTypeObject.id) == false && $timeTrackingEnabled == true)
#if ($aggregateTimeTrackingBean)
$i18n.getText('common.concepts.aggregate.remaining.estimate'): |
#if ($aggregateTimeTrackingBean.remainingEstimateStr)
$aggregateTimeTrackingBean.remainingEstimateStr
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#end
$i18n.getText('common.concepts.remaining.estimate'): |
#if ($issue.estimate)
$wordView.getPrettyDuration($issue.estimate)
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#if ($aggregateTimeTrackingBean)
$i18n.getText('common.concepts.aggregate.time.spent'): |
#if ($aggregateTimeTrackingBean.timeSpentStr)
$aggregateTimeTrackingBean.timeSpentStr
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#end
$i18n.getText('common.concepts.time.spent'): |
#if ($issue.timeSpent)
$wordView.getPrettyDuration($issue.timeSpent)
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#if ($aggregateTimeTrackingBean)
$i18n.getText('common.concepts.aggregate.original.estimate'): |
#if ($aggregateTimeTrackingBean.originalEstimateStr)
$aggregateTimeTrackingBean.originalEstimateStr
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#end
$i18n.getText('common.concepts.original.estimate'): |
#if ($issue.originalEstimate)
$wordView.getPrettyDuration($issue.originalEstimate)
#else
$i18n.getText('viewissue.timetracking.unknown')
#end
|
#end
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'environment', $issue.issueTypeObject.id) == false && $issue.environment && $issue.environment.length() > 0)
$i18n.getText('issue.field.environment'):
|
$wordView.getRenderedContent('description', $issue.environment, $issue)
|
#end
## end issue extra properties
## List attachments
## attachments
#if ($issue.attachments && $issue.attachments.empty == false)
$i18n.getText('common.concepts.attachments.files'):
|
#foreach ($attachment in $issue.attachments)
#if($fileIconBean.getFileIcon($attachment.filename, $attachment.mimetype))
#set ($fileIcon = $fileIconBean.getFileIcon($attachment.filename, $attachment.mimetype))
#else
#end
$textutils.htmlEncode($attachment.filename)
#end
|
#end
## end attachments
## List Linked Issues
## /includes/issue/linking-word.jsp
#if ($linkingEnabled && $linkCollection.linkTypes && $linkCollection.linkTypes.isEmpty() == false)
$i18n.getText('common.concepts.issuelinks'):
|
#foreach ($issueLinkType in $linkCollection.linkTypes)
$textutils.htmlEncode($issueLinkType.name)
|
#printIssueLinks($linkCollection.getOutwardIssues($issueLinkType.name) $issueLinkType.outward)
#printIssueLinks($linkCollection.getInwardIssues($issueLinkType.name) $issueLinkType.inward)
#end
|
#end
## end /includes/issue/linking-word.jsp
## List Sub Tasks
#set ($subTasks = $issue.subTaskObjects)
#if ($subtasksEnabled && $subTasks.empty == false)
$i18n.getText('issue.field.subtasks'): |
$i18n.getText('issue.field.key')
|
$i18n.getText('issue.field.summary')
|
$i18n.getText('issue.field.type')
|
$i18n.getText('issue.field.status')
|
$i18n.getText('issue.field.assignee')
|
#foreach ($subTask in $subTasks)
$textutils.htmlEncode($subTask.key)
|
$textutils.htmlEncode($stringUtils.abbreviate($subTask.summary, 40))
|
$textutils.htmlEncode($subTask.issueTypeObject.nameTranslation, false)
|
$textutils.htmlEncode($subTask.statusObject.nameTranslation, false)
|
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'assignee', $issue.issueTypeObject.id) == false)
#if ($subTask.assignee) $textutils.htmlEncode($subTask.assignee.displayName) #end
#end
|
#end
|
#end
## end List Subtasks
## List custom fields
#foreach ($tabs in $fieldScreenRenderer.fieldScreenRenderTabs)
#foreach ($layoutItem in $tabs.fieldScreenRenderLayoutItems)
#if ($layoutItem.orderableField.hasValue($issue) && $layoutItem.orderableField.customFieldType.descriptor.viewTemplateExists == true)
$textutils.htmlEncode($layoutItem.orderableField.name): |
$wordView.getCustomFieldHtml($layoutItem.fieldLayoutItem, $layoutItem.orderableField, $issue) |
#end
#end
#end
## issue_descriptiontable_word
#if ($fieldVisibility.isFieldHidden($issue.project.getLong('id'), 'description', $issue.issueTypeObject.id) == false && $issue.description && $issue.description.length() > 0)