Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagegroovy
def includePage = 'Examples:table page'   // customize to point to your SPACE:Page title
def columnTypes = ['S','S','S','S','S']   // customize to set the default column types for all columns
def selectedColumns = '$columns'.split(',') // assumes run macro is configured using the columns replacement variable name
def moreTablePlusParameters = ''  // customize if you need some additional table plus parameters - must be in standard wiki parameter notation!
 
// For each column that was NOT selected, replace the default column type for that entry to hide
for (int i = 1; i <= columnTypes.size(); i++) {
    if (!selectedColumns.contains(i.toString())) {
        columnTypes[i - 1] = 'H'
    }
}

// Build the wiki markup for the include page 
def StringBuilder builder = new StringBuilder()
builder.append("{table-plus:columnTypes=${listToSeparatedString(columnTypes)}|${moreTablePlusParameters}}").append('\n')
builder.append("{include:${includePage}}").append('\n')
builder.append('{table-plus}')
 
out.print(builder.toString())
 
def listToSeparatedString(list) {
    StringBuilder builder = new StringBuilder()
    list.each { element ->
       builder.append("'").append(element).append("',")
    }
    return builder.toString()
} 

Image Removed