{groovy:output=wiki|showErrorOutput=true} import com.atlassian.confluence.pages.Page; import bucket.container.ContainerManager; def index = null //request.getSession(true).getServletContext().getAttribute("climb.index") if (index == null ) { out.println "Creating index..." index = new Index() String pageTitle="Climbing Guides" Page page = ContainerManager.getComponent("pageManager").getPage(context.spaceKey,pageTitle); request.getSession(true).getServletContext().setAttribute("climb.index", index) } def addChildren(Page page) { for (child in page.children) { doPage(child) } } def doPage (Page page) { int index1 = page.content.indexOf("{guide}") if (index1 > -1) { int index2 = page.content.indexOf(index1+1,"{guide}) String xml = page.content.substring(index1, index2-index1) out.println ("Page:" + page + " xml=" + xml ) } addChildren(page) } class Index { List climbs = new ArrayList() } class Climb { String name String grade String stars String length String extra String number } {groovy} |