Änderungen von Dokument Checks
Zuletzt geändert von holgerengels am 2026/07/25 12:56
Von Version 36.1
bearbeitet von holgerengels
am 2026/07/25 12:56
am 2026/07/25 12:56
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 2.1
bearbeitet von Holger Engels
am 2023/12/15 20:21
am 2023/12/15 20:21
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki.holgerengels 1 +xwiki:XWiki.holgerengels - Inhalt
-
... ... @@ -1,155 +1,45 @@ 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($noAFB = []) 4 +#set($noKompetenzen = []) 5 +#set($noQuelle = []) 6 +#set($noLizenz = []) 7 +#set($noZeit = []) 8 +#set($reference = $services.model.resolveDocument('Main.WebHome')) 9 +#set($referenceWithLocale = $services.model.createDocumentReference($reference, $xcontext.locale)) 10 +#set($page = $xwiki.getDocument($referenceWithLocale)) 11 +#foreach( $m in $page.getXDOM().getBlocks('class:MacroBlock', 'DESCENDANT')) 12 + #if($m.getId() == "bpe") 13 + #set($id = $m.parameters.nummer.replace(".", "_")) 14 + #set($link = $m.parameters.ordner + ".BPE_" + $id + ".WebHome") 15 + #set($doc = $xwiki.getDocument($link)) 16 + #foreach($m in $doc.getXDOM().getBlocks('class:MacroBlock', 'DESCENDANT')) 17 + #if($m.getId() == "aufgabe") 18 + #set($c = $c + 1) 19 + #if(!$m.parameters.afb)#set($lala=$noAFB.add({'page': $link, 'id' : $m.parameters.id}))#end 20 + #if(!$m.parameters.kompetenzen)#set($lala=$noKompetenzen.add({'page': $link, 'id' : $m.parameters.id}))#end 21 + #if(!$m.parameters.quelle)#set($lala=$noQuelle.add({'page': $link, 'id' : $m.parameters.id}))#end 22 + #if(!$m.parameters.lizenz && !$m.parameters.cc)#set($lala=$noLizenz.add({'page': $link, 'id' : $m.parameters.id}))#end 23 + #if(!$m.parameters.zeit && !$m.parameters.cc)#set($lala=$noZeit.add({'page': $link, 'id' : $m.parameters.id}))#end 24 + #end 25 + #end 26 + #end 27 +#end 28 +Anzahl Aufgaben $c 6 6 7 -def c = 0 30 +Kein AFB 31 +#foreach($l in $noAFB) [[$l.id>>$l.page]]#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 = [] 33 +Keine Kompetenzen 34 +#foreach($l in $noKompetenzen) [[$l.id>>$l.page]]#end 18 18 19 - println("\n=== " + p + " ===") 20 - def reference = services.model.resolveDocument('xwiki:' + p + '.WebHome') 21 - def main = xwiki.getDocument(reference) 36 +Keine Quelle 37 +#foreach($l in $noQuelle) [[$l.id>>$l.page]]#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") 39 +Keine Lizenz 40 +#foreach($l in $noLizenz) [[$l.id>>$l.page]]#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]) 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.zeit || a.parameters.zeit == "") 47 - noZeit.add([page: link, id : a.parameters.id]) 48 - } 49 - } 50 - } 51 - 52 -if(noID.size() != 0) { 53 - println("") 54 - println("**Keine ID** (" + noID.size() + ")") 55 - def first = true 56 - for(l in noID) { 57 - if(!first) 58 - print(", ") 59 - else first = false 60 - print("[[" + l.page + "]]") 61 - } 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 - def id = new IdGenerator().generateUniqueId("A", l.id); 70 - if(!first) 71 - print(", ") 72 - else first = false 73 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 74 - } 75 -} 76 - 77 -if(noAFB.size() != 0) { 78 - println("") 79 - println("**Kein AFB** (" + noAFB.size() + ")") 80 - def first = true 81 - for(l in noAFB) { 82 - def id = new IdGenerator().generateUniqueId("A", l.id); 83 - if(!first) 84 - print(", ") 85 - else first = false 86 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 87 - } 88 -} 89 - 90 -if(noKompetenzen.size() != 0) { 91 - println("") 92 - println("**Keine Kompetenzbereiche** (" + noKompetenzen.size() + ")") 93 - def first = true 94 - for(l in noKompetenzen) { 95 - def id = new IdGenerator().generateUniqueId("A", l.id); 96 - if(!first) 97 - print(", ") 98 - else first = false 99 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 100 - } 101 -} 102 - 103 -if(noQuelle.size() != 0) { 104 - println("") 105 - println("**Keine Quelle** (" + noQuelle.size() + ")") 106 - def first = true 107 - for(l in noQuelle) { 108 - def id = new IdGenerator().generateUniqueId("A", l.id); 109 - if(!first) 110 - print(", ") 111 - else first = false 112 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 113 - } 114 -} 115 - 116 -if(noZeit.size() != 0) { 117 - println("") 118 - println("**Keine Bearbeitungszeit** (" + noZeit.size() + ")") 119 - def first = true 120 - for(l in noZeit) { 121 - def id = new IdGenerator().generateUniqueId("A", l.id); 122 - if(!first) 123 - print(", ") 124 - else first = false 125 - print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 126 - } 127 -} 128 -} 129 - 130 -println("**Anzahl Aufgaben** " + c) 131 -{{/groovy}} 132 - 133 -{{velocity}} 134 -## HQL-Abfrage für isolierte Root-Seiten ohne Backlinks 135 -#set ($hql = "select distinct doc.space, doc.fullName from XWikiDocument doc where doc.fullName not in (select distinct backlink.id.link from XWikiLink backlink) and doc.hidden = false and doc.space <> 'XWiki' and doc.name = 'WebHome' and doc.space not like '%.%' order by doc.space asc") 136 - 137 -#set ($query = $services.query.hql($hql)) 138 -#set ($discard = $query.setLimit(1000)) 139 -#set ($orphans = $query.execute()) 140 - 141 -### ## Isolierte Top-Level-Waisenseiten (Nested-Pages-Safe): 142 -#if ($orphans.isEmpty()) 143 - *Es wurden keine isolierten Top-Level-Seiten gefunden. Alle Hauptbereiche sind sauber verknüpft oder strukturiert!* 144 -#else 145 - **Gefundene verwaiste Hauptseiten:** $orphans.size() 146 - 147 - | Bereich (Space) | Vollständiger Link | 148 - |-----------------|--------------------| 149 - #foreach ($row in $orphans) 150 - #set ($spaceName = $row.get(0)) 151 - #set ($pageFullName = $row.get(1)) 152 - | $spaceName | [[$spaceName>>$pageFullName]] | 153 - #end 154 -#end 42 +Keine Bearbeitungszeit 43 +#foreach($l in $noZeit) [[$l.id>>$l.page]]#end 155 155 {{/velocity}} 45 +