Viaggio sul confine 'difficile', le foto - Toscana Notizie
Si è verificato un errore nell'elaborarazione del modello.
Java method "static com.liferay.document.library.kernel.service.DLFolderLocalServiceUtil.getFolder(long, long, String)" threw an exception; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign imageFolderId = DLFolderLocal... [in template "10154#10192#12216572" at line 237, column 37] ----
1<#setting locale="it_IT">
2
3<#assign hasCookie >
4 <@rt.checkCookieAcceptance siteId=themeDisplay.getScopeGroupId() cookieToCheck="third-party" />
5</#assign>
6
7<#assign AssetEntryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil"] />
8<#assign assetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") />
9
10<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
11<#assign journalArticleId = .vars['reserved-article-id'].data/>
12
13<#assign article = JournalArticleLocalService.getArticle(groupId, journalArticleId) />
14<#assign entry = AssetEntryLocalServiceUtil.fetchEntry("com.liferay.journal.model.JournalArticle", article.resourcePrimKey) />
15
16<#assign AssetCategoryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetCategoryLocalServiceUtil"]>
17<#assign categoryList = AssetCategoryLocalServiceUtil.getAssetEntryAssetCategories(entry.entryId) />
18<#assign UserLocalServiceUtil = staticUtil["com.liferay.portal.kernel.service.UserLocalServiceUtil"]>
19<#assign DLFileEntryLocalServiceUtil = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryLocalService') />
20<#assign GroupLocalServiceUtil = staticUtil["com.liferay.portal.kernel.service.GroupLocalServiceUtil"]>
21<#assign DLFolderLocalServiceUtil = staticUtil["com.liferay.document.library.kernel.service.DLFolderLocalServiceUtil"]>
22<#assign DLAppLocalServiceUtil = staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"]>
23
24<#assign currentArticle = JournalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) />
25<#assign currentArticleResourcePrimKey = currentArticle.getResourcePrimKey() />
26<#assign currentArticleAssetEntry = AssetEntryLocalServiceUtil.getEntry("com.liferay.journal.model.JournalArticle", currentArticleResourcePrimKey) />
27<#assign currentArticleAssetEntryId = currentArticleAssetEntry.getEntryId() />
28
29<#assign siteBaseURL = themeDisplay.getPortalURL() + themeDisplay.getPathFriendlyURLPublic() + themeDisplay.getLayout().getGroup().getFriendlyURL() />
30<#assign imagePath = themeDisplay.getTheme().getContextPath() + themeDisplay.getTheme().getImagesPath() />
31<#assign jsPath = themeDisplay.getTheme().getContextPath() + themeDisplay.getTheme().getJavaScriptPath() + "/" />
32
33<#assign Autori = [] />
34<#assign temi = [] />
35<#assign Provincia = [] />
36
37<#assign currentCategory = 0 />
38
39<#list categoryList as category>
40 <#assign AssetVocabularyServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetVocabularyServiceUtil"]>
41 <#assign assetVocabulary = AssetVocabularyServiceUtil.getVocabulary(category.getVocabularyId()) />
42 <#if assetVocabulary.getName() == "Temi">
43
44 <#if category.getParentCategory()??>
45 <#assign childCategory = category.getName()/>
46 <#else>
47 <#if (currentCategory?? && currentCategory != category.getCategoryId()) >
48 <#assign currentCategory = category.getCategoryId() />
49 <#assign parentCategory = category.getName()/>
50 <#assign temi = temi + [parentCategory] />
51 </#if>
52 </#if>
53
54 <#elseif assetVocabulary.getName() == "5. Autori">
55 <#assign Autori = Autori + [category.getName()] />
56 <#elseif assetVocabulary.getName() == "Provincia">
57 <#assign Provincia = Provincia + [category.getName()] />
58 </#if>
59</#list>
60
61<#list categoryList as category>
62 <#if category.getParentCategory()??>
63 <#assign childCategory = category.getName()/>
64 <#else>
65 <#assign parentCategory = category.getName()/>
66 </#if>
67</#list>
68
69<link rel="stylesheet" href="${jsPath}lightbox2/dist/css/lightbox.min.css">
70<link rel="stylesheet" type="text/css" href="${jsPath}slick/slick.css"/>
71<link rel="stylesheet" type="text/css" href="${jsPath}slick/slick-theme.css"/>
72
73<style>
74.header-title{
75 display:none;
76}
77.header-back-to{
78 display:none;
79}
80
81.hide-content{
82 visibility:hidden;
83 height : 0;
84 padding: 0px !important;
85 overflow: hidden;
86}
87
88.content_para{
89 float:none !important;
90}
91
92.hide-content img{
93 display:none;
94}
95</style>
96
97<#assign classColumnLeft = "12" />
98
99<#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) />
100
101<#if (currentArticleRelatedLinks?? && currentArticleRelatedLinks?has_content) >
102 <#assign classColumnLeft = "8" />
103</#if>
104
105<section class="container rt-container" id="content">
106 <div class="row">
107 <!-- 1 -->
108 <div class="col-md-12 portlet-column portlet-column-only" id="column-1">
109 <!-- Subheader news -->
110 <section class="rt-subheader rt-subheader--news">
111 <div class="rt-subheader__top">
112 <div class="rt-subheader__category-wrapper">
113 <#list temi as category>
114 <div class="rt-subheader__category">
115 ${category}
116 </div>
117 </#list>
118 </div>
119
120 <div class="rt-subheader__publication">
121 <#assign nomeAutore = "" />
122 <#if Autori?? && (Autori?size > 0)>
123 <#if Autori[0]?? && Autori[0] != "" && Autori[0] != "redazione">
124 <#assign userAutore = UserLocalServiceUtil.getUserByScreenName(themeDisplay.getCompanyId(), Autori[0]) />
125 <#if userAutore?? && userAutore?has_content>
126 <#assign nomeAutore = userAutore.getFullName() />
127 </#if>
128 <#else>
129 <#assign nomeAutore = "Redazione" />
130 </#if>
131 </#if>
132 <#if nomeAutore?? && nomeAutore != "">
133 <div class="rt-subheader__author">
134 <a title="Vai alla pagina dell'autore ${nomeAutore?html}" aria-label="Vai alla pagina dell'autore ${nomeAutore?html}" href="/autori/${nomeAutore?html}">
135 di ${nomeAutore?html}
136 </a>
137 </div>
138 </#if>
139 <#list Provincia as location>
140 <div class="rt-news-location">
141 <i aria-hidden="true" class="fas fa-map-marker-alt"></i> ${location}
142 </div>
143 </#list>
144
145 <#assign publishDate = .vars['reserved-article-display-date'].data />
146 <#assign publishDate = publishDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
147 <#assign dateFormatDayMonth = "dd MMMM">
148 <#assign dateFormatHours = "HH:mm">
149 <div class="rt-subheader__date">${publishDate?string(dateFormatDayMonth)?remove_beginning("0")}</div>
150 <div class="rt-subheader__time">${publishDate?string(dateFormatHours)?remove_beginning("0")}</div>
151 </div>
152 </div>
153
154 <div class="rt-subheader__wrapper">
155 <div class="rt-subheader__title-wrapper">
156 <h1 class="rt-subheader__title">
157 ${.vars['reserved-article-title'].data}
158 </h1>
159 <#assign subtitle = .vars['reserved-article-description'].data />
160 <#if subtitle?? && subtitle != "">
161 <div class="rt-subheader__subtitle">
162 ${subtitle}
163 </div>
164 </#if>
165 </div>
166 </div>
167
168 </section>
169 </div>
170 </div>
171 <div class="row has-sidebar">
172
173 <div class="col-md-12 col-lg-${classColumnLeft} portlet-column portlet-column-first">
174
175 <#if (Testo?? && Testo.getData() != "") || (testo?? && testo.getData() != "") >
176 <div class="rt-page__content rt-page-content--left">
177 <div class="rt-page__content-text">
178 <#if Immagine?? && Immagine.getData()?? && Immagine.getData() != "">
179 <figure>
180 <#if (Immagine.getAttribute("alt")?? || Immagine.getAttribute("fileEntryId")??)>
181 <img alt="${Immagine.getAttribute("alt")}"
182 data-fileentryid="${Immagine.getAttribute("fileEntryId")}"
183 src="${Immagine.getData()}" />
184 <#else>
185 <img alt="${.vars['reserved-article-title'].data}"
186 src="${Immagine.getData()}" />
187 </#if>
188 <#if Descrizione?? && Descrizione.getData() != "">
189 <figcaption>
190 ${Descrizione.getData()}
191 </figcaption>
192 </#if>
193 </figure>
194 </#if>
195 <p>
196 <#if Testo??>
197 <@rt.pruneExternalContent html=Testo.getData() acceptedCookie=hasCookie?trim?boolean />
198 </#if>
199 <#if testo??>
200 <@rt.pruneExternalContent html=testo.getData() acceptedCookie=hasCookie?trim?boolean />
201 </#if>
202 </p>
203 </div>
204 </div>
205 </#if>
206
207 <#assign docXml = saxReaderUtil.read(currentArticle.getContent()) />
208 <#assign FolderPath = docXml.valueOf("//dynamic-element[@name='folder_path']/dynamic-content/text()") />
209
210 <#if FolderPath?? && FolderPath != "">
211
212 <#assign fileUrl = "" />
213 <#assign altImg = "" />
214
215 <#assign FolderPath = FolderPath?replace("%20", " ") />
216 <#assign isDocRoot = "false" />
217 <#assign imageGroupId = -1 />
218 <#assign imageFolderId = -1 />
219
220 <#assign folderPaths = FolderPath?split("/") />
221 <#list folderPaths as xPath>
222
223 <#if xPath != "/" && xPath != "">
224 <#if isDocRoot == "false">
225 <#if xPath == "documents">
226 <#assign isDocRoot = "true" />
227 </#if>
228 <#else>
229 <#if imageGroupId == -1>
230 <#assign tempXpath = "/" + xPath />
231 <#assign targetGroup = GroupLocalServiceUtil.fetchFriendlyURLGroup(themeDisplay.getCompanyId(), tempXpath) />
232 <#if targetGroup?? >
233 <#assign imageGroupId = targetGroup.getGroupId() />
234 <#assign imageFolderId = 0 />
235 </#if>
236 <#else>
237 <#assign imageFolderId = DLFolderLocalServiceUtil.getFolder(imageGroupId , imageFolderId, xPath).getFolderId() />
238 </#if>
239
240 </#if>
241 </#if>
242 </#list>
243
244 <#if (imageGroupId != -1 && imageFolderId != -1)>
245 <#assign fileEntriesFolder = DLFileEntryLocalServiceUtil.getFileEntries(imageGroupId,imageFolderId) />
246 <#if fileEntriesFolder?? && (fileEntriesFolder?size > 0 ) >
247
248 <#assign nowTimeStamp = .now?long />
249 <div class="rt-page__content">
250 <div class="rt-gallery">
251 <ul class="rt-gallery__list">
252 <#assign sortedFileEntry = [] />
253 <#setting date_format="dd-MM-yyyy">
254
255 <#list fileEntriesFolder as fileEntry>
256 <#if fileEntry??>
257 <#assign imgObj = {"order":fileEntry.getModifiedDate()?date, "obj":fileEntry} />
258 <#assign sortedFileEntry = sortedFileEntry + [imgObj] />
259 </#if>
260 </#list>
261 <#list sortedFileEntry?sort_by("order")?reverse as cur_obj>
262 <#assign fileEntry = cur_obj.obj />
263 <#if fileEntry??>
264 <#if !fileEntry.isInTrash()>
265 <#assign titleImg = fileEntry.getTitle()?html />
266 <#if fileEntry.getDescription()?? && fileEntry.getDescription() != "">
267 <#assign titleImg = fileEntry.getDescription()?html />
268 </#if>
269
270 <#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />
271 <li class="rt-gallery__item">
272 <a title="${titleImg}" data-lightbox="galleria-${nowTimeStamp}" href="${fileUrl?html}">
273 <img alt="${titleImg}" src="${fileUrl?html}">
274 </a>
275 </li>
276 </#if>
277 </#if>
278 </#list>
279 </ul>
280 </div>
281 </div>
282 </#if>
283 </#if>
284 </#if>
285
286 <#if temi?? && (temi?size > 0) >
287 <div class="rt-page__content">
288 <div class="rt-news-tags">
289 <div id="news-tags-label" class="rt-news-tags__label">Categorie:</div>
290 <ul aria-labelledby="news-tags-label" class="rt-news-tags__list">
291 <#list temi as category>
292 <li class="rt-news-tags__item">
293 <a title="${category}" aria-label="${category}" href="/${category}">${category}</a>
294 </li>
295 </#list>
296 </ul>
297 </div>
298 </div>
299 </#if>
300
301 </div>
302
303 <div class="col-md-12 col-lg-4 portlet-column portlet-column-last" id="column-3">
304
305 <#assign currentArticleRelatedLinks = assetLinkLocalService.getDirectLinks(currentArticleAssetEntryId) />
306 <#assign hasAllegato = "false" />
307 <#assign hasLink = "false" />
308 <#if currentArticleRelatedLinks?? && currentArticleRelatedLinks?has_content>
309 <#list currentArticleRelatedLinks as related_entry>
310 <#assign relatedAssetEntryId = related_entry.getEntryId2() />
311 <#assign relatedAssetEntry = AssetEntryLocalServiceUtil.getEntry(relatedAssetEntryId) />
312 <#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() />
313
314 <#if relatedAssetEntry.getClassName() == 'com.liferay.document.library.kernel.model.DLFileEntry' >
315 <#assign hasAllegato = "true" />
316 <#elseif relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' >
317 <#assign hasLink = "true" />
318 </#if>
319 </#list>
320 </#if>
321
322 <#if (hasLink == "true") >
323 <div class="rt-sidebar-content">
324 <section class="rt-section rt-section--box rt-section--box-row rt-section--related rt-section--sidebar" aria-label="">
325 <div class="rt-section-title-wrapper">
326 <h3 class="rt-section-title">Notizie collegate</h3>
327 </div>
328 <div class="rt-section__wrapper">
329 <#list currentArticleRelatedLinks as related_entry>
330 <#assign relatedAssetEntryId = related_entry.getEntryId2() />
331 <#assign relatedAssetEntry = AssetEntryLocalServiceUtil.getEntry(relatedAssetEntryId) />
332 <#assign relatedAssetEntryPrimKey = relatedAssetEntry.getClassPK() />
333
334 <#if relatedAssetEntry.getClassName() == 'com.liferay.journal.model.JournalArticle' >
335 <#assign relatedArticle = JournalArticleLocalService.getLatestArticle(relatedAssetEntryPrimKey) />
336 <#if relatedArticle?? && relatedArticle != "">
337
338 <#assign assetRendererRelated = relatedAssetEntry.getAssetRenderer() />
339 <#assign rendererURLRelated = siteBaseURL + "/-/" + assetRendererRelated.getUrlTitle() />
340
341 <#assign docXml = saxReaderUtil.read(relatedArticle.getContent()) />
342
343 <#assign Immagine = docXml.valueOf("//dynamic-element[@name='Immagine']/dynamic-content/text()") />
344
345 <#assign fileUrl = "" />
346 <#assign altImg = "" />
347 <#if Immagine?has_content>
348 <#assign json = jsonFactoryUtil.createJSONObject(Immagine) />
349 <#assign nameImg = json.getString("name") />
350 <#assign altImg = json.getString("alt") />
351 <#assign fileEntryId = json.getLong("fileEntryId") />
352 <#assign uuiD = json.getString("uuid") />
353 <#assign groupId = json.getLong("groupId") />
354
355 <#if fileEntryId != 0>
356 <#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntry(fileEntryId) />
357 <#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />
358 <#else>
359 <#if groupId != 0 && uuiD != "">
360 <#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntryByUuidAndGroupId(uuiD,groupId) />
361 <#if fileEntry?? >
362 <#assign fileUrl = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />
363 </#if>
364 </#if>
365 </#if>
366 <#else>
367 <#assign fileUrl = imagePath + "/toscana-notizie-placeholder.png" />
368 </#if>
369
370
371 <div class="rt-box rt-box--has-image rt-box--has-image-small">
372 <div class="rt-box__image">
373 <img alt="Immagine ${relatedAssetEntry.getTitle(locale)?html}" src="${fileUrl?html}">
374
375 </div>
376
377 <div class="rt-box__text">
378 <div class="rt-box__publication">
379 <div class="rt-box__date">${relatedAssetEntry.publishDate?string["dd MMMM"]?remove_beginning("0")}</div>
380 <div class="rt-box__time">${relatedAssetEntry.publishDate?string["HH:mm"]?remove_beginning("0")}</div>
381 </div>
382
383 <div class="rt-box__title">
384 <a title="Vai alla pagina ${relatedAssetEntry.getTitle(locale)?html}" aria-label="Vai alla pagina ${relatedAssetEntry.getTitle(locale)?html}" href="${rendererURLRelated?html}">
385 ${relatedAssetEntry.getTitle(locale)?html}
386 </a>
387 </div>
388 </div>
389 </div>
390
391 </#if>
392 </#if>
393 </#list>
394 </div>
395 </section>
396 </div>
397 </#if>
398
399 </div>
400 </div>
401</section>
402
403<script src="${jsPath}lightbox2/dist/js/lightbox.min.js"></script>
404<script src="${jsPath}flexslider/jquery.flexslider-min.js"></script>
Risorse Correlate:
- Viaggio sul confine orientale, dall’11 al 15 febbraio con 50 studenti delle scuole superiori
- Viaggio sul 'confine difficile', il racconto affidato anche agli studenti
- Viaggio sul confine 'difficile', l'importanza di raccontare la memoria anche quando scomoda
- Viaggio sul confine 'difficile': “Foibe e Shoah? Un confronto inaccettabile e impossibile”
- Viaggio sul confine 'difficile', la storia che aiuta a superare il rancore
- Viaggio sul confine 'difficile', Barni: “Ecco la formula: un mosaico di voci”
- Viaggio sul confine ‘difficile’, il silenzio della Risiera di San Sabba
- Viaggio sul confine 'difficile', gli studenti a Fiume con gli italiani della città