Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> dateArticleCurrent  [in template "20099#20135#21363" at line 37, column 242]

----
Tip: If the failing expression is known to be 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: ${dateArticleCurrent}  [in template "20099#20135#21363" at line 37, column 240]
----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
2<#assign journalArticleId = .vars['reserved-article-id'].data/> 
3<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(groupId), journalArticleId)> 
4<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', article.resourcePrimKey) > 
6<#assign categoriesArticleCurrent=asset.getCategories() /> 
7<#assign categoryIdsArticleCurrent=asset.getCategoryIds()/> 
8 
9<#assign urlCurrent = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
10<#function getUrlSocial themeDisplay socialType> 
11	<#assign url = "#" /> 
12	<#if socialType == "facebook"> 
13		<#assign url = "https://www.facebook.com/sharer/sharer.php?u=${urlCurrent}" /> 
14	<#elseif socialType == "twitter"> 
15		<#assign url = "https://twitter.com/intent/tweet?text=${urlCurrent}" /> 
16	</#if> 
17	<#return url> 
18</#function> 
19 
20<#assign data_news_Data = getterUtil.getString(data_news.getData())>  
21	<#if validator.isNotNull(data_news_Data)>  
22		<#assign data_news_DateObj = dateUtil.parseDate("yyyy-MM-dd", data_news_Data, locale) />  
23		<#assign dateArticleCurrent= dateUtil.getDate(data_news_DateObj, "dd.MM.yy", locale) /> 
24	</#if> 
25	 
26<#if categoriesArticleCurrent?? && categoriesArticleCurrent?has_content> 
27	<#assign categorieEntryCurrent=categoriesArticleCurrent[0] />   
28</#if>	 
29 
30<div class="container"> 
31	<div class="px-4 px-sm-0"> 
32		<div class="row"> 
33						<div class="col-12 col-md-6 mb-4 mb-sm-0"> 
34							<div class="card card-news"> 
35								<div class="card-body pl-1 pr-2 py-0"> 
36									<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
37										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntryCurrent.getTitle(locale)}</span> &mdash; ${dateArticleCurrent}</p> 
38									<#else>	 
39										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateArticleCurrent}</p> 
40									</#if> 
41								 
42								 
43									<h2 class="p-0 text-40p line-h48p">${titolo_news.getData()}</h2> 
44									 
45									<p class="text-28p line-h40p font-weight-600 mb-2">${asset.getSummaryCurrentValue()}</p> 
46									 
47									<#if img_news.getData()!=""> 
48										<div class="img100x mb-2"><img src="${img_news.getData()}" alt="${img_descr.getData()}"/></div> 
49									<#else> 
50										<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
51											<#assign imgDefault=categorieEntryCurrent.getName()?replace(" ","-")?lower_case/> 
52											<#assign imgDefault=imgDefault+".JPG"/>	 
53										<#else>	 
54											<#assign imgDefault="default.JPG"/>	 
55										</#if>	 
56										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
57										 
58										<div class="img100x mb-2"><img src="${imgUrl}" alt="imagine ${titolo_news.getData()}"/></div> 
59									</#if> 
60									 
61									<p class="text-chambray font-lora mb-4">${corpo.getData()} </p> 
62								</div> 
63							</div> 
64							 
65							<div class="pl-1 pl-sm-2"> 
66									<p class="text-24p text-primary"><strong>Condividi</strong> 
67										<#assign socialUrl = getUrlSocial(themeDisplay,'facebook') /> 
68										<a href="${socialUrl}" aria-label="Condividi su Facebook" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"  title="Facebook - Sito esterno" class="d-inline-block ml-3 mr-2"><span class="fab fa-facebook-square text-22p"></span></a> 
69										 
70										<#assign socialUrl = getUrlSocial(themeDisplay,'twitter') /> 
71										<a href="${socialUrl}" aria-label="Condividi su Twitter" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"title="Twitter - Sito esterno" class="d-inline-block mx-2"><span class="fab fa-twitter text-20p"></span></a> 
72									</p> 
73							</div> 
74				 
75			             </div>  
76 
77 
78			<#assign journalAssetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") />	 
79			<#assign journalArticleRelatedEntry = journalAssetLinkLocalService.getDirectLinks(asset.getEntryId()) /> 
80 
81				<#if journalArticleRelatedEntry?has_content> 
82					<div class="col-12 col-md-6 b-left"> 
83							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie Correlate</h3> 
84						 
85						<#list journalArticleRelatedEntry as relatedEntry>		 
86										<#assign relatedAssetEntryId = relatedEntry.getEntryId2() /> 
87										<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId ) /> 
88										<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedAssetEntry.getClassPK() ) /> 
89										<#assign renderer = relatedAssetEntry.getAssetRenderer() > 
90										<#assign journalArticle = renderer.getArticle() > 
91										<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
92										<#assign rootElement = document.document.getRootElement()  > 
93										 
94										 
95										 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
96								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
97									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
98								</#if> 
99								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
100								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
101									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
102									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
103									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
104								</#if>								 
105								<#assign categories=relatedAssetEntry.getCategories()/> 
106								<#if categories?? && categories?has_content> 
107									<#assign categorieEntry=categories[0] /> 
108								</#if> 
109								 
110								<#if categorieEntry?? && categorieEntry?has_content> 
111									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
112									<#assign imgDefault=imgDefault+".JPG"/>	 
113								<#else>	 
114									<#assign imgDefault="default.JPG"/>	 
115								</#if> 
116							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
117								<#assign imgUrl=""> 
118								 
119								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
120									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
121									<#if img_news !="" && validator.isContent(img_news)> 
122										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
123										<#assign groupId=jsonImmagine.getLong("groupId")> 
124										<#assign uuId=jsonImmagine.getString("uuid")> 
125										<#assign imgName=jsonImmagine.getString("title")> 
126										 
127										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
128									<#else> 
129										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
130									</#if> 
131								</#if> 
132										 
133							 
134										<div class="row card-news mb-4"> 
135											<div class="col-12 col-sm-4"> 
136												<div><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
137											</div> 
138											<div class="col-12 col-sm-8"> 
139												<#if categories?? && categories?has_content> 
140													<#assign categorieEntry=categories[0] /> 
141													<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
142												<#else>	 
143													<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
144												</#if> 
145												<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
146												<p class="text-chambray font-lora line-h24p mb-4">${relatedAssetEntry.getSummaryCurrentValue()}</p> 
147												<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold">  
148													 Leggi di più  
149													<span aria-hidden="true">&rarr;</span> 
150													<span class="sr-only"> 
151														Riguardo ${titolo_news} 
152													</span> 
153												</a> 
154											</div> 
155										</div> 
156						</#list> 
157					</div> 
158				<#elseif (categoryIdsArticleCurrent??) && (categoryIdsArticleCurrent?has_content)> 
159					<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
160					 
161					<#assign search = assetEntryQuery.setClassName("com.liferay.journal.model.JournalArticle")> 
162				 
163					<#assign search = assetEntryQuery.setAllCategoryIds(categoryIdsArticleCurrent)>	 
164					 
165					<#assign search = assetEntryQuery.setOrderByCol1("publishDate")> 
166					 
167					<#assign entries = assetEntryLocalService.getEntries(assetEntryQuery)> 
168					 
169					<div class="col-12 col-md-6 b-left"> 
170							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie correlate per categoria</h3> 
171					<#list entries as relatedEntry>	 
172							<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedEntry.getClassPK() ) /> 
173							<#assign renderer = relatedEntry.getAssetRenderer() > 
174							<#assign journalArticle = renderer.getArticle() > 
175							 
176					<#if (relatedEntry.getEntryId()!=asset.getEntryId()) && (article.getDDMStructureKey()==journalArticle.getDDMStructureKey())> 
177						<#if ((relatedEntry?index)<6)> 
178							<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
179							<#assign rootElement = document.document.getRootElement()  > 
180							<#assign createDate = dateUtil.getDate(journalArticle.createDate, "dd/MM/yyyy", locale)  >		 
181							 
182							 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
183								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
184									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
185								</#if> 
186								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
187								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
188									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
189									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
190									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
191								</#if> 
192								<#assign categories=relatedEntry.getCategories()/> 
193							 
194								<#if categories?? && categories?has_content> 
195									<#assign categorieEntry=categories[0] /> 
196								</#if> 
197								 
198								<#if categorieEntry?? && categorieEntry?has_content> 
199									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
200									<#assign imgDefault=imgDefault+".JPG"/>	 
201								<#else>	 
202									<#assign imgDefault="default.JPG"/>	 
203								</#if> 
204							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
205								<#assign imgUrl=""> 
206								 
207								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
208									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
209									<#if img_news !="" && validator.isContent(img_news)> 
210										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
211										<#assign groupId=jsonImmagine.getLong("groupId")> 
212										<#assign uuId=jsonImmagine.getString("uuid")> 
213										<#assign imgName=jsonImmagine.getString("title")> 
214										 
215										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
216									<#else> 
217										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault />  
218									</#if> 
219								</#if> 
220								 
221							<#assign categories=relatedEntry.getCategories() /> 
222							 
223							<div class="row card-news mb-4"> 
224								<div class="col-12 col-sm-4"> 
225										<div ><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
226								</div> 
227								<div class="col-12 col-sm-8"> 
228									<#if categories?? && categories?has_content> 
229										<#assign categorieEntry=categories[0] /> 
230										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
231									<#else>	 
232										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
233									</#if> 
234									<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
235									<p class="text-chambray font-lora line-h24p mb-4">${relatedEntry.getSummaryCurrentValue()}</p> 
236									<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold"> 
237                                        Leggi di più  
238                                        <span aria-hidden="true">&rarr;</span> 
239                                        <span class="sr-only"> 
240                                            Riguardo ${titolo_news} 
241                                        </span> 
242                                    </a> 
243								</div> 
244							</div> 
245						</#if>		 
246					</#if> 
247				 
248					</#list> 
249					</div> 
250				</#if>		 
251		</div> 
252	</div> 
253</div> 
An error occurred while processing the template.
The following has evaluated to null or missing:
==> dateArticleCurrent  [in template "20099#20135#21363" at line 37, column 242]

