Änderungen von Dokument Checks
Zuletzt geändert von Holger Engels am 2025/07/14 15:22
Von Version 10.1
bearbeitet von Holger Engels
am 2023/12/16 15:57
am 2023/12/16 15:57
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 16.1
bearbeitet von Holger Engels
am 2025/07/06 20:26
am 2025/07/06 20:26
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -1,84 +1,124 @@ 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 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 +def c = 0 6 +def l 7 +def noID = [] 8 +def noLoesung = [] 9 +def noAFB = [] 10 +def noKompetenzen = [] 11 +def noQuelle = [] 12 +def noLizenz = [] 13 +def noZeit = [] 41 41 42 - **KeineID** ($noID.size())43 - #if($noID.size()!=0)44 - #set($first=true)45 - #foreach($lin$noID)#if(!$first),#else#set($first=false)#end[[$l.page]]#end46 - #else-#end15 +def pages = ['Klasse 8', 'Klasse 9', 'Klasse 10', 'Eingangsklasse', 'Jahrgangsstufen'] 16 +for (p in pages) { 17 + println("\n=== " + p + " ===") 18 + def reference = services.model.resolveDocument('xwiki:' + p + '.WebHome') 19 + def main = xwiki.getDocument(reference) 47 47 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 21 + def last 22 + def nummer = 0 23 + for (m in main.getXDOM().getBlocks(new MacroBlockMatcher("bpe"), Block.Axes.DESCENDANT)) { 24 + nummer = nummer +1 25 + def id = m.parameters.nummer.replace(".", "_") 26 + def link = m.parameters.ordner + ".BPE_" + id 27 + def page = xwiki.getDocument(link + ".WebHome") 53 53 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 29 + for (a in page.getXDOM().getBlocks(new MacroBlockMatcher("aufgabe"), Block.Axes.DESCENDANT)) { 30 + c = c + 1 31 + if(!a.parameters.id) 32 + noID.add([page: link]) 33 + else { 34 + ll = page.space + ".Lösung " + a.parameters.id + ".WebHome" 35 + if(xwiki.getDocument(ll).isNew()) 36 + noLoesung.add([page: link, d : a.parameters.id]) 37 + } 38 + if(!a.parameters.afb || a.parameters.afb == "") 39 + noAFB.add([page: link, d : a.parameters.id]) 40 + if(!a.parameters.kompetenzen || a.parameters.kompetenzen == "") 41 + noKompetenzen.add([page: link, d : a.parameters.id]) 42 + if(!a.parameters.quelle || a.parameters.quelle == "") 43 + noQuelle.add([page: link, d : a.parameters.id]) 44 + if(!a.parameters.lizenz && !a.parameters.cc) 45 + noLizenz.add([page: link, d : a.parameters.id]) 46 + if(!a.parameters.zeit || a.parameters.zeit == "") 47 + noZeit.add([page: link, d : a.parameters.id]) 48 + } 49 + } 50 +} 59 59 60 -**Keine Kompetenzen** ($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 52 +println("**Anzahl Aufgaben** " + c) 65 65 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 54 +println("**Keine ID** (" + noID.size() + ")") 55 +if(noID.size() != 0) { 56 + first = true 57 + for(l in noID) 58 + if(!first) 59 + print(",") 60 + else first = false 61 + print("[[" + l.page + "]]") 62 +} 71 71 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 64 +println("**Keine Lösung** (" + noLoesung.size() + ")") 65 +if(noLoesung.size() != 0) { 66 + first = true 67 + for(l in noLoesung) 68 + if(!first) 69 + print(",") 70 + else first = false 71 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 72 +} 77 77 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}} 74 +println("**Kein AFB** (" + noAFB.size() + ")") 75 +if(noAFB.size() != 0) { 76 + first = true 77 + for(l in noAFB) 78 + if(!first) 79 + print(",") 80 + else first = false 81 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 82 +} 84 84 84 +println("**Keine Kompetenzbereiche** (" + noKompetenzen.size() + ")") 85 +if(noKompetenzen.size() != 0) { 86 + first = true 87 + for(l in noKompetenzen) 88 + if(!first) 89 + print(",") 90 + else first = false 91 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 92 +} 93 + 94 +println("**Keine Quelle** (" + noQuelle.size() + ")") 95 +if(noQuelle.size() != 0) { 96 + first = true 97 + for(l in noQuelle) 98 + if(!first) 99 + print(",") 100 + else first = false 101 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 102 +} 103 + 104 +println("**Keine Lizenz** (" + noLizenz.size() + ")") 105 +if(noLizenz.size() != 0) { 106 + first = true 107 + for(l in noLizenz) 108 + if(!first) 109 + print(",") 110 + else first = false 111 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 112 +} 113 + 114 +println("**Keine Bearbeitungszeit** (" + noZeit.size() + ")") 115 +if(noZeit.size() != 0) { 116 + first = true 117 + for(l in noZeit) 118 + if(!first) 119 + print(",") 120 + else first = false 121 + print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]") 122 +} 123 +{{/groovy}} 124 +