Änderungen von Dokument Checks

Zuletzt geändert von Holger Engels am 2025/07/14 15:22

Von Version 33.1
bearbeitet von Holger Engels
am 2025/07/14 15:22
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 11.1
bearbeitet von Holger Engels
am 2023/12/16 16:08
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,146 +1,84 @@
1 -{{groovy}}
2 -import org.xwiki.rendering.block.Block;
3 -import org.xwiki.rendering.block.Block.Axes;
4 -import org.xwiki.rendering.block.match.MacroBlockMatcher;
5 -import org.xwiki.rendering.util.IdGenerator;
1 +{{velocity}}
2 +#set($c = 0)
3 +#set($noID = [])
4 +#set($noLoesung = [])
5 +#set($noAFB = [])
6 +#set($noKompetenzen = [])
7 +#set($noQuelle = [])
8 +#set($noLizenz = [])
9 +#set($noZeit = [])
10 +#set($reference = $services.model.resolveDocument('Main.WebHome'))
11 +#set($referenceWithLocale = $services.model.createDocumentReference($reference, $xcontext.locale))
12 +#set($page = $xwiki.getDocument($referenceWithLocale))
13 +#foreach( $m in $page.getXDOM().getBlocks('class:MacroBlock', 'DESCENDANT'))
14 + #if($m.getId() == "bpe" || $m.getId() == "aufgabenseite")
15 + #if($m.getId() == "bpe")
16 + #set($id = $m.parameters.nummer.replace(".", "_"))
17 + #set($link = $m.parameters.ordner + ".BPE_" + $id + ".WebHome")
18 + #else
19 + #set($id = $m.parameters.seite)
20 + #set($link = $m.parameters.ordner + "." + $id + ".WebHome")
21 + #end
22 + #set($doc = $xwiki.getDocument($link))
23 + #foreach($m in $doc.getXDOM().getBlocks('class:MacroBlock', 'DESCENDANT'))
24 + #if($m.getId() == "aufgabe")
25 + #set($c = $c + 1)
26 + #if(!$m.parameters.id)#set($lala=$noID.add({'page': $link}))
27 + #else
28 + #set($ll = $doc.space + ".Lösung " + $m.parameters.id + ".WebHome")
29 + #if($xwiki.getDocument($ll).isNew())#set($lala=$noLoesung.add({'page': $link, 'id' : $m.parameters.id}))#end
30 + #end
31 + #if(!$m.parameters.afb || $m.parameters.afb == "")#set($lala=$noAFB.add({'page': $link, 'id' : $m.parameters.id}))#end
32 + #if(!$m.parameters.kompetenzen || $m.parameters.kompetenzen == "")#set($lala=$noKompetenzen.add({'page': $link, 'id' : $m.parameters.id}))#end
33 + #if(!$m.parameters.quelle || $m.parameters.quelle == "")#set($lala=$noQuelle.add({'page': $link, 'id' : $m.parameters.id}))#end
34 + #if(!$m.parameters.lizenz && !$m.parameters.cc)#set($lala=$noLizenz.add({'page': $link, 'id' : $m.parameters.id}))#end
35 + #if(!$m.parameters.zeit || $m.parameters.zeit == "")#set($lala=$noZeit.add({'page': $link, 'id' : $m.parameters.id}))#end
36 + #end
37 + #end
38 + #end
39 +#end
40 +**Anzahl Aufgaben** $c
6 6  
7 -def c = 0
42 +**Keine ID** ($noID.size())
43 +#if($noID.size() != 0)
44 +#set($first=true)
45 +#foreach($l in $noID)#if(!$first),#else#set($first=false)#end [[$l.page]]#end
46 +#else - #end
8 8  
9 -def pages = ['Klasse 8', 'Klasse 9', 'Klasse 10', 'Eingangsklasse', 'Jahrgangsstufen']
10 -for (p in pages) {
11 - def noID = []
12 - def noLoesung = []
13 - def noAFB = []
14 - def noKompetenzen = []
15 - def noQuelle = []
16 - def noLizenz = []
17 - def noZeit = []
48 +**Keine Lösung** ($noLoesung.size())
49 +#if($noLoesung.size() != 0)
50 +#set($first=true)
51 +#foreach($l in $noLoesung)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
52 +#else - #end
18 18  
19 - println("\n=== " + p + " ===")
20 - def reference = services.model.resolveDocument('xwiki:' + p + '.WebHome')
21 - def main = xwiki.getDocument(reference)
54 +**Kein AFB** ($noAFB.size())
55 +#if($noAFB.size() != 0)
56 +#set($first=true)
57 +#foreach($l in $noAFB)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
58 +#else - #end
22 22  
23 - def last
24 - def nummer = 0
25 - for (m in main.getXDOM().getBlocks(new MacroBlockMatcher("bpe"), Block.Axes.DESCENDANT)) {
26 - nummer = nummer +1
27 - def id = m.parameters.nummer.replace(".", "_")
28 - def link = m.parameters.ordner + ".BPE_" + id
29 - def page = xwiki.getDocument(link + ".WebHome")
60 +**Keine Kompetenzbereiche** ($noKompetenzen.size())
61 +#if($noKompetenzen.size() != 0)
62 +#set($first=true)
63 +#foreach($l in $noKompetenzen)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
64 +#else - #end
30 30  
31 - for (a in page.getXDOM().getBlocks(new MacroBlockMatcher("aufgabe"), Block.Axes.DESCENDANT)) {
32 - c = c + 1
33 - if(!a.parameters.id)
34 - noID.add([page: link])
35 - else {
36 - def ll = page.space + ".Lösung " + a.parameters.id + ".WebHome"
37 - if(xwiki.getDocument(ll).isNew())
38 - noLoesung.add([page: link, id : a.parameters.id])
66 +**Keine Quelle** ($noQuelle.size())
67 +#if($noQuelle.size() != 0)
68 +#set($first=true)
69 +#foreach($l in $noQuelle)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
70 +#else - #end
39 39  
40 - if(!a.parameters.afb || a.parameters.afb == "")
41 - noAFB.add([page: link, id : a.parameters.id])
42 - if(!a.parameters.kompetenzen || a.parameters.kompetenzen == "")
43 - noKompetenzen.add([page: link, id : a.parameters.id])
44 - if(!a.parameters.quelle || a.parameters.quelle == "")
45 - noQuelle.add([page: link, id : a.parameters.id])
46 - if(!a.parameters.lizenz && !a.parameters.cc)
47 - noLizenz.add([page: link, id : a.parameters.id])
48 - if(!a.parameters.zeit || a.parameters.zeit == "")
49 - noZeit.add([page: link, id : a.parameters.id])
50 - }
51 - }
52 - }
72 +**Keine Lizenz** ($noLizenz.size())
73 +#if($noLizenz.size() != 0)
74 +#set($first=true)
75 +#foreach($l in $noLizenz)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
76 +#else - #end
53 53  
54 -if(noID.size() != 0) {
55 - println("")
56 - println("**Keine ID** (" + noID.size() + ")")
57 - def first = true
58 - for(l in noID)
59 - if(!first)
60 - print(", ")
61 - else first = false
62 - print("[[" + l.page + "]]")
63 -}
78 +**Keine Bearbeitungszeit** ($noZeit.size())
79 +#if($noZeit.size() != 0)
80 +#set($first=true)
81 +#foreach($l in $noZeit)#if(!$first),#else#set($first=false)#end [[$l.id>>$l.page||anchor="$l.id"]]#end
82 +#else - #end
83 +{{/velocity}}
64 64  
65 -if(noLoesung.size() != 0) {
66 - println("")
67 - println("**Keine Lösung** (" + noLoesung.size() + ")")
68 - def first = true
69 - for(l in noLoesung) {
70 - def id = new IdGenerator().generateUniqueId("A", l.id);
71 - if(!first)
72 - print(", ")
73 - else first = false
74 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
75 - }
76 -}
77 -
78 -if(noAFB.size() != 0) {
79 - println("")
80 - println("**Kein AFB** (" + noAFB.size() + ")")
81 - def first = true
82 - for(l in noAFB) {
83 - def id = new IdGenerator().generateUniqueId("A", l.id);
84 - if(!first)
85 - print(", ")
86 - else first = false
87 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
88 - }
89 -}
90 -
91 -if(noKompetenzen.size() != 0) {
92 - println("")
93 - println("**Keine Kompetenzbereiche** (" + noKompetenzen.size() + ")")
94 - def first = true
95 - for(l in noKompetenzen) {
96 - def id = new IdGenerator().generateUniqueId("A", l.id);
97 - if(!first)
98 - print(", ")
99 - else first = false
100 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
101 - }
102 -}
103 -
104 -if(noQuelle.size() != 0) {
105 - println("")
106 - println("**Keine Quelle** (" + noQuelle.size() + ")")
107 - def first = true
108 - for(l in noQuelle) {
109 - def id = new IdGenerator().generateUniqueId("A", l.id);
110 - if(!first)
111 - print(", ")
112 - else first = false
113 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
114 - }
115 -}
116 -
117 -if(noLizenz.size() != 0) {
118 - println("")
119 - println("**Keine Lizenz** (" + noLizenz.size() + ")")
120 - def first = true
121 - for(l in noLizenz) {
122 - def id = new IdGenerator().generateUniqueId("A", l.id);
123 - if(!first)
124 - print(", ")
125 - else first = false
126 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
127 - }
128 -}
129 -
130 -if(noZeit.size() != 0) {
131 - println("")
132 - println("**Keine Bearbeitungszeit** (" + noZeit.size() + ")")
133 - def first = true
134 - for(l in noZeit) {
135 - def id = new IdGenerator().generateUniqueId("A", l.id);
136 - if(!first)
137 - print(", ")
138 - else first = false
139 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]")
140 - }
141 -}
142 -}
143 -
144 -println("**Anzahl Aufgaben** " + c)
145 -{{/groovy}}
146 -