Prevenzione del Carcinoma della Cervice Uterina
Si è verificato un errore nell'elaborarazione del modello.
Java method "com.sun.proxy.$Proxy773.getArticle(long, String)" threw an exception when invoked on com.sun.proxy.$Proxy773 object "com.liferay.journal.service.impl.JournalArticleServiceImpl@a31812b"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign article = journalArticleLocal... [in template "20097#20123#" at line 43, column 41] ----
1<#assign css_folder=themeDisplay.getPathThemeCss() />
2<#assign images_folder=themeDisplay.getPathThemeImages() />
3<#assign javascript_folder = themeDisplay.getPathThemeJavaScript()/>
4<#-- RECUPERO DATI -->
5<#assign pathPrimoAllegato = (Titolo.nomeAllegato.FileMedia.getSiblings()[0].getData()) />
6 <#assign dataPub = .vars['reserved-article-display-date'].data />
7 <#-- Save the original page locale for later -->
8 <#assign originalLocale = .locale>
9 <#-- Set the page locale to the portals default locale -->
10 <#setting locale = localeUtil.getDefault()>
11 <#-- Parse the date to a date object -->
12 <#assign dataPub = dataPub?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
13 <#-- Set the page locale back to the original page locale -->
14 <#-- Set the page locale back to the original page locale -->
15 <#setting locale = originalLocale>
16
17<#-- FINE RECUPERO DATI -->
18
19
20
21<main class="">
22 <section class="section mt-7">
23 <div class="container">
24
25<#assign DataNotizia_Data = getterUtil.getString(Titolo.dataNotizia.getData())>
26
27
28 <div class="customTab col-lg-12" style="margin-top:-7%; padding-top: 0"> <!-- prima colonna -->
29 <div class="subtitle mb-3">
30
31 <!--
32 <p class="mb-3">
33 -->
34
35
36 <!-- DA PROVARE DOPO RIAVVIO -->
37 <#assign AssetEntryLocalServiceUtil = objectUtil("com.liferay.asset.kernel.service.AssetEntryLocalServiceUtil") />
38
39 <#-- assign assetService = serviceLocator.findService("com.liferay.portlet.asset.service.AssetTagLocalService") -->
40
41 <#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleService") />
42
43 <#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(scopeGroupId), .vars['reserved-article-id'].data)>
44
45<#assign resourcePrimKey = article.getResourcePrimKey() />
46
47 <#assign entry = AssetEntryLocalServiceUtil.getEntry("com.liferay.journal.model.JournalArticle", resourcePrimKey) />
48
49<#assign tagName = "" />
50<#if entry?? && entry.getTags()?size != 0 >
51<#assign tags = entry.getTags() />
52 <#list tags as tag>
53
54 <#assign tagName = tag.getName() />
55
56
57
58</#list>
59</#if>
60
61
62
63
64
65
66 <#if NomeTag??>
67 ${NomeTag.getData()}
68 <#else>
69
70 <#if tagName?upper_case == "NEWSS">
71
72
73 <a href="/notizie" style="text-decoration: none;" class="btn-secondary tag-news mr-2">NOTIZIE
74
75 <#else>
76
77 <#if tagName?upper_case == "VIDEOs">
78
79 <a href="/video-gallery" style="text-decoration: none;" class="btn-secondary tag-news mr-2">VIDEO GALLERY
80
81 <#else>
82 <#if tagName?upper_case == "COMUNICATI STAMPA">
83 <a href="/comunicati-stampa" style="text-decoration: none;" class="btn-secondary tag-news mr-2"> COMUNICATI STAMPA
84 </#if>
85
86 </#if>
87
88 </#if>
89 </#if>
90
91 </a>
92
93<!--
94 </p>
95 -->
96
97
98
99
100
101 </div>
102
103
104 <h1 class="titolo text-primary" style="font-size: 2rem !important;font-weight: 700 !important;">${Titolo.getData()}</h1>
105 <#if Titolo.Sottotitolo?? && Titolo.Sottotitolo.getData()!="">
106 <h5 class="subtitle giust" >${Titolo.Sottotitolo.getData()}</h5>
107 </#if>
108 <#if validator.isNotNull(DataNotizia_Data)>
109 <#assign DataNotizia_DateObj = dateUtil.parseDate("yyyy-MM-dd", DataNotizia_Data, locale)>
110
111 ${dateUtil.getDate(DataNotizia_DateObj, "dd/MM/yyyy", locale)}
112
113
114 <!--#else>
115 ${dataPub?string["dd/MM/yyyy"]}-->
116 </#if>
117
118
119
120
121 <#if tagName?? && tagName?upper_case != "VIDEO">
122 <#if Titolo.Foto.getData()?? && Titolo.Foto.getData() != "">
123 <img class="mb-4 img-fluid mt-3" data-fileentryid="${Titolo.Foto.getAttribute('fileEntryId')}" alt="${Titolo.Foto.getAttribute('alt')}" src="${Titolo.Foto.getData()}" style="width: 100% !important;" />
124
125 </#if>
126</#if>
127
128<#if Titolo.LinkVideo?? && Titolo.LinkVideo.getData() != "">
129 <p class="text-center">
130 <video controls width="700" height="394">
131 <source src="${Titolo.LinkVideo.getData()}" type="video/mp4">
132 Il tuo browser non supporta il tag video.
133</video>
134 </p>
135
136</#if>
137
138
139<span class="giust">${Titolo.Contenuto.getData()} </span>
140
141<#if pathPrimoAllegato?has_content>
142
143 <div class="mt-2">
144 <h5 class="text-primary fw-bold">ALLEGATI</h5>
145 <#list Titolo.nomeAllegato.getSiblings() as cur_nomeAllegato>
146 <#if cur_nomeAllegato.getData()?has_content>
147 <a target="_blank" href="${cur_nomeAllegato.FileMedia.getData()}">
148 <img style="vertical-align: text-top;" src="${images_folder}/doc-ico.png" width="20" height="20" aria-label="documento"> ${cur_nomeAllegato.getData()}
149 </a>
150 <br/>
151 <#elseif cur_nomeAllegato.FileMedia??>
152 <#if cur_nomeAllegato.FileMedia.getData()?last_index_of("/") != -1>
153 <#assign filepath = cur_nomeAllegato.FileMedia.getData()?substring(0, cur_nomeAllegato.FileMedia.getData()?last_index_of("/"))>
154 <#assign filename = filepath?substring(filepath?last_index_of("/") + 1)>
155 <a target="_blank" href="${cur_nomeAllegato.FileMedia.getData()}">
156 <img style="vertical-align: text-top;" src="${images_folder}/doc-ico.png" width="20" height="20" aria-label="documento"> ${filename}<br/>
157 </a>
158 <#else>
159 <#assign filename = cur_nomeAllegato.FileMedia.getData()>
160
161 </#if>
162
163 </#if>
164 </#list>
165 </div>
166</#if>
167 </div> <!-- chiusura prima colonna -->
168
169 <div class="row mt-4" >
170
171 <div class="col-12 text-right">
172 <h5><a class="exp btn-link" href="javascript:if(window.print)window.print()"><i class="fa fa-print"></i></a></h5>
173 </div>
174 </div>
175
176 </div>
177 </section>
178
179 </main>
180
181
182
183
184<#-- CSS PER NASCONDERE IL TITOLO DEL WEB CONTENT -->
185<style type="text/css">
186.header-title{display: none;}
187
188
189/* modifico */
190
191.asset-full-content {
192 display: block;
193
194 /*border: 1px solid red;*/
195}
196
197
198
199.mainHeader {
200 padding: 120px 0 80px;
201}
202
203<#-- DIV PER IL BANNER SOPRA -->
204 <div class="mainHeader header05">
205 <div class="container">
206 <div class="mainHeader-inner">
207 <h3>News & Media</h3>
208 <h1>Notizie ed eventi</h1>
209 </div>
210 </div>
211 </div>
212<#-- FINE DIV PER BANNER -->
213
214
215<#-- =================== PARTI GENERICHE ======================== -->
216
217<#--
218<textarea style="height: 800px; width: 500px;">
219${docTotale}
220
221</textarea>
222-->
223
224<#-- =================== PER RECUPERARE IL JSON DELLA STRUTTURA ===================
225<#assign structureKey = DDMStructureLocalService.getStructure(134816) />
226
227 <h1>${structureKey}</h1> -->
228
229
230<#-- =================== FINE PARTI GENERICHE =================== -->
231
232
233<#-- =================== INIZIO PARTE NEWS LOOP =================== -->
234
235 <main class="">
236 <section class="section">
237 <div class="container">
238
239<#if entries?has_content>
240
241 <#assign idxLoop = 0 />
242
243 <#list entries as curEntry> <#-- INIZIO LOOP (indici 0-based)-->
244
245
246<#assign idxLoop = curEntry?index />
247
248<#if idxLoop % 4 == 0 >
249
250<#if idxLoop != 0> <#-- se non è il primo gruppo di 4 elementi chiudo il precedente -->
251</div>
252</#if>
253
254<#-- inizio il nuovo gruppo -->
255<div class="row mb-5">
256</#if>
257
258
259<#-- A GRUPPI DI 4 ELEMENTI DELLA LISTA DEVO GENERARE LA STRUTTURA <div class="row mb-5"> -->
260
261<#assign newsTitle = curEntry.getTitle(locale) />
262<#assign newsSummary = curEntry.getSummary(locale) />
263<#assign dataPub = curEntry.getPublishDate() />
264
265
266
267<#assign renderer = curEntry.getAssetRenderer() />
268<#assign Article = renderer.getArticle() />
269<#assign smallImageID = Article.getSmallImageId() />
270<#if smallImageID??>
271<#assign smallImageURL = "/image/image_gallery?img_id=${smallImageID}" />
272<#else>
273<#assign smallImageURL = Article.getSmallImageURL() />
274</#if>
275
276<#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, curEntry) />
277<#assign viewURLAsset = renderer.getURLViewInContext(renderRequest, renderResponse, viewURL) />
278
279
280
281<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
282<#assign DDMStructureLocalService = serviceLocator.findService("com.liferay.dynamic.data.mapping.service.DDMStructureLocalService") >
283<#assign article = journalArticleLocalService.getLatestArticle(Article.resourcePrimKey) />
284<#assign docTotale = article.getContentByLocale(localeUtil.toLanguageId(localeUtil.getDefault())) />
285<#assign doc = saxReaderUtil.read(article.getContentByLocale(localeUtil.toLanguageId(localeUtil.getDefault()))) />
286
287<#-- INIZIO LETTURA CAMPI -->
288<#assign rootElement = doc.getRootElement() />
289<#assign news = rootElement.selectNodes("/Titolo") />
290
291<#assign titoloNodePath = saxReaderUtil.createXPath("dynamic-element[@name='Titolo']") />
292<#assign titoloNode = titoloNodePath.selectSingleNode(rootElement) />
293
294<#assign xPathSelector = saxReaderUtil.createXPath("dynamic-content") />
295<#assign titoloVal = xPathSelector.selectSingleNode(titoloNode).getStringValue() />
296
297<#assign xPathData = saxReaderUtil.createXPath("dynamic-element[@name='DataNotizia']/dynamic-content") />
298<#assign dataNotizia = xPathData.selectSingleNode(titoloNode).getStringValue() />
299
300<#assign xPathAbstract = saxReaderUtil.createXPath("dynamic-element[@name='Abstract']/dynamic-content") />
301<#assign abstract = xPathAbstract.selectSingleNode(titoloNode).getStringValue() />
302
303<#assign xPathFoto = saxReaderUtil.createXPath("dynamic-element[@name='Foto']/dynamic-content") />
304<#assign fotoLink = xPathFoto.selectSingleNode(titoloNode).getStringValue() />
305
306
307<#-- ========== COSTRUZIONE HTML SINGOLA NEWS ==================== -->
308
309<!--
310<h2 style="color:red">${viewURL}</h2>
311<h2 style="color:green">${viewURLAsset}</h2>
312
313?replace('wm9stv169C42','WBh1QsINxArE')
314-->
315
316
317
318
319 <div class="col-lg-3 col-12">
320 <a href="${viewURLAsset}" class="news-card card">
321 <div class="img-box">
322
323 <#if fotoLink?? && fotoLink != "">
324 <img src="${fotoLink}" alt="">
325 </#if>
326
327 </div>
328
329 </a>
330
331
332 <#if fotoLink?? && fotoLink != "">
333 <h5 class="titolinews mt-4">${titoloVal}</h5>
334 <#else>
335 <a href="${viewURLAsset}" class="news-card card"><h5 class="titolinews mt-4">${titoloVal}</h5> </a>
336 </#if>
337
338 <#if dataNotizia?? && dataNotizia?has_content>
339 <#assign someDate = dataNotizia?date.xs>
340 <p class="subtitle" style="color: dimgray">${someDate?string["dd/MM/yyyy"]}</p>
341 </#if>
342
343
344
345 </div>
346
347
348
349 <div class="row mt-4" >
350 <div class="col-8 text-left">
351 <p class="text-primary exp">Aggiornamento del ${modifydate?string("dd-MM-yyyy")}</p>
352 </div>
353 <div class="col-4 text-right">
354 <h5><a class="exp btn-link" href="javascript:if(window.print)window.print()"><i class="fa fa-print"></i></a></h5>
355 </div>
356 </div>
357
358<#-- =================== FINE COSTRUZIONE SINGOLA News ======================= -->
359
360
361<#-- FINE -->
362
363
364
365
366
367
368
369 </#list> <#-- FINE LOOP -->
370
371<#-- se l'ultimo indice generato è mod 4 allora vuol dire che il penultimo,quello del ciclo non è multiplo di quattro
372per cui va chiuso l'ultimo div aperto -->
373<#if idxLoop %4 == 0>
374</div>
375</#if>
376
377
378
379
380</#if>
381<#-- FINE NEWS LOOP -->
382
383 </div> <#-- chiusura div.container -->
384 </section>
385 </main>
386
387
388
389
390<div id="testDiv"></div>
391<script>
392
393Liferay.Portlet.ready(
394
395 /*
396 This function gets loaded after each and every portlet on the page.
397
398 portletId: the current portlet's id
399 node: the Alloy Node object of the current portlet
400 */
401
402 function(portletId, node) {
403
404 //alert('portlet id: ' + portletId + ' node: ' + node);
405
406 }
407);
408
409
410
411<style>
412.portlet-layout{
413 display:none!important;
414}
415.portlet-header{
416 display:none!important;
417}
418.giust{
419 text-align:justify;
420}
421
422.component-title{
423 display:none;
424}
425
426.portlet-asset-publisher .asset-title {
427display: none !important;
428}
429</style>