Änderungen von Dokument Sandbox

Zuletzt geändert von Holger Engels am 2024/01/26 15:58

Von Version 3.1
bearbeitet von VBS
am 2023/10/13 22:20
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 21.3
bearbeitet von Holger Engels
am 2023/11/15 12:00
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.vbs
1 +XWiki.holgerengels
Inhalt
... ... @@ -99,30 +99,60 @@
99 99  
100 100  [[image:XWikiLogo.png]]
101 101  
102 -= Makros =
102 +== Orphaned Pages ==
103 103  
104 -Makros bieten die Möglichkeit, das Aussehen von Wiki-Seiten zu verbessern und stellen zusätzliche Funktionalitäten in der Seite zur Verfügung. Hier sind zwei Beispiele, wie Makros die Inhalte verbessern können:
104 +{{velocity filter="none"}}
105 +{{html clean="false" wiki="true"}}
106 +#set ($query = "where (doc.parent is null or doc.parent='') and doc.fullName != 'Main.WebHome' order by doc.name asc")
105 105  
106 -== Makro: Warnmeldung ==
108 +|=Page Name|=Author|=date
109 +|#foreach ($item in $xwiki.searchDocuments($query))
110 + #if ($xwiki.hasAccessLevel('view', $xcontext.user, "${xcontext.database}:${item}"))
111 + #set ($bentrydoc = $xwiki.getDocument($item))
112 + [[${bentrydoc.fullName}]]|$xwiki.getUserName($bentrydoc.author)|$xwiki.formatDate($bentrydoc.date)
113 +|#end
114 +#end
107 107  
108 -Dieses Makro bietet die Möglichkeit, die Aufmerksamkeit der Leser auf einen bestimmten Text zu lenken:
116 +{{/html}}
117 +{{/velocity}}
109 109  
110 -{{warning}}
111 -Dies ist ein wichtiger Hinweis!
112 -{{/warning}}
113 113  
114 -== Inhaltsverzeichnis ==
120 +== Rating Tests ==
115 115  
116 -Dieses Makro erzeugt ein Inhaltsverzeichnis basierend auf den Überschriften in der Seite:
117 -
118 -{{toc/}}
119 -
120 -
121 121  {{velocity}}
122 -#set($c=0)
123 -#set($doc = $xwiki.getDocument("Eingangsklasse.BPE_6_1.WebHome"))
124 -#foreach($m in $doc.getXDOM().getBlocks('class:MacroBlock', 'DESCENDANT'))
125 - #if($m.getId() == "aufgabe")#set($c=$c+1)#end
126 -#end
127 -count $c
123 +#set($ref = $doc.space + "^" + "test")
124 +#set($average = $services.ratings.aufgaben.getAverageRating($ref))
125 +#set($myv = $services.ratings.aufgaben.getRating($ref))
126 +$ref = $average.get().averageVote
127 +$myv.get().totalVote
128 +{{html clean="false" wiki="true"}}
129 +<style>
130 +star-rating { display: inline-block; width: 120px }
131 +</style>
132 +<star-rating stars=5 rating="$average.get().averageVote" rid="test" bgcolor="white" nocolor="lightgrey" color="gold" onclick="rated.call(this)"></star-rating>
133 +{{/html}}
128 128  {{/velocity}}
135 +
136 +{{html clean="false"}}
137 +<script>
138 + function rated() {
139 + console.log(XWiki.currentDocument.space + ".WebHome")
140 + console.log(this.getAttribute("rating"));
141 + sendRate(this.getAttribute("rid"), parseInt(this.getAttribute("rating")));
142 + }
143 + var sendRate = function (rid, vote) {
144 + fetch(new XWiki.Document('WebHome', 'Macros.Aufgabenbewertung').getURL('get') + "?outputSyntax=plain", {
145 + method: "POST",
146 + headers: { "Content-Type": "application/json"},
147 + body: JSON.stringify({
148 + vote: vote,
149 + doc: XWiki.currentDocument.space + ".WebHome",
150 + id: rid,
151 + form_token: document.documentElement.getAttribute("data-xwiki-form-token")
152 + })
153 + }).then(data => {
154 + console.log(data.json())
155 + });
156 + }
157 +</script>
158 +{{/html}}