Hays Microsite jobs listing

Latest jobs

Title Location Salary Type
No job found

header-nav

mob-nav

main-jobs

Latest jobs

Footer

Fehler bei der Verarbeitung der Vorlage.
The following has evaluated to null or missing:
==> propsUtil.get(ucmLocaleKey)  [in template "64056#64102#365043" at line 5, column 19]

----
Tip: If the failing expression is known to 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 locale = propsUtil.get(ucmLoc...  [in template "64056#64102#365043" at line 5, column 1]
----
1<div id="outer-footer" class="updatedFooter" style="padding-left: 0px; width: 1640px;"> 
2	 <div id="inner-footer-expert" class=""> 
3 
4<#assign ucmLocaleKey = themeDisplay.getLocale()+"."+siteType+"."+"ucmLocale"> 
5<#assign locale = propsUtil.get(ucmLocaleKey)/> 
6<#assign apiUrl = propsUtil.get("WEB72_API_DOMAIN")/> 
7 
8<#assign lr74CutoverCountryCode = propsUtil.get("LR74_CUTOVER_COUNTRY_CODE")/> 
9<#assign hays_logo = propsUtil.get("HAYS_LOGO")/> 
10 
11<#if lr74CutoverCountryCode??> 
12<#list lr74CutoverCountryCode?split(",") as countryCode> 
13 <#if countryCode = themeDisplay.getLocale()?keep_after_last("_") > 
14    <#assign apiUrl = propsUtil.get("API_DOMAIN")/> 
15 </#if> 
16</#list> 
17</#if> 
18 
19<#attempt> 
20 
21<#assign PortalCacheHelperUtil = staticUtil["com.liferay.portal.kernel.cache.PortalCacheHelperUtil"]> 
22<#assign PortalCacheManagerNames = staticUtil["com.liferay.portal.kernel.cache.PortalCacheManagerNames"]> 
23<#assign cacheName = "EXPERT_FOOTER_TEMPLATE_CACHE"> 
24<#assign cacheKey = "footerResponse_" + locale> 
25<#assign cache = PortalCacheHelperUtil.getPortalCache(PortalCacheManagerNames.SINGLE_VM,cacheName)> 
26<#assign response = (cache.get(cacheKey))?default("")> 
27 
28 
29<#if response?has_content> 
30<#assign responseObj = jsonFactoryUtil.createJSONObject(response)> 
31<#else> 
32<#assign response = httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)> 
33<#assign responseObj = jsonFactoryUtil.createJSONObject(response)> 
34  ${cache.put(cacheKey,response,86400)} 
35</#if> 
36 
37<#if  responseObj?? && responseObj.results?? && responseObj.results?has_content> 
38<#assign getResponseResultArray = responseObj.getJSONArray("results")> 
39<div id="footer-bottom"> 
40 <#if getResponseResultArray.length() gt 0> 
41 <#assign siteUrl = getResponseResultArray.get(0).siteUrl> 
42 
43 <#if getResponseResultArray.get(0).getJSONArray("GroupHeading")?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length()?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length() gt 1> 
44 
45 <#assign groupHeadingArr = getResponseResultArray.get(0).getJSONArray("GroupHeading")> 
46 	<div class="row single-col gpHeading"> 
47	 <div class="col col-12"> 
48		 <nav> 
49			<ul> 
50			<#list 0 ..< groupHeadingArr.length()?number as i> 
51			    <#if groupHeadingArr.get(i).Link?starts_with("/")> 
52			     <#assign linkUrl = siteUrl + groupHeadingArr.get(i).Link> 
53					<li> 
54						<a href="${linkUrl}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
55					</li> 
56				<#else> 
57				    <li> 
58						<a href="${groupHeadingArr.get(i).Link}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
59					</li> 
60				</#if> 
61			</#list> 
62			</ul> 
63		  </nav> 
64		 </div> 
65	  </div> 
66	 <#elseif getResponseResultArray.get(0).getJSONArray("FooterLink")??> 
67	 <#assign FooterLinkArr = getResponseResultArray.get(0).getJSONArray("FooterLink")> 
68	 <div class="row single-col gpHeading"> 
69		<div class="col col-12"> 
70		 <nav> 
71			<ul> 
72			<#list 0 ..< FooterLinkArr.length()?number as i> 
73			     <#assign linkUrl = FooterLinkArr.get(i).FooterLink?replace("href=\"/", "href=\""+siteUrl+"/" ) > 
74					<li> 
75						${linkUrl} 
76					</li> 
77			</#list> 
78			</ul> 
79		  </nav> 
80		 </div> 
81	  </div> 
82 
83	 </#if> 
84 
85 
86	 	<div class="footer-added"> 
87 			<img src="${hays_logo}"></img> 
88 			<div class="copyright"> 
89			<p> 
90	    	<p class="last">${getResponseResultArray.get(0).CopyrightHTML}</p> 
91 
92			</p> 
93			</div> 
94			</div> 
95	</#if> 
96</div> 
97</#if> 
98<#recover> 
99 
100</#attempt> 
101 
102 
103	</div> 
104</div> 
105<script> 
106window.addEventListener('DOMContentLoaded', function () { 
107    var consent = document.getElementById("teconsent"); 
108 
109    // Find the <ul> inside the nav of gpHeading 
110    var ulElement = document.querySelector(".gpHeading nav ul"); 
111 
112    if (consent && ulElement) { 
113        var liWrapper = document.createElement("li"); 
114        liWrapper.appendChild(consent); 
115        ulElement.appendChild(liWrapper); 
116    } else { 
117        console.log("Consent element or target UL not found."); 
118
119}); 
120 
121$(document).ready(function(){ 
122    if((Liferay.ThemeDisplay.getLanguageId() != "en_GB") && (location.href.indexOf("/web/") != -1)) { 
123	console.log("link update required on the site"); 
124	$('a').each(function(index) { 
125		var layoutRelativeUrl = Liferay.ThemeDisplay.getLayoutRelativeURL(); 
126        var getSiteUrl = layoutRelativeUrl.substring(0, layoutRelativeUrl.lastIndexOf("/")); 
127		var linkVal = $(this).attr("href"); 
128		if((typeof linkVal !== "undefined") && linkVal.indexOf("https") == -1 && linkVal.indexOf("/")!= -1 && (linkVal.indexOf("/") === linkVal.lastIndexOf("/"))){ 
129		var updatedLink = getSiteUrl + linkVal ; 
130		$(this).attr("href", updatedLink) 
131		console.log("link updated - " + updatedLink); 
132
133	}); 
134
135}); 
136</script>