Исходный код вики MethodologySectionTemplate


Последние авторы
1 {{velocity}}
2 Система приемов, способов и методов, направленных на изучение количественных закономерностей, проявляющихся в структуре, динамике и взаимосвязях в области воспроизводства трудовых ресурсов и эффективности их использования.
3 Раздел содержит методические материалы домена "$services.wiki.currentWikiDescriptor.prettyName" в структурированном виде.
4
5 ## Задаем классы документов, типы объектов и заголовки
6 #set($topic_array = ['Методические документы', 'Классификаторы', 'Словари и энциклопедии', 'Прочее'])
7 #set($type_array = ['document', 'classifier', 'dictionary', 'other'])
8 #set($view_array = [[], [], [], []])
9 #set ($doc_class = 'SUZ.Methodology.Code.MethodologyClass')
10 ##Список организаций
11 #set($Con_Org = [])
12 #set($vdocOrgs = $xwiki.getDocument('Материалы.Организации источники информации.WebHome'))
13 #set($orgs = $vdocOrgs.getObjects('SUZ.Organizations.Code.OrgClass'))
14 #foreach ($org in $orgs)
15 #set($r = $Con_Org.add({"order": $org.getValue('order'), "short": $org.getValue('short'), "group": $org.getValue('group')}))
16 #end
17 #foreach ($child in $doc.getChildrenReferences()) ## Цикл по дочерним страницам
18 #set ($childDoc = $xwiki.getDocument($child).getTranslatedDocument())
19 #set ($xobject = $childDoc.getObject($doc_class))
20 #set($docLink = '* [[' + $childDoc.getTitle() + '>>' + $child + ']]')
21 #if ($xobject)
22 ##Определим тип документа
23 #set($backDocs = $childDoc.getBacklinks())
24 #set($docType = $type_array[$type_array.size() - 1]) ##тип по-умолчанию последний в массиве
25 #set ($docYear = 1900)
26 #set ($docOrgOrder = 0)
27 #if ($backDocs.size() > 0)
28 #foreach ($docname in $backDocs)
29 #set ($backDoc = $xwiki.getDocument($docname))
30 #set ($backDocObj = $backDoc.getObject('SUZ.Materials.Code.MethodologicalDocumentClass'))
31 #if ($backDocObj and $backDocObj.getValue('parsedDoc').contains($childDoc.toString()) and $type_array.contains($backDocObj.getValue('type')))
32 #set($docType = $backDocObj.getValue('type'))
33 #set ($docYear = $backDocObj.getValue('date').year + 1900)
34 #if ($docYear == $null) #set($docYear = 1900) #end
35 #foreach ($org in $Con_Org)
36 #if ($org.short == $con_org_short)
37 #set ($docOrgOrder = $org.order) ## Название организации в соответствии с кодом
38 #break
39 #end
40 #end
41 #end
42 #end
43 #end
44 #set ($indType = 0) ##Индекс типа документа в массиве типов
45 #foreach ($type in $type_array)
46 #if ($docType == $type)
47 #break
48 #end
49 #set ($indType = $indType + 1)
50 #end
51 #set ($discard = $view_array[$indType].add( {"doc": $child, "link": $docLink, "year": $docYear, "org_order": $docOrgOrder, "title": $childDoc.getTitle()} ))
52 #else
53 #if ($child.toString().contains('.WebHome'))
54 #set ($discard = $view_array[$type_array.size() - 1].add( {"doc": $child, "link": $docLink, "year": 1900, "org_order": 0, "title": $childDoc.getTitle()} ))
55 #end
56 #end
57 #end
58 #set ($indType = 0)
59 #foreach ($topic in $topic_array)
60 #if ($view_array[$indType].size() > 0)
61 === $topic ===
62 #foreach ($viewDoc in $sorttool.sort($view_array[$indType], ["org_order", "year:desc", "title"]))
63 $viewDoc.link
64 #end
65 #end
66 #set ($indType = $indType + 1)
67 #end
68 {{/velocity}}