Changes for page 3D Printing
Last modified by Josh McGee on 2026/01/21 13:23
From version 37.1
edited by Josh McGee
on 2025/11/19 10:36
on 2025/11/19 10:36
Change comment:
There is no comment for this version
To version 67.1
edited by Josh McGee
on 2026/01/21 13:23
on 2026/01/21 13:23
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -10,41 +10,47 @@ 10 10 = **Preparing To Print** = 11 11 12 12 Follow the printing guide for your 3d printer: 13 - 14 -??? ADD SOME KIND OF TOC SUBTREE HERE ??? 15 - 16 - 17 17 {{velocity}} 18 -## 19 -## Velocity macro to list all subpages of the "Areas" page 20 -## 21 -#macro(listAreasSubpages) 22 - ## Full name of the parent document (top-level page "Areas") 23 - #set($parentDocFullName = 'Areas.WebHome') 14 +## Recursive helper: lists all descendants of $parentRef 15 +#macro(listPrintingGuidesRecursive $parentRef) 16 + #set($parentDoc = $xwiki.getDocument($parentRef)) 17 + #set($children = $parentDoc.getChildren()) 18 + #if($children && !$children.isEmpty()) 19 + #foreach($childRef in $children) 20 + #set($childDoc = $xwiki.getDocument($childRef)) 21 + #set($title = $childDoc.getDisplayTitle()) 22 + ## Only show pages whose title contains "Printing Guide" 23 + #if($title && $title.indexOf('Printing Guide') != -1) 24 + #set($hasResults = true) 25 + * [[$title>>$childDoc]] 26 + #end 27 + ## Recurse into this child regardless of whether it matched 28 + #listPrintingGuidesRecursive($childRef) 29 + #end 30 + #end 31 +#end 24 24 25 - ## HQL: getall non-hiddenchildren whose parentis Areas.WebHome26 - #set($ hql=27 - "selectdoc.fullName" +28 - "from XWikiDocument doc " +29 - "where doc.parent=:parentand doc.hidden<> true " +30 - "orderby doc.nameasc"31 - ) 33 +#macro(list3DPrintersSubpages) 34 + #set($wikiName = $xcontext.database) 35 + #set($parentRef = $services.model.createDocumentReference( 36 + $wikiName, 37 + ['Spaces', '3D Printing'], 38 + 'WebHome' 39 + )) 32 32 33 - #set($children = $services.query.hql($hql) 34 - .bindValue('parent', $parentDocFullName) 35 - .execute()) 41 + #set($hasResults = false) 42 + #listPrintingGuidesRecursive($parentRef) 36 36 37 - #if($children.isEmpty()) 38 - No subpages found under **Areas**. 39 - #else 40 - #foreach($childFullName in $children) 41 - #set($childDoc = $xwiki.getDocument($childFullName)) 42 - * [[$childDoc.displayTitle>>$childDoc.getURL('view')]] 43 - #end 44 + #if(!$hasResults) 45 + No pages with "Printing Guide" in the title found under [[Areas.Upstairs.3D Printers]]. 44 44 #end 45 45 #end 46 46 47 -## Call the macro 48 -#listAreasSubpages() 49 +#list3DPrintersSubpages() 49 49 {{/velocity}} 50 50 52 += **Troubleshooting** = 53 + 54 +{{include page="Workflows/3D Printing/Troubleshooting"/}} 55 + 56 +