1<#import "${templatesPath}/MDP-TPL-UTILS" as tplUtils />
2
3<#-- Services -->
4<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.service.LayoutLocalService")
5 />
6
7<#-- Variables -->
8<#assign jaClassNameId = portalUtil.getClassNameId("com.liferay.portlet.journal.model.JournalArticle")
9 layoutTemplate = themeDisplay.getLayout().getTypeSettingsProperty('layout-template-id')
10 cssClassMdpContainer = ""
11 />
12
13<#if layoutTemplate == "mdp-right-sidebar">
14 <#assign cssClassMdpContainer = "mdp-container--6"/>
15<#elseif layoutTemplate == "mdp-one-column">
16 <#assign cssClassMdpContainer = "mdp-container--10"/>
17</#if>
18
19<#if entries?has_content>
20 <div class="mdp-container ${cssClassMdpContainer}">
21 <#list entries as entry>
22 <#if entry.getClassNameId() == jaClassNameId>
23
24 <#assign assetRenderer = entry.getAssetRenderer()
25 journalArticle = assetRenderer.getArticle()
26 docXml = saxReaderUtil.read(journalArticle.getContent())
27 immagine = docXml.valueOf("//dynamic-element[@name='Immagine']/dynamic-content[@language-id='${locale}']/text()")
28 titolo = docXml.valueOf("//dynamic-element[@name='Titolo']/dynamic-content[@language-id='${locale}']/text()")
29 abstract = docXml.valueOf("//dynamic-element[@name='Abstract']/dynamic-content[@language-id='${locale}']/text()")
30 testo = docXml.valueOf("//dynamic-element[@name='Testo']/dynamic-content[@language-id='${locale}']/text()")
31 link = docXml.valueOf("//dynamic-element[@name='Link']/dynamic-content[@language-id='${locale}']/text()")
32 />
33
34 <#if link?? && validator.isNotNull(link)>
35 <#assign linkLayoutId = getterUtil.getLong(link?substring(0,link?index_of('@')))
36 linkedPageLayout = layoutLocalService.getLayout(groupId, false, linkLayoutId)
37 viewURL = linkedPageLayout.getFriendlyURL(locale)
38 />
39 <#else>
40 <#assign viewURL = assetPublisherHelper.getAssetViewURL(renderRequest, renderResponse, entry) />
41 <#if (assetLinkBehavior != 'showFullContent')>
42 <#assign viewURL = assetRenderer.getURLViewInContext(renderRequest, renderResponse, viewURL)/>
43 </#if>
44 </#if>
45
46 <#if titolo?? && validator.isNotNull(titolo)>
47 <article class="box-article d-flex">
48 <#if validator.isNotNull(immagine)>
49 <figure class="box-article__fig">
50 <#if validator.isNotNull(link) >
51 <a <#if validator.isNotNull(viewURL)> href="${viewURL}"</#if> title="${titolo}" class="box-article__link">
52
53 <img src="${immagine}" alt="${titolo}" class="box-article__img">
54 </a>
55 <#else>
56 <img src="${immagine}" alt="${titolo}" class="box-article__img">
57 </#if>
58 </figure>
59 </#if>
60 <div class="box-article__content">
61 <h3 class="box-article__title">
62 <#if validator.isNotNull(link) >
63 <a href="${themeDisplay.getURLPortal()}/${locale}${viewURL}" title="${titolo}" class="box-article__link">${titolo}</a>
64 <#elseif validator.isNotNull(testo)>
65 <a href="${viewURL}" title="${titolo}" class="box-article__link">${titolo}</a>
66 <#else>
67 ${titolo}
68 </#if>
69 </h3>
70 <#if abstract?? && validator.isNotNull(abstract)>
71 <div class="box-article__abstract">
72 <p>${abstract}</p>
73 </div>
74 </#if>
75 </div>
76 </article>
77 </#if>
78 </#if>
79 </#list>
80 </div>
81</#if>