1<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")/>
2<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService")/>
3<#assign classNameLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.ClassNameLocalService")/>
4<#assign layoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")>
5<#assign expandoValueLocalServiceUtil = staticUtil["com.liferay.expando.kernel.service.ExpandoValueLocalServiceUtil"]>
6<#assign breadcrumbUtil = staticUtil["com.liferay.site.navigation.taglib.servlet.taglib.util.BreadcrumbUtil"]>
7
8<#-- tratamiento de la ruta de navegacion para los contenidos, de manera que el titulo mostrado sea el del propio contenido capitalizado -->
9<#assign journalClassName = classNameLocalService.fetchClassName("com.liferay.journal.model.JournalArticle")>
10<#assign currentURL = themeDisplay.getURLCurrent() />
11<#assign articleFriendlyUrl = currentURL?substring(currentURL?last_index_of("/")+1,currentURL?length)?keep_before("?") />
12<#if currentURL?contains("/-/") || currentURL?contains("/w/")>
13 <#assign currentArticle = journalArticleLocalService.fetchArticleByUrlTitle(groupId, articleFriendlyUrl) />
14 <#assign currentEntry = assetEntryLocalService.fetchEntry(journalClassName.getClassNameId(), currentArticle.getResourcePrimKey()) />
15 <#assign titleCurrentEntry = currentEntry.getTitle(locale) />
16</#if>
17<#assign indexMax = entries?size - 1 />
18<#assign homeTitle = "${languageUtil.get(locale, 'home')}" />
19
20<#-- tratamiento de la ruta de la home privada -->
21<#assign urlHome = themeDisplay.getURLHome() />
22<#attempt>
23 <#if themeDisplay?has_content>
24 <#if themeDisplay.getLayout().isPrivateLayout() >
25 <#assign urlHome = "/group/fiscal" />
26 </#if>
27 </#if>
28<#recover>
29</#attempt>
30<#-- fin de tratamiento de la ruta de la home privada -->
31
32<div class="mj-breadcrumbs">
33 <ul class="mj-breadcrumbs__nav">
34 <#if entries?has_content>
35 <#if layout.getExpandoBridge().hasAttribute("parentLayoutFriendlyURL")>
36 <#attempt>
37 <#assign parentLayoutFriendlyURL = layout.getExpandoBridge().getAttribute("parentLayoutFriendlyURL", false) />
38 <#if parentLayoutFriendlyURL?has_content>
39 <#assign parentLayout = layoutLocalService.fetchLayoutByFriendlyURL(themeDisplay.getScopeGroupId(), false, parentLayoutFriendlyURL)/>
40 <#assign themeDisplayClone = themeDisplay.clone() />
41 <#assign temp = themeDisplayClone.setLayout(parentLayout) />
42 <#assign parentEntries = breadcrumbUtil.getLayoutBreadcrumbEntries(request, themeDisplayClone) />
43 <#assign entries = parentEntries + entries />
44 </#if>
45 <#recover>
46 </#attempt>
47 </#if>
48
49 <#if !entry.getURL()?contains("/inicio")>
50 <li class="mj-breadcrumbs__item">
51 <a class="mj-breadcrumbs__link" href="${urlHome}" title='${languageUtil.format(locale, "go-to-x", homeTitle, false)}'>
52 <span class="hide-accessible sr-only">${customSanitizerUtil.sanitizedField(themeDisplay.getLayout(), themeDisplay.getUserId(), entry.getTitle())}</span>
53 </a>
54 </li>
55 </#if>
56
57 <#list entries as entry>
58 <#assign companyId = themeDisplay.getCompanyId()>
59 <#assign className = "com.liferay.portal.kernel.model.Layout">
60 <#assign tableName = "CUSTOM_FIELDS">
61 <#assign columnName = "showInBreadcrumb">
62 <#if entry.getBaseModel()??>
63 <#assign classPK = entry.getBaseModel().getPlid()>
64 <#assign currentLayout = layoutLocalService.getLayout(classPK)/>
65
66 <#if expandoValueLocalServiceUtil.getValue(companyId, className, tableName, columnName, classPK)??>
67 <#assign expandoValue = expandoValueLocalServiceUtil.getValue(companyId, className, tableName, columnName, classPK)>
68 <#if expandoValue.getBoolean()>
69 <li class="mj-breadcrumbs__item">
70 <#if entry?has_next && !currentLayout.hidden >
71 <a class="mj-breadcrumbs__link" <#if entry.isBrowsable()>href="${entry.getURL()!''}"</#if> title="${htmlUtil.escape(entry.getTitle())}">
72 <span class="breadcrumb-text-truncate">${htmlUtil.escape(entry.getTitle())}</span>
73 </a>
74 </li>
75 <#else>
76 <#if titleCurrentEntry?has_content>
77 <span class="active breadcrumb-text-truncate" title="${htmlUtil.escape(entry.getTitle())}" aria-current="page">${htmlUtil.escape(titleCurrentEntry?lower_case?capitalize)}</span>
78 <#else>
79 <span class="active breadcrumb-text-truncate" title="${htmlUtil.escape(entry.getTitle())}" aria-current="page">${htmlUtil.escape(entry.getTitle())}</span>
80 </#if>
81 </li>
82 </#if>
83 </#if>
84 <#else>
85 <li class="mj-breadcrumbs__item">
86 <a class="mj-breadcrumbs__link" <#if entry.isBrowsable()>href="${entry.getURL()!''}"</#if> title="${htmlUtil.escape(entry.getTitle())}">
87 <span class="breadcrumb-text-truncate" title="${htmlUtil.escape(entry.getTitle())}">${htmlUtil.escape(entry.getTitle())}</span>
88 </a>
89 </li>
90 </#if>
91 </#if>
92 </#list>
93 </#if>
94 </ul>
95</div>