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