Job details
An error occurred while processing the template.
The following has evaluated to null or missing: ==> propsUtil.get(ucmLocaleKey) [in template "64056#64102#365043" at line 28, 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 28, column 1] ----
1<div id="outer-footer" class="updatedFooter" style="padding-left: 0px; width: 1640px;">
2 <div id="inner-footer-expert" class="">
3 <div id="footerLogo">
4 <#--<#if FooterLogo.getData()?? && FooterLogo.getData() != "">
5 <#assign footerLogoHTML = "${FooterLogo.getData()}"/>
6 <#if (footerLogoHTML?length > 0)>
7 ${footerLogoHTML}
8 <#else>
9 <img src="https://www/hays.co.uk/cs/HaysMicroSites/assets/img/hayslogo.gif" id="defaultLogo" alt="Hays
10 footer logo">
11 </#if>
12 </#if>-->
13 <#assign haysLogo = propsUtil.get("HAYS_LOGO")/>
14 <img src="${haysLogo}" id="defaultLogo" alt="Hays
15 footer logo" style="max-width:200px!important;margin:0px 15px;">
16 </div>
17 <div id="footerLogo-Links">
18 <#if Link.getSiblings()?has_content>
19 <#list Link.getSiblings() as cur_Link>
20 <#if cur_Link.getData()?? && cur_Link.getData() != "">
21 <#assign linkData = "${cur_Link.getData()}"/>
22 ${linkData}
23 </#if>
24 </#list>
25 </#if>
26 </div>
27 <#assign ucmLocaleKey = themeDisplay.getLocale()+"."+siteType+"."+"ucmLocale">
28<#assign locale = propsUtil.get(ucmLocaleKey)/>
29<#assign apiUrl = propsUtil.get("WEB72_API_DOMAIN")/>
30
31<#assign lr74CutoverCountryCode = propsUtil.get("LR74_CUTOVER_COUNTRY_CODE")/>
32<#if lr74CutoverCountryCode??>
33<#list lr74CutoverCountryCode?split(",") as countryCode>
34 <#if countryCode = themeDisplay.getLocale()?keep_after_last("_") >
35 <#assign apiUrl = propsUtil.get("API_DOMAIN")/>
36 </#if>
37</#list>
38</#if>
39
40<#attempt>
41
42<#if httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)??>
43<#assign response = httpUtil.URLtoString(apiUrl+"/o/HaysContentStructure/getcontentstructure/expertFooter/"+locale)>
44<#assign responseObj = jsonFactoryUtil.createJSONObject(response)>
45<#assign getResponseResultArray = responseObj.getJSONArray("results")>
46<div id="footer-bottom">
47 <#if getResponseResultArray.length() gt 0>
48 <#assign siteUrl = getResponseResultArray.get(0).siteUrl>
49
50 <#if getResponseResultArray.get(0).getJSONArray("GroupHeading")?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length()?? && getResponseResultArray.get(0).getJSONArray("GroupHeading").length() gt 1>
51
52 <#assign groupHeadingArr = getResponseResultArray.get(0).getJSONArray("GroupHeading")>
53 <div class="row single-col gpHeading">
54 <div class="col col-12">
55 <nav>
56 <ul>
57 <#list 0 ..< groupHeadingArr.length()?number as i>
58 <#if groupHeadingArr.get(i).Link?starts_with("/")>
59 <#assign linkUrl = siteUrl + groupHeadingArr.get(i).Link>
60 <li>
61 <a href="${linkUrl}" target="">${groupHeadingArr.get(i).GroupHeading}</a>
62 </li>
63 <#else>
64 <li>
65 <a href="${groupHeadingArr.get(i).Link}" target="">${groupHeadingArr.get(i).GroupHeading}</a>
66 </li>
67 </#if>
68 </#list>
69 </ul>
70 </nav>
71 </div>
72 </div>
73 <#elseif getResponseResultArray.get(0).getJSONArray("FooterLink")??>
74 <#assign FooterLinkArr = getResponseResultArray.get(0).getJSONArray("FooterLink")>
75 <div class="row single-col">
76 <div class="col col-12">
77 <nav>
78 <ul>
79 <#list 0 ..< FooterLinkArr.length()?number as i>
80 <#assign linkUrl = FooterLinkArr.get(i).FooterLink?replace("href=\"/", "href=\""+siteUrl+"/" ) >
81 <li>
82 ${linkUrl}
83 </li>
84 </#list>
85 </ul>
86 </nav>
87 </div>
88 </div>
89
90 </#if>
91 <div class="row single-col">
92 <div class="col col-12">
93 <p class="last">${getResponseResultArray.get(0).CopyrightHTML}</p>
94 </div>
95 </div>
96 </#if>
97</div>
98</#if>
99<#recover>
100
101</#attempt>
102
103 <div id="copyright-text">
104 <#if CopyrightText?? && CopyrightText.getData()?? && CopyrightText.getData() != "">
105 ${CopyrightText.getData()}
106 </#if>
107 </div>
108 </div>
109</div>
110<script>
111$(document).ready(function(){
112 if((Liferay.ThemeDisplay.getLanguageId() != "en_GB") && (location.href.indexOf("/web/") != -1)) {
113 console.log("link update required on the site");
114 $('a').each(function(index) {
115 var layoutRelativeUrl = Liferay.ThemeDisplay.getLayoutRelativeURL();
116 var getSiteUrl = layoutRelativeUrl.substring(0, layoutRelativeUrl.lastIndexOf("/"));
117 var linkVal = $(this).attr("href");
118 if((typeof linkVal !== "undefined") && linkVal.indexOf("https") == -1 && linkVal.indexOf("/")!= -1 && (linkVal.indexOf("/") === linkVal.lastIndexOf("/"))){
119 var updatedLink = getSiteUrl + linkVal ;
120 $(this).attr("href", updatedLink)
121 console.log("link updated - " + updatedLink);
122 }
123 });
124 }
125});
126</script>