CINXE.COM
Richmond and Twickenham Times Homes: Houses, flats & property for sale or rent in Richmond & London
<!DOCTYPE html> <html lang="en" xmlns:fb="http://www.facebook.com/2008/fbml" xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#"> <head> <!-- standard - PreConnects.html --> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> <link rel="preconnect" href="https://d2zv5rkii46miq.cloudfront.net" /> <link rel="preconnect" href="https://visitanalytics.userreport.com" /> <link rel="preconnect" href="https://a02342.richmondandtwickenhamtimes.co.uk" /> <link rel="preconnect" href="https://securepubads.g.doubleclick.net" /> <link rel="preconnect" href="https://cdn.adsafeprotected.com" /> <link rel="preconnect" href="https://micro.rubiconproject.com" /> <link rel="preconnect" href="https://experience.tinypass.com" /> <link rel="preconnect" href="https://c.amazon-adsystem.com" /> <link rel="preconnect" href="https://tpc.googlesyndication.com"> <link rel="preconnect" href="https://pagead2.googlesyndication.com"> <link rel="preconnect" href="https://www.googletagservices.com"> <link rel="preconnect" href="https://cdn.ampproject.org"> <link rel="preconnect" href="https://securepubads.g.doubleclick.net"> <link rel="preconnect" href="https://tags.crwdcntrl.net"> <link rel="preconnect" href="https://bcp.crwdcntrl.net"> <link rel="preconnect" href="https://c.ltmsphrcl.net"> <link rel="dns-prefetch" href="https://tags.crwdcntrl.net"> <link rel="dns-prefetch" href="https://bcp.crwdcntrl.net"> <link rel="dns-prefetch" href="https://c.ltmsphrcl.net"> <title>Richmond and Twickenham Times Homes: Houses, flats & property for sale or rent in Richmond & London</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <meta name="OMG-Verify-V1" content="4389-366acdfc-5224-4c07-bb70-f74d8fbfc2db" /> <meta name="robots" content="max-image-preview:large"> <meta name="format-detection" content="telephone=no"> <!-- standard - Fonts.html --> <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Libre+Franklin:300,400,500,600,700"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre+Franklin:wght@600;700&family=Noto+Sans:wght@400;600;700&display=swap"> <meta name="keywords" content="" /> <meta name="description" content="Houses, flats and property for sale or to let in Richmond, Twickenham, Hounslow, Chiswick, Brentford, Hanworth, Barnes, Teddington, Sheen and London." /> <meta name="title" content="Richmond and Twickenham Times Homes: Houses, flats & property for sale or rent in Richmond & London" /> <meta property="fb:pages" content="103524596408813" /> <link rel="canonical" href="https://www.richmondandtwickenhamtimes.co.uk/homes/" /> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "headline": "Homes Index", "url": "http://www.richmondandtwickenhamtimes.co.uk/homes/" } </script> <link id="page_stylesheet_vars" href="/resources/responsive-static/build/mds/css/palette-7-sans-serif-vars.css?r=D5b3rJbf" rel="stylesheet" type="text/css"> <link href="/resources/responsive-static/build/mds/css/header-footer.css?r=D5b3rJbf" rel="stylesheet" type="text/css"> <link id="page_stylesheet" href="/resources/responsive-static/build/mds/css/responsiveproperty.css?r=D5b3rJbf" rel="stylesheet" type="text/css"> <link rel="shortcut icon" href="/resources/images/17399728/" type="image/vnd.microsoft.icon"> <link rel="icon" href="/resources/images/17399728/" type="image/vnd.microsoft.icon"> <!-- standard - AdvertisingInit.html --> <script> window.startExec = performance.now(); </script> <!-- standard - ThirdPartyAndSync.html --> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript" src="/resources/shared/responsive-sync/?r=D5b3rJbf"></script> <!-- standard - Sourcepoint.html --> <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",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> <script type = "text/javascript"> ( function () { var module = 'ResponsivePropertyModule'; if (module === 'BackboneUserModule' || module === 'AdBlockerFaqModule' || module === 'ResponsiveEducationModule' || module === 'PianoSubscriptionPageModule') { var events = "event70"; trackSPEvents(events); return; } window._sp_ = { config: { baseEndpoint: 'https://a02342.richmondandtwickenhamtimes.co.uk', accountId: 52, targetingParams:{ subscribed: false, privacy: false }, gdpr: { }, events: { onMessageReady: function (message_type) { trackSPEvents('event76'); }, onMessageChoiceSelect: function (message_type, choice_id, choice_type_id) { console.log('message_type: ', message_type); console.log('choice_id: ', choice_id); console.log('choice_type_id: ', choice_type_id); if ('no' === 'yes') { if (choice_type_id === 12) { trackSPEvents('event83'); //Consent Banner Reject All trackSPEvents('event82'); //Journalism Message Shown } if (choice_type_id === 11) { trackSPEvents('event78'); } if (choice_type_id === 9) { trackSPEvents('event77'); } } else { // these are the second argument in non-gate if (choice_type_id === 12) { trackSPEvents('event77'); } if (choice_type_id === 11) { trackSPEvents('event78'); } if (choice_type_id === 13) { trackSPEvents('event83'); } } }, onPrivacyManagerActionStatus: function(message_type, status, actionType) { console.log('message_type: ' + message_type); console.log('status: ' + status); console.log('actionType: ' + actionType); if ('no' === 'yes') { if (actionType === 11) { trackSPEvents('event79'); //Privacy Manager Accept } if (actionType === 9) { trackSPEvents('event68'); //Privacy Manager Redirect } if (actionType === 1) { trackSPEvents('event75'); //Forced tcf String Change } } else { // these are the second argument in non-gate if (actionType === 13) { trackSPEvents('event81'); //Privacy Manager Reject } if (actionType === 11) { trackSPEvents('event79'); //Privacy Manager Accept } if (actionType === 1) { trackSPEvents('event80'); //Privacy Manager Save & Exit } } }, onPMCancel: function (message_type) { console.log('onPMCancel', message_type); trackSPEvents('event84'); //Privacy Manager Back }, } } } // document.addEventListener('sp.blocking', function (e) { // var events = "event70"; // if ($.cookie('nqab') === 'false') { // events += ',event74'; // } // if ($.cookie('nqab') !== null) { // events += ',event72'; // trackSPEvents(events); // $.cookie('nqab', 'true', { expires: 365, path: '/' }); // return; // } // $.cookie('nqab', 'true', { expires: 365, path: '/' }); // events += ',event71'; // trackSPEvents(events); // }); // document.addEventListener('sp.not_blocking', function (e) { // console.log('DFP: Not blocking triggered, cookie is %s', $.cookie('nqab')); // // If they have the cookie set, it means they saw the banner and now have disabled their adblocker. // if ($.cookie('nqab') === 'true') { // trackSPEvents('event73'); // $.cookie('nqab', 'false', { expires: 365, path: '/' }); // } // }); __tcfapi('addEventListener', 2, function (tcData, success) { // console.log('DFP: Event Listen:', tcData); if (success && tcData.eventStatus === 'useractioncomplete') { var csnt = 'none'; if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { csnt = 'yes'; } else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { csnt = 'no'; } googletag.cmd.push(function() { // console.log('DFP: Cookie check - setting dfpcsnt to ', csnt); googletag.pubads().setTargeting('dfpcsnt', csnt); }); // ready to start DFP startAdvertising(tcData.listenerId); setTcfCookie(tcData.purpose.consents, tcData.purpose.legitimateInterests); } else if (success && tcData.eventStatus === 'tcloaded') { startAdvertising(tcData.listenerId); } }); $(document).on('click', '.gdpr-option-v2', function (e) { e.preventDefault(); sendEvent76 = false; var id = $(this).data('v2-id'); if ($(this).data('is-gate') === 'yes') { trackSPEvents('event87'); _sp_.gdpr.loadPrivacyManagerModal(id); } else { trackSPEvents('event77'); _sp_.gdpr.loadPrivacyManagerModal(id); } }); function getTcfData() { __tcfapi('addEventListener', 2, function(data, success) { setTcfCookie(data.purpose.consents, data.purpose.legitimateInterests); }, [755]); } getTcfData(); function setTcfCookie(data, legitimateInterests) { var consents = []; $.each(data, function(id, consent) { var c = (consent === true) ? 'yes' : 'no'; consents.push(c) }); // console.log('DFP: consents length: ', consents.length); if (consents.length !== 10) { // consents = consents.fill('no', consents.length, 10); for (var i = consents.length; i < 10; i++) { consents[i] = 'no'; } } // console.log('DFP: Found consents to store in cookie:', consents); $.cookie('prev-tcf-v2', consents.join(','), {domain: '.richmondandtwickenhamtimes.co.uk', path: '/', expires: 100}); var consentEvent4 = 'none'; if (typeof data[4] !== 'undefined') { consentEvent4 = data[4] ? 'true' : 'false'; } $.cookie('_sp_enable_dfp_personalized_ads', consentEvent4, {domain: '.richmondandtwickenhamtimes.co.uk', path: '/', expires: 100}); var legitInterest = 'none'; if (legitimateInterests && typeof legitimateInterests[2] !== 'undefined') { legitInterest = legitimateInterests[2] ? 'true' : 'false'; } $.cookie('_sp_legitimate_interests', legitInterest , {domain: '.richmondandtwickenhamtimes.co.uk', path: '/', expires: 100}); } var sendEvent76 = true; function trackSPEvents(events) { if (events === 'event76' && !sendEvent76) { return; } else if (events === 'event76') { sendEvent76 = false; } if (typeof window.s !== 'object') { // console.log('DFP: No window.s object found, trying again in 1 second'); window.setTimeout(function () { trackSPEvents(events)} , 1000); return; } // console.log("ADB: Tracking %s", events); // Re-create the Omniture object so the data can be tracked. var s = window.s; if (events.indexOf('event70') !== -1) { // console.log('DFP: Events passed, added evars'); s.eVar35 = 'enabled'; s.prop35 = 'enabled'; } s.events = events; s.linkTrackEvents = events; s.linkTrackVars = "eVar2,eVar3,eVar4,eVar5,eVar6,evar7,evar8,evar9,eVar16,eVar19,eVar26,eVar35,eVar43,prop35"; s.suppressPageView = true; s.tl(true,'o','Ad Block'); } function startAdvertising(id) { if (typeof window.doNotAdvertise !== 'undefined' && window.doNotAdvertise === true) { return; } // console.log("DFP: Is the page fully loaded?", window.googleReady); if (window.googleReady !== true) { window.setTimeout(function () { // console.log('DFP: Google not fully loaded yet, pausing quarter of a second before trying again'); startAdvertising(id); }, 250); return; } // console.log('DFP: Starting advertisement loading routine'); if (window.advertisingStart === true) { return; } // console.log('DFP: Running advertisement'); window.advertisingStart = true; var googletag = window.googletag; // init google objects and array (function() { var gads = document.createElement('script'); gads.async = true; gads.type = 'text/javascript'; gads.src = 'https://securepubads.g.doubleclick.net/tag/js/gpt.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(gads, node); })(); var e = new Event('launch:cmp:choice-made'); window.dispatchEvent(e); // AP code fetchAp(); if (usePrebid) { // load prebid script // console.log("DFP: loading Newsquest Test script"); var site = 'desktop'; var _site = 'desktop'; // load IAS scripts and set up vars (function() { var ias = document.createElement('script'); ias.async = true; ias.type = 'text/javascript'; ias.src = 'https://cdn.adsafeprotected.com/iasPET.1.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(ias, node); })(); (function() { var pbs = document.createElement('script'); pbs.async = true; pbs.type = 'text/javascript'; pbs.src = 'https://micro.rubiconproject.com/prebid/dynamic/11022.js?group=newsquest'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(pbs, node); })(); // console.log('DFP: Starting header bid code from CMP v2 flow'); googletag.cmd.push(function () { // console.log("DFP: loading header bid code - Google is loaded"); fetchHeaderBids(); }); } if ( window.data_layer.user.advertising_experience !== 'Ad-Free' && window.data_layer.config.disable_outbrain !== 'yes' ) { (function() { var ob = document.createElement('script'); ob.async = true; ob.type = 'text/javascript'; ob.src = 'https://widgets.outbrain.com/outbrain.js'; var node = document.getElementsByTagName('script')[0]; node.parentNode.insertBefore(ob, node); })(); } // remove the listener if (id !== null) { window.__tcfapi('removeEventListener', 2, function (success) { }, id); } } })(); </script> <script src="https://a02342.richmondandtwickenhamtimes.co.uk/unified/wrapperMessagingWithoutDetection.js"></script> <!-- standard - DataLayer.html --> <script type="text/javascript"> data_layer_helper.setIsArticle(false); data_layer_helper.setCookieDomain('.richmondandtwickenhamtimes.co.uk'); data_layer_helper.setModuleType('ResponsivePropertyModule'); data_layer_helper.setLocalInfoFolder(''); data_layer_helper.setHomesData('', '', '', 'homes'); data_layer_helper.setPrimaryDomain('www.richmondandtwickenhamtimes.co.uk'); data_layer_helper.setPath('/homes/'); data_layer_helper.setGoogleNetworkCode('154725070'); data_layer_helper.setArticleTimestamp(''); var extraTags = []; extraTags.push('user_level_anonymous'); var data_layer = { environment: { is_test_site: 'no', is_live_site: 'yes', is_paywall_site: 'no', is_portable_screen: (data_layer_helper.isMobileScreen()) ? 'yes' : 'no', is_desktop_screen: (data_layer_helper.isMobileScreen()) ? 'no' : 'yes', is_mobile_device: data_layer_helper.getMobileDevice(), is_tablet_device: data_layer_helper.getTabletDevice(), server: 'dmh-martini-web16', platform: 'Martini' }, site: { id: '27', centre_id: '2', centre_name: 'South West London', country: 'England', name: 'Richmond and Twickenham Times', domain: 'www.richmondandtwickenhamtimes.co.uk', editor_name: 'Simon Murfitt', onboarding_enabled: 'no', onboarding_flow_id: 'onboarding_disabled', cookie_domain: '.richmondandtwickenhamtimes.co.uk', uses_cmp: 'yes', short_domain: 'richmondandtwickenhamtimes', using_piano_id: 'yes', enable_skimlinks: 'yes', skimlinks_domain_id: '613755', disable_newsletters: 'no', is_archant_site: 'no', shc_merchant_name: '', piano_application_group: 'Forest', piano_site_name: 'Richmond and Twickenham Times', piano_site_name_possessive: 'Richmond and Twickenham Times\'', piano_site_name_with_prefix_lower: 'the Richmond and Twickenham Times', piano_site_name_with_prefix_capitalised: 'The Richmond and Twickenham Times', piano_site_name_with_prefix_capitalised_possessive: 'The Richmond and Twickenham Times\'', piano_site_name_with_prefix_lower_possessive: 'the Richmond and Twickenham Times\'', piano_location_primary: 'Richmond and Twickenham', piano_location_primary_possessive: 'Richmond and Twickenham\'s', piano_location_county: 'London', piano_location_county_possessive: 'London\'s', piano_primary_sports_team: '', piano_primary_sports_team_nickname: '', piano_primary_sports_team_sport: '', piano_primary_sports_team_possessive: '', piano_primary_sports_team_nickname_possessive: '', has_app: 'no', app_provider: '', app_platform: '', app_store_url_ios: '', app_store_url_google_play: '' }, page: { module: 'ResponsivePropertyModule', referrer: data_layer_helper.getReferrerHostName(), name: '(www) ' + data_layer_helper.getOmniturePath(), title: document.title, path: data_layer_helper.getOmniturePath(), section: data_layer_helper.getPathFragment(0), subsection: data_layer_helper.getPathFragment(1), subsection_2: data_layer_helper.getPathFragment(2), subsection_3: data_layer_helper.getPathFragment(3), reference: qs.get('ref'), layout: '', ad_timing: data_layer_helper.getCookie('adtiming'), template_namespace: 'standard', template: '', colour_scheme: '', layout_template: '', mds_font: 'sans-serif', mds_colour_palette: 'palette-7', feature_block_a_enabled: ($('[data-name="Feature Article Block A"]').length > 0) ? 'yes' : 'no', feature_block_b_variant: (typeof $('[data-name="Feature Article Block B"]').data('variant') === 'undefined') ? '' : $('[data-name="Feature Article Block B"]').data('variant'), is_article_list: 'no', error_404: '', top_stories_article_count: '', interstitial_article_count: '', news_stories_article_count: '' }, user: { id: '', first_name: '', advertising_experience: 'Ad-Full', is_privacy_plus: 'no', is_alist: 'no', level: data_layer_helper.getCookie('nq_ul'), seen_cmp: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true' || data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no', given_consent: (data_layer_helper.getCookie('_sp_enable_dfp_personalized_ads') === 'true') ? 'yes' : 'no', consent_string: data_layer_helper.getConsentString(), type: 'anonymous', parsely_type: 'Anonymous', chartbeat_type: 'anon', type_as_int: '1', is_logged_in: 'no', is_admin: 'no', has_full_admin_link_permissions: '', has_registered: (data_layer_helper.getCookie('nqr') !== null) ? 'yes' : 'no', comments_verified: '', comments_verified_date: '', age_decade: '0' , gender: 'u' , is_known: data_layer_helper.getCookie('__siren') ? 'yes' : 'no', hash: '', lr_hash_1: '', lr_hash_2: '', lr_hash_3: '', gender: 'u' , user_decade: '0' , subscription_plan: '', subscription_tier: 'null', subscription_plan_and_frequency: ' - ', commented: (data_layer_helper.isArticle() && qs.get('action') === 'success') ? 'yes' : 'no', time_since_last_visit: 'not implemented (maybe drop)', device: data_layer_helper.getDevice(), using_ad_blocker_sourcepoint: data_layer_helper.getSourcepointAdbockStatus(), admin_user_name: '', card_expired: '', card_will_expire: '', expires_urgency: '', abandoned_cart: 'no', subscription_expired: 'no', payment_attempt_one: 'no', payment_attempt_two: 'no', payment_attempt_final: 'no', is_archant_site: 'no', signed_up_primary_news_newsletter: 'no', signed_up_primary_sport_newsletter: 'no', has_app_access: 'no', played_free_puzzles_last_7days: '', played_paid_puzzles_last_7days: '' }, analytics: { hierachy: 'newsquest,South West London,www.richmondandtwickenhamtimes.co.uk,' + data_layer_helper.getPathFragment(3).replace(/\//,','), link_filters: 'javascript:,richmondandtwickenhamtimes.co.uk,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk,', tracking_block: data_layer_helper.getTrackingFromCookie('tracking_block', ''), tracking_block_index: data_layer_helper.getTrackingFromCookie('tracking_block_index', ''), previous_page_name: data_layer_helper.getCookie('nq_prev_page'), advert_id: '', position_in_list: data_layer_helper.getTrackingFromCookie('o-prop30', ''), featured_content: data_layer_helper.getTrackingFromCookie('o-ref', qs.get('ref')), account: data_layer_helper.getAccount() }, chartbeat: { enabled: "no", id: "", domain: "", sections: '' }, parsely: { enabled: "yes", site_id: "richmondandtwickenhamtimes.co.uk", type: 'Anonymous' }, piano: { tags: data_layer_helper.getPianoTags({ piano_domain: 'richmondandtwickenhamtimes', piano_master: '', breaking_news: false, editorial_opinion: false, free_subscriber: false, free_subscriber: false, has_video: false, is_article: false, article_content_level : '', article_content_level_open_access: false, picture_gallery_id: false, user_is_newsquest: false, user_logged_in: false, is_live_article: false, why_free_subscriber: '', extra_tags: extraTags, is_covid_headline: false, is_covid_body: false, is_alist: false, audio_provider_bytecast: false } ), custom_variables: { article_length: '', application_group: 'Forest', content_is_editorial_opinion: 'no', base_url: 'https://www.richmondandtwickenhamtimes.co.uk', mds_font: 'sans-serif', mds_colour_palette: 'palette-7', site_name: 'Richmond and Twickenham Times', site_name_possessive: 'Richmond and Twickenham Times\'', site_name_with_prefix_capitalised: 'The Richmond and Twickenham Times', site_name_with_prefix_lower: 'the Richmond and Twickenham Times', site_name_with_prefix_capitalised_possessive: 'The Richmond and Twickenham Times\'', site_name_with_prefix_lower_possessive: 'the Richmond and Twickenham Times\'', location_primary: 'Richmond and Twickenham', location_primary_possessive: 'Richmond and Twickenham\'s', location_county: 'London', location_county_possessive: 'London\'s', site_has_primary_sports_team: 'no', primary_sports_team: '', primary_sports_team_nickname: '', primary_sports_team_sport: '', primary_sports_team_possessive: '', primary_sports_team_nickname_possessive: '', site_id: '27', content_level: '', content_level_openaccess_override: 'no', content_author: '', content_id: '', content_is_article: 'no', content_primary_topic: '', user_seen_consent_modal: ($.cookie('_sp_enable_dfp_personalized_ads') === 'true' || $.cookie('_sp_enable_dfp_personalized_ads') === 'false') ? 'yes' : 'no', user_has_app_access: 'no', site_section: data_layer_helper.getPathFragment(0, true), article_published_yyyy: '', user_played_free_puzzles_last_7days: '', user_played_paid_puzzles_last_7days: '', anon_user_played_free_puzzles_last_7days: data_layer_helper.untrackedPuzzleCheck(), home_delivery_phone_number: '0800 953 0227', content_taxonomy_topics_contains_sport: ''.indexOf('sport') >= 0 ? 'yes' : 'no', content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''), day_of_week: data_layer_helper.getDayOfWeek(), user_card_expired: '', user_card_will_expire: '', user_expires_urgency: '', user_payment_attempt_one: 'no', user_payment_attempt_two: 'no', user_payment_attempt_final: 'no', user_subscription_tier: 'null', user_is_newsquest: 'no', primary_news_newsletter_id: '730', primary_news_newsletter_name: 'the Daily Catch-up', primary_news_newsletter_description: 'Your round-up of the day\'s top stories.', primary_sport_newsletter_id: '729', primary_sport_newsletter_name: 'the Sports AM', primary_sport_newsletter_description: 'Keep up to date with the latest sport headlines.', user_signed_up_primary_news_newsletter: 'no', user_signed_up_primary_sport_newsletter: 'no', newsletter_auto_promote: '', newsletter_auto_promote_name: '', newsletter_auto_promote_description: '', newsletter_auto_promote_ID: '', site_has_app: 'no', site_app_store_url_ios: '', site_app_store_url_google_play: '', site_section1: data_layer_helper.getPathFragment(1, true) // GBL required }, native_variables: { setContentCreated: '', setContentIsNative: 'no', setContentAuthor: '', setContentSection: data_layer_helper.getPathFragment(0, true) } }, article: { showing_preview: '', is_article: data_layer_helper.isArticle() ? 'yes' : 'no', id : '', length_type: '', character_count: '', author: ''.toLowerCase(), context: '', content_level: '', content_level_open_access: '', content_level_combined: ',,no', content_is_restricted: data_layer_helper.getRestrictedContent('', '', '', ''), increment: (data_layer_helper.isArticle()) ? '+1' : '', sponsor: '', contributions: '0', is_sponsored: 'no', headline: '', age: data_layer_helper.getArticleAge(), upload_date: '', publish_date: '', update_date: '', rating: '', source: data_layer_helper.getSource(''), subjects: (typeof articleSubjects === 'object') ? articleSubjects.join(',') : '', context: '', grapeshot_context: (typeof gs_channels !== 'undefined') ? gs_channels : '', allow_comments: 'no', total_comments: '', originating_site_id: '', parent_article_site_id: '', parent_article_id: '', originating_article_id: '', parent_originating_site_id: '', is_original_to_site: '', is_cloned: '', parent_article_url: '', use_skimlinks: 'no', content_primary_topic: '', taxonomy: { article_types: '', topics: '', sports: '', sports_teams: '', locations: '', shared_content: '', free_tags: '', farming: '' }, audio: { has_audio: 'no', provider: '' } }, homes: { search_bedrooms_minimum: '', search_location: 'homes', search_price_minimum: '', search_price_maximum: '', list: 'hom-21628962,hom-0,hom-21628962', id: '' }, video: { exists: 'no', auto_play_enabled: data_layer_helper.getAutoPlay('no') }, contributions: { allow_text: '', allow_image: '', user_contributions_number: '0', has_user_contributions: 'no' }, search: { keywords: qs.get('search'), results: '' }, announcements: { category: '' }, config: { google_analytics_id: 'UA-54396341-26', site_template_set: 'standard', path: '/homes/', top_level_section: 'homes', polar_property_id: 'NA-RICH-11238086', gallery_show_advert_after: '5', disable_outbrain: '' }, dfp: { is_landing: 'yes', module_path: 'homes', weather_band: '11-15', weather_summary: 'sun'.toLowerCase(), id: data_layer_helper.getGoogleId(), display_screen: data_layer_helper.isMobileScreen() ? 'mobile' : 'desktop', can_show_billboard: (window.screen.width > 960) ? 'y' : 'n' }, dates: { date: (new Date()).toLocaleDateString('en-GB'), hour: (new Date()).getHours(), day: data_layer_helper.getDayOfWeek(), weekend: ((new Date()).getDay() === 6 || (new Date()).getDay() === 0) ? 'Weekend' : 'Weekday' }, memorials: { contact_phone_number: '', contact_email_address: '', publications: JSON.parse('' || '[]') } } data_layer_helper.storeCurrentPageName(data_layer.page.name); window.dispatchEvent(new Event('data-layer-loaded')) if (data_layer.article.is_article !== 'yes') { data_layer.piano.custom_variables.site_module = 'ResponsivePropertyModule'; data_layer.piano.custom_variables.puzzles_landing_page = 'no'; data_layer.piano.custom_variables.desktop_hero_id = '0'; data_layer.piano.custom_variables.puzzles_display_page = 'no'; data_layer.piano.custom_variables.mobile_hero_id = '0'; } </script> <script src="//assets.adobedtm.com/499440d21de9/54b957ecfb7e/launch-98090dfa3d73.min.js" async ></script> <!-- standard - PianoInit.html --> <script> window.usePiano = true; window.selectedOfferId = null; window.selectedTermId = null; </script> <script> document.cookie = "__adblocker=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/"; var setNptTechAdblockerCookie = function(adblocker) { var d = new Date(); d.setTime(d.getTime() + 60 * 60 * 24 * 2 * 1000); document.cookie = "__adblocker=" + (adblocker ? "true" : "false") + "; expires=" + d.toUTCString() + "; path=/"; } var script = document.createElement("script"); script.setAttribute("async", true); script.setAttribute("src", "//www.npttech.com/advertising.js"); script.setAttribute("onerror", "setNptTechAdblockerCookie(true);"); document.getElementsByTagName("head")[0].appendChild(script); </script> <script> tp = window.tp || []; function runPiano() { Object.keys(data_layer.piano.custom_variables).forEach(function (k) { var v = data_layer.piano.custom_variables[k]; if (v != '') { tp.push(["setCustomVariable", k, v]); } }); Object.keys(data_layer.piano.native_variables).forEach(function (k) { var v = data_layer.piano.native_variables[k]; if (v != '') { tp.push([k, v]); } }); tp.push(['setTags', data_layer.piano.tags]); (function(src){ var a=document.createElement("script"); a.type = "text/javascript"; a.async=true; a.src=src; var b=document.getElementsByTagName("script")[0]; b.parentNode.insertBefore(a, b) })("//experience.tinypass.com/xbuilder/experience/load?aid=E065revFpu"); } // Init Piano tp.push(["setDebug", ($.cookie('debug') === '1')]); tp.push(["setApplePayMerchantId", 'merchant.nq.subssites.piano']); // init Piano ID tp.push(['init', function() { tp.pianoId.init(); }]); tp.push(["setUsePianoIdUserProvider", true ]); tp.push(["addHandler", "loginRequired", function(params) { // If they're already signed in, we don't need to do anything special. if (tp.user.isUserValid()) { return; } if (typeof window._overridePianoDefault !== 'undefined' && window._overridePianoDefault !== true) { console.log("TPL Called") tp.pianoId.show({ screen: 'login', displayMode: 'modal', loggedIn: (data) => { pianoId.loggedIn(); }, loggedOut: () => { console.log('TP-TJ: user logged out'); }, registrationSuccess: () => { pianoId.registered(); }, width: '500px', height: '460px', }); } }]); tp.push(["addHandler", "showTemplate", function (templateParams) { handleOfferShow(templateParams); trackLocation(); if ($(templateParams.containerSelector).length > 0) { $(templateParams.containerSelector).addClass('shown'); if (templateParams.containerSelector === '#po-inline-article-inside') { $('#piano-container-inside-article').addClass('shown').removeAttr('style'); } if (!$(templateParams.containerSelector).hasClass('mar-block-ad')) { $(templateParams.containerSelector).show(); } if (templateParams.containerSelector === '#po-overlay-articlegate-full-width-scroll-below') { handleFullWidthBanner(); } if ( $(templateParams.containerSelector) === '#subscription-content' || $(templateParams.containerSelector) === '#po-inline-subscribe-page' ) { $(templateParams.containerSelector).show(); } if (['#piano_blockmodule_target_d', '#po-inline-blocksystem-target-e'].includes(templateParams.containerSelector)) { $('#divpo-inline-blocksystem-target-e').show(); } if (templateParams.containerSelector === '#po-overlay-toast-left') { removePianoToast() } if (templateParams.containerSelector === '#po-inline-articlewall-partialarticle-closable') { $('#po-inline-articlegate-partialarticle').css('display', 'none'); } if (templateParams.containerSelector === '#po-inline-articlewall-fullarticle-closable') { $('#po-inline-articlegate-fullarticle').css('display', 'none'); } } }]); tp.push(["addHandler", "checkoutSelectTerm", function (termDetails) { if (typeof termDetails.termId !== 'undefined') { window.selectedTermId = termDetails.termId; } }]); tp.push(["addHandler", "showOffer", function (offerParams) { handleOfferShow(offerParams); window.shownOffer = true; trackLocation(); // Store some data we might need later. if (typeof offerParams.offerId !== 'undefined') { window.selectedOfferId = offerParams.offerId; } if ($(offerParams.containerSelector).length > 0) { if ($(offerParams.containerSelector).length > 0) { $(offerParams.containerSelector).addClass('shown'); if (offerParams.containerSelector === '#po-inline-article-inside') { $('#piano-container-inside-article').addClass('shown').removeAttr('style'); } if (!$(offerParams.containerSelector).hasClass('mar-block-ad')) { $(offerParams.containerSelector).show(); } if (offerParams.containerSelector === '#po-overlay-articlegate-full-width-scroll-below') { handleFullWidthBanner(); } if ( $(offerParams.containerSelector) === '#subscription-content' || $(offerParams.containerSelector) === '#po-inline-subscribe-page' ) { $(offerParams.containerSelector).show(); } if (offerParams.containerSelector === '#po-overlay-toast-left') { removePianoToast() } if (templateParams.containerSelector === '#po-inline-articlewall-partialarticle-closable') { $('#po-inline-articlegate-partialarticle').css('display', 'none'); } if (templateParams.containerSelector === '#po-inline-articlewall-fullarticle-closable') { $('#po-inline-articlegate-fullarticle').css('display', 'none'); } } } }]); function handleFullWidthBanner() { $('#po-overlay-articlegate-full-width-scroll-below').css({ border: '1px solid #767676' }); $('#po-overlay-articlegate-full-width-scroll-below').show(); $('#subscription-content').hide(); $('.send-us-your-news-cta').hide(); $('.mega-news-block').hide(); const block = document.getElementById('po-overlay-articlegate-full-width-scroll-below'); let blockRect = block.getBoundingClientRect(); let startRect = new DOMRect(blockRect.x, blockRect.y + window.scrollY, blockRect.width, blockRect.height); let hasBecomeVisible = true; // change to false to alter the gate positioning behaviour const updateArticleGatePositionBasedOnScroll = function() { if (window.scrollY + window.innerHeight > startRect.bottom) { hasBecomeVisible = true; } if (hasBecomeVisible) { if (window.scrollY > startRect.top) { block.style.position = 'fixed'; block.style.setProperty('top', '0px'); block.style.setProperty('bottom', 'initial'); } else if (window.scrollY < startRect.bottom - window.innerHeight) { block.style.position = 'fixed'; block.style.setProperty('bottom', '0px'); block.style.setProperty('top', 'initial'); } else { block.style.removeProperty('position'); block.style.removeProperty('bottom'); block.style.removeProperty('top'); } } } // position the article gate immediately updateArticleGatePositionBasedOnScroll(); // update article gate position on scroll events document.addEventListener('scroll', updateArticleGatePositionBasedOnScroll); } function trackLocation(forceValidLocation = false) { var currentLocation = window.location.pathname; let valid = false; if (currentLocation.indexOf('puzzles') > -1) { valid = true; } if (currentLocation.indexOf('pagesuite') > -1) { valid = true; } var articleMatch = currentLocation.match(/(\d+)\.[^\/]+\/(r\/)?$/); if (articleMatch != null) { valid = true; } if (forceValidLocation) { valid = true; } if (currentLocation.indexOf('subscribe') > -1) { valid = false; } if (!valid) { return; } $.cookie('last-piano-page-interacted-with', currentLocation, {path: '/', domain: window.data_layer.site.cookie_domain}); } function trackPianoWithNewRelic(templateName) { if (this.newrelic && typeof this.newrelic === 'object') { newrelic.setCustomAttribute('user_was_shown_piano_experience', templateName); } } function handleOfferShow(params) { console.log('Piano params', params); // If on the subscription page and the URL has a term ID and offer ID, show the relevant offer. if (typeof location.pathname !== 'undefined' && location.pathname === '/subscribe/') { var offerId = location.search.match(/offer_id=([A-Z0-9]+)/); if (offerId !== null && offerId.length > 1) { offerId = offerId[1]; } var termId = location.search.match(/term_id=([A-Z0-9]+)/); if (termId !== null && termId.length > 1) { termId = termId[1]; } if (offerId !== null && termId !== null) { tp.offer.show({'termId': termId, 'offerId': offerId}); } } // we are only tracking var templateId = params.templateId; var variantId = params.templateVariantId; if (params.containerSelector !== '#subscription-content' && params.containerSelector !== '#subscription-replace-entire-article' && params.containerSelector !== '#po-inline-articlegate-fullarticle' && params.containerSelector !== '#po-inline-articlegate-partialarticle' ) { $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) { trackPianoSimplified(params, response.name); }); return; } $.get('/ws/piano/templatename/', {template_id: templateId, variant_id: variantId}, function (response) { trackPiano(params, response.name); }); } function trackPiano(params, templateName) { trackPianoWithNewRelic(templateName); if (typeof params.activeMeters === 'string') { activeMeters = JSON.parse(params.activeMeters); } else { activeMeters = params.activeMeters; } var s = window.s; if (!s || !s.pageName) { // console.log("ADB: Setting s from backup"); s = window.backupAdobe; window.s = s; } // this would call when CL3 is a hard gate if (!activeMeters && data_layer.article.content_level === '3') { s.eVar59 = templateName; s.eVar58 = data_layer.article.content_level; s.events = "event91"; s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar79,list3,events"; s.linkTrackEvents="event91"; s.tl(document, 'o', 'Metered Access Notice'); s.events = ''; return; } if (!activeMeters) { return; } var meterData = activeMeters[0]; var meterName = meterData.meterName.toLowerCase(); // track event 5 if (meterName.indexOf('cl1') !== -1 || meterName.indexOf('cl2') !== -1 || meterName.indexOf('cl3') !== -1 || params.containerSelector === '#piano-article-gate') { s.eVar58 = data_layer.article.content_level; s.eVar80 = meterData.meterName + ',' + meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews; s.eVar59 = templateName; s.events = "event5"; s.linkTrackVars="eVar58,eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,list3, events"; s.linkTrackEvents="event5"; } else { s.eVar80 = meterData.meterName + ',' + meterData.views + ',' + meterData.totalViews + ',' + meterData.viewsLeft + ',' + meterData.maxViews; s.eVar59 = templateName; s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,list3, events"; } s.tl(document, 'o', 'Metered Access Notice'); s.events = ''; } /** * Just track the template name in 78 for non-article-interrupts/gates */ function trackPianoSimplified(params, templateName) { trackPianoWithNewRelic(templateName); var s = window.s; if (!s || !s.pageName) { // console.log("ADB: Setting s from backup"); s = window.backupAdobe; window.s = s; } s.eVar78 = templateName; s.events = 'event90'; s.linkTrackEvents="event90"; s.linkTrackVars="eVar2,eVar3,eVar4,eVar5,eVar6,eVar16,eVar19,eVar25,eVar26,eVar28,eVar43,eVar59,eVar61,eVar62,prop63,eVar80,eVar79,list3,eVar78, events"; s.tl(document, 'o', 'Piano Template'); } function raiseLaunchEvent(name) { var e = new Event('launch:piano:' + name); window.dispatchEvent(e); } function removePianoToast() { setTimeout(() => { document.getElementById('po-overlay-toast-left').remove() }, 30000) } /** * Posts the Piano conversion data to the student beans API if the site is either * Herald ScotlanD or The National. * * @param {Object} conversion */ async function subscriptionComplete(conversion) { if (data_layer.site.id !== '308' && data_layer.site.id !== '1106') { return; } await fetch('/ws/public/student-beans/', { method: 'POST', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify(conversion) }); } tp.push(["addHandler", "checkoutComplete", function(conversion) { subscriptionComplete(conversion); var s = window.s; s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event. s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event. s.products = "Subscription : Metered Access;" + conversion.termId + ";1;"+conversion.chargeAmount; s.purchaseID = conversion.termConversionId; s.pageName = '(www) /subscribe/complete/'; // wipe out errors s.eVar31 = ''; s.tl(); $.cookie('resourceConverted', conversion.rid, {path: '/', domain: window.data_layer.site.cookie_domain}); $.cookie('pianoConverted', '1', {path: '/', domain: window.data_layer.site.cookie_domain}); raiseLaunchEvent('checkoutComplete'); }]); tp.push(["addHandler", "checkoutPaymentError", function(errorData) { var s = window.s; s.pageName = '(www) /subscribe/error/'; s.eVar31 = errorData.message; s.tl(); raiseLaunchEvent('checkoutPaymentError'); }]); tp.push(["addHandler", "checkoutError", function(errorData) { var s = window.s; s.pageName = '(www) /subscribe/error/'; s.eVar31 = errorData.message; s.tl(); raiseLaunchEvent('checkoutError'); }]); tp.push(["addHandler", "startCheckout", function () { var s = window.s; s.pageName = '(www) /subscribe/payment/'; // wipe out errors s.eVar31 = ''; s.tl(); raiseLaunchEvent('startCheckout'); }]); tp.push(["addHandler", "checkoutClose", function(conversion) { raiseLaunchEvent('checkoutClose'); // Did they abandon the cart? If so: was anything in their cart? if (typeof conversion.state === 'undefined' || conversion.state !== 'close') { return; } if (window.selectedOfferId === null || window.selectedTermId === null) { return; } $.post('/ws/piano/abandoned-cart/', {offer_id: window.selectedOfferId, term_id: window.selectedTermId}); }]); tp.push(["addHandler", "meterExpired", function(meterData){ var msg = "<div><b>meterName:</b> " + meterData.meterName + " | <b>views:</b> " + meterData.views + " | <b>totalViews:</b> " + meterData.totalViews + " | <b>viewsLeft:</b> " + meterData.viewsLeft + " | <b>maxViews:</b> " + meterData.maxViews + " | <b>callback:</b> " + meterData.callback + '</div>'; if ($.cookie('nq-show-piano-viewer') === 'yes') { $('#piano-meter-value').html(msg); $('#piano-meter-display').show(); $('#piano-meter-display-content').append(msg); } var cVal = window.location.href; trackLocation(true); console.log("Piano Meter Expired:", meterData.meterName); if (meterData.meterName === 'CL1 Meter') { console.log("Piano: Setting meter expired cookie"); $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); } raiseLaunchEvent('meterExpired'); }]); tp.push(["addHandler", "meterActive", function(meterData){ var msg = "<div><b>meterName:</b> " + meterData.meterName + " | <b>views:</b> " + meterData.views + " | <b>totalViews:</b> " + meterData.totalViews + " | <b>viewsLeft:</b> " + meterData.viewsLeft + " | <b>maxViews:</b> " + meterData.maxViews + " | <b>callback:</b> " + meterData.callback + '</div>'; if ($.cookie('nq-show-piano-viewer') === 'yes') { $('#piano-meter-value').html(msg); $('#piano-meter-display').show(); $('#piano-meter-display-content').append(msg); } console.log("Piano Meter running total:", meterData.meterName, meterData.totalViews, meterData.maxViews, meterData); if (meterData.meterName === 'CL1 Meter' && meterData.totalViews >= meterData.maxViews) { $.cookie('isMeterExpired', 'yes', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); } else { $.cookie('isMeterExpired', 'no', {path: '/', domain: window.data_layer.site.cookie_domain, expires: 1}); } }]); tp.push(["setCxenseSiteId", "1152119031415662061"]); data_layer.user.requires_extended_metering = 'no'; data_layer.piano.custom_variables.requires_extended_metering = 'no'; runPiano(); </script> <script type='text/javascript'> var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; var iasDataHandler, __iasPET = __iasPET || {}; __iasPET.queue = __iasPET.queue || []; __iasPET.pubId = '931298'; var pbjs = pbjs || {}; pbjs.que = pbjs.que || []; var carbonRealtime = JSON.parse(window.localStorage.getItem('ccRealtimeData')); var ozoneSettings = {}; var ozoneTargeting = { carbon_segment: carbonRealtime ? carbonRealtime.audiences.map(x => (x.id)) : [] }; function isMobile() { if (window.screen.width < 728) { return true; } return false; } var usePrebid = true; var whiteList = false; var adLight = false; var blackListAds = []; if (usePrebid) { // disable initial load so prebid can do its stuff // console.log('DFP: Disabling initial load'); googletag.cmd.push(function() { // console.log('DFP: Disabling initial load - read by DFP'); googletag.pubads().disableInitialLoad(); }); } </script> <script src="//d2zv5rkii46miq.cloudfront.net/0/latest/cmp_shim.js"></script> <script> /** * Adds key-values to page level of Google Publisher Tag * @example * addKeyValuesToGPT({"ap_a": ["1100"], "ap_x": ["134123"]}) * @param {Object} keyValues */ function addAsKeyValuesToGPT(keyValues) { if (!googletag.pubads) { googletag.cmd.push(function () { addAsKeyValuesToGPT(keyValues); }); return; } for (const key in keyValues) { if (Object.hasOwnProperty.call(keyValues, key)) { const value = keyValues[key]; googletag.pubads().setTargeting(key, value); } } } function onAudienceProjectDataAvailable(dataResponse) { console.log("AudienceProject data returned", dataResponse); // in keyValues there are full-reach key-values created, they needs to be sent to GAM and added to Prebid adform ad-units if (dataResponse.keyValues) { addAsKeyValuesToGPT(dataResponse.keyValues); } } function fetchAp() { AudienceProjectData.fetch('saknewsquest', { integrateWithCmp: true, waitForCmpConsent: true }, onAudienceProjectDataAvailable); } //Load the APS JavaScript Library !function(a9,a,p,s,t,A,g){if(a[a9])return;function q(c,r){a[a9]._Q.push([c,r])}a[a9]={init:function(){q("i",arguments)},fetchBids:function(){q("f",arguments)},setDisplayBids:function(){},targetingKeys:function(){return[]},_Q:[]};A=p.createElement(s);A.async=!0;A.src=t;g=p.getElementsByTagName(s)[0];g.parentNode.insertBefore(A,g)}("apstag",window,document,"script","//c.amazon-adsystem.com/aax2/apstag.js"); //Initialize the Library apstag.init({ pubID: '3147', adServer: 'googletag', }); </script> <script> if (typeof gs_channels === 'undefined') { gs_channels = ""; } rpx_init = ({ qry : 'http://www.richmondandtwickenhamtimes.co.uk', section : 'homes', site : 'www.richmondandtwickenhamtimes.co.uk', context : '', weather : 'sun'.toLowerCase(), temp : '11-15', gs_channels : gs_channels, age : '0' , gender : 'u' , nqd : '' // intentionall blank }); </script> <script type='text/javascript' src='https://pagead2.googlesyndication.com/pagead/imgad?id=CICAgKDLqv_TbRABGAEoATIIgOw1LHg7xnFAt-_HogU'></script> <script> var bidTimeout = 1200; window.unfilteredAdUnits = [{"sizes":[1,1],"alternate_mobile_size":"","slotType":"outofpage","domName":"DFP_out_of_page","positionName":"out_of_page","isVast":false,"collapseContainer":false,"targets":["takeover"],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[[970,250],[728,90]],"alternate_mobile_size":[320,50],"slotType":"standard","domName":"DFP_top_leaderboard","positionName":"top_leaderboard","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297380","rubicon_mobile_zone_id":"297370","rubicon_desktop_size_ids":["2","57"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550668","appnexus_mobile_placement_id":"10550747","criteo_desktop_placement_id":"985648","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"14304608","groupm_mobile_placement_id":"17479428"},{"sizes":[728,90],"alternate_mobile_size":[[300,100],[320,50]],"slotType":"standard","domName":"DFP_bottom_leaderboard","positionName":"bottom_leaderboard","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"297378","rubicon_mobile_zone_id":"425710","rubicon_desktop_size_ids":["2"],"rubicon_mobile_size_ids":["43"],"appnexus_desktop_placement_id":"10550678","appnexus_mobile_placement_id":"10550748","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"17377997","groupm_mobile_placement_id":"17479454"},{"sizes":[120,600],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_skyscraper","positionName":"skyscraper","isVast":false,"collapseContainer":false,"targets":["takeover"],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_standard_mpu_1","positionName":"standard_mpu_1","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297390","rubicon_mobile_zone_id":"331024","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"10550683","appnexus_mobile_placement_id":"10550759","criteo_desktop_placement_id":"744435","criteo_mobile_placement_id":"760547","use_amazon":true,"groupm_desktop_placement_id":"17946307","groupm_mobile_placement_id":"13260893"},{"sizes":[[300,250],[300,600]],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_premium_mpu","positionName":"premium_mpu","isVast":false,"collapseContainer":false,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297382","rubicon_mobile_zone_id":"331020","rubicon_desktop_size_ids":["10","15"],"rubicon_mobile_size_ids":["10","15"],"appnexus_desktop_placement_id":"10550686","appnexus_mobile_placement_id":"10550760","criteo_desktop_placement_id":"744494","criteo_mobile_placement_id":"760443","use_amazon":true,"groupm_desktop_placement_id":"14304603","groupm_mobile_placement_id":"16550455"},{"sizes":[[300,250],[300,600]],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_interstitial_mpu","positionName":"interstitial_mpu","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[468,60],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_banner","positionName":"banner","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"297374","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":["1"],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"10550697","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[120,60],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_banner_companion","positionName":"banner_companion","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":["fluid",[570,250],[468,250],[300,250],[1,1]],"alternate_mobile_size":["fluid",[300,250],[1,1]],"slotType":"standard","domName":"DFP_in_article_mpu","positionName":"in_article_mpu","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"297386","rubicon_mobile_zone_id":"297372","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"10550690","appnexus_mobile_placement_id":"10550767","criteo_desktop_placement_id":"744410","criteo_mobile_placement_id":"760447","use_amazon":true,"groupm_desktop_placement_id":"17307157","groupm_mobile_placement_id":"17479445"},{"sizes":[320,50],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_mobile_top_leaderboard","positionName":"mobile_top_leaderboard","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[320,50],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_mobile_bottom_leaderboard","positionName":"mobile_bottom_leaderboard","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_standard_mpu_2","positionName":"standard_mpu_2","isVast":false,"collapseContainer":true,"targets":["takeover"],"useRubicon":true,"rubicon_desktop_zone_id":"331028","rubicon_mobile_zone_id":"534778","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"10550687","appnexus_mobile_placement_id":"10550761","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":true,"groupm_desktop_placement_id":"17375910","groupm_mobile_placement_id":"17375922"},{"sizes":[728,90],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_mid_leaderboard","positionName":"mid_leaderboard","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":false,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_gallery_interstitial","positionName":"gallery_interstitial","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"","rubicon_mobile_zone_id":"539372","rubicon_desktop_size_ids":[""],"rubicon_mobile_size_ids":["15"],"appnexus_desktop_placement_id":"","appnexus_mobile_placement_id":"10550774","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""},{"sizes":[300,250],"alternate_mobile_size":"","slotType":"standard","domName":"DFP_gallery_mpu","positionName":"gallery_mpu","isVast":false,"collapseContainer":false,"targets":[""],"useRubicon":true,"rubicon_desktop_zone_id":"539370","rubicon_mobile_zone_id":"","rubicon_desktop_size_ids":["15"],"rubicon_mobile_size_ids":[""],"appnexus_desktop_placement_id":"10550696","appnexus_mobile_placement_id":"","criteo_desktop_placement_id":"","criteo_mobile_placement_id":"","use_amazon":false,"groupm_desktop_placement_id":"","groupm_mobile_placement_id":""}]; //whenever you want header bids call this function function fetchHeaderBids() { // console.log("DFP: Fetching headerbids"); // new prebid implementation var apstagSlots = []; getPETRequest(); $.each(unfilteredAdUnits, function(i, unit) { if (unit.isVast) { return; } if(unit.use_amazon) { var awsSizes = []; var sizes = null; // work around poor data format if (unit.alternate_mobile_size && isMobile()) { sizes = unit.alternate_mobile_size; } else { sizes = unit.sizes; } if (typeof sizes[0] === 'object') { $.each(sizes, function (k, v) { awsSizes.push(v); }); } else { awsSizes = [sizes]; } var amazonSlot = { slotID: unit.domName, sizes: awsSizes, }; apstagSlots.push(amazonSlot); } }); // TODO 1 var bidders = ['a9', 'prebid', 'ias']; // create a requestManager to keep track of bidder state to determine when to send ad server // request and what apstagSlots to request from the ad server var requestManager = { adserverRequestSent: false, adSlots: [], }; //loop through bidder array and add the bidders to the request manager: bidders.forEach(function(bidder) { requestManager[bidder] = false; }) // a helper function that returns googletag objects corresponding to the slotIDs in the slot objects function _getGPTSlots(apstagSlots) { // get all of the slot IDs that were requested var slotIDs = apstagSlots.map(function(slot) { return slot.slotID; }); // return the slot objects corresponding to the slotIDs return googletag.pubads().getSlots().filter(function(slot) { // return true if the ID of the slot object is in the slotIDs array return slotIDs.indexOf(slot.getSlotElementId()) > -1; }); } function getPETRequest() { googletag.cmd.push(function() { // read the currently defined GPT ad slots for sending to the PET endpoint // defined all GPT ad slots before calling PET var gptSlots = googletag.pubads().getSlots(); var iasPETSlots = []; for (var i = 0; i < gptSlots.length; i++) { var sizes = gptSlots[i].getSizes().map(function(size) { if (size.getWidth && size.getHeight) return [size.getWidth(), size.getHeight()]; else return [1, 1]; }); iasPETSlots.push({ adSlotId: gptSlots[i].getSlotElementId(), //size: can either be a single size (for example, [728, 90]) // or an array of sizes (for example, [[728, 90], [970, 90]]) size: sizes, adUnitPath: gptSlots[i].getAdUnitPath() }); } // wait for IAS to return data var iasDataHandler = function(adSlotData) { headerBidderBack('ias'); }; // make the request to PET. if your page makes multiple ad requests to DFP // (for example, lazily loaded ads, infinite scrolling pages, etc.), make // a request to PET before every request to DFP __iasPET.queue.push({ adSlots: iasPETSlots, dataHandler: iasDataHandler }); }); } // return true if all bidders have returned function allBiddersBack() { var allBiddersBack = bidders // get the booleans from the object .map(function(bidder) { return requestManager[bidder]; }) // get rid of false values - indicates that the bidder has responded .filter(Boolean) // if length is equal to bidders, all bidders are back .length === bidders.length; return allBiddersBack; } // handler for header bidder responses function headerBidderBack(bidder) { // console.log("DFP: headerBidderBack called with", bidder); if (typeof bidder === 'object') { requestManager.adSlots = bidder; bidder = 'prebid'; } // return early if request to adserver is already sent if (requestManager.adserverRequestSent === true) { return; } // flip bidder back flag if (bidder === 'a9') { requestManager.a9 = true; } else if (bidder === 'prebid') { requestManager.prebid = true; } else if (bidder === 'ias') { requestManager.ias = true; } // if all bidders are back, send the request to the ad server if (allBiddersBack()) { sendAdserverRequest(); } } // actually get ads from DFP function sendAdserverRequest() { // console.log("DFP: All bidders back"); // return early if request already sent if (requestManager.adserverRequestSent === true) { return; } if (typeof window.prebidReady === 'undefined') { window.prebidReady = performance.now(); } if (window.googleReady) { // flip the boolean that keeps track of whether the adserver request was sent requestManager.adserverRequestSent = true; // flip pbjs boolean to signal to pbjs the ad server has already been called pbjs.adserverCalled = true; //flip boolean for adserver request to avoid duplicate requests requestManager.sendAdserverRequest = true; // make ad request to DFP googletag.cmd.push(function() { window.executionSet = performance.now(); apstag.setDisplayBids(); __iasPET.setTargetingForGPT(); // console.log("DFP: Refresh called, setting adslots to ", requestManager.adSlots); if (requestManager.adSlots.length > 0){ googletag.pubads().refresh(requestManager.adSlots); } else { googletag.pubads().refresh(); } setPerformanceCookie(); }); } else { window.setTimeout(function() { sendAdserverRequest(true); }, 200); } } function requestBids(apstagSlots, bidTimeout) { // fetch apstag bids, set bid targting, then call headerBidderBack // to get the ads for the first time apstag.fetchBids({ slots: apstagSlots, timeout: (bidTimeout - 200) }, function(bids) { headerBidderBack('a9'); }); var edktAudiences; // Here we fetch audiences which the user has been placed in. try { edktAudiences = JSON.parse(localStorage.getItem('edkt_matched_audience_ids') || '[]') .slice(0, 100) .map(String); } catch (e) { edktAudiences = []; } // request bids from prebid pbjs.que.push(function() { // console.log("DFP: PBJS request bids called"); pbjs.rp.requestBids({ callback: headerBidderBack, data: { airgrid: { perid: edktAudiences }, ozoneSettings, ozoneTargeting }, }); }); } //requestBids requestBids(apstagSlots, bidTimeout) // set timeout to send request to call sendAdserverRequest() after timeout // if all bidders haven't returned before then window.setTimeout(function() { sendAdserverRequest(); }, bidTimeout); }; function setPerformanceCookie() { var start = window.startExec; var prebidReady = window.prebidReady - start; var domComplete = window.domComplete - start; var googleComplete = window.googleComplete - start; var finished = window.executionSet - start; /* var cVal = Math.round(prebidReady) + ':' + Math.round(domComplete) + ':' + Math.round(googleComplete) + ':' + Math.round(finished); */ var cVal = Math.round(finished); var t = new Date(); t.setMilliseconds(t.getMilliseconds() + 600000); $.cookie('adtiming', cVal, {path: '/', domain: '.richmondandtwickenhamtimes.co.uk', expires: t}); } </script> <link rel="apple-touch-icon" href="/resources/images/17399730/"> <link rel="apple-touch-icon" sizes="72x72" href="/resources/images/17399729/"> <link rel="apple-touch-icon" sizes="114x114" href="/resources/images/17399731/"> <!-- Add iconify --> <script src="https://code.iconify.design/1/1.0.7/iconify.min.js"></script> </head> <body class="sticky-footer allow-skins" data-cache-buster="D5b3rJbf" data-template="" data-template-colour="Blue" data-namespace="standard"> <!-- standard - AfterBodyTagInclude.html --> <!-- ##+ +## ##: `#####. ####### ### ### ###### `#####. ####### ### ,## +##### +## ###' ## ####### ######## ### ### ###### ####### ######## ### ,## ######: .## #### ## ### ### ### ### ###### ##, ### ### ### ### ### ,## ##` ##,#+##:## ### ### ####### ###### #####+ ### ### ####### ### ,## +##### ####`####+ ### ### ###### ####### #####+ ### ### ###### ### ,## #### #### .###. '## ##' ### ### ### ,##: ##, '## ##' ### ### ### ### '## +## :### ### ####### ### `##+ ### ### ##, ####### ### `##+ `####### ######+ ##: ### ##### ### ### ### ,### ##, ##### ### ### ##### ####+ Developers, designers, testers - interested in working for us? Contact this guy....https://uk.linkedin.com/in/hillsimon --> <div style="height: 0px"><div id="DFP_out_of_page"></div></div> <div id="paywallWindowOverlay"></div> <div id="takeover"> <div id="martini-config" class="layout"> <div id="header-content"> <!-- standard - header-1.html --> <header id="site-header" class="site-header site-header--1" > <!-- standard - HeaderTopNavLinks.html --> <div class="header-topnav"> <div class="container-inner-width"> <div class="header-topnav-links"> <ul class="list-style-none"> <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="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">Homes</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book An Ad</a></li> <li><a class="mar-nav--promo-link" href="https://directory.richmondandtwickenhamtimes.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> <li><a class="mar-nav--promo-link" href="/contact/">Contact us</a></li> </ul> </div> <ul id="links-nav" class="header-topnav--links-nav list-style-none"> <li class="links-nav-label"><span class="links-nav-label-text">More</span> <ul class="list-style-none"> <li class="dropdown-icon-closed"> <span class="iconify" data-icon="akar-icons:chevron-down"></span> </li> <li class="dropdown-icon-open" style="display: none;"> <span class="iconify" data-icon="akar-icons:chevron-up"></span> </li> <li class="links-nav-container"> <ul class="list-style-none"> <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="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">Homes</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book An Ad</a></li> <li><a class="mar-nav--promo-link" href="https://directory.richmondandtwickenhamtimes.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> <li><a class="mar-nav--promo-link" href="/contact/">Contact us</a></li> </ul> </li> </ul> </li> </ul> </div> </div> <div class="site-brand container-inner-width"> <div class="site-brand__container"> <a href="/"> <img src="/resources/images/small_site_logo/" alt="Richmond and Twickenham Times" class="site-brand__brand-image"/> </a> </div> <!-- standard - SimpleHeaderTopNavigation.html --> <div class="simple-header-top-navigation"> <div class="simple-header-top-navigation__links"> <div class="simple-header-top-navigation__links--primary-links header-primary-links"> <ul class="list-style-none top-nav-overflow"> <li><a href="/newsletters/"><button class="mar-btn--promo-primary">Newsletters</button></a></li> </ul> </div> <div class="simple-header-top-navigation__links--classifieds"> </div> </div> <div class="simple-header-top-navigation__links--account"> <a href="/my/account/log-in/" class="simple-header-top-navigation__user-login piano-id__login"> <button id="headerUserAccountButton"> <!-- standard - IconUser.html --> <svg xmlns="http://www.w3.org/2000/svg " width="14" height="16" viewBox="0 0 10 14" fill="none"> <circle cx="5" cy="3.85718" r="3" fill="black"/> <ellipse cx="5" cy="10.2857" rx="5" ry="2.85714" fill="black"/> </svg> </button> </a> </div> <button aria-expanded="false" aria-label="Open the menu" class="simple-header-top-navigation__mega-menu-btn primary-nav__menu--more-btn"> <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> </button> </div> </div> <!-- standard - MegaMenu.html --> <div id="mega-menu" class="mega-menu" style="display: none;"> <div class="mega-menu__container mega-menu__wrapper"> <div class="mega-menu__cancel-button"> <i aria-expanded="true" aria-hidden="true" aria-label="Close the menu" class="mega-menu__cancel-button--icon"> <span class="iconify" data-icon="eva:close-fill" data-inline="false"></span> <div>Close</div> </i> </div> <div class="mega-menu__search"> <form method="get" action="/search/"> <h4 class="mega-menu__search--title">Search</h4> <div class="mega-menu__search--bar"> <input class="searchbar-input" type="text" name="search" placeholder="Search Richmond and Twickenham Times"> <button class="searchbar-btn mira-search-button" type="submit"><span class="iconify" data-icon="fe:search" data-inline="false"></span></button> </div> </form> </div> <div class="mega-menu__main-list link-list"> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/news/"> <h3><span class="mega-menu__main-list--parent-link">News</span></h3> </a> </div> <div class="mega-menu__main-list--child-links"> <div class="child-item"> <a href="/news/national/">UK News</a> </div> <div class="child-item"> <a href="/news/crime/">Crime</a> </div> <div class="child-item"> <a href="/news/coronavirus/">Coronavirus</a> </div> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/sport/"> <h3><span class="mega-menu__main-list--parent-link">Sport</span></h3> </a> </div> <div class="mega-menu__main-list--child-links"> <div class="child-item"> <a href="/sport/football/">Football</a> </div> <div class="child-item"> <a href="/sport/rugby/">Rugby</a> </div> <div class="child-item"> <a href="/sport/national/">UK Sport News</a> </div> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/leisure/"> <h3><span class="mega-menu__main-list--parent-link">What's On</span></h3> </a> </div> <div class="mega-menu__main-list--child-links"> <div class="child-item"> <a href="/leisure/theatre/">Theatre</a> </div> <div class="child-item"> <a href="/leisure/london-calling/">London Calling</a> </div> <div class="child-item"> <a href="/leisure/music/">Music</a> </div> <div class="child-item"> <a href="/leisure/filmandtv/">Film & TV</a> </div> <div class="child-item"> <a href="/leisure/food/">Food</a> </div> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/localevents/"> <h3><span class="mega-menu__main-list--parent-link">Local Events</span></h3> </a> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/young-reporter/"> <h3><span class="mega-menu__main-list--parent-link">Young Reporter</span></h3> </a> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/education/"> <h3><span class="mega-menu__main-list--parent-link">Education</span></h3> </a> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/offers/"> <h3><span class="mega-menu__main-list--parent-link">Offers</span></h3> </a> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/memorials/"> <h3><span class="mega-menu__main-list--parent-link">Announcements</span></h3> </a> </div> <div class="mega-menu__main-list--child-links"> <div class="child-item"> <a href="/memorials/acknowledgements/">Acknowledgements</a> </div> <div class="child-item"> <a href="/memorials/death-notices/">Death Notices</a> </div> <div class="child-item"> <a href="/memorials/in-memoriam/">In Memoriam</a> </div> <div class="child-item"> <a href="https://www.richmondandtwickenhamtimes.co.uk/announcements/public_notices/">Public notices</a> </div> <div class="child-item"> <a href="https://www.richmondandtwickenhamtimes.co.uk/announcements/">Other announcements</a> </div> <div class="child-item"> <a href="/memorials/bereavement-guide/">Bereavement Guide</a> </div> </div> </div> <div class="divider"></div> </div> <div class="mega-menu__main-list--list-item"> <div> <div> <a href="/eedition/"> <h3><span class="mega-menu__main-list--parent-link">E-Newspaper</span></h3> </a> </div> </div> <div class="divider"></div> </div> </div> </div> <div class="mega-menu__sticky"> <ul class="list-style-none mega-menu__sticky--list"> <div class="mega-menu__sticky--primary-links"> <li><a href="/newsletters/"><button class="mar-btn--promo-primary">Newsletters</button></a></li> </div> <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="/cars/">Cars</a></li> <li><a class="mar-nav--promo-link" href="/homes/">Homes</a></li> <li><a class="mar-nav--promo-link" href="/advertising/">Book An Ad</a></li> <li><a class="mar-nav--promo-link" href="https://directory.richmondandtwickenhamtimes.co.uk/" target="blank">Local listings</a></li> <li><a class="mar-nav--promo-link" href="/li/">Local info</a></li> <li><a class="mar-nav--promo-link" href="/contact/">Contact us</a></li> </ul> </div> </div> <!-- standard - SimplePrimaryNavigation.html --> <nav id="primary-nav" class="primary-nav"> <div class="primary-nav__container container-inner-width"> <span class="primary-nav__left"> <nav class="primary-nav__menu" role="list"> <div class="primary-nav__menu-container"> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/news/">News</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/sport/">Sport</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/leisure/">What's On</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/localevents/">Local Events</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/young-reporter/">Young Reporter</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/education/">Education</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/offers/">Offers</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/memorials/">Announcements</a> </div> <div class="primary-nav__menu--item"> <a class="primary-nav__menu--link" href="/eedition/">E-Newspaper</a> </div> </div> </nav> </span> <span class="primary-nav__right"> <div class="primary-nav__menu--more-btn"> <button aria-expanded="false" aria-label="Open the menu" class="more-link more-burger-icon"> <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> </button> </div> <div class="primary-nav__right--search"> <a class="primary-nav__container--search-icon search-icon" href="#"><span class="iconify" data-icon="ion:search-circle-sharp" data-inline="false"></span></a> </div> </span> </div> </nav> <!-- standard - HeaderSubNavigation.html --> <div class="sub-nav"> <a href="/homes/" class="sub-nav__breadcrumb">Property</a> <a href="/homes/homes_for_rent/">Rental Property</a> <a href="/homes/find_agents/">Find Agents</a> <a href="/homes/eddisonwells/">Eddison Wells</a> </div> </header> </div> <div id="redesign-content"> <div class="top-dfp-wrapper"> <div class="dfp-top-ad-container container" data-uses-js="dfp-top-ad-fixed"> <div class="mar-leaderboard mar-leaderboard--top "> <div class="leaderboard-ad top-leaderboard-ad"><div id="DFP_top_leaderboard"></div></div> </div> </div> </div> <div id="module-content" class="content"> <div class="container mar-block-ad mar-block-ad--piano-promo" id="piano-container-top"></div> <div class="container mar-block-ad mar-block-ad--piano-promo" id="po-inline-banner-top-hero-content"></div> <!-- New template --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tarekraafat/autocomplete.js@10.2.6/dist/css/autoComplete.02.min.css"> <div id="propertyModule" class="property-landing-homes container"> <h2 class="block-heading">Homes</h2> <!-- Property Search --> <!-- standard - ResponsivePropertyLandingSearchFormInclude.html --> <div class="property-search"> <h1> Search <span class="saleRentTotalPropertiesText" data-total-lettings-properties="0" data-total-sales-properties="1">1</span> properties for <span class="saleRentText">sale</span> in and around Richmond </h1> <div class="property-search-container"> <!--property-search-active--> <form method="post" action="/homes/search/" class="mar-form-elements property-search-form"> <div class="search-field-container"> <div class="search-field-container__buy-rent-switch buy-rent-switch"> <span class="selected" data-type="sale"> <span>For sale</span> <span class="buy-rent-switch-icon"> <span class="iconify" data-icon="akar-icons:chevron-down"></span> </span> </span> <span class="buy-rent-option option" data-type="rent">For rent</span> </div> <input type="text" id="searchLocation" name="location" placeholder="Enter a place, area or postcode"> <div class="search-field-container__property-search-icon"> <span class="iconify" data-icon="ant-design:search-outlined"></span> </div> </div> <div class="hide-when-collapsed-flex"> <div class="mar-form-elements__form-group"> <label for="min_bedrooms">Bedrooms</label> <select name="min_bedrooms" class="mar-form-elements__form-control"> <option value="0" selected="selected">0 or more</option> <option value="1" >1 or more</option> <option value="2" >2 or more</option> <option value="3" >3 or more</option> <option value="4" >4 or more</option> <option value="5" >5 or more</option> </select> </div> <div class="mar-form-elements__form-group"> <div id="salesPrices" class="form-group-price" > <label for="min_max_price_sales" class="priceText">Price</label> <select name="min_price_sales" class="price-min"> <option value="0" selected="selected">No minimum</option> <option value="30000" >£30,000</option> <option value="40000" >£40,000</option> <option value="50000" >£50,000</option> <option value="60000" >£60,000</option> <option value="70000" >£70,000</option> <option value="80000" >£80,000</option> <option value="90000" >£90,000</option> <option value="100000" >£100,000</option> <option value="110000" >£110,000</option> <option value="120000" >£120,000</option> <option value="130000" >£130,000</option> <option value="140000" >£140,000</option> <option value="150000" >£150,000</option> <option value="160000" >£160,000</option> <option value="170000" >£170,000</option> <option value="180000" >£180,000</option> <option value="190000" >£190,000</option> <option value="200000" >£200,000</option> <option value="225000" >£225,000</option> <option value="250000" >£250,000</option> <option value="275000" >£275,000</option> <option value="300000" >£300,000</option> <option value="325000" >£325,000</option> <option value="350000" >£350,000</option> <option value="375000" >£375,000</option> <option value="400000" >£400,000</option> <option value="425000" >£425,000</option> <option value="450000" >£450,000</option> <option value="475000" >£475,000</option> <option value="500000" >£500,000</option> <option value="550000" >£550,000</option> <option value="600000" >£600,000</option> <option value="650000" >£650,000</option> <option value="700000" >£700,000</option> <option value="800000" >£800,000</option> <option value="900000" >£900,000</option> <option value="1000000" >£1,000,000</option> <option value="2000000" >£2,000,000</option> <option value="10000000" >No maximum</option> </select> <select name="max_price_sales" class="price-max"> <option value="0" >No minimum</option> <option value="30000" >£30,000</option> <option value="40000" >£40,000</option> <option value="50000" >£50,000</option> <option value="60000" >£60,000</option> <option value="70000" >£70,000</option> <option value="80000" >£80,000</option> <option value="90000" >£90,000</option> <option value="100000" >£100,000</option> <option value="110000" >£110,000</option> <option value="120000" >£120,000</option> <option value="130000" >£130,000</option> <option value="140000" >£140,000</option> <option value="150000" >£150,000</option> <option value="160000" >£160,000</option> <option value="170000" >£170,000</option> <option value="180000" >£180,000</option> <option value="190000" >£190,000</option> <option value="200000" >£200,000</option> <option value="225000" >£225,000</option> <option value="250000" >£250,000</option> <option value="275000" >£275,000</option> <option value="300000" >£300,000</option> <option value="325000" >£325,000</option> <option value="350000" >£350,000</option> <option value="375000" >£375,000</option> <option value="400000" >£400,000</option> <option value="425000" >£425,000</option> <option value="450000" >£450,000</option> <option value="475000" >£475,000</option> <option value="500000" >£500,000</option> <option value="550000" >£550,000</option> <option value="600000" >£600,000</option> <option value="650000" >£650,000</option> <option value="700000" >£700,000</option> <option value="800000" >£800,000</option> <option value="900000" >£900,000</option> <option value="1000000" >£1,000,000</option> <option value="2000000" >£2,000,000</option> <option value="10000000" selected="selected">No maximum</option> </select> </div> <div id="lettingsPrices" class="form-group-price" style="display: none;"> <label for="min_max_price_lettings" class="priceText">Monthly rent</label> <select name="min_price_lettings" class="price-min"> <option value="0" >No minimum</option> <option value="100" >£100</option> <option value="150" >£150</option> <option value="200" >£200</option> <option value="250" >£250</option> <option value="300" >£300</option> <option value="350" >£350</option> <option value="400" >£400</option> <option value="450" >£450</option> <option value="500" >£500</option> <option value="600" >£600</option> <option value="700" >£700</option> <option value="800" >£800</option> <option value="900" >£900</option> <option value="1000" >£1,000</option> <option value="1100" >£1,100</option> <option value="1200" >£1,200</option> <option value="1250" >£1,250</option> <option value="1300" >£1,300</option> <option value="1400" >£1,400</option> <option value="1500" >£1,500</option> <option value="1750" >£1,750</option> <option value="2000" >£2,000</option> <option value="2250" >£2,250</option> <option value="2500" >£2,500</option> <option value="2750" >£2,750</option> <option value="3000" >£3,000</option> <option value="3500" >£3,500</option> <option value="4000" >£4,000</option> <option value="4500" >£4,500</option> <option value="5000" >£5,000</option> <option value="5500" >£5,500</option> <option value="6000" >£6,000</option> <option value="6500" >£6,500</option> <option value="7000" >£7,000</option> <option value="8000" >£8,000</option> <option value="9000" >£9,000</option> <option value="10000" >£10,000</option> <option value="12500" >£12,500</option> <option value="15000" >£15,000</option> <option value="17500" >£17,500</option> <option value="20000" >£20,000</option> <option value="25000" >£25,000</option> <option value="30000" >£30,000</option> <option value="35000" >£35,000</option> <option value="40000" >No maximum</option> </select> <select name="max_price_lettings" class="price-max"> <option value="0" >No minimum</option> <option value="100" >£100</option> <option value="150" >£150</option> <option value="200" >£200</option> <option value="250" >£250</option> <option value="300" >£300</option> <option value="350" >£350</option> <option value="400" >£400</option> <option value="450" >£450</option> <option value="500" >£500</option> <option value="600" >£600</option> <option value="700" >£700</option> <option value="800" >£800</option> <option value="900" >£900</option> <option value="1000" >£1,000</option> <option value="1100" >£1,100</option> <option value="1200" >£1,200</option> <option value="1250" >£1,250</option> <option value="1300" >£1,300</option> <option value="1400" >£1,400</option> <option value="1500" >£1,500</option> <option value="1750" >£1,750</option> <option value="2000" >£2,000</option> <option value="2250" >£2,250</option> <option value="2500" >£2,500</option> <option value="2750" >£2,750</option> <option value="3000" >£3,000</option> <option value="3500" >£3,500</option> <option value="4000" >£4,000</option> <option value="4500" >£4,500</option> <option value="5000" >£5,000</option> <option value="5500" >£5,500</option> <option value="6000" >£6,000</option> <option value="6500" >£6,500</option> <option value="7000" >£7,000</option> <option value="8000" >£8,000</option> <option value="9000" >£9,000</option> <option value="10000" >£10,000</option> <option value="12500" >£12,500</option> <option value="15000" >£15,000</option> <option value="17500" >£17,500</option> <option value="20000" >£20,000</option> <option value="25000" >£25,000</option> <option value="30000" >£30,000</option> <option value="35000" >£35,000</option> <option value="40000" selected="selected">No maximum</option> </select> </div> </div> <div class="search-button-container"> <!-- standard - Buttons.html --> <button type="submit" data-uses-js="" class=" mar-btn mar-btn--dark mar-btn--md " > Search </button> </div> </div> <input type="hidden" id="searchServiceType" name="service_type" value="for_sale" /> <input type="hidden" id="searchSortType" name="sort_type" value="high-to-low" /> <input type="hidden" id="searchViewType" name="view_type" value="gallery" /> </form> </div> <div class="property-search-tabs-container"> <div class="property-search-tabs"> <div class="property-search-tabs__tab ps-tab-popular" data-tab="popularTab"> Top <span class="tab-hide-mobile">locations </span><span class="iconify" data-icon="akar-icons:chevron-down"></span> </div> </div> <div class="property-search-tab-contents"> <div id="popularTab" class="property-search-tab-contents__content" style="display: none;"> <ul id="salesNearbyLocations" > <li><a href="/homes/homes_for_sale/in/Kingston+Upon+Thames%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=for_sale&min_beds=0&view_type=gallery">Kingston Upon Thames (31)</a></li> <li><a href="/homes/homes_for_sale/in/Twickenham%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=for_sale&min_beds=0&view_type=gallery">Twickenham (63)</a></li> </ul> <ul id="lettingsNearbyLocations" style="display: none;"> <li><a href="/homes/homes_to_let/in/Kingston+Upon+Thames%2C+Surrey/?min_value=1&max_value=40000&sort_type=high-to-low&property_type=to_let&min_beds=0&view_type=gallery">Kingston Upon Thames (17)</a></li> <li><a href="/homes/homes_to_let/in/Twickenham%2C+Middlesex/?min_value=1&max_value=40000&sort_type=high-to-low&property_type=to_let&min_beds=0&view_type=gallery">Twickenham (31)</a></li> </ul> </div> </div> </div> </div> <!-- Property Search --> <!-- standard - ResponsivePropertyAccordion.html --> <div class="property-accordian" id="property-accordion"> <h3 class="block-heading"> <a href="#" data-accordion="#property-accordion-list">Browse properties for sale in and around Richmond <span class="iconify" data-icon="akar-icons:chevron-down"></span></a> </h3> <div id="property-accordion-list"> <div class="property-accordion-list__card"> <div class="card-header" id="headingOne" data-accordion="#collapse1"> <h5> <a href="#collapse1"> HOMES FOR SALE WITH LONDON POSTCODES </a> </h5> </div> <div id="collapse1"> <div class="card-body"> <ul> <li><a title="Find property for sale in Balham, London, Inner London" href="/homes/homes_for_sale/in/Balham%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Balham</a> (15)</li><li><a title="Find property for sale in Battersea, Inner London" href="/homes/homes_for_sale/in/Battersea%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Battersea</a> (24)</li><li><a title="Find property for sale in Chiswick, London, Inner London" href="/homes/homes_for_sale/in/Chiswick%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Chiswick</a> (10)</li><li><a title="Find property for sale in Colliers Wood, Wimbledon, Outer London" href="/homes/homes_for_sale/in/Colliers+Wood%2C+Wimbledon%2C+Outer+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Colliers Wood</a> (255)</li><li><a title="Find property for sale in Crystal Palace, Inner London" href="/homes/homes_for_sale/in/Crystal+Palace%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Crystal Palace</a> (26)</li><li><a title="Find property for sale in Earlsfield, London, Inner London" href="/homes/homes_for_sale/in/Earlsfield%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Earlsfield</a> (29)</li><li><a title="Find property for sale in Mortlake, London, Inner London" href="/homes/homes_for_sale/in/Mortlake%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Mortlake</a> (5)</li><li><a title="Find property for sale in Norbury, London, Inner London" href="/homes/homes_for_sale/in/Norbury%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Norbury</a> (76)</li><li><a title="Find property for sale in Putney, Inner London" href="/homes/homes_for_sale/in/Putney%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Putney</a> (40)</li><li><a title="Find property for sale in Raynes Park, Inner London" href="/homes/homes_for_sale/in/Raynes+Park%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Raynes Park</a> (105)</li><li><a title="Find property for sale in Roehampton, London, Inner London" href="/homes/homes_for_sale/in/Roehampton%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Roehampton</a> (14)</li><li><a title="Find property for sale in South Norwood, London, Inner London" href="/homes/homes_for_sale/in/South+Norwood%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">South Norwood</a> (86)</li><li><a title="Find property for sale in Southfields, London, Inner London" href="/homes/homes_for_sale/in/Southfields%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Southfields</a> (25)</li><li><a title="Find property for sale in Streatham Hill, London, Inner London" href="/homes/homes_for_sale/in/Streatham+Hill%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Streatham Hill</a> (20)</li><li><a title="Find property for sale in Streatham Vale, London, Inner London" href="/homes/homes_for_sale/in/Streatham+Vale%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Streatham Vale</a> (153)</li><li><a title="Find property for sale in Streatham, London, Inner London" href="/homes/homes_for_sale/in/Streatham%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Streatham</a> (49)</li><li><a title="Find property for sale in Tooting, London, Inner London" href="/homes/homes_for_sale/in/Tooting%2C+London%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Tooting</a> (176)</li><li><a title="Find property for sale in Upper Norwood, Petworth, West Sussex" href="/homes/homes_for_sale/in/Upper+Norwood%2C+Petworth%2C+West+Sussex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Upper Norwood</a> (1)</li><li><a title="Find property for sale in Wandsworth, Inner London" href="/homes/homes_for_sale/in/Wandsworth%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Wandsworth</a> (10)</li><li><a title="Find property for sale in Wimbledon, Inner London" href="/homes/homes_for_sale/in/Wimbledon%2C+Inner+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Wimbledon</a> (117)</li> </ul> </div> </div> </div> <div class="property-accordion-list__card"> <div class="card-header" id="headingOne" data-accordion="#collapse2"> <h5> <a href="#collapse2"> HOMES FOR SALE IN SURREY OR GREATER LONDON </a> </h5> </div> <div id="collapse2"> <div class="card-body"> <ul> <li><a title="Find property for sale in Addiscombe, Croydon, Surrey" href="/homes/homes_for_sale/in/Addiscombe%2C+Croydon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Addiscombe</a> (227)</li><li><a title="Find property for sale in Ashtead, Surrey" href="/homes/homes_for_sale/in/Ashtead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Ashtead</a> (143)</li><li><a title="Find property for sale in Banstead, Surrey" href="/homes/homes_for_sale/in/Banstead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Banstead</a> (217)</li><li><a title="Find property for sale in Beddington, Croydon, Surrey" href="/homes/homes_for_sale/in/Beddington%2C+Croydon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Beddington</a> (72)</li><li><a title="Find property for sale in Belmont, Sutton, Surrey" href="/homes/homes_for_sale/in/Belmont%2C+Sutton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Belmont</a> (79)</li><li><a title="Find property for sale in Bookham, Leatherhead, Surrey" href="/homes/homes_for_sale/in/Bookham%2C+Leatherhead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Bookham</a> (12)</li><li><a title="Find property for sale in Burgh Heath, Tadworth, Surrey" href="/homes/homes_for_sale/in/Burgh+Heath%2C+Tadworth%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Burgh Heath</a> (170)</li><li><a title="Find property for sale in Carshalton, Surrey" href="/homes/homes_for_sale/in/Carshalton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Carshalton</a> (143)</li><li><a title="Find property for sale in Caterham, Surrey" href="/homes/homes_for_sale/in/Caterham%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Caterham</a> (126)</li><li><a title="Find property for sale in Cheam, Sutton, Surrey" href="/homes/homes_for_sale/in/Cheam%2C+Sutton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Cheam</a> (64)</li><li><a title="Find property for sale in Chertsey, Surrey" href="/homes/homes_for_sale/in/Chertsey%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Chertsey</a> (1)</li><li><a title="Find property for sale in Chessington, Surrey" href="/homes/homes_for_sale/in/Chessington%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Chessington</a> (233)</li><li><a title="Find property for sale in Chipstead, Coulsdon, Surrey" href="/homes/homes_for_sale/in/Chipstead%2C+Coulsdon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Chipstead</a> (32)</li><li><a title="Find property for sale in Claygate, Esher, Surrey" href="/homes/homes_for_sale/in/Claygate%2C+Esher%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Claygate</a> (23)</li><li><a title="Find property for sale in Cobham, Surrey" href="/homes/homes_for_sale/in/Cobham%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Cobham</a> (3)</li><li><a title="Find property for sale in Coulsdon, Surrey" href="/homes/homes_for_sale/in/Coulsdon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Coulsdon </a> (349)</li><li><a title="Find property for sale in Croydon, Outer London" href="/homes/homes_for_sale/in/Croydon%2C+Outer+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Croydon</a> (981)</li><li><span style="color:gray">East Horsley</span></li><li><a title="Find property for sale in East Molesey, Surrey" href="/homes/homes_for_sale/in/East+Molesey%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">East Molesey</a> (36)</li><li><a title="Find property for sale in Effingham, Leatherhead, Surrey" href="/homes/homes_for_sale/in/Effingham%2C+Leatherhead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Effingham</a> (6)</li><li><a title="Find property for sale in Epsom, Surrey" href="/homes/homes_for_sale/in/Epsom%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Epsom</a> (865)</li><li><a title="Find property for sale in Esher, Surrey" href="/homes/homes_for_sale/in/Esher%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Esher</a> (91)</li><li><a title="Find property for sale in Ewell, Epsom, Surrey" href="/homes/homes_for_sale/in/Ewell%2C+Epsom%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Ewell</a> (150)</li><li><a title="Find property for sale in Fetcham, Leatherhead, Surrey" href="/homes/homes_for_sale/in/Fetcham%2C+Leatherhead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Fetcham</a> (50)</li><li><a title="Find property for sale in Godstone, Surrey" href="/homes/homes_for_sale/in/Godstone%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Godstone</a> (7)</li><li><a title="Find property for sale in Hackbridge, Wallington, Surrey" href="/homes/homes_for_sale/in/Hackbridge%2C+Wallington%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hackbridge</a> (65)</li><li><a title="Find property for sale in Ham, Richmond, Surrey" href="/homes/homes_for_sale/in/Ham%2C+Richmond%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Ham</a> (29)</li><li><a title="Find property for sale in Headley, Epsom, Surrey" href="/homes/homes_for_sale/in/Headley%2C+Epsom%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Headley</a> (66)</li><li><a title="Find property for sale in Hinchley Wood, Esher, Surrey" href="/homes/homes_for_sale/in/Hinchley+Wood%2C+Esher%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hinchley Wood</a> (28)</li><li><a title="Find property for sale in Hooley, Coulsdon, Surrey" href="/homes/homes_for_sale/in/Hooley%2C+Coulsdon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hooley</a> (48)</li><li><a title="Find property for sale in Kenley, Surrey" href="/homes/homes_for_sale/in/Kenley%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Kenley</a> (266)</li><li><a title="Find property for sale in Kew, Richmond Upon Thames, Surrey" href="/homes/homes_for_sale/in/Kew%2C+Richmond+Upon+Thames%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Kew</a> (12)</li><li><a title="Find property for sale in Kingston Upon Thames, Surrey" href="/homes/homes_for_sale/in/Kingston+Upon+Thames%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Kingston Upon Thames</a> (109)</li><li><a title="Find property for sale in Kingswood, Tadworth, Surrey" href="/homes/homes_for_sale/in/Kingswood%2C+Tadworth%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Kingswood</a> (91)</li><li><a title="Find property for sale in Leatherhead, Surrey" href="/homes/homes_for_sale/in/Leatherhead%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Leatherhead</a> (86)</li><li><a title="Find property for sale in Mitcham, Surrey" href="/homes/homes_for_sale/in/Mitcham%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Mitcham</a> (325)</li><li><a title="Find property for sale in Morden, Surrey" href="/homes/homes_for_sale/in/Morden%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Morden</a> (260)</li><li><a title="Find property for sale in New Addington, Croydon, Surrey" href="/homes/homes_for_sale/in/New+Addington%2C+Croydon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">New Addington</a> (71)</li><li><a title="Find property for sale in New Malden, Surrey" href="/homes/homes_for_sale/in/New+Malden%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">New Malden</a> (281)</li><li><a title="Find property for sale in North Cheam, Sutton, Outer London" href="/homes/homes_for_sale/in/North+Cheam%2C+Sutton%2C+Outer+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">North Cheam</a> (53)</li><li><a title="Find property for sale in Oxted, Surrey" href="/homes/homes_for_sale/in/Oxted%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Oxted</a> (1)</li><li><a title="Find property for sale in Purley, Surrey" href="/homes/homes_for_sale/in/Purley%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Purley</a> (776)</li><li><a title="Find property for sale in Richmond, Surrey" href="/homes/homes_for_sale/in/Richmond%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Richmond</a> (50)</li><li><a title="Find property for sale in Sanderstead, South Croydon, Surrey" href="/homes/homes_for_sale/in/Sanderstead%2C+South+Croydon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Sanderstead</a> (282)</li><li><a title="Find property for sale in Selsdon, South Croydon, Surrey" href="/homes/homes_for_sale/in/Selsdon%2C+South+Croydon%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Selsdon</a> (67)</li><li><a title="Find property for sale in South Croydon, Outer London" href="/homes/homes_for_sale/in/South+Croydon%2C+Outer+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">South Croydon</a> (521)</li><li><a title="Find property for sale in Stanwell, Staines, Surrey" href="/homes/homes_for_sale/in/Stanwell%2C+Staines%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Stanwell</a> (12)</li><li><a title="Find property for sale in Stoneleigh, Epsom, Surrey" href="/homes/homes_for_sale/in/Stoneleigh%2C+Epsom%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Stoneleigh</a> (87)</li><li><a title="Find property for sale in Sunbury-on-thames, Surrey" href="/homes/homes_for_sale/in/Sunbury-on-thames%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Sunbury-on-Thames</a> (30)</li><li><a title="Find property for sale in Surbiton, Surrey" href="/homes/homes_for_sale/in/Surbiton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Surbiton</a> (154)</li><li><a title="Find property for sale in Sutton, Surrey" href="/homes/homes_for_sale/in/Sutton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Sutton</a> (536)</li><li><a title="Find property for sale in Tadworth, Surrey" href="/homes/homes_for_sale/in/Tadworth%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Tadworth</a> (340)</li><li><a title="Find property for sale in Thames Ditton, Surrey" href="/homes/homes_for_sale/in/Thames+Ditton%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Thames Ditton</a> (22)</li><li><a title="Find property for sale in Thornton Heath, Surrey" href="/homes/homes_for_sale/in/Thornton+Heath%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Thornton Heath</a> (199)</li><li><a title="Find property for sale in Tolworth, Surrey" href="/homes/homes_for_sale/in/Tolworth%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Tolworth</a> (66)</li><li><a title="Find property for sale in Wallington, Surrey" href="/homes/homes_for_sale/in/Wallington%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Wallington</a> (548)</li><li><a title="Find property for sale in Walton On The Hill, Tadworth, Surrey" href="/homes/homes_for_sale/in/Walton+On+The+Hill%2C+Tadworth%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Walton on the Hill</a> (46)</li><li><a title="Find property for sale in Warlingham, Surrey" href="/homes/homes_for_sale/in/Warlingham%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Warlingham</a> (18)</li><li><a title="Find property for sale in West Ewell, Epsom, Surrey" href="/homes/homes_for_sale/in/West+Ewell%2C+Epsom%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">West Ewell</a> (153)</li><li><a title="Find property for sale in West Molesey, Surrey" href="/homes/homes_for_sale/in/West+Molesey%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">West Molesey</a> (21)</li><li><a title="Find property for sale in Whyteleafe, Surrey" href="/homes/homes_for_sale/in/Whyteleafe%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Whyteleafe</a> (60)</li><li><a title="Find property for sale in Woldingham, Caterham, Surrey" href="/homes/homes_for_sale/in/Woldingham%2C+Caterham%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Woldingham</a> (3)</li><li><a title="Find property for sale in Woodcote, Wallington, Surrey" href="/homes/homes_for_sale/in/Woodcote%2C+Wallington%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Woodcote</a> (36)</li><li><a title="Find property for sale in Worcester Park, Surrey" href="/homes/homes_for_sale/in/Worcester+Park%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Worcester Park</a> (108)</li> </ul> </div> </div> </div> <div class="property-accordion-list__card"> <div class="card-header" id="headingOne" data-accordion="#collapse3"> <h5> <a href="#collapse3"> HOMES FOR SALE IN MIDDLESEX </a> </h5> </div> <div id="collapse3"> <div class="card-body"> <ul> <li><a title="Find property for sale in Ashford, Middlesex" href="/homes/homes_for_sale/in/Ashford%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Ashford</a> (37)</li><li><a title="Find property for sale in Hampton, Middlesex" href="/homes/homes_for_sale/in/Hampton%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hampton</a> (55)</li><li><a title="Find property for sale in Hampton Hill, Hampton, Outer London" href="/homes/homes_for_sale/in/Hampton+Hill%2C+Hampton%2C+Outer+London/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hampton Hill</a> (32)</li><li><a title="Find property for sale in Heston, Hounslow, Middlesex" href="/homes/homes_for_sale/in/Heston%2C+Hounslow%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Heston</a> (7)</li><li><a title="Find property for sale in Hounslow, Middlesex" href="/homes/homes_for_sale/in/Hounslow%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Hounslow</a> (44)</li><li><a title="Find property for sale in Isleworth, Middlesex" href="/homes/homes_for_sale/in/Isleworth%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Isleworth</a> (28)</li><li><a title="Find property for sale in Staines, Surrey" href="/homes/homes_for_sale/in/Staines%2C+Surrey/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Staines</a> (33)</li><li><a title="Find property for sale in St Margarets, Twickenham, Middlesex" href="/homes/homes_for_sale/in/St+Margarets%2C+Twickenham%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">St Margarets</a> (24)</li><li><a title="Find property for sale in Strawberry Hill, Twickenham, Middlesex" href="/homes/homes_for_sale/in/Strawberry+Hill%2C+Twickenham%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Strawberry Hill</a> (69)</li><li><a title="Find property for sale in Teddington, Middlesex" href="/homes/homes_for_sale/in/Teddington%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Teddington</a> (108)</li><li><a title="Find property for sale in Twickenham, Middlesex" href="/homes/homes_for_sale/in/Twickenham%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Twickenham</a> (203)</li><li><a title="Find property for sale in Whitton, Twickenham, Middlesex" href="/homes/homes_for_sale/in/Whitton%2C+Twickenham%2C+Middlesex/?min_value=0&max_value=10000000&sort_type=high-to-low&property_type=All&min_beds=0&view_type=gallery">Whitton</a> (68)</li> </ul> </div> </div> </div> </div> </div> <!-- Featured Property Slider --> <section class="property-landing-homes__fpc-container"> <div class="property-landing-homes__fpc-container--left"> <!-- standard - ResponsivePropertyFeaturedCarouselInclude.html --> <div class="featured-property"> <div class="featured-property__carousel" data-uses-js="featured-property"> <div class="property-slide"> <div class="fpc-image-container"> <div class="featured-property-label">Featured</div> <a href="/homes/homes_for_sale/in/Richmond%2Csurrey/gallery/21628962/"> <img src="https://static.ezadspro.co.uk/media/data_e6b4/21628962_00.jpg" width="620" height="380" onerror="this.src='/resources/responsive-static/images/property/property-no-image-620x380.png'" title="No image available"/> </a> </div> <div class="fpc-details"> <a href="/homes/homes_for_sale/in/Richmond%2Csurrey/gallery/21628962/"> <h3>Jocelyn Road, Richmond</h3> </a> <a href="/homes/homes_for_sale/in/Richmond%2Csurrey/gallery/21628962/"> <div class="property-price"> <span class="pricePrefix">Guide price</span> £1,700,000 </div> </a> </div> </div> </div> <div class="featured-property__carousel-nav-controls carousel-controls mar-carousel__carousel-controls mar-mt-5"> <div class="arrow-container" featured-data-arrows-container> <div class="dots-container" featured-data-dots-container></div> </div> </div> </div> </div> <div class="property-landing-homes__fpc-container--right"> <div class="mpu"> <div id="DFP_standard_mpu_1"></div> </div> </div> </section> <!-- Featured Agents Slider --> <!-- standard - ResponsivePropertyFeaturedAgentsInclude.html --> <section class="featured-agents container"> <div> <div class="featured-agents__heading-outer"> <div class="featured-agents__heading-container"> <h2 class="block-heading">Featured estate agents</h2> </div> <div class="featured-agents__search-agent featured-agents__search-agent--desktop"> <span class="iconify" data-icon="ant-design:search-outlined"></span> <form method="get" action="/homes/find_agents/"> <input type="text" name="agent" class="form-control" placeholder="Find an agent"/> </form> </div> </div> <div class="featured-agents__carousel-container"> <div class="mar-carousel featured-agents__carousel" data-uses-js="featured-agents"> <div> <div class="agent-slide"> <a href="/homes/estate_agents_sales/17675/?ref=fa"> <img src="/resources/images/10643077" title="Logo image"/> </a> <h4> <a href="/homes/estate_agents_sales/17675/?ref=fa">Express Estate Agency</a> </h4> </div> </div> <div> <div class="agent-slide"> <a href="/homes/estate_agents_sales/16262/?ref=fa"> <img src="/resources/images/8966024" title="Logo image"/> </a> <h4> <a href="/homes/estate_agents_sales/16262/?ref=fa">Housesimple</a> </h4> </div> </div> </div> <div class="featured-agents__carousel carousel-controls mar-carousel__carousel-controls mar-mt-5"> <div class="arrow-container" data-arrows-container> <div class="dots-container" data-dots-container></div> </div> </div> </div> <div class="featured-agents__search-agent featured-agents__search-agent--mobile"> <form method="get" action="/homes/find_agents/"> <span class="iconify" data-icon="ant-design:search-outlined"></span> <input type="text" name="agent" class="form-control" placeholder="Find an agent"/> </form> </div> </div> </section> <!-- Recently Added Slider --> <!-- standard - ResponsivePropertyRecentlyAddedInclude.html --> <section class="property-recently-added mar-mb-5"> <h2 class="block-heading">Recently added</h2> <div class="property-recently-added__carousel" data-uses-js="recently-added"> <div class="property-slide"> <a href="/homes/homes_for_sale/in/Richmond%2Csurrey/gallery/21628962/" class="property-slide__img"> <img src="https://static.ezadspro.co.uk/media/data_e6b4/21628962_00.jpg" onerror="this.src='/resources/responsive-static/images/property/property-no-image-620x380.png'" title="No image available" /> </a> <h3> <a href="/homes/homes_for_sale/in/Richmond%2Csurrey/gallery/21628962/">Jocelyn Road, Richmond</a> </h3> <div class="agent-price"> <div class="pricePrefix">Guide price</div> <div class="price">£1,700,000</div> <div class="price-label new-listing">New listing</div> </div> </div> </div> <div class="property-recently-added__carousel carousel-controls mar-carousel__carousel-controls mar-mt-5"> <div class="arrow-container" recent-data-arrows-container> <div class="dots-container" recent-data-dots-container></div> </div> </div> </section> <!-- Local Property News --> <h2 class="block-heading">Local property news</h2> <div class="local-property block"> <div class="local-property__news-item local-property__news-item--top-story mar-pb-5"> <!-- standard - StandardCard.html --> <article class="mar-standard-card mar-standard-card--l mar-standard-card--3 " data-position="" data-parsely-slot="-" data-uses-js="article-story" > <div class="mar-standard-card__img-content"> <a href="/news/24064690.richmond-house-prices-average-house-prices-fall-2-000/" > <img loading="lazy" srcset="/resources/images/128x74/1x/0/13913772.jpg 128w, /resources/images/290x167/1x/0/13913772.jpg 290w, /resources/images/445x250/1x/0/13913772.jpg 445w, /resources/images/720x415/1x/0/13913772.jpg 720w" sizes="(max-width: 576px) 100%, (max-width: 767px) 720px, (max-width: 992px) calc(100vw - 50px), 100vw" src="/resources/images/128x89/1x/0/13913772.jpg" alt="What are the latest house prices in Richmond upon Thames? See how much your home could be worth (PA)" /> </a> <div class="mar-standard-card__icon-container"> </div> </div> <div class="mar-standard-card__content"> <h3 class="mar-standard-card__text clearfix" data-truncate="3" > <a class="text-slate no-underline" href="/news/24064690.richmond-house-prices-average-house-prices-fall-2-000/" >Richmond house prices rise by thousands - see how much your home could be worth</a> </h3> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-24064690" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="24064690" data-original-site="Richmond and Twickenham Times" data-rating="16" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="24064690"> </ul> </div> </div> <div class="mar-standard-card__extra"> <span class="mar-standard-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1706418000" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> </article> </div> <div class="local-property__property-news-list local-property__news-item"> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/24064689.hounslow-house-prices-average-house-prices-rise-300/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="What are the latest house prices in Hounslow? See how much your home could be worth (PA)"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/13913769.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/13913769.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/13913769.jpg" alt="What are the latest house prices in Hounslow? See how much your home could be worth (PA)" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a class="text-slate no-underline" href="/news/24064689.hounslow-house-prices-average-house-prices-rise-300/">Hounslow house prices rise by hundreds - how much your home could be worth</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-24064689" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="24064689" data-original-site="Richmond and Twickenham Times" data-rating="16" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="24064689"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1706331600" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/23344633.richmond-house-prices-average-house-prices-plummet-14-000/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="What are the latest house prices in Richmond upon Thames? See how much your home could be worth (PA)"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/13913787.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/13913787.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/13913787.jpg" alt="What are the latest house prices in Richmond upon Thames? See how much your home could be worth (PA)" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a class="text-slate no-underline" href="/news/23344633.richmond-house-prices-average-house-prices-plummet-14-000/">Richmond named most expensive area to buy a property: see how much your home is worth</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-23344633" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="23344633" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="23344633"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1677387600" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/23344501.hounslow-house-prices-average-house-prices-plummet-8-000/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="What are the latest house prices in Hounslow? See how much your home could be worth (PA)"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/13913755.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/13913755.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/13913755.jpg" alt="What are the latest house prices in Hounslow? See how much your home could be worth (PA)" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a class="text-slate no-underline" href="/news/23344501.hounslow-house-prices-average-house-prices-plummet-8-000/">Hounslow house prices plummet by hundreds - how much your home could be worth</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-23344501" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="23344501" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="23344501"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1677301200" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> </div> <div class="local-property__news-item"> <div id="standard_mpu_2_container" class="standard-mpu-container mar-block-ad mar-block-ad--standard-mpu mar-block-ad--article-card-interrupt dfp-standard-mpu-2" style="height: 250px; width: 100%;"> <div id="DFP_standard_mpu_2"></div> </div> </div> <div class="local-property__more-list-button local-property__news-item"> <a class="mar-btn mar-btn-link" href="/homes/local_property_news/">Read more local property news <span class="iconify" data-icon="akar-icons:chevron-right"></span></a> </div> </div> <!-- National Property News --> <h2 class="block-heading">Property news</h2> <div class="national-property block"> <div> <!-- standard - StandardCard.html --> <article class="mar-standard-card mar-standard-card--l mar-standard-card--3 " data-position="" data-parsely-slot="-" data-uses-js="article-story" > <div class="mar-standard-card__img-content"> <a href="/news/24766029.scotlands-future-pm-farage-left-wing-populist-independence/" > <img loading="lazy" srcset="/resources/images/128x74/1x/0/18832993.jpg 128w, /resources/images/290x167/1x/0/18832993.jpg 290w, /resources/images/445x250/1x/0/18832993.jpg 445w, /resources/images/720x415/1x/0/18832993.jpg 720w" sizes="(max-width: 576px) 100%, (max-width: 767px) 720px, (max-width: 992px) calc(100vw - 50px), 100vw" src="/resources/images/128x89/1x/0/18832993.jpg" alt="What will Scotland do in the face of a PM Farage?" /> </a> <div class="mar-standard-card__icon-container"> <a href="/news/24766029.scotlands-future-pm-farage-left-wing-populist-independence/#comments-anchor" class="mar-standard-card__img-icon"> <!-- standard - IconComments.html --> <span class="iconify icon-comments" data-icon="ooui:speech-bubble-ltr"></span> <span class="mar-standard-card__total-comments">51</span> </a> </div> </div> <div class="mar-standard-card__content"> <h3 class="mar-standard-card__text clearfix" data-truncate="3" data-article-link="/news/24766029.scotlands-future-pm-farage-left-wing-populist-independence/" > <a class="text-slate no-underline" href="/news/24766029.scotlands-future-pm-farage-left-wing-populist-independence/" >Neil Mackay: Scotland’s future: either PM Farage or left-wing populist independence</a> </h3> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-24766029" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="24766029" data-original-site="Richmond and Twickenham Times" data-rating="5" data-content-level="3 " data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="24766029"> </ul> </div> </div> <div class="mar-standard-card__extra"> <span class="mar-standard-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1733207849" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> </article> </div> <div> <!-- standard - StandardCard.html --> <article class="mar-standard-card mar-standard-card--l mar-standard-card--3 " data-position="" data-parsely-slot="-" data-uses-js="article-story" > <div class="mar-standard-card__img-content"> <span class="mar-standard-card__label mar-standard-card__mar-label-above-mobile mar-label mar-label--over-image mar-label__community-contribution-label"> <span class="mar-label__text">Community contribution</span> </span> <a href="/news/24690229.market-store-must-visit-canterbury/" > <img loading="lazy" srcset="/resources/images/128x74/1x/0/18710073.jpg 128w, /resources/images/290x167/1x/0/18710073.jpg 290w, /resources/images/445x250/1x/0/18710073.jpg 445w, /resources/images/720x415/1x/0/18710073.jpg 720w" sizes="(max-width: 576px) 100%, (max-width: 767px) 720px, (max-width: 992px) calc(100vw - 50px), 100vw" src="/resources/images/128x89/1x/0/18710073.jpg" alt="The Arab Market Store: A Taste of Home in Canterbury" /> </a> <div class="mar-standard-card__icon-container"> </div> </div> <div class="mar-standard-card__content"> <h3 class="mar-standard-card__text clearfix" data-truncate="3" > <span class="mar-standard-card__mar-label-only-mobile mar-label mar-label--inline mar-label__community-contribution-label"> <span class="mar-label__text">Community contribution</span> </span> <a class="text-slate no-underline" href="/news/24690229.market-store-must-visit-canterbury/" >The Arab Market Store: A Taste of Home in Canterbury</a> </h3> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-24690229" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="24690229" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="24690229"> </ul> </div> </div> <div class="mar-standard-card__extra"> <span class="mar-standard-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1730323875" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> </article> </div> <div> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/national/uk-today/24207024.closer-look-healthcare-heartland-london/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="Harley street view"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/17895767.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/17895767.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/17895767.jpg" alt="Harley street view" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a class="text-slate no-underline" href="/news/national/uk-today/24207024.closer-look-healthcare-heartland-london/">The evolution of Harley Street: the epicentre of elite healthcare | Mia Honigstein</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-24207024" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="24207024" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="24207024"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1711407934" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/national/uk-today/23960615.young-reporter--advancing-ai-helping-us-diseases/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="A complex electronic circuit board containing an artfiicial intelligence chip"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/16926849.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/16926849.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/16926849.jpg" alt="A complex electronic circuit board containing an artfiicial intelligence chip" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a class="text-slate no-underline" href="/news/national/uk-today/23960615.young-reporter--advancing-ai-helping-us-diseases/">Young Reporter- Advancing AI helping us with diseases</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-23960615" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="23960615" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="23960615"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1701375770" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> <!-- standard - SmallCard.html --> <article class="mar-small-card clearfix" data-position="" data-parsely-slot="-" data-uses-js="article-story"> <div class="mar-small-card__img-icon-container"> <a href="/news/national/uk-today/23893047.margate-rocks-henry-thompson-christs-hospital/" class="mar-small-card__img-content"> <picture class="mar-small-card__img" title="Margate Seafront"> <source media="(max-width: 1200px)" srcset="/resources/images/290x160/1x/0/17392263.jpg" /> <source media="(min-width: 1201px)" srcset="/resources/images/128x72/1x/0/17392263.jpg" /> <img loading="lazy" src="/resources/images/128x85/1x/0/17392263.jpg" alt="Margate Seafront" /> </picture> </a> <div class="mar-small-card__icon-container"> </div> </div> <div class="mar-small-card__wrapper"> <div class="mar-small-card__content"> <h4 class="mar-small-card__text w-100 " data-truncate="3" > <a href="/news/national/uk-today/23893047.margate-rocks-henry-thompson-christs-hospital/" class="mar-label mar-label--inline mar-label__community-contribution-label"> <span class="mar-label__text">Community contribution</span> </a> <a class="text-slate no-underline" href="/news/national/uk-today/23893047.margate-rocks-henry-thompson-christs-hospital/">Margate On the Rocks? Henry Thompson, Christ's Hospital</a> </h4> <!-- standard - ArticleAdminLinks.html --> <div id="admin-links-container-23893047" class="admin-links-container"> </div> <div class="admin-links-toggler" data-article-id="23893047" data-original-site="Richmond and Twickenham Times" data-rating="20" data-content-level="1 Standard" data-is-clone="no" data-is-uk-today="no" data-is-scotland-today="no" data-is-full-admin-link-permissions="" data-admin-user-links="" style="display: none;" > <ul class="list-style-none admin-social-stats" data-article-id="23893047"> </ul> </div> </div> <div class="mar-small-card__extra"> <span class="mar-small-card__timestamp timestamp"> <span itemprop="dateModified" class="formatTimeStampEs6" data-timestamp="1698784970" data-format="homepage" data-hide-old-dates="true"></span> </span> </div> <div class="mar-small-card__comments-container "> </div> </div> </article> </div> <div class="national-property__more-list-button"> <a class="mar-btn mar-btn-link" href="/homes/property_news/">Read more property news <span class="iconify" data-icon="akar-icons:chevron-right"></span></a> </div> </div> <!-- Most Popular Properties --> <!-- standard - ResponsivePropertyMostPopularSliderInclude.html --> </div> </div> </div> <!-- standard - Footer.html --> <footer class="footer-outer"> <div class="footer container-inner-width"> <ul class="list-style-none footer__menu"> <li><a href="/contact/">Contact us</a></li> <li><a href="/gdpr/" class="gdpr-option-v2" data-v2-id="191113" data-is-gate="no">Manage Consent</a></li> <li><a href="/announcements/">Announcements</a></li> <li><a href="http://leap.richmondandtwickenhamtimes.co.uk">Leap</a></li> <li><a href="https://www.newsquest.co.uk/cookie-policy/" target="_blank">Cookie Policy</a></li> <li><a href="https://www.newsquest.co.uk/terms-conditions/" target="_blank">Terms & Conditions</a></li> <li><a href="https://www.newsquest.co.uk/contributor-terms/" target="_blank">Contributor Terms</a></li> <li><a href="https://www.newsquestprinting.co.uk/" target="_blank">Newsquest printing</a></li> <li><a href="/advertising/">Advertise</a></li> <li><a href="/emailbulletins/">Newsletters</a></li> <li><a href="/misc/sitemap/">Site Map</a></li> <li><a href="https://www.exchangeandmart.co.uk/" target="_blank">Exchange and Mart</a></li> <li><a href="https://www.newsquest.co.uk/terms-of-advertising/" target="_blank">Terms of Advertising</a></li> <li><a href="https://www.newsquest.co.uk/privacy-policy/" target="_blank">Privacy Policy</a></li> <li><a href="https://www.newsquest.co.uk/diversity-statement/" target="_blank">Diversity Statement</a></li> <li><a href="https://newsquest.newsprints.co.uk/">Photo sales</a></li> <li><a href="/publications/">Our Publications</a></li> <li><a href="/archive/">Archive</a></li> <li><a href="/submit-an-event/">Add Your Event For Free</a></li> </ul> <div class="footer__social-media"> <h3 class="footer__heading footer__social-media--heading">follow us</h3> <a class="footer__social-media--link" href="https://www.facebook.com/rttimes" title="Richmond & Twickenham Times" role="link" data-media-type="facebook" > <i class="footer__social-media--icon iconify"></i> Richmond & Twickenham Times </a> <a class="footer__social-media--link" href="https://twitter.com/richmondtimes" title="@richmondtimes" role="link" data-media-type="twitter" > <i class="footer__social-media--icon iconify"></i> @richmondtimes </a> </div> <div class="footer__ipso-terms "> <img class="footer__ipso-terms--logo" src="/resources/responsive-static/mds/images/ipso-regulated.svg" /> <p class="footer__ipso-terms--copy"> This website and associated newspapers adhere to the Independent Press Standards Organisation's Editors' Code of Practice. If you have a complaint about the editorial content which relates to inaccuracy or intrusion, then please <a class="footer__ipso-terms--link" href="/contact"> contact the editor here</a>. If you are dissatisfied with the response provided you can <a class="footer__ipso-terms--link" href="https://www.ipso.co.uk/contact-us/">contact IPSO here</a> </p> <p class="footer__ipso-terms--copy"> <a class="footer__ipso-terms--link" href="/my/account/copyrights/">© 2001-2024</a>. <a class="footer__ipso-terms--link" href="https://www.newsquest.co.uk">Newsquest Media Group Ltd</a>, 1st Floor, Chartist Tower, Upper Dock Street, Newport, Wales, NP20 1DW | 01676637 | </p> </div> </div> </footer> <div id="fb-root"></div> </div> </div> <!-- standard - Modal.html --> <div class="mar-modal-container mar-modal-container--animate mar-modal-container--animate-out visually-hidden"> <div class="mar-modal-overlay" data-uses-js="close-modal"></div> <div class="mar-modal" tabindex="-1" role="dialog"> <div class="mar-modal__header"> <h4 class="mar-modal__title">Modal headline</h4> <div class="mar-modal__close" data-uses-js="close-modal"> <!-- standard - IconClose.html --> <svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg"> <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.9062C1.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"/> </svg> <span>Close</span> </div> </div> <div class="mar-modal__body">Automatically injected HTML goes here</div> <div class="mar-modal__actions"> <!-- standard - Buttons.html --> <button type="button" data-uses-js="modal-submit" class=" mar-btn mar-btn--light mar-btn--md " > Submit </button> <!-- standard - Buttons.html --> <button type="button" data-uses-js="modal-cancel" class=" mar-btn mar-btn--outline mar-btn--md " > Cancel </button> </div> </div> </div> <!-- standard - ModalsAndTargets.html --> <div id="piano-meter-display" style="width: 100%; position: fixed; bottom: 0; margin: auto; z-index: 999999999999999; display: none; background-color: #fff; left: 0px"> <div style="width: 960px; margin: auto;"> <button class="mar-btn btn-martini float-right" style="margin-top: 20px" id="piano-show-newsquest" type="button">Deactivate</button> <div class="mt-2"><strong>Piano meter debugger</strong></div> <p class="mb-0" style="font-style: italic;">Data returned from the Piano 'meterActive/meterExpired' callback <a href="https://docs.piano.io/callbacks/#activeevent">event</a>.</p> <div class="mb-2" id="piano-meter-display-content"></div> </div> </div> <div id="piano-top-message"></div> <div id="po-overlay-banner-top-fullwidth"></div> <div id="piano-message"></div> <div id="po-overlay-banner-bottom-fullwidth"></div> <div id="piano-floating-bottom-banner"></div> <div id="po-overlay-banner-bottom-content"></div> <!-- <div id="piano-left-message" style="display:none; width: 100%; position: fixed; left: 0; width: 300px; text-align: center; z-index: 5000000;"></div> <div id="piano-right-message" style="display:none; width: 100%; position: fixed; right: 0; width: 300px; text-align: center; z-index: 5000000;"></div> --> <div class="modal" id="adlight-explanation-modal" tabindex="-1" role="dialog" aria-labelledby="sp-modal" aria-hidden="true" style="display: none"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-body"> <img src="/resources/responsive-static/images/love-local.png" loading="lazy" id="adlight-explanation-modal-main-logo"> <p>As a subscriber, you are shown <strong>80% less</strong> display advertising when reading our articles.</p> <p>Those ads you do see are predominantly from <strong>local businesses</strong> promoting <strong>local services</strong>. </p> <p>These adverts enable local businesses to get in front of their target audience – the <strong>local community</strong>.</p> <img src="/resources/images/pixel/" id="adlight-explanation-modal-image" style="display: none"> <p class="italic">It is important that we continue to promote these adverts as our local businesses need as much support as possible during these challenging times.</p> </div> <div class="modal-footer"> <button type="button" class="mar-btn mar-btn--dark" data-dismiss="modal">Close</button> </div> </div> </div> </div> <div id="po-overlay-toast-left"></div> </body> <!-- <script>window.blockAdPlacement.init();</script> --> <!-- standard - GoogleDfp.html --> <div id="outbrain-holder"> <div id="DFP_standard_mpu_3"></div> <div id="DFP_standard_mpu_4"></div> <div id="DFP_standard_mpu_5"></div> <div id="DFP_standard_mpu_6"></div> <div id="DFP_standard_mpu_7"></div> </div> <script> const elementToObserve = document.querySelector("#outbrain-holder"); // create a new instance of `MutationObserver` named `observer`, // passing it a callback function const observer = new MutationObserver(function(e) { $.each(e, function(j, obs) { $.each(obs.removedNodes, function (i, node) { var id = $(node).attr('id'); addAdSlot(id, id.replace('DFP_', '')); }); }); }); // call `observe()` on that MutationObserver instance, // passing it the element to observe, and the options object observer.observe(elementToObserve, {subtree: true, childList: true}); </script> <script> window.domComplete = performance.now(); </script> <!-- Promos --> <script type="text/javascript"> var promoUnits = []; </script> <script type="text/javascript"> path = document.location.href.split("/"); var prop30 = qs.get('lp'); var prop43 = qs.get('ref'); var pType="ResponsivePropertyModule" if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') { pType = 'ArticleModule'; } for(x=4; x<7; x++) { if (typeof path[x] == 'undefined') { path[x] = ''; } if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1)) { path[x] = path[x-1]; } else { path[x] = path[x-1] + "/" + path[x]; } path[x] = path[x].replace(/\/undefined/g,""); } sitename = path[2].split("."); pathN= unescape(document.location.pathname.toString()); matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/); detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/); if (detailMatches !== null && detailMatches.length > 1) { matches = detailMatches; } if (matches !== null && matches.length > 1) { var subfolder = ''; path[3] = 'li'; path[4] = 'li/'+subfolder; path[5] = 'li/'+subfolder+'/'+matches[1]; path[6] = 'li/'+subfolder+'/'+matches[1]; } if (pathN === '/') { path[3] = 'homepage'; path[4] = 'homepage'; path[5] = 'homepage'; path[6] = 'homepage'; } function filterArray(arr) { var retArr = []; $.each(arr, function(i, part) { if (part !== '') { retArr.push(part); } }); return retArr; } </script> <script type="text/javascript"> var known = $.cookie('__siren') ? '1' : '0' ; </script> <script type="text/javascript"> if (window.screen.width < 728 && $('#BlockArticleContainer').length > 0) { if ('27' === '1147') { $('#DFP_out_of_page').remove(); } else { $('#DFP_premium_mpu').remove(); } $('#DFP_on_scroll').remove(); } else if (window.screen.width < 728 && ( $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='9']").length > 0 || $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='12']").length > 0 || $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='18']").length > 0 || $(".article-grid__uber[data-top-stories-articles='7'][data-news-list-articles='24']").length > 0 ) ) { const adElement = document.querySelector('#high_vis_container'); $('.omnicard[data-position="5"]').after(adElement); } if ('27' === '1147' && window.screen.width > 450) { $('#DFP_bottom_leaderboard').remove(); } if ('27' === '1147' && window.screen.width < 728) { $('#DFP_top_leaderboard').remove(); } if ('27' === '1147') { $('#DFP_teads').remove(); $('#DFP_out_of_page').remove(); } </script> <script type="text/javascript"> var known = $.cookie('__siren') ? '1' : '0' ; function addToTargeting(targeting, data) { if (!data) { return targeting; } $.each(data, function (key, value) { if (!value) { return; } targeting[key] = value; }); return targeting; } var ref = document.referrer; var parser = document.createElement('a'); parser.href = ref; // values in the below MUST be strings var targeting = { 'context': '', 'domain': 'www.richmondandtwickenhamtimes.co.uk', 'isLanding': 'yes', 'top_path': 'homes', 'weather': 'sun'.toLowerCase(), 'jbsjs': ''.toLowerCase(), 'site_search': '', 'bmd_cat': '', 'wt': '11-15', 'cmpid': qs.get('cmpid'), 'refdm': parser.hostname, 'k': known, 'g': 'u' , 'a': '0' , 'topic': '', 'publication': '', 'primary_tag_future_use': '', 'site': (isMobile()) ? 'mobile': 'desktop', 'r': data_layer.user.subscription_plan !== '' ? '2' // 2 = subscribed : data_layer.user.is_logged_in == 'yes' ? '1' // 1 = registered : '0', // 0 = anonymous }; if (!usePrebid) { targeting.adrq = 'adl'; } if (data_layer.video.exists === 'yes') { targeting.ptype = 'video'; } if ($.cookie('isMeterExpired') === 'yes' && window.data_layer.article.is_article) { var articleContentLevel = parseInt(window.data_layer.article.content_level, 10) || 0; // account for NaN if (articleContentLevel !== 0 && window.data_layer.article.content_level_open_access === 'no') { targeting.ao = 'y'; } } if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { targeting.dfpcsnt = 'yes'; } else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { targeting.dfpcsnt = 'no'; } else { targeting.dfpcsnt = 'none'; } if (typeof MobileDetect !== "undefined") { targeting.canbb = (window.screen.width > 960) ? 'y' : 'n'; } if (typeof module_targeting === "object") { targeting = addToTargeting(targeting, module_targeting); } // $.each(apData, function (k, v) { // targeting[k] = v; // }); // if (typeof gs_channels !== 'undefined') { // targeting.gs_channels = gs_channels; // } targeting = addToTargeting(targeting, data_layer_helper.homesData); targeting.article_id = ''; var googleSiteName = 'www.richmondandtwickenhamtimes.co.uk'; var googlePath = '/homes/'; var googleNetworkCode = 154725070; var googleChildNetworkCode = 22694024870; var googleId = '/'+googleNetworkCode + ',' + googleChildNetworkCode + '/' + googleSiteName+googlePath; if (googleId.charAt(googleId.length - 1) === '/') { googleId = googleId.slice(0, -1); } var googletag = googletag || {}; googletag.cmd = googletag.cmd || []; googletag.cmd.push(function () { var _YB = _YB || { ab: function () { return _YB.dool ? "b" : "a" + Math.floor(Math.random() * 10); }, dool: Math.random() >= 0.1, }; var yb_ab; if (Math.random() <= 0.9) { yb_ab = _YB.ab(); } else { yb_ab = "c"; } googletag.pubads().setTargeting("yb_ab", yb_ab); }); googletag.cmd.push(function() { googletag.pubads().set("adsense_background_color", "FFFFFF"); googletag.pubads().setTargeting('rfs', "0"); $.each(targeting, function (key, value) { // No real value so exclude if (value === 0 || value === '' || value === null) { return; } googletag.pubads().setTargeting(key, value); }); }); var adUnits = []; if (blackListAds.length > 0) { $.each(blackListAds, function(i, name) { $('#'+name).remove(); }); } $.each(unfilteredAdUnits, function (i, unit) { // VAST (video) ad units never get displayed in here. if (unit.isVast) { return; } // if we have an ad-light experience if (whiteList === true) { if (typeof whiteListAds[unit.positionName] === 'undefined') { $('#'+unit.domName).remove(); return; } } adUnits.push(unit); }); // set up a holder for all the adverts so we can do things with them later var dfpHolder = {}; // the set up code googletag.cmd.push(function() { $.each(adUnits, function(i, data) { // check if the dom exists if ($('#'+data.domName).length === 0) { return; } var dfp = null; if (data.slotType === 'standard') { // get the correct sizes, using the alternate_sizes if they exist and we are on a mobile site var sizes = data.sizes; if (data.alternate_mobile_size && isMobile()) { sizes = data.alternate_mobile_size; } // push this ad slot through dfp = googletag.defineSlot(googleId, sizes, data.domName) .addService(googletag.pubads()) .setTargeting("position", data.positionName) .setCollapseEmptyDiv(data.collapseContainer); // check if we have an array of targets, and assign them as a companion if we do if (data.targets instanceof Array && data.targets.length > 0 ) { dfp.setTargeting('companion', data.targets); } } else if (data.slotType === 'outofpage') { dfp = googletag.defineOutOfPageSlot(googleId, data.domName) .addService(googletag.pubads()) .setTargeting("position", data.positionName) .setCollapseEmptyDiv(data.collapseContainer); // check if we have an array of targets, and assign them as a companion if we do if (data.targets instanceof Array && data.targets.length > 0 ) { dfp.setTargeting('companion', data.targets); } } // store dfpHolder[data.domName] = dfp; }); if (adLight === true) { googletag.pubads().setCategoryExclusion('adlight'); // var adlightexplanation = '<div class="adlight-explanation">I\'m a subscriber <a href="#" class="adlight-explanation-link">Why am I seeing this advert?</a></div>'; // if ($('#DFP_premium_mpu').length > 0) { // $('#DFP_premium_mpu').before(adlightexplanation); // } // if ($('#DFP_standard_mpu_1').length > 0) { // $('#DFP_standard_mpu_1').before(adlightexplanation); // } // var imageIds = [11497497, 11497535, 11497536, 11497541, 11497542, 11497545, 11497546, 11497547]; // var imageId = imageIds[Math.floor(Math.random() * imageIds.length)]; // $('.adlight-explanation-link').click(function(e) { // e.preventDefault(); // $('#adlight-explanation-modal-image').attr('src', '/resources/images/' + imageId + '/').show(); // $('#adlight-explanation-modal').modal(); // }); } // send the request googletag.pubads().enableSingleRequest(); googletag.enableServices(); googletag.pubads().addEventListener('slotVisibilityChanged', function(event) { if (event.slot.getResponseInformation().creativeTemplateId === 828288 || event.slot.getResponseInformation().creativeTemplateId === 12383216 ) { console.log('DFP: Magic template id detected, not refreshing'); return; } var slotName = ''; $.each(dfpHolder, function (a, e) { if (e == event.slot) { slotName = a; } }); if (typeof window.advertisingTimer !== 'undefined') { var perc = event.inViewPercentage; window.advertisingTimer.timer(slotName, perc); } }); }); // the display code $.each(adUnits, function(i, data) { // check if the dom exists if ($('#'+data.domName).length === 0) { return; } if (data.domName === 'DFP_interstitial_mpu') { if (!inter.checkVisit()) { return; } } // are we manually loading it? if ($('#'+data.domName).attr('data-manual-loading') === "yes") { return; } // for mobile, we check if the dom element has the data-delay-loading attribute set to "1" else if ($('#'+data.domName).attr('data-delay-loading') === "yes") { // load it $('#'+data.domName).appear(); $(document.body).on('appear', '#'+data.domName, function(e, allElement) { // don't call it many times if ($(this).attr('data-processed') === 'yes') { return; } $(this).attr('data-processed', 'yes'); // display the google ad googletag.display(data.domName); googletag.pubads().refresh([dfpHolder[data.domName]]); }); return; } googletag.cmd.push(function() { googletag.display(data.domName); }); }); window.googleComplete = performance.now(); window.googleReady = true; function addAdSlot(slotName, slot, initHidden) { console.log("Add ad slot called for %s %s", slotName, slot); // check if item already exists if (typeof window.dfpHolder[slotName] !== 'undefined') { return; } if (window.adLight === true) { return; } window.googletag.cmd.push(function() { var dfp = googletag.defineSlot(window.googleId, [[300,250]], slotName) .setTargeting('position', [slot]) .addService(googletag.pubads()); window.dfpHolder[slotName] = dfp; if (!initHidden) { googletag.pubads().refresh([dfp]); return; } }); } </script> <!-- Twitter widget script --> <script src="//platform.twitter.com/widgets.js" charset="utf-8"></script> <script src="/resources/responsive-static/build/mds/js/global.js?cb=D5b3rJbf"></script> <script src="/resources/responsive-static/build/mds/js/property.js?cb=D5b3rJbf"></script> <script src="/__siren/"></script> <!-- standard - AudienceTracking.html --> <script type="text/javascript"> var s_account="newsquestgroupprod"; </script> <script type="text/javascript" src="/resources/responsive-static/vendor/adobe/VisitorAPI.js?cb=D5b3rJbf"></script> <script type="text/javascript" src="/resources/responsive-static/vendor/adobe/omniture.js?cb=D5b3rJbf"></script> <script type="text/javascript"> function getOmniturePath() { var path = ''; if ($('#gallery-base-url').length === 1) { path = $('#gallery-base-url').val(); } else { path = window.location.pathname; } return path; } function getPositionFromCookie() { var ref = $.cookie('tracking_block_index'); $.removeCookie('tracking_block_index', { path: '/', domain: window.data_layer.site.cookie_domain, }); return ref; } function getRefFromCookie() { var ref = $.cookie('tracking_block'); $.removeCookie('tracking_block', { path: '/', domain: window.data_layer.site.cookie_domain, }); return ref; } function getOmnitureTrackingFromCookie(key, preExistingValue) { var ref = $.cookie('o-' + key); if(typeof(ref) === 'undefined') { ref = preExistingValue } else { ref = decodeURIComponent(ref); $.removeCookie('o-' + key, { path: '/', domain: window.data_layer.site.cookie_domain, }); } return ref; } function getValidatedAPList() { 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]; var data = getAudienceProjectTargetingData(); if (!data || !data.ap_x) { return ''; } validData = []; $.each(data.ap_x, function(i, td) { if ($.inArray(parseInt(td, 10), validList) !== -1) { validData.push(td); } }); return validData.join(','); } path = document.location.href.split("/"); var prop30 = qs.get('lp'); var prop43 = qs.get('ref'); var pType="ResponsivePropertyModule" if (pType === 'BlockArticleModule' || pType === 'NationalNewsModule' || pType === 'BlockWhatsOnModule') { pType = 'ArticleModule'; } for(x=4; x<7; x++) { if (typeof path[x] == 'undefined') { path[x] = ''; } if(path[x] == "" || (pType == "ArticleModule" && path[x].match(/[0-9]+\./)) || (path[x].indexOf('?') > -1)) { path[x] = path[x-1]; } else { path[x] = path[x-1] + "/" + path[x]; } path[x] = path[x].replace(/\/undefined/g,""); } pathN= unescape(document.location.pathname.toString()); matches = pathN.match(/(\w+)\.(in|near|compare)\.([\,a-zA-Z0-9\ _-]+)[\/]?$/); detailMatches = pathN.match(/(\w+)\.detail\.(.*)$/); if (detailMatches !== null && detailMatches.length > 1) { matches = detailMatches; } if (matches !== null && matches.length > 1) { var subfolder = ''; path[3] = 'li'; path[4] = 'li/'+subfolder; path[5] = 'li/'+subfolder+'/'+matches[1]; path[6] = 'li/'+subfolder+'/'+matches[1]; } if (pathN === '/') { path[3] = 'homepage'; path[4] = 'homepage'; path[5] = 'homepage'; path[6] = 'homepage'; } /* You may give each page an identifying name, server, and channel on the next lines. */ s.pageName="(www) "+getOmniturePath(); s.pageName = s.pageName.toLowerCase(); s.server="dmh-martini-web16" s.channel="" s.pageType="" s.prop1= qs.get('search'); s.prop2="" s.prop3=document.title s.prop4="" s.prop5="ResponsivePropertyModule" /* get from Martini */ s.prop6=path[3].toLowerCase() s.prop7=path[4].toLowerCase() s.prop8=path[5].toLowerCase() s.prop9=path[6].toLowerCase() s.prop10="" s.prop16=path[2].toLowerCase() s.prop17="South West London" s.prop18="Martini" s.prop19="1" s.prop20 = s.getPreviousValue(s.pageName, 'gpv_pn'); s.prop53 = 'standard'; s.prop54 = ''; s.prop55 = ''; s.prop56 = ""; s.prop57 = ($('[data-name="Feature Article Block A"]').length > 0) ? 'Enabled' : 'Disabled'; s.prop58 = $('[data-name="Feature Article Block B"]').data('variant'); s.prop59 = getRefFromCookie(); s.prop60 = getPositionFromCookie(); s.prop73 = $.cookie('adtiming'); var eVar67 = []; if ($.cookie('consentUUID')) { eVar67.push('yes'); } else { eVar67.push('no'); } if ($.cookie('_sp_enable_dfp_personalized_ads') === 'true') { eVar67.push('yes'); } else if ($.cookie('_sp_enable_dfp_personalized_ads') === 'false') { eVar67.push('no'); } else { eVar67.push('none'); } if ($.cookie('_sp_legitimate_interests') === 'true') { eVar67.push('yes'); } else if ($.cookie('_sp_legitimate_interests') === 'false') { eVar67.push('no'); } else { eVar67.push('none'); } //if ($.cookie('euconsent')) { // eVar67.push($.cookie('euconsent')); //} else { // eVar67.push('none'); //} s.eVar67 = eVar67.join(','); // console.log('ADB: setting eVar67 to %s', eVar67.join(',')); if ($.cookie('prev-tcf-v2')) { // console.log('ADB: Setting eVar68 to ', $.cookie('prev-tcf-v2')); s.eVar68 = $.cookie('prev-tcf-v2'); } if (typeof iabNames !== 'undefined') { s.prop29 = iabNames.join(','); } else if (typeof iabIds !== 'undefined') { s.prop29 = iabIds.join(','); } if (s.prop20 && s.prop20 !== 'no value') { s.prop21 = s.getPercentPageViewed(); } else { s.prop21 = ''; } if (typeof __siren !== 'undefined') { s.eVar27 = __siren; } s.prop22 = s.getDaysSinceLastVisit('s_lv'); s.prop43=getOmnitureTrackingFromCookie('ref', prop43); s.prop25 = '' s.prop27 = ''; s.prop30 = getOmnitureTrackingFromCookie('prop30', prop30); s.linkInternalFilters="javascript:,richmondandtwickenhamtimes.co.uk,fish4.co.uk,adsys.newsquest.co.uk,www.exchangeandmart.co.uk,www.communigate.co.uk," s.eVar61=(new Date()).toLocaleDateString("en-GB"); s.eVar62=(new Date()).toLocaleDateString("en-GB"); /* Article-site-cloning data */ s.eVar90 = window.data_layer.article.parent_originating_site_id; s.eVar91 = window.data_layer.article.originating_article_id; s.eVar92 = window.data_layer.article.is_original_to_site; s.eVar95 = window.data_layer.site.using_piano_id; s.eVar106 = ''; /* Uber block article counts */ s.eVar93 = window.data_layer.page.top_stories_article_count + ':' + window.data_layer.page.interstitial_article_count + ':' + window.data_layer.page.news_stories_article_count; /* Conversion Variables */ s.campaign="" s.state="" s.zip="" s.events="" s.products="" s.purchaseID="" s.eVar14="" try { s.list3=getValidatedAPList(); } catch (e) { // do nothing } // Initial fotorama tracking. var moduleType = null; if (s.prop5 === 'ArticleModule' || s.prop5 == 'PropertyModuleReplacement' || s.prop5 === 'BlockArticleModule') { moduleType = 'article'; } else if (s.prop5 === 'PictureGalleryModule') { moduleType = 'gallery'; } if (moduleType === 'article' || moduleType === 'gallery') { var imagePath = ''; if ($('.fotorama').length > 0) { // Get the first Fotorama image. try { var el = $('.fotorama').data('fotorama').data[0].html; var url = $(el).find('div').css('background-image'); imagePath = url.replace('url(','').replace(')','').replace(/\"/gi, ""); } catch (e) { } } else { // If there's just one image (i.e. it's not a gallery), find its path. var imagePathSingle = $('#mainImage').attr('src'); if (typeof imagePathSingle !== 'undefined') { imagePath = imagePathSingle.split('.')[0] + '/'; } } var imageParts = imagePath.split('/'); if (imageParts.length > 1) { s.eVar37 = imageParts[imageParts.length - 2]; s.prop37 = imageParts[imageParts.length - 2]; s.events = s.apl(s.events, 'event7', ',', 2); } s.eVar36 = moduleType; s.prop36 = moduleType; } // Education pages. if (s.prop5 === 'ResponsiveEducationModule') { // School profile page. if ($('#eduOverview').length > 0) { s.eVar40 = $('#eduOverview').data('school-status'); s.prop40 = s.eVar40; s.prop41 = 'edu-' + $('#eduOverview').data('school-urn'); s.prop46 = $('#town').text(); } // Comparison page. if ($('#eduComparisonTable').length > 0) { s.list1 = ''; } // Results page. if ($('.school-results').length > 0) { s.list1 = ''; // Track the search criteria. s.prop44 = ''; s.prop45 = "".toLowerCase(); s.prop46 = "".toLowerCase(); s.prop49 = ''; s.prop50 = ''; s.prop51 = ''; s.eVar2 = s.prop50; var newSearch = false; if (newSearch) { s.events = s.apl(s.events, 'event17', ',', 1); } } } //New Property module if (s.prop5 === 'ResponsivePropertyModule') { /* Use prop42 for single and list pages, for list pages use hyphen separate lists of id's */ s.list1 = 'hom-21628962,hom-0,hom-21628962'; //Property's all over the place (homepage, searches etc - HOM-133 //Property Detail - HOM-131, HOM-134, HOM-130 //Contact us submissions - HOM-137 if($('#propertyModule.agent-details').length > 0) { //Add a click handler for a.contact-detail } } // is their a video tag on the page? if ($('.exco-embed').length > 0) { console.log('VID: setting tracking for event50'); s.events = s.apl(s.events, 'event50', ',', 1); } var foundAutoPlayVid = false; $('.jw-outer').each(function (a, domEle) { if ($(this).data('multimedia-block') === 'no' && !foundAutoPlayVid) { console.log('VID: setting tracking for event51'); s.events = s.apl(s.events, 'event51', ',', 1); foundAutoPlayVid = true; } }); s.eVar66 = 'Ad-Full'; // var eVar65Copy = s.getValOnce(s.eVar65, "ev65", 0); // if (eVar65Copy !== '' && s.prop20.indexOf("/my/subscription/activate/") > -1) { // s.events = s.apl(s.events, "event4", ",", 1); // Set the subscription counter event. // s.events = s.apl(s.events, "purchase", ",", 1); // Set the purchase event. // s.products = "Subscription : Metered Access;" + eVar65Copy + ";1;"; // s.purchaseID = ""; // } if(qs.get('action') === 'success' && (s.prop5 === 'ArticleModule' || s.prop5 === 'BMDModule' || s.prop5 === 'BlockArticleModule')) { s.events=s.apl(s.events,'event9',',',2) } /* Hierarchy Variables */ s.hier1="newsquest," + "South West London" + ",www.richmondandtwickenhamtimes.co.uk," + path[6].replace(/\//,","); if (typeof MartiniFotorama !== 'undefined') { MartiniFotorama.loadOmniture(s); } s.prop39 = "0"; // Tracking usage of Bytecast audio embeds in articles. s.eVar82 = 'no'; s.eVar83 = ''; console.log('ADB: starting'); /************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/ if (qs.get('callback') !== 'in' && navigator.userAgent.toString().toLowerCase().indexOf('googlebot') === -1) { var s_code=s.t(); var backupAdobe = s; if(s_code)document.write(s_code) } //--></script> <!-- End SiteCatalyst code version: H.19.3. --> <script src="//connect.facebook.net/en_US/all.js#xfbml=1"></script> <script async src="https://www.tiktok.com/embed.js"></script> </html>