Widok zawartości stron Widok zawartości stron

Wystąpił błąd podczas przetwarzania szablonu.
Error on line 207, column 13 in 10112#37001#147174983
fileEntryService.getFileEntryByUuidAndGroupId(uuid, getterUtil.getLong(fileGroup)) is undefined.
It cannot be assigned to file
1<#assign plid = ''> 
2<#if request['portlet-namespace']??> 
3	<#assign plid = "#p_p_id"+ request['portlet-namespace'] > 
4</#if> 
5 
6<style type="text/css"> 
7    ${plid} p {color: #333;} 
8    #high-contrast ${plid}  p{color: #fff;} 
9         
10    ${plid} ul li{color: #333;} 
11 
12    ${plid} .back{	font-size: 1rem; display: inline-block; 	margin-right: .5rem;} 
13 
14    ${plid} a:link{text-decoration:none; color: #00519E;} 
15    #high-contrast ${plid} a:link{color: #ffe800;} 
16 
17    ${plid} a:visited{text-decoration:none; color: #005ca7 !important;} 
18 
19    ${plid} a.download { 
20         color: #292727; 
21         display: inline-block; 
22         width: 70%; 
23         padding: .25rem 0 0.25rem 1.5rem; 
24
25 
26    .view-lt720 ${plid} a.download { 
27                     display: block; width: 100%; 
28
29 
30 
31    ${plid} a:hover.download {color: #00519E; padding: .25rem 0 0.25rem 1.75rem;} 
32    #high-contrast ${plid} a.download{color: #fff !important;} 
33    #high-contrast ${plid} a:hover.download{color: #FFE800 !important;} 
34 
35    ${plid} a.cdr { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/cdr.png') no-repeat left center;} 
36    ${plid} a.eps { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/eps.png') no-repeat left center;} 
37    ${plid} a.pdf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/pdf.png') no-repeat left center;} 
38    ${plid} a.rtf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/rtf.png') no-repeat left center;} 
39    ${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 center;} 
40    ${plid} a.ai { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/ai.png') no-repeat left center;} 
41    ${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 center;} 
42    ${plid} a.jpg { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/jpg.png') no-repeat left center;} 
43    ${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 center;} 
44    ${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 center;} 
45    ${plid} a.zip { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/zip.png') no-repeat left center;} 
46    ${plid} a.swf { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/swf.png') no-repeat left center;} 
47    ${plid} a.txt { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/txt.png') no-repeat left center;} 
48    ${plid} a.csv { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/csv.png') no-repeat left center;} 
49    ${plid} a.gif { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/gif.png') no-repeat left center;} 
50    ${plid} a.odt { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/odt.png') no-repeat left center;} 
51    ${plid} a.xml { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/xml.png') no-repeat left center;} 
52    ${plid} a.tiff { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/tiff.png') no-repeat left center;} 
53    ${plid} a.png { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/png.png') no-repeat left center;} 
54    ${plid} a.css { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/css.png') no-repeat left center;} 
55    ${plid} a.js { background: url('//www.uj.edu.pl/html/themes/control_panel/images/file_system/small/js.png') no-repeat left center;} 
56 
57    ${plid} .stopka { color: #bbb; font-size: .85rem; display: none;} 
58    ${plid} .stopka a:link { color: #bbb; font-size: .85rem; text-decoration-line: underline;} 
59    #hign-contrast ${plid} .stopka a:link { color: #FFE800;} 
60    ${plid} .stopka a:hover {color: #aaa} 
61    ${plid} .permission-error{color: #dd0000;} 
62    ${plid} .permission-info{margin-top: 1em;} 
63 
64    ${plid} .komunikat{color: #aaa;} 
65    ${plid} .komunikat a:link{color: #8cb1d4;} 
66 
67    ${plid} .file { 
68         margin: 1rem 0 .5rem 0; 
69         padding: .5rem 1rem; 
70         background: #fcfcfc; 
71
72    #high-contrast ${plid} .file{background: #030303;} 
73 
74    ${plid} .czytaj{ 
75         cursor: pointer; 
76         text-decoration: none; 
77         float: right; 
78         padding: .25rem .5rem; 
79
80 
81    .view-lt720 ${plid} .czytaj{ 
82                     float: none; 
83                     padding: 1rem; 
84
85 
86    ${plid} .archiwum{ 
87         border: 1px dashed #eee; 
88         padding: 0.125rem; 
89         font-size: 0.725rem; 
90
91 
92    ${plid}  #czytaj{cursor: pointer; background: #f9f9f9;} 
93    #high-contrast ${plid}  #czytaj{cursor: pointer; background: #090909;} 
94 
95    ${plid} .czytaj:hover{color: #000; text-decoration: none;} 
96    #high-contrast ${plid}  .czytaj:hover{color: #fff;} 
97 
98    ${plid}  #archiwum{background: #f0f0f0;} 
99    #high-contrast ${plid}  #archiwum{background: #101010;} 
100 
101    ${plid} #czytaj, ${plid} #archiwum{display: block; 
102                        font-family: 'Libre Baskerville', serif; 
103                        font-size: .85rem; 
104                        padding: 15px 45px 15px 30px; 
105                        position: relative; 
106                        text-decoration: none; 
107                        height: auto; 
108                        border-bottom: 1px #e0e0e0 solid; 
109
110 
111    ${plid} #czytaj:before { 
112         font-family: 'icomoon'; 
113         speak: none; 
114         font-style: normal; 
115         font-weight: normal; 
116         font-variant: normal; 
117         text-transform: none; 
118         line-height: 1; 
119         vertical-align: middle; 
120         -webkit-font-smoothing: antialiased; 
121         content: "\e60d"; 
122         width: auto; 
123         position: absolute; 
124         top: 15px; 
125         bottom: 0; 
126         right: 30px; 
127         color: #aaaaaa; 
128         font-size: 20px; 
129         font-size: 1.25rem; 
130
131    #high-contrast #czytaj:before {color: #eee;} 
132 
133    ${plid} #czytaj.open:before{ 
134         content: "\e60e"; 
135     //color: #005ca7; 
136
137    ${plid} .works-activities{ 
138         background: #f8f8f8; 
139         padding: 0rem 1rem 1rem 1rem; 
140         margin: 2rem 0 .5rem 0; 
141         border: 1px dashed #ddd; 
142
143    .info{ 
144        padding: 1rem; 
145        background: #fff7aa; 
146
147    ${plid} .description{ 
148         color: #999; 
149
150 
151    .archival {font-family: 'Libre Baskerville', serif; 
152        color:#e80000;} 
153    #high-contrast .archival{color: #fff;} 
154 
155    #tresc {position: relative; 
156        font-family: 'Libre Baskerville', serif; 
157        margin-bottom: 1.5rem;} 
158 
159    .etykietaPola{ 
160        color: #00519e; 
161
162 
163    .blok{ 
164        margin-bottom:4px; 
165
166 
167     #high-contrast .etykietaPola {color: #FFE800;} 
168 
169    ${plid} .description{color: #999;} 
170    #high-contrast ${plid} .description{color: #fff;} 
171    #high-contrast ${plid} .file a{color: #FFE800;} 
172    #high-contrast ${plid} .file a:visited {color: #FFE800 !important;} 
173    #high-contrast ${plid} .download{color: #FFE800 !important;} 
174    #high-contrast ${plid} a.download{color: #FFE800 !important;} 
175    #high-contrast ${plid} a.archival-link{color: #FFE800 !important;} 
176    #high-contrast ${plid} a:visited.archival-link {color: #FFE800 !important;} 
177    #high-contrast ${plid} .archiwum li {color: #fff ;} 
178    #high-contrast ${plid} li {color: #fff ;} 
179</style> 
180 
181    <#-- Services --> 
182    <#assign fileEntryService = serviceLocator.findService("com.liferay.portlet.documentlibrary.service.DLFileEntryLocalService")> 
183    <#assign assetEntryService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetEntryLocalService")> 
184    <#assign assetCategoryService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetCategoryLocalService")> 
185    <#assign journalArticleService = serviceLocator.findService("com.liferay.portlet.journal.service.JournalArticleLocalService")> 
186    <#assign userGroupRoleService = serviceLocator.findService("com.liferay.portal.service.UserGroupRoleLocalService")> 
187 
188    <#-- Macros --> 
189    <#macro fileFromDLUrlWithVersion DLfileUrl displayName> 
190        <#assign fileTitle = ""> 
191        <#assign fileExtension = ""> 
192        <#assign fileGroup = ""> 
193        <#assign fileFolder = ""> 
194        <#assign fileName = ""> 
195        <#assign file = ""> 
196 
197        <#assign fileGroup = getterUtil.getLong(DLfileUrl?replace('.*documents/(.*?)/.*', '$1', 'r') )> 
198        <#assign fileFolder = getterUtil.getLong(DLfileUrl?replace('.*documents/.*?/(.*?)/.*' ,'$1', 'r'))> 
199        <#assign fileName = DLfileUrl?replace(".*/documents/${fileGroup}/${fileFolder}/(.*?)/.*", '$1', 'r')> 
200 
201        <#assign indexOf = DLfileUrl?last_index_of("/") + 1> 
202        <#if indexOf gt 1> 
203            <#assign uuid = DLfileUrl?substring(indexOf)> 
204        </#if> 
205 
206        <#if uuid?has_content && uuid?length == 36> 
207            <#assign file = fileEntryService.getFileEntryByUuidAndGroupId(uuid, getterUtil.getLong(fileGroup))> 
208        <#else> 
209            <#assign file = fileEntryService.getFileEntry(fileGroup, fileFolder, fileName)> 
210        </#if> 
211 
212        <#assign fileTitle = file.title> 
213        <#assign fileExtension = file.extension> 
214        <#assign fileSize = file.size> 
215        <#assign fileVersions = file.getFileVersions(0)> 
216        <div class="file"> 
217            <a href="${DLfileUrl}" class="download <#if fileExtension?has_content>${fileExtension}</#if> 
218                                "><#if displayName?has_content>${displayName}<#else>${fileName}</#if></a> 
219            <a class="czytaj" tabindex="0" aria-expanded="false"> 
220                <i class="icon icon-info"></i>&nbsp;Dziennik&nbsp;zmian&nbsp;pliku 
221            </a> 
222            <div class="archiwum" aria-hidden="true" style="display: none;"> 
223                <#if true> 
224                    <ul><#list fileVersions as fileVersion> 
225                        <li> 
226                            <a href="${DLfileUrl}?version=${fileVersion.getVersion()}">Wersja: ${fileVersion.getVersion()}</a>, 
227                            Data publikacji: ${dateUtil.getDate(fileVersion.getModifiedDate(), "yyyy-MM-dd HH:mm", locale, timeZoneUtil.getDefault())} 
228                            ${fileVersion.getUserName()} 
229                            [#{fileVersion.getSize()/1000000; m2} MB] 
230                        </li> 
231                        </#list> 
232                    </ul> 
233                <#else> 
234                    Nieprawidłowa nazwa pliku 
235                </#if> 
236            </div> <#-- end of archiwum --> 
237        </div> 
238    </#macro> 
239 
240    <#function checkVer ver> 
241        <#if ver?string?contains(".")> 
242            <#return ver> 
243        <#else> 
244            <#return ver + ".0"> 
245        </#if> 
246    </#function> 
247 
248    <#assign errors = []> 
249    <#macro displayErrors> 
250        <#if permissionChecker.getUserId() gt 1000> 
251            <#assign sprRedaktorWitryny = userGroupRoleService.hasUserGroupRole(permissionChecker.getUserId(), groupId, "Redaktor witryny")> 
252        </#if> 
253        <#if sprRedaktorWitryny && errors?size gt 0> 
254            <div style="border: 1px solid #ddd; padding: 1rem; margin: 1rem 0rem 2rem 0rem; background: #ffef00"> 
255                <#list errors as error> 
256                    ${error} 
257                </#list> 
258            </div> 
259        </#if> 
260    </#macro> 
261 
262    <#-----------Predefined and request variables-----------> 
263    <#assign getterUtil = staticUtil["com.liferay.portal.kernel.util.GetterUtil"] /> 
264    <#assign longGroupId = getterUtil.getLong(groupId)> 
265    <#setting locale = locale.toString()> 
266 
267    <#-------------------Article variables------------------> 
268    <#assign articleId = .vars['reserved-article-id'].data> 
269    <#assign articleVersion = .vars['reserved-article-version'].data> 
270 
271    <#assign article = journalArticleService.getArticle(longGroupId, articleId)> 
272    <#assign artPrimKey = article.getResourcePrimKey()> 
273    <#assign model = 'com.liferay.portlet.journal.model.JournalArticle'> 
274    <#assign asset = assetEntryService.getEntry(model, artPrimKey)> 
275 
276    <#-- Checking version--> 
277    <#assign aktVer = articleVersion> 
278    <#assign currentCompleteUrl = ''> 
279	<#if request['attributes']??> 
280		 <#assign currentCompleteUrl = request['attributes']['CURRENT_COMPLETE_URL'] /> 
281	</#if> 
282	<#assign currentRenderUrl = ''> 
283	<#if request['render-url']??> 
284		 <#assign currentRenderUrl = request['render-url'] /> 
285	</#if> 
286 
287    <#assign przejdzDo = httpUtil.getParameter(currentCompleteUrl, 'przejdzDo', false)> 
288 
289    <#if przejdzDo?has_content> 
290        <#assign aktVer = przejdzDo> 
291    </#if> 
292     
293<article class="article"> 
294 
295    <#-- Displaying archival article--> 
296    <#if aktVer != articleVersion> 
297        <p class="archival"> 
298            <b>Niniejszy dokument jest wersją archiwalną.</b> 
299            <a class="archival-link" href='${currentRenderUrl}&groupId=${groupId}&articleId=${articleId}&przejdzDo=${articleVersion}'>Przejdź do najnowszej wersji - ${articleVersion}</a> 
300        </p> 
301 
302        <#assign aktualna = journalArticleService.getArticle(longGroupId, articleId, getterUtil.getDouble(aktVer)) > 
303        <#assign content = aktualna.getContent()> 
304        <#assign v = content?replace('<br>', '<br/>', 'r')> 
305        <#assign document = saxReaderUtil.read(content)> 
306        <#assign root = document.getRootElement()> 
307 
308        <#assign tytul = root.selectSingleNode("dynamic-element[@name='tytul']/dynamic-content").text> 
309        <#assign endDateOffer = root.selectSingleNode("dynamic-element[@name='endDate']/dynamic-content").text> 
310        <#assign opis = root.selectSingleNode("dynamic-element[@name='opis']/dynamic-content").text> 
311        <#assign stanowisko = root.selectSingleNode("dynamic-element[@name='stanowisko']/dynamic-content").text> 
312        <#assign jednostka = root.selectSingleNode("dynamic-element[@name='jednostka']/dynamic-content").text> 
313        <#assign displayNames = root.selectNodes("dynamic-element[@name='displayName']")> 
314        <#assign podmiotWydajacy = root.selectSingleNode("dynamic-element[@name='podmiotWydajacy']/dynamic-content").text> 
315        <#assign startDateOffer = root.selectSingleNode("dynamic-element[@name='startDate']/dynamic-content").text> 
316 
317		<#if tytul?has_content> 
318			<div class="page-sub-heading"> 
319				<h2 class="page-sub-heading__title">${tytul}</h2> 
320			</div> 
321		</#if> 
322		<div class="article__content"> 
323            <#if opis?has_content> 
324                <div class="blok"> 
325                    <#if opis?matches('w sprawie.*') > <span class="etykietaPola">W sprawie:</span> ${opis?replace('w sprawie(.*)','$1', 'r')} 
326                    <#else> <span style="color: #00519e;"></span> ${opis} 
327                    </#if> 
328                </div> 
329            </#if> 
330 
331            <#if stanowisko?has_content> 
332                <div class="blok"><span class="etykietaPola">Stanowisko:</span> ${stanowisko} </div> 
333            </#if> 
334 
335            <#if jednostka?has_content> 
336                <div class="blok"><span class="etykietaPola">Jednostka:</span> ${jednostka}	</div> 
337            </#if> 
338 
339            <#if endDateOffer?has_content> 
340                <#assign isendDateOfferCorrect = endDateOffer?matches("[0-9]{8}|[0-9]{12}")> 
341                <#if isendDateOfferCorrect> 
342                    <#assign patternEnd = dateUtil.getISOFormat(endDateOffer).toPattern()> 
343                    <div class="blok"><span class="etykietaPola">Termin składania dokumentów:</span> 
344                        <#assign endDateObject = dateUtil.getDate(endDateOffer?date(patternEnd), patternEnd, locale)> 
345                        <#assign dzien = dateUtil.getDate(endDateObject?date(patternEnd), "dd.MM.yyyy", locale)> 
346                        <#assign godz = dateUtil.getDate(endDateObject?date(patternEnd), "HH:mm", locale)> 
347                        ${dzien} <#if godz!="00:00">, godzina ${godz} </#if> 
348                    </div> 
349                <#else> 
350                    <#assign errors = errors + ["Nieprawidłowy format terminu składania dokumentów (${aktualna.getVersion()}):" + " <b> ${endDateOffer} </b> <br/>"]> 
351                </#if> 
352            </#if> 
353 
354            <#if podmiotWydajacy?has_content> 
355                <div class="blok"> 
356                    <span class="etykietaPola">Wytworzył:</span> ${podmiotWydajacy} 
357                </div> 
358            </#if> 
359 
360            <#if startDateOffer?has_content> 
361                <#assign isStartDateOfferCorrect = startDateOffer?matches("[0-9]{8}|[0-9]{12}")> 
362                <#if isStartDateOfferCorrect> 
363                    <#assign patternStart = dateUtil.getISOFormat(startDateOffer).toPattern()> 
364                    <div class="blok"><span class="etykietaPola">Data wytworzenia:</span> 
365                        <#assign startDateObject = dateUtil.getDate(startDateOffer?date(patternStart), patternStart, locale)> 
366                        <#assign dzienWytw = dateUtil.getDate(startDateObject?date(patternStart), "dd.MM.yyyy", locale)> 
367                        <#assign godzWytw = dateUtil.getDate(startDateObject?date(patternStart), "HH:mm", locale)> 
368                        ${dzienWytw} <#if godzWytw != "00:00">, godzina ${godzWytw} </#if> 
369                    </div> 
370                <#else> 
371                    <#assign errors = errors + ["Nieprawidłowy format terminu wytworzenia oferty (${aktualna.getVersion()}):" + " <b> ${startDateOffer} </b> <br/>"]> 
372                </#if> 
373            </#if> 
374 
375            <#if displayNames?has_content> 
376                <#list displayNames as i> 
377                    <#assign fileAddress = i.selectSingleNode("dynamic-element[@name='plik']/dynamic-content").text> 
378                    <#assign displayName = i.elements()?last.getText()> 
379                    <#if fileAddress?has_content> 
380                        <@fileFromDLUrlWithVersion DLfileUrl=fileAddress displayName=displayName/> 
381                    </#if> 
382                </#list> 
383            </#if> 
384        </div> 
385 
386        <#-- Comparing startDate and endDate --> 
387        <#if startDateObject?has_content && endDateObject?has_content> 
388            <#assign isEndBeforeStart = dateUtil.compareTo(startDateOffer?date(patternStart), endDateOffer?date(patternEnd))> 
389            <#if isEndBeforeStart == 1> 
390                <#assign errors = errors + ["Nieprawidłowa kolejność dat (${checkVer(aktualna.getVersion())}): <b>Data wytworzenia jest później od terminu składani ofert</b>"]> 
391            </#if> 
392        </#if> 
393 
394        <#-- Displaying errors from wrong structure configuration --> 
395        <@displayErrors /> 
396 
397        <#-- Displaying more specific article information--> 
398        <div class="stats" style="margin:4px 0 4px 0; padding: 10px 0 15px 0; font-size: 0.8em;"> 
399            <span style="color: #a8a8a8;">Data publikacji: ${aktualna.getCreateDate()?datetime}</span>  <br/> 
400 
401            <span style="color: #a8a8a8;">Osoba publikująca: ${.vars['reserved-article-author-name'].data}</span> 
402            <br/> 
403 
404            <#-- Ilość wyświetleń widoczna tylko dla administratorów z danej organizacji/społeczności oraz administratorów zwykłych i deweloperów zwykłych--> 
405            <#assign userRoleService = serviceLocator.findService("com.liferay.portal.service.RoleLocalService")> 
406 
407            <#assign rolaAdmin = userRoleService.getRole(getterUtil.getLong(companyId), "Administrator").getRoleId()> 
408            <#assign sprAdmina = userRoleService.hasUserRole(permissionChecker.getUserId(), rolaAdmin)> 
409            <#assign rolaDev = userRoleService.getRole(getterUtil.getLong(companyId), "Developer").getRoleId()> 
410            <#assign sprDev = userRoleService.hasUserRole(permissionChecker.getUserId(), rolaDev)> 
411 
412            <#assign listaRol = userRoleService.getUserGroupRoles(getterUtil.getLong(permissionChecker.getUserId()), getterUtil.getLong(groupId))> 
413            <#assign admini = false> 
414            <#list listaRol as x> 
415                <#if x.getName() == "Redaktor" || x.getName() == "Redaktor witryny" || x.getName() == "Koordynator witryny"> 
416                    <#assign admini = true> 
417                </#if> 
418            </#list> 
419 
420            <#if (admini == true) || (sprAdmina?has_content) || (sprDev?has_content)> 
421                <div style="margin:0px; padding: 0px;"> 
422                    <span style="color: #a8a8a8;">Ilość wyświetleń: ${asset.getViewCount()}</span> 
423                </div> 
424            </#if> 
425        </div> <#--  end of div.article__content -->	  
426    <#-- Displaying current article version--> 
427    <#else> 
428        <#assign tytul = tytul.getData()> 
429        <#assign endDateOffer = endDate.getData()> 
430        <#assign opis = opis.getData()> 
431        <#assign stanowisko = stanowisko.getData()> 
432        <#assign jednostka = jednostka.getData()> 
433        <#assign displayNames = displayName.getData()> 
434        <#assign podmiotWydajacy = podmiotWydajacy.getData()> 
435        <#assign startDateOffer = startDate.getData()> 
436 
437		<#if tytul?has_content> 
438			<div class="page-sub-heading"> 
439				<h2 class="page-sub-heading__title">${tytul}</h2> 
440			</div> 
441		</#if> 
442		<div class="article__content"> 
443 
444            <#if opis?has_content> 
445                <div style="margin-bottom:4px;"> 
446                    ${opis} 
447                </div> 
448            </#if> 
449 
450            <#if stanowisko?has_content> 
451                <div class="blok"><span class="etykietaPola">Stanowisko:</span> ${stanowisko} </div> 
452            </#if> 
453 
454            <#if jednostka?has_content> 
455                <div class="blok"><span class="etykietaPola">Jednostka:</span> ${jednostka} </div> 
456            </#if> 
457 
458            <#if endDateOffer?has_content> 
459                <#assign isEndDateOfferCorrect = endDateOffer?matches("[0-9]{8}|[0-9]{12}")> 
460                <#if isEndDateOfferCorrect> 
461                    <#assign patternEnd = dateUtil.getISOFormat(endDateOffer).toPattern()> 
462                    <div class="blok"><span class="etykietaPola">Termin składania dokumentów:</span> 
463                        <#assign endDateObject = dateUtil.getDate(endDateOffer?date(patternEnd), patternEnd, locale)> 
464                        <#assign dzien = dateUtil.getDate(endDateObject?date(patternEnd), "dd.MM.yyyy", locale)> 
465                        <#assign godz = dateUtil.getDate(endDateObject?date(patternEnd), "HH:mm", locale)> 
466                        ${dzien} <#if godz!="00:00">, godzina ${godz} </#if> 
467                    </div> 
468                <#else> 
469                    <#assign errors = errors + ["Nieprawidłowy format terminu składania dokumentów (${.vars['reserved-article-version'].data}):" + " <b> ${endDateOffer} </b> <br/>"]> 
470                </#if> 
471            </#if> 
472 
473            <#if podmiotWydajacy?has_content> 
474                <div class="blok"> 
475                    <span class="etykietaPola">Wytworzył:</span> ${podmiotWydajacy} 
476                </div> 
477            </#if> 
478 
479            <#if startDateOffer?has_content> 
480                <#assign isStartDateOfferCorrect = startDateOffer?matches("[0-9]{8}|[0-9]{12}")> 
481                <#if isStartDateOfferCorrect> 
482                    <#assign patternStart = dateUtil.getISOFormat(startDateOffer).toPattern()> 
483                    <div class="blok"><span class="etykietaPola">Data wytworzenia:</span> 
484                        <#assign startDateObject = dateUtil.getDate(startDateOffer?date(patternStart), patternStart, locale)> 
485                        <#assign dzienWytw = dateUtil.getDate(startDateObject?date(patternStart), "dd.MM.yyyy", locale)> 
486                        <#assign godzWytw = dateUtil.getDate(startDateObject?date(patternStart), "HH:mm", locale)> 
487                        ${dzienWytw} <#if godzWytw != "00:00">, godzina ${godzWytw} </#if> 
488                    </div> 
489                <#else> 
490                    <#assign errors = errors + ["Nieprawidłowy format terminu wytworzenia oferty (${.vars['reserved-article-version'].data}):" + " <b> ${startDateOffer} </b> <br/>"]> 
491                </#if> 
492            </#if> 
493 
494            <#if displayNames?has_content> 
495                <#list displayName.getSiblings() as i> 
496                    <#assign displayName = i.data> 
497                    <#assign dLfileUrlData = i.getChild('plik').data> 
498                    <#if dLfileUrlData?has_content> 
499                        <@fileFromDLUrlWithVersion DLfileUrl = dLfileUrlData displayName=displayName/> 
500                    </#if> 
501                </#list> 
502            </#if> 
503 
504            <#-- Comparing startDate and endDate --> 
505            <#if startDateObject?has_content && endDateObject?has_content> 
506                <#assign isEndBeforeStart = dateUtil.compareTo(startDateOffer?date(patternStart), endDateOffer?date(patternEnd))> 
507                <#if isEndBeforeStart == 1> 
508                    <#assign errors = errors + ["Nieprawidłowa kolejność dat (${checkVer(.vars['reserved-article-version'].data)}): <b>Data wytworzenia jest później od terminu składani ofert</b>"]> 
509                </#if> 
510            </#if> 
511 
512            <#-- Displaying errors from wrong structure configuration --> 
513            <@displayErrors /> 
514 
515            <#-- Displaying more specific article information--> 
516            <div style="margin:4px 0 4px 0; padding: 10px 0 15px 0; font-size: 0.8em;"> 
517 
518                <#assign articleOldest = journalArticleService.getArticle(longGroupId, articleId)> 
519 
520                <span style="color: #a8a8a8;">Data publikacji: ${dateUtil.getDate(articleOldest.getCreateDate(), "dd.MM.yyyy", locale)}</span>  <br/> 
521 
522                <span style="color: #a8a8a8;">Osoba publikująca: ${.vars['reserved-article-author-name'].data}</span> 
523                <br/> 
524 
525                <#if article.getVersion()?number != 1.0> 
526                    <span style="color: #a8a8a8;">Data ostatniej modyfikacji: ${dateUtil.getDate(article.getModifiedDate(), "dd.MM.yyyy", locale)}</span>  <br/> 
527                </#if> 
528 
529                <#-- Ilość wyświetleń widoczna tylko dla administratorów z danej organizacji/społeczności oraz administratorów zwykłych i deweloperów zwykłych--> 
530 
531                <#assign userRoleService = serviceLocator.findService("com.liferay.portal.service.RoleLocalService")> 
532 
533                <#assign rolaAdmin = userRoleService.getRole(getterUtil.getLong(companyId),"Administrator").getRoleId()> 
534                <#assign sprAdmina = userRoleService.hasUserRole(permissionChecker.getUserId(),rolaAdmin)> 
535                <#assign rolaDev = userRoleService.getRole(getterUtil.getLong(companyId),"Developer").getRoleId()> 
536                <#assign sprDev = userRoleService.hasUserRole(permissionChecker.getUserId(),rolaDev)> 
537 
538                <#assign listaRol = userRoleService.getUserGroupRoles(getterUtil.getLong(permissionChecker.getUserId()), getterUtil.getLong(groupId))> 
539                <#assign admini = false> 
540                <#list listaRol as x> 
541                    <#if x.getName() == "Redaktor" || x.getName() == "Redaktor witryny" || x.getName() == "Koordynator witryny"> 
542                        <#assign admini = true> 
543                    </#if> 
544                </#list> 
545 
546 
547                <#if (admini == true) || (sprAdmina) || (sprDev)> 
548                    <div style="margin:0px; padding: 0px;"> 
549                        <span style="color: #a8a8a8;">Ilość wyświetleń: ${asset.getViewCount()}</span> 
550                    </div> 
551                </#if> 
552 
553            </div> 
554        </div> <#--  end of div.article__content -->	  
555    </#if> 
556	</article> 
557 
558 
559    <#-- Displaying article history--> 
560    <#assign articleVersions = journalArticleService.getArticles(longGroupId, articleId)> 
561 
562    <a id="czytaj" tabindex="0" aria-expanded="false"> <i class="icon icon-info"></i> Dziennik zmian dokumentu</a> 
563 
564    <div id="archiwum" aria-hidden="true" style="display: none;"> 
565 
566        <#list articleVersions as articleVersion> 
567         
568            <#assign version = articleVersion.getVersion()> 
569            <#assign dataMod = dateUtil.getDate(articleVersion.getModifiedDate(), "dd.MM.yyyy HH:mm", locale, timeZoneUtil.getDefault())> 
570            <#assign userMod = articleVersion.getUserName()> 
571            <#assign status = articleVersion.getStatus()> 
572            <#if status==0> 
573	            <p> 
574	                <#if aktVer?number != version?number> 
575	                    Pokaż <a class="archival-link" href="${currentRenderUrl}&groupId=${groupId}&articleId=${articleId}&przejdzDo=${checkVer(version)}">wersję ${checkVer(version)}</a> 
576	                <#else> 
577	                    Przeglądasz <b>wersję ${checkVer(version)}</b> 
578	                </#if> 
579	                <span class="description"><#if version?number == 1.0>Data opublikowania:<#else> Data aktualizacji:</#if></span> 
580	                ${dataMod} 
581	                <span class="description"><#if version?number == 1.0>Dokument opublikowany przez:<#else> Zaktualizował:</#if></span> 
582	                ${userMod} 
583	            </p> 
584	        </#if> 
585        </#list> 
586    </div> 
587 
588    <script type="text/javascript"> 
589        jQuery(document).ready( 
590            function () 
591
592                var pokaz = true; 
593                jQuery("${plid} #archiwum").hide(); 
594 
595                jQuery("${plid} .czytaj").each(function(e){ 
596 
597                    var e = true; 
598 
599                    jQuery(this).click(function() { 
600                        jQuery(this).next(".archiwum").slideToggle("fast"); 
601 
602                        if (e==true) 
603
604                            jQuery(this).html('<i class="icon icon-info"></i> Ukryj dziennik&nbsp;zmian&nbsp;pliku'); 
605                            jQuery(this).addClass("open"); 
606                            e=false; 
607
608                        else { 
609                            e=true; 
610                            jQuery(this).removeClass("open"); 
611                            jQuery(this).html('<i class="icon icon-info"></i> Dziennik&nbsp;zmian&nbsp;pliku'); 
612
613 
614                    }); 
615                }); 
616 
617                jQuery("${plid} #czytaj").click(function () { 
618                    jQuery("${plid} #archiwum").slideToggle("fast"); 
619                    if (pokaz==true) 
620
621                        jQuery(this).html('<i class="icon icon-info"></i> Ukryj dziennik&nbsp;zmian&nbsp;dokumentu'); 
622                        jQuery(this).addClass("open"); 
623                        pokaz=false; 
624
625                    else { 
626                        pokaz=true; 
627                        jQuery(this).removeClass("open"); 
628                        jQuery(this).html('<i class="icon icon-info"></i> Dziennik&nbsp;zmian&nbsp;dokumentu'); 
629
630                }); 
631
632        ); 
633    </script>