Pianificare la gestione dei programmi di superamento delle barriere architettoniche alla scala urbana - Toscana Accessibile
Se ha producido un error al procesar la plantilla.
The string doesn't match the expected date/time/date-time format. The string to parse was: "lun, 31 gen 2022 18:19:08 +0100". The expected format was: "EEE, dd MMM yyyy". The nested reason given follows: Unparseable date: "lun, 31 gen 2022 18:19:08 +0100" ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign display_date = modifiedDate?d... [in template "10155#10195#165439" at line 113, column 9] ----
1<#setting time_zone=timeZone.ID>
2<#setting locale=locale.toString()>
3
4<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
5<#assign journalArticleId = .vars['reserved-article-id'].data/>
6<#assign article = JournalArticleLocalService.getArticle(groupId, journalArticleId) />
7<#assign AssetEntryLocalServiceUtil = staticUtil["com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil"] />
8<#assign entry = AssetEntryLocalServiceUtil.fetchEntry("com.liferay.journal.model.JournalArticle", article.resourcePrimKey) />
9<#assign DLFileEntryLocalServiceUtil = serviceLocator.findService('com.liferay.document.library.kernel.service.DLFileEntryLocalService') />
10
11
12<#assign currentArticleAssetEntryId = entry.getEntryId() />
13
14<#assign entryTitle = htmlUtil.escape(entry.getTitle(locale)?html) />
15<#assign assetRenderer = entry.getAssetRenderer() />
16
17<style>
18 .portlet:hover #pagina-evento .visible-interaction {
19 display: inline-block;
20 }
21</style>
22
23<div id="pagina-evento" class="assets-news-container container-fluid">
24
25 <div class="row-fluid">
26
27 <div class="span8">
28
29 <div class="data text-uppercase date">
30
31 <#assign hasDataFine = false />
32 <#assign dateEnd = "" />
33 <#if DataDiFine?? && DataDiFine.getData()?? && DataDiFine.getData()?has_content && DataDiFine.getData() != "">
34 <#assign DataDiFine_DateObj = getterUtil.getString(DataDiFine.getData()) />
35 <#assign dateEnd = dateUtil.parseDate("yyyy-MM-dd", DataDiFine_DateObj, locale) />
36 <#assign hasDataFine = true />
37 </#if>
38
39 <#if DataVisualizzazione.getData() != "" >
40
41
42 <#assign DataVisualizzazione_DateObj = getterUtil.getString(DataVisualizzazione.getData()) />
43 <#assign date = dateUtil.parseDate("yyyy-MM-dd", DataVisualizzazione_DateObj, locale) />
44 <#if hasDataFine && dateEnd??>
45 dal ${date?string('dd MMMM yyyy')} al ${dateEnd?string('dd MMMM yyyy')}
46 <#else>
47 ${date?string('dd MMMM yyyy')}
48 </#if>
49
50 </#if>
51
52 </div>
53
54 <h1 class="titolo title">
55 ${.vars['reserved-article-title'].data} <@getEditIcon />
56 </h1>
57
58
59
60
61
62 <#assign docXml = saxReaderUtil.read(entry.getAssetRenderer().getArticle().getContent()) />
63 <#assign immagine = docXml.valueOf("//dynamic-element[@name='Immagine']/dynamic-content/text()") />
64 <div>
65 <#list entry.getCategories() as category>
66 <#assign catName = category.getName()?lower_case />
67 <#assign catName = catName?replace("à","a") />
68 <#assign catNameIcon = catName?replace(" e ","_") />
69 <#assign catNameLink = catName?replace(" ","-") />
70 <span><a href="/web/toscana-accessibile/news/${catNameLink}" title="Leggi altre notizie della categoria ${catName}" class="nodecoration"><i class="circle-block rt-icon-${catNameIcon} "></i></a></span>
71 </#list>
72 </div>
73
74 <#assign isVisible = getterUtil.getBoolean(Immagine.MostraSoloElenco.getData()) />
75
76
77 <#if Immagine.getData() != "" && !isVisible>
78 <img class="img-top img-responsive" alt="${Immagine.getAttribute("alt")}" data-fileentryid="${Immagine.getAttribute("fileEntryId")}" src="${Immagine.getData()}" />
79
80 <#else>
81 <#if immagine != "" && !isVisible>
82 <#assign json = jsonFactoryUtil.createJSONObject(immagine) />
83 <#assign uuid = json.getString("uuid") />
84 <#assign groupIdScopedd = themeDisplay.getLayout().getGroup().getGroupId() />
85
86 <#assign fileEntry = DLFileEntryLocalServiceUtil.getFileEntryByUuidAndGroupId(uuid,groupIdScopedd) />
87 <#assign fileUrl2 = "/documents/" + fileEntry.getGroupId() + "/" + fileEntry.getFolderId() + "/" + fileEntry.getTitle() + "/" + fileEntry.getUuid() />
88 <img class="img-top img-responsive" alt="${fileEntry.getTitle()}" src="${fileUrl2}" />
89 </#if>
90
91 </#if>
92
93
94
95 <#if IdVideoYoutube.getData() != "" >
96 <div class="video">
97 <iframe width="460" height="315" src="https://www.youtube-nocookie.com/embed/${IdVideoYoutube.getData()}" allowfullscreen style="width: 100%; border:0">
98
99 </iframe>
100 </div>
101 </#if>
102 <#if Sottotitolo.getData() != "" >
103 <h2 class="subtitle">${Sottotitolo.getData()}</h2>
104 </#if>
105
106 <#if Contenuto.getData() != "" >
107 <div class="contenuto">${Contenuto.getData()}</div>
108 </#if>
109
110 <div class="pull-right text-right" style="margin: 15px 0;">
111 <i>Article ID: # ${.vars['reserved-article-id'].data}</i> <br/>
112 <#assign modifiedDate = .vars['reserved-article-modified-date'].data />
113 <#assign display_date = modifiedDate?datetime("EEE, dd MMM yyyy") />
114 <#assign display_date = display_date?string["dd.MM.yyyy"] />
115 <i>Ultimo aggiornamento: ${display_date}</i>
116 </div>
117
118 <div class="clearfix"></div>
119
120 <div class="post-social pull-right">
121 <div class="condividi text-uppercase">Condividi</div>
122 <ul class="inline">
123 <li>
124 <a class="fb_share" href="" title="Condividi su Facebook">
125 <span class="hide">Condividi su Facebook</span>
126 <span class="icon-stack" >
127 <i class="icon-circle icon-stack-base"></i>
128 <i class="icon-facebook icon-light"></i>
129 </span>
130 </a>
131 </li>
132 <li>
133 <a class="gplus" href="" title="Condividi su google plus">
134 <span class="hide">Condividi su google plus</span>
135 <span class="icon-stack" >
136 <i class="icon-circle icon-stack-base"></i>
137 <i class="icon-google-plus icon-light"></i>
138 </span>
139 </a>
140 </li>
141 <li>
142 <a class="tweet" href="" title="Condividi su twitter">
143 <span class="hide">Condividi su twitter</span>
144 <span class="icon-stack" >
145 <i class="icon-circle icon-stack-base"></i>
146 <i class="icon-twitter icon-light"></i>
147 </span>
148 </a>
149 </li>
150 </ul>
151 </div>
152 <div class="clearfix"></div>
153
154 <#if Documenti.getSiblings()?has_content && (Documenti.getSiblings()?size > 1) >
155 <h3 class="subtitle text-uppercase">Documenti Allegati</h3>
156 <div class="table tabella-allegati">
157 <#list Documenti.getSiblings() as cur_Allegati>
158 <#if cur_Allegati?has_content && cur_Allegati.getData() != "">
159 <#assign groupId = "" >
160 <#assign uuId = "" >
161
162 <#assign counter = 0 >
163
164 <#list "${cur_Allegati.getData()}"?split("/") as x>
165 <#if counter == 2>
166 <#assign groupId = x?number?long >
167 </#if>
168
169 <#if counter == 5>
170 <#assign uuId = x?split("?")[0] >
171 </#if>
172
173 <#assign counter = counter+1 >
174 </#list>
175
176 <#assign file = DLFileEntryLocalServiceUtil.getDLFileEntryByUuidAndGroupId(uuId, groupId) />
177
178 <div class="row-table attachments">
179 <div class="cell-table min-width-table">
180 <i class="icon-file icon-2x"></i>
181 </div>
182 <div class="cell-table">
183 <a href="${cur_Allegati.getData()}" target="_blank"> ${file.fileName}</a>
184 </div>
185
186 </div>
187 </#if>
188 </#list>
189 </div>
190 </#if>
191 <#if Photogallery.getSiblings()?has_content && Photogallery.getSiblings()?size > 1>
192 <div class="rt-gallery">
193 <#assign nowTimeStamp = .now?long />
194
195
196 <#assign listSize = Photogallery.getSiblings()?size />
197 <#assign counterTemp = 0 />
198 <#assign counterTotal = 0 />
199
200 <div class="rt-gallery__slider" id="gallery-stage-${nowTimeStamp}">
201 <#list Photogallery.getSiblings() as cur_ImmaginePerGallery>
202 <#if cur_ImmaginePerGallery.getData()?? && cur_ImmaginePerGallery.getData() != "">
203
204 <#assign counterTemp = counterTemp + 1 />
205 <#assign counterTotal = counterTotal + 1 />
206
207
208 <#if counterTemp == 1>
209 <div class="rt-gallery__panel">
210 <ul class="rt-gallery__list">
211 </#if>
212
213 <li class="rt-gallery__item">
214 <a data-lightbox="gallery_${nowTimeStamp}" href="${cur_ImmaginePerGallery.getData()}">
215 <img alt="${cur_ImmaginePerGallery.getAttribute("alt")}" src="${cur_ImmaginePerGallery.getData()}">
216 </a>
217 </li>
218
219
220 <#if counterTemp == 8 || counterTotal == listSize>
221 </ul>
222 </div>
223 </#if>
224
225 <#if counterTemp == 8 >
226 <#assign counterTemp = 0 />
227 </#if>
228
229 </#if>
230 </#list>
231 </div>
232
233</div>
234</#if>
235 <div class="clearfix"></div>
236 <div class="pull-right text-uppercase readmore"><a href="/web/toscana-accessibile/eventi" title="Archivio Eventi">TUTTI GLI EVENTI > </a></div>
237 <div class="clearfix"></div>
238 </div>
239
240 <div class="info-utili span4">
241
242 <h3>Info Utili</h3>
243 <div>
244 <#if Relatore.getData()?has_content>
245 <div><span>Relatore: </span>${Relatore.getData()}</div>
246 </#if>
247 <#if Luogo.getData()?has_content>
248 <div><span>Luogo: </span>${Luogo.getData()}</div>
249 </#if>
250 <#if Orario.getData()?has_content>
251 <div><span>Orario: </span>${Orario.getData()}</div>
252 </#if>
253 </div>
254
255 </div>
256
257
258 </div>
259
260</div>
261
262<#macro getEditIcon>
263 <#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())>
264 <#if renderResponse??>
265 <#assign redirectURL = renderResponse.createRenderURL() />
266
267 ${redirectURL.setParameter("mvcPath", "/add_asset_redirect.jsp")}
268 ${redirectURL.setWindowState("pop_up")}
269
270 <#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" />
271
272 <#if validator.isNotNull(editPortletURL)>
273 <#assign title = languageUtil.format(locale, "edit-x", entryTitle, false) />
274
275 <@liferay_ui["icon"]
276 cssClass="icon-monospaced visible-interaction"
277 icon="pencil"
278 markupView="lexicon"
279 message=title
280 url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});"
281 />
282 </#if>
283 </#if>
284 </#if>
285</#macro>