Führungen und Berichte 2018 - Naturschutzzentrum Schopflocher Alb
Fehler bei der Verarbeitung der Vorlage.
Java method "com.sun.proxy.$Proxy133.getFileEntryByUuidAndGroupId(String, long)" threw an exception when invoked on com.sun.proxy.$Proxy133 object "com.liferay.portlet.documentlibrary.service.impl.DLAppServiceImpl@3602e345"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign Datei = DLAppServiceUtil.getF... [in template "20116#20152#33580" at line 154, column 21] ----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
2<#assign groupService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") />
3<#assign umTemplateService = serviceLocator.findService("de.xdot.um.template.UmTemplateService") />
4
5<#assign groupObj = groupService.getGroup(groupId) />
6<#assign groupName = groupObj.getDescriptiveName(locale) />
7
8<#assign layoutSet = groupObj.getPublicLayoutSet() />
9<#assign hostname = layoutSet.getVirtualHostname()/>
10
11<div class="print-header">
12${groupName} - https://${hostname}
13</div>
14
15
16<div class="artikel">
17
18<#if Spitzmarke.getData()!="">
19 <h2 class="spitzmarke">${Spitzmarke.getData()}</h2>
20</#if>
21
22
23 <div class="green-line"></div>
24
25
26 <h1 class="h1--large">${Ueberschrift.getData()}</h1>
27
28<#if BildMitBildunterschrift??>
29
30 <#if BildMitBildunterschrift.getSiblings()?has_content>
31
32 <#if (BildMitBildunterschrift.getSiblings()?size>1)>
33 <@imageTextSlider/>
34 <#else>
35
36 <#list BildMitBildunterschrift.getSiblings() as cur_Bild>
37 <#if cur_Bild.Bild.getData()?has_content>
38 <div class="teaser-image no-carousel">
39 <@createImageTag imageUrl="${cur_Bild.Bild.getData()}" bildunterschrift="${cur_Bild.Bildunterschrift.getData()}"/>
40 </div>
41 </#if>
42 </#list>
43
44 </#if>
45
46 </#if>
47</#if>
48
49
50 <div class="teaser-content">
51 <#assign content = umTemplateService.addCopyright(Inhalt.data, locale) />
52 <#assign content = umTemplateService.removeUuidFromDownloadUrls(content, locale) />
53 <#assign content = umTemplateService.updateEMailAddresses(content) />
54
55 ${content}
56
57 <#assign layoutService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
58
59 <#if (WeitereInformationen.getSiblings()?has_content) &&
60 (WeitereInformationen.getSiblings()?size>0) &&
61 ((WeitereInformationen.getSiblings()[0].Linktext.getData()?has_content) ||
62 (WeitereInformationen.getSiblings()[0].InternerLink.getFriendlyUrl()?has_content)) ||
63 ( (WeitereInformationen.getSiblings()[0].article?? && WeitereInformationen.getSiblings()[0].article.data?has_content) )>
64
65 <h2 class="h2">Weitere Informationen</h2>
66
67 <#assign weitereInformationenListe=WeitereInformationen.getSiblings()/>
68
69 <#list weitereInformationenListe as cur_WeitereInformationen>
70
71 <#assign tlink=""/>
72
73 <#-- if internal link, use page name as default link text -->
74 <#if (cur_WeitereInformationen.InternerLink??) &&
75 (cur_WeitereInformationen.InternerLink.getFriendlyUrl()?has_content)>
76
77 <#assign tlink = cur_WeitereInformationen.InternerLink.getFriendlyUrl()>
78
79 <#-- always use relative URL -->
80 <#if tlink?starts_with("http")>
81 <#assign tlink = "/"+tlink?split("/")[3]>
82 </#if>
83
84 <#-- page might have been deleted -->
85 <#assign tlink_text="">
86
87
88 <#if (layoutService.fetchLayoutByFriendlyURL( getterUtil.getLong(groupId), getterUtil.getBoolean(false), tlink)??)>
89
90 <#assign layout = layoutService.fetchLayoutByFriendlyURL( getterUtil.getLong(groupId), getterUtil.getBoolean(false), tlink) />
91
92 <#assign tlink_text = layout.getName(locale)/>
93
94 </#if>
95
96 </#if>
97
98
99 <#assign linktarget="">
100
101 <#if ! tlink?has_content>
102 <#assign tlink = cur_WeitereInformationen.ExternerLink.getData()>
103 <#assign linktarget="_blank">
104 </#if>
105
106 <#if ! tlink?has_content>
107 <#if (cur_WeitereInformationen.article?? && cur_WeitereInformationen.article.data?has_content)>
108 <#assign
109 entryInfo = cur_WeitereInformationen.article.data?eval
110 entryClassPK = getterUtil.getLong(entryInfo.classPK)
111 article = journalArticleLocalService.fetchLatestArticle(entryClassPK)
112 tlink = "/-/" + article.urlTitle
113 linktarget = ""
114 tlink_text = article.getTitle(locale)
115 />
116 </#if>
117 </#if>
118
119 <#-- overwrite linktext, if editor has set it manually -->
120 <#if (cur_WeitereInformationen.Linktext.getData()?has_content)>
121 <#assign tlink_text = cur_WeitereInformationen.Linktext.getData()>
122 </#if>
123
124 <div class="weiterer-link">
125
126 <a class="mehr-link" href="${tlink}" target="${linktarget}" alt="${tlink_text}"
127 title="${tlink_text}">${tlink_text}</a>
128
129 </div>
130
131
132 </#list>
133
134
135 </#if>
136
137 <#if ZumHerunterladen??>
138
139 <#if (ZumHerunterladen.PdfDatei.getSiblings()?has_content) &&
140 (ZumHerunterladen.PdfDatei.getSiblings()?size>0) &&
141 (ZumHerunterladen.PdfDatei.getSiblings()[0].getData()?has_content)>
142
143
144
145 <h2>Zum Herunterladen</h2>
146
147 <#list ZumHerunterladen.PdfDatei.getSiblings() as cur_Datei>
148 <#if cur_Datei.getData()?has_content>
149
150 <#assign fileUrl = getterUtil.getString(cur_Datei.getData())>
151 <#assign fileUid = stringUtil.extractLast(fileUrl, "/")>
152
153 <#assign DLAppServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
154 <#assign Datei = DLAppServiceUtil.getFileEntryByUuidAndGroupId(fileUid,groupId)>
155
156 <#assign downloadURL = fileUrl?substring(0, fileUrl?last_index_of("/")) />
157 <#assign downloadURL = downloadURL?substring(0, downloadURL?last_index_of("/")) />
158 <#assign downloadURL = downloadURL + "/" + htmlUtil.escapeURL(Datei.getTitle()) />
159
160 <#if (Datei.getDescription()?has_content)>
161 <#assign dateiText=Datei.getDescription()>
162 <#else>
163 <#assign dateiText=Datei.getTitle()>
164 </#if>
165
166 <#-- Add the filesize to linktext -->
167 <#if Datei??>
168 <#assign fileSize = ((Datei.getSize()/1024)?round)/>
169 <#assign unit="KB"/>
170
171 <#if (fileSize > 1000) >
172 <#setting locale="de_DE">
173 <#assign fileSize = (fileSize / 1024)?string["0.#"]/>
174 <#assign unit="MB"/>
175 </#if>
176
177 <#assign dateiGroesse="["+fileSize+" "+unit+ getAccessibilityInformation(fileUid,groupId) + "]"/>
178 <#assign dateiText+= " " + dateiGroesse>
179 </#if>
180
181 <div class="weiterer-link">
182 <a href="${downloadURL}" target="_blank" alt="${dateiText}"
183 title="${dateiText}">${dateiText}</a><br/>
184 </div>
185
186 </#if>
187 </#list>
188 </#if>
189
190 </#if>
191
192
193 </div>
194
195</div>
196
197
198
199
200<#-- image text slider -->
201
202
203
204
205<#macro imageTextSlider>
206
207
208<section class="carousel-container slider-articlepage">
209 <div class="carousel slide carousel-fade" data-ride="carousel" id="carousel">
210 <div class="indicators-wrapper">
211 <button class="ctrlTogglePlay playing"> </button>
212 <ol class="carousel-indicators">
213 <#list BildMitBildunterschrift.getSiblings() as cur_images>
214 <li class="${(cur_images?counter == 1)?then('active', '')}"
215 data-slide-to="${(cur_images?counter == 1)?then(0, (cur_images?counter - 1))}"
216 data-target='#carousel'></li>
217 </#list>
218 </ol>
219 </div>
220 <a class="left carousel-control" href='#carousel' role="button" data-slide="prev">
221 <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
222 <span class="sr-only">Previous</span>
223 </a>
224
225
226 <a class="right carousel-control" href='#carousel' role="button" data-slide="next">
227 <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
228 <span class="sr-only">Next</span>
229 </a>
230
231
232 <div class="carousel-inner" role="listbox">
233 <#list BildMitBildunterschrift.getSiblings() as cur_images>
234 <div class="${(cur_images?counter == 1)?then('active', '')} item" role="option">
235 <div class="teaser-image">
236 <@createImageTag imageUrl="${cur_images.Bild.getData()}" bildunterschrift="${cur_images.Bildunterschrift.getData()}"/>
237 </div>
238 </div>
239 </#list>
240 </div>
241 </div>
242</section>
243
244
245</#macro>
246
247<script>
248 $(document).ready(function () {
249
250 $('.ctrlTogglePlay').on('click', function () {
251
252 if($(this).hasClass('playing')) {
253 $('.carousel').carousel('pause');
254 // console.log('stop');
255 }else {
256 $('.carousel').carousel('cycle');
257 // console.log('play');
258 }
259
260 $(this).toggleClass('playing')
261
262 });
263
264 $('.carousel').carousel({
265 interval: 5000,
266 pause: "false"
267 });
268 });
269</script>
270
271
272
273
274<#macro createImageTag imageUrl bildunterschrift>
275
276 <#assign altTag="alt-tag">
277 <#assign bildnachweis="">
278
279 <#assign imageFileUid = stringUtil.extractLast(imageUrl, "/")>
280
281 <#if (stringUtil.extractFirst(imageFileUid, "t")??)>
282 <#assign imageFileUid = stringUtil.extractFirst(imageFileUid, "t")/>
283 <#assign imageFileUid= imageFileUid?substring(0,imageFileUid?length-1)/>
284 </#if>
285
286
287 <#assign dlimageFileEntryService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>
288 <#assign dlimageFileEntryTypeService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryTypeLocalService")>
289 <#assign dlFileVersionService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileVersionLocalService")>
290 <#assign DLAppServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
291 <#assign Datei = DLAppServiceUtil.getFileEntryByUuidAndGroupId(imageFileUid,groupId)>
292 <#assign imageFileEntry = dlimageFileEntryService.getFileEntryByUuidAndGroupId(Datei.getUuid() , Datei.getGroupId() ) />
293
294 <#assign imageFileEntryTypeId = imageFileEntry.getFileEntryTypeId() />
295
296 <#if imageFileEntryTypeId gt 0 >
297 <#assign imageFileEntryType = dlimageFileEntryTypeService.getDLFileEntryType(imageFileEntryTypeId) />
298 <#assign dlFileVersion = dlFileVersionService.getLatestFileVersion(imageFileEntry.getUserId(), imageFileEntry.getFileEntryId()) />
299 <#assign fieldsMap = imageFileEntry.getDDMFormValuesMap(dlFileVersion.getFileVersionId()) />
300
301 <#list fieldsMap?keys as ddmFormKey>
302
303 <#assign ddmForm = fieldsMap[ddmFormKey]/>
304
305 <#list ddmForm.getDDMFormFieldValues() as formField>
306 <#--name= ${formField.getName()} value= ${formField.getValue().getString(locale)}<br/>-->
307
308 <#if formField.getName() == 'AltTag'>
309 <#assign altTag = formField.getValue().getString(locale) />
310 </#if>
311
312 <#if formField.getName() == 'Bildnachweis'>
313 <#assign bildnachweis = formField.getValue().getString(locale) />
314 </#if>
315
316 </#list>
317
318 </#list>
319
320 </#if>
321
322<#--<div class="teaser-image-wrapper">-->
323<#if viewMode == "view">
324 <img src="${imageUrl}" alt="${altTag}" title="${altTag}"/>
325<#elseif viewMode == "export">
326 <@createExportImageTag imageUrl=imageUrl altTag=altTag hostname=hostname />
327</#if>
328<#--<a href="#" class="btn btn-default btn-prev mycarousel-prev"><span class="icon icon-chevron-left"></span></a>-->
329<#--<a href="#" class="btn btn-default btn-next mycarousel-next"><span class="icon icon-chevron-right"></span></a>-->
330<#--</div>-->
331
332<div class="bildunterschrift">${bildunterschrift}</div>
333<div class="bildnachweis">Quelle: ${bildnachweis}</div>
334
335</#macro>
336
337<#macro createExportImageTag imageUrl altTag hostname>
338 <#assign
339 imageFileUid = stringUtil.extractLast(imageUrl, "/")
340 />
341 <#if (stringUtil.extractFirst(imageFileUid, "t")??)>
342 <#assign imageFileUid = stringUtil.extractFirst(imageFileUid, "t")/>
343 <#assign imageFileUid= imageFileUid?substring(0,imageFileUid?length-1)/>
344 </#if>
345 <#assign
346 dlAppService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")
347 fileEntry = dlAppService.getFileEntryByUuidAndGroupId(imageFileUid,groupId)
348 inputStream = fileEntry.getContentStream()
349 imageModel = imageToolUtil.getImage(inputStream)
350 />
351 <#assign
352 width = imageModel.getWidth()
353 height = imageModel.getHeight()
354 aspectRatio = width / height
355 />
356 <#if width gt 650>
357 <#assign
358 height = 650 / aspectRatio
359 width = 650
360 />
361 </#if>
362 <img src="${imageUrl}" alt="${altTag}" title="${altTag}" width="${width}" height="${height}"/>
363</#macro>
364
365<#function getAccessibilityInformation fileUid,groupId>
366 <#assign DLAppServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService")>
367 <#assign dlFileEntryLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryLocalService")>
368 <#assign dlFileEntryTypeLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileEntryTypeLocalService")>
369 <#assign dlFileVersionLocalService = serviceLocator.findService("com.liferay.document.library.kernel.service.DLFileVersionLocalService")>
370
371 <#assign Datei = dlFileEntryLocalService.getFileEntryByUuidAndGroupId(fileUid,groupId) />
372
373 <#assign fileEntryTypeId = Datei.getFileEntryTypeId() />
374
375 <#if fileEntryTypeId gt 0 >
376 <#assign imageFileEntryType = dlFileEntryTypeLocalService.getDLFileEntryType(fileEntryTypeId) />
377 <#assign dlFileVersion = dlFileVersionLocalService.getLatestFileVersion(Datei.getUserId(), Datei.getFileEntryId()) />
378 <#assign fieldsMap = Datei.getDDMFormValuesMap(dlFileVersion.getFileVersionId()) />
379
380 <#list fieldsMap?keys as ddmFormKey>
381 <#assign ddmForm = fieldsMap[ddmFormKey]/>
382
383 <#list ddmForm.getDDMFormFieldValues() as formField>
384 <#if formField.getName() == 'notAccessible'>
385 <#assign notAccessbile = formField.getValue().getString(locale) />
386 <#if getterUtil.getBoolean(notAccessbile)>
387 <#return "; nicht barrierefrei" />
388 </#if>
389 </#if>
390
391 </#list>
392
393 </#list>
394 </#if>
395
396 <#return "" />
397</#function>