Skip to content

Instantly share code, notes, and snippets.

@bigbosst
Created February 12, 2016 21:48
Show Gist options
  • Save bigbosst/6b07dc58a3af6796b852 to your computer and use it in GitHub Desktop.
Save bigbosst/6b07dc58a3af6796b852 to your computer and use it in GitHub Desktop.
Jira Release Notes HTML with a collection of Deployment Tasks at the bottom
#disable_html_escaping()
##Text is escaped twice so that the characters generated in the text area display properly escaped (JRA-12184)
###macro (doubleEncode $html)
## $textUtils.htmlEncode($textUtils.htmlEncode($html))
###end
#macro (getDeploymentTasks $issue $customFieldManager)
#set ($customFields = $customFieldManager.getCustomFieldObjects($issue.project.getLong("id"), $issue.issueType.getString("id")))
#foreach($customField in $customFields)
#if($customField.name.equals("Deployment Tasks"))
#if($customField.getValue($issue))
#set ($foo = $DeployTasks.add("<B>From:</B> [<a href='$!requestContext.canonicalBaseUrl/browse/$issue.key'>$issue.key</a>] <span class='jira-issue-status-lozenge aui-lozenge jira-issue-status-lozenge-$!issue.status.getStatusCategory().getColorName() jira-issue- status-lozenge-done jira-issue-status-lozenge-max-width-medium'> $issue.status.getSimpleStatus().getName() </span> <ul style='margin: 0;'><li> $textUtils.htmlEncode($customField.getValue($issue)).replaceAll('\n', '<br>') </li></ul>"))
#end
#end
#end
#end
#set ($DeployTasks = [])
<title>$textUtils.htmlEncode($action.getText('release.notes.html.title', $project, $version))</title>
<body>
<div class="ops-cont">
<ul class="ops">
<li>
<a class="button first last" href="$!requestContext.baseUrl/secure/ConfigureReleaseNote.jspa?projectId=${versionObj. projectObject.id}&version=${versionObj.id}">$action.getText('releasenotes.configure')</a>
</li>
</ul>
</div>
#foreach ($issueType in $issueTypes)
#if($issueType.issues.size() > 0)
<h2>$textUtils.htmlEncode($issueType.name)</h2>
<ul>
#foreach ($issue in $issueType.issues)
<li>[<a href='$requestContext.canonicalBaseUrl/browse/$issue.key'>$issue.key</a>] <span class='jira-issue-status-lozenge aui-lozenge jira-issue-status-lozenge-$!issue.status.getStatusCategory().getColorName() jira-issue-status-lozenge-done jira-issue- status-lozenge-max-width-medium'> $issue.status.getSimpleStatus().getName() </span> - $textUtils.htmlEncode($issue.summary)
#getDeploymentTasks($issue $customFieldManager)
</li>
#end
</ul>
#end
#end
<h2>Deployment Tasks</h2>
<ul>
#foreach ($task in $DeployTasks)
<li>$task
</li>
#end
</ul>
<a name="editarea"></a>
<h2>$action.getText('release.notes.edit.copy')</h2>
<p>$action.getText('release.notes.description')</p>
<textarea rows="40" cols="120" id="editcopy">
#doubleEncode($action.getText('release.notes.heading', $project, $version))
#foreach ($issueType in $issueTypes)
#if($issueType.issues.size() > 0)
<h2>#doubleEncode($issueType.name)</h2>
<ul>
#foreach ($issue in $issueType.issues)
<li>[<a href='$!requestContext.canonicalBaseUrl/browse/$issue.key'>$issue.key</a>] - #doubleEncode($issue.summary)
#getDeploymentTasks($issue $customFieldManager)
</li>
#end
</ul>
#end
#end
<h2>Deployment Tasks</h2>
<ul>
#foreach ($task in $DeployTasks)
<li>$textUtils.htmlEncode($task)
</li>
#end
</ul>
</textarea>
</body>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment