Wiki-Quellcode von Checks

Version 13.1 von Holger Engels am 2025/07/06 20:13

Verstecke letzte Bearbeiter
Holger Engels 11.3 1 {{groovy}}
2 def c = 0
3 def noID = []
4 def noLoesung = []
5 def noAFB = []
6 def noKompetenzen = []
7 def noQuelle = []
8 def noLizenz = []
9 def noZeit = []
Holger Engels 1.1 10
Holger Engels 12.2 11 def pages = ['Klasse 8', 'Klasse 9', 'Klasse 10', 'Eingangsklasse', 'Jahrgangsstufen']
Holger Engels 11.3 12 for (p in pages) {
Holger Engels 12.2 13 println("\n=== " + p + " ===")
14 def reference = services.model.resolveDocument('xwiki:' + p + '.WebHome')
15 def main = xwiki.getDocument(reference)
Holger Engels 11.3 16
Holger Engels 12.2 17 def last
18 def nummer = 0
19 for (m in main.getXDOM().getBlocks(new MacroBlockMatcher("bpe"), Block.Axes.DESCENDANT)) {
20 nummer = nummer +1
21 def id = m.parameters.nummer.replace(".", "_")
22 def link = m.parameters.ordner + ".BPE_" + id
23 def page = xwiki.getDocument(link + ".WebHome")
Holger Engels 11.3 24
Holger Engels 12.2 25 for (a in page.getXDOM().getBlocks(new MacroBlockMatcher("aufgabe"), Block.Axes.DESCENDANT)) {
26 c = c + 1
27 if(!a.parameters.id)
28 noID.add([page: link])
29 else {
30 ll = page.space + ".Lösung " + a.parameters.id + ".WebHome"
31 if(xwiki.getDocument(ll).isNew())
32 noLoesung.add([page: link, d : a.parameters.id])
33 }
34 if(!a.parameters.afb || a.parameters.afb == "")
35 noAFB.add([page: link, d : a.parameters.id])
36 if(!a.parameters.kompetenzen || a.parameters.kompetenzen == "")
37 noKompetenzen.add([page: link, d : a.parameters.id])
38 if(!a.parameters.quelle || a.parameters.quelle == "")
39 noQuelle.add([page: link, d : a.parameters.id])
40 if(!a.parameters.lizenz && !a.parameters.cc)
41 noLizenz.add([page: link, d : a.parameters.id])
42 if(!a.parameters.zeit || a.parameters.zeit == "")
43 noZeit.add([page: link, d : a.parameters.id])
44 }
Holger Engels 11.3 45 }
46 }
47
Holger Engels 12.2 48 println("**Anzahl Aufgaben** " + c)
Holger Engels 11.3 49
50 println("**Keine ID** (" + noID.size() + ")")
Holger Engels 11.4 51 if(noID.size() != 0) {
Holger Engels 12.2 52 first = true
53 for(l in noID)
54 if(!first)
55 print(",")
56 else first = false
57 print("[[" + l.page + "]]")
Holger Engels 11.4 58 }
Holger Engels 1.1 59
Holger Engels 11.4 60 println("**Keine Lösung** (" + noLoesung.size() + ")")
61 if(noLoesung.size() != 0) {
Holger Engels 12.2 62 first = true
63 for(l in noLoesung)
64 if(!first)
65 print(",")
66 else first = false
67 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 68 }
Holger Engels 6.1 69
Holger Engels 11.4 70 println("**Kein AFB** (" + noAFB.size() + ")")
71 if(noAFB.size() != 0) {
Holger Engels 12.2 72 first = true
73 for(l in noAFB)
74 if(!first)
75 print(",")
76 else first = false
77 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 78 }
Holger Engels 10.1 79
Holger Engels 11.4 80 println("**Keine Kompetenzbereiche** (" + noKompetenzen.size() + ")")
81 if(noKompetenzen.size() != 0) {
Holger Engels 12.2 82 first = true
83 for(l in noKompetenzen)
84 if(!first)
85 print(",")
86 else first = false
87 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 88 }
Holger Engels 2.1 89
Holger Engels 11.4 90 println("**Keine Quelle** (" + noQuelle.size() + ")")
91 if(noQuelle.size() != 0) {
Holger Engels 12.2 92 first = true
93 for(l in noQuelle)
94 if(!first)
95 print(",")
96 else first = false
97 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 98 }
Holger Engels 2.1 99
Holger Engels 11.4 100 println("**Keine Lizenz** (" + noLizenz.size() + ")")
101 if(noLizenz.size() != 0) {
Holger Engels 12.2 102 first = true
103 for(l in noLizenz)
104 if(!first)
105 print(",")
106 else first = false
107 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 108 }
Holger Engels 2.1 109
Holger Engels 11.4 110 println("**Keine Bearbeitungszeit** (" + noZeit.size() + ")")
111 if(noZeit.size() != 0) {
Holger Engels 12.2 112 first = true
113 for(l in noZeit)
114 if(!first)
115 print(",")
116 else first = false
117 print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")
Holger Engels 11.4 118 }
119 {{/groovy}}
Holger Engels 1.1 120