- output = output.replaceAll("__DATE__", getDate("yyyy-MM-dd"))
- output = output.replaceAll("__CHANNEL__", propertiesChannelName)
- output = output.replaceAll("__APPLICATION_NAME__", applicationName)
- output = output.replaceAll("__GIT_HASH__", gitHash)
- output = output.replaceAll("__GIT_BRANCH__", gitBranch)
- output = output.replaceAll("__VERSION__", JALVIEW_VERSION)
- output = output.replaceAll("__JAVA_VERSION__", JAVA_VERSION)
- output = output.replaceAll("__VERSION_UNDERSCORES__", JALVIEW_VERSION_UNDERSCORES)
- return output
-}
-
-def ulToList(Element ul, int indent) {
- def list = ""
- ul.children().each { e ->
- if (e.tagName().toLowerCase() == "ul") {
- list = list.stripTrailing() + "\n"
- list += ulToList(e, indent+1)
- } else if (e.tagName().toLowerCase() == "li") {
- def issues = []
- def issuesText = ""
- def mdItem = " " * indent + "- "
- e.childNodes().any {n ->
- if (n.nodeName().equals("#comment")) {
- mdItem += "{{<comment>}}${n.getData()}{{</comment>}} "
- issuesText = n.getData().trim()
- issues = n.getData().trim().split(/[,\s]+/).findAll { it.startsWith("JAL-") }
- return true
- }
- }
- def safeText = issuesText.replaceAll('"', '\"')
- def joinedIssues = issues.join(",")
- def issuesLink = (issues.size() > 0) ?
- " {{< jal issue=\"${joinedIssues}\" alt=\"${safeText}\" >}}"
- : ""
- def addedIssues = false
- e.childNodes().each { node ->
- if (node.nodeName().toLowerCase() == "ul") {
- // add issues link before sub list if it's last
- if (node.nextSibling() == null) {
- mdItem += "${issuesLink}"
- addedIssues = true
- }
- mdItem = mdItem.stripTrailing() + "\n"
- mdItem += ulToList(node, indent+1)
- } else if (node.nodeName() == "#text") {
- mdItem += node.text()
- } else if (node.nodeName().toLowerCase() == "strong") {
- mdItem += "**${node.text()}**"
- } else if (node.nodeName().toLowerCase() == "em") {
- // if (true || (node.text().length() > 50 && node.text().count(" ") > 10) || (!node.nextSibling().text().startsWith("\\s*\\n"))) {
- mdItem += "*${node.text()}*"
- // } else {
- // mdItem += "### "+node.text()
- // }
- } else if (node.nodeName().toLowerCase() == "br") {
- mdItem += "<br/>\n"
- } else if (node.nodeName().toLowerCase() == "a") {
- mdItem += "[${node.text()}](${node.attr('href')})"
- }
- }
- if (!addedIssues) {
- mdItem += issuesLink
- }
- list += mdItem.stripTrailing()+"\n"
- } else if (e.tagName().toLowerCase() == "div") {
- e.children().each { eee ->
- list += ulToList(eee, indent)
- }
- } else if (e.tagName().toLowerCase() == "strong") {
- list += "**${e.text()}**"
- } else if (e.tagName().toLowerCase() == "em") {
- if (e.text().length() > 50 && e.text().count(" ") > 20) {
- list += "*${e.text()}*"
- } else {
- list += "\n\n### ${e.text()}\n\n"
- }