in buildSrc/src/main/groovy/org/grails/guides/GuidesPage.groovy [54:148]
static String mainContent(ClassLoader classLoader,
List<Guide> guides,
Set<Tag> tags,
Category category = null,
Tag tag = null) {
StringWriter writer = new StringWriter()
MarkupBuilder html = new MarkupBuilder(writer)
html.div( class:'headerbar chalicesbg') {
div( class:'content') {
if (tag || category) {
h1 {
a(href: "[%url]/index.html", 'Guides')
if (tag) {
mkp.yield(" → #${tag.title}")
} else if(category) {
mkp.yield(" → ${category.name}")
}
}
} else {
h1 'Guides'
}
}
}
html.div(class: 'content') {
setOmitEmptyAttributes(true)
setOmitNullAttributes(true)
div(class: 'twocolumns') {
div(class: 'column') {
mkp.yieldUnescaped rightColumn(tag, category, guides)
}
div(class: 'column') {
mkp.yieldUnescaped leftColumn(tag, category, tags)
if ( tag ) {
mkp.yieldUnescaped guideGroupByTag(tag, guides)
} else if ( category ) {
mkp.yieldUnescaped guideGroupByCategory(category, guides.findAll { it.category == category.name }, false )
} else {
div(class: 'searchresults') {
mkp.yieldUnescaped('')
}
}
}
}
div(class: 'twocolumns') {
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().apprentice, guides, true,'margin-top: 0;')
mkp.yieldUnescaped guideGroupByCategory(categories().async, guides, true, 'margin-top: 0;')
}
}
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().advanced, guides, true, 'margin-top: 0;')
}
}
}
div(class: 'twocolumns') {
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().gorm, guides, true, 'margin-top: 0;')
}
}
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().testing, guides, true, 'margin-top: 0;')
}
}
}
div(class: 'twocolumns') {
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().devops, guides, true, 'margin-top: 0;')
mkp.yieldUnescaped guideGroupByCategory(categories().googlecloud, guides)
mkp.yieldUnescaped guideGroupByCategory(categories().ios, guides)
mkp.yieldUnescaped guideGroupByCategory(categories().android, guides)
mkp.yieldUnescaped guideGroupByCategory(categories().ria, guides)
}
}
div(class: 'column') {
if ( !(tag || category) ) {
mkp.yieldUnescaped guideGroupByCategory(categories().vue, guides, true, 'margin-top: 0;')
mkp.yieldUnescaped guideGroupByCategory(categories().angular, guides, true, 'margin-top: 0;')
mkp.yieldUnescaped guideGroupByCategory(categories().angularjs, guides)
mkp.yieldUnescaped guideGroupByCategory(categories().react, guides)
mkp.yieldUnescaped guideSuggestion(classLoader)
}
}
}
}
writer.toString()
}