Wiki-Quellcode von DiagramViewSheet

Zuletzt geändert von Daniel Herrmann am 2026/02/04 20:25

Zeige letzte Bearbeiter
1 {{include reference="Diagram.CommonCode"/}}
2
3 {{velocity}}
4 #set ($diagramObj = $doc.getObject('Diagram.DiagramClass'))
5 #if ($diagramObj || "$!request.source" != '')
6 #set ($discard = $xwiki.ssx.use('Diagram.DiagramSheet'))
7 #set ($discard = $xwiki.jsx.use('Diagram.DiagramViewSheet'))
8 #set ($toolbar = 'zoom layers pages lightbox')
9 #if ("$!request.source" == '' && $services.security.authorization.hasAccess('edit'))
10 #set ($toolbar = "edit $toolbar")
11 #end
12 {{html clean="false"}}
13 ## Check if the query contains the parameter for getting the diagram from URL.
14 #set ($displayDiv = "")
15 #set ($fileName = 'diagram.svg')
16 #if ($xcontext.action == 'export')
17 #set ($displayDiv = 'hidden')
18 #showDiagramSVGInHTML($doc, $fileName)
19 #end
20 <div class="diagram $displayDiv"
21 data-diagram-config="$escapetool.xml($jsontool.serialize($diagramConfig))"
22 data-toolbar="$escapetool.xml($toolbar)"
23 #if ("$!request.source" == '')
24 data-model="$escapetool.xml($tdoc.content)"
25 data-reference="$escapetool.xml($services.model.serialize($tdoc.documentReference, 'default'))"
26 data-title="$escapetool.xml($tdoc.plainTitle)"
27 #end
28 >
29 ## Show a preview of the diagram until the diagram viewer is loaded. This is also useful for export and WYSIWYG edit
30 ## mode where the JavaScript code is not executed and thus the diagram viewer is never loaded.
31 #set ($pngFileName = 'diagram.png')
32 #if ($xcontext.action == 'export' && $diagramObj.getValue('exportUsingSVG') == 0
33 && $doc.getAttachment($pngFileName))
34 #set ($fileName = $pngFileName)
35 #end
36 #set ($diagramURL = $doc.getAttachmentURL($fileName, 'download', "v=$!doc.version"))
37 <img src="$diagramURL" alt="$escapetool.xml($doc.plainTitle)" />
38 </div>
39 {{/html}}
40 #end
41 {{/velocity}}