----
Tip: If the failing expression is known to be 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: ${dateArticleCurrent}  [in template "20099#20135#21363" at line 37, column 240]
----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
2<#assign journalArticleId = .vars['reserved-article-id'].data/> 
3<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(groupId), journalArticleId)> 
4<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', article.resourcePrimKey) > 
6<#assign categoriesArticleCurrent=asset.getCategories() /> 
7<#assign categoryIdsArticleCurrent=asset.getCategoryIds()/> 
8 
9<#assign urlCurrent = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
10<#function getUrlSocial themeDisplay socialType> 
11	<#assign url = "#" /> 
12	<#if socialType == "facebook"> 
13		<#assign url = "https://www.facebook.com/sharer/sharer.php?u=${urlCurrent}" /> 
14	<#elseif socialType == "twitter"> 
15		<#assign url = "https://twitter.com/intent/tweet?text=${urlCurrent}" /> 
16	</#if> 
17	<#return url> 
18</#function> 
19 
20<#assign data_news_Data = getterUtil.getString(data_news.getData())>  
21	<#if validator.isNotNull(data_news_Data)>  
22		<#assign data_news_DateObj = dateUtil.parseDate("yyyy-MM-dd", data_news_Data, locale) />  
23		<#assign dateArticleCurrent= dateUtil.getDate(data_news_DateObj, "dd.MM.yy", locale) /> 
24	</#if> 
25	 
26<#if categoriesArticleCurrent?? && categoriesArticleCurrent?has_content> 
27	<#assign categorieEntryCurrent=categoriesArticleCurrent[0] />   
28</#if>	 
29 
30<div class="container"> 
31	<div class="px-4 px-sm-0"> 
32		<div class="row"> 
33						<div class="col-12 col-md-6 mb-4 mb-sm-0"> 
34							<div class="card card-news"> 
35								<div class="card-body pl-1 pr-2 py-0"> 
36									<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
37										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntryCurrent.getTitle(locale)}</span> &mdash; ${dateArticleCurrent}</p> 
38									<#else>	 
39										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateArticleCurrent}</p> 
40									</#if> 
41								 
42								 
43									<h2 class="p-0 text-40p line-h48p">${titolo_news.getData()}</h2> 
44									 
45									<p class="text-28p line-h40p font-weight-600 mb-2">${asset.getSummaryCurrentValue()}</p> 
46									 
47									<#if img_news.getData()!=""> 
48										<div class="img100x mb-2"><img src="${img_news.getData()}" alt="${img_descr.getData()}"/></div> 
49									<#else> 
50										<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
51											<#assign imgDefault=categorieEntryCurrent.getName()?replace(" ","-")?lower_case/> 
52											<#assign imgDefault=imgDefault+".JPG"/>	 
53										<#else>	 
54											<#assign imgDefault="default.JPG"/>	 
55										</#if>	 
56										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
57										 
58										<div class="img100x mb-2"><img src="${imgUrl}" alt="imagine ${titolo_news.getData()}"/></div> 
59									</#if> 
60									 
61									<p class="text-chambray font-lora mb-4">${corpo.getData()} </p> 
62								</div> 
63							</div> 
64							 
65							<div class="pl-1 pl-sm-2"> 
66									<p class="text-24p text-primary"><strong>Condividi</strong> 
67										<#assign socialUrl = getUrlSocial(themeDisplay,'facebook') /> 
68										<a href="${socialUrl}" aria-label="Condividi su Facebook" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"  title="Facebook - Sito esterno" class="d-inline-block ml-3 mr-2"><span class="fab fa-facebook-square text-22p"></span></a> 
69										 
70										<#assign socialUrl = getUrlSocial(themeDisplay,'twitter') /> 
71										<a href="${socialUrl}" aria-label="Condividi su Twitter" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"title="Twitter - Sito esterno" class="d-inline-block mx-2"><span class="fab fa-twitter text-20p"></span></a> 
72									</p> 
73							</div> 
74				 
75			             </div>  
76 
77 
78			<#assign journalAssetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") />	 
79			<#assign journalArticleRelatedEntry = journalAssetLinkLocalService.getDirectLinks(asset.getEntryId()) /> 
80 
81				<#if journalArticleRelatedEntry?has_content> 
82					<div class="col-12 col-md-6 b-left"> 
83							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie Correlate</h3> 
84						 
85						<#list journalArticleRelatedEntry as relatedEntry>		 
86										<#assign relatedAssetEntryId = relatedEntry.getEntryId2() /> 
87										<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId ) /> 
88										<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedAssetEntry.getClassPK() ) /> 
89										<#assign renderer = relatedAssetEntry.getAssetRenderer() > 
90										<#assign journalArticle = renderer.getArticle() > 
91										<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
92										<#assign rootElement = document.document.getRootElement()  > 
93										 
94										 
95										 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
96								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
97									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
98								</#if> 
99								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
100								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
101									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
102									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
103									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
104								</#if>								 
105								<#assign categories=relatedAssetEntry.getCategories()/> 
106								<#if categories?? && categories?has_content> 
107									<#assign categorieEntry=categories[0] /> 
108								</#if> 
109								 
110								<#if categorieEntry?? && categorieEntry?has_content> 
111									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
112									<#assign imgDefault=imgDefault+".JPG"/>	 
113								<#else>	 
114									<#assign imgDefault="default.JPG"/>	 
115								</#if> 
116							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
117								<#assign imgUrl=""> 
118								 
119								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
120									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
121									<#if img_news !="" && validator.isContent(img_news)> 
122										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
123										<#assign groupId=jsonImmagine.getLong("groupId")> 
124										<#assign uuId=jsonImmagine.getString("uuid")> 
125										<#assign imgName=jsonImmagine.getString("title")> 
126										 
127										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
128									<#else> 
129										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
130									</#if> 
131								</#if> 
132										 
133							 
134										<div class="row card-news mb-4"> 
135											<div class="col-12 col-sm-4"> 
136												<div><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
137											</div> 
138											<div class="col-12 col-sm-8"> 
139												<#if categories?? && categories?has_content> 
140													<#assign categorieEntry=categories[0] /> 
141													<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
142												<#else>	 
143													<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
144												</#if> 
145												<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
146												<p class="text-chambray font-lora line-h24p mb-4">${relatedAssetEntry.getSummaryCurrentValue()}</p> 
147												<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold">  
148													 Leggi di più  
149													<span aria-hidden="true">&rarr;</span> 
150													<span class="sr-only"> 
151														Riguardo ${titolo_news} 
152													</span> 
153												</a> 
154											</div> 
155										</div> 
156						</#list> 
157					</div> 
158				<#elseif (categoryIdsArticleCurrent??) && (categoryIdsArticleCurrent?has_content)> 
159					<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
160					 
161					<#assign search = assetEntryQuery.setClassName("com.liferay.journal.model.JournalArticle")> 
162				 
163					<#assign search = assetEntryQuery.setAllCategoryIds(categoryIdsArticleCurrent)>	 
164					 
165					<#assign search = assetEntryQuery.setOrderByCol1("publishDate")> 
166					 
167					<#assign entries = assetEntryLocalService.getEntries(assetEntryQuery)> 
168					 
169					<div class="col-12 col-md-6 b-left"> 
170							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie correlate per categoria</h3> 
171					<#list entries as relatedEntry>	 
172							<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedEntry.getClassPK() ) /> 
173							<#assign renderer = relatedEntry.getAssetRenderer() > 
174							<#assign journalArticle = renderer.getArticle() > 
175							 
176					<#if (relatedEntry.getEntryId()!=asset.getEntryId()) && (article.getDDMStructureKey()==journalArticle.getDDMStructureKey())> 
177						<#if ((relatedEntry?index)<6)> 
178							<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
179							<#assign rootElement = document.document.getRootElement()  > 
180							<#assign createDate = dateUtil.getDate(journalArticle.createDate, "dd/MM/yyyy", locale)  >		 
181							 
182							 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
183								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
184									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
185								</#if> 
186								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
187								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
188									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
189									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
190									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
191								</#if> 
192								<#assign categories=relatedEntry.getCategories()/> 
193							 
194								<#if categories?? && categories?has_content> 
195									<#assign categorieEntry=categories[0] /> 
196								</#if> 
197								 
198								<#if categorieEntry?? && categorieEntry?has_content> 
199									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
200									<#assign imgDefault=imgDefault+".JPG"/>	 
201								<#else>	 
202									<#assign imgDefault="default.JPG"/>	 
203								</#if> 
204							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
205								<#assign imgUrl=""> 
206								 
207								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
208									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
209									<#if img_news !="" && validator.isContent(img_news)> 
210										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
211										<#assign groupId=jsonImmagine.getLong("groupId")> 
212										<#assign uuId=jsonImmagine.getString("uuid")> 
213										<#assign imgName=jsonImmagine.getString("title")> 
214										 
215										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
216									<#else> 
217										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault />  
218									</#if> 
219								</#if> 
220								 
221							<#assign categories=relatedEntry.getCategories() /> 
222							 
223							<div class="row card-news mb-4"> 
224								<div class="col-12 col-sm-4"> 
225										<div ><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
226								</div> 
227								<div class="col-12 col-sm-8"> 
228									<#if categories?? && categories?has_content> 
229										<#assign categorieEntry=categories[0] /> 
230										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
231									<#else>	 
232										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
233									</#if> 
234									<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
235									<p class="text-chambray font-lora line-h24p mb-4">${relatedEntry.getSummaryCurrentValue()}</p> 
236									<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold"> 
237                                        Leggi di più  
238                                        <span aria-hidden="true">&rarr;</span> 
239                                        <span class="sr-only"> 
240                                            Riguardo ${titolo_news} 
241                                        </span> 
242                                    </a> 
243								</div> 
244							</div> 
245						</#if>		 
246					</#if> 
247				 
248					</#list> 
249					</div> 
250				</#if>		 
251		</div> 
252	</div> 
253</div> 

