Widok zawartości stron Widok zawartości stron

Wystąpił błąd podczas przetwarzania szablonu.
Expression titleAsParent.selectSingleNode("dynamic-element[@name='description']/dynamic-content") is undefined on line 125, column 19 in 10112#37001#138456102.
1<#assign 
2sciezkaObrazkow = '' 
3scopeGroupId = '' 
4timeZone = '' 
5/> 
6 
7<#if request?? && request?has_content > 
8    <#assign 
9    timeZone = timeZoneUtil.getTimeZone(request['theme-display']['time-zone']) 
10    sciezkaObrazkow = request['theme-display']["path-theme-images"] 
11    scopeGroupId = request['theme-display']['scope-group-id'] 
12    /> 
13</#if> 
14 
15<#assign currentRenderUrl = ''> 
16<#if request['render-url']??> 
17    <#assign currentRenderUrl = request['render-url'] /> 
18</#if> 
19 
20<#assign plid = ''> 
21<#if request['portlet-namespace']??> 
22    <#assign plid = "#p_p_id"+ request['portlet-namespace'] > 
23</#if> 
24 
25<#assign url = ''> 
26<#assign reqFriendlyUrl = ''> 
27<#if request['attributes']??> 
28    <#assign url = request['attributes']['CURRENT_COMPLETE_URL'] /> 
29    <#if request['attributes']['FRIENDLY_URL']??> 
30        <#assign reqFriendlyUrl = request['attributes']['FRIENDLY_URL'] /> 
31    </#if> 
32</#if> 
33 
34<#function checkVer ver> 
35    <#if ver?string?contains(".")> 
36        <#return ver> 
37    <#else> 
38        <#return ver + ".0"> 
39    </#if> 
40</#function> 
41 
42<#assign groupsTemplatePermission = ["17996", "137073416", "138253629", "138244338", "138271490", "138272021", "138272210", 
43"138272712", "137427482", "1378124", "139327903", "139329102", "139334879", "139333849", "139366427", "139366543", "139366729", 
44"139615400", "139828746", "142111321", "74942167", "18091666", "1384597", "143384508", "143573699", "143650541", "143650933", 
45"143651291", "143626193", "143651626", "143698486", "143759816", "143762750", "143763175", "143763548", "143811035", 
46"144025960", "144029710", "144210552", "144268390", "142594442", "144566016", "144567168", "144613420", "144613810", 
47"144614151", "1066429", "41633", "145020268", "145456295", "145506072", "145508621", "145509076", "145509606", 
48"145510025", "144624357", "146339985", "102715934", "146816175", "147685118", "1025534", "150122405", "15103613", 
49"15033991", "153187633"]> 
50 
51<#--Portal,Senat, nauka-komisja, rozwoj-komisja, remonty-komisja, statut-komisja, rw-historycznego, rw-polonistyki, finanse-komisja, przetargi 
52rw-filologicznego-139327903,rw-filozoficznego-139329102,rw-biologii-139334879,rw-wpia-139333849,rw-chemii-139366427,rw-wsmip-139366543,rw-fais-139366729 
53 Stała Senacka Komisja ds. Nauczania - 139615400, Rady WZKiS (ID: 139828746),  142111321-https://www.uj.edu.pl/web/rada-uczelni, 74942167-zespół radców prawnych 
54 18091666 - Instytut Kultury, 1384597 - BIP, 143384508 - RD Językoznawstwo, 
55 143650541 - RD Matematyka,  143650933 - RD Informatyka, 143651291 - RW Matinf 
56143626193 - RD Nauki Biologiczne, 143651626 - RD Nauki o Polityce i Adm., 143698486 - RD Psychologia, 143759816 - RD Nauki o Kulturze i Religii 
57143762750 - RD Filozofia, 143763175 - RD Socjologiczne, 143763548 - RD Pedagogika, 
58143811035 - RD Literaturoznawstwo, 144025960 - RD Nauki o Ziemi, 144029710 - RD Geografia społ-ekon., 144210552 - RD Historia, 144268390 - RD Nauki Prawne 
59142594442 - Szkoła dr nauk ścisłych i rpzyrodniczych, 144566016 - RD Nauki Fizyczne, 144567168 - RD Astronomia 
60144613420 - RD Ekonomia i Finanse, 144613810 - RD Nauki o Komunikacji Społecznej i Mediach, 144614151 - RD Nauki o Zarządzaniu i Jakości 
611066429 - Kwestura, 41633 - Wydział MatInf, 145020268 - POB Heritage 
62POB BioS - 145456295,POB FutureSoc - 145506072,POB Anthropocene - 145508621,POB qLife - 145509076,POB SciMat - 145509606,POB DigiWorld - 145510025 
63id.uj.edu.pl - 144624357, rd-archeologia-nauka - 146339985, cawp.uj.edu.pl - 102715934, RD Nauki o sztuce - 146816175, RD IT - 147685118 
641025534 - Uniwersytecki System Obsługi Studiów, 150122405 - Usosownia, 15103613 - JCJ, 15033991 - Socjologia, 
65153187633 - Kolegium Rektorsko-Dziekańskie --> 
66 
67<#-----------Predefined variables-----------> 
68<#assign 
69longCompanyId = getterUtil.getLong(companyId) 
70longGroupId = getterUtil.getLong(groupId) 
71longUserId = permissionChecker.getUserId() 
72/> 
73 
74<#-----------Services-----------> 
75<#assign 
76folderService = serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFolderLocalService") 
77fileService = serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryLocalService") 
78dlAppService = serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLAppLocalService") 
79journalArticleService = serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService") 
80assetEntryService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService") 
81groupService = serviceLocator.findService("com.liferay.portal.service.GroupLocalService") 
82userService = serviceLocator.findService("com.liferay.portal.service.UserLocalService") 
83userRoleService = serviceLocator.findService("com.liferay.portal.service.RoleLocalService") 
84teamService = serviceLocator.findService("com.liferay.portal.service.TeamLocalService") 
85/> 
86 
87<#---------Article variables---------> 
88<#assign 
89articleId = .vars['reserved-article-id'].data 
90najnowszaWersja = .vars['reserved-article-version'].data 
91/> 
92 
93<#----------Checking version----------> 
94<#assign 
95newsestVer = .vars['reserved-article-version'].data 
96currentVer = newsestVer 
97przejdzDo = httpUtil.getParameter(url, 'przejdzDo', false) 
98/> 
99 
100<#if przejdzDo?has_content> 
101    <#assign currentVer = przejdzDo> 
102</#if> 
103<#if sciezkaObrazkow?has_content || sciezkaObrazkow?matches(".*/uj-lift-theme/images.*") && groupsTemplatePermission?seq_contains(scopeGroupId)> 
104 
105    <#if newsestVer != currentVer> 
106        <p class="archival"> 
107            <b>Niniejszy dokument jest wersją archiwalną.</b> 
108            <a class="archival-link" href="${currentRenderUrl}&groupId=${scopeGroupId}&articleId=${articleId}&przejdz-do=${newsestVer}">Przejdź do najnowszej wersji - ${newsestVer}</a><br/><br/> 
109        </p> 
110    </#if> 
111 
112    <#assign 
113    aktualna = journalArticleService.getArticle(longGroupId, articleId, getterUtil.getDouble(currentVer)) 
114    content = aktualna.getContentByLocale(locale.toString()) 
115    v = content?replace('<br>', '<br/>', 'r') 
116    document = saxReaderUtil.read(content) 
117    root = document.getRootElement() 
118 
119    artPrimKey = aktualna.getResourcePrimKey() 
120    model = "com.liferay.portlet.journal.model.JournalArticle" 
121    asset = assetEntryService.getEntry(model, artPrimKey) 
122 
123    titleAsParent = root.selectSingleNode("dynamic-element[@name='title']") 
124    title = root.selectSingleNode("dynamic-element[@name='title']/dynamic-content").text 
125    description = titleAsParent.selectSingleNode("dynamic-element[@name='description']/dynamic-content").text 
126    content = titleAsParent.selectSingleNode("dynamic-element[@name='content']/dynamic-content").text 
127    folderId = root.selectSingleNode("dynamic-element[@name='folderId']/dynamic-content").text 
128    sortField = root.selectSingleNode("dynamic-element[@name='sortField']/dynamic-content").text 
129    sortOrder = root.selectSingleNode("dynamic-element[@name='sortOrder']/dynamic-content").text 
130    showSubfolders = root.selectSingleNode("dynamic-element[@name='showSubfolders']/dynamic-content").text 
131    emptyFiles = root.selectSingleNode("dynamic-element[@name='emptyFiles']/dynamic-content").text 
132    emptySubfolder = root.selectSingleNode("dynamic-element[@name='emptySubfolder']/dynamic-content").text 
133    permission = root.selectSingleNode("dynamic-element[@name='permission']/dynamic-content").text 
134    teamId = root.selectSingleNode("dynamic-element[@name='teamId']/dynamic-content").text 
135    publishBIP = "" 
136    /> 
137    <#if root.selectSingleNode("dynamic-element[@name='publishBIP']/dynamic-content")?? > 
138        <#assign publishBIP = root.selectSingleNode("dynamic-element[@name='publishBIP']/dynamic-content").text> 
139    </#if> 
140 
141    <#assign langDownloadFiles = htmlUtil.escape(languageUtil.get(locale, "uj-lift-theme.download-files"))> 
142 
143    <style> 
144 
145        ${plid} div.folder-open{ 
146            font-size: 1rem; 
147            background: url('//www.uj.edu.pl/html/themes/control_panel/images/common/folder.png') no-repeat left center; 
148            padding: .5rem 0 0.5rem 1.5rem; 
149            display: inline-block; 
150
151        ${plid} a.folder{ background: url('//www.uj.edu.pl/html/themes/control_panel/images/common/folder_full_document.png') no-repeat left center;} 
152 
153        ${plid} p {color: #333;} 
154        #high-contrast ${plid}  p{color: #fff;} 
155 
156        ${plid} ul li{color: #333;} 
157 
158        ${plid} .back{	font-size: 1rem; display: inline-block; 	margin-right: .5rem;} 
159 
160        ${plid} a:link{text-decoration:none; color: #00519E;} 
161        #high-contrast ${plid} a:link{color: #ffe800;} 
162 
163        ${plid} a:visited{text-decoration:none; color: #005ca7 !important;} 
164 
165        ${plid} a.download { 
166                    color: #292727; 
167                    display: inline-block; 
168                    <#if publishBIP?has_content && publishBIP == "true"> width: 75%; <#else> width: 100%; </#if> 
169            padding: .25rem 0 0.25rem 1.5rem; 
170
171 
172        .view-lt720 ${plid} a.download { 
173            display: block; width: 100%; 
174
175 
176        ${plid} a:hover.download {color: #00519E; padding: .25rem 0 0.25rem 1.75rem;} 
177        #high-contrast ${plid} a.download{color: #fff !important;} 
178        #high-contrast ${plid} a:hover.download{color: #FFE800 !important;} 
179 
180        ${plid} a.cdr { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/cdr.png') no-repeat left top 0.5rem;} 
181        ${plid} a.eps { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/eps.png') no-repeat left top 0.5rem;} 
182        ${plid} a.pdf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/pdf.png') no-repeat left top 0.5rem;} 
183        ${plid} a.rtf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/rtf.png') no-repeat left top 0.5rem;} 
184        ${plid} a.zewnetrzny_link { background: url('//www.uj.edu.pl/image/image_gallery?uuid=2202e51b-8a20-4edf-b3f5-dd1fd92c116f&groupId=37001&t=1297849855367') no-repeat left top 0.5rem;} 
185        ${plid} a.ai { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/ai.png') no-repeat left top 0.5rem;} 
186        ${plid} a.doc,${plid}  a.docx { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/doc.png') no-repeat left top 0.5rem;} 
187        ${plid} a.jpg { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/jpg.png') no-repeat left top 0.5rem;} 
188        ${plid} a.pptx, ${plid} a.ppt{ background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/ppt.png') no-repeat left top 0.5rem;} 
189        ${plid} a.xls,${plid}  a.xlsx { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/xls.png') no-repeat left top 0.5rem;} 
190        ${plid} a.zip { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/zip.png') no-repeat left top 0.5rem;} 
191        ${plid} a.swf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/swf.png') no-repeat left top 0.5rem;} 
192        ${plid} a.txt { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/txt.png') no-repeat left top 0.5rem;} 
193        ${plid} a.csv { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/csv.png') no-repeat left top 0.5rem;} 
194        ${plid} a.gif { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/gif.png') no-repeat left top 0.5rem;} 
195        ${plid} a.odt { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/odt.png') no-repeat left top 0.5rem;} 
196        ${plid} a.xml { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/xml.png') no-repeat left top 0.5rem;} 
197        ${plid} a.tiff { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/tiff.png') no-repeat left top 0.5rem;} 
198        ${plid} a.png { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/png.png') no-repeat left top 0.5rem;} 
199        ${plid} a.css { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/css.png') no-repeat left top 0.5rem;} 
200        ${plid} a.js { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/js.png') no-repeat left top 0.5rem;} 
201 
202        ${plid} .stopka { color: #bbb; font-size: .85rem; display: none;} 
203        ${plid} .stopka a:link { color: #bbb; font-size: .85rem; text-decoration-line: underline;} 
204        #hign-contrast ${plid} .stopka a:link { color: #FFE800;} 
205        ${plid} .stopka a:hover {color: #aaa} 
206        ${plid} .permission-error{color: #dd0000;} 
207        ${plid} .permission-info{margin-top: 1em;} 
208 
209        ${plid} .komunikat{color: #aaa;} 
210        ${plid} .komunikat a:link{color: #8cb1d4;} 
211 
212        ${plid} .file { 
213                    margin: .25rem 0; 
214
215        #high-contrast ${plid} .file{background: #030303;} 
216 
217        ${plid} .czytaj{ 
218                    cursor: pointer; 
219                    text-decoration: none; 
220                    float: right; 
221                    padding: .25rem .5rem; 
222
223 
224        .view-lt720 ${plid} .czytaj{ 
225            float: none; 
226            padding: 1rem; 
227
228 
229        ${plid} .archiwum{ 
230                    border: 1px dashed #eee; 
231                    padding: 0.125rem; 
232                    font-size: 0.725rem; 
233
234 
235        ${plid}  #accordion-header-history{cursor: pointer; background: #f9f9f9;} 
236        #high-contrast ${plid}  #accordion-header-history{cursor: pointer; background: #090909;} 
237 
238        ${plid} .czytaj:hover{color: #000; text-decoration: none;} 
239        #high-contrast ${plid}  .czytaj:hover{color: #fff;} 
240 
241        ${plid}  #accordion-panel-history{background: #f0f0f0;} 
242        #high-contrast ${plid}  #accordion-panel-history{background: #101010;} 
243 
244        ${plid} #accordion-header-history, ${plid} #accordion-panel-history{display: block; 
245                    font-family: 'Libre Baskerville', serif; 
246                    font-size: .85rem; 
247                    padding: 15px 45px 15px 30px; 
248                    position: relative; 
249                    text-decoration: none; 
250                    height: auto; 
251                    border-bottom: 1px #e0e0e0 solid; 
252
253 
254        ${plid} #accordion-header-history:before { 
255                    font-family: 'icomoon'; 
256                    speak: none; 
257                    font-style: normal; 
258                    font-weight: normal; 
259                    font-variant: normal; 
260                    text-transform: none; 
261                    line-height: 1; 
262                    vertical-align: middle; 
263                    -webkit-font-smoothing: antialiased; 
264                    content: "\e60d"; 
265                    width: auto; 
266                    position: absolute; 
267                    top: 15px; 
268                    bottom: 0; 
269                    right: 30px; 
270                    color: #aaaaaa; 
271                    font-size: 1.25rem; 
272
273        #high-contrast #accordion-header-history:before {color: #eee;} 
274 
275        ${plid} #accordion-header-history.open:before{ 
276                    content: "\e60e"; 
277                //color: #005ca7; 
278
279        ${plid} .works-activities{ 
280                    background: #f8f8f8; 
281                    padding: 0 1rem 1rem 1rem; 
282                    margin: 2rem 0 .5rem 0; 
283                    border: 1px dashed #ddd; 
284
285 
286        ${plid} .description{ 
287                    color: #999; 
288
289 
290        .archival {font-family: 'Libre Baskerville', serif; 
291            color:#e80000;} 
292        #high-contrast .archival{color: #fff;} 
293 
294        ${plid} .description{color: #999;} 
295        #high-contrast ${plid} .description{color: #fff;} 
296        #high-contrast ${plid} .file a{color: #FFE800;} 
297        #high-contrast ${plid} .file a:visited {color: #FFE800 !important;} 
298        #high-contrast ${plid} .download{color: #FFE800 !important;} 
299        #high-contrast ${plid} a.download{color: #FFE800 !important;} 
300        #high-contrast ${plid} a.archival-link{color: #FFE800 !important;} 
301        #high-contrast ${plid} a:visited, 
302        #high-contrast ${plid} a:visited.archival-link {color: #FFE800 !important;} 
303        #high-contrast ${plid} .archiwum li {color: #fff ;} 
304        #high-contrast ${plid} li {color: #fff ;} 
305    </style> 
306 
307    <#-- TRANSLATION --> 
308    <#assign translations = { 
309        'znajdujeszSieWKatalogu':{ 
310            'pl_PL':'Znajdujesz się w katalogu', 
311            'en_GB':'You are in the directory' 
312        }, 
313        'brakPlikowWKatalogu':{ 
314            'pl_PL':'Brak plików w bieżącym katalogu', 
315            'en_GB':'No files in the current directory' 
316        }, 
317        'znajdujeszSieWKataloguGlownym':{ 
318            'pl_PL':'Znajdujesz się w katalogu głównym', 
319            'en_GB':'You are in the root directory' 
320        }, 
321        'powrot':{ 
322            'pl_PL':'Powrót', 
323            'en_GB':'Return' 
324        }, 
325        'zawartoscTegoFolderuNiedostepna':{ 
326            'pl_PL':'Zawartość tego folderu jest niedostępna', 
327            'en_GB':'The content of this folder is unavailable' 
328        }, 
329        'trescDostepnaDlaZalogowanych':{ 
330            'pl_PL':'Treść dostępna po zalogowaniu', 
331            'en_GB':'The content is available to logged in users' 
332        }, 
333        'trescDostepnaDlaOkreslonejGrupy':{ 
334            'pl_PL':'Treść dostępna dla określonej grupy osób po zalogowaniu', 
335            'en_GB':'The content is available to specific logged in users' 
336        }, 
337        'niePosiadajaPanstwoOpowiednichUprawnien':{ 
338            'pl_PL':'Nie posiadają Państwo odpowiednich uprawnień do przeglądania tej treści', 
339            'en_GB':'You do not have authorisation to view this content' 
340        }, 
341        'zawartoscDostepnaDla':{ 
342            'pl_PL':'Zawartość dostępna tylko dla', 
343            'en_GB':'Content available only' 
344        }, 
345        'zespolu':{ 
346            'pl_PL':'zespołu', 
347            'en_GB':'to the team' 
348        }, 
349        'uzytkownikowWitryny':{ 
350            'pl_PL':'użytkowników witryny', 
351            'en_GB':'to the website users' 
352        }, 
353        'pracownikowUj':{ 
354            'pl_PL':'pracowników UJ', 
355            'en_GB':'to Jagiellonian University employees' 
356        }, 
357        'iLub':{ 
358            'pl_PL':'i/lub', 
359            'en_GB':'and/or' 
360        }, 
361        'doktorantow':{ 
362            'pl_PL':'doktorantów UJ', 
363            'en_GB':'PhD students' 
364        }, 
365        'nieskonfigurowanyIdentyfikatorKatalogu':{ 
366            'pl_PL':'Nieskonfigurowany identyfikator katalogu', 
367            'en_GB':'Unconfigured directory identifier' 
368        }, 
369        'listaPlikowKatalogow':{ 
370            'pl_PL':'Lista plików i katalogów', 
371            'en_GB':'List of files and directories' 
372        }, 
373        'poZakonczeniuPrzegladaniaPlikówNalezySieWylogowac':{ 
374            'pl_PL':'Po zakończeniu przeglądania plików należy się wylogować', 
375            'en_GB':'Log out after you have finished viewing the files' 
376        }, 
377        'zalogowac':{ 
378            'pl_PL':'zalogować', 
379            'en_GB':'log-in' 
380        }, 
381        'dziennikZmianPliku':{ 
382            'pl_PL':'Dziennik zmian pliku', 
383            'en_GB':'File revision log' 
384        }, 
385        'dziennikZmianDokumentu':{ 
386            'pl_PL':'Dziennik zmian dokumentu', 
387            'en_GB':'Document revision log' 
388        }, 
389        'ukryjDziennikZmianPliku':{ 
390            'pl_PL':'Ukryj dziennik zmian pliku', 
391            'en_GB':'Hide the file revision log' 
392        }, 
393        'ukryjDziennikZmianDokumentu':{ 
394            'pl_PL':'Ukryj dziennik zmian dokumentu', 
395            'en_GB':'Hide the document revision log' 
396        }, 
397        'dataPublikacji':{ 
398            'pl_PL':'Data publikacji', 
399            'en_GB':'Date of publication' 
400        }, 
401        'wersja':{ 
402            'pl_PL':'wersja', 
403            'en_GB':'version' 
404        }, 
405        'pokazWersje':{ 
406            'pl_PL':'Pokaż wersję', 
407            'en_GB':'Show version' 
408        }, 
409        'przegladaszWersje':{ 
410            'pl_PL':'Przeglądasz wersję', 
411            'en_GB':'You are viewing the version' 
412        }, 
413        'dataAktualizacji':{ 
414            'pl_PL':'Data aktualizacji', 
415            'en_GB':'Actualisation date' 
416        }, 
417        'zaktualizowal':{ 
418            'pl_PL':'Zaktualizował', 
419            'en_GB':'Updated' 
420        }, 
421        'dataOpublikowania':{ 
422            'pl_PL':'Data opublikowania', 
423            'en_GB':'Date of publication' 
424        }, 
425        'dokumentOpublikowanyPrzez':{ 
426            'pl_PL':'Dokument opublikowany przez', 
427            'en_GB':'Document published by' 
428        }, 
429        'iloscWyswietlen':{ 
430            'pl_PL':'Ilość wyświetleń', 
431            'en_GB':'Number of views' 
432
433
434    /> 
435 
436    <#if locale!='pl_PL'> 
437        <#assign locale = 'en_GB'/> 
438    </#if> 
439 
440    <#-- UPRAWNIENIA--> 
441    <#assign 
442    grupa = groupService.getGroup(longGroupId) 
443    error = true 
444    friendlyUrl = htmlUtil.escapeURL(reqFriendlyUrl) 
445    adresLogowania = "/c/portal/login?Fp_l_id=10181&_58_redirect=" + friendlyUrl 
446    rolaPracownik = userRoleService.getRole(longCompanyId, "Pracownik").getRoleId() 
447    sprPracownika = userRoleService.hasUserRole(longUserId, rolaPracownik) 
448    rolaDoktorant = userRoleService.getRole(longCompanyId, "Doktorant").getRoleId() 
449    sprDoktoranta = userRoleService.hasUserRole(longUserId, rolaDoktorant) 
450    /> 
451 
452    <#if permission == "zalogowani członkowie witryny"> 
453        <#if longUserId lt 100000> 
454            <p class="page-sub-heading__title permission-info"> 
455                <a href="${adresLogowania}">${translations['trescDostepnaDlaOkreslonejGrupy'][locale]} <i class="icon icon-enter"></i></a> 
456             </p> 
457 
458        <#else> <#--jesli zalogowany sprawdzamy role i udział w organizacji/społecznosci danej strony--> 
459        <#-- checking teamId (the most restrictive)--> 
460            <#if longTeamId?has_content && teamService.getTeam(getterUtil.getLong(teamId))??> 
461                <#assign teamName = teamService.getTeam(getterUtil.getLong(teamId)).getName()> 
462                <#if teamService.hasUserTeam(longUserId, longTeamId)> 
463                    <#assign error = false> 
464                <#else> 
465                    <p class="page-sub-heading__title permission-info"> 
466                        <span class="permission-error">${translations['niePosiadajaPanstwoOpowiednichUprawnien'][locale]}</span>. 
467                        <br/>${translations['zawartoscDostepnaDla'][locale]} ${translations['zespolu'][locale]}<#if teamName?has_content>: <b>${teamName}</b></#if>. 
468                    </p> 
469                </#if> 
470            <#else> 
471                <#if userService.hasGroupUser(getterUtil.getLong(groupId), longUserId)> 
472                    <#assign error = false> 
473                <#else> 
474                    <p class="page-sub-heading__title permission-info"> 
475                        <span class="permission-error">${translations['niePosiadajaPanstwoOpowiednichUprawnien'][locale]}</span>. 
476                        <br/>${translations['zawartoscDostepnaDla'][locale]} ${translations['uzytkownikowWitryny'][locale]}: <b>${grupa.getDescriptiveName()}</b>. 
477                    </p> 
478                </#if> 
479            </#if> <#-- of checking teamId--> 
480        </#if> 
481 
482    <#elseif permission == "zalogowani pracownicy UJ"> 
483        <#if longUserId lt 100000> 
484            <p class="page-sub-heading__title permission-info"> 
485                <a href="${adresLogowania}">${translations['trescDostepnaDlaOkreslonejGrupy'][locale]} <i class="icon icon-enter"></i></a> 
486            </p> 
487        <#else> <#--jesli zalogowany sprawdzamy role--> 
488            <#if sprPracownika == true> 
489                <#assign error = false> 
490            <#else> 
491                <p class="page-sub-heading__title permission-info"> 
492                    <span class="permission-error">${translations['niePosiadajaPanstwoOpowiednichUprawnien'][locale]}</span>. 
493                    <br/>${translations['zawartoscDostepnaDla'][locale]} <b>${translations['pracownikowUj'][locale]}</b>. 
494                </p> 
495            </#if> 
496        </#if> 
497    <#elseif permission == "zalogowani pracownicy i doktoranci UJ"> 
498        <#if longUserId lt 100000> 
499            <p class="page-sub-heading__title permission-info"> 
500                <a href="${adresLogowania}">${translations['trescDostepnaDlaOkreslonejGrupy'][locale]} <i class="icon icon-enter"></i></a> 
501            </p> 
502        <#else> <#--jesli zalogowany sprawdzamy role--> 
503            <#if sprPracownika == true || sprDoktoranta == true> 
504                <#assign error = false> 
505            <#else> 
506                <p class="page-sub-heading__title permission-info"> 
507                    <span class="permission-error">${translations['niePosiadajaPanstwoOpowiednichUprawnien'][locale]}</span>. 
508                    <br/>${translations['zawartoscDostepnaDla'][locale]} <b>${translations['pracownikowUj'][locale]} ${translations['iLub'][locale]} doktorantów UJ</b>. 
509                </p> 
510            </#if> 
511        </#if> 
512    <#elseif permission == "zalogowani doktoranci UJ"> 
513        <#if longUserId lt 100000> 
514            <p class="page-sub-heading__title permission-info"> 
515                <a href="${adresLogowania}">${translations['trescDostepnaDlaOkreslonejGrupy'][locale]} <i class="icon icon-enter"></i></a> 
516            </p> 
517        <#else> <#--jesli zalogowany sprawdzamy role--> 
518            <#if sprDoktoranta == true> 
519                <#assign error = false> 
520            <#else> 
521                <p class="page-sub-heading__title permission-info"> 
522                    <span class="permission-error">${translations['niePosiadajaPanstwoOpowiednichUprawnien'][locale]}</span>. 
523                    <br/>${translations['zawartoscDostepnaDla'][locale]} <b>${translations['doktorantow'][locale]}</b>. 
524                </p> 
525            </#if> 
526        </#if> 
527    <#elseif permission == "wszyscy zalogowani"> 
528        <#if longUserId lt 100000> 
529            <p class="page-sub-heading__title permission-info"> 
530                <a href="${adresLogowania}">${translations['trescDostepnaDlaZalogowanych'][locale]} <i class="icon icon-enter"></i></a> 
531            </p> 
532        <#else> 
533            <#assign error = false> 
534        </#if> 
535    <#elseif permission == "niezalogowani"> 
536        <#assign error = false> 
537    </#if> <#-- end of checking permission--> 
538    <#assign 
539    currentFolderId = "" 
540    currentFolderId = httpUtil.getParameter(url, 'folderId', false) 
541    /> 
542    <#-- check whether parent folder in current language is correct - if not set parentFolder --> 
543    <#if !currentFolderId?has_content> 
544        <#if folderId?has_content && (folderId?length gt 0) && (folderId !="null")> 
545            <#assign currentFolderId = folderId> 
546        <#else> 
547            <p class="alert">Nieskonfigurowany identyfikator katalogu.</p> 
548            <#assign currentFolderId = ""> 
549        </#if> 
550    <#else> 
551 
552        <#if folderId?has_content && (folderId?length gt 0) && (folderId !="null")> 
553            <#assign 
554            longParentFolderId = getterUtil.getLong(folderId) 
555            parentSubfolders = folderService.getFolders(longGroupId, longParentFolderId) 
556            redirectOnParentFolder = true 
557            /> 
558 
559            <#if folderId!=currentFolderId > 
560 
561                    <#list parentSubfolders as sf> 
562                        <#if sf.folderId?string == currentFolderId> 
563                            <#assign redirectOnParentFolder = false /> 
564                        </#if> 
565                    </#list> 
566 
567                <#assign 
568                parentUrl = httpUtil.setParameter(url, 'folderId', longParentFolderId) 
569                /> 
570                <script> 
571                    let friendlyUrl = "${reqFriendlyUrl}"; 
572 
573                    <#if !redirectOnParentFolder > 
574                        console.log('Not Redirect! -- ${parentUrl}'); 
575                    <#else> 
576                        console.log('Redirect! -- ${parentUrl}'); 
577                        window.location.replace(friendlyUrl); 
578                    </#if> 
579 
580                </script> 
581            </#if> 
582 
583        <#else> 
584            <p class="alert">Nieskonfigurowany identyfikator katalogu.</p> 
585        </#if> 
586    </#if> 
587 
588    <#if folderId?has_content && (folderId?length gt 0) && (folderId !="null")> 
589        <#assign 
590        longCurrentFolderId = getterUtil.getLong(currentFolderId) 
591        folders = folderService.getFolders(longGroupId, longCurrentFolderId) 
592        folder = "" 
593        /> 
594 
595        <#if folderService.getFolder(longCurrentFolderId)??> 
596            <#assign folder = folderService.getFolder(longCurrentFolderId)> 
597        </#if> 
598 
599        <#assign parentUrl = httpUtil.setParameter(url, 'folderId', folderId)> 
600        <#-- sorting by createDate, modifiedDate, title, description --> 
601 
602        <#if !sortField?has_content> 
603            <#assign sortField = "title"> 
604        </#if> 
605        <#if !sortOrder?has_content> 
606            <#assign sortOrder = "asc"> 
607        </#if> 
608        <#if sortOrder == "asc"> 
609            <#assign isAscending = true> 
610        <#else> 
611            <#assign isAscending = false> 
612        </#if> 
613 
614        <#assign 
615        OrderByComparatorFactoryUtil = staticUtil["com.liferay.portal.kernel.util.OrderByComparatorFactoryUtil"] 
616        filesOrderBy = OrderByComparatorFactoryUtil.create("DLFileEntry", [sortField, isAscending]) 
617        files = fileService.getFileEntries(longGroupId, longCurrentFolderId, 0, 0, 300, filesOrderBy) 
618        /> 
619    </#if>   <#-- end of checkin folderId if empty --> 
620 
621    <section class="main-content" id="main-content" tabindex="-1"> 
622        <article class="article"> 
623            <#if error == false> 
624            <#--treść właściwa--> 
625                <div class="page-sub-heading"> 
626                    <h2 class="page-sub-heading__title"> 
627                        <#if title?has_content && title?length gt 0> 
628                            ${title} 
629                        <#else> 
630                            ${translations['listaPlikowKatalogow'][locale]} 
631                        </#if> 
632                    </h2> 
633                </div> 
634 
635            <#-- wyekstrahować dane o portletach z bieżacej strony!!!!--> 
636                <#assign 
637                layoutService = serviceLocator.findService("com.liferay.portal.service.LayoutLocalService") 
638                currentPlid = getterUtil.getLong(request['theme-display']['plid']) 
639                currentLayout = layoutService.getLayout(currentPlid) 
640                currentPortletId = request['attributes']['PORTLET_ID'] 
641                currentLayoutType = currentLayout.getLayoutType() 
642                portletsInRightColumn = currentLayoutType.getAllPortlets("column-3") 
643                /> 
644                <#if portletsInRightColumn?has_content && portletsInRightColumn?size gt 0 && portletsInRightColumn[0].getPortletId() == currentPortletId> 
645                    <#if permission != "niezalogowani"> 
646                        <p class="komunikat"> 
647                            <a href="/c/portal/logout?p_l_id=10181&_58_redirect=${htmlUtil.escapeURL(reqFriendlyUrl)}">${translations['poZakonczeniuPrzegladaniaPlikówNalezySieWylogowac'][locale]} <i class="icon icon-exit"></i></a> 
648                        </p> 
649                    </#if> 
650                </#if> 
651 
652 
653                <div class="article__content"> 
654 
655                <#if description?has_content> 
656                    <p class="article__description"> 
657                        ${description} 
658                    </p> 
659                </#if> 
660                <#if content?has_content> 
661                    <p> 
662                        ${content} 
663                    </p> 
664                </#if> 
665                <#-- checking parentFolderId--> 
666                <#if  folderId?has_content && (folderId?length gt 0) && (folderId !="null")> 
667                    <#if longCurrentFolderId == getterUtil.getLong(folderId) || getterUtil.getLong(folderId) == folder.getParentFolderId()> 
668 
669                        <#if showSubfolders?has_content && showSubfolders == "tak"> 
670                            <#if currentFolderId != folderId> 
671                                <a href="${parentUrl}" class="back"> 
672                                    <i class="icon icon-undo2"></i> 
673                                    ${translations['powrot'][locale]} 
674                                </a> 
675                            </#if> 
676                            <div class="folder-open"> 
677                                <#if folder?has_content && folder.getName()?has_content> 
678                                    ${translations['znajdujeszSieWKatalogu'][locale]} <b>${folder.getName()}</b> 
679                                <#else> 
680                                    ${translations['znajdujeszSieWKataloguGlownym'][locale]} 
681                                </#if> 
682                            </div> 
683 
684                            <#-- FOLDERS--> 
685                            <#if folders?size == 0> 
686                                <#if emptySubfolder?has_content && emptySubfolder?length gt 0> 
687                                    <div class="info-podfolder"> 
688                                        ${emptySubfolder} 
689                                    </div> 
690                                </#if> 
691                            <#else> 
692                                <div> 
693                                    <#list folders as f> 
694                                        <#assign folderId = f.getFolderId()> 
695                                        <#assign urlToFolder = httpUtil.setParameter(url, "folderId", folderId)> 
696 
697                                        <a href="${urlToFolder}" class="folder download"> 
698                                            ${f.getName()} 
699                                        </a> 
700                                    </#list> 
701                                </div> 
702                            </#if> 
703                        </#if><#-- end of checking showSubfolders--> 
704 
705                        <div id="accordionGroup" class="dziennikZmian" data-allow-multiple data-allow-toggle> 
706                            <div class="article__section"> 
707 
708                                <#if files?size == 0> 
709                                    <#if emptyFiles?has_content && emptyFiles?length gt 0> 
710                                        <br/> 
711                                        ${emptyFiles} 
712                                    </#if> 
713                                    <br/> 
714                                <#else> 
715                                    <#list files as doc> 
716                                        <#assign uet = httpUtil.encodeURL(htmlUtil.unescape(doc.getTitle()))> 
717                                        <#assign fileExt = doc.getExtension()> 
718                                        <#assign fileUrl = "/documents/" + longGroupId + "/" + currentFolderId + "/" + uet> 
719                                        <div class="file"> 
720                                            <a type="button" href="${fileUrl}" class="download <#if fileExt?has_content && fileExt?length gt 0> ${fileExt} </#if> "> 
721                                                <#if doc.description?length gt 0> 
722                                                    ${doc.getDescription()} 
723                                                <#else> 
724                                                    ${doc.getTitle()} 
725                                                </#if> 
726                                            </a> 
727 
728                                            <#if publishBIP?has_content && publishBIP == "true"> 
729                                                <a tabindex="0" id="accordion-header-${files?seq_index_of(doc)}" aria-controls="accordion-panel-${files?seq_index_of(doc)}" class="czytaj Accordion-trigger" aria-expanded="false" type="button"> 
730                                                    <i class="icon icon-info"></i> 
731                                                    ${translations['dziennikZmianPliku'][locale]} 
732                                                </a> 
733                                                <div id="accordion-panel-${files?seq_index_of(doc)}" aria-labelledby="accordion-header-${files?seq_index_of(doc)}" class="archiwum" hidden> 
734                                                    <#assign docVersions = doc.getFileVersions(0)> 
735                                                    <ul> 
736                                                        <#list docVersions as docVersion> 
737                                                            <li><a href="${fileUrl}?version=${docVersion.getVersion()}">${translations['wersja'][locale]}: ${docVersion.version}</a>, ${translations['dataPublikacji'][locale]}: ${dateUtil.getDate(docVersion.getStatusDate(), "dd.MM.yyyy HH:mm", locale, timeZone)} 
738                                                                ${docVersion.getStatusByUserName()} 
739                                                            </li> 
740                                                        </#list> 
741                                                    </ul> 
742                                                </div> 
743                                            </#if> 
744                                        </div> <#-- end of class="file"--> 
745                                    </#list><#-- of foreach--> 
746                                </#if><#-- of checking files.size--> 
747 
748                            </div> <#-- end of article__section--> 
749                        </div> <#-- end of Accordion--> 
750 
751                    <#else> 
752                        <p>${translations['zawartoscTegoFolderuNiedostepna'][locale]}</p> 
753                    </#if> 
754                </#if><#-- end of checkin folderId if empty--> 
755 
756                </div> <#-- end of article__content--> 
757 
758                <#if publishBIP?has_content && publishBIP == 'true'> 
759                <#-- -----------------------------------------------------------------> 
760                <#-- --------  assets from the current journalArticle--> 
761                <#-- ------------------------------------------------------------------> 
762                    <#assign 
763                    assetCategoryService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetCategoryLocalService") 
764                    assetTagService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetTagLocalService") 
765                    articleId = .vars['reserved-article-id'].data 
766                    article = journalArticleService.getArticle(groupId, articleId) 
767                    model = "com.liferay.portlet.journal.model.JournalArticle" 
768                    artPrimKey = article.getResourcePrimKey() 
769                    asset = assetEntryService.getEntry(model, artPrimKey) 
770                    assetViewCount = asset.getViewCount() 
771                    assetClassPK = getterUtil.getLong(asset.getClassPK()) 
772                    categories = assetCategoryService.getCategories(model, assetClassPK) 
773                    tags = assetTagService.getTags(model, assetClassPK) 
774                    /> 
775 
776                    <div class="dziennikZmian" data-allow-multiple data-allow-toggle> 
777                        <a id="accordion-header-history" aria-controls="accordion-panel-history" tabindex="0" class="Accordion-trigger" aria-expanded="false" type="button"> 
778                            <i class="icon icon-info"></i> 
779                            ${translations['dziennikZmianDokumentu'][locale]}</a> 
780 
781                        <div id="accordion-panel-history" aria-labelledby="accordion-header-history" style="display: none;"> 
782 
783                            <#-- LINKOWANIE DO POPRZEDNIEJ WERSJI--> 
784                            <#assign articleVersions = journalArticleService.getArticles(groupId, articleId)> 
785                            <#list articleVersions as articleVersion> 
786                                <#if articleVersion.getStatus() != 2> 
787                                    <#assign version = articleVersion.getVersion()> 
788                                    <#assign dataMod = dateUtil.getDate(articleVersion.getModifiedDate(), "dd.MM.yyyy HH:mm", locale, timeZone)> 
789                                    <#assign userMod = articleVersion.getUserName()> 
790                                    <p> 
791                                        <#if currentVer?number != version?number> 
792                                            <a class="archival-link" href="${currentRenderUrl}&groupId=${scopeGroupId}&articleId=${articleId}&przejdzDo=${checkVer(version)}">${translations['pokazWersje'][locale]} ${checkVer(version)}</a> 
793                                        <#else> 
794                                            ${translations['przegladaszWersje'][locale]} <b>${checkVer(version)}</b> 
795                                        </#if> 
796                                        <span class="description"><#if version?number == 1.0>${translations['dataOpublikowania'][locale]}:<#else> ${translations['dataAktualizacji'][locale]}:</#if></span> 
797                                        ${dataMod} 
798                                        <span class="description"><#if version?number == 1.0>${translations['dokumentOpublikowanyPrzez'][locale]}:<#else> ${translations['zaktualizowal'][locale]}:</#if></span> 
799                                        ${userMod} 
800                                    </p> 
801                                </#if> 
802                            </#list> <#-- of foreach--> 
803                            <p><span>${translations['iloscWyswietlen'][locale]}:</span> <span>${assetViewCount}</span></p> 
804                        </div> 
805                    </div> 
806                </#if> <#-- end of checking publishBIP==true--> 
807            </#if> <#--koniec sprawdzenia, czy error--> 
808        </article> 
809    </section> 
810<#else> 
811    <p>Wybrany szablon nie jest przeznaczony dla tej witryny!</p> 
812</#if> 
813 
814 
815<#if publishBIP?has_content && publishBIP == 'true'> 
816    <script type="text/javascript"> 
817        /* 
818            *   This content is licensed according to the W3C Software License at 
819            *   https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document 
820
821            *   Simple accordion pattern example 
822            */ 
823        'use strict'; 
824 
825        Array.prototype.slice.call(document.querySelectorAll('.dziennikZmian')).forEach(function (accordion) { 
826 
827            // Allow for multiple accordion sections to be expanded at the same time 
828            var allowMultiple = accordion.hasAttribute('data-allow-multiple'); 
829            // Allow for each toggle to both open and close individually 
830            var allowToggle = (allowMultiple) ? allowMultiple : accordion.hasAttribute('data-allow-toggle'); 
831 
832            // Create the array of toggle elements for the accordion group 
833            var triggers = Array.prototype.slice.call(accordion.querySelectorAll('.Accordion-trigger')); 
834            var panels = Array.prototype.slice.call(accordion.querySelectorAll('.Accordion-panel')); 
835 
836            accordion.addEventListener('keypress', accord, false); 
837            accordion.addEventListener('click', accord, false); 
838 
839            function accord(event) { 
840                var target = event.target; 
841                if (target.classList.contains('Accordion-trigger')) { 
842                    // Check if the current toggle is expanded. 
843                    var isExpanded = target.getAttribute('aria-expanded') == 'true'; 
844                    var active = accordion.querySelector('[aria-expanded="true"]'); 
845 
846                    // without allowMultiple, close the open accordion 
847                    if (!allowMultiple && active && active !== target) { 
848                        // Set the expanded state on the triggering element 
849                        active.setAttribute('aria-expanded', 'false'); 
850                        // Hide the accordion sections, using aria-controls to specify the desired section 
851                        document.getElementById(active.getAttribute('aria-controls')).setAttribute('hidden', ''); 
852 
853                        // When toggling is not allowed, clean up disabled state 
854                        if (!allowToggle) { 
855                            active.removeAttribute('aria-disabled'); 
856
857
858 
859                    if (!isExpanded) { 
860                        // Set the expanded state on the triggering element 
861                        target.setAttribute('aria-expanded', 'true'); 
862                        // Hide the accordion sections, using aria-controls to specify the desired section 
863                        // document.getElementById(target.getAttribute('aria-controls')).removeAttribute('hidden'); 
864                        jQuery(target).next("div").slideToggle("fast"); 
865 
866                        if(target.innerHTML.includes('pliku')){ 
867                            target.innerHTML = '<i class="icon icon-info"></i> ${translations['ukryjDziennikZmianPliku'][locale]}'; 
868                        } else { 
869                            target.innerHTML = '<i class="icon icon-info"></i> ${translations['ukryjDziennikZmianDokumentu'][locale]}'; 
870
871                        // If toggling is not allowed, set disabled state on trigger 
872                        if (!allowToggle) { 
873                            target.setAttribute('aria-disabled', 'true'); 
874
875
876                    else if (allowToggle && isExpanded) { 
877                        // Set the expanded state on the triggering element 
878                        target.setAttribute('aria-expanded', 'false'); 
879                        // Hide the accordion sections, using aria-controls to specify the desired section 
880                        // document.getElementById(target.getAttribute('aria-controls')).setAttribute('hidden', ''); 
881                        jQuery(target).next("div").slideToggle("fast"); 
882                        if(target.innerHTML.includes('pliku')){ 
883                            target.innerHTML = '<i class="icon icon-info"></i> ${translations['dziennikZmianPliku'][locale]}'; 
884                        } else { 
885                            target.innerHTML = '<i class="icon icon-info"></i> ${translations['dziennikZmianDokumentu'][locale]}'; 
886
887
888                    event.preventDefault(); 
889
890
891        }); 
892    </script> 
893</#if>