in buildSrc/src/main/groovy/org/grails/plugin/PluginsPage.groovy [233:284]
static String renderSinglePlugin(String siteUrl, Plugin plugin) {
StringWriter writer = new StringWriter()
MarkupBuilder mb = new MarkupBuilder(writer)
mb.li(class: 'plugin') {
if (plugin.vcsUrl) {
h3(class: 'name') {
a(href: plugin.vcsUrl, plugin.name)
}
} else {
h3(class: 'name') {
a(plugin.name)
}
}
if (plugin.desc) {
p(class: 'desc') { mkp.yield(plugin.desc) }
}
if (plugin.latestVersion) {
span plugin.latestVersion
}
mkp.yield(" published ")
mkp.yield(FORMATTER.format(plugin.updated))
if (plugin.owner) {
a(href: "[%url]/plugins/owners/${plugin.owner.name}.html") {
mkp.yield("by " + plugin.owner.name)
}
}
if (plugin.labels) {
ul(class: 'labels') {
for (String label : plugin.labels) {
li(class: 'label') {
a(href: "[%url]/plugins/tags/${label}.html") {
mkp.yield(label)
}
}
}
}
}
if (plugin.githubStars) {
div(class: 'githubstar') {
span(class: 'star') {
img(src: "${siteUrl}/images/small_githubstar.svg", height: 20)
}
span(class: 'count', plugin.githubStars)
}
}
}
writer.toString()
}