Diversity & Inclusion
Loughborough University recognises that people are our success, and our reputation is dependent on the commitment and excellence of our staff.
View all opportunitiesLoughborough University recognises that people are our success, and our reputation is dependent on the commitment and excellence of our staff.
View all opportunitiesWe are committed to achieving equality for all those who learn and work here and wish to develop a demonstrably fair and supportive environment, which provides equality of opportunity and freedom from unlawful discrimination on the grounds of race, colour, nationality, ethnic origin, gender, gender identity (transsexuality), marital or civil partnership status, disability, sexual orientation, religious or political beliefs, age, social class or offending background.
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>