Ä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.2
bearbeitet von Holger Engels
am 2023/11/14 20: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,57 @@
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 +vote: $average.get().averageVote
126 +{{html clean="false" wiki="true"}}
127 +<style>
128 +star-rating { display: inline-block; width: 120px }
129 +</style>
130 +<star-rating stars=5 rating="$average.get().averageVote" rid="test" bgcolor="white" nocolor="lightgrey" color="gold" onclick="rated.call(this)"></star-rating>
131 +{{/html}}
128 128  {{/velocity}}
133 +
134 +{{html clean="false"}}
135 +<script>
136 + function rated() {
137 + console.log(this.getAttribute("rating"));
138 + sendRate(this.getAttribute("rid"), parseInt(this.getAttribute("rating")));
139 + }
140 + var sendRate = function (rid, vote) {
141 + fetch(new XWiki.Document('WebHome', 'Macros.Aufgabenbewertung').getURL('get') + "?outputSyntax=plain", {
142 + method: "POST",
143 + headers: { "Content-Type": "application/json"},
144 + body: JSON.stringify({
145 + vote: vote,
146 + doc: XWiki.currentDocument.space,
147 + id: rid,
148 + form_token: document.documentElement.getAttribute("data-xwiki-form-token")
149 + })
150 + }).then(data => {
151 + console.log(data.json())
152 + });
153 + }
154 +</script>
155 +{{/html}}