#disable_html_escaping() ###macro (esc $text)$xmlutils.escape($text)#end #if ($comment.groupLevel) #set ($level = $textutils.htmlEncode($comment.groupLevel)) #elseif ($comment.roleLevel) #set ($level = $textutils.htmlEncode($comment.roleLevel.name)) #end RE: [#xmlEscape($issue.key)] #xmlEscape($issue.summary) #set ($commentHash = "comment-${comment.id}") #xmlEscape($requestContext.baseUrl)/browse/$issue.key?focusedCommentId=${comment.id}#${commentHash} $dateTimes.formatRSS($comment.updated) #xmlEscape($comment.authorFullName) ## this is the html of the actual comment body #xmlEscape($description) <br/> <br/> <table> <tr> <td>$i18n.getText('viewissue.comment.author'):</td> <td><a href="#xmlEscape($requestContext.baseUrl)/secure/ViewProfile.jspa?name=${velocityhelper.urlencode($comment.author)}">#xmlEscape($textutils.htmlEncode($comment.authorFullName))</a> (<a href="#xmlEscape($requestContext.baseUrl)/browse/$issue.key">$issue.key</a>)</td> </tr> #if (!$comment.created.equals($comment.updated) && $comment.updateAuthor) <tr> <td>$i18n.getText('viewissue.comment.update.author'):</td> <td><a href="#xmlEscape($requestContext.baseUrl)/secure/ViewProfile.jspa?name=#xmlEscape($xmlutils.escape(${velocityhelper.urlencode($comment.updateAuthor)}))">#xmlEscape($textutils.htmlEncode($comment.updateAuthorFullName))</a></td> </tr> #end #if ($level) <tr> <td>$i18n.getText('viewissue.comment.visibleby'):</td> <td>$level</td> </tr> #end </table> #xmlEscape($requestContext.baseUrl)/browse/${issue.key}?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=${comment.id}\#worklog-${comment.id}