Header Navigation

Mobile Navigation

The role - banner

The role

Docs

Hays Microsite jobs listing

Job details

Location:

Salary/Rate:

Type:

Closing Date:

Job Reference:


Back Apply

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<#if httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)??> 
22<#assign response = httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)> 
23<#assign responseObj = jsonFactoryUtil.createJSONObject(response)> 
24<#if  responseObj?? && responseObj.results?? && responseObj.results?has_content> 
25<#assign getResponseResultArray = responseObj.getJSONArray("results")> 
26<div id="footer-bottom"> 
27 <#if getResponseResultArray.length() gt 0> 
28 <#assign siteUrl = getResponseResultArray.get(0).siteUrl> 
29 
30 <#if getResponseResultArray.get(0).getJSONArray("GroupHeading")?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length()?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length() gt 1> 
31 
32 <#assign groupHeadingArr = getResponseResultArray.get(0).getJSONArray("GroupHeading")> 
33 	<div class="row single-col gpHeading"> 
34	 <div class="col col-12"> 
35		 <nav> 
36			<ul> 
37			<#list 0 ..< groupHeadingArr.length()?number as i> 
38			    <#if groupHeadingArr.get(i).Link?starts_with("/")> 
39			     <#assign linkUrl = siteUrl + groupHeadingArr.get(i).Link> 
40					<li> 
41						<a href="${linkUrl}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
42					</li> 
43				<#else> 
44				    <li> 
45						<a href="${groupHeadingArr.get(i).Link}" target="">${groupHeadingArr.get(i).GroupHeading}</a> 
46					</li> 
47				</#if> 
48			</#list> 
49			</ul> 
50		  </nav> 
51		 </div> 
52	  </div> 
53	 <#elseif getResponseResultArray.get(0).getJSONArray("FooterLink")??> 
54	 <#assign FooterLinkArr = getResponseResultArray.get(0).getJSONArray("FooterLink")> 
55	 <div class="row single-col gpHeading"> 
56		<div class="col col-12"> 
57		 <nav> 
58			<ul> 
59			<#list 0 ..< FooterLinkArr.length()?number as i> 
60			     <#assign linkUrl = FooterLinkArr.get(i).FooterLink?replace("href=\"/", "href=\""+siteUrl+"/" ) > 
61					<li> 
62						${linkUrl} 
63					</li> 
64			</#list> 
65			</ul> 
66		  </nav> 
67		 </div> 
68	  </div> 
69 
70	 </#if> 
71 
72 
73	 	<div class="footer-added"> 
74 			<img src="${hays_logo}"></img> 
75 			<div class="copyright"> 
76			<p> 
77	    	<p class="last">${getResponseResultArray.get(0).CopyrightHTML}</p> 
78 
79			</p> 
80			</div> 
81			</div> 
82	</#if> 
83</div> 
84</#if> 
85</#if> 
86<#recover> 
87 
88</#attempt> 
89 
90 
91	</div> 
92</div> 
93<script> 
94window.addEventListener('DOMContentLoaded', function () { 
95    var consent = document.getElementById("teconsent"); 
96 
97    // Find the <ul> inside the nav of gpHeading 
98    var ulElement = document.querySelector(".gpHeading nav ul"); 
99 
100    if (consent && ulElement) { 
101        var liWrapper = document.createElement("li"); 
102        liWrapper.appendChild(consent); 
103        ulElement.appendChild(liWrapper); 
104    } else { 
105        console.log("Consent element or target UL not found."); 
106
107}); 
108 
109$(document).ready(function(){ 
110    if((Liferay.ThemeDisplay.getLanguageId() != "en_GB") && (location.href.indexOf("/web/") != -1)) { 
111	console.log("link update required on the site"); 
112	$('a').each(function(index) { 
113		var layoutRelativeUrl = Liferay.ThemeDisplay.getLayoutRelativeURL(); 
114        var getSiteUrl = layoutRelativeUrl.substring(0, layoutRelativeUrl.lastIndexOf("/")); 
115		var linkVal = $(this).attr("href"); 
116		if((typeof linkVal !== "undefined") && linkVal.indexOf("https") == -1 && linkVal.indexOf("/")!= -1 && (linkVal.indexOf("/") === linkVal.lastIndexOf("/"))){ 
117		var updatedLink = getSiteUrl + linkVal ; 
118		$(this).attr("href", updatedLink) 
119		console.log("link updated - " + updatedLink); 
120
121	}); 
122
123}); 
124</script>