Eventi — 19.05.23

ForumPA 2023: Anpal presenta la rete EURES

Il progetto EURES TMS per la libera circolazione di lavoratrici e lavoratori in Europa e  i tavoli tecnici cui ha partecipato Anpal

Si è chiusa ieri l'edizione 2023 di ForumPA. Tra gli eventi cui Anpal ha partecipato in questa edizione, anche due tavoli di lavoro: il primo si è svolto martedì 16 maggio, riservato alla community dei dirigenti e responsabili delle risorse umane, sviluppo organizzativo e formazione di PA centrali e locali: focus sullo sviluppo delle competenze, l’acquisizione di talenti e employer branding nelle pubbliche amministrazioni, attorno a due filoni: employer branding e percezione della PA ed elementi di miglioramento dell’ambiente di lavoro.
Per Anpal ha partecipato Ludovica Iarussi, dirigente della divisone 1 di Anpal. 

Giovedì 18 si è tenuto invece il tavolo Valorizzare le politiche di coesione. Comunicare l’Europa: un  confronto sui fondi strutturali tra operatori, esperti e stakeholder sul contributo della comunicazione alle sfide dei Programmi 2021-27. Per Anpal ha partecipato Orsola Fornara, responsabile della comunicazione del Pn Giovani donne lavoro

