1<!-- standard - CustomHeader-NoAds-Site.html --> <!DOCTYPE html> 2<html lang="en" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#"> 3<head> 4 <title>Contact & Help | Brentwood Live</title> 5 6 <meta charset="utf-8"> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> 8 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 9 <meta name="OMG-Verify-V1" content="4389-366acdfc-5224-4c07-bb70-f74d8fbfc2db" /> 10 <meta name="robots" content="max-image-preview:large"> 11 <meta name="format-detection" content="telephone=no"> 12 13 <style> 14 .mar-leaderboard--top { 15 display: none; 16 } 17 </style> 18
18<script> 19 window.doNotAdvertise = true; 20 </script>
20 21 <link rel="canonical" href="https://www.brentwoodlive.co.uk/contact/" /> 22 <meta property="fb:pages" content="232328793633381" /> 23 <meta name="title" content="Contact & Help | Brentwood Live"/> 24 <meta name="description" content="Get help, support and contact information for Brentwood Live"/> 25 <meta name="keywords" content=""/> 26
27<script type="application/ld+json"> 28 { 29 "@context": "http://schema.org", 30 "@type": "WebPage", 31 "headline": "Contact & Help | Brentwood Live", 32 "url": "https://www.brentwoodlive.co.uk/contact/" 33 } 34</script>
34 35 36 37 38 39 40 41 42 43 <link id="page_stylesheet_vars" href="/resources/responsive-static/build/mds/css/palette-4-sans-serif-vars.css?r=vjoPdzgg" rel="stylesheet" type="text/css"> 44 45 <link href="/resources/responsive-static/build/mds/css/header-footer.css?r=vjoPdzgg" rel="stylesheet" type="text/css"> 46 47 <link id="page_stylesheet" href="/resources/responsive-static/build/mds/css/contactus.css?r=vjoPdzgg" rel="stylesheet" type="text/css"> 48 49 <link rel="shortcut icon" href="/resources/images/17393855/" type="image/vnd.microsoft.icon"> 50 <link rel="icon" href="/resources/images/17393855/" type="image/vnd.microsoft.icon"> 51
51<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js" integrity="sha384-1H217gwSVyLSIfaLxHbE7dRb3v4mYCKbpQvzx0cegeju1MVsGrX5xXxAvs/HgeFs" crossorigin="anonymous"></script>
vendor: 1 bytes, line 51
51
52<script src="https://code.jquery.com/jquery-migrate-3.6.0.js" integrity="sha384-ekzRTCLAU/LqHRBjnphRAxgZZvGdoP+TfkGGsX+tBJpRdM7r2/89ZZNzC/7YTJXX" crossorigin="anonymous"></script>
vendor: 1 bytes, line 52
52
53<script type="text/javascript" src="/resources/shared/responsive-sync/?r=vjoPdzgg"></script>
53 54
55<script type="text/javascript"> 56 data_layer_helper.setIsArticle(false); 57 data_layer_helper.setCookieDomain('.brentwoodlive.co.uk'); 58 data_layer_helper.setModuleType('Newsquest\Modules\ContactUsModule'); 59 data_layer_helper.setLocalInfoFolder(''); 60 data_layer_helper.setHomesData('', '', '', 'contact'); 61 data_layer_helper.setPrimaryDomain('www.brentwoodlive.co.uk'); 62 data_layer_helper.setPath('/contact/'); 63 data_layer_helper.setGoogleNetworkCode('154725070'); 64 data_layer_helper.setArticleTimestamp(''); 65 data_layer_helper.setPathOverride(); 66 67 68 var extraTags = []; 69 70 extraTags.push('user_level_anonymous'); 71 72 73 var data_layer = { 74 environment: { 75 is_test_site: 'no', 76 is_live_site: 'yes', 77 is_paywall_site: 'no', 78 is_portable_screen: (data_layer_helper.isMobileScreen()) ? 'yes' : 'no', 79 is_desktop_screen: (data_layer_helper.isMobileScreen()) ? 'no' : 'yes', 80 is_mobile_device: data_layer_helper.getMobileDevice(), 81 is_tablet_device: data_layer_helper.getTabletDevice(), 82 server: 'webapp-857f48ddbd-dbk5l', 83 platform: 'Martini' 84 }, 85 site: { 86 id: '112', 87 comments_subscriber_only: 'no', 88 viafoura_site_id: '00000000-0000-4000-8000-7963473f4174', 89 comments_use_viafoura: 'yes', 90 centre_id: '6', 91 centre_name: 'Basildon', 92 country: 'England', 93 name: 'Brentwood Live', 94 name_with_prefix_capitalised_possessive: 'The Brentwood Live\'s', 95 name_with_prefix_lower_possessive: 'the Brentwood Live\'s', 96 domain: 'www.brentwoodlive.co.uk', 97 editor_name: 'Michael Adkins', 98 onboarding_enabled: 'no', 99 onboarding_flow_id: 'onboarding_disabled', 100 allowing_mr_replacement: '', 101 cookie_domain: '.brentwoodlive.co.uk', 102 uses_cmp: 'yes', 103 short_domain: 'brentwoodlive', 104 using_piano_id: 'yes', 105 enable_skimlinks: 'yes', 106 skimlinks_domain_id: '1680346', 107 disable_newsletters: 'no', 108 is_archant_site: 'no', 109 shc_merchant_name: '', 110 piano_application_group: 'Forest', 111 piano_site_name: 'Brentwood Live', 112 piano_site_name_possessive: 'Brentwood Live\'s', 113 piano_site_name_with_prefix_lower: 'the Brentwood Live', 114 piano_site_name_with_prefix_capitalised: 'The Brentwood Live', 115 piano_site_name_with_prefix_capitalised_possessive: 'The Brentwood Live\'s', 116 piano_site_name_with_prefix_lower_possessive: 'the Brentwood Live\'s', 117 piano_location_primary: 'Brentwood', 118 piano_location_primary_possessive: 'Brentwood\'s', 119 piano_location_county: 'Essex', 120 piano_location_county_possessive: 'Essex\'s', 121 piano_primary_sports_team: '', 122 piano_primary_sports_team_nickname: '', 123 piano_primary_sports_team_sport: '', 124 piano_primary_sports_team_possessive: '', 125 piano_primary_sports_team_nickname_possessive: '', 126 piano_self_service_cancellation_setting: 'None', 127 has_app: 'no', 128 app_provider: '', 129 app_platform: '', 130 app_store_url_ios: '', 131 app_store_url_google_play: '', 132 cloudflare_turnstyle_site_key: '', 133 }, 134 page: { 135 module: 'Newsquest\Modules\ContactUsModule', 136 referrer: data_layer_helper.getReferrerHostName(), 137 name: '(www) ' + data_layer_helper.getOmniturePath(), 138 title: document.title, 139 path: data_layer_helper.getOmniturePath(), 140 section: data_layer_helper.getPathFragment(0), 141 subsection: data_layer_helper.getPathFragment(1), 142 subsection_2: data_layer_helper.getPathFragment(2), 143 subsection_3: data_layer_helper.getPathFragment(3), 144 reference: qs.get('ref'), 145 layout: '', 146 ad_timing: data_layer_helper.getCookie('adtiming'), 147 template_namespace: 'standard', 148 template: '', 149 colour_scheme: '', 150 layout_template: '', 151 mds_font: 'sans-serif', 152 user_used_app_last_24hours: '', 153 user_used_app_last_7days: '', 154 user_used_app_last_14days: '', 155 mds_colour_palette: 'palette-4', 156 feature_block_a_enabled: ($('[data-name="Feature Article Block A"]').length > 0) ? 'yes' : 'no', 157 feature_block_b_variant: (typeof $('[data-name="Feature Article Block B"]').data('variant') === 'undefined') ? '' : $('[data-name="Feature Article Block B"]').data('variant'), 158 is_article_list: 'no', 159 error_404: '',
160 top_stories_article_count: '', 161 interstitial_dedupe_top_stories: '', 162 interstitial_desktop_height: '', 163 interstitial_mobile_height: '', 164 interstitial_tablet_height: '', 165 interstitial_piano_module_id: '', 166 interstitial_using_recommendations: '', 167 interstitial_recommendation_header: '', 168 interstitial_article_count: '', 169 news_stories_article_count: '', 170 site_newspaper_archive_enabled: 'no', 171 site_newspaper_archive_number_of_pages: '', 172 site_newspaper_archive_start_year: 0, 173 article_originates_from_this_site: '', 174 article_originates_from_site: '', 175 article_originates_from_url: '' 176 }, 177 user: { 178 id: '', 179 first_name: '', 180 advertising_experience: 'Ad-Full', 181 is_privacy_plus: 'no', 182 is_alist: 'no', 183 level: data_layer_helper.getCookie('nq_ul'), 184 seen_cmp: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true' || data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no', 185 given_consent: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true') ? 'yes' : 'no', 186 consent_string: data_layer_helper.getConsentString(), 187 type: 'anonymous', 188 parsely_type: 'Anonymous', 189 chartbeat_type: 'anon', 190 type_as_int: '1', 191 is_logged_in: 'no', 192 is_admin: 'no', 193 is_internal_admin: '', 194 has_full_admin_link_permissions: '', 195 has_registered: (data_layer_helper.getCookie('nqr') !== null) ? 'yes' : 'no', 196 comments_verified: '', 197 comments_verified_date: '', 198 user_email_is_verified: '', 199 user_email_is_verified_date: '', 200 mobile_number_is_verified: '', 201 mobile_number_is_verified_date: '', 202 user_needs_email_verification: '', 203 user_needs_mobile_verification: '', 204 user_too_many_requests: '', 205 age_decade: '0' , 206 gender: 'u' , 207 is_known: data_layer_helper.getCookie('__siren') ? 'yes' : 'no', 208 hash: '', 209 lr_hash_1: '', 210 lr_hash_2: '', 211 lr_hash_3: '', 212 gender: 'u' , 213 user_decade: '0' , 214 subscription_plan: '', 215 subscription_tier: 'null', 216 subscription_plan_and_frequency: ' - ', 217 commented: (data_layer_helper.isArticle() && qs.get('action') === 'success') ? 'yes' : 'no', 218 time_since_last_visit: 'not implemented (maybe drop)', 219 device: data_layer_helper.getDevice(), 220 using_ad_blocker_sourcepoint: data_layer_helper.getSourcepointAdbockStatus(), 221 admin_user_name: '', 222 is_admin_internal: '', 223 is_admin_external: '', 224 card_expired: '', 225 card_will_expire: '', 226 expires_urgency: '', 227 abandoned_cart: 'no', 228 subscription_expired: 'no', 229 is_archant_site: 'no', 230 signed_up_primary_news_newsletter: 'no', 231 signed_up_primary_sport_newsletter: 'no', 232 played_free_puzzles_last_7days: '', 233 played_paid_puzzles_last_7days: '', 234 commenter_badge: '', 235 upper_role: '', 236 }, 237 analytics: { 238 hierachy: 'newsquest,Basildon,www.brentwoodlive.co.uk,' + data_layer_helper.getPathFragment(3).replace(/\//,','), 239 link_filters: 'javascript:,brentwoodlive.co.uk,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk,', 240 tracking_block: data_layer_helper.getTrackingFromCookie('tracking_block', ''), 241 tracking_block_index: data_layer_helper.getTrackingFromCookie('tracking_block_index', ''), 242 previous_page_name: data_layer_helper.getCookie('nq_prev_page'), 243 advert_id: '', 244 position_in_list: data_layer_helper.getTrackingFromCookie('o-prop30', ''), 245 featured_content: data_layer_helper.getTrackingFromCookie('o-ref', qs.get('ref')), 246 account: data_layer_helper.getAccount() 247 }, 248 chartbeat: { 249 enabled: "no", 250 id: "", 251 domain: "", 252 sections: '' 253 }, 254 parsely: { 255 enabled: "yes", 256 site_id: "brentwoodlive.co.uk", 257 type: 'Anonymous' 258 }, 259 piano: { 260 tags: data_layer_helper.getPianoTags({ 261 piano_domain: 'brentwoodlive', 262 piano_master: '', 263 breaking_news: false, 264 editorial_opinion: false, 265 free_subscriber: false, 266 free_subscriber: false, 267 has_video: false, 268 is_article: false,
269 article_content_level : '', 270 article_content_level_open_access: false, 271 picture_gallery_id: false, 272 user_is_newsquest: false, 273 user_is_entra_authenticated: false, 274 user_logged_in: false, 275 is_live_article: false, 276 why_free_subscriber: '', 277 extra_tags: extraTags, 278 is_covid_headline: false, 279 is_covid_body: false, 280 is_alist: false, 281 audio_provider_bytecast: false 282 } 283 ), 284 custom_variables: { 285 article_length: '', 286 application_group: 'Forest', 287 content_is_editorial_opinion: 'no', 288 base_url: 'https://www.brentwoodlive.co.uk', 289 full_url: document.location.href, 290 from_discover: (document.referrer === "android-app://com.google.android.googlequicksearchbox/") ? 'yes' : 'no', 291 mds_font: 'sans-serif', 292 mds_colour_palette: 'palette-4', 293 site_name: 'Brentwood Live', 294 site_name_possessive: 'Brentwood Live\'s', 295 site_name_with_prefix_capitalised: 'The Brentwood Live', 296 site_name_with_prefix_lower: 'the Brentwood Live', 297 site_name_with_prefix_capitalised_possessive: 'The Brentwood Live\'s', 298 site_name_with_prefix_lower_possessive: 'the Brentwood Live\'s', 299 location_primary: 'Brentwood', 300 location_primary_possessive: 'Brentwood\'s', 301 location_county: 'Essex', 302 location_county_possessive: 'Essex\'s', 303 site_has_primary_sports_team: 'no', 304 primary_sports_team: '', 305 primary_sports_team_nickname: '', 306 primary_sports_team_sport: '', 307 primary_sports_team_possessive: '', 308 primary_sports_team_nickname_possessive: '', 309 site_id: '112', 310 content_level: '', 311 content_author: '', 312 content_id: '', 313 content_is_article: 'no', 314 content_primary_topic: '', 315 user_seen_consent_modal: ($.cookie('_sp_enable_dfp_personalized_ads') === 'true' || $.cookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no', 316 site_section: data_layer_helper.getPathFragment(0, true), 317 article_published_yyyy: '', 318 user_played_free_puzzles_last_7days: '', 319 user_played_paid_puzzles_last_7days: '', 320 anon_user_played_free_puzzles_last_7days: data_layer_helper.untrackedPuzzleCheck(), 321 home_delivery_phone_number: '0800 953 0227', 322 content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''), 323 day_of_week: data_layer_helper.getDayOfWeek(), 324 user_card_expired: '', 325 user_card_will_expire: '', 326 user_expires_urgency: '', 327 user_used_app_last_24hours: '', 328 user_used_app_last_7days: '', 329 user_used_app_last_14days: '', 330 user_subscription_tier: 'null', 331 user_is_newsquest: 'no', 332 primary_news_newsletter_id: '922', 333 primary_news_newsletter_name: 'the Daily Catch-up', 334 primary_news_newsletter_description: 'Your round-up of the day\'s top stories.', 335 primary_sport_newsletter_id: '921', 336 primary_sport_newsletter_name: 'the Sports AM', 337 primary_sport_newsletter_description: 'Keep up to date with the latest sport headlines.', 338 user_signed_up_primary_news_newsletter: 'no', 339 user_signed_up_primary_sport_newsletter: 'no', 340 newsletter_auto_promote: '', 341 newsletter_auto_promote_name: '', 342 newsletter_auto_promote_description: '', 343 newsletter_auto_promote_ID: '', 344 site_has_app: 'no', 345 site_app_store_url_ios: '', 346 site_app_store_url_google_play: '', 347 subsets_experiment_id: '', 348 site_section1: data_layer_helper.getPathFragment(1, true), // GBL required 349 site_newspaper_archive_enabled: 'no', 350 site_newspaper_archive_number_of_pages: '', 351 site_newspaper_archive_start_year: 0, 352 article_originates_from_this_site: '', 353 article_originates_from_site: '', 354 article_originates_from_url: '' 355 }, 356 native_variables: { 357 setContentCreated: '', 358 setContentIsNative: 'no', 359 setContentAuthor: '', 360 setContentSection: data_layer_helper.getPathFragment(0, true) 361 } 362 }, 363 article: { 364 cscore:'', 365 showing_preview: '', 366 is_article: data_layer_helper.isArticle() ? 'yes' : 'no', 367 id : '', 368 length_type: '', 369 character_count: '', 370 author: ''.toLowerCase(), 371 e_var15: ''.toLowerCase(), 372 context: '', 373 content_level: '', 374 content_level_open_access: '', 375 content_level_combined: ',,no', 376 content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''), 377 increment: (data_layer_helper.isArticle()) ? '+1' : '', 378 sponsor: '', 379 contributions: '0', 380 is_sponsored: 'no', 381 headline: '', 382 age: data_layer_helper.getArticleAge(), 383 upload_date: '', 384 publish_date: '', 385 update_date: '', 386 rating: '', 387 source: data_layer_helper.getSource(''), 388 subjects: (typeof articleSubjects === 'object') ? articleSubjects.join(',') : '', 389 context: '', 390 grapeshot_context: (typeof gs_channels !== 'undefined') ? gs_channels : '', 391 allow_comments: 'no', 392 total_comments: '', 393 originating_site_id: '', 394 parent_article_site_id: '', 395 parent_article_id: '', 396 originating_article_id: '', 397 parent_originating_site_id: '', 398 is_original_to_site: '', 399 is_cloned: '', 400 parent_article_url: '', 401 use_skimlinks: 'no', 402 content_primary_topic: '', 403 taxonomy: { 404 article_types: '', 405 topics: '', 406 sports: '', 407 sports_teams: '', 408 locations: '', 409 shared_content: '', 410 free_tags: '', 411 farming: '' 412 }, 413 audio: { 414 has_audio: 'no', 415 provider: '' 416 },
417 article_comments_use_viafoura: '' 418 }, 419 homes: { 420 search_bedrooms_minimum: '', 421 search_location: 'contact', 422 search_price_minimum: '', 423 search_price_maximum: '', 424 list: '', 425 id: '' 426 }, 427 video: { 428 exists: 'no', 429 auto_play_enabled: data_layer_helper.getAutoPlay('no') 430 }, 431 contributions: { 432 allow_text: '', 433 allow_image: '', 434 user_contributions_number: '0', 435 has_user_contributions: 'no' 436 }, 437 search: { 438 keywords: qs.get('search'), 439 results: '' 440 }, 441 announcements: { 442 category: '' 443 }, 444 config: { 445 google_analytics_id: 'UA-54396341-25', 446 site_template_set: 'standard', 447 path: '/contact/', 448 top_level_section: 'contact', 449 polar_property_id: 'NA-BREN-11238123', 450 gallery_show_advert_after: '5', 451 disable_outbrain_with_ad_light: 'no', 452 disable_outbrain: 'no', 453 }, 454 dfp: { 455 is_landing: 'yes', 456 module_path: 'contact', 457 weather_band: '11-15', 458 weather_summary: 'sun'.toLowerCase(), 459 id: data_layer_helper.getGoogleId(), 460 display_screen: data_layer_helper.isMobileScreen() ? 'mobile' : 'desktop', 461 can_show_billboard: (window.screen.width > 960) ? 'y' : 'n' 462 }, 463 dates: { 464 date: (new Date()).toLocaleDateString('en-GB'), 465 hour: (new Date()).getHours(), 466 day: data_layer_helper.getDayOfWeek(), 467 weekend: ((new Date()).getDay() === 6 || (new Date()).getDay() === 0) ? 'Weekend' : 'Weekday' 468 }, 469 memorials: { 470 contact_phone_number: '', 471 contact_email_address: '', 472 publications: JSON.parse('' || '[]'), 473 user: { 474 id: '', 475 email_verified: 'no', 476 type: '' 477 }, 478 funeral_director: { 479 id: '', 480 person_urn: '' 481 } 482 } 483 } 484 485 data_layer_helper.storeCurrentPageName(data_layer.page.name); 486 487 window.dispatchEvent(new Event('data-layer-loaded')) 488 489 data_layer.piano.custom_variables.user_used_app_last_24hours = 'no'; 490 data_layer.piano.custom_variables.user_used_app_last_7days = 'no'; 491 data_layer.piano.custom_variables.user_used_app_last_14days = 'no'; 492 if (data_layer.article.is_article !== 'yes') { 493 data_layer.piano.custom_variables.site_module = 'Newsquest\Modules\ContactUsModule'; 494 data_layer.piano.custom_variables.puzzles_landing_page = 'no'; 495 data_layer.piano.custom_variables.puzzles_display_page = 'no'; 496 } 497</script>
497 498
499<script 500 src="https://assets.adobedtm.com/499440d21de9/54b957ecfb7e/launch-98090dfa3d73.min.js" 501 async 502></script>
502 503 504
505<script>"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){var t,e,o=[],n=window,r=n;for(;r;){try{if(r.frames.__tcfapiLocator){t=r;break}}catch(t){}if(r===n.top)break;r=r.parent}t||(!function t(){var e=n.document,o=!!n.frames.__tcfapiLocator;if(!o)if(e.body){var r=e.createElement("iframe");r.style.cssText="display:none",r.name="__tcfapiLocator",r.title="tcfapiLocator",e.body.appendChild(r)}else setTimeout(t,5);return!o}(),n.__tcfapi=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];if(!n.length)return o;"setGdprApplies"===n[0]?n.length>3&&2===parseInt(n[1],10)&&"boolean"==typeof n[3]&&(e=n[3],"function"==typeof n[2]&&n[2]("set",!0)):"ping"===n[0]?"function"==typeof n[2]&&n[2]({gdprApplies:e,cmpLoaded:!1,cmpStatus:"stub"}):o.push(n)},n.addEventListener("message",(function(t){var e="string"==typeof t.data,o={};if(e)try{o=JSON.parse(t.data)}catch(t){}else o=t.data;var n="object"===_typeof(o)&&null!==o?o.__tcfapiCall:null;n&&window.__tcfapi(n.command,n.version,(function(o,r){var a={__tcfapiReturn:{returnValue:o,success:r,callId:n.callId}};t&&t.source&&t.source.postMessage&&t.source.postMessage(e?JSON.stringify(a):a,"*")}),n.parameter)}),!1))};"undefined"!=typeof module?module.exports=t:t()}();</script>
505 506
507<script type = "text/javascript"> 508( function () { 509 510 window._sp_ = { 511 config: { 512 baseEndpoint: 'https://a02342.brentwoodlive.co.uk', 513 accountId: 52, 514 targetingParams:{ 515 subscribed: false, 516 privacy: false 517 }, 518 gdpr: { }, 519 events: { 520 onMessageReady: function (message_type) { 521 trackSPEvents('event76'); 522 }, 523 onMessageChoiceSelect: function (message_type, choice_id, choice_type_id) { 524 console.log('message_type: ', message_type); 525 console.log('choice_id: ', choice_id); 526 console.log('choice_type_id: ', choice_type_id); 527 if ('yes' === 'yes') { 528 if (choice_type_id === 12) { 529 trackSPEvents('event83'); //Consent Banner Reject All 530 trackSPEvents('event82'); //Journalism Message Shown 531 } 532 if (choice_type_id === 11) { 533 trackSPEvents('event78'); 534 } 535 if (choice_type_id === 9) { 536 trackSPEvents('event77'); 537 } 538 } else { 539 // these are the second argument in non-gate 540 if (choice_type_id === 12) { 541 trackSPEvents('event77'); 542 } 543 544 if (choice_type_id === 11) { 545 trackSPEvents('event78'); 546 } 547 548 if (choice_type_id === 13) { 549 trackSPEvents('event83'); 550 } 551 } 552 }, 553 onPrivacyManagerActionStatus: function(message_type, status, actionType) { 554 console.log('message_type: ' + message_type); 555 console.log('status: ' + status); 556 console.log('actionType: ' + actionType); 557 if ('yes' === 'yes') { 558 if (actionType === 11) { 559 trackSPEvents('event79'); //Privacy Manager Accept 560 } 561 if (actionType === 9) { 562 trackSPEvents('event68'); //Privacy Manager Redirect 563 } 564 if (actionType === 1) { 565 trackSPEvents('event75'); //Forced tcf String Change 566 } 567 } else { 568 // these are the second argument in non-gate 569 if (actionType === 13) { 570 trackSPEvents('event81'); //Privacy Manager Reject 571 } 572 if (actionType === 11) { 573 trackSPEvents('event79'); //Privacy Manager Accept 574 } 575 if (actionType === 1) { 576 trackSPEvents('event80'); //Privacy Manager Save & Exit 577 } 578 } 579 }, 580 onPMCancel: function (message_type) { 581 console.log('onPMCancel', message_type); 582 trackSPEvents('event84'); //Privacy Manager Back 583 }, 584 } 585 } 586 } 587 588 if (typeof window.__tcfapi === 'function') { 589 window.__tcfapi('addEventListener', 2, function (tcData, success) { 590 console.log('SP: Event Listen:', tcData, success); 591 if (success && tcData.eventStatus === 'useractioncomplete') { 592 setTcfCookie(tcData.purpose.consents, tcData.purpose.legitimateInterests); 593 594 var csnt = 'none'; 595 if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { 596 csnt = 'yes'; 597 } else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { 598 csnt = 'no'; 599 } 600 googletag.cmd.push(function() { 601 // console.log('DFP: Cookie check - setting dfpcsnt to ', csnt); 602 googletag.pubads().setTargeting('dfpcsnt', csnt); 603 }); 604 // ready to start DFP
605 // console.log('PIANO: setting unrestricted via useractioncomplete'); 606 // runPiano('unrestricted'); 607 startAdvertising(tcData.listenerId); 608 609 var e = new Event('launch:cmp:choice-made'); 610 window.dispatchEvent(e); 611 } else if (success && tcData.eventStatus === 'tcloaded') { 612 // tcloaded means a valid TCF v2.0 string is available 613 // console.log('PIANO: setting unrestricted via tcloaded'); 614 // runPiano('unrestricted'); 615 if (tcData.gdprApplies === false) { 616 $.cookie('_sp_enable_dfp_personalized_ads', 'true', {domain: '.brentwoodlive.co.uk', path: '/', expires: 100}); 617 } 618 startAdvertising(tcData.listenerId); 619 620 } else if (success && tcData.eventStatus === 'useractionnotcomplete') { 621 // do nothing - this means the user has not made a choice yet 622 } else if (success && tcData.eventStatus === 'cmpuishown') { 623 // do nothing - this means the CMP UI has been shown 624 } else if (!success) { 625 // $.cookie('_sp_enable_dfp_personalized_ads', 'true', {domain: '.brentwoodlive.co.uk', path: '/', expires: 100}); 626 // startAdvertising(); 627 } else { 628 // console.log('PIANO: setting restricted'); 629 // runPiano('restricted'); 630 } 631 }); 632 } 633 634 635 636 document.addEventListener('click', function (e) { 637 const option = e.target.closest('.gdpr-option-v2'); 638 639 if (!option) return; 640 641 e.preventDefault(); 642 sendEvent76 = false; 643 644 const id = option.dataset.v2Id; 645 const isGate = option.dataset.isGate; 646 647 if (isGate === 'yes') { 648 trackSPEvents('event87'); 649 _sp_.gdpr.loadPrivacyManagerModal(id); 650 } else { 651 trackSPEvents('event77'); 652 _sp_.gdpr.loadPrivacyManagerModal(id); 653 } 654 }); 655 656 function getTcfData() { 657 if (typeof window.__tcfapi !== 'function') { 658 console.warn('TCF API unavailable'); 659 return; 660 } 661 window.__tcfapi('addEventListener', 2, function(data, success) { 662 if (!data.purpose || !data.purpose.consents || !data.purpose.legitimateInterests) { 663 // console.log('DFP: No TCF data found, not setting cookies'); 664 return; 665 } 666 setTcfCookie(data.purpose.consents, data.purpose.legitimateInterests); 667 }, [755]); 668 } 669 getTcfData(); 670 671 function setTcfCookie(data, legitimateInterests) { 672 var consents = []; 673 $.each(data, function(id, consent) { 674 var c = (consent === true) ? 'yes' : 'no'; 675 consents.push(c) 676 }); 677 // console.log('DFP: consents length: ', consents.length); 678 if (consents.length !== 10) { 679 // consents = consents.fill('no', consents.length, 10); 680 for (var i = consents.length; i < 10; i++) { 681 consents[i] = 'no'; 682 } 683 } 684 // console.log('DFP: Found consents to store in cookie:', consents); 685 $.cookie('prev-tcf-v2', consents.join(','), {domain: '.brentwoodlive.co.uk', path: '/', expires: 100}); 686 687 var consentEvent4 = 'none'; 688 if (typeof data[4] !== 'undefined') { 689 consentEvent4 = data[4] ? 'true' : 'false'; 690 } 691 $.cookie('_sp_enable_dfp_personalized_ads', consentEvent4, {domain: '.brentwoodlive.co.uk', path: '/', expires: 100}); 692 693 var legitInterest = 'none'; 694 if (legitimateInterests && typeof legitimateInterests[2] !== 'undefined') { 695 legitInterest = legitimateInterests[2] ? 'true' : 'false'; 696 } 697 698 $.cookie('_sp_legitimate_interests', legitInterest , {domain: '.brentwoodlive.co.uk', path: '/', expires: 100}); 699 } 700 701 var sendEvent76 = true; 702 703 function trackSPEvents(events) { 704 if (events === 'event76' && !sendEvent76) { 705 return; 706 } else if (events === 'event76') { 707 sendEvent76 = false;
708 } 709 710 if (typeof window.s !== 'object') { 711 // console.log('DFP: No window.s object found, trying again in 1 second'); 712 window.setTimeout(function () { trackSPEvents(events)} , 1000); 713 return; 714 } 715 716 // console.log("ADB: Tracking %s", events); 717 // Re-create the Omniture object so the data can be tracked. 718 var s = window.s; 719 720 if (events.indexOf('event70') !== -1) { 721 // console.log('DFP: Events passed, added evars'); 722 s.eVar35 = 'enabled'; 723 s.prop35 = 'enabled'; 724 } 725 726 s.events = events; 727 s.linkTrackEvents = events; 728 s.linkTrackVars = "eVar2,eVar3,eVar4,eVar5,eVar6,evar7,evar8,evar9,eVar16,eVar19,eVar26,eVar35,eVar43,eVar67,prop35"; 729 s.suppressPageView = true; 730 s.tl(true,'o','Ad Block'); 731 } 732 733 function startAdvertising(id) 734 { 735 if (typeof window.doNotAdvertise !== 'undefined' && window.doNotAdvertise === true) { 736 return; 737 } 738 739 // console.log("DFP: Is the page fully loaded?", window.googleReady); 740 if (window.googleReady !== true) { 741 window.setTimeout(function () { 742 // console.log('DFP: Google not fully loaded yet, pausing quarter of a second before trying again'); 743 startAdvertising(id); 744 }, 250); 745 return; 746 } 747 748 // Ensure that we never run this code twice 749 if (window.advertisingStart === true) { 750 return; 751 } 752 // console.log('DFP: Running advertisement'); 753 window.advertisingStart = true; 754 755 var googletag = window.googletag; 756 // init google objects and array 757 (function() { 758 var gads = document.createElement('script'); 759 gads.async = true; 760 gads.type = 'text/javascript'; 761 gads.src = 'https://securepubads.g.doubleclick.net/tag/js/gpt.js'; 762 var node = document.getElementsByTagName('script')[0]; 763 node.parentNode.insertBefore(gads, node); 764 })(); 765 766 // launch the exco slideshow player 767 launchExcoSlideshow(); 768 769 // load facebook etc 770 loadSocials(); 771 772 // Checking our decision to use headerbidding (shorterned as prebid) is correct 773 // via system logic, and that we have the simplified consent to do so 774 if (usePrebid && $.cookie('_sp_enable_dfp_personalized_ads') === 'true') {
775 var e = new Event('launch:sourcepoint:consentaccepted'); 776 window.dispatchEvent(e); 777 778 // AP code initialisation 779 // the script is loaded via launch, once we have detected a consent signal via the datalayer. 780 fetchAp(); 781 782 var site = 'desktop'; 783 var _site = 'desktop'; 784 785 // load IAS scripts and set up vars 786 (function() { 787 var ias = document.createElement('script'); 788 ias.async = true; 789 ias.type = 'text/javascript'; 790 ias.src = 'https://cdn.adsafeprotected.com/iasPET.1.js'; 791 var node = document.getElementsByTagName('script')[0]; 792 node.parentNode.insertBefore(ias, node); 793 })(); 794 795 // load the prebid script 796 (function() { 797 var pbs = document.createElement('script'); 798 pbs.async = true; 799 pbs.type = 'text/javascript'; 800 pbs.src = 'https://micro.rubiconproject.com/prebid/dynamic/11022.js?group=newsquest'; 801 var node = document.getElementsByTagName('script')[0]; 802 node.parentNode.insertBefore(pbs, node); 803 })(); 804 805 // tell google to actually get the bids from all relevant vendors when loaded 806 googletag.cmd.push(function () { 807 fetchHeaderBids(); 808 }); 809 } 810 811 // Outbrain 812 if ( 813 (window.data_layer.user.advertising_experience === 'Ad-Free' || window.data_layer.config.disable_outbrain === 'yes') || 814 (window.data_layer.user.advertising_experience === 'Ad-Light' && window.data_layer.config.disable_outbrain_with_ad_light === 'yes') 815 ) { 816 // console.log("No Outbrain script loading due to page settings"); 817 } else { 818 // console.log("Loading Outbrain"); 819 var ob = document.createElement('script'); 820 ob.async = true; 821 ob.type = 'text/javascript'; 822 ob.src = 'https://widgets.outbrain.com/outbrain.js'; 823 var node = document.getElementsByTagName('script')[0]; 824 node.parentNode.insertBefore(ob, node); 825 } 826 827 828 // remove the listener 829 if (id !== null) { 830 window.__tcfapi('removeEventListener', 2, function (success) { }, id); 831 } 832 } 833 834 /** 835 * Wait until we have advertising consent to show this advertising 836 * based replacement for the single image on our article pages 837 * This logic is based on excoSlidshowPlayerID that only appears on the page 838 * if a user is NOT a subscriber (including privacy plus) and the page has the 839 * correct information to show it (doesn't have a video, not in sport etc) 840 */ 841 function launchExcoSlideshow() { 842 const slideShowPlayerId = window.excoSlideshowPlayerId; 843 // if we do not have a player id, we do not need to do anything 844 if (!slideShowPlayerId) { 845 return; 846 } 847 848 // this is exco's supplied code, modified for our use 849 (function (d, s, n) { 850 fjs = d.getElementsByTagName(s)[0]; 851 js = d.createElement(s); 852 js.className = n; 853 js.src = '//player.ex.co/player/' + slideShowPlayerId; 854 js.setAttribute('programmatic', 'true'); 855 js.onload = function () { 856 const playerApi = ExCoPlayer.connect(slideShowPlayerId); 857 playerApi.init({}); 858 859 playerApi.on('player-load', function(data) { 860 $('.mar-article-image').remove(); 861 if (window.screen.width > 800) { 862 $('.article-hero').attr('style', 'order: 1'); 863 } 864 window.hide_overlay_for_exco = true; 865 }); 866 }; 867 fjs.parentNode.insertBefore(js, fjs); 868 }(document, 'script', 'exco-player')); 869 } 870 871 function loadSocials() 872 { 873 const socials = [ 874 'https://platform.twitter.com/widgets.js', 875 'https://connect.facebook.net/en_US/all.js#xfbml=1', 876 'https://www.tiktok.com/embed.js', 877 ]; 878
879 socials.forEach((social) => { 880 var script = document.createElement('script'); 881 script.src = social; 882 script.async = true; 883 document.getElementsByTagName('head')[0].appendChild(script); 884 }); 885 } 886 887 888})(); 889 890</script>
vendor: 1 bytes, line 890
890
891<script src="https://a02342.brentwoodlive.co.uk/unified/wrapperMessagingWithoutDetection.js"></script>
891 892
893<script> 894window.usePiano = true; 895window.selectedOfferId = null; 896window.selectedTermId = null; 897</script>
vendor: 1 bytes, line 897
897
898<script> 899document.cookie = "__adblocker=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"; 900var setNptTechAdblockerCookie = function(adblocker) { 901 var d = new Date(); 902 d.setTime(d.getTime() + 60 * 60 * 24 * 2 * 1000); 903 document.cookie = "__adblocker=" + (adblocker ? "true" : "false") + "; expires=" + d.toUTCString() + "; path=/"; 904} 905var script = document.createElement("script"); 906script.setAttribute("async", true); 907script.setAttribute("src", "//www.npttech.com/advertising.js"); 908script.setAttribute("onerror", "setNptTechAdblockerCookie(true);"); 909document.getElementsByTagName("head")[0].appendChild(script); 910</script>
910 911
912<script> 913// window.pdl = window.pdl || {}; 914// window.pdl.requireConsent = 'v2'; 915 916// Store entry point unless it's a user or subscribe page 917// to redirect after subscription 918const excludedPaths = ['/user/', '/subscribe/']; 919 920const shouldExclude = excludedPaths.some(path => 921 window.location.pathname.includes(path) 922); 923 924if (!shouldExclude) { 925 sessionStorage.setItem( 926 'last_piano_page_interacted_with', 927 window.location.pathname 928 ); 929} 930 931tp = window.tp || []; 932 933function runPiano(restrictedMode) { 934 // console.log('Running Piano with restricted mode:', restrictedMode); 935 // tp.push(['init', function() { 936 // console.log('Piano purpose map, before calling setAllPurposes()', tp.consent.getByPurpose()); 937 // }]); 938 // if (restrictedMode === 'restricted') { 939 // // If we're in restricted mode, we need to set some specific parameters 940 // tp.push(['init', function() { 941 // tp.consent.setAllPurposes('opt-out') 942 // }]); 943 // } else { 944 // tp.push(['init', function() { 945 // tp.consent.setAllPurposes('opt-in') 946 // }]); 947 // } 948 // tp.push(['init', function() { 949 // console.log('Piano purpose map, after calling setAllPurposes()', tp.consent.getByPurpose()); 950 // }]); 951 // init Piano ID 952 tp.push(['init', function() { 953 tp.pianoId.init(); 954 }]); 955 956 const isGooglebot = window.isRobot.googleBot(); 957 958 const isArticle = (data_layer.article.is_article === 'yes'); 959 960 const isCl3 = (parseInt(data_layer.article.content_level, 10) === 3); 961 962 if (isGooglebot) { 963 // we don't load Piano from all non-article pages 964 if (!isArticle) { 965 return; 966 } 967 968 // If we are on an article, we do not load piano on CL0, 1, or 2 969 if (!isCl3) { 970 return; 971 } 972 } 973 Object.keys(data_layer.piano.custom_variables).forEach(function (k) { 974 var v = data_layer.piano.custom_variables[k]; 975 976 if (v != '') { 977 tp.push(["setCustomVariable", k, v]); 978 } 979 }); 980 981 Object.keys(data_layer.piano.native_variables).forEach(function (k) { 982 var v = data_layer.piano.native_variables[k]; 983 if (v != '') { 984 tp.push([k, v]); 985 } 986 }); 987 988 tp.push(['setTags', data_layer.piano.tags]); 989 990 (function(src){ 991 var a=document.createElement("script"); 992 a.type = "text/javascript"; 993 a.async=true; 994 a.src=src; 995 var b=document.getElementsByTagName("script")[0]; 996 b.parentNode.insertBefore(a, b) 997 })("//experience.tinypass.com/xbuilder/experience/load?aid=luywmU10pu"); 998} 999 1000// Init Piano 1001const debug = document.cookie 1002 .split('; ') 1003 .find(row => row.startsWith('debug=')) 1004 ?.split('=')[1]; 1005 1006tp.push(["setDebug", debug === '1']); 1007 1008tp.push(["setApplePayMerchantId", 'merchant.nq.subssites.piano']); 1009 1010tp.push(["setUsePianoIdUserProvider", true ]); 1011 1012tp.push(["addHandler", "loginRequired", function(params) { 1013 // If they're already signed in, we don't need to do anything special. 1014 if (tp.user.isUserValid()) { 1015 return; 1016 } 1017 if (typeof window._overridePianoDefault !== 'undefined' && window._overridePianoDefault !== true) { 1018 console.log("TPL Called") 1019 tp.pianoId.show({ 1020 screen: 'login', 1021 displayMode: 'modal', 1022 loggedIn: (data) => { 1023 pianoId.loggedIn(); 1024 }, 1025 loggedOut: () => { 1026 console.log('TP-TJ: user logged out'); 1027 }, 1028 registrationSuccess: () => { 1029 pianoId.registered(); 1030 }, 1031 width: '500px', 1032 height: '460px', 1033 }); 1034 } 1035}]); 1036 1037tp.push(["addHandler", "checkoutSelectTerm", function (termDetails) { 1038 if (typeof termDetails.termId !== 'undefined') { 1039 window.selectedTermId = termDetails.termId; 1040 } 1041}]); 1042 1043tp.push(["addHandler", "showTemplate", function (templateParams) { 1044 showPianoTarget(templateParams); 1045}]); 1046 1047tp.push(["addHandler", "showOffer", function (offerParams) { 1048 window.shownOffer = true; 1049 1050 // Store some data we might need later. 1051 if (typeof offerParams.offerId !== 'undefined') { 1052 window.selectedOfferId = offerParams.offerId; 1053 } 1054 1055 showPianoTarget(offerParams); 1056}]); 1057 1058function handleFullWidthBanner(selector) { 1059 if (selector === '#po-overlay-articlegate-full-width-full-article-scroll-below') { 1060 document.querySelector(selector).classList.add(selector.replace('#', '')); 1061 } 1062 document.querySelector(selector).style.minHeight = "254px"; 1063 document.querySelector('#subscription-content').style.display = 'none'; 1064 document.querySelectorAll('.send-us-your-news-cta').forEach((el) => { el.style.display = 'none'; }); 1065 document.querySelectorAll('.mega-news-block').forEach((el) => { el.style.display = 'none'; }); 1066 1067 const block = document.querySelector(selector); 1068 const containerBlock = block.parentElement; 1069 const containerBlockHeight = 254; // to prevent abrupt jumping 1070 1071 if (!block) { return; } 1072 1073 block.style.display = 'block'; 1074 1075 const blockRect = block.getBoundingClientRect(); 1076 const startTop = blockRect.top + window.scrollY; 1077 const blockHeight = blockRect.height; 1078 const screenWidth = window.screen.width; 1079 1080 let lastState = ''; // 'top', 'bottom', 'default' 1081 1082 function getScrollbarWidth() { 1083 return window.innerWidth - document.documentElement.clientWidth; 1084 } 1085 1086 function updatePosition() { 1087 const scrollY = window.scrollY;
1088 const viewportHeight = window.innerHeight; 1089 const bottomTrigger = startTop + blockHeight - viewportHeight; 1090 1091 let newState = 'default'; 1092 1093 if (scrollY > startTop && screenWidth >= 768) { 1094 newState = 'top'; 1095 } else if (scrollY < bottomTrigger && screenWidth >= 768) { 1096 newState = 'bottom'; 1097 } else if (scrollY < bottomTrigger + 90 && screenWidth < 768) { 1098 newState = 'bottom-mobile'; 1099 } 1100 1101 const scrollbarWidth = getScrollbarWidth(); 1102 1103 if (newState !== lastState) { 1104 switch (newState) { 1105 case 'top': 1106 block.style.position = 'fixed'; 1107 block.style.top = '0'; 1108 block.style.bottom = 'auto'; 1109 block.style.marginLeft = '0'; 1110 block.style.marginRight = '0'; 1111 containerBlock.style.minHeight = `${containerBlockHeight}px`; 1112 break; 1113 1114 case 'bottom': 1115 block.style.position = 'fixed'; 1116 block.style.bottom = '0'; 1117 block.style.top = 'auto'; 1118 block.style.marginLeft = '0'; 1119 block.style.marginRight = '0'; 1120 block.style.width = `calc(100vw - ${scrollbarWidth}px)`; 1121 containerBlock.style.minHeight = 'unset'; 1122 break; 1123 1124 case 'bottom-mobile': 1125 block.style.position = 'fixed'; 1126 block.style.bottom = '90px'; 1127 block.style.top = 'auto'; 1128 block.style.marginLeft = 'calc(-100vw + 100%)'; 1129 block.style.marginRight = 'calc(-100vw + 100%)'; 1130 containerBlock.style.minHeight = 'unset'; 1131 break; 1132 1133 default: 1134 block.style.position = ''; 1135 block.style.top = ''; 1136 block.style.bottom = ''; 1137 block.style.width = `calc(100vw - ${scrollbarWidth}px)`; 1138 block.style.marginLeft = '-100vw'; 1139 block.style.marginRight = '-100vw'; 1140 containerBlock.style.minHeight = 'unset'; 1141 break; 1142 } 1143 1144 lastState = newState; 1145 } 1146 1147 requestAnimationFrame(updatePosition); 1148 } 1149 1150 updatePosition(); 1151 window.addEventListener('resize', updatePosition); 1152} 1153 1154function trackLocation(forceValidLocation = false) { 1155 var currentLocation = window.location.pathname; 1156 1157 let valid = false; 1158 1159 if (currentLocation.indexOf('puzzles') > -1) { 1160 valid = true; 1161 } 1162 1163 if (currentLocation.indexOf('pagesuite') > -1) { 1164 valid = true; 1165 } 1166 1167 var articleMatch = currentLocation.match(/(\d+)\.[^\/]+\/(r\/)?$/); 1168 if (articleMatch != null) { 1169 valid = true; 1170 } 1171 1172 if (forceValidLocation) { 1173 valid = true; 1174 } 1175 1176 if (currentLocation.indexOf('subscribe') > -1) { 1177 valid = false; 1178 } 1179 1180 if (!valid) { 1181 return; 1182 } 1183 1184 $.cookie('last-piano-page-interacted-with', currentLocation, {path: '/', domain: window.data_layer.site.cookie_domain}); 1185} 1186 1187function trackPianoWithNewRelic(templateName) { 1188 if (this.newrelic && typeof this.newrelic === 'object') { 1189 newrelic.setCustomAttribute('user_was_shown_piano_experience', templateName); 1190 } 1191} 1192 1193function handleOfferShow(params) { 1194 console.log('Piano params', params); 1195 1196 // If on the subscription page and the URL has a term ID and offer ID, show the relevant offer. 1197 if (typeof location.pathname !== 'undefined' && location.pathname === '/subscribe/') { 1198 var offerId = location.search.match(/offer_id=([A-Z0-9]+)/); 1199 if (offerId !== null && offerId.length > 1) { 1200 offerId = offerId[1]; 1201 } 1202 var termId = location.search.match(/term_id=([A-Z0-9]+)/); 1203 if (termId !== null && termId.length > 1) { 1204 termId = termId[1]; 1205 } 1206 if (offerId !== null && termId !== null) { 1207 tp.offer.show({'termId': termId, 'offerId': offerId}); 1208 } 1209 } 1210 1211 // we are only tracking 1212 var templateId = params.templateId; 1213 var variantId = params.templateVariantId; 1214 if (params.containerSelector !== '#po-inline-articlegate-fullarticle' && 1215 params.containerSelector !== '#po-overlay-articlegate-full-width-full-article-scroll-below' && 1216 params.containerSelector !== '#po-inline-articlegate-partialarticle' && 1217 params.containerSelector !== '#po-overlay-articlegate-full-width-scroll-below' 1218 ) { 1219 $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) { 1220 trackPianoSimplified(params, response.name); 1221 }); 1222 return; 1223 } 1224 1225 1226 $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) { 1227 trackPiano(params, response.name); 1228 }); 1229} 1230 1231function trackPiano(params, templateName) { 1232 trackPianoWithNewRelic(templateName); 1233 1234 if (typeof params.activeMeters === 'string') { 1235 activeMeters = JSON.parse(params.activeMeters); 1236 } else { 1237 activeMeters = params.activeMeters; 1238 } 1239 1240 var s = window.s; 1241 if (!s || !s.pageName) { 1242 // console.log("ADB: Setting s from backup"); 1243 s = window.backupAdobe; 1244 window.s = s; 1245 } 1246 1247 // this would call when CL3 is a hard gate 1248 if (!activeMeters && data_layer.article.content_level === '3') { 1249 s.eVar59 = templateName; 1250 s.eVar58 = data_layer.article.content_level; 1251 s.events = "event91"; 1252 s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar15,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,eVar79,eVar104,eVar106,eVar107,eVar108,eVar118,prop63,list3,events"; 1253 s.linkTrackEvents="event91"; 1254 s.tl(document, 'o', 'Metered Access Notice'); 1255 s.events = ''; 1256 return; 1257 } 1258 1259 if (!activeMeters) { 1260 return; 1261 } 1262 1263 var meterData = activeMeters[0]; 1264 1265 var meterName = meterData.meterName.toLowerCase(); 1266 1267 // track event 5 1268 if (meterName.indexOf('cl1') !== -1 || meterName.indexOf('cl2') !== -1 || meterName.indexOf('cl3') !== -1 || params.containerSelector === '#po-inline-articlegate-partialarticle' || params.containerSelector === '#po-overlay-articlegate-full-width-scroll-below') { 1269 s.eVar58 = data_layer.article.content_level; 1270 s.eVar80 = meterData.meterName + ',' + meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews; 1271 s.eVar59 = templateName; 1272 s.events = "event5"; 1273 s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3, events"; 1274 s.linkTrackEvents="event5"; 1275 } else { 1276 s.eVar80 = meterData.meterName + ',' + meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews; 1277 s.eVar59 = templateName; 1278 s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3, events"; 1279 } 1280 s.tl(document, 'o', 'Metered Access Notice'); 1281 s.events = ''; 1282 1283} 1284 1285/** 1286 * Just track the template name in 78 for non-article-interrupts/gates 1287 */ 1288function trackPianoSimplified(params, templateName) 1289{ 1290 trackPianoWithNewRelic(templateName); 1291 1292 var s = window.s; 1293 if (!s || !s.pageName) { 1294 // console.log("ADB: Setting s from backup"); 1295 s = window.backupAdobe; 1296 window.s = s; 1297 } 1298 s.eVar78 = templateName; 1299 s.events = 'event90'; 1300 s.linkTrackEvents="event90"; 1301 s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,eVar118,list3,eVar78, events"; 1302 s.tl(document, 'o', 'Piano Template'); 1303} 1304 1305function raiseLaunchEvent(name) {
1306 var e = new Event('launch:piano:' + name); 1307 window.dispatchEvent(e); 1308} 1309 1310function removePianoToast() { 1311 setTimeout(() => { 1312 document.getElementById('po-overlay-toast-left').remove() 1313 }, 30000) 1314} 1315 1316function showPianoTarget(params) { 1317 handleOfferShow(params); 1318 trackLocation(); 1319 1320 if ($(params.containerSelector).length > 0) { 1321 const displayType = $(params.containerSelector).attr('data-display'); 1322 1323 if (displayType) { 1324 $(params.containerSelector).addClass(`shown-${displayType}`); 1325 } else { 1326 $(params.containerSelector).addClass('shown').show(); 1327 } 1328 1329 if ($(params.containerSelector).hasClass('piano--block-level') || $(params.containerSelector).hasClass('piano--inside-block')) { 1330 $(params.containerSelector).show(); 1331 } 1332 1333 if ( 1334 params.containerSelector === '#po-overlay-articlegate-full-width-scroll-below' || 1335 params.containerSelector === '#po-overlay-articlegate-full-width-full-article-scroll-below' 1336 ) { 1337 handleFullWidthBanner(params.containerSelector); 1338 } 1339 1340 if ($(params.containerSelector) === '#po-inline-subscribe-page') { 1341 $(params.containerSelector).show(); 1342 } 1343 1344 if (['#po-inline-blocksystem-target-e'].includes(params.containerSelector)) { 1345 $('#po-inline-blocksystem-target-e').show(); 1346 $('.piano-promo-container').show(); 1347 } 1348 1349 if (params.containerSelector === '#po-overlay-toast-left') { 1350 removePianoToast() 1351 } 1352 1353 if (params.containerSelector === '#po-overlay-toast-main-navigation') { 1354 removePianoToast() 1355 } 1356 1357 if (params.containerSelector === '#po-inline-articlewall-partialarticle-closable') { 1358 $('#po-inline-articlegate-partialarticle').css('display', 'none'); 1359 } 1360 1361 if (params.containerSelector === '#po-inline-articlewall-fullarticle-closable') { 1362 $('#po-inline-articlegate-fullarticle').css('display', 'none'); 1363 } 1364 1365 if (params.containerSelector === '#po-overlay-articlegate-full-width-full-article-scroll-below-closable') { 1366 $('#po-overlay-articlegate-full-width-full-article-scroll-below').css('display', 'none'); 1367 } 1368 } 1369} 1370 1371tp.push(["addHandler", "checkoutComplete", function(conversion) { 1372 var s = window.s; 1373 s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event. 1374 s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event. 1375 s.products = "Subscription : Metered Access;" + conversion.termId + ";1;"+conversion.chargeAmount; 1376 s.linkTrackEvents = "event4,purchase"; 1377 s.purchaseID = conversion.termConversionId; 1378 s.pageName = '(www) /subscribe/complete/'; 1379 // wipe out errors 1380 s.eVar31 = ''; 1381 s.linkTrackVars="eVar2,eVar3,eVar5,eVar6,eVar7,eVar8,eVar9,eVar10,eVar15,eVar16,eVar17,eVar18,eVar19,eVar20,eVar22,eVar23,eVar24,eVar25,eVar26,eVar61,eVar62,events,products,purchaseID"; 1382 1383 s.tl(true, 'o', 'Subscription'); 1384 1385 $.cookie('resourceConverted', conversion.rid, {path: '/', domain: window.data_layer.site.cookie_domain}); 1386 $.cookie('pianoConverted', '1', {path: '/', domain: window.data_layer.site.cookie_domain}); 1387 raiseLaunchEvent('checkoutComplete'); 1388 1389 // Clean Session Storage 1390 sessionStorage.removeItem('nq_selected_offer_id'); 1391 sessionStorage.removeItem('nq_selected_term_id'); 1392 sessionStorage.removeItem('nq_adobe_tracking_article_dimensions'); 1393 sessionStorage.removeItem('nq_adobe_tracking_visiting_dimensions'); 1394 1395 // Show Onboarding modal after subscription 1396 const lastPage = sessionStorage.getItem('last_piano_page_interacted_with'); 1397 const baseUrl = lastPage || window.location.href; 1398 1399 const url = new URL(baseUrl, window.location.origin); 1400 url.searchParams.set('show-onboarding', 'yes'); 1401 1402 setTimeout(() => { 1403 window.location.href = url.pathname + url.search; 1404 }, 2000); 1405}]); 1406 1407tp.push(["addHandler", "checkoutPaymentError", function(errorData) { 1408 var s = window.s; 1409 s.pageName = '(www) /subscribe/error/'; 1410 s.eVar31 = errorData.message; 1411 s.tl(true, 'o', 'CheckoutPaymentError'); 1412 1413 raiseLaunchEvent('checkoutPaymentError'); 1414}]); 1415 1416tp.push(["addHandler", "checkoutError", function(errorData) { 1417 var s = window.s; 1418 s.pageName = '(www) /subscribe/error/'; 1419 s.eVar31 = errorData.message; 1420 s.tl(true, 'o', 'CheckoutError'); 1421 raiseLaunchEvent('checkoutError'); 1422}]); 1423 1424tp.push(["addHandler", "startCheckout", function(options) { 1425 sessionStorage.setItem("nq_selected_offer_id", options.offerId); 1426 sessionStorage.setItem("nq_selected_term_id", options.termId); 1427 1428 if (!tp.user.isUserValid()) { 1429 window.location = '/user/create-account/subscribe/'; 1430 return; 1431 } 1432 1433 var s = window.s; 1434 s.eVar2 = '(www) /subscribe/payment/'; 1435 s.pageName = '(www) /subscribe/payment/'; 1436 const storedAdobeArticleDimensions = sessionStorage.getItem('nq_adobe_tracking_article_dimensions'); 1437 const storedAdobeVisitingDimensions = sessionStorage.getItem('nq_adobe_tracking_visiting_dimensions'); 1438 if (storedAdobeVisitingDimensions) { 1439 const storedAdobeVisitingDimensionsObj = JSON.parse(storedAdobeVisitingDimensions); 1440 s.eVar10 = storedAdobeVisitingDimensionsObj.eVar10; 1441 s.eVar22 = storedAdobeVisitingDimensionsObj.eVar22; 1442 s.eVar23 = storedAdobeVisitingDimensionsObj.eVar23; 1443 s.eVar24 = storedAdobeVisitingDimensionsObj.eVar24; 1444 } 1445 if (storedAdobeArticleDimensions) { 1446 const storedAdobeArticleDimensionsObj = JSON.parse(storedAdobeArticleDimensions); 1447 s.eVar10 = storedAdobeArticleDimensionsObj.eVar10; 1448 s.eVar15 = storedAdobeArticleDimensionsObj.eVar15; 1449 s.eVar22 = storedAdobeArticleDimensionsObj.eVar22; 1450 s.eVar23 = storedAdobeArticleDimensionsObj.eVar23; 1451 s.eVar24 = storedAdobeArticleDimensionsObj.eVar24; 1452 s.eVar25 = storedAdobeArticleDimensionsObj.eVar25; 1453 } 1454 // wipe out errors 1455 s.eVar31 = ''; 1456 s.events = ''; 1457 raiseLaunchEvent('startCheckout'); 1458 s.linkTrackVars="eVar10,eVar15,eVar22,eVar23,eVar24,eVar25"; 1459 s.t(); 1460}]); 1461 1462tp.push(["addHandler", "checkoutClose", function(conversion) { 1463 raiseLaunchEvent('checkoutClose'); 1464 1465 // Did they abandon the cart? If so: was anything in their cart?
1466 if (typeof conversion.state === 'undefined' || conversion.state !== 'close') { 1467 return; 1468 } 1469 if (window.selectedOfferId === null || window.selectedTermId === null) { 1470 return; 1471 } 1472 $.post('/ws/piano/abandoned-cart/', {offer_id: window.selectedOfferId, term_id: window.selectedTermId}); 1473}]); 1474 1475tp.push(["addHandler", "meterExpired", function(meterData){ 1476 var msg = "<div><b>meterName:</b> " + meterData.meterName 1477 + " | <b>views:</b> " + meterData.views 1478 + " | <b>totalViews:</b> " + meterData.totalViews 1479 + " | <b>viewsLeft:</b> " + meterData.viewsLeft 1480 + " | <b>maxViews:</b> " + meterData.maxViews 1481 + " | <b>callback:</b> " + meterData.callback + '</div>'; 1482 if ($.cookie('nq-show-piano-viewer') === 'yes') { 1483 $('#piano-meter-value').html(msg); 1484 $('#piano-meter-display').show(); 1485 $('#piano-meter-display-content').append(msg); 1486 } 1487 var cVal = window.location.href; 1488 1489 trackLocation(true); 1490 1491 console.log("Piano Meter Expired:", meterData.meterName); 1492 if (meterData.meterName === 'CL1 Meter') { 1493 console.log("Piano: Setting meter expired cookie"); 1494 $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); 1495 } 1496 1497 raiseLaunchEvent('meterExpired'); 1498 1499}]); 1500 1501tp.push(["addHandler", "meterActive", function(meterData){ 1502 var msg = "<div><b>meterName:</b> " + meterData.meterName 1503 + " | <b>views:</b> " + meterData.views 1504 + " | <b>totalViews:</b> " + meterData.totalViews 1505 + " | <b>viewsLeft:</b> " + meterData.viewsLeft 1506 + " | <b>maxViews:</b> " + meterData.maxViews 1507 + " | <b>callback:</b> " + meterData.callback + '</div>'; 1508 if ($.cookie('nq-show-piano-viewer') === 'yes') { 1509 $('#piano-meter-value').html(msg); 1510 $('#piano-meter-display').show(); 1511 $('#piano-meter-display-content').append(msg); 1512 } 1513 1514 console.log("Piano Meter running total:", meterData.meterName, meterData.totalViews, meterData.maxViews, meterData); 1515 if (meterData.meterName === 'CL1 Meter' && meterData.totalViews >= meterData.maxViews) { 1516 $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); 1517 } else { 1518 $.cookie('isMeterExpired', 'no', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); 1519 } 1520}]); 1521 1522 1523tp.push(["setCxenseSiteId", "3612210327590544501"]); 1524 1525 1526runPiano('unrestricted'); 1527 1528</script>
1528 1529 1530 1531 1532 <link rel="apple-touch-icon" href="/resources/images/17393857/"> 1533 <link rel="apple-touch-icon" sizes="72x72" href="/resources/images/17393856/"> 1534 <link rel="apple-touch-icon" sizes="114x114" href="/resources/images/17393858/"> 1535 1536 1537 <!-- Add iconify --> 1538
1538<script src="https://code.iconify.design/1/1.0.7/iconify.min.js" integrity="sha384-jQq64HqdQD5xg0PPkpkCOW3x8Nsfx5UT1qWOpoJxLYy6Ef+5i+8xPoAj/I3B+ZMm" crossorigin="anonymous"></script>
1538 1539</head> 1540<body class="sticky-footer" data-cache-buster="vjoPdzgg" data-template="" data-template-colour="Blue" data-namespace="standard"> 1541 <!-- 1542 ##+ +## ##: `#####. ####### ### ### ###### `#####. ####### ### ,## +##### 1543 +## ###' ## ####### ######## ### ### ###### ####### ######## ### ,## ######: 1544 .## #### ## ### ### ### ### ###### ##, ### ### ### ### ### ,## ##` 1545 ##,#+##:## ### ### ####### ###### #####+ ### ### ####### ### ,## +##### 1546 ####`####+ ### ### ###### ####### #####+ ### ### ###### ### ,## #### 1547 #### .###. '## ##' ### ### ### ,##: ##, '## ##' ### ### ### ### '## +## 1548 :### ### ####### ### `##+ ### ### ##, ####### ### `##+ `####### ######+ 1549 ##: ### ##### ### ### ### ,### ##, ##### ### ### ##### ####+ 1550 1551Developers, designers, testers - interested in working for us? 1552Contact this guy....https://uk.linkedin.com/in/hillsimon 1553--> 1554 1555 1556 <div style="height: 0px"><div id="DFP_out_of_page"></div></div> 1557 1558 <div id="paywallWindowOverlay"></div> 1559 1560 1561 1562 <div id="takeover"> 1563 <div id="martini-config" class="layout"> 1564 <div id="header-content"> 1565 <!-- standard - header-1.html --> <header id="site-header" class="site-header site-header--1 header-bottom-margin" > 1566 1567 <div class="header-topnav" role="navigation" aria-label="top-navigation"> 1568 1569 <div class="container-inner-width"> 1570 <div class="header-topnav-links"> 1571 <ul class="list-style-none"> 1572 <li><a class="mar-nav--promo-link" href="/announcements/public_notices/">Public notices</a></li> <li><a class="mar-nav--promo-link" href="/newsletters/">Newsletters</a></li> <li><a class="mar-nav--promo-link" href="/jobs/">Jobs</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book an ad</a></li> <li><a class="mar-nav--promo-link" href="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">Homes</a></li> <li><a class="mar-nav--promo-link" href="https://directory.brentwoodlive.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> 1573 </ul> 1574 </div> 1575 <ul id="links-nav" class="header-topnav--links-nav list-style-none"> 1576 <li class="links-nav-label"><span class="links-nav-label-text">More</span> 1577 <ul class="list-style-none"> 1578 <li class="dropdown-icon-closed"> 1579 <span class="iconify" data-icon="akar-icons:chevron-down"></span> 1580 </li> 1581 <li class="dropdown-icon-open" style="display: none;"> 1582 <span class="iconify" data-icon="akar-icons:chevron-up"></span> 1583 </li> 1584 1585 <li class="links-nav-container"> 1586 <ul class="list-style-none"> 1587 <li><a class="mar-nav--promo-link" href="/announcements/public_notices/">Public notices</a></li> <li><a class="mar-nav--promo-link" href="/newsletters/">Newsletters</a></li> <li><a class="mar-nav--promo-link" href="/jobs/">Jobs</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book an ad</a></li> <li><a class="mar-nav--promo-link" href="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">Homes</a></li> <li><a class="mar-nav--promo-link" href="https://directory.brentwoodlive.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> 1588 </ul> 1589 </li> 1590 </ul> 1591 </li> 1592 </ul> 1593 </div> 1594 1595 </div> 1596 1597 <div class="site-brand container-inner-width"> 1598 <div class="site-brand__container"> 1599 <a href="/"> 1600 <img src="/resources/images/small_site_logo/" alt="Brentwood Live" class="site-brand__brand-image"/> 1601 </a> 1602 </div> 1603 <div class="simple-header-top-navigation"> 1604 <div class="simple-header-top-navigation__links"> 1605 1606 <div class="simple-header-top-navigation__links--primary-links header-primary-links"> 1607 1608 1609 1610 <ul class="list-style-none top-nav-overflow"> 1611 <li><a href="/newsletters/" class="mar-btn mar-btn--promo-primary">Newsletters</a></li> 1612 </ul> 1613 1614 </div> 1615 1616 1617 1618 <div class="simple-header-top-navigation__links--classifieds"> 1619 1620 </div> 1621 1622 1623 1624 </div> 1625 1626 <div class="simple-header-top-navigation__links--account"> 1627 1628 <a id="user-login-not-loggedin" href="/user/login/?redirect_url=/user/account/" class="simple-header-top-navigation__user-login mar-btn" title="User Account"> 1629 <div aria-label="User Account Button" id="headerUserAccountButton"> 1630 <svg xmlns="http://www.w3.org/2000/svg " width="14" height="16" viewB
1630ox="0 0 10 14" fill="none"> 1631<circle cx="5" cy="3.85718" r="3" fill="black"/> 1632<ellipse cx="5" cy="10.2857" rx="5" ry="2.85714" fill="black"/> 1633</svg> 1634 </div> 1635 </a> 1636 1637 </div> 1638 1639 1640 <button aria-expanded="false" aria-label="Open the menu" class="simple-header-top-navigation__mega-menu-btn primary-nav__menu--more-btn"> 1641 <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M3 6h18M3 12h18M3 18h18"/></svg> 1642 </button> 1643 1644</div> 1645 </div> 1646 1647 <div id="mega-menu" class="mega-menu" style="display: none;"> 1648 <div class="mega-menu__container mega-menu__wrapper"> 1649 <div class="mega-menu__cancel-button"> 1650 <i aria-expanded="true" aria-hidden="true" aria-label="Close the menu" class="mega-menu__cancel-button--icon"> 1651 <span class="iconify" data-icon="eva:close-fill" data-inline="false"></span> 1652 <div>Close</div> 1653 </i> 1654 </div> 1655 1656 1657 1658 1659 <div class="mega-menu__features expanded-sub-nav"> 1660 <div class="mega-menu__features--links"> 1661 1662 <h4 class="prefix mega-menu__features--prefix link-item">Featured newsletters</h4> 1663 1664 <a href="/newsletters/922/" class="col link-item">Daily Catch-up</a> 1665 1666 1667 <a href="/newsletters/" class="col link-item">Breaking News Alerts</a> 1668 1669 1670 <a href="/newsletters/921/" class="col link-item">Sports AM</a> 1671 1672 </div> 1673 <hr class="divider none"> 1674 </div> 1675 1676 1677 <div class="mega-menu__search"> 1678 <form method="get" action="/search/"> 1679 <label class="mega-menu__search--title" for="searchbar-input">Search</label> 1680 <div class="mega-menu__search--bar"> 1681 <input id="searchbar-input" class="searchbar-input" type="text" name="search" placeholder="Search Brentwood Live"> 1682 <button class="searchbar-btn mira-search-button" type="submit"><span class="iconify" data-icon="fe:search" data-inline="false"></span></button> 1683 </div> 1684 </form> 1685 </div> 1686 1687 <div class="mega-menu__main-list link-list"> 1688 <div class="mega-menu__main-list--list-item"> 1689 <div> 1690 <div> 1691 <a href="/news/"> 1692 <h3><span class="mega-menu__main-list--parent-link">News</span></h3> 1693 </a> 1694 </div> 1695 1696 <div class="mega-menu__main-list--child-links"> 1697 <div class="child-item"> 1698 <a href="/news/localnews/">Local news</a> 1699 </div> 1700 1701 1702 <div class="child-item"> 1703 <a href="/news/chelmsfordnews/">Chelmsford News</a> 1704 </div> 1705 </div> 1706 1707 </div> 1708 <div class="divider"></div> 1709 </div> 1710 1711 1712 <div class="mega-menu__main-list--list-item"> 1713 <div> 1714 <div> 1715 <a href="/sport/"> 1716 <h3><span class="mega-menu__main-list--parent-link">Sport</span></h3> 1717 </a> 1718 </div> 1719 1720 <div class="mega-menu__main-list--child-links"> 1721 <div class="child-item"> 1722 <a href="/sport/localsport/">Local Sport</a> 1723 </div> 1724 1725 1726 <div class="child-item"> 1727 <a href="/sport/cricket/">Cricket</a> 1728 </div> 1729 1730 1731 <div class="child-item"> 1732 <a href="/sport/national/">UK Sport News</a> 1733 </div> 1734 </div> 1735 1736 </div> 1737 <div class="divider"></div> 1738 </div> 1739 1740 1741 <div class="mega-menu__main-list--list-item"> 1742 <div> 1743 <div> 1744 <a href="/leisure/"> 1745 <h3><span class="mega-menu__main-list--parent-link">What's On</span></h3> 1746 </a> 1747 </div> 1748 1749 <div class="mega-menu__main-list--child-links"> 1750 <div class="child-item"> 1751 <a href="/leisure/local-events/">Local Events</a> 1752 </div> 1753 1754 1755 <div class="child-item"> 1756 <a href="/leisure/readertravel/">Reader Travel</a> 1757 </div> 1758 1759 1760 <div class="child-item"> 1761 <a href="/leisure/national/">UK Entertainment News</a> 1762 </div> 1763 </div> 1764 1765 </div> 1766 <div class="divider"></div> 1767 </div> 1768 1769 1770 <div class="mega-menu__main-list--list-item"> 1771 <div> 1772 <div> 1773 <a href="/offers/"> 1774 <h3><span class="mega-menu__main-list--parent-link">Offers</span></h3> 1775 </a> 1776 </div> 1777 1778 </div> 1779 <div class="divider"></div> 1780 </div> 1781 1782 1783 <div class="mega-menu__main-list--list-item"> 1784 <div> 1785 <div> 1786 <a href="/notices/"> 1787 <h3><span class="mega-menu__main-list--parent-link">Notices</span></h3> 1788 </a> 1789 </div> 1790 1791 <div class="mega-menu__main-list--child-links"> 1792 <div class="child-item"> 1793 <a href="/notices/bereavement-guide/">Bereavement Guide</a> 1794 </div> 1795 </div> 1796 1797 </div> 1798 <div class="divider"></div> 1799 </div> 1800 1801 1802 <div class="mega-menu__main-list--list-item"> 1803 <div> 1804 <div> 1805 <a href="/eedition/"> 1806 <h3><span class="mega-menu__main-list--parent-link">e-Editions</span></h3> 1807 </a> 1808 </div> 1809 1810 </div> 1811 <div class="divider"></div> 1812 </div> 1813 </div> 1814 </div> 1815 1816 <div class="mega-menu__sticky"> 1817 <ul class="list-style-none mega-menu__sticky--list"> 1818 <div class="mega-menu__sticky--primary-links"> 1819 1820 <li><a href="/newsletters/" class="mar-btn mar-btn--promo-primary">Newsletters</a></li> 1821 </div> 1822 <li><a class="mar-nav--promo-link" href="/announcements/public_notices/">Public notices</a></li> <li><a class="mar-nav--promo-link" href="/newsletters/">Newsletters</a></li> <li><a class="mar-nav--promo-link" href="/jobs/">Jobs</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book an ad</a></li> <li><a class="mar-nav--promo-link" href="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">
1822Homes</a></li> <li><a class="mar-nav--promo-link" href="https://directory.brentwoodlive.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> 1823 </ul> 1824 </div> 1825</div> 1826 1827 1828 <!-- standard - SimplePrimaryNavigation.html --> <nav aria-label="Main navigation" id="primary-nav" class="primary-nav"> 1829 <div class="primary-nav__container container-inner-width"> 1830 <span class="primary-nav__left"> 1831 <nav class="primary-nav__menu"> 1832 <div class="primary-nav__menu-container"> 1833 <div class="primary-nav__menu--item"> 1834 <a class="primary-nav__menu--link" href="/news/">News</a> 1835 </div> 1836 1837 1838 <div class="primary-nav__menu--item"> 1839 <a class="primary-nav__menu--link" href="/sport/">Sport</a> 1840 </div> 1841 1842 1843 <div class="primary-nav__menu--item"> 1844 <a class="primary-nav__menu--link" href="/leisure/">What's On</a> 1845 </div> 1846 1847 1848 <div class="primary-nav__menu--item"> 1849 <a class="primary-nav__menu--link" href="/offers/">Offers</a> 1850 </div> 1851 1852 1853 <div class="primary-nav__menu--item"> 1854 <a class="primary-nav__menu--link" href="/notices/">Notices</a> 1855 </div> 1856 1857 1858 <div class="primary-nav__menu--item"> 1859 <a class="primary-nav__menu--link" href="/eedition/">e-Editions</a> 1860 </div> 1861 </div> 1862 </nav> 1863 </span> 1864 <span class="primary-nav__right"> 1865 <div class="primary-nav__menu--more-btn"> 1866 <button aria-expanded="false" aria-label="Open the menu" class="more-link more-burger-icon"> 1867 <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M3 6h18M3 12h18M3 18h18"/></svg> 1868 </button> 1869 </div> 1870 <div class="primary-nav__right--search"> 1871 <a class="primary-nav__container--search-icon search-icon" href="#" aria-label="Search for article"><span class="iconify" data-icon="ion:search-circle-sharp" data-inline="false"></span></a> 1872 </div> 1873 </span> 1874 </div> 1875</nav> 1876 1877 1878 1879 1880 1881 1882</header> 1883 </div> 1884 1885 <div id="redesign-content"> 1886 <div id="module-content" class="content"> 1887 <div class="piano--block-level block-bottom-margin" id="po-inline-banner-top-hero-content"></div> 1888 1889 1890 <!-- standard - ContactUs.html --> <div class="block-contact-us" aria-labelledby="contact-help-heading"> 1891 <h1 id="contact-help-heading" class="block-heading">Contact & Help</h1> 1892 <p class="block-contact-us__intro"> 1893 In need of help, support, or need to contact us, hopefully you’ll find the information you need below... 1894 </p> 1895 1896 <h2 class="block-heading" id="customer-support-heading">Customer Support</h2> 1897 <div class="block-contact-us__cta-section" aria-labelledby="customer-support-heading"> 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 <div class="cta-item"> 1909 <a href="/contact/faq/general-support/" class="mar-btn mar-btn--md mar-btn--dark">General Support</a> 1910 <p>Help & questions about technical, account, or any other issues you may be experiencing with any of 1911 our products</p> 1912 </div> 1913 </div> 1914 1915 <div class="block-contact-us__grid_container"> 1916 <div> 1917 <div class="social-field" style="display: none;"> 1918 <p class="social-field-text">Follow us</p> 1919 <!-- standard - SocialBar.html --> <div class="social-bar "> 1920 <!-- standard - SocialShareButton.html --> <div 1921 aria-label="Share" 1922 class="social-share-button mar-btn" 1923 id="social-share-button"> 1924 <p class="social-share-button__text" aria-label="Share">Share</p> 1925 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
1925ox="0 0 16 16" fill="none"> 1926 <path d="M11.6113 1.5C11.9036 1.49999 12.1919 1.57147 12.4535 1.70882C12.7152 1.84616 12.943 2.04562 13.119 2.2915C13.2951 2.53738 13.4146 2.82297 13.4682 3.12578C13.5217 3.4286 13.5079 3.74038 13.4277 4.0366C13.3475 4.33281 13.2032 4.60537 13.006 4.83282C12.8089 5.06027 12.5644 5.23641 12.2918 5.34737C12.0191 5.45834 11.7257 5.5011 11.4347 5.47229C11.1437 5.44348 10.863 5.34389 10.6148 5.18135C10.595 5.195 10.5746 5.20756 10.5536 5.21899L5.94303 7.73788C5.94569 7.80155 5.94569 7.86531 5.94303 7.92897L5.95196 7.93476L10.3586 10.6867C10.688 10.379 11.109 10.2021 11.5489 10.1867C11.9889 10.1714 12.4201 10.3184 12.7681 10.6025C13.1161 10.8865 13.3591 11.2898 13.455 11.7425C13.5509 12.1953 13.4937 12.6691 13.2933 13.0822C13.0929 13.4953 12.762 13.8216 12.3576 14.0048C11.9532 14.1881 11.5008 14.2167 11.0785 14.0857C10.6562 13.9548 10.2906 13.6725 10.0447 13.2877C9.79893 12.9029 9.68839 12.4396 9.73221 11.978L5.37504 9.25791C5.10887 9.53171 4.77193 9.71659 4.40645 9.78938C4.04098 9.86216 3.66325 9.81961 3.32064 9.66705C2.97802 9.51449 2.68577 9.25872 2.48054 8.93181C2.27531 8.6049 2.16624 8.22141 2.167 7.82943C2.16775 7.43745 2.27831 7.05444 2.4848 6.72841C2.69129 6.40239 2.98453 6.14787 3.32773 5.99679C3.67093 5.8457 4.04882 5.80477 4.41401 5.87912C4.7792 5.95347 5.11543 6.1398 5.38053 6.41474L9.78647 4.00731C9.71119 3.71225 9.70138 3.40289 9.7578 3.10318C9.81421 2.80348 9.93533 2.52149 10.1118 2.27906C10.2882 2.03662 10.5153 1.84025 10.7753 1.70515C11.0354 1.57005 11.3214 1.49985 11.6113 1.5Z" fill="#222222"/> 1927 </svg> 1928</div> 1929 1930 1931 1932 1933</div> 1934 1935 </div> 1936 <div class="block-contact-us__grid_container--card" aria-labelledby="main-details-heading"> 1937 <div id="main-details-heading" class="block-contact-us__grid_container--card-heading block-heading">Main 1938 Details</div> 1939 1940 <div class="block-contact-us__grid_container--card-title">Address:</div> 1941 <address class="block-contact-us__grid_container--card-small-text"> 1942 1943 Brentwood Live, 1944 1945 1946 91 Orsett Road, 1947 1948 1949 1950 Grays, 1951 1952 1953 Essex, 1954 1955 1956 RM17 5EX 1957 1958 </address> 1959 1960 <div class="block-contact-us__grid_container--card-title block-contact-us__spacing ">Telephone:</div> 1961 <div class="block-contact-us__grid_container--card-small-text"> 1962 <a href="tel:(01268) 522792" 1963 aria-label="Call (01268) 522792">(01268) 522792</a> 1964 </div> 1965 1966 1967 1968 <div class="block-contact-us__grid_container--card-panel"> 1969 Inside the newsroom - 1970 <a href="/author/journalists/"> View all our journalists</a> 1971 </div> 1972 1973 <div class="block-contact-us__grid_container--card-title block-contact-us__spacing">Editor:</div> 1974 <div 1975 class="block-contact-us__grid_container--card-small-text block-contact-us__grid_container--card-link"> 1976 Sean Davies 1977 <a href="mailto:[email protected]">[email protected]</a> 1978 <span aria-label="Editor telephone"></span> 1979 </div> 1980 1981 1982 1983 1984 </div> 1985 1986 <div class="block-contact-us__grid_container--banner" aria-labelledby="get-involved-heading"> 1987 <div id="get-involved-heading" class="block-contact-us__grid_container--banner-heading block-heading"> 1988 Get <em>involved</em> with the news 1989 </div> 1990 <div class="block-contact-us__grid_container--banner-content"> 1991 <div class="block-contact-us__grid_container--banner-text"> 1992 Got a story, lead, picture, or video you would like to share with us? 1993 </div> 1994 <div> 1995 <a href="/send-us-your-news/" class="mar-btn mar-btn--md mar-btn--light"> 1996 Send us your news 1997 </a> 1998 </div> 1999 </div> 2000 </div> 2001 2002 2003 <div class="block-contact-us__grid_container--card" aria-labelledby="commercial-heading"> 2004 <div id="commercial-heading" class="block-contact-us__grid_container--card-heading block-heading"> 2005 Commercial</div> 2006 <p> 2007 <a href="/advertising/" class="mar-btn mar-btn--md mar-btn--dark">Book an advert</a> 2008 </p> 2009 <div class="block-contact-us__grid_container--card-title block-contact-us__spacing ">Advertising:</div> 2010 <div class="block-contact-us__grid_container--card-small-text"> 2011 <div class="block-contact-us__grid_container--card-link"> 2012 <a href="mailto:[email protected]"> 2013 [email protected] 2014 </a>
2015 <span aria-label="Advertising telephone">(0208) 7226417</span> 2016 </div> 2017 </div> 2018 2019 <div class="block-contact-us__grid_container--card-title block-contact-us__spacing">Recruitment:</div> 2020 <div class="block-contact-us__grid_container--card-small-text"> 2021 <div class="block-contact-us__grid_container--card-link"> 2022 <a href="mailto:[email protected]"> 2023 [email protected] 2024 </a> 2025 <span aria-label="Recruitment telephone">(0800) 9520111</span> 2026 </div> 2027 </div> 2028 2029 </div> 2030 2031 2032 2033 </div> 2034 <!-- end of grid 1 container --> 2035 <div> 2036 2037 <div class="block-contact-us__seo-section" aria-labelledby="localiq-heading"> 2038 <img src="/resources/responsive-static/images/LocaliQ.svg" alt="LOCALiQ logo"> 2039 <h2 id="localiq-heading">Digital Marketing Services from LOCALiQ in 2040 <a href="https://localiq.co.uk/locations/basildon?utm_source=Brentwood_Live&utm_medium=referral&utm_campaign=Contact_Us_Page" target="_blank" rel="nofollow">Basildon 2041 </a> 2042 </h2> 2043 <p> 2044 <strong>LOCALiQ</strong> 2045 is an award-winning Digital Marketing Agency, specialising in local marketing and accelerating 2046 growth for UK businesses. 2047 Part of <strong> Newsquest Media Group Ltd,</strong> publisher of The Brentwood Live, LOCALiQ is 2048 based in over 2049 <strong> 2050 <a href="https://localiq.co.uk/locations?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2051 rel="nofollow" target="_blank"> 2052 35 UK locations 2053 </a> 2054 </strong> and delivers exceptional results for B2B, B2C, e-commerce and services businesses. 2055 </p> 2056 2057 <div class="extra-text"> 2058 <a href="https://localiq.co.uk/digital-marketing-services/ppc?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2059 target="_blank" rel="nofollow">PPC,</a> 2060 <a href="https://localiq.co.uk/digital-marketing-services/seo?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2061 target="_blank" rel="nofollow"> SEO,</a> and 2062 <a href="https://localiq.co.uk/digital-marketing-services/web-design?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2063 target="_blank" rel="nofollow"> Website Design</a> are just some of the solutions LOCALiQ can 2064 support your business with. 2065 </div> 2066 <div class="cta-section"> 2067 <div class="mar-btn mar-btn--md mar-btn--dark"> 2068 <a href="https://localiq.co.uk/digital-marketing-services?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2069 target="_blank" rel="nofollow">View our digital marketing services 2070 </a> 2071 </div> 2072 <p> or 2073 <strong> 2074 <a href="https://localiq.co.uk/contact-us?utm_source=NQ&utm_medium=referral++&utm_campaign=contact" 2075 target="_blank" rel="nofollow" class="contact-us-link">Contact us</a> 2076 </strong> 2077 </p> 2078 </div> 2079 </div> 2080 2081 <div class="block-contact-us__grid_container--card" aria-labelledby="notices-heading"> 2082 <div id="notices-heading" class="block-contact-us__grid_container--card-heading block-heading">Notices 2083 and Announcements 2084 </div> 2085 <div class="block-contact-us__grid_container--card-text"> 2086 <p>
2086Remember the life of a loved one with a notice in the newspaper and an online notice page for 2087 friends and 2088 family, or celebrate a happy occasion</p> 2089 </div> 2090 <a href="/notices/self-service/category" 2091 class="mar-btn mar-btn--md mar-btn--dark block-contact-us__spacing"> 2092 Book a death notice 2093 </a> 2094 <a href="https://selfservice.newsquest.co.uk/TouchpointSS/SDE#/" 2095 class="mar-btn mar-btn--md mar-btn--promo-secondary block-contact-us__spacing"> 2096 Book a celebration announcement 2097 </a> 2098 </div> 2099 <div class="block-contact-us__grid_container--card" aria-labelledby="careers-heading"> 2100 <div id="careers-heading" class="block-contact-us__grid_container--card-heading block-heading">Careers 2101 </div> 2102 <div class="block-contact-us__grid_container--card-text"> 2103 <p> 2104 <strong>The Brentwood Live</strong> is part of 2105 <strong><a class="nq-link" href="https://www.newsquest.co.uk/">Newsquest Media 2106 Group</a></strong>, 2107 a leading local news & magazine publisher 2108 with a portfolio of more than 200 brands. 2109 </p> 2110 <div class="block-contact-us__grid_container--card-other-link"> 2111 <a href="https://www.newsquest.co.uk/careers">What we offer</a> 2112 <a href="https://careers.newsquest.co.uk/#js-careers-jobs-block">Current vacancies</a> 2113 </div> 2114 </div> 2115 </div> 2116 <div class="block-contact-us__grid_container--card" aria-labelledby="policies-heading"> 2117 <div id="policies-heading" class="block-contact-us__grid_container--card-heading block-heading">Policies 2118 & T&Cs</div> 2119 <div class="block-contact-us__grid_container--card-text"> 2120 <p> 2121 To view our full policies including 2122 <a class="nq-link" href="https://www.newsquest.co.uk/legal/terms-conditions/">Terms & 2123 Conditions</a>, 2124 <a class="nq-link" href="https://www.newsquest.co.uk/terms-of-advertising">Terms of 2125 Advertising</a>, 2126 <a class="nq-link" href="https://www.newsquest.co.uk/legal/contributor-terms/">Contributor 2127 Terms</a>, 2128 <a class="nq-link" href="https://www.newsquest.co.uk/domains">Information for Domain Name 2129 Customers</a>, 2130 use the links provided. 2131 For more... 2132 2133 </p> 2134 <div class="block-contact-us__grid_container--card-other-link"> 2135 <span>Visit</span> <a href="https://www.newsquest.co.uk/">www.newsquest.co.uk</a> 2136 </div> 2137 </div> 2138 </div> 2139 </div> 2140 <!-- end of grid 1 container --> 2141 </div> 2142</div> 2143 </div> 2144 </div> 2145 2146 <footer class="site-footer" aria-label="site-footer"> 2147 <div class="container-inner-width"> 2148 <div class="links-grid" aria-label="site-footer-links"> 2149 <section class="get-in-touch-section"> 2150 <h2>Get in Touch</h2> 2151 <a href="/contact/">Contact Us</a><a href="/advertising/">Advertise</a><a href="/send-us-your-news/">Send Us Your News</a><a href="/submit-an-event/">Add Your Event For Free</a><a href="/publications/">Our Publications</a> 2152 </section> 2153 <section class="follow-us-section"> 2154 <h2>Follow Us</h2> 2155<a 2156 class="footer__social-media--link" 2157 href="https://www.facebook.com/BrentwoodLiveNews/" 2158 title="Brentwood Weekly News" 2159 role="link" 2160 data-media-type="facebook" 2161 >
2162 <i class="footer__social-media--icon iconify"></i> 2163 Brentwood Weekly News 2164 </a> 2165 2166 2167 <a 2168 class="footer__social-media--link" 2169 href="https://twitter.com/BrentwoodLive" 2170 title="Brentwood Weekly News" 2171 role="link" 2172 data-media-type="twitter" 2173 > 2174 <i class="footer__social-media--icon iconify"></i> 2175 Brentwood Weekly News 2176 </a> 2177 </section> 2178 <section class="useful-links-section"> 2179 <h2>Useful Links</h2> 2180 <div class="useful-links"> 2181 <section> 2182 <a href="/subscribe/">Subscriptions</a><a href="/newsletters/">Newsletters</a><a href="/notices/">Death Notices</a><a href="/announcements/">Announcements</a><a href="/announcements/public_notices/">Public Notices</a> 2183 </section> 2184 <section> 2185 <a href="https://www.exchangeandmart.co.uk/" target="_blank">Exchange and Mart</a><a href="https://newsquest.newsprints.co.uk/" target="_blank">Photo Sales</a><a href="http://leap.brentwoodweeklynews.co.uk" target="_block">Leap</a><a href="/archive/" style="display: inline-block">Archive</a> | <a href="/misc/sitemap/" style="display: inline-block">Sitemap</a><a href="/gdpr/" class="gdpr-option-v2" data-v2-id="1170586" data-is-gate="yes" rel="nofollow">Manage Consent</a><a href="https://www.newsquest.co.uk/legal/ai-notice/" target="_blank">AI Notice</a> 2186 </section> 2187 </div> 2188 </section> 2189 <section class="ipso-terms"> 2190 <img class="ipso-logo" src="/resources/responsive-static/mds/images/ipso-regulated.png" alt="IPSO Regulated image" /> 2191 <p class="ipso-copy">This website and associated newspapers adhere to the Independent Press Standards Organisation's 2192 Editors' Code of Practice. If you have a complaint about the editorial content which relates to 2193 inaccuracy or intrusion, then please <a class="footer__ipso-terms--link" href="/contact"> 2194 contact the editor here</a>. 2195 If you are dissatisfied with the response provided you can 2196 <a class="footer__ipso-terms--link" href="https://www.ipso.co.uk/contact-us/" target="_block">contact IPSO here</a></p> 2197 </section> 2198 </div> 2199 <div class="notice" aria-label="site-footer-notice"> 2200 <img src="/resources/responsive-static/mds/images/newsquest.png" alt="Newsquest" style="width: 193px"/> 2201 <p><strong>© 2001-2026. The Brentwood Live</strong> is owned and operated by Newsquest Media Group Ltd, an audited local newspaper network.</p> 2202 <p>Visit <a href="https://www.newsquest.co.uk/" target="_blank">newsquest.co.uk</a> to view our <a href="https://www.newsquest.co.uk/our-policies/" target="_blank">policies</a>, <a href="https://www.newsquest.co.uk/legal/" target="_blank" >terms</a> and <a href="https://www.newsquest.co.uk/legal/" target="_blank" >legal agreements</a>.</p> 2203 <p>The Echo Building, 18 Albert Road, Bournemouth, England BH1 1BZ. Registered in England & Wales | 01676637</p> 2204 </div> 2205 </div> 2206</footer> 2207 2208 2209 <div id="fb-root"></div> 2210 2211 2212 </div> 2213 </div> 2214 2215 2216 2217 <div class="mar-modal-container mar-modal-container--animate mar-modal-container--animate-out visually-hidden"> 2218 <div class="mar-modal-overlay" data-uses-js="close-modal"></div> 2219 2220 <div aria-label="Pop up dialog" class="mar-modal" tabindex="-1" role="dialog"> 2221 <div class="mar-modal__header"> 2222 <h3 class="mar-modal__title">Modal headline</h3> 2223 2224 <div class="mar-modal__close" data-uses-js="close-modal"> 2225<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"> 2226 <path fill-rule="evenodd" clip-rule="evenodd" d="M7.60714 6L11.6518 10.0446C11.7589 10.1518 11.8438 10.2768 11.9062 10.4196C11.9688 10.5625 12 10.7143 12 10.875C12 11.1786 11.8884 11.442 11.6652 11.6652C11.442 11.8884 11.1696 12 10.8482 12C10.6875 12 10.5357 11.9688 10.3929 11.9062C10.25 11.8438 10.1339 11.7589 10.0446 11.6518L6 7.60714L1.95536 11.6518C1.84821 11.7589 1.72321 11.8438 1.58036 11.9062
2226C1.4375 11.9688 1.28572 12 1.125 12C0.821427 12 0.558037 11.8884 0.334821 11.6652C0.111606 11.442 0 11.1786 0 10.875C0 10.7143 0.0312497 10.5625 0.09375 10.4196C0.15625 10.2768 0.241071 10.1518 0.348214 10.0446L4.36607 6L0.348214 1.95536C0.241071 1.84821 0.15625 1.72768 0.09375 1.59375C0.0312497 1.45982 0 1.3125 0 1.15179C0 0.830355 0.111606 0.558037 0.334821 0.334821C0.558037 0.111606 0.821427 0 1.125 0C1.28572 0 1.4375 0.0312497 1.58036 0.09375C1.72321 0.15625 1.84821 0.241071 1.95536 0.348214L6 4.39286L10.0446 0.348214C10.1339 0.241071 10.25 0.15625 10.3929 0.09375C10.5357 0.0312497 10.6875 0 10.8482 0C11.1696 0 11.442 0.111606 11.6652 0.334821C11.8884 0.558037 12 0.830355 12 1.15179C12 1.3125 11.9688 1.45982 11.9062 1.59375C11.8438 1.72768 11.7589 1.84821 11.6518 1.95536L7.60714 6Z" fill="#9DA0A4"/> 2227</svg> 2228 2229 2230 <span>Close</span> 2231 </div> 2232 </div> 2233 2234 <div class="mar-modal__body">Automatically injected HTML goes here</div> 2235 2236 <div class="mar-modal__actions"> 2237<!-- standard - Buttons.html --> 2238 2239<button 2240 type="button" 2241 data-uses-js="modal-submit" 2242 2243 class=" mar-btn 2244 mar-btn--light 2245 mar-btn--md 2246 2247 2248 " 2249> 2250 Submit 2251</button> 2252 2253 2254 2255 2256<!-- standard - Buttons.html --> 2257 2258<button 2259 type="button" 2260 data-uses-js="modal-cancel" 2261 2262 class=" mar-btn 2263 mar-btn--outline 2264 mar-btn--md 2265 2266 2267 " 2268> 2269 Cancel 2270</button> 2271 2272 2273 2274 </div> 2275 </div> 2276</div> 2277 2278</body> 2279 2280<div id="outbrain-holder"> 2281 <div id="DFP_standard_mpu_3"></div> 2282 <div id="DFP_standard_mpu_4"></div> 2283 <div id="DFP_standard_mpu_5"></div> 2284 <div id="DFP_standard_mpu_6"></div> 2285 <div id="DFP_standard_mpu_7"></div> 2286</div>
2287<script> 2288 2289const elementToObserve = document.querySelector("#outbrain-holder"); 2290 2291// create a new instance of `MutationObserver` named `observer`, 2292// passing it a callback function 2293const observer = new MutationObserver(function(e) { 2294 $.each(e, function(j, obs) { 2295 $.each(obs.removedNodes, function (i, node) { 2296 var id = $(node).attr('id'); 2297 addAdSlot(id, id.replace('DFP_', '')); 2298 }); 2299 }); 2300}); 2301 2302// call `observe()` on that MutationObserver instance, 2303// passing it the element to observe, and the options object 2304observer.observe(elementToObserve, {subtree: true, childList: true}); 2305</script>
2305 2306
2307<script> 2308window.domComplete = performance.now(); 2309</script>
2309 2310
2311<script type="text/javascript"> 2312path = document.location.href.split("/"); 2313var prop30 = qs.get('lp'); 2314var prop43 = qs.get('ref'); 2315var pType="Newsquest\Modules\ContactUsModule" 2316 2317if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') { 2318 pType = 'ArticleModule'; 2319} 2320for(x=4; x<7; x++) 2321{ 2322 if (typeof path[x] == 'undefined') 2323 { 2324 path[x] = ''; 2325 } 2326 if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1)) 2327 { 2328 path[x] = path[x-1]; 2329 } 2330 else 2331 { 2332 path[x] = path[x-1] + "/" + path[x]; 2333 } 2334 path[x] = path[x].replace(/\/undefined/g,""); 2335} 2336sitename = path[2].split("."); 2337 2338pathN= unescape(document.location.pathname.toString()); 2339matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/); 2340detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/); 2341if (detailMatches !== null && detailMatches.length > 1) 2342{ 2343 matches = detailMatches; 2344} 2345 2346if (matches !== null && matches.length > 1) 2347{ 2348 var subfolder = ''; 2349 path[3] = 'li'; 2350 path[4] = 'li/'+subfolder; 2351 path[5] = 'li/'+subfolder+'/'+matches[1]; 2352 path[6] = 'li/'+subfolder+'/'+matches[1]; 2353} 2354if (pathN === '/') 2355{ 2356 path[3] = 'homepage'; 2357 path[4] = 'homepage'; 2358 path[5] = 'homepage'; 2359 path[6] = 'homepage'; 2360} 2361 2362 2363function filterArray(arr) { 2364 var retArr = []; 2365 $.each(arr, function(i, part) { 2366 if (part !== '') { 2367 retArr.push(part); 2368 } 2369 }); 2370 2371 return retArr; 2372} 2373</script>
2373 2374 2375
2376<script type="text/javascript"> 2377var known = $.cookie('__siren') ? '1' : '0' ; 2378</script>
2378 2379
2380<script type="text/javascript"> 2381 2382var known = $.cookie('__siren') ? '1' : '0' ; 2383var ref = document.referrer; 2384var parser = document.createElement('a'); 2385parser.href = ref; 2386 2387// values in the below MUST be strings 2388var targeting = { 2389 'context': '', 2390 2391 'domain': 'www.brentwoodlive.co.uk', 2392 'isLanding': 'yes', 2393 'top_path': 'contact', 2394 'weather': 'sun'.toLowerCase(), 2395 'jbsjs': ''.toLowerCase(), 2396 'site_search': '', 2397 'bmd_cat': '', 2398 'wt': '11-15', 2399 'cmpid': qs.get('cmpid'), 2400 'refdm': parser.hostname, 2401 'k': known, 2402 'g': 'u' , 2403 'a': '0' , 2404 'topic': '', 2405 'publication': '', 2406 'primary_tag_future_use': '', 2407 'site': (isMobile()) ? 'mobile': 'desktop', 2408 'r': data_layer.user.subscription_plan !== '' 2409 ? '2' // 2 = subscribed 2410 : data_layer.user.is_logged_in == 'yes' 2411 ? '1' // 1 = registered 2412 : '0', // 0 = anonymous 2413}; 2414 2415if (!usePrebid) { 2416 targeting.adrq = 'adl'; 2417} 2418 2419if (data_layer.video.exists === 'yes') { 2420 targeting.ptype = 'video'; 2421} 2422 2423if ($.cookie('isMeterExpired') === 'yes' && window.data_layer.article.is_article) { 2424 var articleContentLevel = parseInt(window.data_layer.article.content_level, 10) || 0; // account for NaN 2425 if (articleContentLevel !== 0 && window.data_layer.article.content_level_open_access === 'no') { 2426 targeting.ao = 'y'; 2427 } 2428} 2429 2430if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { 2431 targeting.dfpcsnt = 'yes'; 2432} else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { 2433 targeting.dfpcsnt = 'no'; 2434} else { 2435 targeting.dfpcsnt = 'none'; 2436} 2437 2438if (typeof MobileDetect !== "undefined") { 2439 targeting.canbb = (window.screen.width > 960) ? 'y' : 'n'; 2440} 2441 2442if (typeof module_targeting === "object") { 2443 targeting = addToTargeting(targeting, module_targeting); 2444} 2445 2446// $.each(apData, function (k, v) { 2447// targeting[k] = v; 2448// }); 2449 2450// if (typeof gs_channels !== 'undefined') { 2451// targeting.gs_channels = gs_channels; 2452// } 2453 2454targeting = addToTargeting(targeting, data_layer_helper.homesData); 2455 2456targeting.article_id = ''; 2457var googleSiteName = 'www.brentwoodlive.co.uk'; 2458var googlePath = '/contact/'; 2459 2460var googleNetworkCode = 154725070; 2461 2462var googleChildNetworkCode = 22694024870; 2463var googleId = '/'+googleNetworkCode + ',' + googleChildNetworkCode + '/' + googleSiteName+googlePath; 2464 2465if (googleId.charAt(googleId.length - 1) === '/') { 2466 googleId = googleId.slice(0, -1); 2467} 2468 2469var googletag = googletag || {}; 2470googletag.cmd = googletag.cmd || []; 2471 2472googletag.cmd.push(function () { 2473 var _YB = _YB || { 2474 ab: function () { 2475 return _YB.dool ? "b" : "a" + Math.floor(Math.random() * 10); 2476 }, 2477 dool: Math.random() >= 0.1, 2478 }; 2479 var yb_ab; 2480 if (Math.random() <= 0.9) { 2481 yb_ab = _YB.ab(); 2482 } else { 2483 yb_ab = "c"; 2484 } 2485 googletag.pubads().setTargeting("yb_ab", yb_ab); 2486}); 2487 2488googletag.cmd.push(function() { 2489 googletag.pubads().set("adsense_background_color", "FFFFFF"); 2490 googletag.pubads().setTargeting('rfs', "0"); 2491 $.each(targeting, function (key, value) { 2492 2493 // No real value so exclude 2494 if (value === 0 || value === '' || value === null) { 2495 return; 2496 } 2497 googletag.pubads().setTargeting(key, value); 2498 }); 2499 2500}); 2501 2502if (isMobile() && '' === 'top') { 2503 $('.desktop-standard-leaderboard').remove(); 2504 $('.mobile-top-leaderboard').show(); 2505 $('#DFP_top_leaderboard_mobile').attr('id', 'DFP_top_leaderboard'); 2506} else { 2507 $('.mobile-top-leaderboard').remove(); 2508} 2509// Ads 2510var adUnits = []; 2511 2512hideAdsByScreensize(); 2513 2514if (blackListAds.length > 0) { 2515 removeBlacklistAds(blackListAds); 2516} 2517 2518$.each(unfilteredAdUnits, function (i, unit) { 2519 removeWhitelistAds(unit); 2520}); 2521 2522// set up a holder for all the adverts so we can do things with them later 2523var dfpHolder = {}; 2524// the set up code 2525googletag.cmd.push(function() { 2526 $.each(adUnits, function(i, data) { 2527 2528 // check if the dom exists 2529 if ($('#'+data.domName).length === 0) { 2530 return; 2531 } 2532 2533 var dfp = null; 2534 2535 if (data.slotType === 'standard') 2536 { 2537 // get the correct sizes, using the alternate_sizes if they exist and we are on a mobile site 2538 var sizes = data.sizes; 2539 if (data.alternate_mobile_size && isMobile()) { 2540 sizes = data.alternate_mobile_size; 2541 } 2542 // push this ad slot through 2543 dfp = googletag.defineSlot(googleId, sizes, data.domName) 2544 .addService(googletag.pubads()) 2545 .setTargeting("position", data.positionName) 2546 .setCollapseEmptyDiv(data.collapseContainer); 2547 // check if we have an array of targets, and assign them as a companion if we do 2548 if (data.targets instanceof Array && data.targets.length > 0 ) { 2549 dfp.setTargeting('companion', data.targets); 2550 } 2551 2552 } 2553 else if (data.slotType === 'outofpage') 2554 { 2555 dfp = googletag.defineOutOfPageSlot(googleId, data.domName) 2556 .addService(googletag.pubads()) 2557 .setTargeting("position", data.positionName) 2558 .setCollapseEmptyDiv(data.collapseContainer); 2559 // check if we have an array of targets, and assign them as a companion if we do 2560 if (data.targets instanceof Array && data.targets.length > 0 ) { 2561 dfp.setTargeting('companion', data.targets); 2562 } 2563 } 2564 2565 // store 2566 dfpHolder[data.domName] = dfp; 2567 2568 }); 2569 2570 if (adLight === true) { 2571 googletag.pubads().setCategoryExclusion('adlight'); 2572 // var adlightexplanation = '<div class="adlight-explanation">I\'m a subscriber <a href="#" class="adlight-explanation-link">Why am I seeing this advert?</a></div>'; 2573 // if ($('#DFP_premium_mpu').length > 0) { 2574 // $('#DFP_premium_mpu').before(adlightexplanation); 2575 // } 2576 2577 // if ($('#DFP_standard_mpu_1').length > 0) { 2578 // $('#DFP_standard_mpu_1').before(adlightexplanation); 2579 // } 2580 2581 // var imageIds = [11497497, 11497535, 11497536, 11497541, 11497542, 11497545, 11497546, 11497547]; 2582 // var imageId = imageIds[Math.floor(Math.random() * imageIds.length)]; 2583 // $('.adlight-explanation-link').click(function(e) { 2584 // e.preventDefault(); 2585 // $('#adlight-explanation-modal-image').attr('src', '/resources/images/' + imageId + '/').show(); 2586 // $('#adlight-explanation-modal').modal(); 2587 // }); 2588 } 2589 2590 // send the request 2591 googletag.pubads().enableSingleRequest(); 2592 2593 googletag.enableServices(); 2594 2595 googletag.pubads().addEventListener('slotVisibilityChanged', function(event) { 2596 if (event.slot.getResponseInformation().creativeTemplateId === 828288 || 2597 event.slot.getResponseInformation().creativeTemplateId === 12383216 ) { 2598 console.log('DFP: Magic template id detected, not refreshing'); 2599 return; 2600 } 2601 var slotName = ''; 2602 $.each(dfpHolder, function (a, e) { 2603 if (e == event.slot) { 2604 slotName = a; 2605 } 2606 }); 2607 if (typeof window.advertisingTimer !== 'undefined') { 2608 var perc = event.inViewPercentage; 2609 window.advertisingTimer.timer(slotName, perc); 2610 } 2611 }); 2612}); 2613 2614// the display code 2615$.each(adUnits, function(i, data) { 2616 2617 // check if the dom exists 2618 if ($('#'+data.domName).length === 0) { 2619 return; 2620 } 2621 2622 if (data.domName === 'DFP_interstitial_mpu') { 2623 if (!inter.checkVisit()) { 2624 return; 2625 } 2626 } 2627 2628 // are we manually loading it? 2629 if ($('#'+data.domName).attr('data-manual-loading') === "yes") { 2630 return; 2631 } 2632 // for mobile, we check if the dom element has the data-delay-loading attribute set to "1" 2633 else if ($('#'+data.domName).attr('data-delay-loading') === "yes") { 2634 2635 // load it 2636 $('#'+data.domName).appear(); 2637 $(document.body).on('appear', '#'+data.domName, function(e, allElement) { 2638 2639 // don't call it many times 2640 if ($(this).attr('data-processed') === 'yes') { 2641 return; 2642 } 2643 2644 $(this).attr('data-processed', 'yes'); 2645 2646 // display the google ad 2647 googletag.display(data.domName); 2648 googletag.pubads().refresh([dfpHolder[data.domName]]); 2649 }); 2650 return; 2651 } 2652 googletag.cmd.push(function() { 2653 googletag.display(data.domName); 2654 }); 2655}); 2656window.googleComplete = performance.now(); 2657window.googleReady = true; 2658 2659// METHODS 2660function addToTargeting(targeting, data) { 2661 if (!data) { 2662 return targeting; 2663 } 2664 $.each(data, function (key, value) { 2665 if (!value) { 2666 return; 2667 } 2668 targeting[key] = value; 2669 }); 2670 return targeting; 2671} 2672 2673function addAdSlot(slotName, slot, initHidden) { 2674 console.log("Add ad slot called for %s %s", slotName, slot); 2675 // check if item already exists 2676 if (typeof window.dfpHolder[slotName] !== 'undefined') { 2677 return; 2678 } 2679 2680 if (window.adLight === true) { 2681 return; 2682 } 2683 window.googletag.cmd.push(function() { 2684 var dfp = googletag.defineSlot(window.googleId, [[300,250]], slotName) 2685 .setTargeting('position', [slot]) 2686 .addService(googletag.pubads()); 2687 window.dfpHolder[slotName] = dfp; 2688 2689 if (!initHidden) { 2690 googletag.pubads().refresh([dfp]); 2691 2692 return; 2693 } 2694 }); 2695} 2696 2697function hideAdsByScreensize() { 2698 if (window.screen.width < 728 && $('#BlockArticleContainer').length > 0) { 2699 if ('112' === '1147') { 2700 $('#DFP_out_of_page').remove(); 2701 } else { 2702 $('#DFP_premium_mpu').remove(); 2703 } 2704 $('#DFP_on_scroll').remove(); 2705 } else if (window.screen.width < 728 && 2706 ( $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='9']").length > 0 || 2707 $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='12']").length > 0 || 2708 $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='18']").length > 0 || 2709 $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='24']").length > 0 ) 2710 ) { 2711 const adElement = document.querySelector('#high_vis_container'); 2712 $('.omnicard[data-position="5"]').after(adElement); 2713 } 2714 2715 if ('112' === '1147' && window.screen.width > 450) { 2716 $('#DFP_bottom_leaderboard').remove(); 2717 } 2718 2719 if ('112' === '1147' && window.screen.width < 728) { 2720 $('#DFP_top_leaderboard').remove(); 2721 } 2722 2723 if ('112' === '1147') { 2724 $('#DFP_teads').remove(); 2725 $('#DFP_out_of_page').remove(); 2726 } 2727 2728 if ($('#comments-in-page').length === 1 && window.screen.width > 450) { 2729 $('#DFP_top_leaderboard').parent().remove(); 2730 $('#DFP_bottom_leaderboard').parent().remove(); 2731 // $('#DFP_standard_mpu_1').parent().remove(); 2732 } 2733} 2734 2735function removeBlacklistAds(blackListAds) { 2736 $.each(blackListAds, function(i, name) { 2737 removeAdContainer(name); 2738 }); 2739} 2740 2741function removeWhitelistAds(unit) { 2742 // VAST (video) ad units never get displayed in here. 2743 if (unit.isVast) { 2744 return; 2745 } 2746 2747 // if we have an ad-light experience 2748 if (whiteList === true) { 2749 if (typeof whiteListAds[unit.positionName] === 'undefined') { 2750 removeAdContainer(unit.domName) 2751 return; 2752 } 2753 } 2754 2755 adUnits.push(unit); 2756} 2757 2758function removeAdContainer(name) { 2759 const element = document.getElementById(name); 2760 // doesn't exist? exit 2761 if(!element) { 2762 return; 2763 } 2764 2765 const parent = element.parentElement; 2766 if (parent && parent.classList.contains('block-bottom-margin')) { 2767 // if immediate parent contains block-bottom-margin as a class, remove the parent as well 2768 parent.classList.remove('block-bottom-margin'); 2769 } 2770 if (parent && parent.classList.contains('mar-leaderboard--top')) { 2771 // in case of leaderboard, remove as has min-height 2772 parent.remove(); 2773 return; 2774 } 2775 2776 if (parent && parent.classList.contains('mar-leaderboard--bottom')) { 2777 // in case of article ad container, remove as has min-height 2778 parent.remove(); 2779 return; 2780 } 2781 2782 element.remove(); 2783} 2784</script>
2784 2785 2786
2787<script src="/resources/responsive-static/build/mds/js/global.js?cb=vjoPdzgg"></script>
2787 2788 2789 2790 2791 2792
2793<script src="/__siren/"></script>
2793 2794 2795 2796
2797<script type="text/javascript"> 2798 var s_account="newsquestgroupprod"; 2799</script>
2799 2800
2801<script type="text/javascript" src="/resources/responsive-static/vendor/adobe/VisitorAPI.js?cb=vjoPdzgg"></script>
vendor: 1 bytes, line 2801
2801
2802<script type="text/javascript" src="/resources/responsive-static/vendor/adobe/omniture.js?cb=vjoPdzgg"></script>
2802 2803
2804<script type="text/javascript"> 2805 2806function getOmniturePath() { 2807 var path = ''; 2808 if ($('#gallery-base-url').length === 1) { 2809 path = $('#gallery-base-url').val(); 2810 } 2811 else { 2812 path = window.location.pathname; 2813 } 2814 return path; 2815} 2816 2817function getPositionFromCookie() { 2818 const cookieName = 'tracking_block_index'; 2819 2820 const ref = document.cookie 2821 .split('; ') 2822 .find(row => row.startsWith(`${cookieName}=`)) 2823 ?.slice(cookieName.length + 1); 2824 2825 document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${window.data_layer.site.cookie_domain}`; 2826 2827 return ref ? decodeURIComponent(ref) : undefined; 2828} 2829function getRefFromCookie() { 2830 const cookieName = 'tracking_block'; 2831 2832 const ref = document.cookie 2833 .split('; ') 2834 .find(row => row.startsWith(`${cookieName}=`)) 2835 ?.split('=')[1]; 2836 2837 // Remove the cookie 2838 document.cookie = `${cookieName}=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/; domain=${window.data_layer.site.cookie_domain}`; 2839 2840 return ref; 2841} 2842 2843function getOmnitureTrackingFromCookie(key, preExistingValue) { 2844 var ref = $.cookie('o-' + key); 2845 if(typeof(ref) === 'undefined') { 2846 ref = preExistingValue 2847 } else { 2848 ref = decodeURIComponent(ref); 2849 $.removeCookie('o-' + key, { 2850 path: '/', 2851 domain: window.data_layer.site.cookie_domain, 2852 }); 2853 } 2854 return ref; 2855} 2856 2857function getValidatedAPList() { 2858 2859 var validList = [1100, 1101, 1002, 1006, 1010, 1014, 1018, 1022, 1200, 1202, 1205, 1300, 1602, 1605, 1608, 1612, 1616, 1500, 1503, 1507, 1509, 1512, 1402, 1406, 1409, 1412, 1416, 14331, 14333, 14335, 14336, 14339, 14342, 14344, 14345, 14346, 14350, 14351, 14353, 14359, 14366, 14370, 14371, 14377, 14388, 14394, 14396, 14399, 14407, 14221, 14423, 15679, 15681, 15682, 15683, 15684, 15686, 15687, 15688, 15975]; 2860 2861 var data = getAudienceProjectTargetingData(); 2862 if (!data || !data.ap_x) { 2863 return ''; 2864 } 2865 2866 validData = []; 2867 $.each(data.ap_x, function(i, td) { 2868 if ($.inArray(parseInt(td, 10), validList) !== -1) { 2869 validData.push(td); 2870 } 2871 }); 2872 2873 return validData.join(','); 2874} 2875 2876path = document.location.href.split("/"); 2877 2878var qs = new URLSearchParams(window.location.search); 2879 2880var prop30 = qs.get('lp'); 2881var prop43 = qs.get('ref'); 2882var pType="Newsquest\Modules\ContactUsModule" 2883 2884if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') { 2885 pType = 'ArticleModule'; 2886} 2887 2888for(x=4; x<7; x++) 2889{ 2890 if (typeof path[x] == 'undefined') 2891 { 2892 path[x] = ''; 2893 } 2894 if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1)) 2895 { 2896 path[x] = path[x-1]; 2897 } 2898 else 2899 { 2900 path[x] = path[x-1] + "/" + path[x]; 2901 } 2902 path[x] = path[x].replace(/\/undefined/g,""); 2903} 2904pathN= unescape(document.location.pathname.toString()); 2905matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/); 2906detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/); 2907if (detailMatches !== null && detailMatches.length > 1) 2908{ 2909 matches = detailMatches; 2910} 2911 2912if (matches !== null && matches.length > 1) 2913{ 2914 var subfolder = ''; 2915 path[3] = 'li'; 2916 path[4] = 'li/'+subfolder; 2917 path[5] = 'li/'+subfolder+'/'+matches[1]; 2918 path[6] = 'li/'+subfolder+'/'+matches[1]; 2919} 2920if (pathN === '/') 2921{ 2922 path[3] = 'homepage'; 2923 path[4] = 'homepage'; 2924 path[5] = 'homepage'; 2925 path[6] = 'homepage'; 2926} 2927 2928 2929/* You may give each page an identifying name, server, and channel on 2930the next lines. */ 2931s.pageName="(www) "+getOmniturePath(); 2932s.pageName = s.pageName.toLowerCase(); 2933s.server="martini"; 2934s.channel=""; 2935s.pageType=""; 2936s.prop1= qs.get('search'); 2937s.prop2=""; 2938s.prop3=document.title; 2939s.prop4=""; 2940s.prop5="Newsquest\Modules\ContactUsModule"; /* get from Martini */ 2941s.prop6=path[3].toLowerCase(); 2942s.prop7=path[4].toLowerCase(); 2943s.prop8=path[5].toLowerCase(); 2944s.prop9=path[6].toLowerCase(); 2945s.prop10=""; 2946 2947s.prop16=path[2].toLowerCase(); 2948s.prop17="Basildon"; 2949s.prop18="Martini"; 2950s.prop19="1"; 2951s.prop20 = s.getPreviousValue(s.pageName, 'gpv_pn'); 2952s.prop42 = ""; 2953s.prop53 = 'standard'; 2954s.prop54 = ''; 2955s.prop55 = ''; 2956s.prop56 = ""; 2957s.prop57 = ($('[data-name="Feature Article Block A"]').length > 0) ? 'Enabled' : 'Disabled'; 2958s.prop58 = document.querySelector('[data-name="Feature Article Block B"]')?.dataset.variant; 2959s.prop59 = getRefFromCookie(); 2960s.prop60 = getPositionFromCookie(); 2961s.prop73 = document.cookie.split('; ').find(row => row.startsWith('adtiming='))?.split('=')[1] || null; 2962 2963var eVar67 = []; 2964 2965if ($.cookie('consentUUID')) { 2966 eVar67.push('yes'); 2967} else { 2968 eVar67.push('no'); 2969} 2970if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { 2971 eVar67.push('yes'); 2972} else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { 2973 eVar67.push('no'); 2974} else { 2975 eVar67.push('none'); 2976} 2977 2978if ($.cookie('_sp_legitimate_interests') === 'true') { 2979 eVar67.push('yes'); 2980} else if ($.cookie('_sp_legitimate_interests') === 'false') { 2981 eVar67.push('no'); 2982} else { 2983 eVar67.push('none'); 2984} 2985 2986//if ($.cookie('euconsent')) { 2987// eVar67.push($.cookie('euconsent')); 2988//} else { 2989// eVar67.push('none'); 2990//} 2991 2992s.eVar67 = eVar67.join(','); 2993// console.log('ADB: setting eVar67 to %s', eVar67.join(',')); 2994 2995if ($.cookie('prev-tcf-v2')) { 2996 // console.log('ADB: Setting eVar68 to ', $.cookie('prev-tcf-v2')); 2997 s.eVar68 = $.cookie('prev-tcf-v2'); 2998} 2999 3000if (typeof iabNames !== 'undefined') { 3001 s.prop29 = iabNames.join(','); 3002} else if (typeof iabIds !== 'undefined') { 3003 s.prop29 = iabIds.join(','); 3004} 3005 3006if (s.prop20 && s.prop20 !== 'no value') { 3007 s.prop21 = s.getPercentPageViewed(); 3008} else { 3009 s.prop21 = ''; 3010} 3011 3012if (typeof __siren !== 'undefined') { 3013 s.eVar27 = __siren; 3014} 3015 3016s.prop22 = s.getDaysSinceLastVisit('s_lv'); 3017 3018 3019s.prop43=getOmnitureTrackingFromCookie('ref', prop43); 3020s.prop25 = '' 3021 3022s.prop27 = ''; 3023 3024s.prop30 = getOmnitureTrackingFromCookie('prop30', prop30); 3025s.linkInternalFilters="javascript:,brentwoodlive.co.uk,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk," 3026s.eVar61=(new Date()).toLocaleDateString("en-GB"); 3027/* s.eVar62=(new Date()).toLocaleDateString("en-GB"); */ 3028 3029 3030 3031 3032 3033 3034/* Article-site-cloning data */ 3035s.eVar90 = window.data_layer.article.parent_originating_site_id; 3036s.eVar91 = window.data_layer.article.originating_article_id; 3037s.eVar92 = window.data_layer.article.is_original_to_site; 3038s.eVar95 = window.data_layer.site.using_piano_id; 3039s.eVar106 = ''; 3040
3041s.eVar109 = ''; 3042 3043/* Uber block article counts */ 3044s.eVar93 = window.data_layer.page.top_stories_article_count + ':' + window.data_layer.page.interstitial_article_count + ':' + window.data_layer.page.news_stories_article_count; 3045 3046/* Conversion Variables */ 3047s.campaign="" 3048s.state="" 3049s.zip="" 3050s.events="" 3051s.products="" 3052s.purchaseID="" 3053s.eVar14="" 3054try { 3055 s.list3=getValidatedAPList(); 3056} catch (e) { 3057 // do nothing 3058} 3059 3060 3061 3062 3063// Initial fotorama tracking. 3064var moduleType = null; 3065if (s.prop5 === 'ArticleModule' || s.prop5 == 'PropertyModuleReplacement' || s.prop5 === 'BlockArticleModule') { 3066 moduleType = 'article'; 3067} else if (s.prop5 === 'PictureGalleryModule') { 3068 moduleType = 'gallery'; 3069} 3070 3071if ($('#comments-in-page').length === 1) { 3072 moduleType = 'comments'; 3073} 3074 3075if (moduleType === 'article' || moduleType === 'gallery' || moduleType === 'comments') { 3076 var imagePath = ''; 3077 3078 if ($('.fotorama').length > 0) { 3079 // Get the first Fotorama image. 3080 try { 3081 var el = $('.fotorama').data('fotorama').data[0].html; 3082 var url = $(el).find('div').css('background-image'); 3083 imagePath = url.replace('url(','').replace(')','').replace(/\"/gi, ""); 3084 } catch (e) { 3085 } 3086 } else { 3087 // If there's just one image (i.e. it's not a gallery), find its path. 3088 var imagePathSingle = $('#mainImage').attr('src'); 3089 if (typeof imagePathSingle !== 'undefined') { 3090 imagePath = imagePathSingle.split('.')[0] + '/'; 3091 } 3092 } 3093 var imageParts = imagePath.split('/'); 3094 if (imageParts.length > 1) { 3095 s.eVar37 = imageParts[imageParts.length - 2]; 3096 s.prop37 = imageParts[imageParts.length - 2]; 3097 s.events = s.apl(s.events, 'event7', ',', 2); 3098 } 3099 s.eVar36 = moduleType; 3100 s.prop36 = moduleType; 3101} 3102 3103 3104 3105// Education pages. 3106if (s.prop5 === 'ResponsiveEducationModule') { 3107 // School profile page. 3108 if ($('#eduOverview').length > 0) { 3109 s.eVar40 = $('#eduOverview').data('school-status'); 3110 s.prop40 = s.eVar40; 3111 s.prop41 = 'edu-' + $('#eduOverview').data('school-urn'); 3112 s.prop46 = $('#town').text(); 3113 } 3114 3115 // Comparison page. 3116 if ($('#eduComparisonTable').length > 0) { 3117 s.list1 = ''; 3118 } 3119 3120 // Results page. 3121 if ($('.school-results').length > 0) { 3122 s.list1 = ''; 3123 3124 // Track the search criteria. 3125 s.prop44 = ''; 3126 s.prop45 = "".toLowerCase(); 3127 s.prop46 = "".toLowerCase(); 3128 s.prop49 = ''; 3129 s.prop50 = ''; 3130 s.prop51 = ''; 3131 s.eVar2 = s.prop50; 3132 3133 var newSearch = false; 3134 if (newSearch) { 3135 s.events = s.apl(s.events, 'event17', ',', 1); 3136 } 3137 } 3138} 3139 3140// Notices Module 3141if (s.prop5 === 'NewsquestModulesNoticesModule') { 3142 // Notices Find page. 3143 if (s.pageName.includes('notices/find')) { 3144 s.pageName = '(www) /notices/find/'; 3145 s.eVar50 = ''; 3146 const noticesURL = new URL(window.location.href); 3147 const noticesParams = new URLSearchParams(noticesURL.search); 3148 3149 s.eVar1 = noticesParams.has('keyword') ? noticesParams.get('keyword') : 'None'; 3150 s.eVar51 = noticesParams.has('sort') ? noticesParams.get('sprt') : 'best'; 3151 s.eVar52 = noticesParams.has('p') ? (parseInt(noticesParams.get('p'), 10) + 1) : 1; 3152 s.eVar53 = noticesParams.has('type') ? noticesParams.get('type') : 'All'; 3153 s.eVar54 = noticesParams.has('nearby') ? noticesParams.get('nearby') : 'no'; 3154 s.eVar55 = noticesParams.has('daterange') ? noticesParams.get('daterange') : 'last-month'; 3155 3156 if (noticesParams.has('sort')) { 3157 switch (noticesParams.get('sort')) { 3158 case 'date_asc': 3159 s.eVar51 = 'oldest'; 3160 break; 3161 case 'date_desc': 3162 s.eVar51 = 'newest'; 3163 break; 3164 case 'best_match': 3165 s.eVar51 = 'best'; 3166 break; 3167 default: 3168 s.eVar51 = noticesParams.get('sort'); 3169 break; 3170 } 3171 } 3172 3173 // Concatenate all search params into eVar44 3174 if (noticesParams.size > 0) { 3175 const searchParams = new URL(window.location.href).searchParams; 3176 s.eVar44 = '';
3177 searchParams.forEach((value, key) => { 3178 s.eVar44 += `${key}=${value},`; 3179 }); 3180 } else { 3181 s.eVar44 = ''; 3182 } 3183 3184 // Adobe Search Event triggering 3185 const setNoticePaginationClicked = (value) => { 3186 localStorage.setItem("isNoticePaginationClicked", value); 3187 }; 3188 3189 const noticeSearchInput = document.getElementById("notices-search"); 3190 const noticeSearchBtn = document.getElementById("notice-search-find"); 3191 const noticePaginationBtns = document.querySelectorAll('.notice-find__pagination .pagination-btn'); 3192 const noticePaginationBtnPrev = document.querySelector('.pagination-btn-previous svg'); 3193 const noticePaginationBtnNext = document.querySelector('.pagination-btn-next svg'); 3194 3195 noticeSearchInput?.addEventListener('change', () => setNoticePaginationClicked('false')); 3196 noticeSearchBtn?.addEventListener('click', () => setNoticePaginationClicked('false')); 3197 3198 noticePaginationBtns.forEach(btn => { 3199 btn.addEventListener('click', () => setNoticePaginationClicked('true')); 3200 }); 3201 3202 noticePaginationBtnPrev?.addEventListener('click', () => setNoticePaginationClicked('true')); 3203 noticePaginationBtnNext?.addEventListener('click', () => setNoticePaginationClicked('true')); 3204 3205 if (localStorage.getItem("isNoticePaginationClicked") === 'false') { 3206 s.events = s.apl(s.events, 'event1', ',', 1); 3207 } 3208 } 3209 3210 if (/notices\/funeral-directors\/(\d+)\.([a-zA-Z0-9-?]+)?/.test(s.pageName)) { 3211 s.pageName = '(www) /notices/funeral-director/'; 3212 s.eVar41 = ''; 3213 } 3214} 3215 3216if (s.prop5 === 'NewsquestModulesNoticeModule') { 3217 s.eVar41 = ''; 3218 const type = window.announcement_data?.details?.type || ''; 3219 const subCategory = window.announcement_data?.details?.sub_category || ''; 3220 s.eVar40 = type !== 'Tribute' ? type : `${type} - ${subCategory}`; 3221 s.eVar42 = window.announcement_data?.details?.id || ''; 3222 s.eVar107 = ''; 3223 s.eVar119 = ''; 3224 s.eVar120 = ''; 3225 s.eVar2 = "(www) /notice/"; 3226} 3227 3228//New Property module 3229if (s.prop5 === 'ResponsivePropertyModule') { 3230 /* 3231 Use prop42 for single and list pages, for list pages use hyphen separate lists of id's 3232 */ 3233 3234 3235 //Property's all over the place (homepage, searches etc - HOM-133 3236 3237 //Property Detail - HOM-131, HOM-134, HOM-130 3238 3239 //Contact us submissions - HOM-137 3240 if($('#propertyModule.agent-details').length > 0) { 3241 //Add a click handler for a.contact-detail 3242 } 3243 3244 3245} 3246 3247// is their a video tag on the page? 3248if ($('.exco-embed').length > 0) { 3249 console.log('VID: setting tracking for event50'); 3250 s.events = s.apl(s.events, 'event50', ',', 1); 3251} 3252 3253var foundAutoPlayVid = false; 3254$('.jw-outer').each(function (a, domEle) { 3255 if ($(this).data('multimedia-block') === 'no' && !foundAutoPlayVid) { 3256 console.log('VID: setting tracking for event51'); 3257 s.events = s.apl(s.events, 'event51', ',', 1); 3258 foundAutoPlayVid = true; 3259 } 3260}); 3261 3262 3263 3264 3265 3266 3267 3268s.eVar66 = 'Ad-Full'; 3269s.eVar114 = ''; 3270 3271 3272 3273 // var eVar65Copy = s.getValOnce(s.eVar65, "ev65", 0); 3274 // if (eVar65Copy !== '' && s.prop20.indexOf("/my/subscription/activate/") > -1) { 3275 // s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event. 3276 // s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event. 3277 // s.products = "Subscription : Metered Access;" + eVar65Copy + ";1;"; 3278 // s.purchaseID = ""; 3279 // } 3280 3281 3282if(qs.get('action') === 'success' && (s.prop5 === 'ArticleModule' || s.prop5 === 'BMDModule' || s.prop5 === 'BlockArticleModule')) { 3283 s.events=s.apl(s.events,'event9',',',2) 3284} 3285/* Hierarchy Variables */ 3286s.hier1="newsquest," + "Basildon" + ",www.brentwoodlive.co.uk," + path[6].replace(/\//,","); 3287 3288if (typeof MartiniFotorama !== 'undefined') { 3289 MartiniFotorama.loadOmniture(s); 3290} 3291s.prop39 = "0"; 3292 3293 3294 3295// Tracking usage of Bytecast audio embeds in articles. 3296s.eVar82 = 'no'; 3297s.eVar83 = ''; 3298 3299 console.log('ADB: starting'); 3300 console.log('Google Bot Browser: ', window.isRobot.googleBot()); //TODO Remove this log after QA 3301 3302// Tracking of Commenting Registration FLow 3303if (s.prop5 !== 'BlockArticleModule') { 3304 const storedAdobeDimensions = sessionStorage.getItem('nq_adobe_tracking_article_dimensions'); 3305 if (storedAdobeDimensions) { 3306 const storedAdobeDimensionObj = JSON.parse(storedAdobeDimensions); 3307 s.eVar10 = storedAdobeDimensionObj.eVar10; 3308 s.eVar15 = storedAdobeDimensionObj.eVar15; 3309 s.eVar22 = storedAdobeDimensionObj.eVar22; 3310 s.eVar23 = storedAdobeDimensionObj.eVar23; 3311 s.eVar24 = storedAdobeDimensionObj.eVar24; 3312 s.eVar25 = storedAdobeDimensionObj.eVar25; 3313 s.eVar28 = storedAdobeDimensionObj.eVar28; 3314 s.eVar60 = storedAdobeDimensionObj.eVar60; 3315 s.eVar104 = storedAdobeDimensionObj.eVar104; 3316 s.eVar106 = storedAdobeDimensionObj.eVar106; 3317 s.eVar107 = storedAdobeDimensionObj.eVar107; 3318 s.eVar108 = storedAdobeDimensionObj.eVar108; 3319 s.prop63 = storedAdobeDimensionObj.prop63; 3320 } 3321} 3322 3323if (window.location.href.includes("/user/create-account/commenting/")) { 3324 s.eVar2 = '(www) /user/create-account/commenting/'; 3325} 3326 3327/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/ 3328if (qs.get('callback') !== 'in' && !window.isRobot.googleBot()) { 3329 var s_code=s.t(); 3330 var backupAdobe = s; 3331 3332 if(s_code)document.write(s_code) 3333} 3334 3335// Storing the visiting dimensions 3336if (s.eVar10 || s.eVar22 || s.eVar23 || s.eVar24) { 3337 const adobeTrackingVisitingDimensions = { 3338 eVar10: s.eVar10, 3339 eVar22: s.eVar22, 3340 eVar23: s.eVar23, 3341 eVar24: s.eVar24, 3342 } 3343 sessionStorage.setItem('nq_adobe_tracking_visiting_dimensions', JSON.stringify(adobeTrackingVisitingDimensions)); 3344} 3345 3346//--></script>
3346 3347<!-- End SiteCatalyst code version: H.19.3. --> 3348 3349 3350 3351 3352
3353<script> 3354 if ('' !== '') { 3355 setTimeout(function() { 3356 data_layer_helper.loadScript( 3357 "/resources/responsive-static/build/mds-next/js/.js?cb=vjoPdzgg", 3358 true, 3359 null, 3360 "module" 3361 ) 3362 }, 500); 3363 } 3364</script>
3364 3365 3366 3367</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.