Changes for page 3D Printing

Last modified by Josh McGee on 2026/01/21 13:23

From version 53.1
edited by Josh McGee
on 2025/11/19 10:52
Change comment: There is no comment for this version
To version 67.1
edited by Josh McGee
on 2026/01/21 13:23
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -10,49 +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 -## List all direct subpages of Areas > Upstairs > 3D Printers
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
32 +
19 19  #macro(list3DPrintersSubpages)
20 - ## Current wiki name
21 21   #set($wikiName = $xcontext.database)
22 -
23 - ## Build a document reference for Areas.Upstairs."3D Printers"
24 - ## (nested page, NOT WebHome of another space)
25 25   #set($parentRef = $services.model.createDocumentReference(
26 26   $wikiName,
27 - ['Areas', 'Upstairs', '3D%20Printing'],
37 + ['Spaces', '3D Printing'],
28 28   'WebHome'
29 29   ))
30 30  
31 - ## Get the parent document
32 - #set($parentDoc = $xwiki.getDocument($parentRef))
41 + #set($hasResults = false)
42 + #listPrintingGuidesRecursive($parentRef)
33 33  
34 - ## Optional sanity check: ensure the parent exists
35 - #if(!$parentDoc.exists())
36 - Parent page not found: $parentRef
37 - #else
38 - ## Get its direct children
39 - #set($children = $parentDoc.getChildren())
40 -
41 - #if(!$children || $children.isEmpty())
42 - No subpages found under 3D Printers.
43 - #else
44 - #foreach($childRef in $children)
45 - ## Resolve each child reference to a document
46 - #set($childDoc = $xwiki.getDocument($childRef))
47 - * [[$childDoc.getDisplayTitle()>>$childDoc]]
48 - #end
49 - #end
44 + #if(!$hasResults)
45 + No pages with "Printing Guide" in the title found under [[Areas.Upstairs.3D Printers]].
50 50   #end
51 51  #end
52 52  
53 -## Call the macro
54 54  #list3DPrintersSubpages()
55 55  {{/velocity}}
56 56  
52 += **Troubleshooting** =
57 57  
54 +{{include page="Workflows/3D Printing/Troubleshooting"/}}
58 58  
56 +