Il Ministro Giovannini illustra alla Camera gli interventi del Piano Nazionale di Ripresa e Resilienza
Під час обробки запитаного шаблоку сталась помилка.
The following has evaluated to null or missing: ==> serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryPropertyLocalService") [in template "33201#33237#1762997" at line 8, column 46] ---- Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign AssetCategoryPropertyLocalSer... [in template "33201#33237#1762997" at line 8, column 1] ----
1<#-- Chiave del template globale "Utils" -->
2<#assign pathNewsList = "elenco-bandi">
3<#include "${templatesPath}/33878" />
4
5<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
6<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
7<#assign vocabularyService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService")>
8<#assign AssetCategoryPropertyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryPropertyLocalService")>
9<#assign currentArticle = journalArticleLocalService.getArticle(groupId, .vars['reserved-article-id'].data) />
10<#assign currentArticleAssetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", currentArticle.getResourcePrimKey()) />
11
12<!-- VERIFICATE -->
13<#assign title = .vars['reserved-article-title'].data />
14<#assign date = .vars['reserved-article-display-date'].data>
15<#assign dateTimeFormat = "dd MMMM yyyy">
16<#assign articleURL = themeDisplay.getURLPortal() + themeDisplay.getScopeGroup().getPathFriendlyURL(false, themeDisplay) + themeDisplay.getScopeGroup().getFriendlyURL() + "/-/" + title />
17
18<!-- DA VERIFICARE -->
19<#setting locale = localeUtil.getDefault()>
20<#assign notizieLandingPage = "#">
21<#if themeDisplay.getThemeSetting("notizie-landing-page")?has_content>
22 <#assign notizieLandingPage = themeDisplay.getThemeSetting("notizie-landing-page")>
23</#if>
24
25<div class="container">
26 <div class="row notizia">
27 <div class="col-md-8">
28 <div class="row">
29 <div class="col">
30 <h2 class="h1">${title}</h2>
31
32 </div>
33 </div>
34 <div class="row">
35 <div class="col">
36 <div class="box-event d-flex align-items-center">
37 <div class="calendar">
38 <img src="https://www.regione.puglia.it/o/portale-istituzionale-theme/images/svg/calendar.svg">
39 </div>
40 <span class="d-inline date">
41 <h3>
42 <#assign dataInizioEvento_Data = getterUtil.getString(dataInizioEvento.getData())>
43 <#if validator.isNotNull(dataInizioEvento_Data)>
44 <#assign dataInizioEvento_DateObj = dateUtil.parseDate("yyyy-MM-dd", dataInizioEvento_Data, locale)>
45 ${dateUtil.getDate(dataInizioEvento_DateObj, "dd MMM yyyy", locale)}
46 </#if>
47 <#assign dataFineEvento_Data = getterUtil.getString(dataFineEvento.getData())>
48 <#if validator.isNotNull(dataFineEvento_Data)>
49 <#assign dataFineEvento_DateObj = dateUtil.parseDate("yyyy-MM-dd", dataFineEvento_Data, locale)> - ${dateUtil.getDate(dataFineEvento_DateObj, "dd MMM yyyy", locale)}
50 </#if>
51 </h3>
52
53 </span>
54 </div>
55
56
57 </div>
58 <div class="col">
59
60 </div>
61 </div>
62 <div class="row">
63 <div class="col">
64 <#if principalImage.getData()?? >
65 <#assign class = "float-img" />
66 <#if principalImage.getData()?? && principalImage.getData() != ""> <img alt="${principalImage.getAttribute("alt")}" data-fileentryid="${principalImage.getAttribute("fileEntryId")}" src="${principalImage.getData()}" class = "float-img" /> </#if>
67
68 </#if>
69 <div class="news-description">
70 ${Descrizione.getData()}
71 </div>
72
73 </div>
74 </div>
75
76 </div>
77
78
79 <div class="col-md-4">
80 <div class="row">
81 <div class="d-none d-md-block">
82 <@printSocialBlock title=title url=articleURL />
83 </div>
84 </div>
85
86 <div class="row">
87 <div class="col-12 documents-news">
88 <div class="news-document-block">
89 <h3 class="d-none d-md-block">Dove</h3>
90 <div class="ml-3">
91
92 <span class="text-evidenceinfo size-6">Luogo: </span><span class="infodettaglio size-6"> ${Luogo1.getData()}</span>
93 </div>
94 <div class="ml-3">
95
96 <span class="text-evidenceinfo size-6">Indirizzo: </span><span class="infodettaglio size-6"> ${Indirizzo.getData()}</span>
97 </div>
98 <div class="ml-3">
99
100 <span class="text-evidenceinfo size-6">Citta: </span><span class="infodettaglio size-6"> ${Citta.getData()}</span>
101 </div>
102 <div class="ml-3">
103
104 <span class="text-evidenceinfo size-6">Luogo: </span><span class="infodettaglio size-6"> ${Provincia.getData()}</span>
105 </div>
106 </div>
107 </div>
108 </div>
109
110 <div class="row">
111 <div class="col-12 documents-news">
112 <div class="news-document-block">
113 <h3 class="d-none d-md-block">Contatti</h3>
114 <div class="ml-3">
115
116 <span class="text-evidenceinfo size-6">${Contatti.getData()} </span>
117 </div>
118
119 </div>
120 </div>
121 </div>
122 <#if Documenti.getSiblings()?has_content>
123 <div class="row">
124 <div class="col-12 documents-news">
125 <div class="news-document-block">
126 <h3 class="d-none d-md-block">Documenti</h3>
127 <@printDocumentList
128 documentList=Documenti
129 documentTitleChildrenName="newsAttachmentTitle"
130 documentDescriptionChildrenName="newsAttachmentDescription"
131 printIcons = true />
132 </div>
133 </div>
134 </div>
135 </#if>
136
137 </div>
138 </div>
139
140<div class="row">
141 <div class="col-8">
142
143 </div>
144 </div>
145 <div class="row">
146 <div class="col-8">
147 <#list currentArticleAssetEntry.getCategories() as category>
148 <#assign badgeClass = "grigio">
149 <#assign categoryVocabulary = vocabularyService.getVocabulary(category['vocabularyId']?number)['name']>
150 <#if categoryVocabulary=="Aree Tematiche">
151 <#assign badgeClass = AssetCategoryPropertyLocalService.getCategoryProperty(category['categoryId']?number, 'css_class')['value'] >
152 </#if>
153
154 <#if categoryVocabulary=="Tipologia">
155 <#assign badgeClass = "tipologia-press" >
156 </#if>
157
158
159 <a class="link-badge" href="/${themeDisplay.getLocale()?substring(0, 2)}/web${themeDisplay.getScopeGroup()['friendlyURL']}/${pathNewsList}?p_r_p_categoryId=${category['categoryId']}">
160 <span class="badge badge-${badgeClass}">
161 ${category.getTitle(locale)}
162 </span>
163 </a>
164 </#list>
165 </div>
166 </div>
167
168 <div class="row">
169 <div class="col-12 data-news">
170 <p>Pubblicato il ${date?datetime("EEE, d MMM yyyy HH:mm:ss Z")?string(dateTimeFormat)}</p>
171 </div>
172 </div>
173</div>