Plan de Site
Une erreur s'est produite lors du traitement du gabarit.
The following has evaluated to null or missing: ==> LayoutLocalService.fetchLayout(tmpRoot.getGroupId(),false, tmpRoot.getParentLayoutId()) [in template "10131#10164#203661784" at line 7, column 24] ---- 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: #assign theLayout = LayoutLocalServic... [in template "10131#10164#203661784" at line 7, column 3] ----
1<#assign testUserCustomTitle = portletPreferences["portletSetupUseCustomTitle"]!"false" />
2
3<#assign titleUrl = "/informazioni" >
4<#if entries?has_content>
5 <#assign tmpRoot = entries?first >
6 <#assign LayoutLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutLocalService")>
7 <#assign theLayout = LayoutLocalService.fetchLayout(tmpRoot.getGroupId(),false, tmpRoot.getParentLayoutId())>
8 <#assign layoutTypeRoot = theLayout.getLayoutType() />
9 <#if layoutTypeRoot.isBrowsable()>
10 <#assign titleUrl = portalUtil.getLayoutURL(theLayout, themeDisplay)/>
11 </#if>
12</#if>
13
14
15<#if testUserCustomTitle[0] == 'true' >
16 <#assign customTitleValue = portletPreferences["portletSetupTitle_it_IT"] />
17 <a href="${titleUrl}" class="titleInformazioni">${customTitleValue[0]}</a>
18</#if>
19
20<#if entries?has_content>
21 <@liferay_aui.row>
22 <ul class="site-map-internal-public child-pages">
23 <#-- lista per voce menu selezionata -->
24 <#list entries as entry>
25 <#if !entry.isHidden()>
26 <#assign theCalledURL = currentURL?split("?")?first >
27 <#if theCalledURL == entry.getRegularURL(request) || hasChildLayoutSelected(theCalledURL, entry.getChildren(permissionChecker))>
28 <#if layoutPermission.containsWithoutViewableGroup(permissionChecker, entry, "VIEW")>
29 <div class="results-header">
30 <i class="material-icons">
31 keyboard_arrow_right
32 </i>
33 <h6>
34 <#assign layoutType = entry.getLayoutType() />
35 <a
36 <#if layoutType.isBrowsable()>
37 href="${portalUtil.getLayoutURL(entry, themeDisplay)}" target="${entry.getTarget()}"
38 </#if>
39 >${entry.getName(locale)}</a>
40 </h6>
41 </div>
42
43 <@displayPages
44 depth=1
45 pages=entry.getChildren(permissionChecker)
46 theCalledURL=theCalledURL
47 />
48 </#if>
49 </#if>
50 </#if>
51 </#list>
52 <#-- lista per voce menu NON selezionata -->
53 <#list entries as entry>
54 <#if !entry.isHidden()>
55 <#assign theCalledURL = currentURL?split("?")?first >
56 <#if theCalledURL != entry.getRegularURL(request) && !hasChildLayoutSelected(theCalledURL, entry.getChildren(permissionChecker))>
57 <#if layoutPermission.containsWithoutViewableGroup(permissionChecker, entry, "VIEW")>
58 <div class="results-header">
59 <i class="material-icons">
60 keyboard_arrow_right
61 </i>
62 <h6>
63 <#assign layoutType = entry.getLayoutType() />
64 <a
65 <#if layoutType.isBrowsable()>
66 href="${portalUtil.getLayoutURL(entry, themeDisplay)}" target="${entry.getTarget()}"
67 </#if>
68 >${entry.getName(locale)}</a>
69 </h6>
70 </div>
71 </#if>
72 </#if>
73 </#if>
74 </#list>
75 </ul>
76 </@liferay_aui.row>
77</#if>
78
79<#macro displayPages
80 depth
81 pages
82 theCalledURL
83>
84 <#if pages?has_content >
85 <ul class="child-pages">
86 <#list pages as page>
87 <#assign pageType = page.getLayoutType() />
88
89 <li>
90 <i class="material-icons">
91 keyboard_arrow_right
92 </i>
93 <div><a
94 <#if pageType.isBrowsable()>
95 href="${portalUtil.getLayoutURL(page, themeDisplay)}" target="${page.getTarget()}"
96 </#if>
97 >${page.getName(locale)}</a></div>
98 <#if theCalledURL == page.getRegularURL(request) || hasChildLayoutSelected(theCalledURL, page.getChildren(permissionChecker))>
99 <@displayPages
100 depth=depth + 1
101 pages=page.getChildren(permissionChecker)
102 theCalledURL=theCalledURL
103 />
104 </#if>
105 </li>
106
107 </#list>
108 </ul>
109 </#if>
110</#macro>
111
112<#function hasChildLayoutSelected theCalledURL pages>
113 <#if pages?has_content>
114 <#list pages as page>
115 <#if theCalledURL == page.getRegularURL(request) || hasChildLayoutSelected(theCalledURL, page.getChildren(permissionChecker))>
116 <#return true>
117 </#if>
118 </#list>
119 </#if>
120 <#return false>
121</#function>
122
123
124
125<script>
126//metto in grassetto l'elemento riferito alla pagina deducendolo dalla struttura dell'html
127
128//se l'elemento che segue il div è un .child-page allora coloro
129$('.site-map-internal-public>.child-pages').prev().find("a").css("font-weight","bold");
130
131//se l'elemento li ha figli ul coloro
132$('.site-map-internal-public>ul>li>ul').parent().children("div").children("a").css("font-weight","bold");
133$('.site-map-internal-public>ul>li>ul').css("margin-top","10px");
134
135//coloro la foglia. Se la foglia ha lo stesso indirizzo della pagina corrente allora coloro
136var els = document.querySelectorAll("a[href='" + window.location.href + "']");
137var el = els[0];
138if (el!=undefined){
139 el.style="font-weight:bold";
140}
141
142</script>
Gli editoriali di ClicLavoro Veneto
L'editoriale di ClicLavoro Veneto
L'archivio con tutti gli articoli di approfondimento tematico scritti dalla redazione di ClicLavoro Veneto e da esperti del mondo del lavoro, della formazione e dell'istruzione
L'editoriale di ClicLavoro Veneto è una rubrica dedicata ad approfondimenti, commenti e articoli di opinione sulle tematiche più attuali del mondo del lavoro e della formazione professionale. L'obiettivo è quello di offrire al lettore utente nuovi spunti per una diversa e maggiore comprensione delle dinamiche che interessano il mercato del lavoro. In questa pagina è possibile consultare tutti gli articoli pubblicati a firma della redazione di ClicLavoro Veneto e di personalità influenti del mondo economico, professionale, accademico e politico.