Tra gli eventi organizzati da Anpal, si è tenuto nel primo pomeriggio di ieri l’incontro Un progetto per la libera circolazione dei lavoratori in Europa: è stata l’occasione per presentare le opportunità offerte dalla rete EURES, rete di cooperazione europea dei servizi per l’impiego.

Lucilla Ricci, consigliera Eures per la Regione Lazio, ha focalizzato l’attenzione sull’importanza e i vantaggi della mobilità “necessaria a costruire un autentico spazio europeo dell’apprendimento permanente, per promuovere l’occupazione e un’attiva cittadinanza europea. La rete Eures è così concepita per facilitare la libera circolazione dei lavoratori, con servizi e strumenti dedicati e i progetti mirati di mobilità professionale in Europa, Norvegia e Islanda. Trasferirsi per studiare, lavorare e vivere all’estero consente sicuramente di accrescere le proprie competenze professionali e personali. Molteplici i vantaggi: confrontarsi con nuove culture, imparare lingue nuove, formarsi professionalmente, acquisire esperienze fortemente apprezzate dai datori di lavoro”.

Attualmente sono disponibili sul portale 4.924.628 posti di lavoro e 4.000 datori di lavoro registrati sono alla ricerca di profili tra coloro che hanno creato il cv on line.

Oltre ai servizi offerti dal portale EURES, la Commissione europea ha recentemente creato strumenti aggiuntivi, come i Job Days, fiere del lavoro online o miste (online/on site) finalizzate all'incontro tra domanda e offerta di lavoro, attraverso una piattaforma online polifunzionale.

Germana Monaldi, responsabile Anpal dell’ufficio coordinamento nazionale EURES, ha illustrato in particolare le caratteristiche di EURES TMS Targeted Mobility Scheme “un’azione che promuove la mobilità professionale in un altro Stato membro dell’Unione europea, in Norvegia e Islanda, e che aiuta i candidati in cerca di un’occupazione a trovare un’opportunità di lavoro, tirocinio o apprendistato. Allo stesso tempo, assiste i datori di lavoro nel trovare candidati motivati e qualificati”. Al 15 maggio 2023 EURES TMS conta 880 datori di lavoro, 1.888 posizioni, 4.490 candidati, 1.668 assunti.

Per saperne di più: EURES

 

Condividi

Notizie correlate per categoria

 Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Eventi — 13.12.23

Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Equità, inclusione, nuove normative e centralità della persona tra i temi discussi a Bruxelles il 16 e 17 novembre

