Änderungen von Dokument Checks
Zuletzt geändert von Holger Engels am 2026/05/19 22:48
Von Version 32.1
bearbeitet von Holger Engels
am 2025/07/09 17:42
am 2025/07/09 17:42
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 35.1
bearbeitet von Holger Engels
am 2026/05/19 22:48
am 2026/05/19 22:48
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Inhalt
-
... ... @@ -2,6 +2,7 @@ 2 2 import org.xwiki.rendering.block.Block; 3 3 import org.xwiki.rendering.block.Block.Axes; 4 4 import org.xwiki.rendering.block.match.MacroBlockMatcher; 5 +import org.xwiki.rendering.util.IdGenerator; 5 5 6 6 def c = 0 7 7 ... ... @@ -54,11 +54,12 @@ 54 54 println("") 55 55 println("**Keine ID** (" + noID.size() + ")") 56 56 def first = true 57 - for(l in noID) 58 + for(l in noID) { 58 58 if(!first) 59 59 print(", ") 60 60 else first = false 61 - print("[[" + l.page + "]]") 62 + print("[[" + l.page + "]]") 63 + } 62 62 } 63 63 64 64 if(noLoesung.size() != 0) { ... ... @@ -66,10 +66,11 @@ 66 66 println("**Keine Lösung** (" + noLoesung.size() + ")") 67 67 def first = true 68 68 for(l in noLoesung) { 71 + def id = new IdGenerator().generateUniqueId("A", l.id); 69 69 if(!first) 70 70 print(", ") 71 71 else first = false 72 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")75 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 73 73 } 74 74 } 75 75 ... ... @@ -78,10 +78,11 @@ 78 78 println("**Kein AFB** (" + noAFB.size() + ")") 79 79 def first = true 80 80 for(l in noAFB) { 84 + def id = new IdGenerator().generateUniqueId("A", l.id); 81 81 if(!first) 82 82 print(", ") 83 83 else first = false 84 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")88 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 85 85 } 86 86 } 87 87 ... ... @@ -90,10 +90,11 @@ 90 90 println("**Keine Kompetenzbereiche** (" + noKompetenzen.size() + ")") 91 91 def first = true 92 92 for(l in noKompetenzen) { 97 + def id = new IdGenerator().generateUniqueId("A", l.id); 93 93 if(!first) 94 94 print(", ") 95 95 else first = false 96 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")101 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 97 97 } 98 98 } 99 99 ... ... @@ -102,10 +102,11 @@ 102 102 println("**Keine Quelle** (" + noQuelle.size() + ")") 103 103 def first = true 104 104 for(l in noQuelle) { 110 + def id = new IdGenerator().generateUniqueId("A", l.id); 105 105 if(!first) 106 106 print(", ") 107 107 else first = false 108 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")114 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 109 109 } 110 110 } 111 111 ... ... @@ -114,10 +114,11 @@ 114 114 println("**Keine Lizenz** (" + noLizenz.size() + ")") 115 115 def first = true 116 116 for(l in noLizenz) { 123 + def id = new IdGenerator().generateUniqueId("A", l.id); 117 117 if(!first) 118 118 print(", ") 119 119 else first = false 120 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")127 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 121 121 } 122 122 } 123 123 ... ... @@ -126,10 +126,11 @@ 126 126 println("**Keine Bearbeitungszeit** (" + noZeit.size() + ")") 127 127 def first = true 128 128 for(l in noZeit) { 136 + def id = new IdGenerator().generateUniqueId("A", l.id); 129 129 if(!first) 130 130 print(", ") 131 131 else first = false 132 - print("[[" + l.id + ">>" + l.page + "||anchor=" + l.id + "]]")140 + print("[[" + l.id + ">>" + l.page + "||anchor=" + id + "]]") 133 133 } 134 134 } 135 135 } ... ... @@ -137,3 +137,26 @@ 137 137 println("**Anzahl Aufgaben** " + c) 138 138 {{/groovy}} 139 139 148 +{{velocity}} 149 +## HQL-Abfrage für isolierte Root-Seiten ohne Backlinks 150 +#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") 151 + 152 +#set ($query = $services.query.hql($hql)) 153 +#set ($discard = $query.setLimit(1000)) 154 +#set ($orphans = $query.execute()) 155 + 156 +### ## Isolierte Top-Level-Waisenseiten (Nested-Pages-Safe): 157 +#if ($orphans.isEmpty()) 158 + *Es wurden keine isolierten Top-Level-Seiten gefunden. Alle Hauptbereiche sind sauber verknüpft oder strukturiert!* 159 +#else 160 + **Gefundene verwaiste Hauptseiten:** $orphans.size() 161 + 162 + | Bereich (Space) | Vollständiger Link | 163 + |-----------------|--------------------| 164 + #foreach ($row in $orphans) 165 + #set ($spaceName = $row.get(0)) 166 + #set ($pageFullName = $row.get(1)) 167 + | $spaceName | [[$spaceName>>$pageFullName]] | 168 + #end 169 +#end 170 +{{/velocity}}