PageSourceSearch

https://jobs.bir.org.uk/jobs/

html bir.org.uk collected 2026-10-02 04:46:20 UTC 307,453 bytes, 6,114 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en"
3xmlns="http://www.w3.org/1999/xhtml"
4xmlns:og="http://ogp.me/ns#"
5xmlns:fb="http://www.facebook.com/2008/fbml">
6<head>
7<script src="https&#x3a;&#x2f;&#x2f;cmp.osano.com&#x2f;16BetWTVxvf7jEBbA&#x2f;c95216e9-7838-4630-a0f3-0dc1a5064f66&#x2f;osano.js"></script>
vendor: 1 bytes, line 7
7
8<script defer src="/javascript/osano/consent-handler.js"></script>
vendor: 1 bytes, line 8
8
9<script>
10window._osanoCtx = {
11siteId : '17988'
12};
13</script>
13
14<style>	
15.osano-cm-widget {
16bottom: 80px !important;	
17left: 10px !important; 
18}	
19button.osano-cm-window__widget > svg > path:nth-child(1) {
20stroke: #172A43 !important;
21}
22button.osano-cm-window__widget > svg > path:nth-child(2) {
23stroke: #172A43 !important; /* needs to match stroke color from outline */ 
24fill: #FFFFFF !important;
25}
26button.osano-cm-window__widget > svg > g {
27fill: #172A43 !important;
28}
29.osano-cm-dialog.osano-cm-dialog--position_bottom.osano-cm-dialog--type_bar {
30box-shadow: 0 -10px 10px -5px rgba(0, 0, 0, 0.5);
31}
32</style>
33<script>
34(function () {
35'use strict';
36function gtag() {
37window.dataLayer = window.dataLayer || [];
38window.dataLayer.push(arguments);
39}
40/**
41* Translates a full Osano consent object into a gtag consent update.
42* Osano values: 'ACCEPT' | 'DENY' | 'UNKNOWN'
43* Anything other than 'ACCEPT' is treated as denied (privacy by default).
44*/
45function applyOsanoConsent(consent) {
46if (!consent) { return; }
47var granted = 'granted';
48var denied = 'denied';
49var analytics = (consent.ANALYTICS === 'ACCEPT') ? granted : denied;
50var marketing = (consent.MARKETING === 'ACCEPT') ? granted : denied;
51var personalization = (consent.PERSONALIZATION === 'ACCEPT') ? granted : denied;
52gtag('consent', 'update', {
53'analytics_storage': analytics,
54'ad_storage': marketing,
55'ad_user_data': marketing,
56'ad_personalization': marketing,
57'functionality_storage': personalization,
58'personalization_storage': personalization
59});
60}
61/**
62* Reads the current Osano consent state (populated from stored cookies/localStorage
63* for returning users) and pushes it to GA.
64* Called on DOMContentLoaded so gtm/header.cfm has already run and window.dataLayer exists.
65*/
66function applyStoredConsent() {
67if (window.Osano && window.Osano.cm && typeof window.Osano.cm.getConsent === 'function') {
68applyOsanoConsent(window.Osano.cm.getConsent());
69}
70}
71// ── Event listener: fires whenever the user changes consent (banner or manage-cookies) ──
72// Always re-fetch from Osano to get the canonical full state regardless of event payload.
73document.addEventListener('osano_consentmanager_update', function () {
74if (window.Osano && window.Osano.cm && typeof window.Osano.cm.getConsent === 'function') {
75applyOsanoConsent(window.Osano.cm.getConsent());
76}
77});
78// ── Initial state: apply any previously stored consent before GTM fires the first tag ──
79gtag('consent', 'default', {
80'analytics_storage': 'denied',
81'ad_storage': 'denied',
82'ad_user_data': 'denied',
83'ad_personalization': 'denied',
84'functionality_storage': 'denied',
85'personalization_storage': 'denied',
86'security_storage': 'granted',
87'wait_for_update': 500
88});
89gtag('set', 'ads_data_redaction', true);
90gtag('set', 'url_passthrough', true);
91// DOMContentLoaded fires after all synchronous <head> scripts have run (including
92// gtm/header.cfm), so window.dataLayer is guaranteed to exist by then.
93if (document.readyState === 'loading') {
94document.addEventListener('DOMContentLoaded', applyStoredConsent);
95} else {
96// Inline scripts in <body> or deferred execution — DOM already ready.
97applyStoredConsent();
98}
99}());
100</script>
100
101<meta property="og:type" content="website">
102<meta property="og:title" content="Recent Jobs - The British Institute of Radiology">	
103<meta property="og:description" content="View jobs available on The British Institute of Radiology. Search for and apply to open jobs from The British Institute of Radiology.">
104<meta property="og:url" content="https://jobs.bir.org.uk/jobs/">
105<meta property="og:image" content="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/img/social-og-image.png">
106<meta name="twitter:card" content="summary_large_image">
107<meta name="twitter:description" content="View jobs available on The British Institute of Radiology. Search for and apply to open jobs from The British Institute of Radiology.">
108<title>Recent Jobs - The British Institute of Radiology</title>
109<meta name="description" content="View jobs available on The British Institute of Radiology. Search for and apply to open jobs from The British Institute of Radiology.">
110<meta name="keywords" content="Radiology">
111<link rel="canonical" href="https://jobs.bir.org.uk/jobs/">
112<meta charset="utf-8" />
113<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
114<meta name="viewport" content="width=device-width, initial-scale=1">
115<link rel="icon" href="/favicon.png?v=1" />
116<style>
117:root {
118--site-primary-color: #36929A;
119--site-secondary-color: #36929A;
120--site-tertiary-color: black;
121--site-primary-text-color: white;
122--site-secondary-text-color: white;
123--site-tertiary-text-color: white;
124--site-contrast-color: white;
125--ymc-primary: #36929A;
126--ymc-secondary: #36929A;
127--ymc-primary-gradient: #36929A;
128--ymc-secondary-gradient: #FFF;
129--ymc-primary-contrast-text: #36929A;
130--ymc-secondary-contrast-text: #36929A;
131}
132</style>
133<link href='https://fonts.googleapis.com/css?family=Oswald:400' rel='stylesheet' type='text/css'>
134<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css" integrity="sha512-Kc323vGBEqzTmouAECnVceyQqyqdsSiqLQISBL29aUW4U/M7pSPA/gEUZQqv1cwx4OnYxTxve5UMg5GT6L4JJg==" crossorigin="anonymous" referrerpolicy="no-referrer" /> 
135<link rel="stylesheet" href="/styles/bootstrap-icons-min.css">
136<link href="https://fonts.googleapis.com/css?family=Roboto:400,500,700,700italic,400italic|Montserrat:400,700|Inter:400,600" rel="stylesheet" type="text/css" />
137<style>.tabcontrol,.wizard{display:block;width:100%;overflow:hidden}.tabcontrol a,.wizard a{outline:0}.tabcontrol ul,.wizard ul{list-style:none!important;padding:0;margin:0}.tabcontrol>.content>.body ul,.wizard>.content>.body ul{list-style:disc!important}.tabcontrol ul>li,.wizard ul>li{display:block;padding:0}.tabcontrol>.content>.title,.tabcontrol>.steps .current-info,.wizard>.content>.title,.wizard>.steps .current-info{position:absolute;left:-999em}.wizard>.steps{position:relative;display:block;width:100%}.wizard.vertical>.steps{display:inline;float:left;width:30%}.wizard>.steps .number{font-size:1.429em}.wizard>.steps>ul>li{width:25%}.wizard>.actions>ul>li,.wizard>.steps>ul>li{float:left}.wizard.vertical>.steps>ul>li{float:none;width:100%}.wizard>.steps a,.wizard>.steps a:active,.wizard>.steps a:hover{display:block;width:auto;margin:0 .5em .5em;padding:1em;text-decoration:none;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wizard>.steps .disabled a,.wizard>.steps .disabled a:active,.wizard>.steps .disabled a:hover{background:#eee;color:#aaa;cursor:default}.wizard>.steps .current a,.wizard>.steps .current a:active,.wizard>.steps .current a:hover{background:#2184be;color:#fff;cursor:default}.wizard>.steps .done a,.wizard>.steps .done a:active,.wizard>.steps .done a:hover{background:#9dc8e2;color:#fff}.wizard>.steps .error a,.wizard>.steps .error a:active,.wizard>.steps .error a:hover{background:#ff3111;color:#fff}.wizard>.content{background:#eee;display:block;margin:.5em;overflow:hidden;position:relative;width:auto;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wizard.vertical>.content{display:inline;float:left;margin:0 2.5% .5em;width:65%}.wizard>.content>.body{float:left;position:absolute;width:95%;padding:2.5%}.wizard>.content>.body ul>li{display:list-item}.wizard>.content>.body>iframe{border:0;width:100%;height:100%}.wizard>.content>.body input{display:block;border:1px solid #ccc}.wizard>.content>.body input[type=checkbox]{display:inline-block}.wizard>.content>.body input.error{background:#fbe3e4;border:1px solid #fbc2c4;color:#8a1f11}.wizard>.content>.body label{display:inline-block;margin-bottom:.5em}.wizard>.content>.body label.error{color:#8a1f11;display:inline-block;margin-left:1.5em}.wizard>.actions{position:relative;display:block;text-align:right;width:100%}.wizard.vertical>.actions{display:inline;float:right;margin:0 2.5%;width:95%}.wizard>.actions>ul{display:inline-block;text-align:right}.wizard>.actions>ul>li{margin:0 .5em}.wizard.vertical>.actions>ul>li{margin:0 0 0 1em}.wizard>.actions a,.wizard>.actions a:active,.wizard>.actions a:hover{background:#2184be;
137color:#fff;display:block;padding:.5em 1em;text-decoration:none;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.wizard>.actions .disabled a,.wizard>.actions .disabled a:active,.wizard>.actions .disabled a:hover{background:#eee;color:#aaa}.tabcontrol>.steps{position:relative;display:block;width:100%}.tabcontrol>.steps>ul{position:relative;margin:6px 0 0;top:1px;z-index:1}.tabcontrol>.steps>ul>li{float:left;margin:5px 2px 0 0;padding:1px;-webkit-border-top-left-radius:5px;-webkit-border-top-right-radius:5px;-moz-border-radius-topleft:5px;-moz-border-radius-topright:5px;border-top-left-radius:5px;border-top-right-radius:5px}.tabcontrol>.steps>ul>li:hover{background:#edecec;border:1px solid #bbb;padding:0}.tabcontrol>.steps>ul>li.current{background:#fff;border:1px solid #bbb;border-bottom:0 none;padding:0 0 1px;margin-top:0}.tabcontrol>.steps>ul>li>a{color:#5f5f5f;display:inline-block;border:0;margin:0;padding:10px 30px;text-decoration:none}.tabcontrol>.steps>ul>li>a:hover{text-decoration:none}.tabcontrol>.steps>ul>li.current>a{padding:15px 30px 10px}.tabcontrol>.content{position:relative;display:inline-block;width:100%;height:35em;overflow:hidden;border-top:1px solid #bbb;padding-top:20px}.tabcontrol>.content>.body{float:left;position:absolute;width:95%;height:95%;padding:2.5%}.tabcontrol>.content>.body ul>li{display:list-item}</style>
138<link type="text/css" rel="stylesheet" href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/stylesheets/screen.min.css?v=17">
139<style>.owl-carousel,.owl-carousel .owl-item,.owl-theme .owl-dots{-webkit-tap-highlight-color:transparent}.owl-carousel .animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{-webkit-transition:height .5s ease-in-out;-moz-transition:height .5s ease-in-out;-ms-transition:height .5s ease-in-out;-o-transition:height .5s ease-in-out;transition:height .5s ease-in-out}.owl-carousel{display:none;position:relative;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item{position:relative;min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{-webkit-transform-style:preserve-3d}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;cursor:hand;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-loaded{display:block}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn,.owl-carousel.owl-refresh .owl-item{display:none}.owl-carousel.owl-hidden{opacity:0}
139.owl-carousel.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:-webkit-grab;cursor:-o-grab;cursor:-ms-grab;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.no-js .owl-carousel{display:block}.owl-carousel .owl-item .owl-lazy{opacity:0;-webkit-transition:opacity .4s ease;-moz-transition:opacity .4s ease;-ms-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;-webkit-transition:scale .1s ease;-moz-transition:scale .1s ease;-ms-transition:scale .1s ease;-o-transition:scale .1s ease;transition:scale .1s ease}.owl-carousel .owl-video-play-icon:hover{-webkit-transition:scale(1.3,1.3);-moz-transition:scale(1.3,1.3);-ms-transition:scale(1.3,1.3);-o-transition:scale(1.3,1.3);transition:scale(1.3,1.3)}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;-webkit-background-size:contain;-moz-background-size:contain;-o-background-size:contain;background-size:contain;-webkit-transition:opacity .4s ease;-moz-transition:opacity .4s ease;-ms-transition:opacity .4s ease;-o-transition:opacity .4s ease;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%}.owl-carousel{width:100%;margin:0 auto}.owl-carousel .owl-item img{transform-style:preserve-3d;display:block;margin:0 auto;max-width:100%;width:auto}.owl-carousel .owl-item .h5,.owl-carousel .owl-item h5{text-align:center;margin-bottom:10px;font-size:16px}.owl-carousel .owl-nav{position:absolute;top:33%;width:100%;padding:0 10px;box-sizing:border-box;pointer-events:none}.owl-carousel .owl-nav [class*=owl-]{background:rgba(255,255,255,.6);border-radius:50%;color:#333;cursor:pointer;display:inline-block;font-size:26px;height:40px;line-height:40px;text-align:center;margin:5px;box-sizing:border-box;padding:0;width:40px;position:relative}.owl-carousel .owl-nav [class*=owl-]:hover{background:#5B6871;color:#fff}.owl-carousel .owl-prev{float:left;pointer-events:auto}.owl-carousel .owl-next{float:right;pointer-events:auto}.owl-carousel .owl-nav .fa{margin:0;line-height:35px}.owl-carousel .owl-prev .fa{margin-left:-4px}.owl-carousel .owl-next .fa{margin-right:-4px}.owl-carousel .owl-dots{margin-top:10px;text-align:center}.owl-carousel .owl-nav .disabled{opacity:.2;cursor:default}.queryTest{float:left;display:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots{text-align:center}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;-webkit-transition:opacity .2s ease;-moz-transition:opacity .2s ease;-ms-transition:opacity .2s ease;-o-transition:opacity .2s ease;transition:opacity .2s ease;-webkit-border-radius:30px;-moz-border-radius:30px;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#5B6871}@media all and (max-width:480px){.queryTest{float:none}.owl-stage-outer.owl-height{height:auto!important}.owl-carousel{display:block}.owl-carousel li{text-align:center;margin:10px}}</style>
140<style>
141/* PRIMARY */
142.primary {background-color: #36929A;}
143#job-listing .listings .job-summary h3, #job-listing .listings .job-summary .h3{color: #36929A;}
144/* SECONDARY */
145.secondary {background-color: #36929A;}
146#featured-job-listing ul li a h3, #featured-job-listing ul li a .h3 {color: #36929A}
147/* TERTIARY */
148.tertiary {background-color: #EAEAEA;}
149#basic-page .create-resume .default-form-box a.right {background-color: #EAEAEA}
150.more-company-jobs a {background-color: #EAEAEA;}
151/* nav bg*/
152/* nav color*/
153.sideboard-adspace em {
154color: #FFFFFF;
155}
156.sideboard-adspace div > div {
157background: transparent url('https://d3ogvqw9m2inp7.cloudfront.net/assets/dynamic/headers/cc/responsive/partner_lib/17988/img/bkgrd-job-alert-4.jpg') no-repeat scroll right top;
158}
159</style>
160<link type="text/css" rel="stylesheet" href="/headers/cc/responsive/partner_lib/17988/custom.css?v=2">
161<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous"></script>
161
162<!-- Google Tag Manager -->
163<script>
164window.dataLayer = window.dataLayer || [];
165window.dataLayer.push({
166'rollup_tracking_id': 'G-MLS8R7Z9DZ'
167});
168window.dataLayer.push({
169'site_tracking_id': 'G-9Q25Q6KXLT'
170});
171window.dataLayer.push({ 
172'partner_tracking_id_1': 'G-28F53VVM5N'
173});
vendor: 328 bytes, lines 173-178
173
174(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
175new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
176j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
177'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
178})(window,document,'script','dataLayer','
178GTM-MQ4769R
vendor: 4 bytes, line 178
178');
179</script>
vendor: 1 bytes, line 179
179
180<script>
181if (typeof jQuery != 'undefined') {
182$(function() { 
183$(".create-alert-button").on('click', function(){window.dataLayer.push({'event':'job_alert_quick_create','jaqc_step':"Email Me Jobs Like This - Initial"})
184}), $(".filtered-job-alert").on('click', function(e){window.dataLayer.push({'event':'job_alert_quick_create','jaqc_step':"Save Filtered Search as Job Alert - Initial"})
185}), $("#alert-login").on('shown.bs.modal',function(){
186}), $(".candidate-products-promotion-button").on('click', function(e){window.dataLayer.push({'event':'job_view','clicked_element':"premium_services_promo",'job_title':'','job_upgrade':'','job_id':'','job_source':'','company_name':''})
187}), $(document).on('click', ".job-feature-show-more-less-button", function(e){window.dataLayer.push({'event':'job_details', 'clicked_element': "job summary: " + $(this).attr('data-ga-label')})
188})
189// text highlight codes
190function getSelectionText() {
191var text = "";
192if (window.getSelection) {
193text = window.getSelection().toString();
194} else if (document.selection && document.selection.type != "Control") {
195text = document.selection.createRange().text;
196}
197return text;}
198document.onmouseup = function() {
199if(getSelectionText() != ""){
200var activeJob = $( '.job-tile-active.status-highlight-active' );
201var jobId = activeJob.find( 'input:hidden[name="job_id"]' ).val();
202if(getSelectionText().includes("@")){
203window.dataLayer.push({'event':'job_detail_highlight','highlighted_words':'email_hidden','job_id':jobId})
204}
205else{
206window.dataLayer.push({'event':'job_detail_highlight','highlighted_words':getSelectionText(),'job_id':jobId})
207}
208}
209}; 
210});
211}
212else{
213}
214window.addEventListener('DOMContentLoaded', function(){
215window.addEventListener('pageshow', function (event) {
216if(localStorage.getItem("entryReferrer") == 'dual-sign-in-membership-selection' && window.location.pathname != '/signin/') {
217window.dataLayer.push({'event':'candidate_onboarding','clicked_element':'dual_sign_in_browser_back_button','clicked_element_details':'dual_sign_in_exit'})
218localStorage.removeItem("entryReferrer");
219return;
220}
221var navEntries = window.performance && window.performance.getEntriesByType('navigation');
222var navEntry = navEntries && navEntries[navEntries.length - 1];
223var isBackForward = event.persisted || (navEntry && navEntry.type === 'back_forward');
224if (!isBackForward) return;
225var referrer = localStorage.getItem('onboardingLastPath') || '';
226localStorage.removeItem('onboardingLastPath');
227if (!referrer) return;
228var onboardingPaths = [
229{ pattern: /[?&]_login=dual/, element: 'dual_sign_in_browser_back_button', details: 'dual_sign_in_exit' },
230{ pattern: /\/signin\?.*mem=1/, element: 'sign_in_browser_back_button', details: 'sign_in_exit' },
231{ pattern: /\/signin/, element: 'sign_in_browser_back_button', details: 'sign_in_exit' },
232{ pattern: /[?&]_otp=signup/, element: 'otp_browser_back_button_sign_up', details: 'otp_sign_up_exit' },
233{ pattern: /[?&]_otp=reset/, element: 'otp_browser_back_button_reset_password', details: 'otp_reset_password_exit' },
234{ pattern: /[?&]_otp=forgot/, element: 'otp_browser_back_button_forgot_password', details: 'otp_forgot_password_exit' },
235{ pattern: /\/signup\/welcome/, element: 'sso_landing_browser_back_button', details: 'sso_sign_up_landing_exit' },
236{ pattern: /\/signup\/setup/, element: 'data_entry_browser_back_button', details: 'data_entry_exit' },
237{ pattern: /\/signup(?!\/)/, element: 'sign_up_browser_back_button', details: 'sign_up_exit' },
238{ pattern: /\/reset-password\/confirmed/, element: 'reset_password_browser_back_button', details: 'reset_password_exit' },
239{ pattern: /\/reset-password(?!\/)/, element: 'forgot_password_browser_back_button', details: 'forgot_password_exit' },
240{ pattern: /\/signup\/congratulations/, element: 'congratulations_browser_back_button', details: 'congratulations_exit' }
241];
242for (var i = 0; i < onboardingPaths.length; i++) {
243if (onboardingPaths[i].pattern.test(referrer)) {
244window.dataLayer = window.dataLayer || [];
245window.dataLayer.push({
246'event': 'candidate_onboarding',
247'clicked_element': onboardingPaths[i].element,
248'clicked_element_details': onboardingPaths[i].details
249});
250break;
251}
252}
253});
254});
255(function() {
256var onboardingLuceePattern = /\/(signin|signup|reset-password|required-password-change)\//;
257if (!onboardingLuceePattern.test(window.location.pathname)) return;
258var sentinelActive = true;
259window.history.pushState({ _onboardingBackSentinel: true }, '');
260window.addEventListener('popstate', function(e) {
261if (!sentinelActive) return;
262sentinelActive = false;
263e.stopImmediatePropagation();
264var referrer = localStorage.getItem('onboardingLastPath') || '';
265localStorage.removeItem('onboardingLastPath');
266if (referrer) {
267var sentinelPaths = [
268{ pattern: /[?&]_login=dual/, element: 'dual_sign_in_browser_back_button', details: 'dual_sign_in_exit' },
269{ pattern: /\/signin\?.*mem=1/, element: 'sign_in_browser_back_button', details: 'sign_in_exit' },
270{ pattern: /\/signin/, element: 'sign_in_browser_back_button', details: 'sign_in_exit' },
271{ pattern: /[?&]_otp=signup/, element: 'otp_browser_back_button_sign_up', details: 'otp_sign_up_exit' },
272{ pattern: /[?&]_otp=reset/, element: 'otp_browser_back_button_reset_password', details: 'otp_reset_password_exit' },
273{ pattern: /[?&]_otp=forgot/, element: 'otp_browser_back_button_forgot_password', details: 'otp_forgot_password_exit' },
274{ pattern: /\/signup\/welcome/, element: 'sso_landing_browser_back_button', details: 'sso_sign_up_landing_exit' },
275{ pattern: /\/signup\/setup/, element: 'data_entry_browser_back_button', details: 'data_entry_exit' },
276{ pattern: /\/signup\/?(?![a-zA-Z0-9])/, element: 'sign_up_browser_back_button', details: 'sign_up_exit' },
277{ pattern: /\/reset-password\/confirmed/, element: 'reset_password_browser_back_button', details: 'reset_password_exit' },
278{ pattern: /\/reset-password\/?(?![a-zA-Z0-9])/, element: 'forgot_password_browser_back_button', details: 'forgot_password_exit' },
279{ pattern: /\/signup\/congratulations/, element: 'congratulations_browser_back_button', details: 'congratulations_exit' }
280];
281for (var i = 0; i < sentinelPaths.length; i++) {
282if (sentinelPaths[i].pattern.test(referrer)) {
283window.dataLayer = window.dataLayer || [];
284window.dataLayer.push({
285'event': 'candidate_onboarding',
286'clicked_element': sentinelPaths[i].element,
287'clicked_element_details': sentinelPaths[i].details
288});
289break;
290}
291}
292}
293window.history.back();
294}, true);
295})();
296</script>
vendor: 1 bytes, line 296
296
297<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/modernizr/modernizr.min.js"></script>
297
298<!-- For Ajax with Ads -->
299<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/postscribe.min.js"></script>
299
300<!-- START : ADD NEW SCRIPTS -->
301<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/jquery.gScrollingCarousel.min.js"></script>
301
302<!-- Tile Carousel JS -->
303<script async defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/jquery.overlayScrollbars.min.js"></script>
vendor: 1 bytes, line 303
303
304<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/material-design/material-components-web.min.js"></script>
304
305<link async defer href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/styles/material-design/material-components-web.min.css" rel="stylesheet">
306<link rel="stylesheet" href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/styles/upload/jquery.fileupload.css">
307<link rel="stylesheet" href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/styles/upload/jquery.fileupload-ui.css">
308<noscript><link rel="stylesheet" href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/styles/upload/jquery.fileupload-noscript.css"></noscript>
309<noscript><link rel="stylesheet" href="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/styles/upload/jquery.fileupload-ui-noscript.css"></noscript>
310<script type="text/javascript">
311document.createElement('header');
312document.createElement('nav');
313document.createElement('menu');
314document.createElement('section');
315document.createElement('article');
316document.createElement('aside');
317document.createElement('footer');
318// Polyfill for Array.from()
319Array.from||(Array.from=function(){var r=Object.prototype.toString,n=function(n){return"function"==typeof n||"[object Function]"===r.call(n)},t=Math.pow(2,53)-1,e=function(r){var n=function(r){var n=Number(r);return isNaN(n)?0:0!==n&&isFinite(n)?(n>0?1:-1)*Math.floor(Math.abs(n)):n}(r);return Math.min(Math.max(n,0),t)};return function(r){var t=Object(r);if(null==r)throw new TypeError("Array.from requires an array-like object - not null or undefined");var o,a=arguments.length>1?arguments[1]:void 0;if(void 0!==a){if(!n(a))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(o=arguments[2])}for(var i,u=e(t.length),f=n(this)?Object(new this(u)):new Array(u),c=0;c<u;)i=t[c],f[c]=a?void 0===o?a(i,c):a.call(o,i,c):i,c+=1;return f.length=u,f}}());
320</script>
vendor: 1 bytes, line 320
320
321<script type="text/javascript">
322function addImpression(product){
323window.dataLayer.push({ 'ecommerce': null });
324window.dataLayer.push({
325'event':'impression',
326'ecommerce': {
327item_list_id: (product.list.replaceAll(' ', '_')).toLowerCase(),
328item_list_name: product.list,
329items: [
330{
331item_id: product.id,
332item_name: product.name,
333index: product.index,
334item_brand: product.brand,
335item_category: product.category,
336item_list_id: product.category,
337item_list_name: product.category,
338price: product.price,
339quantity: 1
340}
341]
342}	
343});	
344return true;
345}
346function prepareProductData(id , title, category, price, quantity, list, brand){
347product = {};
348product.id = "P" + id;
349product.name = title;
350product.category = category;
351product.price = price;
352product.variant = "Original Flow";
353product.brand = '"' + brand + '"';
354product.list = '"' + list + '"';
355product.quantity = 1;
356addImpression(product);
357}
358function addProduct(product) {
359window.dataLayer.push({
360'event':'select_item',
361'ecommerce': {
362item_list_id: (product.list.replaceAll(' ', '_')).toLowerCase(),
363item_list_name: product.list,
364items: [
365{
366item_id: product.id,
367item_name: product.name,
368index: product.index,
369item_brand: product.brand,
370item_category: product.category,
371item_list_id: product.list,
372item_list_name: product.list,
373price: product.price,
374quantity: 1
375}
376]
377}	
378});
379window.dataLayer.push({
380'event':'view_item',
381'ecommerce': {
382currency: product.currency,
383value: product.price,
384items: [
385{
386item_id: product.id,
387item_name: product.name,
388index: product.index,
389item_brand: product.brand,
390item_category: product.category,
391item_list_id: product.list,
392item_list_name: product.list,
393price: product.price,
394quantity: 1
395}
396]
397}	
398});
399}
400function checkoutImpression(step, option){
401if(option === undefined) {
402option = 'post';
403window.dataLayer.push({'event':'button_click','button_click_event': 'post_a_job_click','clicked_element':"Employer Header"})
404}
405return true;
406}
407function beginPost(){
408window.dataLayer.push({
409'event':'begin_post'	
410});
411}
412function beginCheckout(){
413window.dataLayer.push({
414'event':'begin_checkout'	
415});
416window.dataLayer.push({
417'event':'add_to_cart'	
418});
419}
420//resume purchase
421function addToCart(product){
422window.dataLayer.push({
423'event':'add_to_cart',
424'ecommerce': {
425currency: product.currency,
426value: product.price,
427items: [
428{
429item_id: product.id,
430item_name: product.name,
431index: product.index,
432item_brand: product.brand,
433item_category: product.category,
434item_list_id: product.list,
435item_list_name: product.list,
436price: product.price,
437quantity: 1
438}
439]
440}	
441});
442}
443function purchaseImpression(product){
444return true;
445}
446function checkout(){
447}
448</script>
vendor: 1 bytes, line 448
448
449<script>
450jQuery(document).ready(function() {
451//toggles aria-hidden to true or false based on display 
452jQuery("#nav-trigger").each(function() {
453if (jQuery(this).css("display") == "block") {
454jQuery(this).attr("aria-hidden", "false");
455} else {
456jQuery(this).attr("aria-hidden", "true");
457}
458});
459//toggles mobile dropdown and toggles aria-expanded to true or false 
460jQuery("#nav-trigger").click(function() {
461jQuery(this).siblings("ul").toggleClass("nav-wrapper-ul");
462jQuery(this).attr('aria-expanded', function(i, attr) {
463return attr == 'true' ? 'false' : 'true'
464});
465});
466//toggles show or hide of dropdown and toggles aria-expanded to true or false 
467jQuery("a.nav-list-item").click(function() {
468var	self = jQuery(this), navItem = self.parent();
469navItem.siblings().removeClass("show");
470navItem.toggleClass("show");
471self.attr('aria-expanded', function(i, attr) {
472return attr == 'true' ? 'false' : 'true'
473});
474// Recalculate the Dropdown edge for flyout
475if( navItem.hasClass( 'flyout-navigation-menu' ) && !navItem.hasClass( 'dropdown-edge' ) ) {
476toggleDropdownEdge( navItem );
477}
478return false;
479});
480jQuery(".has-sub-navigation.flyout-navigation-menu").on('mouseenter mouseleave', function(e) {
481toggleDropdownEdge( jQuery( this ), e );
482});
483function toggleDropdownEdge( flyout, e ) {
484if (!jQuery('ul', flyout).length) return;
485var elm = jQuery('ul:first', flyout);
486var off = elm.offset();
487var l = off.left;
488var w = elm.width();
489//var docH = jQuery("#header").height();
490var docW = jQuery("#header").width();
491var isEntirelyVisible = ( flyout.offset().left !== l ) && ( l + w <= docW );
492if (!isEntirelyVisible && ( e === undefined || e.type === 'mouseenter' )) {
493flyout.addClass('dropdown-edge');
494} else if ( !flyout.hasClass( 'show' ) ) {
495flyout.removeClass('dropdown-edge');
496}
497}
498});
499//closes dropdowns when clicked outside of it 
500jQuery(document).on('click', function(event) {
501if (!jQuery(event.target).closest('.has-sub-navigation').length) {
502jQuery(".has-sub-navigation").removeClass("show dropdown-edge");
503}
504if (!jQuery(event.target).closest("#menu").length) {
505jQuery("#menu ul.clearfix").removeClass("nav-wrapper-ul");
506}
507});
508</script>
vendor: 1 bytes, line 508
508
509<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/wcag-focus-ring.js"></script>
vendor: 1 bytes, line 509
509
510<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/wcag-scroll-padding.js"></script>
510
511</head>
512<body class="wide-page inner-jobseeker-page job-search-page">
513<!-- Google Tag Manager (noscript) -->
vendor: 68 bytes, lines 513-514
513
514<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
514GTM-MQ4769R
vendor: 83 bytes, lines 514-515
514"
515height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
516<!-- End Google Tag Manager (noscript) -->
517<script type="text/javascript">
518var _sift = window._sift = window._sift || [];
519_sift.push(['_setAccount', 'ce46a50e51']);
520_sift.push(['_setUserId', '']);
521_sift.push(['_setSessionId', '080b589f-bbda-41d1-8cd6-5ae053af1880']);
522_sift.push(['_trackPageview']);
523_sift.push(['_setCookieDomain','jobs.bir.org.uk']);
524(function() {
525function ls() {
526var e = document.createElement('script');
527e.src = 'https://cdn.sift.com/s.js';
528document.body.appendChild(e);
529}
530if (window.attachEvent) {
531window.attachEvent('onload', ls);
532} else {
533window.addEventListener('load', ls, false);
534}
535})();
536</script>
536
537<header id="header" class="header super">
538<div id="header-content" class="header-content site clearfix">
539<a id="logo" href="http://www.bir.org.uk">
540<img alt="The British Institute of Radiology" src="https://d3ogvqw9m2inp7.cloudfront.net/assets/dynamic/headers/cc/responsive/partner_lib/17988/img/logo-17988.png">
541</a>
542<nav id="menu" role="navigation" aria-label="Main Navigation">	
543<a href="#" role="button" aria-label="Mobile toggle" aria-hidden="true" aria-expanded="false" aria-haspopup="true" id="nav-trigger"><i class="fa fa-bars"></i></a>
544<a href="#" onclick="hideShowSearchFilter(); return false;" role="button" aria-label="Mobile toggle" aria-hidden="true" aria-expanded="false" aria-haspopup="true" id="nav-trigger"><i class="fa fa-search"></i></a>
545<ul class="clearfix">
546<li class="has-sub-navigation"><a href="#" role="button" aria-expanded="false" aria-haspopup="true" class="nav-list-item">Employers</a>
547<ul class="sub-navigation">
548<li><a href="/" >Home</a></li>
549<li><a href="/employer/pricing/" >Products</a></li>
550<li><a href="/employer/post/" onclick="checkoutImpression(1)">Post a Job</a></li>
551<li><a href="/employer/my-account/" >My Account</a></li>
552<li><a href="/employer/my-jobs/" >My Jobs</a></li>
553<li><a href="/employer/clients/" >My Clients</a></li>
554<li><a href="/employer/resumes/results/" >CV Bank</a></li>
555<li><a href="/employer/candidates/" >My Candidates</a></li>
556<li><a href="/employer/company/" >My Company</a></li>
557<li><a href="/employer/templates/" >My Templates</a></li>
558<li><a href="https://hub.momentivesoftware.com/s/article/Where-To-Start-1762649099244" target="_blank" >Help</a></li>
559</ul>
560</li>
561<li class="has-sub-navigation"><a href="#" role="button" aria-expanded="false" aria-haspopup="true" class="nav-list-item">Jobseekers</a>
562<ul class="sub-navigation">
563<li><a href="/">Home</a></li>
564<li><a href="/account/">My Account</a></li>
565<li class="jt_cte_tabs_active"><a href="/job/search/">Job Search</a></li>
566<li><a href="/pricing/">Products</a></li>
567<li><a href="/resumes/">Manage CV</a></li>
568<li><a href="/job/alerts/">Job Alerts</a></li>
569<li><a href="/directory/">Company Directory</a></li>
570<li><a target="_blank" href="https://hub.momentivesoftware.com/s/article/Where-To-Start-1762649099244">Help</a></li>
571</ul>
572</li>	
573<li class="has-sub-navigation sign-in">
574<a href="#" role="button" aria-expanded="false" aria-haspopup="true" class="nav-list-item">Sign-in or Create Account</a>
575<ul class="sub-navigation">
576<li><a href="/employer/login/">Employer</a></li>
577<li><a href="/signin/">Jobseeker</a></li>
578</ul>
579</li>
580</ul>
581</nav>
582<a href="/employer/pricing/?extre=1" class="call-to-action secondary" data-ga-label="Post a Job">Post a Job</a>
583</div>
584</header>
585<noscript>
586<div class="px-2">
587<div class="w-100 text-center alert alert-danger" role="alert">
588We detected that Javascript is deactivated. Some functionality within the site may not work as expected.
589</div>
590</div> 
591</noscript>
592<div id="results-page">
593<main class="job-search-main ">
594<section class="job-results-cf">
595<div class="job-results-body" id="data-step-pane-view">
596<div class="job-results-list" id="data-step-results">
597<div class="job-results-bar search-filter-container search-filter-container-smaller-devices">
598<form id="jt_search" class="search-section" action="/jobs/" method="get">
599<div class="input-group job-title-keyword-input">
600<i class="bi bi-search input-icon" aria-hidden="true"></i>
601<input aria-label="Search Job Title or Keyword" type="search" title="keywords" value="" id="keywords" name="keywords" tab-index="10" maxlength="500" placeholder="Keyword or Job Title" class="form-control search-section-input input-group-control" onKeyUp="kfields_pos_filter()">
602<input type="hidden" name="pos_flt" id="pos_flt" value="0">
603</div>
604<div class="location-radius-section location_autocomplete">
605<div class="input-group location-input" id="data-step-autocomplete">
606<i class="bi bi-geo-alt input-icon" aria-hidden="true"></i>
607<input type="search" aria-label="location search input" id="location" tab-index="2" maxlength="500" placeholder="Location" name="location" autocomplete="off" class="ui-autocomplete-input form-control search-section-input input-group-control" value="">
608<input type="hidden" aria-hidden="true" value="" id="location_completion" name="location_completion">
609<input type="hidden" aria-hidden="true" value="" id="location_type" name="location_type">
610<input type="hidden" aria-hidden="true" value="" id="location_text" name="location_text">
611<input type="hidden" aria-hidden="true" value="true" id="location_autocomplete" name="location_autocomplete">
612<input type="hidden" aria-hidden="true" value="" id="location_latlong" name="location_latlong">
613</div>
614<select name="radius" id="radius" class="fade_radius form-control search-section-input radius-dropdown" readonly style="pointer-events:none;">
615<option value="8">5 mi/8 km</option>
616<option value="15">10 mi/15 km</option>
617<option value="40">25 mi/40 km</option>
618<option value="80">50 mi/80 km</option>
619<option value="160">100 mi/160 km</option>
620<option selected value="320">200 mi/320 km</option>
621</select>
622</div>
623<div class="search-filter-btn">
624<button type="submit" tab-index="30" class="btn btn-outline-primary search-button btn-search" onclick="$(this).closest('#jt_search').submit(); return false;">
625Search
626</button>
627<div class="filter-button" tabindex="0" onclick="open_filter()" role="button" data-toggle="tooltip" data-placement="bottom" title="Ap
627ply Filters">
628<i class="bi bi-sliders filter-icon"></i>
629Filters
630</div>
631</div>
632</form>
633</div>
634<div class="job-results-bar job-results-top job-result-count py-2">
635<div class="d-flex w-100 justify-content-between align-items-center flex-wrap">
636<b class="results-text">All Jobs (256)</b>
637<div class="sort-dropdown-container dropdown bg-white">
638<button class="btn dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
639Sort <i class="bi bi-sort-down-alt sort-icon"></i>
640</button>
641<div class="dropdown-menu dropdown-menu-right bg-white" x-placement="bottom-end">
642<a class="dropdown-item sort-inactive" href="#" onclick="setSort('position', this); return false;">Title</a>
643<a class="dropdown-item sort-inactive" href="#" onclick="setSort('location', this); return false;">Location</a>
644<a class="dropdown-item sort-inactive" href="#" onclick="setSort('company', this); return false;">Company</a>
645<a class="dropdown-item sort-inactive" href="#" onclick="setSort('start', this); return false;">Posted</a>
646</div>
647</div>
648</div>
649</div>
650<div class="job-result-tiles">
651<div role="button" class="candidate-products-promotion-tile job-tile status-highlight-vert job-tile-active status-highlight-active" id="candidate-products-promotion">
652<div class="job-main-data candidate-products-promotion-data">
653<div class="candidate-products-promotion-logo" role="presentation">
654<img src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/img/jobsearch-results-premium-services-promo.svg" alt="Job Search Results Candidate Products Promo Logo" role="presentation">
655</div>
656<div class="job-details" aria-labelledby="Job Search Results Candidate Products Promo Header">
657<div class="job-detail-row">
658<div class="job-title" aria-label="Job Search Results Candidate Products Promo Header">
659Free CV Review
660</div>
661</div>
662<div class="job-subtext-row" aria-labelledby="Job Search Results Candidate Products Promo Description">
663<div class="job-location" aria-label="Job Search Results Candidate Products Promo Description">
66475% of applications never get seen. Beat the bots and get through the filters with a free CV evaluation.
665</div>
666</div>
667<div class="candidate-products-promotion-button-container">
668<button class="candidate-products-promotion-button" onclick="clickCandidateProductsPromotion('/pricing/')">
669Get Started
670</button>
671</div>
672<div class="candidate-products-promotion-ad-container">
673AD
674</div>
675</div>
676</div>
677</div>
678<div role="button" id="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust" class="job-tile-86024909 job-tile status-highlight-vert job-tile-active status-highlight-active data-step-save-job">
679<div class="job-main-data">
680<input type="hidden" name="job_id" value="86024909"/>
681<input type="hidden" name="ga_rank" value="1" >
682<input type="hidden" name="job_Position" value="Consultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Radiology"/>
683<input type="hidden" name="job_company" value="Barts&#x20;Health&#x20;NHS&#x20;Trust"/>
684<input type="hidden" name="job_flag" value="initials"/>
685<input type="hidden" name="job_backfill_ga" value=""/>
686<input type="hidden" name="job_source" value="posted" />
687<div class="job-details-logo logo-none" role="presentation">
688<span role="presentation">B</span>
689</div>
690<div class="job-details" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust">
691<div class="job-detail-row">
692<div class="job-title" aria-label="Job Title">
693<a href="/job/consultant-in-radiology-with-interest-in-genitourinary-gu-radiology/86024909/" title="Consultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Radiology" data-href-type="inactive">Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology</a>
694</div>
695<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86024909, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
696<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86024909"></a>
697</div>
698</div>
699<input type="hidden" name="job_upgrades" value=""/>
700<div class="job-company-row" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust" aria-label="Hiring Company">
701Barts Health NHS Trust
702</div>
703<div class="job-subtext-row" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust">
704<div class="job-location" aria-label="Job Location">
705London, England, United Kingdom
706<input type="hidden" name="job_Location" value="London, England, United Kingdom"/>
707<span class="workplace-location">(on-site)</span>
708</div>
709<div aria-label="Job Posted Date" class="job-posted-date">
71014 days ago
711</div>
712</div>
713</div>
714</div>
715</div>
716<div role="button" id="Consultant-Radiologist-with-a-major-interest-in-Gastrointestinal-at-Portsmouth-Hospitals-University-NHS-Trust" class="job-tile-86024936 job-tile status-highlight-vert status-highlight-spotlight-left ">
717<div class="job-main-data">
718<input type="hidden" name="job_id" value="86024936"/>
719<input type="hidden" name="ga_rank" value="2" >
720<input type="hidden" name="job_Position" value="Consultant&#x20;Radiologist&#x20;with&#x20;a&#x20;major&#x20;interest&#x20;in&#x20;Gastrointestinal"/>
721<input type="hidden" name="job_company" value="Portsmouth&#x20;Hospitals&#x20;University&#x20;NHS&#x20;Trust"/>
722<input type="hidden" name="job_flag" value="initials"/>
723<input type="hidden" name="job_backfill_ga" value=""/>
724<input type="hidden" name="job_source" value="posted" />
725<div class="job-details-logo logo-none" role="presentation">
726<span role="presentation">P</span>
727</div>
728<div class="job-details" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in-Gastrointestinal-at-Portsmouth-Hospitals-University-NHS-Trust">
729<div class="job-detail-row">
730<div class="job-title" aria-label="Job Title">
731<a href="/job/consultant-radiologist-with-a-major-interest-in-gastrointestinal/86024936/" title="Consultant&#x20;Radiologist&#x20;with&#x20;a&#x20;major&#x20;interest&#x20;in&#x20;Gastrointestinal" data-href-type="inactive">Consultant Radiologist with a major interest in Gastrointestinal</a>
732</div>
733<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86024936, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
734<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86024936"></a>
735</div>
736</div>
737<input type="hidden" name="job_upgrades" value="Spotlight|"/>
738<div class="job-company-row" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in-Gastrointestinal-at-Portsmouth-Hospitals-University-NHS-Trust" aria-label="Hiring Company">
739Portsmouth Hospitals University NHS Trust
740</div>
741<div class="job-subtext-row" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in-Gastrointestinal-at-Portsmouth-Hospitals-University-NHS-Trust">
742<div class="job-location" aria-label="Job Location">
743Portsmouth, England, United Kingdom
744<input type="hidden" name="job_Location" value="Portsmouth, England, United Kingdom"/>
745<span class="workplace-location">(on-site)</span>
746</div>
747<div aria-label="Job Posted Date" class="job-posted-date">
74814 days ago
749</div>
750</div>
751</div>
752</div>
753</div>
754<div role="button" id="Consultant-Radiologist-with-Specialist-Interest-in-Chest-Imaging-at-The-Shrewsbury-and-Telford-Hospital-NHS-Trust" class="job-tile-86024970 job-tile status-highlight-vert status-highlight-spotlight-left ">
755<div class="job-main-data">
756<input type="hidden" name="job_id" value="86024970"/>
757<input type="hidden" name="ga_rank" value="3" >
758<input type="hidden" name="job_Position" value="Consultant&#x20;Radiologist&#x20;with&#x20;Specialist&#x20;Interest&#x20;in&#x20;Chest&#x20;Imaging"/>
759<input type="hidden" name="job_company" value="The&#x20;Shrewsbury&#x20;and&#x20;Telford&#x20;Hospital&#x20;NHS&#x20;Trust"/>
760<input type="hidden" name="job_flag" value="initials"/>
761<input type="hidden" name="job_backfill_ga" value=""/>
762<input type="hidden" name="job_source" value="posted" />
763<div class="job-details-logo logo-none" role="presentation">
764<span role="presentation">T</span>
765</div>
766<div class="job-details" aria-labelledby="Consultant-Radiologist-with-Specialist-Interest-in-Chest-Imaging-at-The-Shrewsbury-and-Telford-Hospital-NHS-Trust">
767<div class="job-detail-row">
768<div class="job-title" aria-label="Job Title">
769<a href="/job/consultant-radiologist-with-specialist-interest-in-chest-imaging/86024970/" title="Consultant&#x20;Radiologist&#x20;with&#x20;Specialist&#x20;Interest&#x20;in&#x20;Chest&#x20;Imaging" data-href-type="inactive">Consultant Radiologist with Specialist Interest in Chest Imaging</a>
770</div>
771<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86024970, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
772<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86024970"></a>
773</div>
774</div>
775<input type="hidden" name="job_upgrades" value="Spotlight|"/>
776<div class="job-company-row" aria-labelledby="Consultant-Radiologist-with-Specialist-Interest-in-Chest-Imaging-at-The-Shrewsbury-and-Telford-Hospital-NHS-Trust" aria-label="Hiring Company">
777The Shrewsbury and Telford Hospital NHS Trust
778</div>
779<div class="job-subtext-row" aria-labelledby="Consultant-Radiologist-with-Specialist-Interest-in-Chest-Imaging-at-The-Shrewsbury-and-Telford-Hospital-NHS-Trust">
780<div class="job-location" aria-label="Job Location">
781Telford, England, United Kingdom
782<input type="hidden" name="job_Location" value="Telford, England, United Kingdom"/>
783<span class="workplace-location">(on-site)</span>
784</div>
785<div aria-label="Job Posted Date" class="job-posted-date">
78614 days ago
787</div>
788</div>
789</div>
790</div>
791</div>
792<div role="button" id="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-RadiologyConsultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust" class="job-tile-86009871 job-tile status-highlight-vert status-highlight-spotlight-left ">
793<div class="job-main-data">
794<input type="hidden" name="job_id" value="86009871"/>
795<input type="hidden" name="ga_rank" value="4" >
796<input type="hidden" name="job_Position" value="Consultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;RadiologyConsultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Radiology"/>
797<input type="hidden" name="job_company" value="Barts&#x20;Health&#x20;NHS&#x20;Trust"/>
798<input type="hidden" name="job_flag" value="initials"/>
799<input type="hidden" name="job_backfill_ga" value=""/>
800<input type="hidden" name="job_source" value="posted" />
801<div class="job-details-logo logo-none" role="presentation">
802<span role="presentation">B</span>
803</div>
804<div class="job-details" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-RadiologyConsultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust">
805<div class="job-detail-row">
806<div class="job-title" aria-label="Job Title">
807<a href="/job/consultant-in-radiology-with-interest-in-genitourinary-gu-radiologyconsultant-in-radiology-with-interest-in-genitourinary-gu-radiology/86009871/" title="Consultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;RadiologyConsultant&#x20;in&#x20;Radiology&#x20;with&#x20;interest&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Radiology" data-href-type="inactive">Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; RadiologyConsultant in...</a>
808</div>
809<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86009871, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
810<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86009871"></a>
811</div>
812</div>
813<input type="hidden" name="job_upgrades" value="Spotlight|"/>
814<div class="job-company-row" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-RadiologyConsultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust" aria-label="Hiring Company">
815Barts Health NHS Trust
816</div>
817<div class="job-subtext-row" aria-labelledby="Consultant-in-Radiology-with-interest-in-Genitourinary-&#x28;
817GU&#x29;-RadiologyConsultant-in-Radiology-with-interest-in-Genitourinary-&#x28;GU&#x29;-Radiology-at-Barts-Health-NHS-Trust">
818<div class="job-location" aria-label="Job Location">
819London, England, United Kingdom
820<input type="hidden" name="job_Location" value="London, England, United Kingdom"/>
821<span class="workplace-location">(on-site)</span>
822</div>
823<div aria-label="Job Posted Date" class="job-posted-date">
82414 days ago
825</div>
826</div>
827</div>
828</div>
829</div>
830<div role="button" id="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham-NHS-Trust" class="job-tile-86009904 job-tile status-highlight-vert status-highlight-spotlight-left ">
831<div class="job-main-data">
832<input type="hidden" name="job_id" value="86009904"/>
833<input type="hidden" name="ga_rank" value="5" >
834<input type="hidden" name="job_Position" value="Consultant&#x20;in&#x20;Breast&#x20;Radiology"/>
835<input type="hidden" name="job_company" value="Sandwell&#x20;and&#x20;West&#x20;Birmingham&#x20;NHS&#x20;Trust"/>
836<input type="hidden" name="job_flag" value="initials"/>
837<input type="hidden" name="job_backfill_ga" value=""/>
838<input type="hidden" name="job_source" value="posted" />
839<div class="job-details-logo logo-none" role="presentation">
840<span role="presentation">S</span>
841</div>
842<div class="job-details" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham-NHS-Trust">
843<div class="job-detail-row">
844<div class="job-title" aria-label="Job Title">
845<a href="/job/consultant-in-breast-radiology/86009904/" title="Consultant&#x20;in&#x20;Breast&#x20;Radiology" data-href-type="inactive">Consultant in Breast Radiology</a>
846</div>
847<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86009904, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
848<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86009904"></a>
849</div>
850</div>
851<input type="hidden" name="job_upgrades" value="Spotlight|"/>
852<div class="job-company-row" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham-NHS-Trust" aria-label="Hiring Company">
853Sandwell and West Birmingham NHS Trust
854</div>
855<div class="job-subtext-row" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham-NHS-Trust">
856<div class="job-location" aria-label="Job Location">
857Birmingham, England, United Kingdom
858<input type="hidden" name="job_Location" value="Birmingham, England, United Kingdom"/>
859<span class="workplace-location">(on-site)</span>
860</div>
861<div aria-label="Job Posted Date" class="job-posted-date">
86214 days ago
863</div>
864</div>
865</div>
866</div>
867</div>
868<div role="button" id="Clinical-Nurse-Specialist---Interventional-Radiology-at-Royal-Devon-University-Healthcare-NHS-Foundation-Trust" class="job-tile-86009912 job-tile status-highlight-vert status-highlight-spotlight-left ">
869<div class="job-main-data">
870<input type="hidden" name="job_id" value="86009912"/>
871<input type="hidden" name="ga_rank" value="6" >
872<input type="hidden" name="job_Position" value="Clinical&#x20;Nurse&#x20;Specialist&#x20;-&#x20;Interventional&#x20;Radiology"/>
873<input type="hidden" name="job_company" value="Royal&#x20;Devon&#x20;University&#x20;Healthcare&#x20;NHS&#x20;Foundation&#x20;Trust"/>
874<input type="hidden" name="job_flag" value="initials"/>
875<input type="hidden" name="job_backfill_ga" value=""/>
876<input type="hidden" name="job_source" value="posted" />
877<div class="job-details-logo logo-none" role="presentation">
878<span role="presentation">R</span>
879</div>
880<div class="job-details" aria-labelledby="Clinical-Nurse-Specialist---Interventional-Radiology-at-Royal-Devon-University-Healthcare-NHS-Foundation-Trust">
881<div class="job-detail-row">
882<div class="job-title" aria-label="Job Title">
883<a href="/job/clinical-nurse-specialist-interventional-radiology/86009912/" title="Clinical&#x20;Nurse&#x20;Specialist&#x20;-&#x20;Interventional&#x20;Radiology" data-href-type="inactive">Clinical Nurse Specialist - Interventional Radiology</a>
884</div>
885<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86009912, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
886<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86009912"></a>
887</div>
888</div>
889<input type="hidden" name="job_upgrades" value="Spotlight|"/>
890<div class="job-company-row" aria-labelledby="Clinical-Nurse-Specialist---Interventional-Radiology-at-Royal-Devon-University-Healthcare-NHS-Foundation-Trust" aria-label="Hiring Company">
891Royal Devon University Healthcare NHS Foundation Trust
892</div>
893<div class="job-subtext-row" aria-labelledby="Clinical-Nurse-Specialist---Interventional-Radiology-at-Royal-Devon-University-Healthcare-NHS-Foundation-Trust">
894<div class="job-location" aria-label="Job Location">
895Exeter, England, United Kingdom
896<input type="hidden" name="job_Location" value="Exeter, England, United Kingdom"/>
897<span class="workplace-location">(on-site)</span>
898</div>
899<div aria-label="Job Posted Date" class="job-posted-date">
90014 days ago
901</div>
902</div>
903</div>
904</div>
905</div>
906<div role="button" id="Consultant-in-Dental-and-Maxillofacial-Radiology-at-Cardiff-and-Vale-University-Health-Board" class="job-tile-86009957 job-tile status-highlight-vert status-highlight-spotlight-left ">
907<div class="job-main-data">
908<input type="hidden" name="job_id" value="86009957"/>
909<input type="hidden" name="ga_rank" value="7" >
910<input type="hidden" name="job_Position" value="Consultant&#x20;in&#x20;Dental&#x20;and&#x20;Maxillofacial&#x20;Radiology"/>
911<input type="hidden" name="job_company" value="Cardiff&#x20;and&#x20;Vale&#x20;University&#x20;Health&#x20;Board"/>
912<input type="hidden" name="job_flag" value="initials"/>
913<input type="hidden" name="job_backfill_ga" value=""/>
914<input type="hidden" name="job_source" value="posted" />
915<div class="job-details-logo logo-none" role="presentation">
916<span role="presentation">C</span>
917</div>
918<div class="job-details" aria-labelledby="Consultant-in-Dental-and-Maxillofacial-Radiology-at-Cardiff-and-Vale-University-Health-Board">
919<div class="job-detail-row">
920<div class="job-title" aria-label="Job Title">
921<a href="/job/consultant-in-dental-and-maxillofacial-radiology/86009957/" title="Consultant&#x20;in&#x20;Dental&#x20;and&#x20;Maxillofacial&#x20;Radiology" data-href-type="inactive">Consultant in Dental and Maxillofacial Radiology</a>
922</div>
923<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86009957, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
924<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86009957"></a>
925</div>
926</div>
927<input type="hidden" name="job_upgrades" value="Spotlight|"/>
928<div class="job-company-row" aria-labelledby="Consultant-in-Dental-and-Maxillofacial-Radiology-at-Cardiff-and-Vale-University-Health-Board" aria-label="Hiring Company">
929Cardiff and Vale University Health Board
930</div>
931<div class="job-subtext-row" aria-labelledby="Consultant-in-Dental-and-Maxillofacial-Radiology-at-Cardiff-and-Vale-University-Health-Board">
932<div class="job-location" aria-label="Job Location">
933Cardiff, England, United Kingdom
934<input type="hidden" name="job_Location" value="Cardiff, England, United Kingdom"/>
935<span class="workplace-location">(on-site)</span>
936</div>
937<div aria-label="Job Posted Date" class="job-posted-date">
93814 days ago
939</div>
940</div>
941</div>
942</div>
943</div>
944<div role="button" id="Principal-Clinical-Scientist---Radiation-Safety,-Diagnostic-Radiology-at-Maidstone-and-Tunbridge-Wells-NHS-Trust" class="job-tile-86010003 job-tile status-highlight-vert status-highlight-spotlight-left ">
945<div class="job-main-data">
946<input type="hidden" name="job_id" value="86010003"/>
947<input type="hidden" name="ga_rank" value="8" >
948<input type="hidden" name="job_Position" value="Principal&#x20;Clinical&#x20;Scientist&#x20;-&#x20;Radiation&#x20;Safety,&#x20;Diagnostic&#x20;Radiology"/>
949<input type="hidden" name="job_company" value="Maidstone&#x20;and&#x20;Tunbridge&#x20;Wells&#x20;NHS&#x20;Trust"/>
950<input type="hidden" name="job_flag" value="initials"/>
951<input type="hidden" name="job_backfill_ga" value=""/>
952<input type="hidden" name="job_source" value="posted" />
953<div class="job-details-logo logo-none" role="presentation">
954<span role="presentation">M</span>
955</div>
956<div class="job-details" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,-Diagnostic-Radiology-at-Maidstone-and-Tunbridge-Wells-NHS-Trust">
957<div class="job-detail-row">
958<div class="job-title" aria-label="Job Title">
959<a href="/job/principal-clinical-scientist-radiation-safety-diagnostic-radiology/86010003/" title="Principal&#x20;Clinical&#x20;Scientist&#x20;-&#x20;Radiation&#x20;Safety,&#x20;Diagnostic&#x20;Radiology" data-href-type="inactive">Principal Clinical Scientist - Radiation Safety, Diagnostic Radiology</a>
960</div>
961<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86010003, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
962<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86010003"></a>
963</div>
964</div>
965<input type="hidden" name="job_upgrades" value="Spotlight|"/>
966<div class="job-company-row" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,-Diagnostic-Radiology-at-Maidstone-and-Tunbridge-Wells-NHS-Trust" aria-label="Hiring Company">
967Maidstone and Tunbridge Wells NHS Trust
968</div>
969<div class="job-subtext-row" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,-Diagnostic-Radiology-at-Maidstone-and-Tunbridge-Wells-NHS-Trust">
970<div class="job-location" aria-label="Job Location">
971Maidstone, England, United Kingdom
972<input type="hidden" name="job_Location" value="Maidstone, England, United Kingdom"/>
973<span class="workplace-location">(on-site)</span>
974</div>
975<div aria-label="Job Posted Date" class="job-posted-date">
97614 days ago
977</div>
978</div>
979</div>
980</div>
981</div>
982<div role="button" id="Consultant-Radiologist-with-S&#x2f;I-in-Genitourinary-&#x28;GU&#x29;-Imaging-at-Mersey-and-West-Lancashire-Teaching-Hospitals-NHS-Trust" class="job-tile-86021877 job-tile status-highlight-vert status-highlight-spotlight-left ">
983<div class="job-main-data">
984<input type="hidden" name="job_id" value="86021877"/>
985<input type="hidden" name="ga_rank" value="9" >
986<input type="hidden" name="job_Position" value="Consultant&#x20;Radiologist&#x20;with&#x20;S&#x2f;I&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Imaging"/>
987<input type="hidden" name="job_company" value="Mersey&#x20;and&#x20;West&#x20;Lancashire&#x20;Teaching&#x20;Hospitals&#x20;NHS&#x20;Trust"/>
988<input type="hidden" name="job_flag" value="initials"/>
989<input type="hidden" name="job_backfill_ga" value=""/>
990<input type="hidden" name="job_source" value="posted" />
991<div class="job-details-logo logo-none" role="presentation">
992<span role="presentation">M</span>
993</div>
994<div class="job-details" aria-labelledby="Consultant-Radiologist-with-S&#x2f;I-in-Genitourinary-&#x28;GU&#x29;-Imaging-at-Mersey-and-West-Lancashire-Teaching-Hospitals-NHS-Trust">
995<div class="job-detail-row">
996<div class="job-title" aria-label="Job Title">
997<a href="/job/consultant-radiologist-with-si-in-genitourinary-gu-imaging/86021877/" title="Consultant&#x20;Radiologist&#x20;with&#x20;S&#x2f;I&#x20;in&#x20;Genitourinary&#x20;&#x28;GU&#x29;&#x20;Imaging" data-href-type="inactive">Consultant Radiologist with S&#x2f;I in Genitourinary &#x28;GU&#x29; Imaging</a>
998</div>
999<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(86021877, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
1000<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save86021877"></a>
1001</div>
1002</div>
1003<input type="hidden" name="job_upgrades" value="Spotlight|"/>
1004<div class="job-company-row" aria-labelledby="Consultant-Radiologist-with-S&#x2f;I-in-Genitourinary-&#x28;GU&#x29;-Imaging-at-Mersey-and-West-Lancashire-Teaching-Hospitals-NHS-Trust" aria-label="Hiring Company">
1005Mersey and West Lancashire Teaching Hospitals NHS Trust
1006</div>
1007<div class="job-subtext-row" aria-labelledby="Consultant-Radiologist-with-S&#x2f;I-in-Genitourinary-&#x28;GU&#x29;-Imaging-at-Mersey-and-West-Lancashire-Teaching-Hospitals-NHS-Trust">
1008<div class="job-location" aria-label="Job Location">
1009Southport, England, United Kingdom
1010<input type="hidden" name="job_Location" value="Southport, England, United Kingdom"/>
1011<span class="workplace-location">(on-site)</span>
1012</div>
1013<div aria-label="Job Posted Date" class="job-posted-date">
101414 days ago
1015</div>
1016</div>
1017</div>
1018</div>
1019</div>
1020<div role="button" id="Radiation-Therapists-at-Health-New-Zealand---Te-Whatu-Ora" class="job-tile-85791605 job-tile status-highlight-vert ">
1021<div class="job-main-data">
1022<input type="hidden" name="job_id" value="85791605"/>
1023<input type="hidden" name="ga_rank" value="10" >
1024<input type="hidden" name="job_Position" value="Radiation&#x20;Therapists"/>
1025<input type="hidden" name="job_company" value="Health&#x20;New&#x20;Zealand&#x20;-&#x20;Te&#x20;Whatu&#x20;Ora"/>
1026<input type="hidden" name="job_flag" value="featured"/>
1027<input type="hidden" name="job_backfill_ga" value=""/>
1028<input type="hidden" name="job_source" value="posted" />
1029<div class="job-details-logo " role="presentation">
1030<img src="https://d3ogvqw9m2inp7.cloudfront.net/assets/dynamic/assets/recruiters/images/2009425/logo.png" alt="Health&#x20;New&#x20;Zealand&#x20;
1030-&#x20;Te&#x20;Whatu&#x20;Ora Logo" role="presentation" loading="lazy">
1031</div>
1032<div class="job-details" aria-labelledby="Radiation-Therapists-at-Health-New-Zealand---Te-Whatu-Ora">
1033<div class="job-detail-row">
1034<div class="job-title" aria-label="Job Title">
1035<a href="/job/radiation-therapists/85791605/" title="Radiation&#x20;Therapists" data-href-type="inactive">Radiation Therapists</a>
1036</div>
1037<div class="icon-off bookmark" aria-label="This Job is not Saved to your Profile" tabindex="0" onclick="saveJob(85791605, this,'(results list)', '/signin/?goto=%2Fjobs%2F&msg=1');">
1038<a href="#" role="button" aria-label="Press Enter to Save this Job" class="save85791605"></a>
1039</div>
1040</div>
1041<input type="hidden" name="job_upgrades" value=""/>
1042<div class="job-company-row" aria-labelledby="Radiation-Therapists-at-Health-New-Zealand---Te-Whatu-Ora" aria-label="Hiring Company">
1043Health New Zealand - Te Whatu Ora
1044</div>
1045<div class="job-subtext-row" aria-labelledby="Radiation-Therapists-at-Health-New-Zealand---Te-Whatu-Ora">
1046<div class="job-location" aria-label="Job Location">
1047Other, New Zealand
1048<input type="hidden" name="job_Location" value="Other, New Zealand"/>
1049<span class="workplace-location">(on-site)</span>
1050</div>
1051<div aria-label="Job Posted Date" class="job-posted-date">
105228 days ago
1053</div>
1054</div>
1055</div>
1056</div>
1057</div>
1058<div role="button" id="General-Radiographer-at-Day-Webster" class="job-tile-f14adde5-5889559111 job-tile status-highlight-vert ">
1059<div class="job-main-data">
1060<input type="hidden" name="job_id" value="f14adde5-5889559111"/>
1061<input type="hidden" name="ga_rank" value="11" >
1062<input type="hidden" name="job_Position" value="General&#x20;Radiographer"/>
1063<input type="hidden" name="job_company" value="Day&#x20;Webster"/>
1064<input type="hidden" name="job_flag" value="initials"/>
1065<input type="hidden" name="job_backfill_ga" value=""/>
1066<input type="hidden" name="job_source" value="adzuna" />
1067<div class="job-details-logo logo-none" role="presentation">
1068<span role="presentation">DW</span>
1069</div>
1070<div class="job-details" aria-labelledby="General-Radiographer-at-Day-Webster">
1071<div class="job-detail-row">
1072<div class="job-title" aria-label="Job Title">
1073<a href="/job/general-radiographer/f14adde5-5889559111/" title="General&#x20;Radiographer" data-href-type="inactive">General Radiographer</a>
1074</div>
1075</div>
1076<input type="hidden" name="job_upgrades" value=""/>
1077<div class="job-company-row" aria-labelledby="General-Radiographer-at-Day-Webster" aria-label="Hiring Company">
1078Day Webster
1079</div>
1080<div class="job-subtext-row" aria-labelledby="General-Radiographer-at-Day-Webster">
1081<div class="job-location" aria-label="Job Location">
1082Eastbourne, East Sussex, United Kingdom
1083<input type="hidden" name="job_Location" value="Eastbourne, East Sussex, United Kingdom"/>
1084</div>
1085<div aria-label="Job Posted Date" class="job-posted-date">
108613 days ago
1087</div>
1088</div>
1089</div>
1090</div>
1091</div>
1092<div role="button" id="Senior-Radiographer-MRI---Bank-Shifts-at-Bupa-Occupational-Health" class="job-tile-f14adde5-5752140766 job-tile status-highlight-vert ">
1093<div class="job-main-data">
1094<input type="hidden" name="job_id" value="f14adde5-5752140766"/>
1095<input type="hidden" name="ga_rank" value="12" >
1096<input type="hidden" name="job_Position" value="Senior&#x20;Radiographer&#x20;MRI&#x20;-&#x20;Bank&#x20;Shifts"/>
1097<input type="hidden" name="job_company" value="Bupa&#x20;Occupational&#x20;Health"/>
1098<input type="hidden" name="job_flag" value="initials"/>
1099<input type="hidden" name="job_backfill_ga" value=""/>
1100<input type="hidden" name="job_source" value="adzuna" />
1101<div class="job-details-logo logo-none" role="presentation">
1102<span role="presentation">B</span>
1103</div>
1104<div class="job-details" aria-labelledby="Senior-Radiographer-MRI---Bank-Shifts-at-Bupa-Occupational-Health">
1105<div class="job-detail-row">
1106<div class="job-title" aria-label="Job Title">
1107<a href="/job/senior-radiographer-mri-bank-shifts/f14adde5-5752140766/" title="Senior&#x20;Radiographer&#x20;MRI&#x20;-&#x20;Bank&#x20;Shifts" data-href-type="inactive">Senior Radiographer MRI - Bank Shifts</a>
1108</div>
1109</div>
1110<input type="hidden" name="job_upgrades" value=""/>
1111<div class="job-company-row" aria-labelledby="Senior-Radiographer-MRI---Bank-Shifts-at-Bupa-Occupational-Health" aria-label="Hiring Company">
1112Bupa Occupational Health
1113</div>
1114<div class="job-subtext-row" aria-labelledby="Senior-Radiographer-MRI---Bank-Shifts-at-Bupa-Occupational-Health">
1115<div class="job-location" aria-label="Job Location">
1116South West London, London, United Kingdom
1117<input type="hidden" name="job_Location" value="South West London, London, United Kingdom"/>
1118</div>
1119<div aria-label="Job Posted Date" class="job-posted-date">
112010 days ago
1121</div>
1122</div>
1123</div>
1124</div>
1125</div>
1126<div role="button" id="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK" class="job-tile-f14adde5-5891557077 job-tile status-highlight-vert ">
1127<div class="job-main-data">
1128<input type="hidden" name="job_id" value="f14adde5-5891557077"/>
1129<input type="hidden" name="ga_rank" value="13" >
1130<input type="hidden" name="job_Position" value="Senior&#x20;Mobile&#x20;CT&#x20;
1130Radiographer&#x20;-&#x20;Bank"/>
1131<input type="hidden" name="job_company" value="medneo&#x20;UK"/>
1132<input type="hidden" name="job_flag" value="initials"/>
1133<input type="hidden" name="job_backfill_ga" value=""/>
1134<input type="hidden" name="job_source" value="adzuna" />
1135<div class="job-details-logo logo-none" role="presentation">
1136<span role="presentation">mU</span>
1137</div>
1138<div class="job-details" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK">
1139<div class="job-detail-row">
1140<div class="job-title" aria-label="Job Title">
1141<a href="/job/senior-mobile-ct-radiographer-bank/f14adde5-5891557077/" title="Senior&#x20;Mobile&#x20;CT&#x20;Radiographer&#x20;-&#x20;Bank" data-href-type="inactive">Senior Mobile CT Radiographer - Bank</a>
1142</div>
1143</div>
1144<input type="hidden" name="job_upgrades" value=""/>
1145<div class="job-company-row" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK" aria-label="Hiring Company">
1146medneo UK
1147</div>
1148<div class="job-subtext-row" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK">
1149<div class="job-location" aria-label="Job Location">
1150Swindon, Wiltshire, United Kingdom
1151<input type="hidden" name="job_Location" value="Swindon, Wiltshire, United Kingdom"/>
1152</div>
1153<div aria-label="Job Posted Date" class="job-posted-date">
115411 days ago
1155</div>
1156</div>
1157</div>
1158</div>
1159</div>
1160<div role="button" id="Professional-Head-of-Radiography-at-Cwm-Taf-Morgannwg-University-Health-Board" class="job-tile-f14adde5-5890390797 job-tile status-highlight-vert ">
1161<div class="job-main-data">
1162<input type="hidden" name="job_id" value="f14adde5-5890390797"/>
1163<input type="hidden" name="ga_rank" value="14" >
1164<input type="hidden" name="job_Position" value="Professional&#x20;Head&#x20;of&#x20;Radiography"/>
1165<input type="hidden" name="job_company" value="Cwm&#x20;Taf&#x20;Morgannwg&#x20;University&#x20;Health&#x20;Board"/>
1166<input type="hidden" name="job_flag" value="initials"/>
1167<input type="hidden" name="job_backfill_ga" value=""/>
1168<input type="hidden" name="job_source" value="adzuna" />
1169<div class="job-details-logo logo-none" role="presentation">
1170<span role="presentation">C</span>
1171</div>
1172<div class="job-details" aria-labelledby="Professional-Head-of-Radiography-at-Cwm-Taf-Morgannwg-University-Health-Board">
1173<div class="job-detail-row">
1174<div class="job-title" aria-label="Job Title">
1175<a href="/job/professional-head-of-radiography/f14adde5-5890390797/" title="Professional&#x20;Head&#x20;of&#x20;Radiography" data-href-type="inactive">Professional Head of Radiography</a>
1176</div>
1177</div>
1178<input type="hidden" name="job_upgrades" value=""/>
1179<div class="job-company-row" aria-labelledby="Professional-Head-of-Radiography-at-Cwm-Taf-Morgannwg-University-Health-Board" aria-label="Hiring Company">
1180Cwm Taf Morgannwg University Health Board
1181</div>
1182<div class="job-subtext-row" aria-labelledby="Professional-Head-of-Radiography-at-Cwm-Taf-Morgannwg-University-Health-Board">
1183<div class="job-location" aria-label="Job Location">
1184Ynysmaerdy, Pontyclun, United Kingdom
1185<input type="hidden" name="job_Location" value="Ynysmaerdy, Pontyclun, United Kingdom"/>
1186</div>
1187<div aria-label="Job Posted Date" class="job-posted-date">
118811 days ago
1189</div>
1190</div>
1191</div>
1192</div>
1193</div>
1194<div role="button" id="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK" class="job-tile-f14adde5-5891553936 job-tile status-highlight-vert ">
1195<div class="job-main-data">
1196<input type="hidden" name="job_id" value="f14adde5-5891553936"/>
1197<input type="hidden" name="ga_rank" value="15" >
1198<input type="hidden" name="job_Position" value="Senior&#x20;Mobile&#x20;CT&#x20;Radiographer&#x20;-&#x20;Bank"/>
1199<input type="hidden" name="job_company" value="medneo&#x20;UK"/>
1200<input type="hidden" name="job_flag" value="initials"/>
1201<input type="hidden" name="job_backfill_ga" value=""/>
1202<input type="hidden" name="job_source" value="adzuna" />
1203<div class="job-details-logo logo-none" role="presentation">
1204<span role="presentation">mU</span>
1205</div>
1206<div class="job-details" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK">
1207<div class="job-detail-row">
1208<div class="job-title" aria-label="Job Title">
1209<a href="/job/senior-mobile-ct-radiographer-bank/f14adde5-5891553936/" title="Senior&#x20;Mobile&#x20;CT&#x20;
1209Radiographer&#x20;-&#x20;Bank" data-href-type="inactive">Senior Mobile CT Radiographer - Bank</a>
1210</div>
1211</div>
1212<input type="hidden" name="job_upgrades" value=""/>
1213<div class="job-company-row" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK" aria-label="Hiring Company">
1214medneo UK
1215</div>
1216<div class="job-subtext-row" aria-labelledby="Senior-Mobile-CT-Radiographer---Bank-at-medneo-UK">
1217<div class="job-location" aria-label="Job Location">
1218Torwood, Larbert, United Kingdom
1219<input type="hidden" name="job_Location" value="Torwood, Larbert, United Kingdom"/>
1220</div>
1221<div aria-label="Job Posted Date" class="job-posted-date">
122211 days ago
1223</div>
1224</div>
1225</div>
1226</div>
1227</div>
1228<div role="button" id="Specialist-Radiographer-FTC-at-Spire-Healthcare" class="job-tile-f14adde5-5895229038 job-tile status-highlight-vert ">
1229<div class="job-main-data">
1230<input type="hidden" name="job_id" value="f14adde5-5895229038"/>
1231<input type="hidden" name="ga_rank" value="16" >
1232<input type="hidden" name="job_Position" value="Specialist&#x20;Radiographer&#x20;FTC"/>
1233<input type="hidden" name="job_company" value="Spire&#x20;Healthcare"/>
1234<input type="hidden" name="job_flag" value="initials"/>
1235<input type="hidden" name="job_backfill_ga" value=""/>
1236<input type="hidden" name="job_source" value="adzuna" />
1237<div class="job-details-logo logo-none" role="presentation">
1238<span role="presentation">SH</span>
1239</div>
1240<div class="job-details" aria-labelledby="Specialist-Radiographer-FTC-at-Spire-Healthcare">
1241<div class="job-detail-row">
1242<div class="job-title" aria-label="Job Title">
1243<a href="/job/specialist-radiographer-ftc/f14adde5-5895229038/" title="Specialist&#x20;Radiographer&#x20;FTC" data-href-type="inactive">Specialist Radiographer FTC</a>
1244</div>
1245</div>
1246<input type="hidden" name="job_upgrades" value=""/>
1247<div class="job-company-row" aria-labelledby="Specialist-Radiographer-FTC-at-Spire-Healthcare" aria-label="Hiring Company">
1248Spire Healthcare
1249</div>
1250<div class="job-subtext-row" aria-labelledby="Specialist-Radiographer-FTC-at-Spire-Healthcare">
1251<div class="job-location" aria-label="Job Location">
1252Manchester, Greater Manchester, United Kingdom
1253<input type="hidden" name="job_Location" value="Manchester, Greater Manchester, United Kingdom"/>
1254</div>
1255<div aria-label="Job Posted Date" class="job-posted-date">
12568 days ago
1257</div>
1258</div>
1259</div>
1260</div>
1261</div>
1262<div role="button" id="Bank-Mobile-Radiographer-at-Spire-Healthcare" class="job-tile-f14adde5-5895237111 job-tile status-highlight-vert ">
1263<div class="job-main-data">
1264<input type="hidden" name="job_id" value="f14adde5-5895237111"/>
1265<input type="hidden" name="ga_rank" value="17" >
1266<input type="hidden" name="job_Position" value="Bank&#x20;Mobile&#x20;Radiographer"/>
1267<input type="hidden" name="job_company" value="Spire&#x20;Healthcare"/>
1268<input type="hidden" name="job_flag" value="initials"/>
1269<input type="hidden" name="job_backfill_ga" value=""/>
1270<input type="hidden" name="job_source" value="adzuna" />
1271<div class="job-details-logo logo-none" role="presentation">
1272<span role="presentation">SH</span>
1273</div>
1274<div class="job-details" aria-labelledby="Bank-Mobile-Radiographer-at-Spire-Healthcare">
1275<div class="job-detail-row">
1276<div class="job-title" aria-label="Job Title">
1277<a href="/job/bank-mobile-radiographer/f14adde5-5895237111/" title="Bank&#x20;Mobile&#x20;Radiographer" data-href-type="inactive">Bank Mobile Radiographer</a>
1278</div>
1279</div>
1280<input type="hidden" name="job_upgrades" value=""/>
1281<div class="job-company-row" aria-labelledby="Bank-Mobile-Radiographer-at-Spire-Healthcare" aria-label="Hiring Company">
1282Spire Healthcare
1283</div>
1284<div class="job-subtext-row" aria-labelledby="Bank-Mobile-Radiographer-at-Spire-Healthcare">
1285<div class="job-location" aria-label="Job Location">
1286UK, United Kingdom
1287<input type="hidden" name="job_Location" value="UK, United Kingdom"/>
1288</div>
1289<div aria-label="Job Posted Date" class="job-posted-date">
12908 days ago
1291</div>
1292</div>
1293</div>
1294</div>
1295</div>
1296<div role="button" id="Senior-Radiographer-at-Ramsay-Health" class="job-tile-f14adde5-5895229953 job-tile status-highlight-vert ">
1297<div class="job-main-data">
1298<input type="hidden" name="job_id" value="f14adde5-5895229953"/>
1299<input type="hidden" name="ga_rank" value="18" >
1300<input type="hidden" name="job_Position" value="Senior&#x20;
1300Radiographer"/>
1301<input type="hidden" name="job_company" value="Ramsay&#x20;Health"/>
1302<input type="hidden" name="job_flag" value="initials"/>
1303<input type="hidden" name="job_backfill_ga" value=""/>
1304<input type="hidden" name="job_source" value="adzuna" />
1305<div class="job-details-logo logo-none" role="presentation">
1306<span role="presentation">RH</span>
1307</div>
1308<div class="job-details" aria-labelledby="Senior-Radiographer-at-Ramsay-Health">
1309<div class="job-detail-row">
1310<div class="job-title" aria-label="Job Title">
1311<a href="/job/senior-radiographer/f14adde5-5895229953/" title="Senior&#x20;Radiographer" data-href-type="inactive">Senior Radiographer</a>
1312</div>
1313</div>
1314<input type="hidden" name="job_upgrades" value=""/>
1315<div class="job-company-row" aria-labelledby="Senior-Radiographer-at-Ramsay-Health" aria-label="Hiring Company">
1316Ramsay Health
1317</div>
1318<div class="job-subtext-row" aria-labelledby="Senior-Radiographer-at-Ramsay-Health">
1319<div class="job-location" aria-label="Job Location">
1320United Kingdom
1321<input type="hidden" name="job_Location" value="United Kingdom"/>
1322</div>
1323<div aria-label="Job Posted Date" class="job-posted-date">
13248 days ago
1325</div>
1326</div>
1327</div>
1328</div>
1329</div>
1330<div role="button" id="Radiology-Assistant-&#x28;Bank&#x29;-at-Nuffield-Health" class="job-tile-f14adde5-5896329453 job-tile status-highlight-vert ">
1331<div class="job-main-data">
1332<input type="hidden" name="job_id" value="f14adde5-5896329453"/>
1333<input type="hidden" name="ga_rank" value="19" >
1334<input type="hidden" name="job_Position" value="Radiology&#x20;Assistant&#x20;&#x28;Bank&#x29;"/>
1335<input type="hidden" name="job_company" value="Nuffield&#x20;Health"/>
1336<input type="hidden" name="job_flag" value="initials"/>
1337<input type="hidden" name="job_backfill_ga" value=""/>
1338<input type="hidden" name="job_source" value="adzuna" />
1339<div class="job-details-logo logo-none" role="presentation">
1340<span role="presentation">NH</span>
1341</div>
1342<div class="job-details" aria-labelledby="Radiology-Assistant-&#x28;Bank&#x29;-at-Nuffield-Health">
1343<div class="job-detail-row">
1344<div class="job-title" aria-label="Job Title">
1345<a href="/job/radiology-assistant-bank/f14adde5-5896329453/" title="Radiology&#x20;Assistant&#x20;&#x28;Bank&#x29;" data-href-type="inactive">Radiology Assistant &#x28;Bank&#x29;</a>
1346</div>
1347</div>
1348<input type="hidden" name="job_upgrades" value=""/>
1349<div class="job-company-row" aria-labelledby="Radiology-Assistant-&#x28;Bank&#x29;-at-Nuffield-Health" aria-label="Hiring Company">
1350Nuffield Health
1351</div>
1352<div class="job-subtext-row" aria-labelledby="Radiology-Assistant-&#x28;Bank&#x29;-at-Nuffield-Health">
1353<div class="job-location" aria-label="Job Location">
1354Huntington, York, United Kingdom
1355<input type="hidden" name="job_Location" value="Huntington, York, United Kingdom"/>
1356</div>
1357<div aria-label="Job Posted Date" class="job-posted-date">
13587 days ago
1359</div>
1360</div>
1361</div>
1362</div>
1363</div>
1364<div role="button" id="Radiographer-at-Day-Webster" class="job-tile-f14adde5-5894094104 job-tile status-highlight-vert ">
1365<div class="job-main-data">
1366<input type="hidden" name="job_id" value="f14adde5-5894094104"/>
1367<input type="hidden" name="ga_rank" value="20" >
1368<input type="hidden" name="job_Position" value="Radiographer"/>
1369<input type="hidden" name="job_company" value="Day&#x20;Webster"/>
1370<input type="hidden" name="job_flag" value="initials"/>
1371<input type="hidden" name="job_backfill_ga" value=""/>
1372<input type="hidden" name="job_source" value="adzuna" />
1373<div class="job-details-logo logo-none" role="presentation">
1374<span role="presentation">DW</span>
1375</div>
1376<div class="job-details" aria-labelledby="Radiographer-at-Day-Webster">
1377<div class="job-detail-row">
1378<div class="job-title" aria-label="Job Title">
1379<a href="/job/radiographer/f14adde5-5894094104/" title="Radiographer" data-href-type="inactive">Radiographer</a>
1380</div>
1381</div>
1382<input type="hidden" name="job_upgrades" value=""/>
1383<div class="job-company-row" aria-labelledby="Radiographer-at-Day-Webster" aria-label="Hiring Company">
1384Day Webster
1385</div>
1386<div class="job-subtext-row" aria-labelledby="Radiographer-at-Day-Webster">
1387<div class="job-location" aria-label="Job Location">
1388London, United Kingdom
1389<input type="hidden" name="job_Location" value="London, United Kingdom"/>
1390</div>
1391<div aria-label="Job Posted Date" class="job-posted-date">
13929 days ago
1393</div>
1394</div>
1395</div>
1396</div>
1397</div>
1398<div role="button" id="Band-5---General-Radiographer---East-Kilbride-at-Pulse-Healthcare" class="job-tile-f14adde5-5198310907 job-tile status-highlight-vert ">
1399<div class="job-main-data">
1400<input type="hidden" name="job_id" value="f14adde5-5198310907"/>
1401<input type="hidden" name="ga_rank" value="21" >
1402<input type="hidden" name="job_Position" value="Band&#x20;5&#x20;-&#x20;General&#x20;Radiographer&#x20;-&#x20;East&#x20;Kilbride"/>
1403<input type="hidden" name="job_company" value="Pulse&#x20;Healthcare"/>
1404<input type="hidden" name="job_flag" value="initials"/>
1405<input type="hidden" name="job_backfill_ga" value=""/>
1406<input type="hidden" name="job_source" value="adzuna" />
1407<div class="job-details-logo logo-none" role="presentation">
1408<span role="presentation">PH</span>
1409</div>
1410<div class="job-details" aria-labelledby="Band-5---General-Radiographer---East-Kilbride-at-Pulse-Healthcare">
1411<div class="job-detail-row">
1412<div class="job-title" aria-label="Job Title">
1413<a href="/job/band-5-general-radiographer-east-kilbride/f14adde5-5198310907/" title="Band&#x20;5&#x20;-&#x20;General&#x20;Radiographer&#x20;-&#x20;East&#x20;Kilbride" data-href-type="inactive">Band 5 - General Radiographer - East Kilbride</a>
1414</div>
1415</div>
1416<input type="hidden" name="job_upgrades" value=""/>
1417<div class="job-company-row" aria-labelledby="Band-5---General-Radiographer---East-Kilbride-at-Pulse-Healthcare" aria-label="Hiring Company">
1418Pulse Healthcare
1419</div>
1420<div class="job-subtext-row" aria-labelledby="Band-5---General-Radiographer---East-Kilbride-at-Pulse-Healthcare">
1421<div class="job-location" aria-label="Job Location">
1422East Kilbride, Isle Of South Uist, United Kingdom
1423<input type="hidden" name="job_Location" value="East Kilbride, Isle Of South Uist, United Kingdom"/>
1424</div>
1425<div aria-label="Job Posted Date" class="job-posted-date">
14268 days ago
1427</div>
1428</div>
1429</div>
1430</div>
1431</div>
1432<div role="button" id="Band-7-CT-Radiographer---Central-London-at-Pulse-Healthcare" class="job-tile-f14adde5-5441384407 job-tile status-highlight-vert ">
1433<div class="job-main-data">
1434<input type="hidden" name="job_id" value="f14adde5-5441384407"/>
1435<input type="hidden" name="ga_rank" value="22" >
1436<input type="hidden" name="job_Position" value="Band&#x20;7&#x20;CT&#x20;Radiographer&#x20;-&#x20;Central&#x20;London"/>
1437<input type="hidden" name="job_company" value="Pulse&#x20;Healthcare"/>
1438<input type="hidden" name="job_flag" value="initials"/>
1439<input type="hidden" name="job_backfill_ga" value=""/>
1440<input type="hidden" name="job_source" value="adzuna" />
1441<div class="job-details-logo logo-none" role="presentation">
1442<span role="presentation">PH</span>
1443</div>
1444<div class="job-details" aria-labelledby="Band-7-CT-Radiographer---Central-London-at-Pulse-Healthcare">
1445<div class="job-detail-row">
1446<div class="job-title" aria-label="Job Title">
1447<a href="/job/band-7-ct-radiographer-central-london/f14adde5-5441384407/" title="Band&#x20;7&#x20;CT&#x20;
1447Radiographer&#x20;-&#x20;Central&#x20;London" data-href-type="inactive">Band 7 CT Radiographer - Central London</a>
1448</div>
1449</div>
1450<input type="hidden" name="job_upgrades" value=""/>
1451<div class="job-company-row" aria-labelledby="Band-7-CT-Radiographer---Central-London-at-Pulse-Healthcare" aria-label="Hiring Company">
1452Pulse Healthcare
1453</div>
1454<div class="job-subtext-row" aria-labelledby="Band-7-CT-Radiographer---Central-London-at-Pulse-Healthcare">
1455<div class="job-location" aria-label="Job Location">
1456London, United Kingdom
1457<input type="hidden" name="job_Location" value="London, United Kingdom"/>
1458</div>
1459<div aria-label="Job Posted Date" class="job-posted-date">
14608 days ago
1461</div>
1462</div>
1463</div>
1464</div>
1465</div>
1466<div role="button" id="Band-7-Adhoc-MRI-Radiographer---Beckenham-at-Pulse-Healthcare" class="job-tile-f14adde5-5024041076 job-tile status-highlight-vert ">
1467<div class="job-main-data">
1468<input type="hidden" name="job_id" value="f14adde5-5024041076"/>
1469<input type="hidden" name="ga_rank" value="23" >
1470<input type="hidden" name="job_Position" value="Band&#x20;7&#x20;Adhoc&#x20;MRI&#x20;Radiographer&#x20;-&#x20;Beckenham"/>
1471<input type="hidden" name="job_company" value="Pulse&#x20;Healthcare"/>
1472<input type="hidden" name="job_flag" value="initials"/>
1473<input type="hidden" name="job_backfill_ga" value=""/>
1474<input type="hidden" name="job_source" value="adzuna" />
1475<div class="job-details-logo logo-none" role="presentation">
1476<span role="presentation">PH</span>
1477</div>
1478<div class="job-details" aria-labelledby="Band-7-Adhoc-MRI-Radiographer---Beckenham-at-Pulse-Healthcare">
1479<div class="job-detail-row">
1480<div class="job-title" aria-label="Job Title">
1481<a href="/job/band-7-adhoc-mri-radiographer-beckenham/f14adde5-5024041076/" title="Band&#x20;7&#x20;Adhoc&#x20;MRI&#x20;Radiographer&#x20;-&#x20;Beckenham" data-href-type="inactive">Band 7 Adhoc MRI Radiographer - Beckenham</a>
1482</div>
1483</div>
1484<input type="hidden" name="job_upgrades" value=""/>
1485<div class="job-company-row" aria-labelledby="Band-7-Adhoc-MRI-Radiographer---Beckenham-at-Pulse-Healthcare" aria-label="Hiring Company">
1486Pulse Healthcare
1487</div>
1488<div class="job-subtext-row" aria-labelledby="Band-7-Adhoc-MRI-Radiographer---Beckenham-at-Pulse-Healthcare">
1489<div class="job-location" aria-label="Job Location">
1490Beckenham, South East London, United Kingdom
1491<input type="hidden" name="job_Location" value="Beckenham, South East London, United Kingdom"/>
1492</div>
1493<div aria-label="Job Posted Date" class="job-posted-date">
14948 days ago
1495</div>
1496</div>
1497</div>
1498</div>
1499</div>
1500<div role="button" id="Band-7-CT-Radiographer-at-Pulse-Healthcare" class="job-tile-f14adde5-5236179339 job-tile status-highlight-vert ">
1501<div class="job-main-data">
1502<input type="hidden" name="job_id" value="f14adde5-5236179339"/>
1503<input type="hidden" name="ga_rank" value="24" >
1504<input type="hidden" name="job_Position" value="Band&#x20;7&#x20;CT&#x20;Radiographer"/>
1505<input type="hidden" name="job_company" value="Pulse&#x20;Healthcare"/>
1506<input type="hidden" name="job_flag" value="initials"/>
1507<input type="hidden" name="job_backfill_ga" value=""/>
1508<input type="hidden" name="job_source" value="adzuna" />
1509<div class="job-details-logo logo-none" role="presentation">
1510<span role="presentation">PH</span>
1511</div>
1512<div class="job-details" aria-labelledby="Band-7-CT-Radiographer-at-Pulse-Healthcare">
1513<div class="job-detail-row">
1514<div class="job-title" aria-label="Job Title">
1515<a href="/job/band-7-ct-radiographer/f14adde5-5236179339/" title="Band&#x20;7&#x20;CT&#x20;Radiographer" data-href-type="inactive">Band 7 CT Radiographer</a>
1516</div>
1517</div>
1518<input type="hidden" name="job_upgrades" value=""/>
1519<div class="job-company-row" aria-labelledby="Band-7-CT-Radiographer-at-Pulse-Healthcare" aria-label="Hiring Company">
1520Pulse Healthcare
1521</div>
1522<div class="job-subtext-row" aria-labelledby="Band-7-CT-Radiographer-at-Pulse-Healthcare">
1523<div class="job-location" aria-label="Job Location">
1524Scotland, United Kingdom
1525<input type="hidden" name="job_Location" value="Scotland, United Kingdom"/>
1526</div>
1527<div aria-label="Job Posted Date" class="job-posted-date">
15288 days ago
1529</div>
1530</div>
1531</div>
1532</div>
1533</div>
1534<div role="button" id="Band-6-MRI-Radiographer---Cambridgeshire-at-Pulse-Healthcare" class="job-tile-f14adde5-5382990757 job-tile status-highlight-vert ">
1535<div class="job-main-data">
1536<input type="hidden" name="job_id" value="f14adde5-5382990757"/>
1537<input type="hidden" name="ga_rank" value="25" >
1538<input type="hidden" name="job_Position" value="Band&#x20;6&#x20;MRI&#x20;
1538Radiographer&#x20;-&#x20;Cambridgeshire"/>
1539<input type="hidden" name="job_company" value="Pulse&#x20;Healthcare"/>
1540<input type="hidden" name="job_flag" value="initials"/>
1541<input type="hidden" name="job_backfill_ga" value=""/>
1542<input type="hidden" name="job_source" value="adzuna" />
1543<div class="job-details-logo logo-none" role="presentation">
1544<span role="presentation">PH</span>
1545</div>
1546<div class="job-details" aria-labelledby="Band-6-MRI-Radiographer---Cambridgeshire-at-Pulse-Healthcare">
1547<div class="job-detail-row">
1548<div class="job-title" aria-label="Job Title">
1549<a href="/job/band-6-mri-radiographer-cambridgeshire/f14adde5-5382990757/" title="Band&#x20;6&#x20;MRI&#x20;Radiographer&#x20;-&#x20;Cambridgeshire" data-href-type="inactive">Band 6 MRI Radiographer - Cambridgeshire</a>
1550</div>
1551</div>
1552<input type="hidden" name="job_upgrades" value=""/>
1553<div class="job-company-row" aria-labelledby="Band-6-MRI-Radiographer---Cambridgeshire-at-Pulse-Healthcare" aria-label="Hiring Company">
1554Pulse Healthcare
1555</div>
1556<div class="job-subtext-row" aria-labelledby="Band-6-MRI-Radiographer---Cambridgeshire-at-Pulse-Healthcare">
1557<div class="job-location" aria-label="Job Location">
1558Cambridgeshire, Eastern England, United Kingdom
1559<input type="hidden" name="job_Location" value="Cambridgeshire, Eastern England, United Kingdom"/>
1560</div>
1561<div aria-label="Job Posted Date" class="job-posted-date">
15628 days ago
1563</div>
1564</div>
1565</div>
1566</div>
1567</div>
1568</div>
1569<div class="job-search-sideboard">
1570<script type="text/javascript">
1571$(function() {
1572postscribe($('.job-search-sideboard'), '<scr'+'ipt language="javascript1.1" src="https://adserver.adtechus.com/addyn/3.0/5277/3564612/0/0/ADTECH;loc=100;target=_blank;key=key1+key2+key3+key4;grp=[group];misc='+new Date().getTime()+'"></scri'+'pt>');
1573});
1574</script>
1574
1575</div>
1576<div class="job-results-bar job-results-bottom">
1577<div class="job-results-bar-inner">1 - 25 Results of 256</div>
1578<nav aria-label="Page navigation">
1579<ul class="pagination">
1580<li class="page-item inactive"><a class="page-link-nav" tabindex="0" aria-label="First Page"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="14" viewBox="0 0 17 14"><g fill="none"><g transform="translate(-1 -2)"><rect width="18" height="18"></rect><polygon points="10.1 13.6 4.4 9 10.1 4.4 8.3 3 1 9 8.3 15" class="pagination-arrows"></polygon><polygon points="17.1 13.6 11.4 9 17.1 4.4 15.3 3 8 9 15.3 15" fill="#979797" class="pagination-arrows"></polygon></g></g></svg></span><span class="sr-only">First page</span></a></li><li class="page-item inactive"><a class="page-link-nav" tabindex="0" aria-label="Previous"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="14" viewBox="0 0 10 14"><g fill="none"><g transform="translate(-5 -2)"><rect width="18" height="18"></rect><polygon class="pagination-arrows" transform="translate(9.529046 9)scale(1 -1)translate(-9.529046 -9)" points="14.1 13.6 8.4 9 14.1 4.4 12.3 3 5 9 12.3 15" fill="979797"></polygon></g></g></svg></span><span class="sr-only">Previous</span></a></li><li class="active page-item" id="page-item-1"><a class="page-link-nav" tabindex="0">1</a></li> <li class="page-item" id="page-item-2"><a class="page-link-nav" tabindex="0" onclick="setPagination(2,1);searchJobs(2,true);">2</a></li> <li class="page-item" id="page-item-3"><a class="page-link-nav" tabindex="0" onclick="setPagination(3,1);searchJobs(3,true);">3</a></li><li class="page-item"><a class="page-link-nav" tabindex="0" onclick="searchJobs(2,true);" aria-label="Next"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="10" height="14" viewBox="0 0 10 14"><g fill="none"><g transform="translate(-5 -2)"><rect width="18" height="18"></rect><polygon transform="translate(9.529046 9)scale(-1 -1)translate(-9.529046 -9)" points="14.1 13.6 8.4 9 14.1 4.4 12.3 3 5 9 12.3 15" fill="#979797" class="pagination-arrows"></polygon></g></g></svg></span><span class="sr-only">Next</span></a></li><li class="page-item"><a class="page-link-nav" tabindex="0" onclick="searchJobs(11,true);" aria-label="Last page"><span aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="17" height="14" viewBox="0 0 17 14"><g fill="none"><g transform="translate(-1 -2)"><rect width="18" height="18"></rect><polygon transform="translate(5.529046 9)scale(-1 -1)translate(-5.529046 -9)" points="10.1 13.6 4.4 9 10.1 4.4 8.3 3 1 9 8.3 15" fill="#979797" class="pagination-arrows"></polygon><polygon transform="translate(12.529046 9)scale(-1 -1)translate(-12.529046 -9)" points="17.1 13.6 11.4 9 17.1 4.4 15.3 3 8 9 15.3 15" class="pagination-arrows"></polygon></g></g></svg></span><span class="sr-only">Last page</span></a></li>
1581</ul>
1582</nav>
1583</div>
1584<div class="job-results-bar job-results-bottom global-footer-compact">
1585<ul>
1586<li> <a href="https://jobs.bir.org.uk/sitemap/">Site Map</a> </li>
1587<li> <a href="https://jobs.bir.org.uk/terms/">Terms of Use</a> </li>
1588<li> <a href="https://momentivesoftware.com/privacy-policy" target="_blank">Privacy Policy</a> </li>
1589<li><a href="javascript:void(0)" onclick="open_footer()"><strong>More</strong></a></li>
1590</ul>
1591<div class="footer_branding-compact">
1592&copy; 2026, All Rights Reserved
1593</div>
1594<!-- END : COMPACT FOOTER BRANDING -->
1595<div class="footer_powered-by-compact">
1596<a href="//www.momentivesoftware.com/products/ym-careers">
1597<img src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/img/careers-by-momentive-pink.png" alt="Momentive Careers Logo" loading="lazy">
1598</a>
1599</div>
1600</div>
1601<script>
1602var candidate_id = 0;
1603$(document).ready(function() {
1604// when tabbing on pagination and hit enter key
1605$('.page-link-nav').keypress(function (e) {
1606var key = e.which;
1607if(key == 13){
1608document.activeElement.click(); 
1609}
1610}); 
1611/*** Job Alert Bar Function ***/
1612$('.job-alert-label').on('click', function(){
1613$('.job-alert-bar > div').toggleClass("job-alert-off job-alert-on");
1614});
1615/*** Job Alert Toggle ***/
1616$('#job-alert-switch').change(function(){
1617if ($('.job-alert-label').html() == "Receive Alerts for this Search") {
1618$('.job-alert-label').html("Alerts for this Search are On");
1619} else {
1620$('.job-alert-label').html("Receive Alerts for this Search");
1621}
1622});
1623$("#filters-background").on("click", function(){
1624$("#filters-background").css({"opacity":"0", "width":"0"});
1625$("#job-search-spinner").hide();
1626});
1627/*** Bookmark Active Function ***/
1628$('.bookmark').on('click', function(){
1629$(this).toggleClass("icon-on icon-off");
1630});
1631/*** Job results section onclick ***/
1632$('.job-result-tiles .job-main-data:not(.candidate-products-promotion-data)').on('click', function() {
1633var curObj = $(this);
1634var job_id = curObj.find('input:hidden[name="job_id"]').val();
1635var job_flag = curObj.find('input:hidden[name="job_flag"]').val();
1636var job_upgrades = curObj.find('input:hidden[name="job_upgrades"]').val();
1637var job_Title = curObj.find('input:hidden[name="job_Position"]').val();
1638var job_company = curObj.find('input:hidden[name="job_company"]').val();
1639var job_Location = ( curObj.find('input:hidden[name="job_Location"]').val() || '' ).trim();
1640var ga_rank = curObj.find('input:hidden[name="ga_rank"]').val();
1641var job_backfill_ga = curObj.find('input:hidden[name="job_backfill_ga"]').val();
1642var course_url = curObj.find('input:hidden[name="course_url"]').val();
1643var job_source = curObj.find( 'input:hidden[name="job_source"]' ).val();
1644var vnet_id = (curObj.find('input:hidden[name="vnet_id"]').length > 0) ? curObj.find('input:hidden[name="vnet_id"]').val() : 0,
1645vnet_site_id = (curObj.find('input:hidden[name="vnet_site_id"]').length > 0) ? curObj.find('input:hidden[name="vnet_site_id"]').val() : 0;
1646/* Prevent opening <a href> link if user clicked on the position title */
1647event.preventDefault();
1648// For jobs other than external backfill get the job details
1649if( job_id !== undefined && /^[a-z0-9_-]+$/i.test( job_id ) ){
1650/* Only call getJob if user clicks on a job that is not the currently selected job */
1651if($(this).parent().hasClass("job-tile-active") == false){
1652//Default button is disabled
1653var job_singular_capital="Job";	
1654var generatedBtn = '<button type="button" tabindex="0" id="applyBtn" class="btn btn-primary apply-button apply-button-disabled" disabled>APPLY</button>';
1655//Generate Desktop button
1656$('.applyBtnHeader .apply-button-container').html(generatedBtn);
1657//Generate Mobile button
1658$('.apply-button-mobile-container').html(generatedBtn);
1659$('.apply-button-mobile-container #applyBtn').addClass('btn-block');	
1660$('.apply-button-mobile-container #applyBtn').text('APPLY');
1661let temp_user_geocode = "",
1662user_latlong = "",
1663location_completion = $("#location_completion").val(),
1664location_latlong = $("#location_latlong").val();
1665if (typeof userIpGeocode !== "undefined") {
1666temp_user_geocode = JSON.parse(userIpGeocode);
1667if ((typeof temp_user_geocode.latlong !== "undefined") && temp_user_geocode.latlong.length)
1668user_latlong = encodeURIComponent(temp_user_geocode.latlong);
1669}
1670getJob(	job_id,
1671vnet_id,
1672vnet_site_id,
1673job_flag,
1674job_Title,
1675job_Location,
1676job_source,
1677job_upgrades,
1678ga_rank,
1679job_company,
1680user_latlong,
1681location_completion,
1682location_latlong
1683);
1684}
1685else{
1686/*** Mobile : Show Job Details ***/
1687$('.job-results-body').toggleClass("job-results-focus");
1688/*** Mobile : Show Apply Button ***/	
1689if( document.querySelector(".job-middle-container").getBoundingClientRect().x >= window.innerWidth || 
1690document.querySelector("#data-step-results").getBoundingClientRect().width < 10 ) {
1691$('.apply-button-mobile-container').css('display','flex');	
1692adjustResultsBodyHeight();
1693$('iframe#launcher').css('bottom','45px');	
1694}	
1695/*** Mobile : Transition Class for Back Btn ***/
1696$('.btn-mobile-back').removeClass("btn-rotate");
1697}
1698}
1699else{
1700if(job_id === undefined && course_url !== undefined){
1701window.open(course_url, '_blank');
1702}
1703else{
1704job_backfill_ga = 'backfill-' + job_backfill_ga;
1705gaJobClickWeb('Job', 'Job Click', 'none',ga_rank,job_backfill_ga);
1706window.open(job_id, '_blank');	
1707}
1708}
1709/* Change the active tile*/
1710$('div.job-tile-active:not(.candidate-products-promotion-tile)').removeClass('job-tile-active status-highlight-active'); 
1711$(this).parent().addClass('job-tile-active status-highlight-active');
1712});
1713/*** Job Alert slider slide back of when JAQC modal closes ***/
1714$('#create-alert').on('hide.bs.modal', function(){
1715$(".job-alert-bar>div").removeClass().addClass("job-alert-off");
1716$("#job-alert-switch").prop("checked", false);
1717$(".job-alert-bar .custom-control-label").html('Receive Alerts for this Search');
1718});
1719/*** Open JAQC modal when Job Alert slider is turned on ***/
1720$("#job-alert-switch").on("click", function(){
1721if($("#job-alert-switch").prop("checked") == true){
1722$('#create-alert').modal('show');
1723} 
1724else if($("#job-alert-switch").prop("checked") == false){
1725/*** Check if there is a job alert already for the current filter ***/
1726if($("#jaqc_agent_id").length > 0 && $("#jaqc_agent_id").val().length > 0){
1727var agent_id = $("#jaqc_agent_id").val();
1728if(candidate_id == 0){
1729candidate_id = $("#jaqc_candidate_id").val();
1730}
1731var ajaxURL = "/c/agents/quickremove.cfm?id="+agent_id+"&candidate_id="+candidate_id+"&site_id=17988";
1732// Abort any other existing AJAX request
1733if(currentAjax != null){
1734currentAjax.abort();
1735}
1736currentAjax = $.ajax({
1737method: "GET",
1738url: ajaxURL
1739}).done(function( result ){
1740var jsonResponse = JSON.parse(result);
1741if(jsonResponse.STATUS == true){
1742$("#jaqc_agent_id").val('');
1743$(".job-alert-bar>div").removeClass().addClass("job-alert-off");
1744$(".job-alert-bar .custom-control-label").html('Receive Alerts for this Search');
1745}	
1746});
1747}
1748}
1749});
1750$('[data-toggle="tooltip"]').tooltip( { template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' } );
1751initLeftPaneLabels();
1752window.addEventListener("resize", initLeftPaneLabels);
1753/*** Multiple Location Dropdown ***/ 
1754$('.multi-location-dropdown').on('click', function() {
1755if ( $(this).siblings('.dropdown-menu').hasClass( 'show' ) )
1756$(this).siblings('.dropdown-menu').removeClass( 'show' );
1757else {
1758$(this).siblings('.dropdown-menu').addClass( 'show' );
1759window.dataLayer.push({'event':'job_search_results', 'clicked_element': 'job location list'})
1760}
1761event.stopPropagation();
1762});
1763});
1764function initLeftPaneLabels() {
1765// Disable tooltip for mobile/tablets
1766if( document.querySelector(".job-middle-container").getBoundingClientRect().x >= window.innerWidth || 
1767document.querySelector("#data-step-results").getBoundingClientRect().width < 10 ) {
1768$( '.label-diversity, .label-veterans', '#data-step-results' ).tooltip( 'disable' );
1769} else {
1770$( '.label-diversity, .label-veterans', '#data-step-results' ).tooltip( 'enable' );
1771}
1772}
1773</script>
1773
1774</div>
1775<div class="job-alert-bar pos-a pos-b0 pos-l0" id="data-step-job-alert">
1776<div class="job-alert-off">
1777<div class="custom-control custom-switch">
1778<input tabindex="0" id="job-alert-switch" type="checkbox" class="custom-control-input" id="job-alert-switch">
1779<label class="custom-control-label pl-2 job-alert-label" for="job-alert-switch">Receive Alerts for this Search</label>
1780<input type="hidden" name="jaqc_agent_id" id="jaqc_agent_id" value="">
1781<input type="hidden" name="jaqc_candidate_id" id="jaqc_candidate_id" value="">
1782</div>
1783</div>
1784</div>
1785<section class="region_main-pane" style="height: calc(100vh - 191px);">
1786<div class="job-search-page-right-container">
1787<div class="search-filter-container">	
1788<form id="jt_search" class="search-section" action="/jobs/" method="get">
1789<div class="input-group job-title-keyword-input">
1790<i class="bi bi-search input-icon" aria-hidden="true"></i>
1791<input aria-label="Search Job Title or Keyword" type="search" title="keywords" value="" id="keywords" name="keywords" tab-index="10" maxlength="500" placeholder="Keyword or Job Title" class="form-control search-section-input input-group-control" onKeyUp="kfields_pos_filter()">
1792<input type="hidden" name="pos_flt" id="pos_flt" value="0">
1793</div>
1794<div class="location-radius-section location_autocomplete">
1795<div class="input-group location-input" id="data-step-autocomplete">
1796<i class="bi bi-geo-alt input-icon" aria-hidden="true"></i>
1797<input type="search" aria-label="location search input" id="location" tab-index="2" maxlength="500" placeholder="Location" name="location" autocomplete="off" class="ui-autocomplete-input form-control search-section-input input-group-control" value="">
1798<input type="hidden" aria-hidden="true" value="" id="location_completion" name="location_completion">
1799<input type="hidden" aria-hidden="true" value="" id="location_type" name="location_type">
1800<input type="hidden" aria-hidden="true" value="" id="location_text" name="location_text">
1801<input type="hidden" aria-hidden="true" value="true" id="location_autocomplete" name="location_autocomplete">
1802<input type="hidden" aria-hidden="true" value="" id="location_latlong" name="location_latlong">
1803</div>
1804<select name="radius" id="radius" class="fade_radius form-control search-section-input radius-dropdown" readonly style="pointer-events:none;">
1805<option value="8">5 mi/8 km</option>
1806<option value="15">10 mi/15 km</option>
1807<option value="40">25 mi/40 km</option>
1808<option value="80">50 mi/80 km</option>
1809<option value="160">100 mi/160 km</option>
1810<option selected value="320">200 mi/320 km</option>
1811</select>
1812</div>
1813<div class="search-filter-btn">
1814<button type="submit" tab-index="30" class="btn btn-outline-primary search-button btn-search" onclick="$(this).closest('#jt_search').submit(); return false;">
1815Search
1816</button>
1817<div class="filter-button" tabindex="0" onclick="open_filter()" role="button" data-toggle="tooltip" data-placement="bottom" title="Ap
1817ply Filters">
1818<i class="bi bi-sliders filter-icon"></i>
1819Filters
1820</div>
1821</div>
1822<div id="hiddenFieldsContainer" style="display:none">
1823</div>
1824</form>
1825</div>
1826<div class="top-mobile-action-buttons">
1827<div class="btn-mobile-back back-results-button-container" role="button">
1828<div class="back-btn-to-results-container back-btn-container">
1829<i class="bi bi-arrow-left"></i>
1830<span>Results</span>
1831</div>
1832</div>
1833<div class="btn-mobile-back back-job-details-container" role="button">
1834<div class="back-btn-to-job-details-container back-btn-container">
1835<i class="bi bi-arrow-left"></i>
1836<span>Job Details</span>
1837</div>
1838</div>
1839<div class="btn-mobile-back next-community-intel-container" role="button">
1840<div class="next-btn-to-community-intel-container back-btn-container">
1841<span>Explore Location</span>
1842<i class="bi bi-arrow-right"></i>
1843</div>
1844</div>
1845</div>
1846<div class="job-and-location-container" id="job-and-location-popover-container">
1847<div class="job-middle-container with-search-bar job-middle-container-collapse">
1848<div class="job-details-parent-floating-card-container">
1849<div class="job-details-board-floating-card-container">
1850<div class="main-job-details"></div>
1851</div>
1852</div>
1853<div class="banner-container">
1854<div class="leaderboard-adspace top site" role="complementary" data-type="ad" data-location="top">
1855<script type="text/javascript">
1856$(function() {
1857var $adEl = $('div[data-type="ad"][data-location="top"]');
1858if (typeof window.hideBannerOnError === 'function') window.hideBannerOnError($adEl[0]);
1859postscribe($adEl, '
1859<script src="https://servedbyadbutler.com/adserve/;ID=179021;size=728x90;setID=433336;type=js;sw=1920;sh=1080;spr=1;kw=17988;pid=3025711;place=0;rnd=3025711;click=CLICK_MACRO_PLACEHOLDER" type="text/javascript"><\/script>');
1860});
1861</script>
1861
1862</div>
1863</div> 
1864<div class="job-details-parent-card-container " style="flex: 1; max-width: 100%;">
1865<div class="job-details-board-card-container">
1866<div class="main-job-details">
1867<div class="title-action-container">
1868<div class="title">
1869<a href="/job/consultant-in-radiology-with-interest-in-genitourinary-gu-radiology/86024909/" class="title-text" target="_blank">Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology</a>
1870</div>
1871<div class="actions-container">
1872<button class="btn p-0" onclick="saveJob(86024909, this,'(job details)', '/signin/?goto=%2Fjobs%2F&msg=1');" name="save_job">
1873<i role="button" aria-label="Press Enter to Save this Job" class="bi bi-bookmark-star bookmark-icon save86024909"></i>
1874</button>
1875<div class="dropdown">
1876<button class="btn p-0 dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" aria-label="More options">
1877<i class="bi bi-three-dots-vertical menu-icon dropdown-toggle" aria-hidden="true"></i>
1878</button>
1879<div class="dropdown-menu dropdown-menu-right">
1880<a class="dropdown-item kebab-menu" href="#" role="button" aria-label="Share this job" 
1881onclick="shareJob('86024909', true, this, 'Consultant\x20in\x20Radiology\x20with\x20interest\x20in\x20Genitourinary\x20\x28GU\x29\x20Radiology', 'http://jobs.bir.org.uk/c/job.cfm?site_id=17988&jb=86024909'); return false;" data-ga-label="share"
1882><i class="bi bi-share-fill list-icon"></i
1883><span class="list-text">Share</span></a
1884>
1885<a class="dropdown-item kebab-menu" href="#" role="button" aria-label="Press Enter to Print this Job" id="ga_print" onclick="gaJobView('Job','Print','Print Job','86024909');window.location='/job/print/86024909/';return false;" data-ga-label="print"><i class="bi bi-printer-fill list-icon"></i><span class="list-text">Print</span></a>
1886</div>
1887</div>
1888</div>
1889</div>
1890<div class="company-name-container">
1891<svg class="icon"
1892xmlns="http://www.w3.org/2000/svg"
1893width="20"
1894height="20"
1895viewBox="0 0 20 20"
1896fill="none"
1897>
1898<path
1899fill-rule="evenodd"
1900clip-rule="evenodd"
1901d="M18.4536 0.0933439C18.6378 0.207223 18.75 0.40839 18.75 0.625001V19.375C18.75 19.7202 18.4702 20 18.125 20H14.375C14.0298 20 13.75 19.7202 13.75 19.375V17.5H12.5V19.375C12.5 19.7202 12.2202 20 11.875 20H0.625C0.279822 20 0 19.7202 0 19.375V12.5C0 12.231 0.172144 11.9921 0.427358 11.9071L7.5 9.54953V5.625C7.5 5.38827 7.63375 5.17185 7.84549 5.06598L17.8455 0.0659837C18.0392 -0.0308877 18.2693 -0.0205352 18.4536 0.0933439ZM7.5 10.8671L1.25 12.9505V18.75H7.5V10.8671ZM8.75 18.75H11.25V16.875C11.25 16.5298 11.5298 16.25 11.875 16.25H14.375C14.7202 16.25 15 16.5298 15 16.875V18.75H17.5V1.63627L8.75 6.01127V18.75Z"
1902/>
1903<path d="M2.5 13.75H3.75V15H2.5V13.75Z" />
1904<path d="M5 13.75H6.25V15H5V13.75Z" />
1905<path d="M2.5 16.25H3.75V17.5H2.5V16.25Z" />
1906<path d="M5 16.25H6.25V17.5H5V16.25Z" />
1907<path d="M10 11.25H11.25V12.5H10V11.25Z" />
1908<path d="M12.5 11.25H13.75V12.5H12.5V11.25Z" />
1909<path d="M10 13.75H11.25V15H10V13.75Z" />
1910<path d="M12.5 13.75H13.75V15H12.5V13.75Z" />
1911<path d="M15 11.25H16.25V12.5H15V11.25Z" />
1912<path d="M15 13.75H16.25V15H15V13.75Z" />
1913<path d="M10 8.75H11.25V10H10V8.75Z" />
1914<path d="M12.5 8.75H13.75V10H12.5V8.75Z" />
1915<path d="M15 8.75H16.25V10H15V8.75Z" />
1916<path d="M10 6.25H11.25V7.5H10V6.25Z" />
1917<path d="M12.5 6.25H13.75V7.5H12.5V6.25Z" />
1918<path d="M15 6.25H16.25V7.5H15V6.25Z" />
1919<path d="M15 3.75H16.25V5H15V3.75Z" />
1920</svg>
1921<div class="company-name">
1922Barts Health NHS Trust 
1923</div>
1924</div>
1925<div class="location-type-container">
1926<svg
1927xmlns="http://www.w3.org/2000/svg"
1928class="icon"
1929width="20"
1930height="20"
1931viewBox="0 0 20 20"
1932fill="none"
1933>
1934<path
1935d="M15.2072 11.1747C14.5522 12.5019 13.6656 13.8251 12.7572 15.0126C11.8517 16.1963 10.943 17.221 10.2596 17.9506C10.1688 18.0475 10.0821 18.1391 10 18.2251C9.91793 18.1391 9.83121 18.0475 9.7404 17.9506C9.05697 17.221 8.14835 16.1963 7.24281 15.0126C6.33443 13.8251 5.44781 12.5019 4.79279 11.1747C4.13101 9.83384 3.75 8.57738 3.75 7.5C3.75 4.04822 6.54822 1.25 10 1.25C13.4518 1.25 16.25 4.04822 16.25 7.5C16.25 8.57738 15.869 9.83384 15.2072 11.1747ZM10 20C10 20 17.5 12.8921 17.5 7.5C17.5 3.35786 14.1421 0 10 0C5.85786 0 2.5 3.35786 2.5 7.5C2.5 12.8921 10 20 10 20Z"
1936/>
1937<path
1938d="M10 10C8.61929 10 7.5 8.88071 7.5 7.5C7.5 6.11929 8.61929 5 10 5C11.3807 5 12.5 6.11929 12.5 7.5C12.5 8.88071 11.3807 10 10 10ZM10 11.25C12.0711 11.25 13.75 9.57107 13.75 7.5C13.75 5.42893 12.0711 3.75 10 3.75C7.92893 3.75 6.25 5.42893 6.25 7.5C6.25 9.57107 7.92893 11.25 10 11.25Z"
1939/>
1940</svg>
1941<div class="location">
1942London, England, United Kingdom
1943</div> 
1944<div class="location-type">
1945<div class="separator"></div>
1946<div class="location-type-text">(on-site)</div>
1947</div>
1948</div>
1949<div class="tags-apply-container applyBtnHeader">
1950<div class="tags-container">
1951</div>
1952<div class="apply-button-container">
1953<button type="button" class="btn btn-primary apply-button ga_apply" id="applyBtn">APPLY</button>
1954</div>
1955</div>
1956<div class="posted-days-text">Posted
195714 days ago
1958</div>
1959</div>
1960</div>
1961</div>
1962<div class="main-job-details-floating-card-container hide">
1963<div class="title-action-container">
1964<div class="title">
1965<a href="/job/consultant-in-radiology-with-interest-in-genitourinary-gu-radiology/86024909/" class="title-text" target="_blank">Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology</a>
1966</div>
1967<div class="actions-container">
1968<button class="btn p-0" onclick="saveJob(86024909, this,'(job details)', '/signin/?goto=%2Fjobs%2F&msg=1');" name="save_job">
1969<i role="button" aria-label="Press Enter to Save this Job" class="bi bi-bookmark-star bookmark-icon save86024909"></i>
1970</button>
1971<div class="dropdown">
1972<button class="btn p-0 dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" aria-label="More options">
1973<i class="bi bi-three-dots-vertical menu-icon dropdown-toggle" aria-hidden="true"></i>
1974</button>
1975<div class="dropdown-menu dropdown-menu-right">
1976<a class="dropdown-item kebab-menu" href="#" role="button" aria-label="Share this job" 
1977onclick="shareJob('86024909', true, this, 'Consultant\x20in\x20Radiology\x20with\x20interest\x20in\x20Genitourinary\x20\x28GU\x29\x20Radiology', 'http://jobs.bir.org.uk/c/job.cfm?site_id=17988&jb=86024909'); return false;" data-ga-label="share"
1978><i class="bi bi-share-fill list-icon"></i
1979><span class="list-text">Share</span></a
1980>
1981<a class="dropdown-item kebab-menu" href="#" role="button" aria-label="Press Enter to Print this Job" id="ga_print" onclick="gaJobView('Job','Print','Print Job','86024909');window.location='/job/print/86024909/';return false;" data-ga-label="print"><i class="bi bi-printer-fill list-icon"></i><span class="list-text">Print</span></a>
1982</div>
1983</div>
1984</div>
1985</div>
1986<div class="job-info-apply-container">
1987<div class="job-info">
1988<div class="company-name-container">
1989<div class="company-name">
1990Barts Health NHS Trust 
1991</div>
1992</div>
1993<div class="location-type-container">
1994<div class="separator"></div>
1995<div class="location">
1996London, England, United Kingdom
1997</div> 
1998<div class="location-type">
1999<div class="separator"></div>
2000<div class="location-type-text">(on-site)</div>
2001</div>
2002</div>
2003</div>
2004<div class="applyBtnHeader">
2005<div class="apply-button-container">
2006<button type="button" class="btn btn-primary apply-button ga_apply" id="applyBtn">APPLY</button>
2007</div>
2008</div>
2009</div>
2010</div>
2011<div class="job-cta-items"> 
2012<input type="hidden" id="applyButtonJson" value='{"text":"APPLY","disabled":false,"linkAttr":{"href":"https://www.jobs.nhs.uk/candidate/jobadvert/C9259-26-1597?keyword=radiology&amp;language=en&amp;page=2","class":"ga_ext"},"applied":false,"modal":false,"link":true}'>	
2013</div>
2014<script async defer src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
2014
2015<div class="job-features-parent-container">
2016<div class="job-features-section">
2017<div class="job-features-items-section items-with-show-less">
2018<div class="job-feature-item-container">
2019<i class="bi bi-card-heading job-feature-icon-color"></i>
2020<div class="job-feature-item-content">
2021<div class="job-feature-item-title">Specialty</div>
2022<div
2023tabindex="0"
2024class="job-feature-item-value job-feature-item-ellipsis"
2025data-trigger="click"
2026data-toggle=""
2027data-placement="bottom"
2028data-content="Radiologist"
2029>
2030Radiologist
2031</div>
2032</div>
2033</div>
2034</div> 
2035</div>
2036</div>
2037<script language="javascript" type="text/javascript">
2038$(document).ready(function() {
2039showHideFeatures(0);
2040multiLineOverflows();
2041$("[data-toggle=popover]").mousedown(function () {
2042// toggle popover when link is clicked
2043$(this).popover("toggle");
2044});
2045$('body').on('mouseup', function(e) {
2046$("[data-toggle=popover]").each(function () {
2047// hide any open popovers when the anywhere else in the body is clicked
2048if (
2049!$(this).is(e.target) &&
2050$(this).has(e.target).length === 0 &&
2051$(".popover").has(e.target).length === 0
2052) {
2053$(this).popover("hide");
2054}
2055});
2056let parent_id = e.target.parentElement.id
2057parentClass = e.target.parentElement.className,
2058target_data_attr = ($(e.target).attr('data-question-alias') !== undefined) ? $(e.target).attr('data-question-alias') : '';
2059if ( target_data_attr.length > 0 && $( '#job-more-info-dropdown-'+target_data_attr ).hasClass( 'show' ) === true ) {
2060// close the other open job info dropdowns
2061$( '.dropdown-menu.show' ).removeClass( 'show' );
2062$( '#job-more-info-dropdown-'+target_data_attr ).addClass( 'show' );
2063}
2064else if (parent_id.length && parentClass.length && parentClass.split(' ').filter(v => v === 'dropdown-menu').length > 0) {
2065// retain as open the current job info dropdown
2066$( '#'+parent_id).addClass( 'show' );
2067}
2068else if ($(e.target).closest(".ai-summary-container").length > 0) {
2069$( ".ai-summary-container dropdown" ).addClass( 'show' );
2070}
2071else {
2072// close the other open job info dropdowns
2073$( '.dropdown-menu.show' ).removeClass( 'show' );
2074}
2075});
2076$(".dropdown-menu").on( "click", function(event){
2077event.stopPropagation();
2078});
2079$('.job-features-show-more-less-section').on('click', function() {
2080var show_more = $('.job-feature-show-more-button').css('display');
2081if(show_more == 'flex'){
2082$('.job-feature-show-more-button').css('display','none');
2083$('.job-feature-show-less-button').css('display','flex');
2084showHideFeatures(1);
2085multiLineOverflows();
2086$("[data-toggle=popover]").mousedown(function () {
2087// toggle popover when link is clicked
2088$(this).popover("toggle");
2089});
2090} else{
2091$('.job-feature-show-more-button').css('display','flex');
2092$('.job-feature-show-less-button').css('display','none');
2093showHideFeatures(0);
2094}
2095}); 
2096window.addEventListener("resize", multiLineOverflows);
2097});
2098function multiLineOverflows() {
2099$('.job-feature-item-value').each(function () { 
2100const el = $(this);	
2101if( el.prop('scrollHeight') > el.prop('clientHeight')){
2102el.attr('data-toggle','popover');
2103el.popover("enable");
2104}
2105else {
2106el.attr('data-toggle','');
2107el.popover("disable");
2108}
2109}); 
2110}
2111function showHideFeatures(show){
2112var sec_counter = 1
2113$('.job-features-items-section').children().each(function () { 
2114if(sec_counter > 8){
2115if(show)
2116$(this).css('display', 'flex');
2117else
2118$(this).hide();
2119}
2120sec_counter++;
2121}); 
2122}
2123function showMoreInfo(field) {
2124if ( $( '#job-more-info-dropdown-'+field ).hasClass( 'show' ) === true ) {
2125$( '#job-more-info-dropdown-'+field ).removeClass( 'show' );
2126}
2127else {
2128$( '#job-more-info-dropdown-'+field ).addClass( 'show' );
2129}
2130}
2131</script>
2131	
2132<div class="job-description-parent-container">
2133<div class="ai-summary-container" >
2134<div class="dropdown">
2135<button class="ai-button ai-dropdown-toggle" id="ai-button" onclick="generateSummary('86024909')" data-flip="false" data-toggle="dropdown" data-toggle-second="tooltip" data-placement="bottom"
2136aria-expanded="false" data-boundary="clippingParents" data-reference="parent" data-offset="0,8" 
2137title="Get AI-driven insights to quickly assess if the role is right for you.">
2138<div class="points_wrapper">
2139<i class="point"></i>
2140<i class="point"></i>
2141<i class="point"></i>
2142<i class="point"></i>
2143<i class="point"></i>
2144<i class="point"></i>
2145<i class="point"></i>
2146<i class="point"></i>
2147<i class="point"></i>
2148<i class="point"></i>
2149</div>
2150<span class="inner"> AI Summary & Insights <i class="bi bi-stars"></i>
2151</span>
2152</button>
2153<div class="ai-summary-dropdown-container shadow-lg dropdown-menu dropdown-menu-right p-4 text-muted" id="ai-dropdownMenu" x-placement="bottom-end">
2154<div class="heading-container">
2155<ul class="nav nav-pills border-0" id="ai-pills-tab" role="tablist">
2156<li class="nav-item" role="presentation">
2157<button class="tab btn btn-sm nav-link active" id="ai-pills-summary-tab" data-toggle="tab" data-target="#ai-pills-summary" type="button" role="tab" aria-controls="ai-pills-summary" aria-selected="true">Summary</button>
2158</li>
2159<li class="nav-item" role="presentation">
2160<button class="tab btn btn-sm nav-link" id="ai-pills-insights-tab" data-toggle="tab" data-target="#ai-pills-insights" type="button" role="tab" aria-controls="ai-pills-insights" aria-selected="false" onclick="generateInsights('86024909')" >Insights</button>
2161</li>
2162</ul>
2163</div>
2164<div class="tab-content" id="ai-pills-tabContent">
2165<div class="tab-pane fade show active" id="ai-pills-summary" role="tabpanel" aria-labelledby="ai-pills-summary-tab">
2166<div class="ai-summary-post-loading-content">
2167<div class="title-contents-container">
2168<div class="title-container">
2169<div class="content-title"> Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology </div>
2170</div>
2171<div class="contents-container">
2172<p class="mb-0"></p>
2173</div>
2174</div>
2175<div class="ai-legal-footer-container">
2176The insights provided are generated by AI and may contain inaccuracies. Please independently verify any critical information before relying on it.
2177</div>
2178</div>
2179<!-- skelton loading container -->
2180<div class="ai-summary-pre-loading-content">
2181<div class="title-container">
2182<div class="content-title skeleton skeleton-text-h4"></div>
2183</div>
2184<div class="contents-container">
2185<div>
2186<div class="skeleton skeleton-text"></div>
2187<div class="skeleton skeleton-text"></div>
2188<div class="skeleton skeleton-text"></div>
2189<div class="skeleton skeleton-text"></div>
2190<div class="skeleton skeleton-text"></div>
2191<div class="skeleton skeleton-text"></div>
2192</div>
2193<div>
2194<div class="skeleton skeleton-text"></div>
2195<div class="skeleton skeleton-text"></div>
2196<div class="skeleton skeleton-text"></div>
2197<div class="skeleton skeleton-text"></div>
2198<div class="skeleton skeleton-text"></div>
2199</div>
2200<div>
2201<div class="skeleton skeleton-text"></div>
2202<div class="skeleton skeleton-text"></div>
2203<div class="skeleton skeleton-text"></div>
2204<div class="skeleton skeleton-text"></div>
2205</div>
2206</div>
2207</div>
2208</div>
2209<div class="tab-pane fade" id="ai-pills-insights" role="tabpanel" aria-labelledby="ai-pills-insights-tab"> 
2210<div class="ai-insights-post-loading-content">
2211<div class="title-contents-container">
2212<div class="title-container">
2213<div class="content-title"> Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology </div>
2214</div>
2215<div class="contents-container">
2216</div>
2217</div>
2218<div class="ai-legal-footer-container">
2219The insights provided are generated by AI and may contain inaccuracies. Please independently verify any critical information before relying on it.
2220</div>
2221</div>
2222<div class="ai-insights-pre-loading-content">	
2223<div class="contents-container">
2224<div>
2225<div class="skeleton skeleton-text"></div>
2226<div class="skeleton skeleton-text"></div>
2227<div class="skeleton skeleton-text"></div>
2228<div class="skeleton skeleton-text"></div>
2229<div class="skeleton skeleton-text"></div>
2230<div class="skeleton skeleton-text"></div>
2231</div>
2232<div>
2233<div class="skeleton skeleton-text"></div>
2234<div class="skeleton skeleton-text"></div>
2235<div class="skeleton skeleton-text"></div>
2236<div class="skeleton skeleton-text"></div>
2237<div class="skeleton skeleton-text"></div>
2238</div>
2239<div>
2240<div class="skeleton skeleton-text"></div>
2241<div class="skeleton skeleton-text"></div>
2242<div class="skeleton skeleton-text"></div>
2243<div class="skeleton skeleton-text"></div>
2244</div>
2245</div>
2246</div>
2247</div>
2248</div>
2249</div>
2250</div>
2251</div>
2252<p><strong>Description</strong></p>
2253<p>the closing date is 01 November 2026<br>Apply for this job<br>Job summary</p> <p><br>Barts Health NHS Trust</p> <p>Clinical Support Services</p> <p>Imaging Service Group</p> <p>Consultant Radiologist with a subspecialty interest in Genitourinary (GU) Radiology</p> <p>10 PA's</p> <p>The advertised post is for a full-time Consultant Radiologist with a subspecialty interest in Genitourinary (GU) Radiology.</p> <p>This is a new post developed to support the expanding urology service at Whipps Cross Hospital, which serves as the urology hub for Barts Health NHS Trust.</p> <p>The post holder will support increasing demand in uro-oncology and complex urology pathways, working closely with surgical teams undertaking specialist procedures including percutaneous nephrolithotomy (PCNL) and partial orchidectomy.</p> <p>Main duties of the job</p> <p><br>The successful candidate will contribute to the delivery and development of a high-quality uro-radiology service. Full support will be provided to develop subspecialty expertise and procedural skills.</p> <p>We are looking for a highly motivated and enthusiastic individual to join our existing radiology team. The post will be entirely based at Whipps Cross University Hospital, although collaborative working across the Trust will be supported.</p> <p>The applicant should be able to demonstrate excellent general radiology knowledge and have extensive experience in cross-sectional imaging, ultrasound and plain film reporting. Importantly the successful candidate should possess the range of skills, techniques and proficiency required to provide a high-quality uroradiology service including urointerventional procedures to our patients.</p> <p>Research and teaching activities are encouraged and supported by the active academic department and there is a highly successful training programme with registrars.</p> <p>About us</p> <p><br>Barts Health is one of the largest NHS trusts in the country, and one of Britain's leading healthcare providers.</p> <p>Our vision is to be a high-performing group of NHS hospitals, renowned for excellence and innovation, and providing safe and compassionate care to our patients in east London and beyond. That means being a provider of excellent patient safety, known for delivering consistently high standards of harm-free care and always caring for patients in the right place at the right time. It also means being an outstanding place to work, in which our WeCare values and behaviours are visible to all and guide us in how we work together.</p> <p>We strive to live by our WeCare values and are committed to promoting inclusion, where every staff member has a sense of belonging. We value our differences and fully advocate, cultivate and support an inclusive working environment.</p> <p>Job description<br>Job responsibilities</p> <p><br>The successful candidate will contribute to the delivery and development of a high-quality uro-radiology service. Full support will be provided to develop subspecialty expertise and procedural skills.</p> <p>We are looking for a highly motivated and enthusiastic individual to join our existing radiology team. The post will be entirely based at Whipps Cross University Hospital, although collaborative working across the Trust will be supported.</p> <p>The applicant should be able to demonstrate excellent general radiology knowledge and have extensive experience in cross-sectional imaging, ultrasound and plain film reporting. Importantly the successful candidate should possess the range of skills, techniques and proficiency required to provide a high-quality uroradiology service including urointerventional procedures to our patients.</p> <p>Research and teaching activities are encouraged and supported by the active academic department and there is a highly successful training programme with registrars.</p> <p>&nbsp;<br>Person Specification<br>Qualifications and Higher Qualifications<br>Essential<br>MB BS or equivalent<br>FRCR or equivalent<br>CCT (or within 6 months of date of interview) or on specialist register<br>Knowledge<br>Essential<br>Evidence of extensive experience in diagnostic radiology as well as Uroradiology IR procedures<br>Desirable<br>Evidence of participation in relevant regional MDTs &amp; meetings.<br>Clinical expertise in Speciality /Sub speciality:<br>Essential<br>Training in relevant subspecialty for the post, e.g. a formal IR fellowship<br>Desirable<br>A 2nd subspeciality, such as neurology or cardiac radiology.<br>Clinical Governance<br>Essential<br>Knowledge of NHS complaints system Record of incident and near miss reporting<br>Desirable<br>Training in root cause analysis<br>Participation in incident investigation<br>Simulated patient safety training<br>Published audits<br>Radiation Protection experience<br>Training Expected<br>Essential<br>Audit experience<br>Desirable<br>Formal subspeciality record.<br>Recorded log of independently<br>Management/Audit Experience<br>Essential<br>Track record of recent QI projects<br>Desirable<br>performed vascular &amp; non-vascular procedures<br>Academic Achievements:<br>Essential<br>Experience of research, presentations to learned societies<br>Desirable<br>First author publications in refereed journals<br>Higher degree<br>Research/Publications:<br>Essential<br>Record of presentations at specialist societies<br>Desirable<br>Research grants<br>Grant applications<br>Personal Skills<br>Essential<br>Teaching undergraduates and postgraduates<br>Demonstrates honesty, integrity and appreciation of ethical dilemmas<br>Presentation Skills<br>
2253Personal qualities and self management<br>Essential<br>Evidence of continuing professional development<br>Able to change and respond to changing circumstances<br>Flexible approach to work and evidence of team working<br>Able to work as part of a team<br>Self Motivted<br>Disclosure and Barring Service Check<br>This post is subject to the Rehabilitation of Offenders Act (Exceptions Order) 1975 and as such it will be necessary for a submission for Disclosure to be made to the Disclosure and Barring Service (formerly known as CRB) to check for any previous criminal convictions.</p> <p>Certificate of Sponsorship<br>Applications from job seekers who require current Skilled worker sponsorship to work in the UK are welcome and will be considered alongside all other applications. For further information visit the UK Visas and Immigration website (Opens in a new tab).</p> <p>From 6 April 2017, skilled worker applicants, applying for entry clearance into the UK, have had to present a criminal record certificate from each country they have resided continuously or cumulatively for 12 months or more in the past 10 years. Adult dependants (over 18 years old) are also subject to this requirement. Guidance can be found here Criminal records checks for overseas applicants (Opens in a new tab).</p> <p>UK Registration<br>Applicants must have current UK professional registration. For further information please see NHS Careers website (opens in a new window).<br>Employer details<br>Employer name<br>Barts Health NHS Trust</p> <p>Address<br>Whipps Cross Hospital</p> <p>Whipps Cross Road</p> <p>London</p> <p>E11 1NR</p> <p>United Kingdom</p>
2254<br/>
2255<br/>
2256</div>
2257<div class="job-id-parent-container">Job ID: 86024909</div>
2258<input type="hidden" id="job-career-fair-id" value="false">
2259<input type="hidden" id="word-job-sc" value="Job">
2260<input type="hidden" id="job-id" value="86024909">
2261<script type="text/javascript" language="javascript" charset="utf-8">
2262var ga_j_id = '86024909';
2263var ga_s_id=17988;
2264function toggleApplyEmail(btn){ 
2265if(btn == 'apply_email_cancel'){
2266window.dataLayer.push({'event':'job_apply','job_apply_type':"Cancel_Email_M",'job_id':ga_j_id,'apply_impression':"-"})
2267$('#jt_apply_email').find("textarea, input[type=file], input[type=email]").val("");
2268$('#apply_email').val("");
2269$('#apply_name').val("");
2270$('#file-upload-filename').html("No file selected");
2271$('#apply_position').val("Application for: Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology");
2272$('#apply_user_resume').prop('selectedIndex',0); 
2273$('#form-error-container').hide(); 
2274} 
2275$("table tbody.files").empty();
2276$('#modal-email-content').toggle(); 
2277return false;
2278}
2279function submitModal( id ){
2280if( id !== undefined && id === 'invisible-recaptcha-jt_job_email' ) {
2281sendEmail( closest(document.getElementById(id), 'form') );
2282} else {
2283sendApplyEmail();
2284}
2285}
2286function sendApplyEmail(){
2287var error = ""; 
2288var uploading_err = false;
2289var ga_apply_method = $('#ga_apply_method').val();
2290var files = $('tbody.files').find('tr.template-download').find('p.name').find('span'); 
2291if($('.template-upload')){
2292$('.template-upload').each(function(){
2293if($(this).find('.progress').attr('aria-valuenow') > 0)
2294uploading_err = true;
2295})
2296if (uploading_err == true)
2297error+= " - Please wait for files to complete uploading.<br>"; 
2298}
2299var apply_email = $.trim($('#apply_email').val());
2300var apply_name = $.trim($('#apply_name').val());
2301var apply_notes = $.trim($('#apply_notes').val());
2302var apply_user_resume = $('#apply_user_resume').val();
2303var apply_linkedin = $('#apply_linkedin').val();
2304if(apply_email == "")
2305error+= " - Please enter your email address.<br>"; 
2306if(apply_email != "" && !apply_email.match(/^[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+(?:\.[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?/))
2307error += " - Please enter an email address in the form [email protected].<br>"; 
2308if(apply_name == "") 
2309error+= " - Please enter your name.<br>";
2310if(apply_linkedin != "" && !apply_linkedin.match(/^(?:http(s)?:\/\/)[\w.-]+(?:\.[\w\.-]+)+[\w\-\._~:/?#[\]@!\$&'\(\)\*\+,;=.]+$/))
2311error+= " - Please enter a valid LinkedIn or Personal Page URL.<br>";
2312if(files.length == 0 && apply_notes == "") 
2313error+= " - Please upload your CV or enter it into the message field to apply for this position.<br>"; 
2314if(error) { 
2315$("#form-error-container").show(); 
2316document.getElementById("form-error").innerHTML = error; 
2317grecaptcha.reset(); 
2318} 
2319else{ 
2320var data = new FormData($('#jt_apply_email')[0]); 
2321if(files.length > 0) {
2322for (var i = 0; i < files.length; i++)
2323{
2324data.append('resume_uploaded' + i, files[i].innerHTML);
2325}
2326} else{
2327data.append('resume_uploaded', "");
2328}
2329var newContent = '<p class="header"><span class="h5">Your job application is being processed.</span><span id="loading"><br/><img src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/img/graphics/loading-blue.gif" alt="process request" 
2329class="load"/></span></div><br /><br />'; 
2330$("#apply-options .modal-content").html(newContent);
2331$.ajax({ 
2332url: '/c/apply/email.cfm?site_id=17988&submitEmail=1&jb=86024909', 
2333type: 'post', 
2334data: data, 
2335processData:false, 
2336contentType:false, 
2337success: function(html) {
2338if ($('#results-page').children('#status').length)
2339$('#results-page').children('#status').remove();
2340$('#results-page').append(html);
2341var newContent = "";
2342var result = $('#results-page').children('#status').val();
2343if ( result == 'true'){
2344window.dataLayer.push({'event':'job_apply','job_apply_type':"Success_Email_"+ga_apply_method,'job_id':ga_j_id,'apply_impression':"-"})
2345newContent = '<p class="header"><span class="h5">Your job application has been sent.</span><a class="close" data-dismiss="modal" aria-hidden="true">&times;</a></p><br /><br /><button class="primary full" data-dismiss="modal" id="apply_confirm" onclick="location.reload();">OK</button>'; 
2346}
2347else{
2348window.dataLayer.push({'event':'job_apply','job_apply_type':"Fail_Email_"+ga_apply_method,'job_id':ga_j_id,'apply_impression':"-"})
2349newContent = '<p class="header"><span class="h5">Failed to send your job application.'+ result +'</span><a class="close" data-dismiss="modal" aria-hidden="true">&times;</a></p><br /><br /><button class="primary full" data-dismiss="modal" id="apply_confirm">OK</button>'; 
2350}
2351$("#apply-options .modal-content").html(newContent); 
2352},
2353error: function(html){
2354window.dataLayer.push({'event':'job_apply','job_apply_type':"Fail_Email_"+ga_apply_method,'job_id':ga_j_id,'apply_impression':"-"})
2355var newContent = '<header class="header"><h5>Failed to send your job application.</h5><a class="close" data-dismiss="modal" aria-hidden="true">&times;</a></header><br /><br /><button class="primary full" data-dismiss="modal" id="apply_confirm">OK</button>'; 
2356$("#apply-options .modal-content").html(newContent);
2357} 
2358}); 
2359} 
2360return false; 
2361}
2362function setApply( email, online, external, email_href, external_href ){
2363$("#loading").hide();
2364$("#modal-email-content").hide();
2365var emailForm = '<div class="header">'; 
2366emailForm = emailForm + ' <style>'; 
2367emailForm = emailForm + ' #apply-options .modal-content div.header {display: block; text-align: left;}'; 
2368emailForm = emailForm + ' #jt_apply_email {width:100%; padding:20px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}'; 
2369emailForm = emailForm + ' #jt_apply_email fieldset.full {float:none; clear:both}'; 
2370emailForm = emailForm + ' #jt_apply_email fieldset input, #apply_user_resume {width:100%}'; 
2371emailForm = emailForm + ' #jt_apply_email fieldset textarea {display:block; width:100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}'; 
2372emailForm = emailForm + ' #holder {border:20px; background-color:#f5f5f5; }';
2373emailForm = emailForm + ' </style>'; 
2374emailForm = emailForm + ' <span class="h5"> Apply for: </span>'; 
2375emailForm = emailForm + ' <a class="close" data-dismiss="modal" aria-hidden="true">&times;</a>'; 
2376emailForm = emailForm + ' </div>'; 
2377emailForm = emailForm + ' <div role="grid" aria-label="job-title"><div role="row" class="job-title-container"><span role="gridcell"> Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology</span></div></div>'; 
2378emailForm = emailForm + ' <span class="alert error fa" id="form-error-container" style="display:none"><u id="form-error"></u></span>'; 
2379if(email == 1 && online == 0 && external == 0 ){
2380emailForm = emailForm + ' <div id="modal-email-content" style="display:block">';
2381emailForm = emailForm + ' <input type="hidden" value="S" id="ga_apply_method">';
2382}
2383else{
2384emailForm = emailForm + ' <input type="hidden" value="M" id="ga_apply_method">';
2385emailForm = emailForm + ' <p> How would you like to apply to this job? </p>'; 
2386emailForm = emailForm + ' <div>';
2387if(online == 1){
2388emailForm = emailForm + '<a class="secondary ga_int" title="" onclick="window.open(&quot;/job/apply/86024909/&quot;, &quot;newwindow&quot;); return false;">Job Board</a>';}
2389if(external == 1){
2390emailForm = emailForm + '<a href="' + external_href + '" class="secondary ga_ext" target="_blank">Company Website</a>';}
2391if(email == 1){
2392if(email_href.length > 0)
2393emailForm = emailForm + '<a href="' + email_href + '" class="secondary ga_eml" id="apply_email_button">Email</a>';
2394else
2395emailForm = emailForm + '<a href="" class="secondary ga_eml" onclick="return toggleApplyEmail(this.id
2395);" id="apply_email_button">Email</a>';
2396}
2397emailForm = emailForm + ' </div>';
2398emailForm = emailForm + ' <div id="modal-email-content" style="display:none">';
2399}
2400emailForm = emailForm + ' '; 
2401emailForm = emailForm + ' <div id="holder"><form id="jt_apply_email" name="jt_apply_email" method="post" enctype="multipart/form-data">'; 
2402emailForm = emailForm + ' <input type="hidden" value=" Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology" name="apply_position_hid" id="apply_position_hid">'; 
2403emailForm = emailForm + ' <input type="hidden" value="" name="job">'; 
2404emailForm = emailForm + ' <span class="alert"></span>'; 
2405emailForm = emailForm + ' <fieldset class="full">'; 
2406emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">From (your email address)</legend>';
2407emailForm = emailForm + ' <label>* From (your email address)</label>'; 
2408emailForm = emailForm + ' <input type="email" required placeholder="Enter your email address" id="apply_email" aria-label="Email Address" name="apply_email" autocomplete="email" value="">';
2409emailForm = emailForm + ' </fieldset>'; 
2410emailForm = emailForm + ' <fieldset class="full">'; 
2411emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">Full Name</legend>';
2412emailForm = emailForm + ' <label>* Full Name</label>'; 
2413emailForm = emailForm + ' <input type="text" required placeholder="Enter your name" id="apply_name" aria-label="Full Name" name="apply_name" autocomplete="name" value="">';
2414emailForm = emailForm + ' </fieldset>'; 
2415emailForm = emailForm + ' <fieldset class="full">'; 
2416emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">Subject</legend>'; 
2417emailForm = emailForm + ' <label>Subject</label>'; 
2418emailForm = emailForm + ' <input type="text" disabled required placeholder="Enter position" id="apply_position" aria-label="Subject" name="apply_position" value="Application for: Consultant in Radiology with interest in Genitourinary &#x28;GU&#x29; Radiology">'; 
2419emailForm = emailForm + ' </fieldset>'; 
2420emailForm = emailForm + ' <fieldset class="full">'; 
2421emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">Message</legend>';
2422emailForm = emailForm + ' <label>Message</label>'; 
2423emailForm = emailForm + ' <label>Copy and paste your CV below or upload your CV and use this field to include a cover letter or comments. Employers will only receive the information that you include with this form. Please include all pertinent information, such as your contact information.</label>'; 
2424emailForm = emailForm + ' <textarea id="apply_notes" name="apply_notes" aria-label="Resume Text Field" rows="5"></textarea>'; 
2425emailForm = emailForm + ' </fieldset>'; 
2426emailForm = emailForm + ' <fieldset class="full">'; 
2427emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">LinkedIn or Personal Page URL</legend>';
2428emailForm = emailForm + ' <label>LinkedIn or Personal Page URL</label>'; 
2429emailForm = emailForm + ' <input type="text" placeholder="https://www.example.com" id="apply_linkedin" aria-label="LinkedIn" name="apply_linkedin">';
2430emailForm = emailForm + ' </fieldset>'; 
2431emailForm = emailForm + ' <fieldset class="full">'; 
2432emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">Upload CV</legend>'; 
2433emailForm = emailForm + ' <label>Upload CV (max 10MB)</label>'; 
2434emailForm = emailForm + ' <div id="addFiles_btn"><span class="secondary btn btn-success fileinput-button"><i class="glyphicon glyphicon-plus"></i><span>Drop files here or click to upload.</span><input id="fileupload" type="file" name="files[]" aria-label="file upload" multiple accept=".doc,.docx,.txt,.pdf,.odt"></span></div> <table role="presentation" class="table table-striped"><tbody class="files"></tbody></table>'; 
2435emailForm = emailForm + ' </fieldset>'; 
2436emailForm = emailForm + ' '; 
2437/*** ofccp ***/
2438/*** ofccp ***/
2439emailForm = emailForm + ' <fieldset class="full">'; 
2440emailForm = emailForm + ' <legend style="position: absolute;left: -999em;">Send Email</legend>'; 
2441emailForm = emailForm + ' <button type="submit" class="primary ga_eml" id="send_apply_email" name="send_apply_email">Send Email</button>'; 
2442if (email == 1 && online == 0 && external == 0 ){
2443emailForm = emailForm + ' <a data-dismiss="modal" aria-hidden="true" id="apply_email_cancel_single">Cancel</a>';}
2444else{
2445emailForm = emailForm + ' <a onclick="return toggleApplyEmail(this.id
2445)" class="cancel" id="apply_email_cancel">Cancel</a>';}
2446emailForm = emailForm + ' </fieldset>'; 
2447emailForm = emailForm + ' <fieldset>'; 
2448emailForm = emailForm + '<legend style="position: absolute;left: -999em;">Recaptcha</legend>';
2449emailForm = emailForm + '
2449<script type="text/javascript">\n';
2450emailForm = emailForm + '	//fix for this.each is not a function\n';
2451emailForm = emailForm + '	if ("NodeList" in window) {\n';
2452emailForm = emailForm + '	if (!NodeList.prototype.each && NodeList.prototype.forEach) {\n';
2453emailForm = emailForm + '	NodeList.prototype.each = NodeList.prototype.forEach;\n';
2454emailForm = emailForm + '	}\n';
2455emailForm = emailForm + '	}\n';
2456emailForm = emailForm + '	function closest(el, selector) {\n';
2457emailForm = emailForm + '	var matchesFn;\n';
2458emailForm = emailForm + '	["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"].some(function(fn) {\n';
2459emailForm = emailForm + '	if (typeof document.body[fn] == "function") {\n';
2460emailForm = emailForm + '	matchesFn = fn;\n';
2461emailForm = emailForm + '	return true;\n';
2462emailForm = emailForm + '	}\n';
2463emailForm = emailForm + '	return false;\n';
2464emailForm = emailForm + '	})\n';
2465emailForm = emailForm + '	var parent;\n';
2466emailForm = emailForm + '	while (el) {\n';
2467emailForm = emailForm + '	parent = el.parentElement;\n';
2468emailForm = emailForm + '	if (parent && parent[matchesFn](selector)) {\n';
2469emailForm = emailForm + '	return parent;\n';
2470emailForm = emailForm + '	}\n';
2471emailForm = emailForm + '	el = parent;\n';
2472emailForm = emailForm + '	}\n';
2473emailForm = emailForm + '	return null;\n';
2474emailForm = emailForm + '	}\n';
2475emailForm = emailForm + '	\n';
2476emailForm = emailForm + '	// this is for legacy sites that use an inline onclick handler on an anchor tag\n';
2477emailForm = emailForm + '	function handleClick(ev) {\n';
2478emailForm = emailForm + '	ev.preventDefault();\n';
2479emailForm = emailForm + '	\n';
2480emailForm = emailForm + '	grecaptcha.execute();\n';
2481emailForm = emailForm + '	\n';
2482emailForm = emailForm + '	ev.stopPropagation();\n';
2483emailForm = emailForm + '	}\n';
2484emailForm = emailForm + '	\n';
2485emailForm = emailForm + '	// this is for the /employer/help page which has inline javascript validation\n';
2486emailForm = emailForm + '	function handleClick2(ev) {\n';
2487emailForm = emailForm + '	ev.preventDefault();\n';
2488emailForm = emailForm + '	if(verify($(this).up("form"))) {\n';
2489emailForm = emailForm + '	\n';
2490emailForm = emailForm + '	grecaptcha.execute();\n';
2491emailForm = emailForm + '	\n';
2492emailForm = emailForm + '	ev.stopPropagation();\n';
2493emailForm = emailForm + '	} else {\n';
2494emailForm = emailForm + '	\n';
2495emailForm = emailForm + '	grecaptcha.reset();\n';
2496emailForm = emailForm + '	\n';
2497emailForm = emailForm + '	}\n';
2498emailForm = emailForm + '	}\n';
2499emailForm = emailForm + '	\n';
2500emailForm = emailForm + '	function processCaptcha() {\n';
2501emailForm = emailForm + '	var formElement = closest(document.getElementById("invisible-recaptcha"), "form");\n';
2502emailForm = emailForm + '	var links = document.getElementsByClassName("jt_cte_button");\n';
2503emailForm = emailForm + '	var links2 = document.getElementsByClassName("jt_cte_short_button");\n';
2504emailForm = emailForm + '	\n';
2505emailForm = emailForm + '	// this is for responsive sites that use a submit button\n';
2506emailForm = emailForm + '	formElement.addEventListener("submit", function(e){\n';
2507emailForm = emailForm + '	e.preventDefault();\n';
2508emailForm = emailForm + '	\n';
2509emailForm = emailForm + '	grecaptcha.execute();\n';
2510emailForm = emailForm + '	\n';
2511emailForm = emailForm + '	});\n';
2512emailForm = emailForm + '	Array.prototype.forEach.call(links, function(elem) {\n';
2513emailForm = emailForm + '	var btnForm = closest(elem, "form");\n';
2514emailForm = emailForm + '	if(btnForm.id != "jt_login") {\n';
2515emailForm = emailForm + '	elem.onclick = handleClick;\n';
2516emailForm = emailForm + '	}\n';
2517emailForm = emailForm + '	});\n';
2518emailForm = emailForm + '	\n';
2519emailForm = emailForm + '	Array.prototype.forEach.call(links2, function(elem) {\n';
2520emailForm = emailForm + '	var btnForm = closest(elem, "form");\n';
2521emailForm = emailForm + '	if(btnForm.id != "jt_login") {\n';
2522emailForm = emailForm + '	elem.onclick = handleClick2;\n';
2523emailForm = emailForm + '	}\n';
2524emailForm = emailForm + '	});\n';
2525emailForm = emailForm + '	}\n';
2526emailForm = emailForm + '	\n';
2527emailForm = emailForm + '	var onSubmit = function(token) {\n';
2528emailForm = emailForm + '	\n';
2529emailForm = emailForm + '	submitModal("invisible-recaptcha");\n';
2530emailForm = emailForm + '	\n';
2531emailForm = emailForm + '	};\n';
2532emailForm = emailForm + '	<\/script>\n';
2533emailForm = emailForm + '	
2533<script src="https://www.google.com/recaptcha/api.js" async defer><\/script>\n';
2534emailForm = emailForm + '	<div id="invisible-recaptcha" class="g-recaptcha" data-sitekey="6LdELooaAAAAAFLz2ws0k6tlJBtKzk5VAyLCJfIg" data-callback="onSubmit" data-size="invisible"></div>\n';
2535emailForm = emailForm + ' </fieldset>'; 
2536emailForm = emailForm + ' </div></form>'; 
2537emailForm = emailForm + ' '; 
2538emailForm = emailForm + ' </div>'; 
2539$("#share .modal-content").html('');
2540$("#apply-options .modal-content").html(emailForm); 
2541$('#apply-options')
2542.find('#jt_apply_email')
2543.fileupload({url: '/services/upload/upload.cfm'})
2544.fileupload('option', {autoUpload:true, acceptFileTypes:/\.(doc|docx|pdf|txt|odt)/i, maxFileSize: 10485760});
2545processCaptcha();
2546return false; 
2547}
2548function shareJob(job, show, elm, jobtitle, url) {
2549window.dataLayer.push({'event':'job_share','job_id':job.toString(),'clicked_element':'search_results_page','job_share_step':'Initial'});
2550window.dataLayer.push({'event':'job_details', 'clicked_element': "kebab: " + $(elm).attr('data-ga-label')});
2551setEmailForm(job, jobtitle, url);
2552$('#share').modal('show');
2553return false;
2554}
2555function setEmailForm(job_id, jobtitle, url){
2556url = encodeURIComponent(url);
2557var emailForm = '<header class="header">';
2558emailForm = emailForm + '<h5>Share this Job with a Friend</h5>';
2559emailForm = emailForm + '<a aria-hidden="true" data-dismiss="modal" class="close">&times;</a></header>';
2560emailForm = emailForm + '<h2>' + jobtitle + '</h2>';
2561emailForm = emailForm + '<div>';
2562emailForm = emailForm + '<nav class="social-media clearfix">';
2563emailForm = emailForm + '<ul>';
2564emailForm = emailForm + '<li> <a class="facebook-icon" aria-label="Share on Facebook" target="_blank" rel="noopener noreferrer" href="https://facebook.com/sharer.php?u=' + url + '"><span class="icon-custom-margin fa-brands fa-square-facebook" aria-hidden="true"></span></a> </li>';
2565emailForm = emailForm + '<li> <a class="twitter-icon" aria-label="Share on Twitter" target="_blank" rel="noopener noreferrer" href="https://twitter.com/intent/tweet?url=' + url + '"><span class="icon-custom-margin fa-brands fa-square-x-twitter" aria-hidden="true"></span></a> </li>';
2566emailForm = emailForm + '<li> <a class="linkedin-icon" aria-label="Share on LinkedIn" target="_blank" rel="noopener noreferrer" href="https://www.linkedin.com/cws/share?url=' + url + '"><span class="icon-custom-margin fa-brands fa-linkedin" aria-hidden="true"></span></a> </li>';
2567emailForm = emailForm + '</ul>';
2568emailForm = emailForm + '</nav>';
2569/*emailForm = emailForm + '<span class="socialShare"> <!-- The share buttons will be inserted here --> </span>';
2570emailForm = emailForm + '<span class="socials opened" style="width: 330px; margin-left: -145px;"><a href="https://twitter.com/intent/tweet?url=http%3A%2F%2Ftutorialzine.com%2F2014%2F08%2Fcool-share-jquery-plugin%2F&amp;text=Check%20out%20this%20awesome%20jQuery%20Social%20Buttons%20Plugin!%20&amp;via=Tutorialzine" class="icon-custom-margin fa-brands fa-x-twitter"></a><a href="https://facebook.com/sharer.php?u=http%3A%2F%2Ftutorialzine.com%2F2014%2F08%2Fcool-share-jquery-plugin%2F" class="icon-custom-margin fa-brands fa-facebook-f"></a><a href="https://plus.google.com/share?url=http%3A%2F%2Ftutorialzine.com%2F2014%2F08%2Fcool-share-jquery-plugin%2F" class="icon-custom-margin fa-brands fa-google"></a></span>';*/
2571emailForm = emailForm + '</div>';
2572emailForm = emailForm + '<div>';
2573emailForm = emailForm + '<form id="jt_job_email" method="post">';
2574emailForm = emailForm + '<input type="hidden" value="' + job_id + '" name="job">';
2575emailForm = emailForm + '<span class="alert"></span>';
2576emailForm = emailForm + '<fieldset class="full">';
2577emailForm = emailForm + '<legend style="position: absolute;left: -999em;">From (your email)</legend>';
2578emailForm = emailForm + '<label>From (your email)</label>'; 
2579emailForm = emailForm + '<input type="email" required="" placeholder="Enter your email address" class="form-text" id="emailFrom" name="your_email" autocomplete="email">';
2580emailForm = emailForm + '</fieldset>';
2581emailForm = emailForm + '<fieldset class="full">';
2582emailForm = emailForm + '<legend style="position: absolute;
2582left: -999em;">To (recipient\'s emails)</legend>';
2583emailForm = emailForm + '<label>To (recipient\'s emails)</label>'; 
2584emailForm = emailForm + '<input type="email" required="" placeholder="Enter recipient\'s email address" class="form-text" id="emailTo" name="email" autocomplete="email">';
2585emailForm = emailForm + '</fieldset>';
2586emailForm = emailForm + '<fieldset class="full">';
2587emailForm = emailForm + '<legend style="position: absolute;left: -999em;">Your Name</legend>';
2588emailForm = emailForm + '<label>Your Name</label>';
2589emailForm = emailForm + '<input type="text" placeholder="Enter your name" class="form-text" id="name" name="your_name" autocomplete="name">';
2590emailForm = emailForm + '</fieldset>';
2591emailForm = emailForm + '<fieldset class="full">';
2592emailForm = emailForm + '<legend style="position: absolute;left: -999em;">Notes</legend>';
2593emailForm = emailForm + '<label>Notes</label>';
2594emailForm = emailForm + '<textarea id="notes" placeholder="Notes" name="message" rows="4"></textarea>';
2595emailForm = emailForm + '</fieldset>';
2596emailForm = emailForm + '<fieldset class="full">';
2597emailForm = emailForm + '<legend style="position: absolute;left: -999em;">Send Email</legend>'; 
2598emailForm = emailForm + '<button type="submit" class="primary" id="send-email-btn">Send Email</button>';
2599emailForm = emailForm + '<a aria-hidden="true" data-dismiss="modal" class="cancel">Cancel</a>';
2600emailForm = emailForm + '</fieldset>'; 
2601emailForm = emailForm + '<fieldset>';
2602emailForm = emailForm + '<legend style="position: absolute;left: -999em;">Recaptcha</legend>';
2603emailForm = emailForm + '
2603<script type="text/javascript">\n';
2604emailForm = emailForm + '	//fix for this.each is not a function\n';
2605emailForm = emailForm + '	if ("NodeList" in window) {\n';
2606emailForm = emailForm + '	if (!NodeList.prototype.each && NodeList.prototype.forEach) {\n';
2607emailForm = emailForm + '	NodeList.prototype.each = NodeList.prototype.forEach;\n';
2608emailForm = emailForm + '	}\n';
2609emailForm = emailForm + '	}\n';
2610emailForm = emailForm + '	function closest(el, selector) {\n';
2611emailForm = emailForm + '	var matchesFn;\n';
2612emailForm = emailForm + '	["matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector"].some(function(fn) {\n';
2613emailForm = emailForm + '	if (typeof document.body[fn] == "function") {\n';
2614emailForm = emailForm + '	matchesFn = fn;\n';
2615emailForm = emailForm + '	return true;\n';
2616emailForm = emailForm + '	}\n';
2617emailForm = emailForm + '	return false;\n';
2618emailForm = emailForm + '	})\n';
2619emailForm = emailForm + '	var parent;\n';
2620emailForm = emailForm + '	while (el) {\n';
2621emailForm = emailForm + '	parent = el.parentElement;\n';
2622emailForm = emailForm + '	if (parent && parent[matchesFn](selector)) {\n';
2623emailForm = emailForm + '	return parent;\n';
2624emailForm = emailForm + '	}\n';
2625emailForm = emailForm + '	el = parent;\n';
2626emailForm = emailForm + '	}\n';
2627emailForm = emailForm + '	return null;\n';
2628emailForm = emailForm + '	}\n';
2629emailForm = emailForm + '	\n';
2630emailForm = emailForm + '	// this is for legacy sites that use an inline onclick handler on an anchor tag\n';
2631emailForm = emailForm + '	function handleClick(ev) {\n';
2632emailForm = emailForm + '	ev.preventDefault();\n';
2633emailForm = emailForm + '	\n';
2634emailForm = emailForm + '	grecaptcha.execute();\n';
2635emailForm = emailForm + '	\n';
2636emailForm = emailForm + '	ev.stopPropagation();\n';
2637emailForm = emailForm + '	}\n';
2638emailForm = emailForm + '	\n';
2639emailForm = emailForm + '	// this is for the /employer/help page which has inline javascript validation\n';
2640emailForm = emailForm + '	function handleClick2(ev) {\n';
2641emailForm = emailForm + '	ev.preventDefault();\n';
2642emailForm = emailForm + '	if(verify($(this).up("form"))) {\n';
2643emailForm = emailForm + '	\n';
2644emailForm = emailForm + '	grecaptcha.execute();\n';
2645emailForm = emailForm + '	\n';
2646emailForm = emailForm + '	ev.stopPropagation();\n';
2647emailForm = emailForm + '	} else {\n';
2648emailForm = emailForm + '	\n';
2649emailForm = emailForm + '	grecaptcha.reset();\n';
2650emailForm = emailForm + '	\n';
2651emailForm = emailForm + '	}\n';
2652emailForm = emailForm + '	}\n';
2653emailForm = emailForm + '	\n';
2654emailForm = emailForm + '	function processCaptcha() {\n';
2655emailForm = emailForm + '	var formElement = closest(document.getElementById("invisible-recaptcha-jt_job_email"), "form");\n';
2656emailForm = emailForm + '	var links = document.getElementsByClassName("jt_cte_button");\n';
2657emailForm = emailForm + '	var links2 = document.getElementsByClassName("jt_cte_short_button");\n';
2658emailForm = emailForm + '	\n';
2659emailForm = emailForm + '	// this is for responsive sites that use a submit button\n';
2660emailForm = emailForm + '	formElement.addEventListener("submit", function(e){\n';
2661emailForm = emailForm + '	e.preventDefault();\n';
2662emailForm = emailForm + '	\n';
2663emailForm = emailForm + '	grecaptcha.execute();\n';
2664emailForm = emailForm + '	\n';
2665emailForm = emailForm + '	});\n';
2666emailForm = emailForm + '	Array.prototype.forEach.call(links, function(elem) {\n';
2667emailForm = emailForm + '	var btnForm = closest(elem, "form");\n';
2668emailForm = emailForm + '	if(btnForm.id != "jt_login") {\n';
2669emailForm = emailForm + '	elem.onclick = handleClick;\n';
2670emailForm = emailForm + '	}\n';
2671emailForm = emailForm + '	});\n';
2672emailForm = emailForm + '	\n';
2673emailForm = emailForm + '	Array.prototype.forEach.call(links2, function(elem) {\n';
2674emailForm = emailForm + '	var btnForm = closest(elem, "form");\n';
2675emailForm = emailForm + '	if(btnForm.id != "jt_login") {\n';
2676emailForm = emailForm + '	elem.onclick = handleClick2;\n';
2677emailForm = emailForm + '	}\n';
2678emailForm = emailForm + '	});\n';
2679emailForm = emailForm + '	}\n';
2680emailForm = emailForm + '	\n';
2681emailForm = emailForm + '	var onSubmit = function(token) {\n';
2682emailForm = emailForm + '	\n';
2683emailForm = emailForm + '	submitModal("invisible-recaptcha-jt_job_email");\n';
2684emailForm = emailForm + '	\n';
2685emailForm = emailForm + '	};\n';
2686emailForm = emailForm + '	<\/script>\n';
2687emailForm = emailForm + '	
2687<script src="https://www.google.com/recaptcha/api.js" async defer><\/script>\n';
2688emailForm = emailForm + '	<div id="invisible-recaptcha-jt_job_email" class="g-recaptcha" data-sitekey="6LdELooaAAAAAFLz2ws0k6tlJBtKzk5VAyLCJfIg" data-callback="onSubmit" data-size="invisible"></div>\n';
2689emailForm = emailForm + '</fieldset>';
2690emailForm = emailForm + '</form>';
2691emailForm = emailForm + '</div>';
2692$("#apply-options .modal-content").html('');
2693$("#share .modal-content").html(emailForm); 
2694processCaptcha();
2695return false;
2696}
2697function sendEmail(form){
2698var error = "";
2699if(!form.email.value) error += " - Please enter the email address to which you would like to send this job.\n";
2700else if(!form.email.value.match(/^[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+(?:\.[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?/)) error += " - Please enter an email address in the form [email protected].\n";
2701if(!form.your_email.value) error += " - Please enter a reply to email address.\n";
2702else if(!form.your_email.value.match(/^[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+(?:\.[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?/)) error += " - Please enter an reply to email address in the form [email protected].\n";
2703if(error){
2704alert("The following error(s) have occurred:\n" + error);
2705window.dataLayer.push({'event':'job_share','job_id':"f14adde5-5382990757",'clicked_element':'search_results_page','job_share_step':'Email Submit-Fail'});
2706grecaptcha.reset();
2707}
2708else {
2709var jqxhr = $.post( "/c/functions/emailjob.cfm?site_id=17988", $( form ).serialize(), function( data ) {
2710var newContent = '';
2711if( data.error === undefined || !data.error.length ) {
2712window.dataLayer.push({'event':'job_share','job_id':"f14adde5-5382990757",'clicked_element':'search_results_page','job_share_step':'Email Submit-Success'});
2713newContent = '<header class="header"><h5>Job has been sent.</h5><a class="close" data-dismiss="modal" aria-hidden="true">&times;</a></header><br /><br /><button class="primary" data-dismiss="modal">OK</button>';
2714} else {
2715window.dataLayer.push({'event':'job_share','job_id':"f14adde5-5382990757",'clicked_element':'search_results_page','job_share_step':'Email Submit-Fail'});
2716newContent = '<header class="header"><h5>' + data.error + '</h5><a class="close" data-dismiss="modal" aria-hidden="true">&times;</a></header><br /><br /><button class="primary" data-dismiss="modal">OK</button>';
2717}
2718$("#share .modal-content").html(newContent);
2719}, 'json' ).fail(function() {
2720alert( "error" );
2721grecaptcha.reset();
2722});
2723}
2724return false;
2725}
2726</script>
vendor: 1 bytes, line 2726
2726
2727<script> 
2728var summarizeAiFlag = false,
2729insightsAiFlag = false,
2730progressCircleSummary = document.querySelector("#progress-circle-path-summary"),
2731summarizeAjax = null;
2732insightsAjax=null;
2733// Put the carousel script here because the whole content of this file refreshesh though ajax
2734$(document).ready(function() {
2735let currentAjax = null;
2736$('[data-toggle-second="tooltip"]').tooltip({ template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' });
2737applyImp='';
2738applyImp='0';
2739applyImp+='1';
2740applyImp+='0';
2741let holder=0;
2742$(document).on('click', '.btn-primary.ga_apply', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Primary",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2743}), $(document).on('click', '.secondary.ga_ext', function(e){if(holder == 0){holder=1; window.dataLayer.push({'event':'job_apply','job_apply_type':"External_M",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':this.href})}
2744}), $(document).on('click', '.btn-primary.ga_ext', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"External_S",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':this.href})
2745}), $(document).on('click', '.secondary.ga_eml', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Initial_Email_M",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2746}), $(document).on('click', '.btn-primary.ga_eml', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Initial_Email_S",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2747}), $(document).on('click', '#apply_email_cancel_single', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Cancel_Email_S",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2748}), $(document).on('click', '.btn-primary.ga_int', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Initial_Internal_S",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2749}), $(document).on('click', '.secondary.ga_int', function(e){ window.dataLayer.push({'event':'job_apply','job_apply_type':"Initial_Internal_M",'job_id':ga_j_id,'apply_impression':applyImp,'job_apply_url':'n/a'})
2750}), $(document).on('click', '.linkedin-icon', function(e){window.dataLayer.push({'event':'job_share','job_id':ga_j_id,'clicked_element':'search_results_page','job_share_step':'Linkedin'})
2751}), $(document).on('click', '.twitter-icon', function(e){window.dataLayer.push({'event':'job_share','job_id':ga_j_id,'clicked_element':'search_results_page','job_share_step':'Twitter'})
2752}), $(document).on('click', '.facebook-icon', function(e){window.dataLayer.push({'event':'job_share','job_id':ga_j_id,'clicked_element':'search_results_page','job_share_step':'Facebook'})
2753}), $("#share").on('shown.bs.modal', function(e){window.dataLayer.push({'event':'job_share','job_id':ga_j_id,'clicked_element':'search_results_page','job_share_step':'Initial'})
2754}), $(document).on('click', '#share .cancel', function(e){window.dataLayer.push({'event':'job_share','job_id':ga_j_id,'clicked_element':'search_results_page','job_share_step':'Cancel'})
2755});
2756if($(".g-scrolling-carousel .items").length > 0){
2757$(".g-scrolling-carousel .items").gScrollingCarousel();
2758}
2759/*** Jobs You May Like and Company Profile Jobs onclick ***/
2760$('.jobs-recommended-container .job-main-data, .more-jobs-from-company-container .more-job-item').on('mouseup', function() {
2761var curObj = $(this); 
2762var job_id = curObj.find('input:hidden[name="job_id"]').val();
2763var job_Title = curObj.find('input:hidden[name="job_position_rel"]').val();
2764var job_Location = curObj.find('input:hidden[name="job_Location_Rel"]').val();
2765var job_flag = curObj.find('input:hidden[name="job_flag"]').val();
2766var ga_rank = curObj.find('input:hidden[name="ga_rank"]').val();
2767var job_source = curObj.find( 'input:hidden[name="job_source"]' ).val();
2768if( job_id !== undefined && /^[a-z0-9_-]+$/i.test( job_id ) ){
2769let temp_user_geocode = "",
2770user_latlong = "",
2771location_completion = $("#location_completion").val(),
2772location_latlong = $("#location_latlong").val();
2773if (typeof userIpGeocode !== "undefined") {
2774temp_user_geocode = JSON.parse(userIpGeocode);
2775if ((typeof temp_user_geocode.latlong !== "undefined") && temp_user_geocode.latlong.length)
2776user_latlong = encodeURIComponent(temp_user_geocode.latlong);
2777}
2778$('div.job-tile-active').removeClass('job-tile-active status-highlight-active'); 
2779$('.job-result-tiles .job-tile-'+job_id).addClass('job-tile-active status-highlight-active');
2780getJob(job_id,undefined,undefined,job_flag,job_Title,job_Location,job_source,undefined,undefined,undefined,user_latlong,location_completion,location_latlong);
2781}
2782else{
2783gaJobClickWeb('Job', 'Job Click', 'none',ga_rank,'backfill-job.backfill_source');
2784window.open(job_id, '_blank');
2785}
2786}
2786);
2787$(".course_cards .course_card").on('click', function(){
2788var job_id = $(".currJobId").val();
2789});
2790$(".job-main-data .job-details .job-detail-row a").on('click', function(){
2791var curObj = $(this),
2792job_id = $(".currJobId").val(),
2793job_source = curObj.find( 'input:hidden[name="job_source"]' ).val();
2794window.dataLayer.push({'event':'job_click','clicked_element':'job_details_section','job_upgrade':"",'job_id':job_id,'job_source':job_source})
2795});
2796/*** Mobile : Show Job Details ***/
2797$('.back-results-button-container').on('click', function() {
2798$('.job-results-body').removeClass("job-results-focus");
2799$('.apply-button-mobile-container').css('display','none');
2800var pageHeight = $(".region_main-pane").css('height');
2801$(".region_main-pane").css({"height":"calc(" + pageHeight + " + 54px)"}); //Apply button Height	
2802$('iframe#launcher').css('bottom','0');
2803/*** Transition Class for Back Btn on Mobile ***/
2804$('.btn-mobile-back').addClass("btn-rotate");
2805});
2806( function() {
2807var activeJob = $( '.job-tile-active.status-highlight-active' ),
2808siteName = ( document.title.split( '-' )[ 1 ] || '' ).trim(),
2809jobId = activeJob.find( 'input:hidden[name="job_id"]' ).val(),
2810jobLocation = ( activeJob.find( 'input:hidden[name="job_Location"]' ).val() || '' ).trim(),
2811jobFlag = activeJob.find( 'input:hidden[name="job_flag"]' ).val(),
2812jobSource = activeJob.find( 'input:hidden[name="job_source"]' ).val();
2813jobTitle = activeJob.find( 'input:hidden[name="job_Position"]' ).val() + ' Job Position ' + ( jobLocation.length ? 'at ' + jobLocation + ' ' : '' ) + '- ' + siteName,
2814jobUrl = window.location.protocol + "//" + window.location.host + '/jobs/view/consultant-in-radiology-with-interest-in-genitourinary-gu-radiology/86024909/' + window.location.search;
2815window.dataLayer.push({'event':'job_view','clicked_element':'job_page_section','job_title':jobTitle,'job_upgrade':"",'job_id':jobId,'job_source':jobSource,'company_name':"Barts Health NHS Trust"});
2816gaJobScroll( jobId, jobTitle, jobUrl );
2817} )();
2818$( '.label-diversity, .label-veterans', '.job-middle-container' ).tooltip( { template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' } );
2819$( '#job-more-locations' ).on( 'click', function(){ 
2820$( '#job-more-locations-dropdown' ).css( {'display': 'block'} );
2821});
2822$( '#career-fair-register-button' ).on( 'click', function(){
2823let register_url = $( '#career-fair-register-url' ).val();
2824window.location.href = register_url;
2825});
2826$( '#intel-job-location').on( 'change', function(){
2827let job_id = $("#job-id").val(), 
2828location = $(this).find(':selected').attr('data-location').trim(), 
2829aLocation = [],
2830country = '',
2831state = '',
2832city = '';
2833gaJobView('Community Intel Location', 'Community Intel Location', $(this).val());
2834$("#community-intel-spinner").css("display", "");
2835$("#community-intel-overlay").css({"width":"100%", "opacity":.5});
2836if (job_id.length > 0 && location.length > 0) {
2837aLocation = location.split("$");
2838// aLocation[0] = city
2839// aLocation[1] = state
2840// aLocation[2] = country
2841if (aLocation.length == 3) {
2842city = aLocation[0].split("=").pop().trim();
2843state = aLocation[1].split("=").pop().trim();
2844country = aLocation[2].split("=").pop().trim();
2845}
2846// Abort any other existing AJAX request
2847if(currentAjax != null){
2848currentAjax.abort();
2849}
2850ajaxUrl = '/c/@search_results/controller/includes/get_intel.cfm?ajaxRequest=1&ajaxIntelLocationChange=1&intel_city='+city+'&intel_state='+state+'&intel_country='+country+'&site_id=17988'+'&nation_code=234'+'&locationCount=1'+'&jobWord=Job';
2851currentAjax = $.ajax({
2852method: "GET",
2853url: ajaxUrl
2854}).done(function(result){
2855let jsonResponse = JSON.parse(result);
2856$(".community-intel-info-container").remove();
2857if (jsonResponse.intel_found) {
2858// replace with new intel content
2859if ($("#community-intel-location-specific-content").length > 0) {
2860$("#community-intel-location-specific-content").replaceWith(jsonResponse.intel_content);
2861}
2862else {
2863$("#community-intel-error-container").after(jsonResponse.intel_content).remove();
2864}
2865}
2866else {
2867// replace the intel content with the error
2868if ($("#community-intel-location-specific-content").length > 0) {
2869// append the error after this container and then remove this container
2870$("#community-intel-location-specific-content").after(jsonResponse.intel_content).remove();
2871}
2872else {
2873// replace the current error message with the new error
2874$("#community-intel-error-container").after(jsonResponse.intel_content).remove();
2875}
2876}
2877$('[data-toggle="tooltip"]').tooltip( { template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' } );
2878$("#community-intel-spinner").css("display", "none");
2879$("#community-intel-overlay").css({"width":"0%", "opacity":0});
2880});
2881}
2882});
2883});
2884function adjustModalBackdrop() {
2885$(".modal-backdrop").attr("style", "position: absolute !important; height: "+$(".job-and-location-container").height()+"px; width: "+$(".job-and-location-container").width()+"px; opacity: 0;");
2886// doing the z-index separately since adding it above gets overwritten by the default bootstrap z-index from the stylesheet
2887$(".modal-backdrop").css("z-index", "5");
2888}
2889function showNextCareerFair(idx) {
2890if (typeof aCareerFairs[idx] !== "undefined") {
2891let cfair_date = aCareerFairs[idx].start_date;
2892if (typeof aCareerFairs[idx].end_date !== "undefined" && aCareerFairs[idx].end_date.length)
2893cfair_date = cfair_date + ' - ' + aCareerFairs[idx].end_date;
2894// image logic
2895let image = "<div class='logo-placeholder'><i class='bi bi-calendar-check icon'></i></div>";
2896if (typeof aCareerFairs[idx].badge_jpg_exists !== "undefined" && aCareerFairs[idx].badge_jpg_exists === true)
2897image = "<img src='/images/career_fairs/badges/"+aCareerFairs[idx].id+".jpg' class='logo' alt='logo' />"
2898else if (typeof aCareerFairs[idx].badge_gif_exists !== "undefined" && aCareerFairs[idx].badge_gif_exists === true)
2899image = "<img src='/images/career_fairs/badges/"+aCareerFairs[idx].id+".gif' class='logo' alt='logo' />"
2900let banner_itle = aCareerFairs[idx].banner_title;
2901if ( aCareerFairs[idx].id == $("#job-career-fair-id").val())
2902banner_itle = "This "+$("#word-job-sc").val()+" will be in the Upcoming Career Fair!";
2903let html = image + '<div class="contents"><div class="title">'+banner_itle+'</div><div class="subtext">'+aCareerFairs[idx].name+'</div><div class="date">'+cfair_date+'</div></div>';
2904$(".career-fair-container").html(html);
2905let maxCareerFairs = (aCareerFairs.length -1);
2906let prev = (idx == 0) ? maxCareerFairs : (idx-1);
2907let next = (idx == maxCareerFairs) ? 0 : (idx+1);
2908if (idx === 0) {
2909// hide prev button
2910$("#career-fair-prev").addClass('hide');
2911$("#career-fair-prev").removeAttr("onClick");
2912// show next button
2913$("#career-fair-next").removeClass('hide');
2914$("#career-fair-next").attr("onClick", "showNextCareerFair("+next+")");
2915}
2916else if (idx === maxCareerFairs) {
2917// show prev button
2918$("#career-fair-prev").removeClass('hide');
2919$("#career-fair-prev").attr("onClick", "showNextCareerFair("+prev+")");
2920// hide next button
2921$("#career-fair-next").addClass('hide');
2922$("#career-fair-next").removeAttr("onClick");
2923}
2924else {
2925$("#career-fair-prev").removeClass('hide');
2926$("#career-fair-next").removeClass('hide');
2927$("#career-fair-prev").attr("onClick", "showNextCareerFair("+prev+")");
2928$("#career-fair-next").attr("onClick", "showNextCareerFair("+next+")");
2929}
2930// register now button logic
2931if (typeof aCareerFairs[idx].register_now_url !== "undefined" && aCareerFairs[idx].register_now_url.length) {
2932$("#career-fair-register-url").val(aCareerFairs[idx].register_now_url);
2933$("#career-fair-register-button").css("display", "block");
2934}
2935else {
2936$("#career-fair-register-url").val('');
2937$("#career-fair-register-button").css("display", "none");
2938}
2939}
2940}
2941// Disable dropdown closing on clicking inside the dropdown
2942$('#ai-dropdownMenu').on('click', function(e) {
2943e.stopPropagation(); // Prevent event from propagating to the parent
2944});
2945function generateSummary(id) {
2946//close the tooltip
2947$('#ai-button').tooltip('hide');
2948if (summarizeAiFlag == false) {
2949if (typeof id !== undefined) {
2950// ajax call to get the content
2951let ajaxURL = "/includes/ai_integration/summarize.cfm?item_id=" + id + "&item_type=job&action=summarize&site_id=17988&content_type=summary";
2952if(summarizeAjax != null){
2953summarizeAjax.abort();
2954}
2955summarizeAjax = $.ajax({
2956method: "GET",
2957url: ajaxURL
2958}).done(function(result){
2959let jsonResponse = JSON.parse(result);
2960if (jsonResponse.status == true) {
2961$(".ai-summary-post-loading-content").show();
2962if (jsonResponse.content && jsonResponse.content.length > 0) {
2963summarizeAiFlag = true;
2964$(".ai-summary-post-loading-content .title-contents-container").show();
2965$(".ai-summary-post-loading-content .ai-legal-footer-container").show();
2966$("#ai-pills-summary .ai-summary-pre-loading-content").hide();
2967$("#ai-pills-summary .ai-summary-post-loading-content .contents-container").html(jsonResponse.content);
2968window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_insights_button", 'clicked_element_details': "success", 'job_id': id});
2969}
2970if(!summarizeAiFlag){
2971$("#ai-pills-summary .ai-summary-pre-loading-content").hide();
2972$("#ai-pills-summary .ai-summary-post-loading-content .title-contents-container").show();
2973$("#ai-pills-summary .ai-summary-post-loading-content .title-container").hide();
2974$("#ai-pills-summary .ai-summary-post-loading-content .contents-container").html("<b><i>Oops! Something went wrong while loading your job summary.</i></b><br>We're working on it&#8212;check back shortly!");
2975window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_insights_button", 'clicked_element_details': "error", 'job_id': id});
2976}
2977} else {
2978$("#ai-pills-summary .ai-summary-pre-loading-content").hide();
2979$("#ai-pills-summary .ai-summary-post-loading-content .title-contents-container").show();
2980$("#ai-pills-summary .ai-summary-post-loading-content .title-container").hide();
2981$("#ai-pills-summary .ai-summary-post-loading-content .contents-container").html("<b><i>Oops! Something went wrong while loading your job summary.</i></b><br>We're working on it&#8212;check back shortly!");
2982window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_insights_button", 'clicked_element_details': "error", 'job_id': id});
2983}
2984});
2985}
2986} else { // The above "if" condition will be executed only for 1st click. So "else" condition is to make "ai_summary_insights_button" event for 2nd and subsequent clicks. 
2987if (!$(".ai-summary-dropdown-container").hasClass("show")) { // Event must be logged only during modal opening click and not for modal closing click.
2988if($("#ai-pills-summary .ai-summary-post-loading-content .contents-container b i").length == 0) {
2989window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_insights_button", 'clicked_element_details': "success", 'job_id': id});
2990} else {
2991window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_insights_button", 'clicked_element_details': "error", 'job_id': id});
2992}
2993}
2994}
2995}
2996function generateInsights(id) { 
2997//close the tooltip
2998$('#ai-button').tooltip('hide'); 
2999if (insightsAiFlag == false) {
3000if (typeof id !== undefined) {
3001let ajaxURL = "/includes/ai_integration/summarize.cfm?item_id=" + id + "&item_type=job&action=insights&site_id=17988&content_type=insights";
3002if(insightsAjax != null){
3003insightsAjax.abort();
3004}
3005insightsAjax = $.ajax({
3006method: "GET",
3007url: ajaxURL
3008}).done(function(result){
3009let jsonResponse = JSON.parse(result);
3010if (jsonResponse.status == true) {
3011$(".ai-insights-post-loading-content").show();
3012if (jsonResponse.insights && jsonResponse.insights.length > 0) {
3013insightsAiFlag = true;
3014$(".ai-insights-post-loading-content .title-contents-container").show();
3015$(".ai-insights-post-loading-content .ai-legal-footer-container").show();
3016$("#ai-pills-insights .ai-insights-pre-loading-content").hide();
3017$("#ai-insights-tab").show();
3018$("#ai-pills-insights .ai-insights-post-loading-content .contents-container").html(jsonResponse.insights);
3019window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_insights_tab", 'clicked_element_details': "success", 'job_id': id});
3020}
3021if(!insightsAiFlag){
3022$("#ai-pills-insights .ai-insights-pre-loading-content").hide();
3023$("#ai-pills-insights .ai-insights-post-loading-content .title-contents-container").show();
3024$("#ai-pills-insights .ai-insights-post-loading-content .title-container").hide();
3025$("#ai-pills-insights .ai-insights-post-loading-content .contents-container").html("<b><i>Oops! Something went wrong while loading your job insights.</i></b><br>We're working on it&#8212;check back shortly!");
3026window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_insights_tab", 'clicked_element_details': "error", 'job_id': id});
3027}
3028} else {
3029$("#ai-pills-insights .ai-insights-pre-loading-content").hide();
3030$("#ai-pills-insights .ai-insights-post-loading-content .title-contents-container").show();
3031$("#ai-pills-insights .ai-insights-post-loading-content .title-container").hide();
3032$("#ai-pills-insights .ai-insights-post-loading-content .contents-container").html("<b><i>Oops! Something went wrong while loading your job insights.</i></b><br>We're working on it&#8212;check back shortly!");
3033window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_insights_tab", 'clicked_element_details': "error", 'job_id': id});
3034}
3035});
3036}
3037}
3038}
3039$(document).on('click', function(event) {
3040const $dropdown = $('.ai-dropdown-toggle');
3041if (!$dropdown.is(event.target) && $dropdown.has(event.target).length === 0) {
3042$dropdown.find('.dropdown-menu').removeClass('show'); 
3043}
3044});
3045// Close dropdown when the close button inside is clicked
3046$(document).on('click', '.ai-close-button', function() {
3047$(this).closest('.dropdown-menu').removeClass('show'); 
3048});
3049// Get the container element
3050dropdownContainer = document.getElementById("ai-dropdownMenu");
3051// Attach event listener for tab buttons within the container
3052if (dropdownContainer) {
3053dropdownContainer.querySelectorAll('[data-toggle="tab"]').forEach((tab) => {
3054tab.addEventListener("click", function (e) {
3055e.preventDefault();
3056// Remove 'active' class from all tabs and their panels
3057dropdownContainer.querySelectorAll(".nav-link").forEach((el) => el.classList.remove("active"));
3058dropdownContainer.querySelectorAll(".tab-pane").forEach((el) => el.classList.remove("show", "active"));
3059// Add 'active' to the clicked tab and corresponding panel
3060this.classList.add("active");
3061const targetPanel = document.querySelector(this.getAttribute("data-target"));
3062if (targetPanel) {
3063targetPanel.classList.add("show", "active");
3064}
3065if($(targetPanel).attr("id") === "ai-pills-summary") {
3066if ($(".ai-summary-pre-loading-content").is(":hidden")) { // This must execute only when Summary tab is already loaded via ajax because there is a separate snippet to log the event during ajax call.
3067if($("#ai-pills-summary .ai-summary-post-loading-content .contents-container b i").length == 0) {
3068window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_tab", 'clicked_element_details': "success", 'job_id': 86024909});
3069} else {
3070window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_summary_tab", 'clicked_element_details': "error", 'job_id': 86024909});
3071}
3072}
3073} else if ( $(targetPanel).attr("id") === "ai-pills-insights") {
3074if ($(".ai-insights-pre-loading-content").is(":hidden")) { // This must execute only when Insights tab is already loaded via ajax because there is a separate snippet to log the event during ajax call.
3075if($("#ai-pills-insights .ai-insights-post-loading-content .contents-container b i").length == 0) {
3076window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_insights_tab", 'clicked_element_details': "success", 'job_id': 86024909});
3077} else {
3078window.dataLayer.push({'event':'ai_job_description', 'clicked_element': "ai_insights_tab", 'clicked_element_details': "error", 'job_id': 86024909});
3079}
3080}
3081}
3082});
3083});
3084}
3085</script>
3085
3086<div class='company-details-jobs-learning-parent-container' id='data-step-hiring-company'>
3087<div class="jobs-you-may-like-container" id="data-step-similar-jobs">
3088<div class="jobs-you-may-like-title">
3089Jobs You May Like
3090</div>
3091<div class="jobs-recommended-container g-carousel">
3092<div class="g-scrolling-carousel">
3093<div class="items" draggable="true">
3094<div id="Consultant-in-Radiology-with-interest-in...-at-Barts-Health-NHS-Trust" role="button" class="job-tile job-mo status-highlight-vert status-highlight-spotlight-left">
3095<div class="job-main-data">
3096<input type="hidden" name="job_id" value="86009871">
3097<input type="hidden" name="job_position_rel" value="Consultant in Radiology with interest in..."/>
3098<input type="hidden" name="job_flag" value="initials"/>
3099<input type="hidden" name="ga_rank" value="1"/>
3100<input type="hidden" name="job_source" value="posted" />
3101<div class="job-details-logo logo-none" role="presentation">
3102<span role="presentation">B</span>
3103</div>
3104<div class="job-details" aria-labelledby="Consultant-in-Radiology-with-interest-in...-at-Barts-Health-NHS-Trust">
3105<div class="job-detail-row">
3106<div class="job-title" aria-label="Job Title" tabindex="0">Consultant in Radiology with interest in...</div>
3107<div class="icon-off bookmark" aria-label="This Job is Saved to your Profile" tabindex="0" onclick="saveJob(86009871, this,'(related jobs)', '/signin/?goto=%2Fjobs%2F&msg=1');" >
3108<a href="#" role="button" aria-label="Press Enter to Remove this Job from your Saved Jobs" class="save86009871"></a>
3109</div>
3110</div>
3111<div class="job-company-row" aria-labelledby="Consultant-in-Radiology-with-interest-in...-at-Barts-Health-NHS-Trust" aria-label="Hiring Company">Barts Health NHS Trust</div>
3112<div class="job-subtext-row" aria-labelledby="Consultant-in-Radiology-with-interest-in...-at-Barts-Health-NHS-Trust">
3113<div class="job-location" aria-label="Job Location">
3114London,
3115England,
3116United Kingdom
3117<input type="hidden" name="job_Location_Rel" value="London England United Kingdom"/>
3118<span class="workplace-location">(on-site)</span>
3119</div>
3120</div>
3121</div>
3122</div>
3123</div>
3124<div id="Principal-Clinical-Scientist---Radiation-Safety,...-at-Maidstone-and-Tunbridge-Wells..." role="button" class="job-tile job-mo status-highlight-vert status-highlight-spotlight-left">
3125<div class="job-main-data">
3126<input type="hidden" name="job_id" value="86010003">
3127<input type="hidden" name="job_position_rel" value="Principal Clinical Scientist - Radiation Safety,..."/>
3128<input type="hidden" name="job_flag" value="initials"/>
3129<input type="hidden" name="ga_rank" value="2"/>
3130<input type="hidden" name="job_source" value="posted" />
3131<div class="job-details-logo logo-none" role="presentation">
3132<span role="presentation">M</span>
3133</div>
3134<div class="job-details" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,...-at-Maidstone-and-Tunbridge-Wells...">
3135<div class="job-detail-row">
3136<div class="job-title" aria-label="Job Title" tabindex="0">Principal Clinical Scientist - Radiation Safety,...</div>
3137<div class="icon-off bookmark" aria-label="This Job is Saved to your Profile" tabindex="0" onclick="saveJob(86010003, this,'(related jobs)', '/signin/?goto=%2Fjobs%2F&msg=1');" >
3138<a href="#" role="button" aria-label="Press Enter to Remove this Job from your Saved Jobs" class="save86010003"></a>
3139</div>
3140</div>
3141<div class="job-company-row" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,...-at-Maidstone-and-Tunbridge-Wells..." aria-label="Hiring Company">Maidstone and Tunbridge Wells...</div>
3142<div class="job-subtext-row" aria-labelledby="Principal-Clinical-Scientist---Radiation-Safety,...-at-Maidstone-and-Tunbridge-Wells...">
3143<div class="job-location" aria-label="Job Location">
3144Maidstone,
3145England,
3146United Kingdom
3147<input type="hidden" name="job_Location_Rel" value="Maidstone England United Kingdom"/>
3148<span class="workplace-location">(on-site)</span>
3149</div>
3150</div>
3151</div>
3152</div>
3153</div>
3154<div id="Consultant-Radiologist-with-a-major-interest-in...-at-Portsmouth-Hospitals..." role="button" class="job-tile job-mo status-highlight-vert status-highlight-spotlight-left">
3155<div class="job-main-data">
3156<input type="hidden" name="job_id" value="86024936">
3157<input type="hidden" name="job_position_rel" value="Consultant Radiologist with a major interest in..."/>
3158<input type="hidden" name="job_flag" value="initials"/>
3159<input type="hidden" name="ga_rank" value="3"/>
3160<input type="hidden" name="job_source" value="posted" />
3161<div class="job-details-logo logo-none" role="presentation">
3162<span role="presentation">PH</span>
3163</div>
3164<div class="job-details" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in...-at-Portsmouth-Hospitals...">
3165<div class="job-detail-row">
3166<div class="job-title" aria-label="Job Title" tabindex="0">Consultant Radiologist with a major interest in...</div>
3167<div class="icon-off bookmark" aria-label="This Job is Saved to your Profile" tabindex="0" onclick="saveJob(86024936, this,'(related jobs)', '/signin/?goto=%2Fjobs%2F&msg=1');" >
3168<a href="#" role="button" aria-label="Press Enter to Remove this Job from your Saved Jobs" class="save86024936"></a>
3169</div>
3170</div>
3171<div class="job-company-row" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in...-at-Portsmouth-Hospitals..." aria-label="Hiring Company">Portsmouth Hospitals...</div>
3172<div class="job-subtext-row" aria-labelledby="Consultant-Radiologist-with-a-major-interest-in...-at-Portsmouth-Hospitals...">
3173<div class="job-location" aria-label="Job Location">
3174Portsmouth,
3175England,
3176United Kingdom
3177<input type="hidden" name="job_Location_Rel" value="Portsmouth England United Kingdom"/>
3178<span class="workplace-location">(on-site)</span>
3179</div>
3180</div>
3181</div>
3182</div>
3183</div>
3184<div id="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham..." role="button" class="job-tile job-mo status-highlight-vert status-highlight-spotlight-left">
3185<div class="job-main-data">
3186<input type="hidden" name="job_id" value="86009904">
3187<input type="hidden" name="job_position_rel" value="Consultant in Breast Radiology"/>
3188<input type="hidden" name="job_flag" value="initials"/>
3189<input type="hidden" name="ga_rank" value="4"/>
3190<input type="hidden" name="job_source" value="posted" />
3191<div class="job-details-logo logo-none" role="presentation">
3192<span role="presentation">S</span>
3193</div>
3194<div class="job-details" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham...">
3195<div class="job-detail-row">
3196<div class="job-title" aria-label="Job Title" tabindex="0">Consultant in Breast Radiology</div>
3197<div class="icon-off bookmark" aria-label="This Job is Saved to your Profile" tabindex="0" onclick="saveJob(86009904, this,'(related jobs)', '/signin/?goto=%2Fjobs%2F&msg=1');" >
3198<a href="#" role="button" aria-label="Press Enter to Remove this Job from your Saved Jobs" class="save86009904"></a>
3199</div>
3200</div>
3201<div class="job-company-row" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham..." aria-label="Hiring Company">Sandwell and West Birmingham...</div>
3202<div class="job-subtext-row" aria-labelledby="Consultant-in-Breast-Radiology-at-Sandwell-and-West-Birmingham...">
3203<div class="job-location" aria-label="Job Location">
3204Birmingham,
3205England,
3206United Kingdom
3207<input type="hidden" name="job_Location_Rel" value="Birmingham England United Kingdom"/>
3208<span class="workplace-location">(on-site)</span>
3209</div>
3210</div>
3211</div>
3212</div>
3213</div>
3214</div>
3215</div>
3216</div>
3217</div>
3218</div>
3219<div class="banner-container">
3220<div class="leaderboard-adspace bottom site" role="complementary" data-type="ad" data-location="bottom" aria-label="Footer Banner Ad">
3221<script type="text/javascript">
3222$(function() {
3223var $adEl = $('div[data-type="ad"][data-location="bottom"]');
3224if (typeof window.hideBannerOnError === 'function') window.hideBannerOnError($adEl[0]);
3225postscribe($adEl, '
3225<script src="https://servedbyadbutler.com/adserve/;ID=179021;size=728x90;setID=433337;type=js;sw=1920;sh=1080;spr=1;kw=17988;pid=101670;place=0;rnd=101670;click=CLICK_MACRO_PLACEHOLDER" type="text/javascript"><\/script>');
3226});
3227</script>
3227
3228</div>
3229</div> 
3230<div class="apply-button-mobile-container" style="display: none;"></div>
3231</div>
3232<div class="community-intel-container with-search-bar community-intel-container-open">
3233<div class="slide-panel-button" tabindex="0" id="community-intel-slide-panel" role="button" data-toggle="tooltip" data-trigger="hover" data-placement="bottom" data-original-title="Hide Location">
3234<i class="bi bi-arrow-bar-left slide-icon slide-icon-close"></i>
3235</div>
3236<div class="additional-overflow-container" id="community-intel-content">
3237<div class="location-details-form-container">
3238<div class="w-100">
3239<label for="job-location" tabindex="0">Job Location</label>
3240<div class="input-group">
3241<i class="bi bi-geo-alt input-icon input-icon-job-location" aria-hidden="true"></i>
3242<select id="intel-job-location" class="custom-select form-control">
3243<option 
3244value="London, England, United Kingdom" 
3245data-location="city=London$state=England$country=United Kingdom"
3246>London, England, United Kingdom</option>
3247</select>
3248</div>
3249</div>
3250</div> 
3251<div class="location-details-container" id="community-intel-location-specific-content">
3252<div class="details-card">
3253<div class="salary-section" id="mediam-salary-container">
3254<div class="salary-title-subtitle">
3255<div class="salary-title" tabindex="0">Median Salary</div>
3256<div class="salary-subtitle" tabindex="0">
3257Net Salary per month
3258</div>
3259</div>
3260<div class="salary-value" tabindex="0">
3261£3,649
3262</div>
3263</div>
3264<div class="info-card-container" id="cost-of-living-container">
3265<div class="info-card-header">
3266<div class="title-subtitle-icon">
3267<i class="bi bi-currency-dollar info-card-icon"></i>
3268<div class="info-card-title-subtitle">
3269<div class="info-card-title">
3270<span tabindex="0">Cost of Living Index</span>
3271<span class="info-icon-container" data-toggle="tooltip" data-placement="auto" data-original-title="The cost-of-living indices provided are relative to New York City (NYC), with a baseline index of 100 for NYC. This index indicates the relative prices of consumer goods like groceries, restaurants, transportation, and utilities and is calculated based on estimated average expenses for a four-person family. It excludes expenses such as rent or mortgage." tabindex="0">
3272<i class="bi bi-info-circle info-icon"></i>
3273</span>
3274</div>
3275</div>
3276</div>
3277<div class="index-value" id="cost-of-living-value">
3278<span class="actual-value" tabindex="0">86</span><span class="out-of-value" tabindex="0">/100</span>
3279</div>
3280</div>
3281<div class="info-card-progress-bar">
3282<div class="multiple-progress-bar-container">
3283<div class="progress-bar-container">
3284<div class="progress-bar-container-right">
3285<div class="progress-bar-tooltip-wrapper" id="cost-of-living-bar">
3286<div class="progress-value border-full" style="width: 86%"></div>
3287<div class="custom-tooltip" style="left: 86%">
328886
3289</div>
3290</div>
3291</div>
3292</div>
3293</div>
3294</div>
3295</div>
3296<div class="info-card-container" id="median-apartment-container">
3297<div class="info-card-header">
3298<div class="title-subtitle-icon">
3299<i class="bi bi-buildings info-card-icon"></i>
3300<div class="info-card-title-subtitle">
3301<div class="info-card-title">
3302<span tabindex="0">Median Apartment Rent in City Center</span>
3303</div>
3304<div class="info-card-subtitle" id="median-apartment-bedroom" tabindex="0">
3305(1-3 Bedroom)
3306</div>
3307</div>
3308</div>
3309<div class="single-value" id="median-apartment-value" tabindex="0">
3310£2,211 
3311- 
3312£4,042 
3313</div>
3314</div>
3315<div class="info-card-progress-bar">
3316<div class="multiple-progress-bar-container">
3317<div class="progress-bar-container">
3318<div class="progress-bar-container-right">
3319<div class="progress-bar-tooltip-wrapper" id="median-apartment-bar">
3320<div class="progress-value border-full" style="width: 50%"></div>
3321<div class="custom-tooltip" style="left: 50%">
3322£3,127
3323</div>
3324</div>
3325</div>
3326</div>
3327</div>
3328</div>
3329</div>
3330<div class="info-card-container" id="safety-index-container">
3331<div class="info-card-header">
3332<div class="title-subtitle-icon">
3333<i class="bi bi-shield-plus info-card-icon"></i>
3334<div class="info-card-title-subtitle">
3335<div class="info-card-title">
3336<span tabindex="0">Safety Index</span>
3337<span class="info-icon-container" data-toggle="tooltip" data-placement="auto" data-original-title="This index is presented on a scale ranging from 0 to 100 and is based on user-contributed data and perceptions, which may differ from official government statistics. If the city has a high safety index, it is considered very safe." tabindex="0">
3338<i class="bi bi-info-circle info-icon"></i>
3339</span>
3340</div>
3341</div>
3342</div>
3343<div class="index-value" id="safety-index-value">
3344<span class="actual-value" tabindex="0">45</span><span class="out-of-value" tabindex="0">/100</span>
3345</div>
3346</div>
3347<div class="info-card-progress-bar">
3348<div class="multiple-progress-bar-container">
3349<div class="progress-bar-container">
3350<div class="progress-bar-container-right">
3351<div class="progress-bar-tooltip-wrapper" id="safety-index-bar">
3352<div class="progress-value border-full" style="width: 45%"></div>
3353<div class="custom-tooltip" style="left: 45%">
335445
3355</div>
3356</div>
3357</div>
3358</div>
3359</div>
3360</div>
3361</div>
3362</div>
3363<div class="details-card" id="utilities-container">
3364<div class="details-header" tabindex="0">Utilities</div>
3365<div class="info-card-container">
3366<div class="info-card-header">
3367<div class="title-subtitle-icon">
3368<i class="bi bi-lightning-charge info-card-icon"></i>
3369<div class="info-card-title-subtitle">
3370<div class="info-card-title" id="utility-type"><span tabindex="0">Basic</span></div>
3371<div class="info-card-subtitle" tabindex="0"> (Electricity, heating, cooling, water, garbage for 915 sq ft apartment) </div>
3372</div>
3373</div>
3374<div class="single-value" id="utility-value" tabindex="0">
3375£161 
3376- 
3377£504
3378</div>
3379</div>
3380<div class="info-card-progress-bar">
3381<div class="multiple-progress-bar-container">
3382<div class="progress-bar-container">
3383<div class="progress-bar-container-right">
3384<div class="progress-bar-tooltip-wrapper" id="utility-bar">
3385<div class="progress-value border-full" style="width: 54.563492063492%"></div>
3386<div class="custom-tooltip" style="left: 54.563492063492%"> £275 </div>
3387</div>
3388</div>
3389</div>
3390</div>
3391</div>
3392</div>
3393<div class="info-card-container" id="utility-internet-container">
3394<div class="info-card-header">
3395<div class="title-subtitle-icon">
3396<i class="bi bi-wifi info-card-icon"></i>
3397<div class="info-card-title-subtitle">
3398<div class="info-card-title"><span tabindex="0">High-Speed Internet</span></div>
3399</div>
3400</div>
3401<div class="single-value" id="ulitity-internet-value" tabindex="0">
3402£25 
3403- 
3404£40
3405</div>
3406</div>
3407<div class="info-card-progress-bar">
3408<div class="multiple-progress-bar-container">
3409<div class="progress-bar-container">
3410<div class="progress-bar-container-right">
3411<div class="progress-bar-tooltip-wrapper" id="utility-internet-bar">
3412<div class="progress-value border-full" style="width: 77.5%"></div>
3413<div class="custom-tooltip" style="left: 77.5%"> £31 </div>
3414</div>
3415</div>
3416</div>
3417</div>
3418</div>
3419</div>
3420</div>
3421<div class="details-card" id="transportation-container">
3422<div class="details-header" tabindex="0">Transportation</div>
3423<div class="info-card-container">
3424<div class="info-card-header">
3425<div class="title-subtitle-icon">
3426<i class="bi bi-fuel-pump info-card-icon"></i>
3427<div class="info-card-title-subtitle" id="transportation-gasoline-info">
3428<div class="info-card-title"><span tabindex="0">Gasoline</span></div>
3429<div class="info-card-subtitle" tabindex="0"> (1 gallon) </div>
3430</div>
3431</div>
3432<div class="single-value" id="transportation-gasoline-value" tabindex="0">
3433£5.90
3434</div>
3435</div>
3436</div>
3437<div class="info-card-container" id="transportation-gasoline-value">
3438<div class="info-card-header">
3439<div class="title-subtitle-icon">
3440<i class="bi bi-car-front info-card-icon"></i>
3441<div class="info-card-title-subtitle" id="transportation-taxi-info">
3442<div class="info-card-title"><span tabindex="0">Taxi Ride</span></div>
3443<div class="info-card-subtitle" tabindex="0">(1 mile)</div>
3444</div>
3445</div>
3446<div class="single-value" id="transportation-taxi-value" tabindex="0">£4.02</div>
3447</div>
3448</div>
3449</div>
3450<div class="info-card">
3451<i class="bi bi-info-circle info-icon"></i>
3452<span tabindex="0">Data is collected and updated regularly using reputable sources, including corporate websites and governmental reporting institutions.</span>
3453</div>
3454</div>
3455</div>
3456<div id="community-intel-spinner" class="spinner-border" role="status" style="display:none; position:absolute; left: 46%; top: 40%;"><span class="sr-only">Loading...</span></div>
3457<div id="community-intel-overlay" style="opacity: 0; width: 0; height: 100%; position: absolute; z-index: 1060; background-color: rgba(0, 0, 0, 0.4); overflow-y: auto; overflow-x: hidden; text-align: center; transition: opacity 1s;"></div>
3458</div>
3459</div>
3460</section>
3461<!-- END : JOB RESULTS CONTAINER -->
3462</div>	
3463</section>
3464</main>
3465</div>
3466<div id="job-search-spinner-new" class="spinner-border" role="status" style="display:none; position:fixed; top:50%; left:50%; z-index: 1060;"><span class="sr-only">Loading...</span></div>
3467<div id="filters-background" onclick="close_filter()" style="opacity: 0; width: 0px;" role="button"></div>
3468<div class="filters-nav" id="data-step-filter-sidebar">
3469<div class="container">
3470<div class="row">
3471<div class="col">
3472<a href="javascript:void(0)" onclick="close_filter()" aria-label="Filter Your Search" role="button" class="fliters-close-btn">
3473<svg width="21px" height="21px" viewBox="0 0 21 21" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3474<title>Close filter</title>
3475<defs>
3476<polygon id="icon-filter-close" points="21 2.1 18.9 0 10.5 8.4 2.1 0 0 2.1 8.4 10.5 0 18.9 2.1 21 10.5 12.6 18.9 21 21 18.9 12.6 10.5"></polygon>
3477</defs>
3478<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
3479<g>
3480<mask fill="white">
3481<use xlink:href="#icon-filter-close"></use>
3482</mask>
3483<use fill="#000000" xlink:href="#icon-filter-close"></use>
3484</g>
3485</g>
3486</svg>
3487</a>
3488</div>
3489</div>
3490<div class="row">
3491<div class="filters-header-container">
3492<div class="filter-header-number-of-filter">
3493<div class="filters-header body-title-lg">Filters</div>
3494</div>
3495<button type="button" class="btn p-0 clear-all-button disabled" disabled tabindex="-1" onclick="removeAllFilters()">Clear All</button>
3496</div>
3497</div>
3498<div class="row">
3499<div class="col disabled-filter">
3500<div class="filters-checkbox-wrap">
3501<label for="kfields_pos" class="body-title-md filters-checkbox-heading" title="Keyword required to apply this filter">Search Only Position Title</label>
3502<div class="filter-checkbox">
3503<input type="checkbox" aria-label="search-only-position-legend" id="kfields-pos" onclick="toggleFilter(this,'Position Title')" name="kfields" value="pos" disabled aria-disabled="true" title="Keyword required to apply this filter">
3504<span class="checkmark"></span>
3505</div>
3506</div>
3507</div>
3508</div>
3509<div class="row">
3510<div class="col">	
3511<a href="#filter-workplace_type" class="body-title-md filter-accordion-heading" data-toggle="collapse">
3512<div class="label-count-container label-count-workplace_type">
3513<span class="label-container">Workplace Type</span>
3514</div>
3515</a>
3516<div id="filter-workplace_type" class="collapse filter-accordion">	
3517<div class="sub-filter-checkbox">
3518<input type="checkbox" id="t60706-739003" aria-label="On-Site" value="739003" name="t60706" onclick="toggleFilter(this,'On\x2DSite','Workplace\x20Type','workplace_type')" >
3519<span class="checkmark"></span>
3520<label for="t60706-739003" class="body-title-sm">On-Site</label>
3521</div>
3522<div class="sub-filter-checkbox">
3523<input type="checkbox" id="t60706-739004" aria-label="Hybrid" value="739004" name="t60706" onclick="toggleFilter(this,'Hybrid','Workplace\x20Type','workplace_type')" >
3524<span class="checkmark"></span>
3525<label for="t60706-739004" class="body-title-sm">Hybrid</label>
3526</div>
3527<div class="sub-filter-checkbox">
3528<input type="checkbox" id="t60706-739005" aria-label="Remote" value="739005" name="t60706" onclick="toggleFilter(this,'Remote','Workplace\x20Type','workplace_type')" >
3529<span class="checkmark"></span>
3530<label for="t60706-739005" class="body-title-sm">Remote</label>
3531</div>
3532</div>
3533</div>
3534</div>
3535<div class="row">
3536<div class="col">
3537<a href="#filter-function" class="body-title-md filter-accordion-heading" data-toggle="collapse">
3538<div class="label-count-container label-count-function">
3539<span class="label-container">Specialty</span>
3540</div>
3541</a>
3542<div id="filter-function" class="collapse filter-accordion">
3543<div class="sub-filter-checkbox">
3544<input type="checkbox" id="t731-645605" aria-label="Administrator" value="645605" name="t731" onclick="toggleFilter(this,'Administrator','Specialty','function')" >
3545<span class="checkmark"></span>
3546<label for="t731-645605" class="body-title-sm">Administrator</label>
3547</div>
3548<div class="sub-filter-checkbox">
3549<input type="checkbox" id="t731-645606" aria-label="Applications&#x20;Specialist" value="645606" name="t731" onclick="toggleFilter(this,'Applications\x20Specialist','Specialty','function')" >
3550<span class="checkmark"></span>
3551<label for="t731-645606" class="body-title-sm">Applications Specialist</label>
3552</div>
3553<div class="sub-filter-checkbox">
3554<input type="checkbox" id="t731-645607" aria-label="Nurse" value="645607" name="t731" onclick="toggleFilter(this,'Nurse','Specialty','function')" >
3555<span class="checkmark"></span>
3556<label for="t731-645607" class="body-title-sm">Nurse</label>
3557</div>
3558<div class="sub-filter-checkbox">
3559<input type="checkbox" id="t731-645608" aria-label="Manager" value="645608" name="t731" onclick="toggleFilter(this,'Manager','Specialty','function')" >
3560<span class="checkmark"></span>
3561<label for="t731-645608" class="body-title-sm">Manager</label>
3562</div>
3563<div class="sub-filter-checkbox">
3564<input type="checkbox" id="t731-645609" aria-label="Medical&#x20;Technologist" value="645609" name="t731" onclick="toggleFilter(this,'Medical\x20Technologist','Specialty','function')" >
3565<span class="checkmark"></span>
3566<label for="t731-645609" class="body-title-sm">Medical Technologist</label>
3567</div>
3568<div class="sub-filter-checkbox">
3569<input type="checkbox" id="t731-645610" aria-label="Nuclear&#x20;Medicine&#x20;Physician" value="645610" name="t731" onclick="toggleFilter(this,'Nuclear\x20Medicine\x20Physician','Specialty','function')" >
3570<span class="checkmark"></span>
3571<label for="t731-645610" class="body-title-sm">Nuclear Medicine Physician</label>
3572</div>
3573<div class="sub-filter-checkbox">
3574<input type="checkbox" id="t731-645611" aria-label="Physicist" value="645611" name="t731" onclick="toggleFilter(this,'Physicist','Specialty','function')" >
3575<span class="checkmark"></span>
3576<label for="t731-645611" class="body-title-sm">Physicist</label>
3577</div>
3578<div class="sub-filter-checkbox">
3579<input type="checkbox" id="t731-645612" aria-label="Medical&#x20;Physicist" value="645612" name="t731" onclick="toggleFilter(this,'Medical\x20Physicist','Specialty','function')" >
3580<span class="checkmark"></span>
3581<label for="t731-645612" class="body-title-sm">Medical Physicist</label>
3582</div>
3583<div class="sub-filter-checkbox">
3584<input type="checkbox" id="t731-645613" aria-label="Oncologist" value="645613" name="t731" onclick="toggleFilter(this,'Oncologist','Specialty','function')" >
3585<span class="checkmark"></span>
3586<label for="t731-645613" class="body-title-sm">Oncologist</label>
3587</div>
3588<div class="sub-filter-checkbox">
3589<input type="checkbox" id="t731-645614" aria-label="Clinical&#x20;Oncologist" value="645614" name="t731" onclick="toggleFilter(this,'Clinical\x20Oncologist','Specialty','function')" >
3590<span class="checkmark"></span>
3591<label for="t731-645614" class="body-title-sm">Clinical Oncologist</label>
3592</div>
3593<div class="sub-filter-checkbox">
3594<input type="checkbox" id="t731-645615" aria-label="Radiation&#x20;Oncologist" value="645615" name="t731" onclick="toggleFilter(this,'Radiation\x20Oncologist','Specialty','function')" >
3595<span class="checkmark"></span>
3596<label for="t731-645615" class="body-title-sm">Radiation Oncologist</label>
3597</div>
3598<div class="sub-filter-checkbox">
3599<input type="checkbox" id="t731-645616" aria-label="Radiographer" value="645616" name="t731" onclick="toggleFilter(this,'Radiographer','Specialty','function')" >
3600<span class="checkmark"></span>
3601<label for="t731-645616" class="body-title-sm">Radiographer</label>
3602</div>
3603<div class="sub-filter-checkbox">
3604<input type="checkbox" id="t731-645617" aria-label="Diagnostic&#x20;Radiographer" value="645617" name="t731" onclick="toggleFilter(this,'Diagnostic\x20Radiographer','Specialty','function')" >
3605<span class="checkmark"></span>
3606<label for="t731-645617" class="body-title-sm">Diagnostic Radiographer</label>
3607</div>
3608<div class="sub-filter-checkbox">
3609<input type="checkbox" id="t731-645618" aria-label="Therapeutic&#x20;Radiographer" value="645618" name="t731" onclick="toggleFilter(this,'Therapeutic\x20Radiographer','Specialty','function')" >
3610<span class="checkmark"></span>
3611<label for="t731-645618" class="body-title-sm">Therapeutic Radiographer</label>
3612</div>
3613<div class="sub-filter-checkbox">
3614<input type="checkbox" id="t731-645619" aria-label="Radiologist" value="645619" name="t731" onclick="toggleFilter(this,'Radiologist','Specialty','function')" >
3615<span class="checkmark"></span>
3616<label for="t731-645619" class="body-title-sm">Radiologist</label>
3617</div>
3618<div class="sub-filter-checkbox">
3619<input type="checkbox" id="t731-645620" aria-label="Clinical&#x20;Radiologist" value="645620" name="t731" onclick="toggleFilter(this,'Clinical\x20Radiologist','Specialty','function')" >
3620<span class="checkmark"></span>
3621<label for="t731-645620" class="body-title-sm">Clinical Radiologist</label>
3622</div>
3623<div class="sub-filter-checkbox">
3624<input type="checkbox" id="t731-645621" aria-label="Radiotherapist" value="645621" name="t731" onclick="toggleFilter(this,'Radiotherapist','Specialty','function')" >
3625<span class="checkmark"></span>
3626<label for="t731-645621" class="body-title-sm">Radiotherapist</label>
3627</div>
3628<div class="sub-filter-checkbox">
3629<input type="checkbox" id="t731-645622" aria-label="Researcher" value="645622" name="t731" onclick="toggleFilter(this,'Researcher','Specialty','function')" >
3630<span class="checkmark"></span>
3631<label for="t731-645622" class="body-title-sm">Researcher</label>
3632</div>
3633<div class="sub-filter-checkbox">
3634<input type="checkbox" id="t731-645623" aria-label="Sales&#x20;Executive" value="645623" name="t731" onclick="toggleFilter(this,'Sales\x20Executive','Specialty','function')" >
3635<span class="checkmark"></span>
3636<label for="t731-645623" class="body-title-sm">Sales Executive</label>
3637</div>
3638<div class="sub-filter-checkbox">
3639<input type="checkbox" id="t731-645624" aria-label="Scientist" value="645624" name="t731" onclick="toggleFilter(this,'Scientist','Specialty','function')" >
3640<span class="checkmark"></span>
3641<label for="t731-645624" class="body-title-sm">Scientist</label>
3642</div>
3643<div class="sub-filter-checkbox">
3644<input type="checkbox" id="t731-645625" aria-label="Clinical&#x20;Scientist" value="645625" name="t731" onclick="toggleFilter(this,'Clinical\x20Scientist','Specialty','function')" >
3645<span class="checkmark"></span>
3646<label for="t731-645625" class="body-title-sm">Clinical Scientist</label>
3647</div>
3648<div class="sub-filter-checkbox">
3649<input type="checkbox" id="t731-645626" aria-label="Sonographer" value="645626" name="t731" onclick="toggleFilter(this,'Sonographer','Specialty','function')" >
3650<span class="checkmark"></span>
3651<label for="t731-645626" class="body-title-sm">Sonographer</label>
3652</div>
3653<div class="sub-filter-checkbox">
3654<input type="checkbox" id="t731-474065" aria-label="Radiologist" value="474065" name="t731" onclick="toggleFilter(this,'Radiologist','Specialty','function')" >
3655<span class="checkmark"></span>
3656<label for="t731-474065" class="body-title-sm">Radiologist</label>
3657</div>
3658<div class="sub-filter-checkbox">
3659<input type="checkbox" id="t731-474066" aria-label="Ultrasound" value="474066" name="t731" onclick="toggleFilter(this,'Ultrasound','Specialty','function')" >
3660<span class="checkmark"></span>
3661<label for="t731-474066" class="body-title-sm">Ultrasound</label>
3662</div>
3663</div>
3664</div>
3665</div>
3666<div class="row">
3667<div class="col">
3668<a href="#filter-sub_specialty" class="body-title-md filter-accordion-heading" data-toggle="collapse">
3669<div class="label-count-container label-count-sub_specialty">
3670<span class="label-container">Sub-specialty</span>
3671</div>
3672</a>
3673<div id="filter-sub_specialty" class="collapse filter-accordion">
3674<div class="sub-filter-checkbox">
3675<input type="checkbox" id="t41581-397576" aria-label="Breast" value="397576" name="t41581" onclick="toggleFilter(this,'Breast','Sub\x2Dspecialty','sub_specialty')" >
3676<span class="checkmark"></span>
3677<label for="t41581-397576" class="body-title-sm">Breast</label>
3678</div>
3679<div class="sub-filter-checkbox">
3680<input type="checkbox" id="t41581-397577" aria-label="Cardiovascular" value="397577" name="t41581" onclick="toggleFilter(this,'Cardiovascular','Sub\x2Dspecialty','sub_specialty')" >
3681<span class="checkmark"></span>
3682<label for="t41581-397577" class="body-title-sm">Cardiovascular</label>
3683</div>
3684<div class="sub-filter-checkbox">
3685<input type="checkbox" id="t41581-397578" aria-label="Chest" value="397578" name="t41581" onclick="toggleFilter(this,'Chest','Sub\x2Dspecialty','sub_specialty')" >
3686<span class="checkmark"></span>
3687<label for="t41581-397578" class="body-title-sm">Chest</label>
3688</div>
3689<div class="sub-filter-checkbox">
3690<input type="checkbox" id="t41581-397579" aria-label="Emergency" value="397579" name="t41581" onclick="toggleFilter(this,'Emergency','Sub\x2Dspecialty','sub_specialty')" >
3691<span class="checkmark"></span>
3692<label for="t41581-397579" class="body-title-sm">Emergency</label>
3693</div>
3694<div class="sub-filter-checkbox">
3695<input type="checkbox" id="t41581-397580" aria-label="Gastrointestinal" value="397580" name="t41581" onclick="toggleFilter(this,'Gastrointestinal','Sub\x2Dspecialty','sub_specialty')" >
3696<span class="checkmark"></span>
3697<label for="t41581-397580" class="body-title-sm">Gastrointestinal</label>
3698</div>
3699<div class="sub-filter-checkbox">
3700<input type="checkbox" id="t41581-397581" aria-label="Genitourinary" value="397581" name="t41581" onclick="toggleFilter(this,'Genitourinary','Sub\x2Dspecialty','sub_specialty')" >
3701<span class="checkmark"></span>
3702<label for="t41581-397581" class="body-title-sm">Genitourinary</label>
3703</div>
3704<div class="sub-filter-checkbox">
3705<input type="checkbox" id="t41581-397582" aria-label="Head&#x20;and&#x20;
3705Neck" value="397582" name="t41581" onclick="toggleFilter(this,'Head\x20and\x20Neck','Sub\x2Dspecialty','sub_specialty')" >
3706<span class="checkmark"></span>
3707<label for="t41581-397582" class="body-title-sm">Head and Neck</label>
3708</div>
3709<div class="sub-filter-checkbox">
3710<input type="checkbox" id="t41581-397583" aria-label="Interventional" value="397583" name="t41581" onclick="toggleFilter(this,'Interventional','Sub\x2Dspecialty','sub_specialty')" >
3711<span class="checkmark"></span>
3712<label for="t41581-397583" class="body-title-sm">Interventional</label>
3713</div>
3714<div class="sub-filter-checkbox">
3715<input type="checkbox" id="t41581-397584" aria-label="Musculoskeletal" value="397584" name="t41581" onclick="toggleFilter(this,'Musculoskeletal','Sub\x2Dspecialty','sub_specialty')" >
3716<span class="checkmark"></span>
3717<label for="t41581-397584" class="body-title-sm">Musculoskeletal</label>
3718</div>
3719<div class="sub-filter-checkbox">
3720<input type="checkbox" id="t41581-397585" aria-label="Neuroradiology" value="397585" name="t41581" onclick="toggleFilter(this,'Neuroradiology','Sub\x2Dspecialty','sub_specialty')" >
3721<span class="checkmark"></span>
3722<label for="t41581-397585" class="body-title-sm">Neuroradiology</label>
3723</div>
3724<div class="sub-filter-checkbox">
3725<input type="checkbox" id="t41581-397586" aria-label="No&#x20;sub-specialty" value="397586" name="t41581" onclick="toggleFilter(this,'No\x20sub\x2Dspecialty','Sub\x2Dspecialty','sub_specialty')" >
3726<span class="checkmark"></span>
3727<label for="t41581-397586" class="body-title-sm">No sub-specialty</label>
3728</div>
3729<div class="sub-filter-checkbox">
3730<input type="checkbox" id="t41581-397587" aria-label="Oncology" value="397587" name="t41581" onclick="toggleFilter(this,'Oncology','Sub\x2Dspecialty','sub_specialty')" >
3731<span class="checkmark"></span>
3732<label for="t41581-397587" class="body-title-sm">Oncology</label>
3733</div>
3734<div class="sub-filter-checkbox">
3735<input type="checkbox" id="t41581-397588" aria-label="Paediatric" value="397588" name="t41581" onclick="toggleFilter(this,'Paediatric','Sub\x2Dspecialty','sub_specialty')" >
3736<span class="checkmark"></span>
3737<label for="t41581-397588" class="body-title-sm">Paediatric</label>
3738</div>
3739</div>
3740</div>
3741</div>
3742<div class="row">
3743<div class="col">
3744<a href="#filter-state" class="body-title-md filter-accordion-heading" data-toggle="collapse">
3745<div class="label-count-container label-count-state">
3746<span class="label-container">Location</span>
3747</div>
3748</a>
3749<div id="filter-state" class="collapse filter-accordion">
3750<div class="sub-filter-checkbox">
3751<input type="checkbox" id="t735-396990" aria-label="East&#x20;Midlands" value="396990" name="t735" onclick="toggleFilter(this,'East\x20Midlands','Location','state')" >
3752<span class="checkmark"></span>
3753<label for="t735-396990" class="body-title-sm">East Midlands</label>
3754</div>
3755<div class="sub-filter-checkbox">
3756<input type="checkbox" id="t735-396991" aria-label="East&#x20;of&#x20;England" value="396991" name="t735" onclick="toggleFilter(this,'East\x20of\x20England','Location','state')" >
3757<span class="checkmark"></span>
3758<label for="t735-396991" class="body-title-sm">East of England</label>
3759</div>
3760<div class="sub-filter-checkbox">
3761<input type="checkbox" id="t735-396992" aria-label="Greater&#x20;London" value="396992" name="t735" onclick="toggleFilter(this,'Greater\x20London','Location','state')" >
3762<span class="checkmark"></span>
3763<label for="t735-396992" class="body-title-sm">Greater London</label>
3764</div>
3765<div class="sub-filter-checkbox">
3766<input type="checkbox" id="t735-396993" aria-label="Central&#x20;London" value="396993" name="t735" onclick="toggleFilter(this,'Central\x20London','Location','state')" >
3767<span class="checkmark"></span>
3768<label for="t735-396993" class="body-title-sm">Central London</label>
3769</div>
3770<div class="sub-filter-checkbox">
3771<input type="checkbox" id="t735-396994" aria-label="North&#x20;East&#x20;England" value="396994" name="t735" onclick="toggleFilter(this,'North\x20East\x20England','Location','state')" >
3772<span class="checkmark"></span>
3773<label for="t735-396994" class="body-title-sm">North East England</label>
3774</div>
3775<div class="sub-filter-checkbox">
3776<input type="checkbox" id="t735-396995" aria-label="North&#x20;West&#x20;England" value="396995" name="t735" onclick="toggleFilter(this,'North\x20West\x20England','Location','state')" >
3777<span class="checkmark"></span>
3778<label for="t735-396995" class="body-title-sm">North West England</label>
3779</div>
3780<div class="sub-filter-checkbox">
3781<input type="checkbox" id="t735-396996" aria-label="Northern&#x20;Ireland" value="396996" name="t735" onclick="toggleFilter(this,'Northern\x20Ireland','Location','state')" >
3782<span class="checkmark"></span>
3783<label for="t735-396996" class="body-title-sm">Northern Ireland</label>
3784</div>
3785<div class="sub-filter-checkbox">
3786<input type="checkbox" id="t735-396997" aria-label="Scotland" value="396997" name="t735" onclick="toggleFilter(this,'Scotland','Location','state')" >
3787<span class="checkmark"></span>
3788<label for="t735-396997" class="body-title-sm">Scotland</label>
3789</div>
3790<div class="sub-filter-checkbox">
3791<input type="checkbox" id="t735-396998" aria-label="South&#x20;East&#x20;England" value="396998" name="t735" onclick="toggleFilter(this,'South\x20East\x20England','Location','state')" >
3792<span class="checkmark"></span>
3793<label for="t735-396998" class="body-title-sm">South East England</label>
3794</div>
3795<div class="sub-filter-checkbox">
3796<input type="checkbox" id="t735-396999" aria-label="South&#x20;West&#x20;England" value="396999" name="t735" onclick="toggleFilter(this,'South\x20West\x20England','Location','state')" >
3797<span class="checkmark"></span>
3798<label for="t735-396999" class="body-title-sm">South West England</label>
3799</div>
3800<div class="sub-filter-checkbox">
3801<input type="checkbox" id="t735-397000" aria-label="Wales" value="397000" name="t735" onclick="toggleFilter(this,'Wales','Location','state')" >
3802<span class="checkmark"></span>
3803<label for="t735-397000" class="body-title-sm">Wales</label>
3804</div>
3805<div class="sub-filter-checkbox">
3806<input type="checkbox" id="t735-397001" aria-label="West&#x20;Midlands" value="397001" name="t735" onclick="toggleFilter(this,'West\x20Midlands','Location','state')" >
3807<span class="checkmark"></span>
3808<label for="t735-397001" class="body-title-sm">West Midlands</label>
3809</div>
3810<div class="sub-filter-checkbox">
3811<input type="checkbox" id="t735-397002" aria-label="Yorkshire&#x20;and&#x20;the&#x20;Humber" value="397002" name="t735" onclick="toggleFilter(this,'Yorkshire\x20and\x20the\x20Humber','Location','state')" >
3812<span class="checkmark"></span>
3813<label for="t735-397002" class="body-title-sm">Yorkshire and the Humber</label>
3814</div>
3815<div class="sub-filter-checkbox">
3816<input type="checkbox" id="t735-397003" aria-label="Other" value="397003" name="t735" onclick="toggleFilter(this,'Other','Location','state')" >
3817<span class="checkmark"></span>
3818<label for="t735-397003" class="body-title-sm">Other</label>
3819</div>
3820</div>
3821</div>
3822</div>
3823</div>
3824</div>
3825<div class="modal fade" id="share" tabindex="-1" role="dialog" aria-labelledby="share" aria-hidden="true">
3826<div class="modal-dialog captcha-holder">
3827<div class="modal-content">
3828<span class="hide">No content</span>
3829</div>
3830</div>
3831</div>
3832<div class="modal fade" id="apply-options" tabindex="-1" role="dialog" aria-labelledby="apply-options" aria-hidden="true">
3833<div class="modal-dialog captcha-holder">
3834<div class="modal-content" role="region">
3835<span class="hide">No content</span>
3836</div>
3837</div>
3838</div>
3839<script id="template-upload" type="text/x-tmpl">
3840{% for (var i=0, file; file=o.files[i]; i++) { %}
3841<tr class="template-upload fade">
3842<td>
3843<p class="name">{%=file.name%}</p>
3844<strong class="error text-danger"></strong>
3845</td>
3846<td>
3847<p class="size">Processing...</p>
3848<span class="size_hidden" style="display:none">{%=file.size%}</span>
3849<div class="progress progress-striped active" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0"><div class="progress-bar progress-bar-success" style="width:0%;"></div></div>
3850</td>
3851<td>
3852{% if (!i && !o.options.autoUpload) { %}
3853<button class="secondary btn btn-primary start" disabled>
3854<i class="glyphicon glyphicon-upload"></i>
3855<span>Start</span>
3856</button>
3857{% } %}
3858{% if (!i) { %}
3859<button class="secondary btn btn-warning cancel">
3860<i class="glyphicon glyphicon-ban-circle"></i>
3861<span>Cancel</span>
3862</button>
3863{% } %}
3864</td>
3865</tr>
3866{% } %}
3867</script>
vendor: 1 bytes, line 3867
3867
3868<script id="template-download" type="text/x-tmpl">
3869{% for (var i=0, file; file=o.files[i]; i++) { %}
3870<tr class="template-download fade">
3871<td>
3872<p class="name"><span>{%=file.name%}</span></p>
3873{% if (file.error) { %}
3874<p class="name">{%=file.name%}</p>
3875<strong class="error text-danger">File empty</strong>
3876{% } %}
3877</td>
3878<td>
3879<span class="size">{%=o.formatFileSize(file.size)%}</span><span class="size_hidden" style="display:none">{%=file.size%}</span>
3880</td>
3881<td>
3882{% if (file.deleteUrl) { %}
3883<button class="secondary btn btn-danger delete" data-type="{%=file.deleteType%}" data-url="{%=file.deleteUrl%}"{% if (file.deleteWithCredentials) { %} data-xhr-fields='{"withCredentials":true}'{% } %}>
3884<i class="glyphicon glyphicon-trash"></i>
3885<span>Delete</span>
3886</button>
3887{% } else { %}
3888<button class="secondary btn btn-warning cancel">
3889<i class="glyphicon glyphicon-ban-circle"></i>
3890<span>Cancel</span>
3891</button>
3892{% } %}
3893</td>
3894</tr>
3895{% } %}
3896</script>
vendor: 1 bytes, line 3896
3896
3897<script src="/c/@search_results/assets/js/search-shared.js"></script>
vendor: 1 bytes, line 3897
3897
3898<script type="text/javascript" language="javascript" charset="utf-8">
3899var currentAjax = null,
3900closeBackground = false,
3901filterCountOnCollapse = 0,
3902showFilterReposition = 0,
3903currentIntelAjax,
3904filterHeaders = {},
3905intersectionObserver = null;
3906var site_id=17988;
3907var userIpGeocode="{\"latitude\":41.850028991699,\"longitude\":-87.650047302246,\"state\":\"Illinois\",\"country\":\"United States\",\"latlong\":\"lat=41.850028991699$long=-87.650047302246\"}";
3908//Generate Apply button in header
3909generateApplyButton();
3910showSectionFilterCount();
3911function showSectionFilterCount() {
3912// Get each section's headers of the filter nav
3913$(".filters-nav a.filter-accordion-heading").each(function() {
3914var thisFilterDivId = $(this).attr('href').slice(8);
3915// Get the count of checkboxes checked 
3916var thisFilterCount = 0;
3917$("#filter-"+thisFilterDivId+" :checkbox:checked").each(function(){
3918thisFilterCount++;
3919});	
3920var thisFilterHeader = `filterHeader-${thisFilterDivId}`;
3921filterHeaders[thisFilterHeader] = thisFilterCount;
3922// Display the count in the section's header
3923if(thisFilterCount){
3924$(this).attr("aria-expanded", true);
3925$("#filter-"+thisFilterDivId).addClass("show");
3926$(".label-count-"+thisFilterDivId).append('<span class="count-container">' + thisFilterCount + '</span>');
3927}
3928});
3929}
3930function open_footer() {
3931$(".expanded-footer").toggleClass("show-footer");
3932$("#expanded-footer-background").css({"opacity":".5", "width":"100%"});
3933}
3934function close_footer() {
3935$(".expanded-footer").removeClass("show-footer");
3936$("#expanded-footer-background").css({"opacity":"0", "width":"0"});
3937}
3938function open_filter() {
3939$(".filter-button").tooltip('hide');
3940$(".filters-nav").addClass("show-filter");
3941$("#filters-background").css({"opacity":".5", "width":"100%"});
3942kfields_pos_filter();
3943}
3944function kfields_pos_filter(){
3945var keyword_field = $("#keywords").val();
3946var positionCol = $("#kfields-pos").parent().parent().parent();
3947//enable check box if keywords entered
3948if(keyword_field != ''){
3949$("#kfields-pos").removeAttr('disabled');
3950$("#kfields-pos").removeAttr('aria-disabled');
3951$(positionCol).removeClass('disabled-filter');
3952}
3953else {
3954$("#kfields-pos").attr("disabled", "true");
3955$("#kfields-pos").attr("aria-disabled", "true");
3956$(positionCol).addClass('disabled-filter');
3957$("#kfields-pos").prop("checked", false);
3958if($("#chip-kfields-pos").length){
3959removeFilter('kfields','pos','Position Title')
3960}
3961}
3962}
3963function salary_range_filter() {
3964setTimeout( function() {
3965$( '#salary_range_filter' ).data( 'mdcSlider' ).layout();
3966}, 300 );
3967}
3968function close_filter() {
3969$(".filters-nav").removeClass("show-filter");
3970$("#filters-background").css({"opacity":"0", "width":"0"});
3971//Reset "save search" input field every time we close the filters bar
3972$('#input-save-search').val('');
3973}
3974function toggleSaveSearchForm(){
3975$('#save-search-alert-success').remove();
3976$('#save-search-alert-error').remove();
3977$('#save-search-alert-warning').remove();
3978var hasFilter = false;
3979//Check filters bar to see if anything was selected
3980if($(".filters-nav").find('input[type=checkbox]:checked').length > 0){
3981hasFilter = true;
3982}
3983//Check filters bar to see if anything was selected
3984if($(".filters-nav").find('input[type=radio]:checked').length > 0){
3985hasFilter = true;
3986}
3987if(hasFilter){
3988$('#input-save-search').prop("disabled", false);
3989$('#input-save-search').removeAttr("title");
3990$('#input-save-search-btn').removeAttr("title");
3991$('#input-save-search-btn').removeClass('inactive');
3992$('#input-save-search-btn').prop("disabled", false);
3993}
3994else{
3995$('#input-save-search').prop("disabled", true);
3996$('#input-save-search').attr("title", "You must select at least one filter in order to save your search.");
3997$('#input-save-search-btn').attr("title", "You must select at least one filter in order to save your search.");
3998$('#input-save-search-btn').addClass('inactive');
3999$('#input-save-search-btn').prop("disabled", true);
4000}
4001}
4002function toggleFilter(filter,answerText,questionName,questionAlias){
4003var url = "",
4004protocol = window.location.protocol,
4005host = window.location.host,
4006pathname = window.location.pathname,
4007querystring = window.location.search;
4008// if doing filter while there is a job slug in the url, reset it to /jobs/ before adding the filters
4009// Note: Slug /jobs/ = 3, so anything > 3 has the additional job slug (/jobs/view/position/job_id/)
4010if(window.location.pathname.split("/").length > 3){
4011pathname = "/jobs/";
4012}
4013if(filter.checked){
4014var filterLabel = answerText;
4015if( questionName !== undefined ) {
4016filterLabel = questionName + ': ' + filterLabel;
4017}
4018// Add hidden field to the form
4019$("#hiddenFieldsContainer").append('<input type="hidden" id="filter-' + filter.name + '-' + filter.value + '" name="' + filter.name + '" value="' + filter.value + '" />');
4020// Check if the url param already exists, applicable for slider
4021if( ( filter.name == 'min_salary' || filter.name == 'without_salary' ) && querystring.indexOf( filter.name + '=' ) ) {
4022querystring = querystring.replace( new RegExp( '[&?]?' + filter.name + '=[^&]+' ), '' );
4023}	
4024// Check if this is the first url param
4025var concat = "?";
4026if(querystring.search("\\?") > -1){
4027concat = "&";
4028}
4029if ( filter.id == 'kfields-pos' ){
4030document.getElementById("pos_flt").value = '1' ;
4031if(querystring.search("\\?") > -1){
4032var aQuerystring = querystring.split("?");
4033var params = aQuerystring[1];
4034// This removes dups in the params
4035var aParams = Array.from(new Set(params.split('&')));
4036// Remove the unselected filter from the url params
4037if (aParams.indexOf( 'pos_flt=0') >= 0){
4038aParams.splice(aParams.indexOf("pos_flt=0"), 1);
4039aParams.push("pos_flt=1");
4040}
4041else {
4042aParams.push("pos_flt=1");
4043}
4044if(aParams.length > 0){
4045// We still have params left, append the ? on the start of the query string
4046querystring = "?" + aParams.join("&");
4047}
4048else{
4049querystring = "";
4050}
4051}
4052}
4053// Append the new filter param to the url
4054querystring = querystring + concat + filter.name + '=' + filter.value;
4055url = protocol + "//" + host + pathname + querystring;
4056// Check if there is a variable already for this section's checked checkbox count. If no, then set the count to 1 OR if yes, increment the count
4057var thisFilterHeader = `filterHeader-${questionAlias}`;
4058if (!(thisFilterHeader in filterHeaders)) {
4059filterHeaders[thisFilterHeader] = 1;
4060} else {
4061filterHeaders[thisFilterHeader]++;
4062}
4063} 
4064else{
4065// Remove hidden field from the form
4066filterID = "filter-" + filter.name + '-' + filter.value;
4067$("#" + filterID).remove();
4068// Remove chip (Applied Filters section)
4069if( filter.name !== 'without_salary' ) {
4070chipID = "chip-" + filter.name + '-' + filter.value;
4071$("#" + chipID).remove();
4072}
4073// Make sure there are params in the url
4074if(querystring.search("\\?") > -1){
4075var aQuerystring = querystring.split("?");
4076var params = aQuerystring[1];
4077// This removes dups in the params
4078var aParams = Array.from(new Set(params.split('&')));
4079// Remove the unselected filter from the url params
4080if (aParams.indexOf(filter.name + '=' + filter.value) >= 0)
4081aParams.splice(aParams.indexOf(filter.name + '=' + filter.value), 1);
4082if (filter.id == 'kfields-pos' && aParams.indexOf( 'pos_flt=1') >= 0){
4083aParams.splice(aParams.indexOf("pos_flt=1"), 1);
4084aParams.push("pos_flt=0");
4085}
4086if(aParams.length > 0){
4087// We still have params left, append the ? on the start of the query string
4088querystring = "?" + aParams.join("&");
4089}
4090else{
4091querystring = "";
4092}
4093}
4094if ( filter.id == 'kfields-pos' ){
4095$('#pos_flt').val('0');
4096}
4097url = protocol + "//" + host + pathname + querystring;
4098// Decrement this section's checked checkbox count variable.
4099var thisFilterHeader = `filterHeader-${questionAlias}`;
4100if (filterHeaders[thisFilterHeader] <= 0) {
4101filterHeaders[thisFilterHeader] = 0;
4102} else {
4103filterHeaders[thisFilterHeader]--;
4104}
4105}
4106window.history.pushState({url: url}, document.title, url);
4107__manipulateJaqcFilter(filter.name, filter.value, answerText, questionName, questionAlias);
4108displayFilters();
4109// Store the current filters in the session in case they hit the back/forward button
4110var alertCriteria = $(".alert-criteria").html(),
4111alertFilter = $("#jaqcModalForm input[name='filters']").val();
4112var data = {"data":{"alertCriteria":alertCriteria, "alertFilter":alertFilter}};
4113__sessionSetItem(url, data);
4114showBackground = false;
4115// Show the count of this section's checked checkboxes
4116if($(".label-count-"+questionAlias+" .count-container").length == 0){
4117$(".label-count-"+questionAlias).append('<span class="count-container">' + filterHeaders[thisFilterHeader] + '</span>');
4118} else {
4119if(filterHeaders[thisFilterHeader] == 0) {
4120$(".label-count-"+questionAlias+" .count-container").remove();
4121} else {
4122$(".label-count-"+questionAlias+" .count-container").html(filterHeaders[thisFilterHeader]);
4123}
4124}
4125//Reload results
4126searchJobs(1,true);
4127}
4128function __sessionSetItem(key, data){
4129window.sessionStorage.setItem(
4130key,
4131JSON.stringify(data)
4132);
4133}
4134function __sessionGetItem(item){
4135return window.sessionStorage.getItem(item);
4136}
4137function __manipulateJaqcFilter(name, value, answerText, questionName, questionAlias){
4138if(answerText === undefined) answerText = '';
4139if(questionName === undefined) questionName = '';
4140if(questionAlias === undefined) questionAlias = '';
4141/* Manipulate JAQC filter text */
4142if(questionAlias.length	> 0){
4143// Check if question is already in the modal
4144if($("#job-alert-question-"+questionAlias).length > 0 && $("#job-alert-question-"+questionAlias).html().length){
4145// Get the answers and compare if the current answer is already in it or we need to add it to the list
4146var answers = $("#job-alert-question-"+questionAlias+" span").html();
4147var aAnswers = answers.split(',');
4148var pos = aAnswers.indexOf(" "+answerText);	// Add space in the front of our text because there is a space in the UI
4149if(pos > -1){
4150// remove from array
4151var removed = aAnswers.splice(pos, 1);
4152$("#job-alert-question-"+questionAlias+" span").html(aAnswers.join(','));
4153if(aAnswers.length == 0){
4154$("#job-alert-question-"+questionAlias).remove();
4155}
4156}
4157else{
4158// Add the answer to the element
4159if($("#job-alert-question-"+questionAlias).length > 0) {
4160$("#job-alert-question-"+questionAlias+" span").html(answers + ", "+answerText);
4161}
4162else {
4163$("#job-alert-question-"+questionAlias+" span").html(answers + " "+answerText);
4164}
4165}
4166}
4167else{
4168// Only add the question to the JAQC modal if its not a career fair question
4169if(name != 'careerfairs'){
4170var html = '<div class="answer-list" id="job-alert-question-'+questionAlias+'"><b>'+questionName+':</b><span> '+answerText+'</span>';
4171$("#create-alert .search-filters .alert-criteria").append(html);
4172}
4173}
4174}
4175if($("#jaqcModalForm").length > 0){
4176/* Manipulate JAQC hidden field */
4177var hiddenFilters = $("#jaqcModalForm input[name='filters']").val();
4178var aFilters = hiddenFilters.split('&');
4179if(hiddenFilters.indexOf(name) == -1){
4180// question not found, add it with the answer
4181var str = '&' + name + '=' + value;
4182hiddenFilters = hiddenFilters + str;
4183}
4184else{
4185// check if answer already exists in the question variable
4186for(idx in aFilters){
4187if(aFilters[idx].indexOf(name) > -1){
4188//question found, now find if answer already exists
4189var ans = aFilters[idx].split('=');
4190if(ans[1].indexOf(value) > -1){
4191// answer found, remove it from the list
4192var aAns = ans[1].split(',');
4193aAns.splice(aAns.indexOf(value),1);
4194ans[1] = aAns.join(',');
4195}
4196else{
4197// answer not in list, add it
4198if(ans[1].length > 0){
4199ans[1] = ans[1] + ',' + value;
4200}
4201else{
4202ans[1] = value;
4203}
4204}
4205ans = ans.join('=');
4206aFilters[idx] = ans;
4207hiddenFilters = aFilters.join('&');
4208break;
4209}	
4210}
4211}
4212// replace the hidden input value with the new filters
4213$("#jaqcModalForm input[name='filters']").val(hiddenFilters);
4214/* End of hidden field */
4215/* Change the form action url string with the actual url query string */
4216var action = $("#jaqcModalForm").attr("action").split("?")[0] + '?' + hiddenFilters;
4217$("#jaqcModalForm").attr("action", action);
4218}
4219}
4220function displayFilters(){
4221var displayFilters = false,
4222filterCount = 0;
4223//Check if "Applied Filters" section should be displayed
4224$("#hiddenFieldsContainer :input").each(function(){
4225var input = $(this); 
4226if(input.attr("name") !== 'sort' && input.attr('name') !== 'without_salary'){ 
4227displayFilters = true;
4228filterCount = filterCount + 1;
4229}
4230});	
4231if(displayFilters == true){
4232showFilterReposition++;
4233$('.applied-filters-count').html('(' + filterCount + ')');
4234if($(".filter-button .filter-number").length > 0){
4235$(".filter-button .filter-number").html(filterCount);
4236$(".filters-header-container .number-of-filter").html(filterCount + " Applied");
4237}
4238else{
4239$(".filter-button").append('<div class="filter-pill"><div class="filter-number">'+ filterCount +'</div></div>');
4240$(".filters-header-container .filter-header-number-of-filter").append('<div class="number-of-filter">'+ filterCount +' Applied </div>'); 
4241}
4242$(".clear-all-button").prop("disabled", false);
4243$(".clear-all-button").removeClass("disabled");
4244$(".clear-all-button").prop("tabindex", "0");
4245$(".empty-chip-container").remove();
4246} else{
4247showFilterReposition = 0;
4248$(".filter-button .filter-pill").remove();
4249$(".filters-header-container .number-of-filter").remove();
4250$(".clear-all-button").prop("disabled", true);
4251$(".clear-all-button").addClass("disabled");
4252$(".clear-all-button").prop("tabindex", "-1");
4253}
4254// Only do this if it is the 1st time OR the last filter has been removed
4255if (showFilterReposition == 1 || showFilterReposition == 0) {
4256repositionResultsBody();
4257adjustResultsBodyHeight();
4258}
4259}
4260function redirecttoNewTab(value){	
4261window.open(value, '_blank');	
4262}
4263function removeFilter(name, value, answerText, questionName, questionAlias){
4264// Uncheck from filters bar
4265inputID = name + '-' + value;
4266$("#" + inputID).prop("checked", false);
4267// Remove hidden field from the form
4268filterID = "filter-" + name + '-' + value;
4269$("#" + filterID).remove();
4270// Remove chip (Applied Filters section)
4271chipID = "chip-" + name + '-' + value;
4272$("#" + chipID).remove();
4273// Reset salary range
4274if( name === 'min_salary' ) resetSalaryRange();
4275__manipulateJaqcFilter(name, value, answerText, questionName, questionAlias);
4276/* url manipulation */
4277var url = "",
4278protocol = window.location.protocol,
4279host = window.location.host,
4280pathname = window.location.pathname,
4281querystring = window.location.search;
4282// Make sure there are params in the url
4283if(querystring.search("\\?") > -1){
4284var aQuerystring = querystring.split("?");
4285var params = aQuerystring[1];
4286// This removes dups in the params
4287var aParams = Array.from(new Set(params.split('&')));
4288// Remove the unselected filter from the url params
4289if (aParams.indexOf( name + '=' + value) >= 0)
4290aParams.splice(aParams.indexOf(name + '=' + value), 1);
4291if ( name == 'kfields' ){
4292$('#pos_flt').val('0');
4293}
4294if ( name == 'kfields' && aParams.indexOf( 'pos_flt=1') >= 0){
4295aParams.splice(aParams.indexOf("pos_flt=1"), 1);
4296aParams.push("pos_flt=0");
4297}
4298if(aParams.length > 0){
4299// We still have params left, append the ? on the start of the query string
4300querystring = "?" + aParams.join("&");
4301}
4302else{
4303querystring = "";
4304}
4305}
4306url = protocol + "//" + host + pathname + querystring;
4307window.history.pushState({url: url}, document.title, url);
4308window.history.pushState({url: url}, document.title, url);
4309// Store the current filters in the session in case they hit the back/forward button
4310var alertCriteria = $(".alert-criteria").html(),
4311alertFilter = $("#jaqcModalForm input[name='filters']").val();
4312var data = {"data":{"alertCriteria":alertCriteria, "alertFilter":alertFilter}};
4313__sessionSetItem(url, data);
4314displayFilters();
4315searchJobs(1,true);
4316}
4317function removeAllFilters(){
4318var url = "",
4319protocol = window.location.protocol,
4320host = window.location.host,
4321pathname = window.location.pathname,
4322querystring = window.location.search;
4323/* Reset the jaqc hidden filter */
4324$("#jaqcModalForm input[name='filters']").val('site_id='+site_id);
4325$("#create-alert .alert-criteria").html("<br><br>");
4326// Remove default position filter
4327$('#pos_flt').val('0');
4328//Input fields from the form
4329$("#hiddenFieldsContainer :input").each(function(){
4330var input = $(this); 
4331if(input[0].name != 'sort') {
4332var inputID = input[0].name + '-' + input[0].value;
4333$("#"+inputID).prop("checked", false);
4334//Remove hidden field from the form
4335input.remove();	
4336// Make sure there are params in the url
4337if(querystring.search("\\?") > -1){
4338var aQuerystring = querystring.split("?");
4339var params = aQuerystring[1];
4340// This removes dups in the params
4341var aParams = Array.from(new Set(params.split('&')));
4342// Remove the unselected filter from the url params
4343if (aParams.indexOf(input[0].name + '=' + input[0].value) >= 0)
4344aParams.splice(aParams.indexOf(input[0].name + '=' + input[0].value), 1);
4345if (aParams.indexOf( 'pos_flt=1') >= 0){
4346aParams.splice(aParams.indexOf("pos_flt=1"), 1);
4347aParams.push("pos_flt=0");
4348}
4349if(aParams.length > 0){
4350// We still have params left, append the ? on the start of the query string
4351querystring = "?" + aParams.join("&");
4352}
4353else{
4354querystring = "";
4355}
4356}
4357url = protocol + "//" + host + pathname + querystring;
4358}
4359});
4360window.history.pushState({url: url}, document.title, url);
4361//Filters bar
4362$(".filters-nav").find('input[type=checkbox]:checked').removeAttr('checked');
4363$(".filters-nav").find('input[type=radio]:checked').removeAttr('checked');
4364// Salary Range
4365if( $( '#salary_range_filter' ).length ) resetSalaryRange();
4366$(".filters-nav :checkbox:checked").each(function(){
4367$(this).prop("checked", false);
4368});	
4369$(".filters-nav a.filter-accordion-heading").each(function() {
4370var thisFilterDivId = $(this).attr('href').slice(8);
4371var thisFilterHeader = `filterHeader-${thisFilterDivId}`;
4372filterHeaders[thisFilterHeader] = 0;
4373});
4374// Remove the section header count in all filter sections
4375$(".count-container").remove();
4376$(".filters-header-container .number-of-filter").remove();
4377$(".clear-all-button").prop("disabled", true);
4378$(".clear-all-button").addClass("disabled");
4379$(".clear-all-button").prop("tabindex", "-1");
4380$(".filter-button .filter-pill").remove();
4381repositionResultsBody();
4382adjustResultsBodyHeight();
4383searchJobs(1);
4384}
4385function searchJobs(page,useUserSort){
4386var urlString = formURLString(page,useUserSort);
4387getJobs(urlString);
4388}
4389function formURLString(page,useUserSort){
4390var urlString = '';
4391urlString = urlString + 'page=' + page;
4392//Input fields from the form
4393$("#jt_search :input").each(function(){
4394var input = $(this); 
4395if(input.attr('type') != 'button' && input.attr('id') != 'networkResults' && input.val().length){
4396urlString = urlString + '&' + input.attr('name') + '=' + encodeURIComponent(input.val());
4397}
4398});	
4399$("#hiddenFieldsContainer :input").each(function(){
4400var input = $(this); 
4401if(input.attr('type') != 'button' && input.attr('id') != 'networkResults' && input.val().length){
4402urlString = urlString + '&' + input.attr('name') + '=' + encodeURIComponent(input.val());
4403}
4404});	
4405if($('#networkResults').val() == "true"){
4406urlString = urlString + '&network=1';
4407}
4408if($("#jaqc_candidate_id").length > 0 && $("#jaqc_candidate_id").val().length > 0){
4409urlString = urlString + '&candidate_id=' + $("#jaqc_candidate_id").val()
4410}
4411return urlString;
4412}
4413function getJobs(urlString){
4414var status = true;
4415$("#job-search-spinner-new").show();
4416let temp_user_geocode = "";
4417let user_latlong = "";
4418if (typeof userIpGeocode !== "undefined") {
4419temp_user_geocode = JSON.parse(userIpGeocode);
4420if ((typeof temp_user_geocode.latlong !== "undefined") && temp_user_geocode.latlong.length)
4421user_latlong = encodeURIComponent(temp_user_geocode.latlong);
4422}
4423var ajaxURL = "/c/@search_results/controller/includes/search_jobs.cfm?" + urlString + "&ajaxRequest=1&user_latlong=" + user_latlong;
4424// Abort any other existing AJAX request
4425if(currentAjax != null){
4426currentAjax.abort();
4427}
4428currentAjax = $.ajax({
4429method: "GET",
4430url: ajaxURL
4431}).done(function(result){
4432var jsonResponse = JSON.parse(result);
4433$("#becomeAMember").remove();
4434$(".modal-backdrop").remove();
4435$(".job-results-list").html($(".job-results-list .search-filter-container").prop("outerHTML") + jsonResponse.search_results);
4436$(".job-middle-container").html(jsonResponse.job_view);
4437$("#community-intel-content").html(jsonResponse.intel_section);
4438// reload tooltip so that the tooltip from intel content will work
4439$('[data-toggle="tooltip"]').tooltip( { template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' } );
4440$("#job-search-spinner-new").hide();
4441var floatingCardDetails= $(".main-job-details-floating-card-container").html();
4442$(".job-details-parent-floating-card-container .main-job-details").html(floatingCardDetails);
4443intersectionObserver.observe(
4444document.querySelector(".job-details-parent-card-container")
4445);
4446repositionResults();
4447repositionLayout();
4448// Remove the hidden sort input to avoid having duplicate after result
4449//$("input[name=sort]").remove();
4450var section = 'result',
4451url = window.location.href;
4452// Check if there is already an existing session record for this url
4453var sessionData = __sessionGetItem(url); //window.sessionStorage.getItem(url);
4454var data = null;
4455if(sessionData !== null){
4456// Append the result to the object
4457var tempData = JSON.parse(sessionData);
4458tempData.data[section] = result;
4459data = tempData;
4460}
4461else{
4462data = {"data":{section:jsonResponse}};
4463}
4464// store the ajax content to local session to be used when user hits the browser's back button
4465/*window.sessionStorage.setItem(
4466url, 
4467JSON.stringify(data)
4468);*/
4469__sessionSetItem(url, data);
4470// Variable to help us determine there's an existing AJAX request - Reset back to null
4471currentAjax = null;
4472if(closeBackground === true){
4473$("#filters-background").css({"opacity":"0", "width":"0"});
4474// Reset the flag
4475closeBackground = false;
4476}
4477//Generate Apply button in header
4478generateApplyButton();	
4479});
4480return status;
4481}
4482function setPagination(activate,deactivate){
4483$("#page-item-" + activate).addClass("active");
4484$("#page-item-" + deactivate).removeClass("active");
4485}
4486function gaJobClick(e,n,t,h,title,url){
4487}
4488function gaJobClickWeb(e,n,t,rank,source){
4489}
4490function gaJobPaneView(e,n,t,h,title,url){
4491gaJobScroll(h,title,url);
4492}
4493function gaJobScroll(h,title,url) {
4494}
4495function generateApplyButton() {	
4496var jsonAttr = $('#applyButtonJson').val();
4497if (jsonAttr !== undefined) {
4498var applyAttr = JSON.parse(jsonAttr);
4499//Default button is disabled
4500var generatedBtn = '<button type="button" id="applyBtn" class="btn btn-primary apply-button apply-button-disabled">'+applyAttr.text+'</button>';
4501if(applyAttr.applied) { //If user already Applied
4502var generatedBtn = '<button type="button" disabled id="applyBtn" class="btn btn-outline-primary applied-button btn-block" title="You already applied for this job."><i class="bi bi-check2-circle applied-icon"></i>'+applyAttr.text+'</button>';
4503}
4504else if(applyAttr.link){ //If apply method is link
4505var linkAttr = applyAttr.linkAttr;
4506var generatedBtn = '<button type="button" id="applyBtn" class="btn btn-primary apply-button '+linkAttr.class+'" onclick="redirecttoNewTab(\''+linkAttr.href+'\')">'+applyAttr.text+'</button>';
4507} 
4508else if(applyAttr.modal){ //If apply method is modal
4509var modalAttr = applyAttr.modalAttr;
4510var generatedBtn = '<button type="button" id="applyBtn" data-toggle="modal" data-target="'+modalAttr.target+'" class="btn btn-primary apply-button '+modalAttr.class+'" onclick="return setApply(\''+modalAttr.apply_email+'\',\' '+modalAttr.apply_online+'\', \''+modalAttr.apply_external+'\', \''+modalAttr.href_email+'\', \''+modalAttr.href_external+'\')">'+applyAttr.text+'</button>';
4511}
4512//Generate Desktop button
4513$('.applyBtnHeader .apply-button-container').html(generatedBtn);
4514//Generate Mobile button
4515$('.apply-button-mobile-container').html(generatedBtn);
4516$('.apply-button-mobile-container #applyBtn').addClass('btn-block');	
4517var mobileText = $('.apply-button-mobile-container #applyBtn').text();	
4518if(mobileText !== 'NO APPLY METHOD'){
4519var textArray = mobileText.split(' ');
4520$('.apply-button-mobile-container #applyBtn').text(textArray[0]);
4521}
4522}
4523}
4524function getJob(
4525id,
4526vnet_id,
4527vnet_site_id,
4528job_flag,
4529job_Title,
4530job_Location,
4531job_source,
4532ga_job_upgrades,
4533ga_rank,
4534job_company,
4535user_latlong = "",
4536location_completion = "",
4537location_latlong = ""
4538){
4539if(vnet_id === undefined) vnet_id = 0;
4540if(vnet_site_id === undefined) vnet_site_id = 0;
4541var ajaxURL = "/c/@search_results/controller/includes/search_job.cfm?job_id=" + id + "&site_id=" + site_id + "&job_source=" + job_source + "&ajaxRequest=1&user_latlong=" + user_latlong + "&location_completion=" + location_completion + "&location_latlong=" + location_latlong;
4542if(vnet_id > 0){
4543ajaxURL = ajaxURL + '&vnet_id=' + vnet_id;
4544}
4545if(vnet_site_id > 0){
4546ajaxURL = ajaxURL + '&vnet_site_id=' + vnet_site_id;
4547}
4548// Abort any other existing AJAX request
4549if(currentAjax != null){
4550currentAjax.abort();
4551}
4552var ajaxFinish = 0;
4553currentAjax = $.ajax({
4554method: "GET",
4555url: ajaxURL
4556}).done(function( result ) {
4557ajaxFinish = 1;
4558$("#becomeAMember").remove();
4559$(".modal-backdrop").remove();
4560var jsonResponse = JSON.parse(result),
4561job_canonical_url = jsonResponse.job_url,
4562content = jsonResponse.job_view
4563intel_content = jsonResponse.intel_section,
4564og_logo = jsonResponse.og_logo;
4565var protocol = window.location.protocol,
4566host = window.location.host,
4567pathname = window.location.pathname,
4568querystring = window.location.search;
4569$("#filters-background").css({"opacity":"0", "width":"0"});
4570$("#job-search-spinner-new").hide();
4571/* manipulate the url to add the job canonical url after /jobs/ */
4572var url = protocol + "//" + host + '/jobs/view/' + job_canonical_url + querystring;
4573var canonical = protocol + "//" + host + '/job/' + job_canonical_url + querystring;
4574$("link[rel=canonical]").attr('href', canonical);
4575if(jsonResponse.job_found) {
4576$(".job-middle-container").html(content);
4577$("#community-intel-content").html(intel_content);
4578// reload tooltip so that the tooltip from intel content will work
4579$('[data-toggle="tooltip"]').tooltip( { template: '<div class="tooltip bs-tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>', boundary: 'window' } );
4580// remove the current og tag
4581$("meta[property='og:image']").remove();
4582if (og_logo.length) {
4583// Append a new OG tag after the last existing OG tag
4584$('meta[property^="og:"]').last().after(
4585'<meta property="og:image" content="' + og_logo + '">'
4586);
4587}
4588var floatingCardDetails= $(".main-job-details-floating-card-container").html();
4589$(".job-details-parent-floating-card-container .main-job-details").html(floatingCardDetails);
4590intersectionObserver.observe(
4591document.querySelector(".job-details-parent-card-container")
4592);
4593}
4594var bounding = document.querySelector(".job-middle-container").getBoundingClientRect();
4595/* Make the job details visible if it is off screen for mobile view */
4596if(bounding.x >= window.innerWidth){
4597/*** Mobile : Show Job Details ***/
4598$('.job-results-body').toggleClass("job-results-focus");
4599/*** Mobile : Show Apply Button ***/
4600$('.apply-button-mobile-container').css('display','flex');
4601adjustResultsBodyHeight();
4602/*** Mobile : Move Support/Chat button higher to not overlap Apply button ***/	
4603$('iframe#launcher').css('bottom','45px');	
4604/*** Mobile : Transition Class for Back Btn ***/
4605$('.btn-mobile-back').removeClass("btn-rotate");
4606}
4607repositionLayout();
4608window.history.pushState({url: url}, document.title, url);
4609var sitename = (document.title.split('-')[1] || '').trim();
4610var title = job_Title + ' Job Position ' + ( job_Location.length ? 'at ' + job_Location + ' ' : '' ) + '- ' + sitename;
4611gaJobClick('Job', 'Job Click', job_flag, id,title,url);
4612window.dataLayer.push({event:'job_click','clicked_element':'search_results_section','job_upgrade':ga_job_upgrades,'job_id':id,'job_rank':ga_rank,'job_source':job_source})
4613gaJobPaneView('Job', 'View', job_flag, id,title,url); 
4614window.dataLayer.push({event:'job_view','clicked_element':'search_results_section','job_title':job_Title,'job_upgrade':ga_job_upgrades,'job_id':id,'job_source':job_source,'company_name':job_company})
4615window.dataLayer.push({event:'page_view','page_location':url,'page_referrer':'Search Results'})
4616var data = {"data":{"details":content, "job_id":id, "community_intel_full":intel_content}};
4617__sessionSetItem(url, data);
4618//Variable to help us determine there's an existing AJAX request - Reset back to null
4619currentAjax = null;
4620//Generate Apply button in header
4621generateApplyButton();	
4622//Regenerate Google Ads
4623if (typeof googletag !== 'undefined' && googletag.apiReady) {
4624googletag.cmd.push(function() {
4625try {
4626googletag.pubads().refresh();
4627} catch(e) {
4628console.warn('GPT refresh error:', e);
4629}
4630});
4631}
4632});
4633setTimeout(function(){
4634if(ajaxFinish == 0){
4635$("#filters-background").css({"opacity":".5", "width":"100%"});
4636$("#job-search-spinner-new").show();
4637}
4638}, 700);
4639}
4640var previousSortParameter = "";
4641var previousSortOrder = "";
4642function setSort(sort,field){
4643$("#filters-background").css({"opacity":".5", "width":"100%"});
4644var classes = field.className;
4645var classArr = classes.split(' ');
4646var sort_order ='';
4647var sortParameter = sort;
4648// Preserve the sort order even when we change the sort parameter - if previous sort order is descending then apply the same order when change a different sort parameter. There is no need to write logic to preserve the order if previous sort order is ascending as ascending is the default sort order from API.
4649if(previousSortOrder == 'desc' && previousSortParameter != sort) {	
4650sort = sort + '_';
4651sort_order = sort + 'Desc';
4652} else {
4653for(i=0;i<classArr.length;i++){
4654if(classArr[i]=='sort-asc'){
4655sort = sort + '_';
4656sort_order = sort + 'Desc';
4657}
4658else
4659sort_order = sort + '_'+ 'Asc'
4660}
4661}
4662sort_order = sort_order.replace('start_', 'posted_');
4663sort_order = sort_order.charAt(0).toUpperCase() + sort_order.slice(1);
4664$('.filter-userSort').remove();
4665$("#hiddenFieldsContainer").append('<input type="hidden" class="filter-userSort" id="filter-userSort-' + sort + '" name="sort" value="' + sort + '" />');
4666var url = "",
4667protocol = window.location.protocol,
4668host = window.location.host,
4669pathname = window.location.pathname,
4670querystring = window.location.search;
4671if( querystring.indexOf('sort=') ) {
4672querystring = querystring.replace( new RegExp('[&?]?sort=[^&]+'), '');
4673}	
4674var concat = "?";
4675if(querystring.search("\\?") > -1){
4676concat = "&";
4677}
4678querystring = querystring + concat + "sort=" + sort;
4679url = protocol + "//" + host + pathname + querystring;
4680window.history.pushState({url: url}, document.title, url);
4681if( sort.indexOf('_') > -1) {
4682previousSortOrder = "desc";
4683} else {
4684previousSortOrder = "asc";
4685}
4686previousSortParameter = sortParameter;
4687window.dataLayer.push({event:'job_sort','job_sort_element': sort_order});
4688/* Set to close the background overlay when the request is from the sort functionality */
4689closeBackground = true;
4690searchJobs(1,true);
4691}
4692/***
4693This function is used to scroll the right pane to the top page
4694*/
4695function repositionLayout() {
4696/* Put a timeout so that it will wait until the job details has been fully replaced with the new content before scrolling */
4697setTimeout( function() {
4698$( '.job-middle-container' ).stop().animate( {
4699scrollTop: 0
4700}, 600, function() {
4701var searchHead = $( '.region_main-pane .search-filter-container' );
4702if( $( '.job-middle-container' ).scrollTop() > searchHead.offset().top ) {
4703searchHead.get( 0 ).scrollIntoView( {
4704behavior: "smooth",
4705block: "start",
4706inline: "nearest"
4707} );
4708}
4709} );
4710}, 100 );
4711}
4712/***
4713This function is used to scroll the job results to the top of the page
4714*/
4715function repositionResults() {
4716/* Put a timeout so that it will wait until the job results has been fully replaced with the new content before scrolling */
4717setTimeout( function() {
4718$( '#data-step-results' ).animate( {
4719scrollTop: 0
4720}, 600, function() {
4721var searchHead = $( '.search-filter-container' );
4722if( $( window ).scrollTop() > searchHead.offset().top ) {
4723searchHead.get( 0 ).scrollIntoView( {
4724behavior: "smooth",
4725block: "start",
4726inline: "nearest"
4727} );
4728}
4729} );
4730}, 100 );
4731}
4732// This is used when user hits the back/forward botton
4733$(window).on('popstate', function(event){ 
4734var state = event.originalEvent.state; 
4735// Remove class from current active job tile
4736$(".job-tile-active, .status-highlight-active").removeClass("job-tile-active status-highlight-active");
4737// reset the current filters
4738$("input[type='checkbox']").prop("checked", false);
4739// reset the job alert form
4740$(".answer-list").html("");
4741$("#jaqcModalForm input[name='filters']").val("site_id="+site_id);
4742if(state !== null && state.url.length > 0){
4743// update the filters based on the url params
4744if(state.url.search("\\?") > -1){
4745var url = state.url;
4746var params = url.split("?");
4747var aParams = params[1].split("&");
4748for(i in aParams){
4749var filter = aParams[i].split("=");
4750$("#"+filter[0]+"-"+filter[1]).prop("checked", true);
4751}
4752}
4753// If there is data, use it to update the section
4754var data = window.sessionStorage.getItem(state.url);
4755if(data !== null){
4756var parsedData = JSON.parse(data);
4757Object.keys(parsedData.data).forEach(function eachKey(key){ 
4758var section = key;	
4759// load the content depending of the section
4760if(section !== null){
4761if(section == 'details'){
4762// update the job details with what was in the previus view
4763var html = parsedData.data[key];
4764$(".job-middle-container").html(html);
4765}
4766else if(section == 'job_id'){
4767// change the selected job from the result
4768var job_id = parsedData.data[key];
4769$(".job-tile-"+job_id).addClass("job-tile-active status-highlight-active");
4770}
4771else if(section == 'result'){
4772// update the result with the was in the previous result
4773/*var html = parsedData.data[key];
4774$(".job-results-list").html(html);*/
4775var resultData = JSON.parse(parsedData.data[key]);
4776$(".job-results-list").html(resultData.search_results);
4777$(".job-middle-container").html(resultData.job_view);
4778}
4779else if(section == 'alertCriteria'){
4780var html = parsedData.data[key];
4781$(".alert-criteria").html(html);
4782}
4783else if(section == 'alertFilter'){
4784var val = parsedData.data[key];
4785$("#jaqcModalForm input[name='filters']").val(val);
4786}
4787else if(section == 'searchFilters'){
4788var html = parsedData.data[key];
4789}
4790else if (section == 'community_intel_full') {
4791$("#community-intel-content").html(parsedData.data[key]);
4792}
4793}
4794});
4795}
4796else{
4797}
4798}
4799});
4800function hideShowSearchFilter() {
4801$('.search-filter-container').toggle(); 
4802repositionResultsBody(); 
4803changeJobSearchMainOverflow();
4804adjustResultsBodyHeight();
4805return true;
4806}
4807function repositionResultsBody() {
4808// Adjust position of body after applying the filters
4809var el = $(".job-search-main .search-filter-container"); //Updated to the new class
4810//If we hide the search section, move the results to top
4811if(el.css('display') == 'none') 
4812topValue = 0;
4813else 
4814topValue = el.outerHeight(true);
4815//Temporarily comment out til we move to the new layout
4816//$(".job-results-cf").css({'top': topValue});
4817}
4818function adjustResultsBodyHeight() {
4819let headerHeight = ($("#header-content").outerHeight(true) > $("#header").outerHeight(true)) ? $("#header-content").outerHeight(true):$("#header").outerHeight(true);
4820let heightVar = headerHeight;
4821let searchfilterHeight = $(".job-search-page-right-container .search-filter-container").height();
4822//Adjust height when we hide and show search and filters in mobile
4823if($('#nav-trigger').css('display') !== 'none' && $(".search-filter-container").css('display') === 'none'){
4824searchfilterHeight = 0;
4825} 
4826//Adjust height if google translate bar is visible
4827let google_translate_toogle = $('#google_translate_toogle').val();
4828if(google_translate_toogle == 'true'){
4829heightVar = heightVar + 40;
4830} 
4831//Adjust height if mobile action nav is visible
4832let mobile_action_nav = 0;
4833if ($(".top-mobile-action-buttons").css('display') !== 'none') {
4834mobile_action_nav = mobile_action_nav + $(".top-mobile-action-buttons").outerHeight(true);
4835}
4836let jaSliderHeight = "50";
4837// Change the height of the results section if job alert is not enabled for the site
4838if (!$(".job-alert-bar").length) 
4839jaSliderHeight = 0;
4840let pageDescriptionContainer = 0;
4841if ($(".page-description-section-container").length != 0) {
4842pageDescriptionContainer = $(".page-description-section-container").outerHeight(true);
4843}
4844$(".job-results-list").css({"height":"calc(100dvh - " + heightVar + "px - " + j
4844aSliderHeight + "px)"});
4845$(".job-results-body").css({"height":"calc(100dvh - " + heightVar + "px)"});
4846$(".region_main-pane").css({"height":"calc(100dvh + " + pageDescriptionContainer + "px - " + heightVar + "px)"});
4847$(".job-middle-container").css({"height":"calc(100dvh - " + heightVar + "px - " + searchfilterHeight + "px - " + mobile_action_nav + "px)"});
4848$(".community-intel-container").css({"height":"calc(100dvh - " + heightVar + "px - " + searchfilterHeight + "px - " + mobile_action_nav + "px)"});
4849}
4850function changeJobSearchMainOverflow(){
4851/* Remove the overflow when screen is < 768px */
4852if ($(".job-search-main").width() <= 768) {
4853$(".job-search-main").css({"overflow":"inherit"});
4854}
4855}
4856function jsCharEncode( input ) {
4857if( input === undefined ) return input;
4858return input.replace( /'/g, '\\\'' );
4859}
4860function initSalaryRange() {
4861var salary_range = $( '#salary_range_filter' ),
4862salary_range_display = $( '#salary_range_label' ),
4863salary_range_value = $( '#salary_range_value' ),
4864salary_range_indicator = salary_range.find( '.mdc-slider__value-indicator-text' );
4865// Init slider
4866var mdcSlider = mdc.slider.MDCSlider.attachTo( salary_range[ 0 ], {
4867skipInitialUIUpdate: false
4868} );
4869salary_range.data( 'mdcSlider', mdcSlider );
4870// Callback on moving the slider
4871salary_range.on( 'MDCSlider:input', function() {
4872var salary = mdcSlider.getValue(),
4873salary_label = 'View All Salaries';
4874if( salary > 0 ) {
4875salary_label = ( '£' + salary ).replace( /(\d)(?=(\d{3})+(?!\d))/g, '$1,' ) + '+';
4876}
4877salary_range_display.text( salary_label );
4878salary_range_indicator.text( ( salary + '' ).replace( /000000$/, 'M' ).replace( /000$/, 'k' ) );
4879} );
4880// Callback after the slider value is selected
4881salary_range.on( 'MDCSlider:change', function() {
4882var salary = mdcSlider.getValue();
4883salary_range_value.val( salary ).prop( 'checked', salary > 0 );
4884// Clear the dynamic elements
4885$( '#hiddenFieldsContainer input[name=' + salary_range_value.attr( 'name' ) + ']' ).remove();
4886// Update the filter
4887toggleFilter( salary_range_value[ 0 ], ( '£' + salary ).replace( /000$/, 'k+' ), 'Salary' );
4888} );
4889}
4890function resetSalaryRange() {
4891$( '#salary_range_filter' ).data( 'mdcSlider' ).setValue( 0 );
4892$( '#salary_range_label' ).text( 'View All Salaries' );
4893$( '#salary_range_filter .mdc-slider__value-indicator-text' ).text( 0 );
4894$( '#salary_range_value' ).val( 0 ).prop( 'checked', false );
4895}
4896function toggleWithoutSalary( element ) {
4897var filter = $( '#salary_range_without_salary' );
4898// Clear the dynamic elements
4899$( '#hiddenFieldsContainer input[name=' + filter.attr( 'name' ) + ']' ).remove();
4900// Update the filter value
4901filter.val( element.checked ? 1 : 0 );
4902// Update the filter
4903toggleFilter( filter[ 0 ], '', '', '' );
4904}
4905//Toogle hidden bar
4906function hideGoogleTranslateBar(){
4907$('#google_translate_toogle').val(false);
4908resizeBodyHeight();
4909}
4910//Toogle visible bar
4911function showGoogleTranslateBar(){
4912$('#google_translate_toogle').val(true);
4913resizeBodyHeight();
4914setTimeout(	addListenerToGoogleTranslate, 2000);	
4915}
4916//add listener to Google translate bar Close options
4917function addListenerToGoogleTranslate(){
4918//Close button
4919var google_translate_close = $('iframe[id=":1.container"]').contents().find('a[id=":1.close"]');
4920if(google_translate_close.length){
4921google_translate_close[0].addEventListener("click", hideGoogleTranslateBar);
4922}
4923//Turn off translation
4924var google_translate_iframe = $('iframe.skiptranslate').contents().find('div[id=":3.menuBody"]');
4925var google_translate_menu = google_translate_iframe.find('a');	
4926if(google_translate_menu.length){
4927google_translate_menu[0].addEventListener("click", hideGoogleTranslateBar);	
4928}	
4929}
4930//Check if Google tranalte bar is visible
4931function isGoogleTranslateBarVisible(){
4932var visible = false;	
4933var google_translate_iframe = $('iframe[id=":1.container"]').parent('.skiptranslate').css('display');	
4934if(google_translate_iframe == 'block'){
4935visible = true;	
4936}
4937return visible;
4938}
4939//Resize body height
4940function resizeBodyHeight(){
4941repositionResultsBody();
4942changeJobSearchMainOverflow();
4943adjustResultsBodyHeight();
4944}
4945function toggle_community_intel() {
4946$(".job-middle-container").toggleClass("job-middle-container-collapse");
4947$(".company-header-container").toggleClass("company-header-on-community-intel-open");
4948$(".jobs-recommended-container").toggleClass("jobs-recommended-on-community-intel-open");
4949$(".learning-courses-container").toggleClass("learning-courses-on-community-intel-open");
4950$(".community-intel-container").toggleClass("community-intel-container-open");
4951// $('.slide-icon').replaceClass('bi-arrow-bar-left','bi-arrow-bar-right');
4952$(".slide-icon").toggleClass("slide-icon-close");
4953if ($(".community-intel-container").hasClass("community-intel-container-open") == true) {
4954$("#community-intel-slide-panel").attr("data-original-title", "Hide Location");
4955gaJobView('Community Intel Pane', 'Community Intel Pane', 'open')
4956}
4957else {
4958$("#community-intel-slide-panel").attr("data-original-title", "Explore Location");
4959gaJobView('Community Intel Pane', 'Community Intel Pane', 'close')
4960}
4961// set cookie to preserve the state
4962preserveIntelExpandCollapseState();
4963}
4964function preserveIntelExpandCollapseState() {
4965let ajaxURL = "/includes/community_intel/preserveSelection.cfm?intel_container_state="+$(".community-intel-container").hasClass("community-intel-container-open");
4966currentIntelAjax = $.ajax({
4967method: "GET",
4968url: ajaxURL
4969})
4970}
4971function initIntersectionObserver() {
4972//logic to check if the job details card is in view
4973const intersectionObserver = new IntersectionObserver((entries) => {
4974// If intersectionRatio is 0, the target is out of view
4975// and we do not need to do anything.
4976entries.forEach((entry) => {
4977if (entry.intersectionRatio <= 0) {
4978document
4979.querySelector(".job-details-parent-floating-card-container")
4980.classList.add("show-floating-job-card");
4981} else {
4982document
4983.querySelector(".job-details-parent-floating-card-container")
4984.classList.remove("show-floating-job-card");
4985}
4986})
4987});
4988return intersectionObserver;
4989}
4990$(document).ready(function(){
4991//Hide Search filter on mobile by default
4992if($('#nav-trigger').css('display') !== 'none'){
4993$('.search-filter-container').hide();
4994}	
4995resizeBodyHeight();
4996var floatingCardDetails= $(".main-job-details-floating-card-container").html();
4997$(".job-details-parent-floating-card-container .main-job-details").html(floatingCardDetail
4997s);
4998intersectionObserver = initIntersectionObserver();
4999// start observing
5000intersectionObserver.observe(
5001document.querySelector(".job-details-parent-card-container")
5002);
5003//Add hidden element to store Google translate bar visibility
5004$('<input>').attr({
5005type: 'hidden',
5006id: 'google_translate_toogle',
5007value: false
5008}).appendTo('body');
5009//Check Header height then adjust body height
5010var $header = $("#header");
5011var lastHeight = $("#header").css('height');
5012function checkForChanges()
5013{
5014if ($header.css('height') != lastHeight || $(".goog-te-combo").length)
5015{
5016$(".goog-te-combo").change(function(){
5017showGoogleTranslateBar();	
5018});
5019if(isGoogleTranslateBarVisible()) showGoogleTranslateBar();	
5020resizeBodyHeight();
5021}	
5022}
5023setTimeout(checkForChanges, 3000);
5024window.addEventListener("resize", repositionResultsBody);
5025window.addEventListener("resize", changeJobSearchMainOverflow);
5026window.addEventListener("resize", adjustResultsBodyHeight);
5027var isVisible = $(".header-content #menu ul" ).is( ":visible" );
5028$("#nav-trigger").click(function(){
5029if ($(".header-content #menu ul:visible" )){
5030$(".job-search-page").toggleClass('overflow-auto');
5031}
5032/* Call adjustResultsBodyHeight to recalculate the results section height on mobile */
5033adjustResultsBodyHeight();
5034});
5035$(".back-btn-to-job-details-container").on("click", function () {
5036$(".community-intel-container").removeClass("show-mobile-community-intel");
5037$(".job-middle-container").removeClass("hide-job-middle-container");
5038$(".top-mobile-action-buttons").removeClass("show-community-intel");
5039});
5040$(".next-btn-to-community-intel-container").on("click", function () {
5041$(".community-intel-container").addClass("show-mobile-community-intel");
5042$(".job-middle-container").addClass("hide-job-middle-container");
5043$(".top-mobile-action-buttons").addClass("show-community-intel");
5044});
5045$(".page-description-section-container .dismiss-icon").on("click", function() {
5046$(".page-description-section-container").css("display", "none");
5047adjustResultsBodyHeight();
5048});
5049$("#community-intel-slide-panel").on( "keyup click", function(event){
5050if (event.type == 'click') {
5051toggle_community_intel();
5052}
5053// enter and spacebar
5054else if (event.type == 'keyup' && (event.keyCode == 13 || event.keyCode == 32)) {
5055toggle_community_intel();
5056}
5057});
5058// right pane main job bookmark and floating bookmark
5059$("[name='save_job']").on( "keyup", function(event) {
5060if (event.type == 'keyup' && (event.keyCode == 13 || event.keyCode == 32)) {
5061event.preventDefault();
5062$(this).click();
5063}
5064});
5065// search filter button
5066$(".search-filter-btn .filter-button").on( "keyup", function(event) {
5067if (event.type == 'keyup' && (event.keyCode == 13 || event.keyCode == 32)) {
5068event.preventDefault();
5069$(this).click();
5070}
5071});
5072// jobs you may like and search results section
5073$(".job-main-data .bookmark").on( "keyup", function(event) {
5074if (event.type == 'keyup' && (event.keyCode == 13 || event.keyCode == 32)) {
5075event.preventDefault();
5076$(this).click();
5077}
5078});
5079});
5080</script>
5080
5081<div class="modal fade" id="save-search" tabindex="-1" role="dialog" aria-labelledby="save-search" aria-hidden="true">
5082<div class="modal-dialog">
5083<div class="modal-content clearfix">
5084<header class="header clearfix">
5085<h5>
5086Save this search
5087</h5>
5088<a class="close" data-dismiss="modal" aria-hidden="true">&times;</a>
5089</header>
5090<form class="clearfix">
5091<fieldset class="input" id="saved-search-name">
5092<legend class="visibly-hidden">Search Name:</legend>
5093<label for="saved-search-name-input">Search Name:</label>
5094<input type="text" value="" name="saved-search-name" id="saved-search-name-input">
5095</fieldset>
5096<button class="primary" type="button" onclick="saveSearch('site%5Fid=17988&max=25&vnet=0&str=1&sort=&long=1', document.getElementById('save-search'));return false;">Save this Search</button>
5097<a class="cancel" data-dismiss="modal" aria-hidden="true">Cancel</a>
5098</form>
5099</div>
5100</div>
5101</div>
5102<div class="modal fade" id="create-alert" tabindex="-1" role="dialog" aria-labelledby="create-alert" aria-hidden="">
5103<div class="modal-dialog">
5104<div class="modal-content clearfix" role="region">
5105<div class="header clearfix">
5106<span class="h5">
5107Be the first to know about new jobs! Automatically receive an email when new jobs for this search are available.
5108</span>
5109<a class="close" data-dismiss="modal" aria-hidden="true">&times;</a>
5110</div>
5111<div class="alert warning" id="jaqcValidationErrorContainer" style="display:none"></div>
5112<div class="search-filters">
5113<span class="alert-criteria">
5114<br/>
5115<br/>
5116</span>
5117</div>
5118<script type="text/javascript">
5119function validateJAQCEmail(){
5120if(!/^[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+(?:\.[a-zA-Z0-9\!\#\$\%\&\'\*\+\/\=\?\^\_\`\{\|\}\~\-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?/.test($('#jaqcEmail').val())){
5121$('#jaqcValidationErrorContainer').text('Invalid email format'); 
5122$('#jaqcValidationErrorContainer').show();
5123return false; 
5124} else {
5125return true;
5126}
5127}
5128function createAlertLoader () {
5129$('#ga_create_alert').prop('disabled', true);
5130$('#ga_create_alert span').hide();
5131$('#ga_create_alert .createAlertLoader').removeClass("hide");
5132}
5133</script>
5133
5134<form class="clearfix" id="jaqcModalForm" method="POST" action="/c/agents/quickcreate.cfm" onSubmit="if (!validateJAQCEmail()) {return false;} else {createAlertLoader();}">
5135<fieldset class="input" id="job-alert-email">
5136<legend class="visibly-hidden">Email</legend>
5137<input type="email" title="Job Alert Email" value="" name="email" id="jaqcEmail" placeholder="Enter your email address" required autocomplete="email">
5138</fieldset>	
5139<input type="hidden" name="site" value="17988">
5140<input type="hidden" name="candidate" value="0">
5141<input type="hidden" name="filters" value="site_id&#x3d;17988&amp;keywords&#x3d;&amp;t735&#x3d;">
5142<input type="hidden" name="keyword_id" value="730">
5143<input type="hidden" name="kfields_pos_id" value=" 15931">
5144<input type="hidden" name="location" value="">
5145<input type="hidden" name="jaqc_new_search" class="jaqc_new_search" value="1">
5146<br />
5147<button class="primary" type="submit" id="ga_create_alert">
5148<span>Create Alert</span>
5149<div class="spinner-border spinner-border-sm createAlertLoader hide" role="status">
5150<span class="sr-only">Loading...</span>
5151</div>
5152</button> 
5153<a class="cancel" data-dismiss="modal" aria-hidden="true">Cancel</a>
5154</form>
5155</div>
5156</div>
5157</div>
5158<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/c/search/search_results/search_results.js"></script>
vendor: 1 bytes, line 5158
5158
5159<script type="text/javascript">
5160$(document).ready(function(){
5161$('#create-alert').modal('show');
5162});
5163</script>
5163
5164<div id="expanded-footer-background" onclick="close_footer()"></div>
5165<div class="expanded-footer">
5166<a href="javascript:void(0)" onclick="close_footer()" role="button" class="footer-close-btn">
5167<svg width="21px" height="21px" viewBox="0 0 21 21" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
5168<title>Close footer</title>
5169<defs>
5170<polygon id="icon-footer-close" points="21 2.1 18.9 0 10.5 8.4 2.1 0 0 2.1 8.4 10.5 0 18.9 2.1 21 10.5 12.6 18.9 21 21 18.9 12.6 10.5"></polygon>
5171</defs>
5172<g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5173<g>
5174<mask fill="white">
5175<use xlink:href="#icon-filter-close"></use>
5176</mask>
5177<use fill="#000000" xlink:href="#icon-footer-close"></use>
5178</g>
5179</g>
5180</svg>
5181</a>
5182<footer id="footer" class="footer super" role="contentinfo" aria-label="Content Info">
5183<div class="powered-by site clearfix"> 
5184<span class="dotted-rule"></span> <a href="//www.ymcareers.com/job-board-software/"><img src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/img/careers-by-momentive-pink.png" alt="Momentive Careers Logo" loading="lazy" /></a>
5185</div>
5186<div class="footer-content super clearfix">
5187<div class="footer-content-inner site">
5188<div class="footer-nav"> 
5189<div>
5190<ul>
5191<li> <a href="https://jobs.bir.org.uk/sitemap/">Site Map</a> </li>
5192<li> <a href="https://jobs.bir.org.uk/terms/">Terms of Use</a> </li>
5193<li> <a href="https://momentivesoftware.com/privacy-policy" target="_blank">Privacy Policy</a> </li>
5194</ul>
5195</div>
5196</div>
5197<div class="copyright-contact center">
5198<p class="copyright">
5199&copy; 2026 The British Institute of Radiology. All Rights Reserved.
5200</p>
5201<p>
5202<b class="address-1">Audrey House, 
520316-20 Ely Place
5204</b> 
5205<b class="address-2"></b> 
5206<b class="city-state-zip">London, 
5207England
5208EC1N 6SN</b> 
5209<b class="phone">
5210(440) 203-6682
5211</b>
5212</p>
5213</div>
5214<nav class="social-media clearfix"> 
5215<ul>
5216<li><a href="https://www.facebook.com/thebritishinstituteofradiology" target="_blank" class="facebook-icon" aria-label="The British Institute of Radiology on Facebook (opens in new tab)"><span class="icon-custom-margin fa-brands fa-facebook" aria-hidden="true"></span></a></li> <li><a href="https://www.linkedin.com/company/the-british-institute-of-radiology" target="_blank" class="linkedin-icon" aria-label="The British Institute of Radiology on LinkedIn (opens in new tab)"><span class="icon-custom-margin fa-brands fa-linkedin" aria-hidden="true"></span></a></li> <li><a href="https://twitter.com/BIR_News" target="_blank" class="twitter-icon" aria-label="The British Institute of Radiology on Twitter (opens in new tab)"><span class="icon-custom-margin fa-brands fa-x-twitter" aria-hidden="true"></span></a></li>
5217</ul>
5218</nav>
5219</div>
5220</div>
5221</footer>
5222</div>
5223<!-- //Modal framework ////-->
5224<div class="modal fade" id="alert" tabindex="-1" role="dialog" aria-labelledby="alert" aria-hidden="true">
5225<div class="modal-dialog">
5226<div class="modal-content">
5227<header class="header">
5228<h5 class="icon-attention-circled error-modal">{Error Message Title}</h5>
5229<!-- // Alternate headers //
5230<h5 class="icon-attention-circled warning-modal">{Warning Message Title}</h5>
5231<h5 class="fa fa-check success-modal">{Success Message Title}</h5>
5232--> 
5233<a class="close" data-dismiss="modal" aria-hidden="true">&times;</a>
5234</header>
5235<p>Insert additional messaging here.</p>
5236<!-- // Processing gif //// 
5237<img src="/headers/cc/responsive/img/graphics/processing.gif" alt="Processing"/>
5238-->
5239</div>
5240</div>
5241</div>
5242<script src="https://code.jquery.com/ui/1.13.2/jquery-ui.min.js" integrity="sha256-lSjKY0/srUM9BE3dPm+c4fBo1dky2v27Gdjm2uoZaL0=" crossorigin="anonymous"></script>
vendor: 1 bytes, line 5242
5242
5243<script type="text/javascript">
5244var _ymcGeoEnabled = true;
5245var _ymcSiteId = 17988;
5246var _ymcV3SearchRefresh = false;
5247var _ymcFetchingCoords = false;
5248// Counts X dismissals via the "Current Location" dropdown only (not the background focus path).
5249// Used to suppress the denied toast when Chrome auto-denies after accumulated dropdown dismissals.
5250var _ymcDropdownDismissCount = 0;
5251function _ymcGetRaw() {
5252try { return sessionStorage.getItem('ymcUserCoords'); } catch(e) { return null; }
5253}
5254function _ymcGetCoords() {
5255if (!_ymcGeoEnabled) return null;
5256var raw = _ymcGetRaw();
5257if (!raw || raw === 'denied') return null;
5258try { return JSON.parse(raw); } catch(e) { return null; }
5259}
5260function _ymcClearGeoFields() {
5261var $form = $(".location_autocomplete").closest('form');
5262$form.find('input[name="lat"]').val('');
5263$form.find('input[name="lng"]').val('');
5264$form.find('input[name="r"]').val('');
5265}
5266function _ymcApplyCoords(lat, lng) {
5267var $form = $(".location_autocomplete").closest('form');
5268$(".location_autocomplete #location").val('Current Location');
5269$.each(['lat', 'lng', 'r'], function(_, name) {
5270if (!$form.find('input[name="' + name + '"]').length) {
5271$('<input type="hidden">').attr({ id: name, name: name }).appendTo($form);
5272}
5273});
5274$form.find('input[name="lat"]').val(lat);
5275$form.find('input[name="lng"]').val(lng);
5276// Preserve the user's chosen radius when the Near Me panel was already active.
5277// Only default to 25 when no radius has been selected yet (panel was disabled).
5278var _nearMeRadius = $('input[name="v3-nearme"]:checked').val();
5279$form.find('input[name="r"]').val(_nearMeRadius || '25');
5280$(".location_autocomplete #location_latlong").val('');
5281$(".location_autocomplete #location_completion").val('');
5282$(".location_autocomplete #location_type").val('');
5283$(".location_autocomplete #location_autocomplete").val(1);
5284if (window.v3NearMeSetHasLocation) {
5285window.v3NearMeSetHasLocation(true);
5286$(document)
5287.off('change.geoNearMe', 'input[name="v3-nearme"]')
5288.on('change.geoNearMe', 'input[name="v3-nearme"]', function() {
5289$form.find('input[name="r"]').val(this.value);
5290});
5291}
5292}
5293function _ymcFetchCoords() {
5294if (_ymcFetchingCoords || _ymcGetCoords()) return;
5295_ymcFetchingCoords = true;
5296navigator.geolocation.getCurrentPosition(
5297function(pos) {
5298try {
5299sessionStorage.setItem('ymcUserCoords', JSON.stringify({
5300lat: pos.coords.latitude,
5301lng: pos.coords.longitude,
5302source: 'gps',
5303ts: Date.now()
5304}));
5305} finally {
5306_ymcFetchingCoords = false;
5307}
5308if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(true);
5309},
5310function(err) {
5311try {
5312// Only mark denied for explicit permission denial (code 1).
5313// POSITION_UNAVAILABLE (2) and TIMEOUT (3) should not block retries.
5314if (err.code === 1) sessionStorage.setItem('ymcUserCoords', 'denied');
5315} finally {
5316_ymcFetchingCoords = false;
5317}
5318},
5319{ timeout: 10000, enableHighAccuracy: false }
5320);
5321}
5322// On first focus of the location field: if permission hasn't been decided yet, trigger the
5323// browser's native location prompt and cache the result. Filling the location field happens
5324// only when the user explicitly selects "Current Location" from the dropdown.
5325// If permission is already granted, pre-fetch coords for suggestion ranking instead.
5326function _ymcPromptAndNavigate() {
5327if (!navigator.geolocation) return;
5328var onAllow = function(pos) {
5329_ymcDropdownDismissCount = 0;
5330try {
5331sessionStorage.setItem('ymcUserCoords', JSON.stringify({
5332lat: pos.coords.latitude, lng: pos.coords.longitude,
5333source: 'gps', ts: Date.now()
5334}));
5335} catch(e) {}
5336if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(true);
5337_ymcShowGeoToast(true);
5338};
5339var onError = function(err) {
5340if (err.code === 1) {
5341if (navigator.permissions) {
5342navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
5343if (result.state === 'denied') {
5344try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5345_ymcShowGeoToast(false);
5346} else {
5347// X dismiss — re-arm so the next focus re-prompts, no toast.
5348$(".location_autocomplete #location").one("focus", _ymcPromptAndNavigate);
5349}
5350}).catch(function() {
5351try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5352_ymcShowGeoToast(false);
5353});
5354} else {
5355try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5356_ymcShowGeoToast(false);
5357}
5358}
5359};
5360var opts = { timeout: 10000, enableHighAccuracy: false };
5361if (navigator.permissions) {
5362navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
5363if (result.state === 'prompt') {
5364navigator.geolocation.getCurrentPosition(onAllow, onError, opts);
5365} else if (result.state === 'granted') {
5366_ymcFetchCoords();
5367}
5368}).catch(function() {});
5369} else if (!_ymcGetCoords() && _ymcGetRaw() !== 'denied') {
5370navigator.geolocation.getCurrentPosition(onAllow, onError, opts);
5371}
5372}
5373function _ymcShowGeoToast(allowed) {
5374var el = document.getElementById('geo-toast');
5375if (!el) {
5376el = document.createElement('div');
5377el.id = 'geo-toast';
5378el.setAttribute('role', 'alert');
5379el.setAttribute('aria-live', 'polite');
5380var dot = document.createElement('div');
5381dot.className = 'geo-toast__icon-dot';
5382var body = document.createElement('div');
5383body.className = 'geo-toast__body';
5384var title = document.createElement('div');
5385title.className = 'geo-toast__title';
5386var subtitle = document.createElement('div');
5387subtitle.className = 'geo-toast__subtitle';
5388body.appendChild(title);
5389body.appendChild(subtitle);
5390var close = document.createElement('button');
5391close.className = 'geo-toast__close';
5392close.type = 'button';
5393close.setAttribute('aria-label', 'Dismiss');
5394close.innerHTML = '&times;';
5395close.onclick = function() {
5396if (window._ymcToastTimer) { clearTimeout(window._ymcToastTimer); window._ymcToastTimer = null; }
5397_ymcHideGeoToast();
5398};
5399el.appendChild(dot);
5400el.appendChild(body);
5401el.appendChild(close);
5402document.body.appendChild(el);
5403}
5404el.style.display = '';
5405el.className = 'geo-toast' + (allowed ? '' : ' geo-toast--denied');
5406var _icon = el.querySelector('.geo-toast__icon-dot');
5407if (_icon) {
5408_icon.style.background = allowed ? '#16A34A' : '#D97706';
5409_icon.innerHTML = allowed
5410? '<svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg>'
5411: '<svg width="10" height="10" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 2a7 7 0 0 1 7 7c0 5-7 13-7 13S5 14 5 9a7 7 0 0 1 7-7z"></path><circle cx="12" cy="9" r="2.5"></circle></svg>';
5412}
5413el.querySelector('.geo-toast__title').textContent = allowed
5414? 'Location shared'
5415: 'Location not shared';
5416el.querySelector('.geo-toast__subtitle').textContent = allowed
5417? 'Location access enabled. Select Current Location or add a location to search near you.'
5418: 'You denied location sharing. Enable location in your browser settings for more accurate results.';
5419if (window._ymcToastTimer) clearTimeout(window._ymcToastTimer);
5420window._ymcToastTimer = setTimeout(function() { _ymcHideGeoToast(); }, 5000);
5421}
5422function _ymcHideGeoToast() {
5423var el = document.getElementById('geo-toast');
5424if (el) el.style.display = 'none';
5425}
5426// If the user just granted location by selecting "Current Location" and the page navigated,
5427// the flag was set before navigation so the toast can fire here instead.
5428if (_ymcGeoEnabled) {
5429try {
5430if (sessionStorage.getItem('ymcGeoJustGranted')) {
5431sessionStorage.removeItem('ymcGeoJustGranted');
5432_ymcShowGeoToast(true);
5433}
5434} catch(e) {}
5435}
5436// Pre-fetch as early as possible if permission is already granted — maximises lead time before user types.
5437// Browsers without Permissions API (older Safari) fall through to the focus handler below.
5438if (_ymcGeoEnabled && navigator.permissions) {
5439navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
5440if (result.state === 'granted') {
5441_ymcFetchCoords();
5442}
5443// React to permission changes mid-session (e.g. user updates site settings in browser)
5444result.onchange = function() {
5445sessionStorage.removeItem('ymcUserCoords');
5446if (result.state === 'granted') {
5447_ymcFetchCoords();
5448} else if (result.state === 'denied') {
5449sessionStorage.setItem('ymcUserCoords', 'denied');
5450}
5451// 'prompt' (user reset permission): leave empty so next focus triggers a fresh browser prompt
5452};
5453}).catch(function() {});
5454}
5455$(document).ready(function(){
5456var first_label = "";
5457var first_location_completion = "";
5458var first_location_type = "";
5459var is_selected = 0;
5460var is_submitted = 0;
5461var is_off_focus = 0;
5462var is_modified = 0;
5463// Initializing tooltip for legacy sites.
5464// On first focus: show browser location prompt if permission hasn't been decided yet.
5465if (_ymcGeoEnabled) {
5466$(".location_autocomplete #location").one("focus", _ymcPromptAndNavigate);
5467$("#occupation-location-input #location-input").one("focus", _ymcFetchCoords);
5468// Coords cached from a previous grant — restore state immediately without
5469// waiting for a fresh GPS fetch (_ymcFetchCoords skips the fetch when cached).
5470var _pageLoadCoords = _ymcGetCoords();
5471if (_pageLoadCoords) {
5472// Enable the Near Me panel (server always renders it disabled).
5473if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(true);
5474// Restore the geo hidden fields when the location input shows Current Location
5475// so a subsequent keyword-only search still sends lat/lng/r to the server.
5476if ($(".location_autocomplete #location").val() === 'Current Location') {
5477_ymcApplyCoords(_pageLoadCoords.lat, _pageLoadCoords.lng);
5478}
5479}
5480}
5481$( ".location_autocomplete #location" ).autocomplete({
5482source: function(request, response){
5483first_label = "";
5484is_selected = 0;
5485is_off_focus = 0;
5486is_modified = 1;
5487var ajaxData = { term: request.term, site_id: _ymcSiteId };
5488var coords = _ymcGetCoords();
5489if (coords) { ajaxData.lat = coords.lat; ajaxData.lng = coords.lng; }
5490$.ajax({
5491url: "/includes/search_location_autocomplete/default.cfm",
5492dataType: "json",
5493data: ajaxData,
5494success: function(data){
5495var aLoc = [];
5496$.each(data, function(key, value) {
5497//Push data to the variable that can be accessible by "select" below; Autocomplete (dropdown) values will be taken from sLoc.label
5498sLoc = {};
5499sLoc.label = value.location_string;
5500sLoc.location_completion = value.location_completion;
5501sLoc.location_type = value.location_type;
5502sLoc.location_latlong = value.location_latlong;
5503aLoc.push(sLoc);
5504});
5505if(aLoc.length > 0) {
5506first_label = aLoc[0].label;
5507first_location_completion = aLoc[0].location_completion;
5508first_location_type = aLoc[0].location_type;
5509first_location_latlong = aLoc[0].location_latlong;
5510}
5511response(aLoc);
5512//Disable radius field initially
5513if($( ".location_autocomplete #radius") && is_off_focus != 1 && is_submitted != 1){
5514$( ".location_autocomplete #radius" ).val(320)
5515.attr('readonly', true)
5516.css('pointer-events', 'none');
5517$( ".location_autocomplete .radius_select" ).addClass('fade_radius')
5518.tooltip('enable');
5519}
5520}
5521})
5522},
5523open: function(event, ui) {
5524//Set width of unordered list based on the input field that triggered this widget (not any ui-autocomplete-input on the page)
5525var $locationInput = $(this);
5526var fieldWidth = $locationInput.outerWidth();
5527//Overwrite width when in search results page - add the radius control's width alongside this same input's location_autocomplete wrapper
5528$(this).autocomplete("widget").css({
5529"width": fieldWidth
5530});
5531},
5532minLength: 1,
5533select: function( event, ui ) {
5534is_selected = 1;
5535//Set values of input fields based on whichever location the user selected
5536$( ".location_autocomplete #location_type" ).val(ui.item.location_type);
5537$( ".location_autocomplete #location_completion" ).val(ui.item.location_completion);
5538$( ".location_autocomplete #location_text" ).val(ui.item.label);
5539$( ".location_autocomplete #location_autocomplete" ).val(1);
5540$( ".location_autocomplete #location_latlong" ).val(ui.item.location_latlong);
5541$( ".location_autocomplete #radius" ).val(320);
5542_ymcClearGeoFields();
5543//Enable the radius field when type is "city"
5544if(ui.item.location_type == 'city' && $( ".location_autocomplete #radius" )){
5545$( ".location_autocomplete #radius" ).attr('readonly', false)
5546.css('pointer-events', '');
5547$( ".location_autocomplete .radius_select" ).removeClass('fade_radius')
5548.tooltip('disable');
5549}
5550if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(ui.item.location_type === 'city');
5551},
5552search: function( event, ui ) {
5553$( ".location_autocomplete #location_autocomplete" ).val(0);
5554},
5555change: function(event, ui) {
5556is_off_focus = 1;
5557},
5558close: function( event, ui ) {
5559if (is_selected == 0 && $(this).val().length > 0 && first_label != "") {
5560$( ".location_autocomplete #location" ).val(first_label);
5561//Set values of input fields based on the first element (same like how we do for select-from-dropdown scenario)
5562$( ".location_autocomplete #location_type" ).val(first_location_type);
5563$( ".location_autocomplete #location_completion" ).val(first_location_completion);
5564$( ".location_autocomplete #location_text" ).val(first_label);
5565$( ".location_autocomplete #location_autocomplete" ).val(1);
5566$( ".location_autocomplete #location_latlong" ).val(first_location_latlong);
5567$( ".location_autocomplete #radius" ).val(320);
5568_ymcClearGeoFields();
5569//Enable the radius field when type is "city" (same like how we do for select-from-dropdown scenario)
5570if(first_location_type == 'city' && $( ".location_autocomplete #radius" )){
5571$( ".location_autocomplete #radius" ).attr('readonly', false)
5572.css('pointer-events', '');
5573$( ".location_autocomplete .radius_select" ).removeClass('fade_radius')
5574.tooltip('disable');
5575}
5576if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(first_location_type === 'city');
5577is_selected = 1;
5578}
5579},
5580response: function( event, ui ) {
5581if(first_label != "") {
5582if(is_off_focus == 1 || is_submitted == 1) {
5583$( ".location_autocomplete #location" ).val(first_label);
5584//Set values of input fields based on the first element (same like how we do for select-from-dropdown scenario)
5585$( ".location_autocomplete #location_type" ).val(first_location_type);
5586$( ".location_autocomplete #location_completion" ).val(first_location_completion);
5587$( ".location_autocomplete #location_text" ).val(first_label);
5588$( ".location_autocomplete #location_autocomplete" ).val(1);
5589$( ".location_autocomplete #location_latlong" ).val(first_location_latlong);
5590$( ".location_autocomplete #radius" ).val(320);
5591_ymcClearGeoFields();
5592//Enable the radius field when type is "city" (same like how we do for select-from-dropdown scenario)
5593if(first_location_type == 'city' && $( ".location_autocomplete #radius" )){
5594$( ".location_autocomplete #radius" ).attr('readonly', false)
5595.css('pointer-events', '');
5596$( ".location_autocomplete .radius_select" ).removeClass('fade_radius')
5597.tooltip('disable');
5598}
5599else {
5600$( ".location_autocomplete #radius" ).val(320)
5601.attr('readonly', true)
5602.css('pointer-events', 'none');
5603$( ".location_autocomplete .radius_select" ).addClass('fade_radius')
5604.tooltip('enable');
5605}
5606if (window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(first_location_type === 'city');
5607is_selected = 1;
5608if(is_submitted == 1) {
5609$(".location_autocomplete #location").closest("#jt_search").submit();
5610}
5611}
5612}
5613else {
5614is_selected = 1;
5615if(is_submitted == 1) { 
5616$(".location_autocomplete #location").closest("#jt_search").submit();
5617}
5618}
5619}
5620}).keyup(function(event) {
5621if(	$(this).val() == ""
5622||	! (	event.keyCode == 9
5623|| event.keyCode == 12
5624|| (event.keyCode >= 16 && event.keyCode <= 29)
5625|| (event.keyCode >= 33 && event.keyCode <= 40)
5626|| (event.keyCode >= 91 && event.keyCode <= 95)
5627|| (event.keyCode >= 112 && event.keyCode <= 145)
5628|| (event.keyCode >= 174 && event.keyCode <= 183)
5629|| event.keyCode == 224
5630|| event.keyCode == 255
5631)
5632) {
5633resetLocationField();
5634}
5635});
5636/* CAREERS-4352 Phase B — inject "Current Location" into v3 search autocomplete.
5637Gated by _ymcV3SearchRefresh (server-rendered from request.site.settings.search_refresh)
5638so it applies to all pages that include this file (home, job board, standalone search,
5639and search results) whenever the v3 UI option is enabled for the site. */
5640if (_ymcV3SearchRefresh && _ymcGeoEnabled) {
5641var _geoLocWidget = $( ".location_autocomplete #location" ).data('ui-autocomplete');
5642if (_geoLocWidget) {
5643var _geoLocItem = {
5644label: 'Current Location', value: 'Current Location', _geoCurrentLoc: true,
5645location_type: '', location_completion: '', location_latlong: ''
5646};
5647// Wrap widget.source — prepend "Current Location" only when city results are returned.
5648// City items from the source have no .value set; jQuery UI's _normalize shortcut
5649// fires when items[0].value is truthy (our _geoLocItem), skipping normalization
5650// for the rest — leaving cities with value=undefined, which clears the input on
5651// select. Set value=label on each city item here so all items are already normal.
5652var _geoOrigSource = _geoLocWidget.source;
5653_geoLocWidget.source = function(request, response) {
5654_geoOrigSource(request, function(data) {
5655if (data && data.length) {
5656var normalized = data.map(function(item) {
5657return item.value ? item : $.extend({}, item, { value: item.label });
5658});
5659response([_geoLocItem].concat(normalized));
5660} else {
5661response(data);
5662}
5663});
5664};
5665// Patch _renderItem — add geo icon to all suggestions; Current Location shares the same structure
5666_geoLocWidget._renderItem = function(ul, item) {
5667var $icon = $('<i>')
5668.addClass('bi bi-geo-alt input-icon')
5669.attr('aria-hidden', 'true')
5670.attr('style', '--focus-ring-color: transparent; outline: none;');
5671var label = item._geoCurrentLoc ? 'Current Location' : item.label;
5672var $label = item._geoCurrentLoc
5673? $('<span>').css('font-weight', '900').text(' ' + label)
5674: document.createTextNode(' ' + label);
5675return $('<li>')
5676.append(
5677$('<div>').addClass('ui-menu-item-wrapper')
5678.append($icon)
5679.append($label)
5680)
5681.appendTo(ul);
5682};
5683// Intercept options.select — when user picks Current Location:
5684// • Granted + coords cached: use them immediately, no extra prompt.
5685// • Otherwise: call getCurrentPosition so the browser shows its native
5686// prompt. Clears any session denial first so re-clicking after a
5687// prior denial gives the user another chance.
5688var _geoOrigSelect = _geoLocWidget.options.select;
5689_geoLocWidget.options.select = function(event, ui) {
5690if (ui.item && ui.item._geoCurrentLoc) {
5691is_selected = 1; // prevent close() from auto-filling with first_label
5692var _applyCoords = _ymcApplyCoords;
5693var cached = _ymcGetCoords();
5694if (cached) {
5695// Already have coords from a previous grant — use immediately, no prompt.
5696_applyCoords(cached.lat, cached.lng);
5697} else if (navigator.geolocation) {
5698var _opts = { timeout: 10000, enableHighAccuracy: false };
5699var _onAllow = function(pos) {
5700_ymcDropdownDismissCount = 0;
5701try {
5702sessionStorage.setItem('ymcUserCoords', JSON.stringify({
5703lat: pos.coords.latitude, lng: pos.coords.longitude,
5704source: 'gps', ts: Date.now()
5705}));
5706sessionStorage.setItem('ymcGeoJustGranted', '1');
5707} catch(e) {}
5708_applyCoords(pos.coords.latitude, pos.coords.longitude);
5709};
5710var _onDeny = function(err) {
5711if (err.code === 1) {
5712if (navigator.permissions) {
5713navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
5714if (result.state === 'denied') {
5715try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5716_ymcDropdownDismissCount = 0;
5717_ymcShowGeoToast(false);
5718} else {
5719// X dismiss — re-arm so the next focus re-prompts, no toast.
5720_ymcDropdownDismissCount++;
5721$(".location_autocomplete #location").one("focus", _ymcPromptAndNavigate);
5722}
5723}).catch(function() {
5724try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5725_ymcShowGeoToast(false);
5726});
5727} else {
5728try { sessionStorage.setItem('ymcUserCoords', 'denied'); } catch(e) {}
5729_ymcShowGeoToast(false);
5730}
5731}
5732};
5733if (navigator.permissions) {
5734navigator.permissions.query({ name: 'geolocation' }).then(function(result) {
5735if (result.state === 'granted') {
5736// Permission already granted — fetch coords silently, no browser prompt.
5737navigator.geolocation.getCurrentPosition(_onAllow, function() {}, _opts);
5738} else {
5739// 'prompt' or browser-level 'denied' — re-trigger the native prompt.
5740try { sessionStorage.removeItem('ymcUserCoords'); } catch(e) {}
5741navigator.geolocation.getCurrentPosition(_onAllow, _onDeny, _opts);
5742}
5743}).catch(function() {});
5744} else {
5745// No Permissions API (older Safari) — attempt directly.
5746try { sessionStorage.removeItem('ymcUserCoords'); } catch(e) {}
5747navigator.geolocation.getCurrentPosition(_onAllow, _onDeny, _opts);
5748}
5749}
5750return false;
5751}
5752return _geoOrigSelect ? _geoOrigSelect.apply(this, arguments) : undefined;
5753};
5754}
5755}
5756// Career Insights - Landing Page and Search Results Page
5757$( "#occupation-location-input #location-input" ).autocomplete({
5758source: function(request, response){
5759var ciData = { term: request.term, country: 'us', site_id: _ymcSiteId };
5760var ciCoords = _ymcGetCoords();
5761if (ciCoords) { ciData.lat = ciCoords.lat; ciData.lng = ciCoords.lng; }
5762$.ajax({
5763url: "/includes/search_location_autocomplete/default.cfm",
5764dataType: "json",
5765data: ciData,
5766success: function(data){
5767var aLoc = [];
5768$.each(data, function(key, value) {
5769//Push data to the variable that can be accessible by "select" below; Autocomplete (dropdown) values will be taken from sLoc.label
5770sLoc = {};
5771sLoc.label = value.location_string;
5772sLoc.location_completion = value.location_completion;
5773sLoc.location_type = value.location_type;
5774sLoc.location_slug = value.location_slug;
5775aLoc.push(sLoc);
5776});
5777response(aLoc);
5778}
5779})
5780},
5781open: function(event, ui) {
5782//Set width of unordered list based on the input field that triggered this widget (not any ui-autocomplete-input on the page)
5783var fieldWidth = $(this).outerWidth();
5784$(this).autocomplete("widget").css({
5785"width": fieldWidth
5786});
5787},
5788minLength: 1,
5789select: function( event, ui ) {
5790//Set values of input fields based on whichever location the user selected
5791$( "#occupation-location-input #location_type" ).val(ui.item.location_type);
5792$( "#occupation-location-input #location_completion" ).val(ui.item.location_completion);
5793$( "#occupation-location-input #location_slug" ).val(ui.item.location_slug);
5794$( "#occupation-location-input #location_text" ).val(ui.item.label);
5795$( "#occupation-location-input #location_autocomplete" ).val(1);
5796//set form action
5797formatActionUrl();
5798},
5799search: function( event, ui ) {
5800//reset values
5801resetLocationField("career_insights")
5802//set form action
5803formatActionUrl();
5804}
5805}).keyup(function() {
5806if($(this).val() == ""){
5807//reset values
5808resetLocationField("career_insights");
5809//set form action
5810formatActionUrl();
5811}	
5812});
5813//Home page - when user tries to manipulate the location text AFTER selecting (OR did NOT select anything) from the autocomplete choices, make sure that the autocomplete hidden fields are empty
5814$('.job-results-bar form, .job-search-page-right-container form, #jt_search').submit(function(e) {
5815is_submitted = 1;
5816var self = $(this);
5817if ( self.find( ".location_autocomplete" ).length > 0 ) {
5818if(is_selected == 0 && self.find( ".location_autocomplete #location" ).val().length > 0) {
5819e.preventDefault();
5820// If radius or keyword field is changed and if location textbox is unchanged, then we can submit the form.
5821if(is_modified == 0) {
5822is_selected = 1;
5823self.submit();
5824}
5825}
5826if(self.find( ".location_autocomplete #location_text" ).val() != self.find( ".location_autocomplete #location" ).val()){
5827self.find( ".location_autocomplete #location_type" ).val('');
5828self.find( ".location_autocomplete #location_completion" ).val('');
5829self.find( ".location_autocomplete #location_text" ).val('');
5830}
5831}
5832});
5833$('.ui-helper-hidden-accessible').css({'display': 'none'});
5834// Page-load hydration: when spatial params (lat/lng/r) are already in the URL
5835// from a previous Current Location submission, restore the JS-side behaviour so
5836// the next submit also clears the visible location field and keeps r in sync.
5837if (_ymcGeoEnabled) {
5838try {
5839var _geoUrlParams = new URLSearchParams(window.location.search);
5840var _geoLat = _geoUrlParams.get('lat');
5841var _geoLng = _geoUrlParams.get('lng');
5842if (_geoLat && _geoLng) {
5843var $geoForm = $(".location_autocomplete").closest('form');
5844// Restore "Current Location" display text if the server did not pre-fill it.
5845if (!$(".location_autocomplete #location").val()) {
5846$(".location_autocomplete #location").val('Current Location');
5847}
5848// Keep the r hidden field in sync when the user picks a radius.
5849if (window.v3NearMeSetHasLocation) {
5850$(document)
5851.off('change.geoNearMe', 'input[name="v3-nearme"]')
5852.on('change.geoNearMe', 'input[name="v3-nearme"]', function() {
5853$geoForm.find('input[name="r"]').val(this.value);
5854});
5855}
5856}
5857} catch(e) {}
5858}
5859});
5860function formatActionUrl(){
5861var basePath = '/career-insights/';
5862var occupationSlug = $("#occupation_slug").val();
5863var locationString = '';
5864var finalPath = '';
5865var joinStr = '?';
5866//disable search button if no valid occupation selected
5867if(!occupationSlug){
5868$(".occupation-search-form button[type='submit'").attr("disabled", true);
5869}
5870//update form action
5871var aFormAction = basePath.split( '/' ),
5872occupationSlug = $( "#occupation_slug" ).val(),
5873locationSlug = $( "#occupation-location-input #location_slug" ).val();
5874if( occupationSlug.length && locationSlug.length ) {
5875aFormAction.splice( 2, 0, locationSlug );
5876}
5877if( occupationSlug.length ) {
5878aFormAction.splice( 2, 0, occupationSlug );
5879}
5880$(".occupation-search-form").attr("action", aFormAction.join('/'));
5881}
5882function resetLocationField(page=""){
5883// default form id where we have autocomplete
5884target = "#jt_search";
5885if (page == "career_insights") {
5886target = "#occupation-location-input";
5887}
5888$( target + " #location_type" ).val('');
5889$( target + " #location_completion" ).val('');
5890$( target + " #location_slug" ).val('');
5891$( target + " #location_text" ).val('');
5892$( target + " #location_autocomplete" ).val(0);
5893$( target + " #location_latlong" ).val('');
5894if (!page && window.v3NearMeSetHasLocation) window.v3NearMeSetHasLocation(false);
5895}	
5896</script>
vendor: 1 bytes, line 5896
5896
5897<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/jquery.steps.js"></script>
vendor: 1 bytes, line 5897
5897
5898<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/doubletaptogo.min.js"></script>
vendor: 1 bytes, line 5898
5898
5899<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/jquery.tooltipster.min.js"></script>
vendor: 1 bytes, line 5899
5899
5900<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/libraries/bootstrap.min.js?v=3"></script>
vendor: 1 bytes, line 5900
5900
5901<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/jquery.mousewheel.min.js"></script>
vendor: 1 bytes, line 5901
5901
5902<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/owl.carousel.min.js"></script>
vendor: 1 bytes, line 5902
5902
5903<script defer src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/headers/cc/responsive/js/owl.carousel.init.js"></script>
vendor: 1 bytes, line 5903
5903
5904<script type="text/javascript">
5905$(document).ready(function(){
5906//Collapsable Listing Details
5907$('.listing-detail').hide();
5908$('.opt-out').hide();
5909//Submenu Support for Mobile
5910$(function() {
5911$('#menu li:has(ul)').doubleTapToGo();
5912});
5913$('.tooltip').tooltipster({
5914theme: 'tooltipster-shadow'
5915});
5916//WGAC Compliance For Carousel
5917$('.owl-nav div, .owl-dots div').each(function( index ) {
5918$( this ).attr('role', 'button').attr('aria-label', 'button'+Math.floor(Math.random()*1000));
5919});
5920});
5921</script>
vendor: 1 bytes, line 5921
5921
5922<script type="text/javascript">
5923var RecaptchaOptions = { theme : 'clean' };
5924</script>
vendor: 1 bytes, line 5924
5924
5925<script type="text/javascript">
5926$(document).ready(function(){
5927// Tooltip
5928$('.tooltip').tooltipster({
5929theme: 'tooltipster-shadow'
5930});
5931//Collapsable Job Details
5932//The call to action (arrow icon) should have a class of .detail-trigger
5933$('.job-listing-detail').hide();
5934//This is to make the global Show/Hide Details link show/hide the listings altogether. 
5935$('#show-hide').on('click', function() {
5936if ($('#show-hide').text() == 'Show All Details') {
5937$('.job-listing-detail').show(function (){});
5938$('#show-hide').html('Hide All Details');
5939$('.detail-trigger').html('<a class="fa fa-chevron-up"></a>');
5940} else {
5941$('.job-listing-detail').hide(function (){});
5942$('#show-hide').html('Show All Details');
5943$('.detail-trigger').html('<a class="fa fa-chevron-down"></a>');
5944}
5945return false;
5946});
5947//This is to make each indiviual call to action work independently
5948$('.detail-trigger').on('click', function(){
5949//Target the Job Details Div
5950$(this).parent().parent().next('.job-listing-detail').slideToggle();
5951//Change the Arrow direction for showing and closing the Details
5952if ($(this).html() == '<a class="fa fa-chevron-down"></a>') {
5953$(this).html('<a class="fa fa-chevron-up"></a>');
5954} else {
5955$(this).html('<a class="fa fa-chevron-down"></a>');
5956};
5957});
5958//Populate save search modal input with default text
5959var d = new Date();
5960var ssName = 'Job Search - ' + ((d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear());
5961$('#saved-search-name input').val(ssName);
5962// call saveJob function if user is logged in
5963});
5964var currentSaveAjax = null;
5965function saveJob(job_id, elem,callingFunct, redirectUrl){
5966var elem = $(".save"+job_id);
5967var ajaxURL = '/c/functions/savejob_v2.cfm?site_id='+ 17988 +'&job='+job_id;
5968if(redirectUrl != null){
5969ajaxURL = ajaxURL + '&setSession=1';
5970}
5971//Abort any other existing AJAX request
5972if(currentSaveAjax != null){
5973currentSaveAjax.abort();
5974}
5975// Only fire this if the event was triggered by a user
5976if(callingFunct != null){
5977event.stopImmediatePropagation();
5978}
5979//store job ID in session for later processing and redirect user to login page before saving job
5980if(redirectUrl){
5981currentSaveAjax = $.ajax({
5982/* Since setting up a session is domain specific, we need to make sure that we set sjid session to both careerwebsite.com domain and into the 
5983site's domain to support SSO enabled sites. 
5984*/
5985url: ajaxURL,
5986dataType: 'json',
5987success: function(json){
5988if(json.status){
5989sessionStorage.setItem('sjid', json.sjid);
5990window.location = redirectUrl; //redirect to login page
5991}
5992}
5993});
5994}
5995else{
5996currentSaveAjax = $.ajax({
5997method: "GET",
5998url: ajaxURL
5999}).done(function( result ){
6000var result = result.trim();
6001if(result == 'remove'){
6002$(elem).each(function( index ) {
6003if($(this).parent().hasClass('bookmark')){
6004$(elem).parent().addClass("icon-off");
6005} else {
6006$(elem).removeClass("bookmark-icon-on");
6007}
6008});
6009if (callingFunct != null){
6010var saveType = 'Unsaved '+ callingFunct;
6011window.dataLayer.push({'event':'job_save_click','status':saveType+'-Success','job_id':job_id.toString()});
6012}
6013else{
6014window.dataLayer.push({'event':'job_save_click','status':'Job Unsaved-Success','job_id':job_id.toString()});
6015}
6016$('#alert').html("<div class='modal-dialog'><div class='modal-content clearfix'><header class='header clearfix'><span class='h5'><em class='fa fa-check fa-4'></em>Your job has been unsaved.</span></header></div></div>");
6017}
6018else if(result == 'save'){
6019$(elem).each(function( index ) {
6020if($(this).parent().hasClass('bookmark')){
6021$(elem).parent().removeClass("icon-off");
6022} else {
6023$(elem).addClass("bookmark-icon-on");
6024}
6025});
6026if (callingFunct != null){
6027var saveType = 'Save '+ callingFunct;
6028window.dataLayer.push({'event':'job_save_click','status':saveType+'-Success','job_id':job_id.toString()});
6029}
6030else{
6031window.dataLayer.push({'event':'job_save_click','status':'Job Saved-Success','job_id':job_id.toString()});
6032}
6033$('#alert').html("<div class='modal-dialog'><div class='modal-content clearfix'><header class='header clearfix'><span class='h5'><em class='fa fa-check fa-4'></em>Your job has been saved to your account</span></header></div></div>");
6034}
6035$('#alert').modal('show');
6036setTimeout(function(){
6037$('#alert').modal('hide'); 
6038sessionStorage.removeItem('sjid');
6039}, 1000);
6040if(sessionStorage.getItem('sjid') !=='undefined' && sessionStorage.getItem('sjid') != null){
6041sessionStorage.removeItem('sjid');
6042}
6043}).fail(function(){
6044alert('Failed to save job: ' + job_id + '\nPlease try again later.');
6045window.dataLayer.push({'event':'job_save_click','status':'Job Save-Fail','
6045job_id':job_id.toString()});
6046});
6047}
6048}
6049function clickCandidateProductsPromotion(redirectUrl) {
6050window.location = redirectUrl;
6051}
6052function saveSearch( parameters , elem) {
6053/*
6054var d = new Date();
6055var ssName = 'Job Search - ' + ((d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear());
6056*/
6057search_name = $('input[name=saved-search-name]').val();
6058$(elem).html('Saving...');
6059var jqxhr = $.post('/c/functions/savesearch.cfm?', parameters + "&name=" + search_name , function(response) {
6060$('#save-search-link').parent().html('<a class="tooltip inactive" title="The current search has already been saved to your account.">Saved</a>');
6061$('#save-search').modal('hide');
6062}).fail(function() {
6063alert('Failed to save search\nPlease try again later.');
6064$(elem).html('Save this Search');
6065});
6066return false;
6067}
6068function saveAlert(elem) {
6069var jqxhr = $.post('/c/functions/savealert.cfm?site_id=' + 17988, 
6070{'site_id': '17988', 'long': '1', 'vnet': '0', 'str': '1', 'max': '25', 'sort': ''}, function(response) {
6071$(elem).parent().html('<a class="tooltip inactive" title="The job alert has been saved to your account.">Alert Saved</a>');
6072}).fail(function() {
6073alert('Failed to save your job alert\nPlease try again later.');
6074});
6075return false;
6076}
6077</script>
vendor: 1 bytes, line 6077
6077
6078<script type="application/ld+json">
6079{
6080"@context": "http://schema.org",
6081"@type": "WebSite",
6082"name": "BIR Career Center",
6083"alternateName": "The British Institute of Radiology Jobs",
6084"url": "https://jobs.bir.org.uk"
6085}
6086</script>
vendor: 1 bytes, line 6086
6086
6087<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.ui.widget.js"></script>
vendor: 1 bytes, line 6087
6087
6088<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/blueimp-tmpl.min.js"></script>
vendor: 1 bytes, line 6088
6088
6089<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/blueimp-load-image.all.min.js"></script>
vendor: 1 bytes, line 6089
6089
6090<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/blueimp-canvas-to-blob.min.js"></script>
vendor: 1 bytes, line 6090
6090
6091<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.iframe-transport.js"></script>
vendor: 1 bytes, line 6091
6091
6092<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload.js"></script>
vendor: 1 bytes, line 6092
6092
6093<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-process.js"></script>
vendor: 1 bytes, line 6093
6093
6094<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-image.js"></script>
vendor: 1 bytes, line 6094
6094
6095<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-audio.js"></script>
vendor: 1 bytes, line 6095
6095
6096<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-video.js"></script>
vendor: 1 bytes, line 6096
6096
6097<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-validate.js"></script>
vendor: 1 bytes, line 6097
6097
6098<script src="https://d3ogvqw9m2inp7.cloudfront.net/assets/static/javascript/upload/jquery.fileupload-ui.js"></script>
vendor: 1 bytes, line 6098
6098
6099<script src="/javascript/upload/jquery.xdr-transport.js"></script>
vendor: 1 bytes, line 6099
6099
6100<script src="/javascript/upload/jquery.postmessage-transport.js"></script>
vendor: 1 bytes, line 6100
6100
6101<script type="text/javascript">
6102//wait until the DOM is ready
6103jQuery(function () {
6104if ( typeof window.Modernizr !== undefined && typeof window.Modernizr.cookies !== undefined && window.Modernizr.cookies === false) {
6105let browser_user_message = "We detected that cookies are disabled in your browser. Some functionality within the site may not work as expected.";
6106// reuse the cookie-consent container and just replacing the content
6107jQuery("#cookie-consent").addClass("alert alert-dismissible");
6108let consent_content = "<p>"+browser_user_message+"</p><button type='button' class='close' data-dismiss='alert' aria-label='Close'><span aria-hidden='true'><svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-x-lg' viewBox='0 0 16 16'> <path d='M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z'/></svg></span></button>";
6109jQuery("#cookie-consent").html(consent_content);
6110}
6111});
6112</script>
6112
6113</body>
6114</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.