Leggi di più Riguardo Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale
 Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Eventi — 13.12.23

Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Dal 2018 il Premio ha coinvolto quasi 250 progetti, 216 aziende e 188 partner formativi

Leggi di più Riguardo Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia
 Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

Eventi — 04.12.23

Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

L’Agenzia ha presentato Selfiemployment, il progetto imprenditoriale finanziato con fondi europei e rivolto ai Neet iscritti a Garanzia Giovani

Leggi di più Riguardo Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei
 Anpal al salone di orientamento Job&Orienta 2023

Eventi — 27.11.23

Anpal al salone di orientamento Job&Orienta 2023

Disoccupazione giovanile e mobilità internazionale tra i temi di cui si è occupata l’agenzia alla fiera svolta a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal al salone di orientamento Job&Orienta 2023
 Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

Eventi — 21.11.23

Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

La manifestazione, giunta alla 32esima edizione, si svolge a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro
 Regiostars Awards 2023, tra i vincitori anche progetti italiani

Eventi — 21.11.23

Regiostars Awards 2023, tra i vincitori anche progetti italiani

I premi sono andati alle iniziative finanziate dall’Ue che meglio hanno dimostrato l'impatto e l'inclusività dello sviluppo regionale. La cerimonia si è svolta in occasione del meeting InformUe, la rete professionale di comunicazione dei fondi europei

Leggi di più Riguardo Regiostars Awards 2023, tra i vincitori anche progetti italiani

Eventi — 18.05.23

ForumPA 2023: focus Anpal sul Piano Nazionale Giovani, Donne e Lavoro

Presentate priorità e target del nuovo programma

Promuovere il lavoro e le competenze e aggredire alcuni problemi strutturali del Paese: a questo mira il nuovo Programma nazionale Fse+ Giovani, Donne e Lavoro, approvato dalla Commissione europea e a titolarità Anpal, che prevede un investimento complessivo pari a circa 5 miliardi di euro.
 
Se ne è parlato al ForumPA 2023 in corso a Roma presso il Palazzo dei congressi, nel seminario “PN Giovani donne e lavoro: idee a confronto”. Anpal, autorità di gestione del Pn 2021-27, ha presentato le priorità e i target del nuovo programma.
 
Stefano Raia, dirigente Anpal - Coordinamento territoriale e autorità capofila Fse, nell’introdurre i lavori, ha voluto tratteggiare gli elementi essenziali del PN che “con un investimento complessivo pari a circa 5 miliardi di euro concorre all’obiettivo di un’Europa più sociale e inclusiva promuovendo il lavoro e le competenze e allo stesso tempo affrontando alcuni problemi strutturali del Paese: il grande numero di neet, la scarsa partecipazione delle donne e delle persone fragili al mercato del lavoro, la carenza di competenze digitali, le disparità nei servizi del lavoro e politica attiva erogati nel territorio nazionale”.
 
Pietro Ferlito, dirigente Anpal - Autorità di gestione del Programma, ha sottolineato come il PN sia “complementare a Gol – Garanzia di occupabilità dei lavoratori, la riforma Pnrr per riqualificare i servizi del lavoro: mentre Gol accoglie in via preferenziale chi beneficia di sostegni al reddito, il PN serve tutti gli altri puntando in termini di priorità a precisi obiettivi: facilitare l’ingresso al lavoro dei giovani, favorire il lavoro delle donne e delle persone vulnerabili, formare nuove competenze di lavoratori nel digitale e nelle transizioni ecologiche, modernizzare i servizi per il lavoro e le politiche attive. Il PN fa anche tesoro dell’esperienza maturata con il Programma operativo IOG, dedicato a Garanzia Giovani e riconosce un ruolo fondamentale alle Regioni quali orgsnismo intermedi deputati a realizzare e a contestualizzare gli interventi previsti”.

Paola Stocco, responsabile per Anpal della Struttura di ricerca e consulenza tecnico-scientifica, si è soffermata sulla Priorità 1 del PN, l’occupazione giovanile, che grazie una dotazione finanziaria di 2,8 miliardi di euro (55% dell’intero Programma), persegue l’obiettivo di “migliorare l’accesso all’occupazione e le misure di attivazione per tutte le persone in cerca di lavoro in particolare i giovani, soprattutto attraverso l’attuazione della garanzia per i giovani, i disoccupati di lungo periodo e i gruppi svantaggiati nel mercato del lavoro, nonché delle persone inattive, anche mediante la promozione del lavoro autonomo e dell’economia sociale”.

Elena Murtas, ricercatrice Anpal, si è invece concentrata sulla Priorità 2 del PN, donne e persone vulnerabili, precisando come il PN “contribuisca al raggiungimento dell’obiettivo UE per il 2030, 78% di occupati nella popolazione tra i 20 e i 64 anni, e allo stesso tempo risponda alla Raccomandazione UE all’Italia del 2019 sulla partecipazione delle donne al mercato del lavoro, prevedendo il coinvolgimento di determinate categorie di destinatarie: donne inattive, donne inoccupate, donne disoccupate anche di lunga durata, donne in condizioni di fragilità quali vittime di violenza, con disabilità, immigrate”.

Lucilla Di Rico, ricercatrice Anpal, ha focalizzato l’attenzione sulla Priorità 3 del PN, nuove competenze per la transizione digitale e verde, che intende “promuovere l’adattamento ai cambiamenti dei lavoratori, delle imprese, degli imprenditori, un invecchiamento attivo e sano, ambienti di lavoro sani e adeguati che tengano conto dei rischi della salute. L’obiettivo è, in linea con il Piano Nuove Competenze, quello di sviluppare le competenze necessarie a fronteggiare le transizioni tecnologiche, ecologiche e digitali ed i processi di riorganizzazione produttiva indotti dalla pandemia, a tutti i livelli del sistema di istruzione e formazione e in raccordo con le imprese e i servizi per il lavoro”.

Per saperne di più vai alla pagina dedicata al PN sul portale

