1<#assign numNews = 3 />
2<#assign urlNewsDetail = getterUtil.getString(themeDisplay.getThemeSetting("url-news-detail"))/>
3
4<#assign jsonFactoryUtil = staticUtil["com.liferay.portal.kernel.json.JSONFactoryUtil"] />
5<#assign dlAppLocalServiceUtil = staticUtil["com.liferay.document.library.kernel.service.DLAppLocalServiceUtil"] />
6<#assign dlUtil = staticUtil["com.liferay.document.library.kernel.util.DLUtil"] />
7<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext()>
8<#assign dlAppServiceUtil = serviceLocator.findService("com.liferay.document.library.kernel.service.DLAppService") />
9<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService") />
10<#assign journalArticleResourceLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleResourceLocalService") />
11<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") />
12<#assign themeDisplay = serviceContext.getThemeDisplay() />
13<#assign targetLayout = layoutLocalService.fetchLayoutByFriendlyURL(groupId, false, urlNewsDetail) />
14<#assign layoutPortlets = targetLayout.getLayoutType().getAllPortlets() />
15<#assign publisherInstanceId = "" />
16<#list layoutPortlets as portletInstance>
17 <#if portletInstance.getPortletName() == "com_liferay_asset_publisher_web_portlet_AssetPublisherPortlet">
18 <#assign publisherInstanceId = portletInstance.getInstanceId() />
19 </#if>
20</#list>
21
22<#assign xPathTituloSelector = saxReaderUtil.createXPath("dynamic-element[@name='titulo']/dynamic-content[@language-id='" + locale + "']") />
23<#assign xPathImagenSelector = saxReaderUtil.createXPath("dynamic-element[@name='imagen']/dynamic-content[@language-id='" + locale + "']") />
24
25<#assign itemsCounter = 0 />
26<#if entries?has_content>
27 <div class="relacionado">
28 <div class="container">
29 <div class="row">
30 <div class="col-md-12 mb-4">
31 <h3 class="text-center">Te puede interesar</h3>
32 </div>
33 <#list entries as curEntry>
34 <#if itemsCounter < numNews>
35 <#assign renderer = curEntry.getAssetRenderer() />
36 <#assign className = renderer.getClassName() />
37 <#if className == "com.liferay.journal.model.JournalArticle">
38 <#assign journalArticle = renderer.getArticle() />
39 <#assign document = saxReaderUtil.read(journalArticle.getContent()) />
40 <#assign rootElement = document.getRootElement() />
41
42 <#if xPathTituloSelector.selectSingleNode(rootElement)??>
43 <#assign titulo = xPathTituloSelector.selectSingleNode(rootElement).getStringValue() />
44 <#else>
45 <#assign titulo = "" />
46 </#if>
47 <#if xPathImagenSelector.selectSingleNode(rootElement)??>
48 <#assign imagen = xPathImagenSelector.selectSingleNode(rootElement).getStringValue() />
49 <#else>
50 <#assign imagen = "" />
51 </#if>
52
53 <#assign articleResourcePK = journalArticleResourceLocalService.getArticleResourcePrimKey(groupId, journalArticle.getArticleId()) />
54 <#assign assetEntry = assetEntryLocalService.getEntry("com.liferay.journal.model.JournalArticle", articleResourcePK) />
55 <#assign detailUrl = portalUtil.getLayoutFullURL(targetLayout, themeDisplay) + "/-/asset_publisher/" + publisherInstanceId + "/content/id/" + assetEntry.getEntryId() + "/" + journalArticle.getUrlTitle() />
56
57 <div class="col-sm-4 margin-bottom-40">
58 <div class="caja_img">
59 <#if imagen?? && imagen != "">
60 <#assign jsonDlFileEntry = jsonFactoryUtil.createJSONObject(imagen) />
61 <#assign fileEntry = dlAppLocalServiceUtil.getFileEntryByUuidAndGroupId(jsonDlFileEntry.getString("uuid"), jsonDlFileEntry.getString("groupId")?number) />
62 <#assign viewURL = dlUtil.getDownloadURL(fileEntry, fileEntry.getLatestFileVersion(true), themeDisplay, "") />
63 <img data-fileentryid="${jsonDlFileEntry.getString("fileEntryId")}" alt="${jsonDlFileEntry.getString("alt")}" src="${viewURL}" style="width:100%"/>
64 </#if>
65 </div>
66 <div>
67 <a href="${detailUrl}" title="${titulo}">${titulo}</a>
68 </div>
69 </div>
70 </#if>
71 <#assign itemsCounter = itemsCounter + 1 />
72 </#if>
73 </#list>
74 </div>
75 </div>
76 </div>
77</#if>