Änderungen von Dokument Sandbox

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

Von Version 21.1
bearbeitet von Holger Engels
am 2023/11/14 19:44
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 24.1
bearbeitet von Holger Engels
am 2023/11/19 17:10
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -120,13 +120,14 @@
120 120  == Rating Tests ==
121 121  
122 122  {{velocity}}
123 -#set($average = $services.ratings.aufgaben.getAverageRating($doc.space + "^" + "test"))
124 -vote: $average.get().averageVote
123 +$services.ratings.aufgaben.setRating("xwiki:Sandbox.WebHome.WebHome^test", 0)
124 +$services.ratings.aufgaben.getCurrentUserRatings(0, 100, true)
125 +
125 125  {{html clean="false" wiki="true"}}
126 126  <style>
127 127  star-rating { display: inline-block; width: 120px }
128 128  </style>
129 -<star-rating stars=5 rating="$average.get().averageVote" bgcolor="white" nocolor="lightgrey" color="gold" onclick="rated.call(this)"></star-rating>
130 +<star-rating stars=5 rating="$average.get().averageVote" rid="test" bgcolor="white" nocolor="lightgrey" color="gold" onclick="rated.call(this)"></star-rating>
130 130  {{/html}}
131 131  {{/velocity}}
132 132  
... ... @@ -133,17 +133,18 @@
133 133  {{html clean="false"}}
134 134  <script>
135 135   function rated() {
137 + console.log(XWiki.currentDocument.space + ".WebHome")
136 136   console.log(this.getAttribute("rating"));
137 - sendRate(parseInt(this.getAttribute("rating")));
139 + sendRate(this.getAttribute("rid"), parseInt(this.getAttribute("rating")));
138 138   }
139 - var sendRate = function (vote) {
141 + var sendRate = function (rid, vote) {
140 140   fetch(new XWiki.Document('WebHome', 'Macros.Aufgabenbewertung').getURL('get') + "?outputSyntax=plain", {
141 141   method: "POST",
142 142   headers: { "Content-Type": "application/json"},
143 143   body: JSON.stringify({
144 144   vote: vote,
145 - doc: XWiki.currentDocument.space,
146 - id: "test",
147 + doc: XWiki.currentDocument.space + ".WebHome",
148 + id: rid,
147 147   form_token: document.documentElement.getAttribute("data-xwiki-form-token")
148 148   })
149 149   }).then(data => {
... ... @@ -152,3 +152,25 @@
152 152   }
153 153  </script>
154 154  {{/html}}
157 +
158 +{{groovy}}
159 +import org.xwiki.rendering.block.*;
160 +import org.xwiki.rendering.block.match.*;
161 +
162 +def reference = services.model.resolveDocument('Main.WebHome')
163 +def referenceWithLocale = services.model.createDocumentReference(reference, xcontext.locale)
164 +def main = xwiki.getDocument(referenceWithLocale)
165 +for (m in main.getXDOM().getBlocks(new MacroBlockMatcher("bpe"), Block.Axes.DESCENDANT)) {
166 + def id = m.parameters.nummer.replace(".", "_")
167 + def link = m.parameters.ordner + ".BPE_" + id + ".WebHome"
168 + def page = xwiki.getDocument(link)
169 + for (a in page.getXDOM().getBlocks(new MacroBlockMatcher("aufgabe"), Block.Axes.DESCENDANT)) {
170 + if (a.parameters.tags != null && a.parameters.tags.matches("problemlösen"))
171 + println(m.parameters.ordner + " " + m.parameters.nummer + " " + a.parameters.id)
172 + }
173 +}
174 +{{/groovy}}
175 +
176 +{{getaggt}}
177 +problemlösen
178 +{{/getaggt}}