Condividi

Notizie correlate per categoria

 Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Eventi — 13.12.23

Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Equità, inclusione, nuove normative e centralità della persona tra i temi discussi a Bruxelles il 16 e 17 novembre

Leggi di più Riguardo Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale
 Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Eventi — 13.12.23

Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Dal 2018 il Premio ha coinvolto quasi 250 progetti, 216 aziende e 188 partner formativi

Leggi di più Riguardo Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia
 Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

Eventi — 04.12.23

Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

L’Agenzia ha presentato Selfiemployment, il progetto imprenditoriale finanziato con fondi europei e rivolto ai Neet iscritti a Garanzia Giovani

Leggi di più Riguardo Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei
 Anpal al salone di orientamento Job&Orienta 2023

Eventi — 27.11.23

Anpal al salone di orientamento Job&Orienta 2023

Disoccupazione giovanile e mobilità internazionale tra i temi di cui si è occupata l’agenzia alla fiera svolta a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal al salone di orientamento Job&Orienta 2023
 Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

Eventi — 21.11.23

Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

La manifestazione, giunta alla 32esima edizione, si svolge a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro
 Regiostars Awards 2023, tra i vincitori anche progetti italiani

Eventi — 21.11.23

Regiostars Awards 2023, tra i vincitori anche progetti italiani

I premi sono andati alle iniziative finanziate dall’Ue che meglio hanno dimostrato l'impatto e l'inclusività dello sviluppo regionale. La cerimonia si è svolta in occasione del meeting InformUe, la rete professionale di comunicazione dei fondi europei

Leggi di più Riguardo Regiostars Awards 2023, tra i vincitori anche progetti italiani

Eventi — 29.05.23

Forum PA 2023, disponibili i video dei due seminari Anpal

L’Agenzia ha partecipato con due eventi dedicati rispettivamente al Pn Giovani donne e lavoro e alla mobilità professionale di EURES

Sono disponibili su canale YouTube di ForumPA le registrazioni integrali dei due eventi promossi da Anpal nell’edizione 2023 di ForumPA, entrambi svoltisi il 18 maggio: 

  • il seminario PN Giovani donne e lavoro: idee a confronto, dove l’autorità di gestione Anpal del Pn 2021-27 ha presentato le priorità e i target del nuovo programma e ha aperto al dialogo con stakeholders, istituzionali e non;
  • il seminario Come lavorare in Europa: progetti e strumenti dalla rete EURES, dedicato alla rete Eures per la mobilità professionale in Europa e al progetto EURES TMS.

Guarda il video del seminario PN Giovani donne e lavoro: idee a confronto
Guarda il video del seminario Come lavorare in Europa: progetti e strumenti dalla rete EURES

Condividi

Notizie correlate per categoria

 Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Eventi — 13.12.23

Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale

Equità, inclusione, nuove normative e centralità della persona tra i temi discussi a Bruxelles il 16 e 17 novembre

Leggi di più Riguardo Forum europeo per l'occupazione e i diritti sociali 2023. Garantire i diritti dei lavoratori nell’era dell’intelligenza artificiale
 Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Eventi — 13.12.23

Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia

Dal 2018 il Premio ha coinvolto quasi 250 progetti, 216 aziende e 188 partner formativi

Leggi di più Riguardo Eccellenza duale, premiati anche quest’anno i migliori progetti di formazione in Italia
 Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

Eventi — 04.12.23

Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei

L’Agenzia ha presentato Selfiemployment, il progetto imprenditoriale finanziato con fondi europei e rivolto ai Neet iscritti a Garanzia Giovani

Leggi di più Riguardo Inform Eu, Anpal a Ostrava per il meeting della rete di comunicazione dei fondi europei
 Anpal al salone di orientamento Job&Orienta 2023

Eventi — 27.11.23

Anpal al salone di orientamento Job&Orienta 2023

Disoccupazione giovanile e mobilità internazionale tra i temi di cui si è occupata l’agenzia alla fiera svolta a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal al salone di orientamento Job&Orienta 2023
 Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

Eventi — 21.11.23

Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro

La manifestazione, giunta alla 32esima edizione, si svolge a Verona dal 22 al 25 novembre

Leggi di più Riguardo Anpal è presente a Job&Orienta 2023, il salone nazionale dell’orientamento, scuola, formazione e lavoro
 Regiostars Awards 2023, tra i vincitori anche progetti italiani

Eventi — 21.11.23

Regiostars Awards 2023, tra i vincitori anche progetti italiani

I premi sono andati alle iniziative finanziate dall’Ue che meglio hanno dimostrato l'impatto e l'inclusività dello sviluppo regionale. La cerimonia si è svolta in occasione del meeting InformUe, la rete professionale di comunicazione dei fondi europei

Leggi di più Riguardo Regiostars Awards 2023, tra i vincitori anche progetti italiani
An error occurred while processing the template.
The following has evaluated to null or missing:
==> dateArticleCurrent  [in template "20099#20135#21363" at line 37, column 242]

