Версия 30.1 от HRlink на 22.08.2025

Последние авторы
1 {{velocity}}
2 ## Собираем дочерние страницы и превращаем в список документов
3 #set($docs = [])
4 #foreach($ref in $doc.getChildren())
5 #set($discard = $docs.add($xwiki.getDocument($ref)))
6 #end
7
8 ## Сортируем по дате (новые сверху) простым сравнением
9 #macro(sortByDateDesc $list)
10 #set($n = $list.size())
11 #set($i = 0)
12 #while($i < $n)
13 #set($j = $i)
14 #while($j < $n)
15 #if($list.get($j).date.time > $list.get($i).date.time)
16 #set($tmp = $list.get($i)) #set($discard = $list.set($i, $list.get($j))) #set($discard = $list.set($j, $tmp))
17 #end
18 #set($j = $j + 1)
19 #end
20 #set($i = $i + 1)
21 #end
22 #end
23 #sortByDateDesc($docs)
24
25 ## Рендерим «красивую» ленту
26 #if($docs.isEmpty())
27 <p>Пока нет публикаций в этой ветке.</p>
28 #else
29 #foreach($d in $docs)
30 <article style="margin:14px 0; padding-bottom:10px; border-bottom:1px solid #e5e7eb">
31 <div style="color:#6b7280; font-size:.9em">$datetool.format('dd MMM yyyy', $d.date)</div>
32 <h3 style="margin:.2rem 0"><a href="$d.getURL('view')">$escapetool.html($d.displayTitle)</a></h3>
33 <div>$!d.getPlainContent().substring(0,300)…</div>
34 </article>
35 #end
36 #end
37 {{/velocity}}