----
Tip: If the failing expression is known to be 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: ${dateArticleCurrent}  [in template "20099#20135#21363" at line 37, column 240]
----
1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
2<#assign journalArticleId = .vars['reserved-article-id'].data/> 
3<#assign article = journalArticleLocalService.getArticle(getterUtil.getLong(groupId), journalArticleId)> 
4<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
5<#assign asset = assetEntryLocalService.getEntry('com.liferay.journal.model.JournalArticle', article.resourcePrimKey) > 
6<#assign categoriesArticleCurrent=asset.getCategories() /> 
7<#assign categoryIdsArticleCurrent=asset.getCategoryIds()/> 
8 
9<#assign urlCurrent = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() /> 
10<#function getUrlSocial themeDisplay socialType> 
11	<#assign url = "#" /> 
12	<#if socialType == "facebook"> 
13		<#assign url = "https://www.facebook.com/sharer/sharer.php?u=${urlCurrent}" /> 
14	<#elseif socialType == "twitter"> 
15		<#assign url = "https://twitter.com/intent/tweet?text=${urlCurrent}" /> 
16	</#if> 
17	<#return url> 
18</#function> 
19 
20<#assign data_news_Data = getterUtil.getString(data_news.getData())>  
21	<#if validator.isNotNull(data_news_Data)>  
22		<#assign data_news_DateObj = dateUtil.parseDate("yyyy-MM-dd", data_news_Data, locale) />  
23		<#assign dateArticleCurrent= dateUtil.getDate(data_news_DateObj, "dd.MM.yy", locale) /> 
24	</#if> 
25	 
26<#if categoriesArticleCurrent?? && categoriesArticleCurrent?has_content> 
27	<#assign categorieEntryCurrent=categoriesArticleCurrent[0] />   
28</#if>	 
29 
30<div class="container"> 
31	<div class="px-4 px-sm-0"> 
32		<div class="row"> 
33						<div class="col-12 col-md-6 mb-4 mb-sm-0"> 
34							<div class="card card-news"> 
35								<div class="card-body pl-1 pr-2 py-0"> 
36									<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
37										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntryCurrent.getTitle(locale)}</span> &mdash; ${dateArticleCurrent}</p> 
38									<#else>	 
39										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateArticleCurrent}</p> 
40									</#if> 
41								 
42								 
43									<h2 class="p-0 text-40p line-h48p">${titolo_news.getData()}</h2> 
44									 
45									<p class="text-28p line-h40p font-weight-600 mb-2">${asset.getSummaryCurrentValue()}</p> 
46									 
47									<#if img_news.getData()!=""> 
48										<div class="img100x mb-2"><img src="${img_news.getData()}" alt="${img_descr.getData()}"/></div> 
49									<#else> 
50										<#if categorieEntryCurrent?? && categorieEntryCurrent?has_content> 
51											<#assign imgDefault=categorieEntryCurrent.getName()?replace(" ","-")?lower_case/> 
52											<#assign imgDefault=imgDefault+".JPG"/>	 
53										<#else>	 
54											<#assign imgDefault="default.JPG"/>	 
55										</#if>	 
56										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
57										 
58										<div class="img100x mb-2"><img src="${imgUrl}" alt="imagine ${titolo_news.getData()}"/></div> 
59									</#if> 
60									 
61									<p class="text-chambray font-lora mb-4">${corpo.getData()} </p> 
62								</div> 
63							</div> 
64							 
65							<div class="pl-1 pl-sm-2"> 
66									<p class="text-24p text-primary"><strong>Condividi</strong> 
67										<#assign socialUrl = getUrlSocial(themeDisplay,'facebook') /> 
68										<a href="${socialUrl}" aria-label="Condividi su Facebook" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"  title="Facebook - Sito esterno" class="d-inline-block ml-3 mr-2"><span class="fab fa-facebook-square text-22p"></span></a> 
69										 
70										<#assign socialUrl = getUrlSocial(themeDisplay,'twitter') /> 
71										<a href="${socialUrl}" aria-label="Condividi su Twitter" target="_blank" onclick="javascript:window.open(this.href, '', 'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=400,width=600');return false;"title="Twitter - Sito esterno" class="d-inline-block mx-2"><span class="fab fa-twitter text-20p"></span></a> 
72									</p> 
73							</div> 
74				 
75			             </div>  
76 
77 
78			<#assign journalAssetLinkLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetLinkLocalService") />	 
79			<#assign journalArticleRelatedEntry = journalAssetLinkLocalService.getDirectLinks(asset.getEntryId()) /> 
80 
81				<#if journalArticleRelatedEntry?has_content> 
82					<div class="col-12 col-md-6 b-left"> 
83							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie Correlate</h3> 
84						 
85						<#list journalArticleRelatedEntry as relatedEntry>		 
86										<#assign relatedAssetEntryId = relatedEntry.getEntryId2() /> 
87										<#assign relatedAssetEntry = assetEntryLocalService.getEntry(relatedAssetEntryId ) /> 
88										<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedAssetEntry.getClassPK() ) /> 
89										<#assign renderer = relatedAssetEntry.getAssetRenderer() > 
90										<#assign journalArticle = renderer.getArticle() > 
91										<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
92										<#assign rootElement = document.document.getRootElement()  > 
93										 
94										 
95										 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
96								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
97									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
98								</#if> 
99								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
100								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
101									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
102									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
103									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
104								</#if>								 
105								<#assign categories=relatedAssetEntry.getCategories()/> 
106								<#if categories?? && categories?has_content> 
107									<#assign categorieEntry=categories[0] /> 
108								</#if> 
109								 
110								<#if categorieEntry?? && categorieEntry?has_content> 
111									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
112									<#assign imgDefault=imgDefault+".JPG"/>	 
113								<#else>	 
114									<#assign imgDefault="default.JPG"/>	 
115								</#if> 
116							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
117								<#assign imgUrl=""> 
118								 
119								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
120									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
121									<#if img_news !="" && validator.isContent(img_news)> 
122										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
123										<#assign groupId=jsonImmagine.getLong("groupId")> 
124										<#assign uuId=jsonImmagine.getString("uuid")> 
125										<#assign imgName=jsonImmagine.getString("title")> 
126										 
127										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
128									<#else> 
129										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault /> 
130									</#if> 
131								</#if> 
132										 
133							 
134										<div class="row card-news mb-4"> 
135											<div class="col-12 col-sm-4"> 
136												<div><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
137											</div> 
138											<div class="col-12 col-sm-8"> 
139												<#if categories?? && categories?has_content> 
140													<#assign categorieEntry=categories[0] /> 
141													<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
142												<#else>	 
143													<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
144												</#if> 
145												<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
146												<p class="text-chambray font-lora line-h24p mb-4">${relatedAssetEntry.getSummaryCurrentValue()}</p> 
147												<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold">  
148													 Leggi di più  
149													<span aria-hidden="true">&rarr;</span> 
150													<span class="sr-only"> 
151														Riguardo ${titolo_news} 
152													</span> 
153												</a> 
154											</div> 
155										</div> 
156						</#list> 
157					</div> 
158				<#elseif (categoryIdsArticleCurrent??) && (categoryIdsArticleCurrent?has_content)> 
159					<#assign assetEntryQuery = objectUtil('com.liferay.asset.kernel.service.persistence.AssetEntryQuery')> 
160					 
161					<#assign search = assetEntryQuery.setClassName("com.liferay.journal.model.JournalArticle")> 
162				 
163					<#assign search = assetEntryQuery.setAllCategoryIds(categoryIdsArticleCurrent)>	 
164					 
165					<#assign search = assetEntryQuery.setOrderByCol1("publishDate")> 
166					 
167					<#assign entries = assetEntryLocalService.getEntries(assetEntryQuery)> 
168					 
169					<div class="col-12 col-md-6 b-left"> 
170							<h3 class="pt-0 text-24p ml-2 mb-2">Notizie correlate per categoria</h3> 
171					<#list entries as relatedEntry>	 
172							<#assign relatedJournalArticle = journalArticleLocalService.getLatestArticle( relatedEntry.getClassPK() ) /> 
173							<#assign renderer = relatedEntry.getAssetRenderer() > 
174							<#assign journalArticle = renderer.getArticle() > 
175							 
176					<#if (relatedEntry.getEntryId()!=asset.getEntryId()) && (article.getDDMStructureKey()==journalArticle.getDDMStructureKey())> 
177						<#if ((relatedEntry?index)<6)> 
178							<#assign document = saxReaderUtil.read(journalArticle.getContentByLocale(themeDisplayLocale))  > 
179							<#assign rootElement = document.document.getRootElement()  > 
180							<#assign createDate = dateUtil.getDate(journalArticle.createDate, "dd/MM/yyyy", locale)  >		 
181							 
182							 <#assign xPathSelectorTitoloNews = saxReaderUtil.createXPath("dynamic-element[@name='titolo_news']")  >	 
183								<#if xPathSelectorTitoloNews.selectSingleNode(rootElement)?has_content> 
184									<#assign titolo_news = xPathSelectorTitoloNews.selectSingleNode(rootElement).getStringValue()  > 
185								</#if> 
186								<#assign xPathSelectorData= saxReaderUtil.createXPath("dynamic-element[@name='data_news']")  >	 
187								<#if xPathSelectorData.selectSingleNode(rootElement)?has_content> 
188									<#assign data_news = xPathSelectorData.selectSingleNode(rootElement).getStringValue()  > 
189									<#assign dateNewsObj = dateUtil.parseDate("yyyy-MM-dd", data_news?trim, locale)> 
190									<#assign dateRelatedArticle= dateUtil.getDate(dateNewsObj, "dd.MM.yy", locale) /> 
191								</#if> 
192								<#assign categories=relatedEntry.getCategories()/> 
193							 
194								<#if categories?? && categories?has_content> 
195									<#assign categorieEntry=categories[0] /> 
196								</#if> 
197								 
198								<#if categorieEntry?? && categorieEntry?has_content> 
199									<#assign imgDefault=categorieEntry.getName()?replace(" ","-")?lower_case/> 
200									<#assign imgDefault=imgDefault+".JPG"/>	 
201								<#else>	 
202									<#assign imgDefault="default.JPG"/>	 
203								</#if> 
204							<#assign xPathSelectorImmagine = saxReaderUtil.createXPath("dynamic-element[@name='img_news']")  > 
205								<#assign imgUrl=""> 
206								 
207								<#if xPathSelectorImmagine.selectSingleNode(rootElement)?has_content> 
208									<#assign img_news = xPathSelectorImmagine.selectSingleNode(rootElement).getStringValue()  > 
209									<#if img_news !="" && validator.isContent(img_news)> 
210										<#assign jsonImmagine=jsonFactoryUtil.createJSONObject(img_news)> 
211										<#assign groupId=jsonImmagine.getLong("groupId")> 
212										<#assign uuId=jsonImmagine.getString("uuid")> 
213										<#assign imgName=jsonImmagine.getString("title")> 
214										 
215										<#assign imgUrl = "/documents/"+groupId+"/"+0+"/"+imgName+"/"+uuId />	 
216									<#else> 
217										<#assign imgUrl = "/documents/"+themeDisplay.getLayout().getGroupId()+"/"+586348+"/"+imgDefault />  
218									</#if> 
219								</#if> 
220								 
221							<#assign categories=relatedEntry.getCategories() /> 
222							 
223							<div class="row card-news mb-4"> 
224								<div class="col-12 col-sm-4"> 
225										<div ><img alt="${titolo_news}" src="${imgUrl}" class=" w-100 ml-sm-2 mb-2"></div> 
226								</div> 
227								<div class="col-12 col-sm-8"> 
228									<#if categories?? && categories?has_content> 
229										<#assign categorieEntry=categories[0] /> 
230										<p class="text-primary text-14p text-spacing font-weight-bold mb-2"><span class="category uppercase"> ${categorieEntry.getTitle(locale)}</span> &mdash; ${dateRelatedArticle}</p> 
231									<#else>	 
232										<p class="text-primary text-14p text-spacing font-weight-bold mb-2">${dateRelatedArticle}</p> 
233									</#if> 
234									<p class="text-28p line-h40p font-weight-600 mb-2">${titolo_news}</p> 
235									<p class="text-chambray font-lora line-h24p mb-4">${relatedEntry.getSummaryCurrentValue()}</p> 
236									<a href="${relatedJournalArticle.getUrlTitle()}" class="text-14p font-weight-bold"> 
237                                        Leggi di più  
238                                        <span aria-hidden="true">&rarr;</span> 
239                                        <span class="sr-only"> 
240                                            Riguardo ${titolo_news} 
241                                        </span> 
242                                    </a> 
243								</div> 
244							</div> 
245						</#if>		 
246					</#if> 
247				 
248					</#list> 
249					</div> 
250				</#if>		 
251		</div> 
252	</div> 
253</div>