CINXE.COM

Page Not Found

<!DOCTYPE html> <html lang="en-GB" dir="ltr" xmlns="http://www.w3.org/1999/xhtml"> <head> <base href="https://holidays.radiotimes.com/" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Page Not Found</title> <meta property="twitter:title" content="Radio Times Travel" /> <meta property="og:locale" content="en_GB" /> <meta property="og:site_name" content="Radio Times Travel offers the best escorted tours, cruises, rail holidays and more." /> <meta property="twitter:site" content="@RadioTimes" /> <meta name="rating" content="general" /> <meta property="og:type" content="website" /> <meta name="msapplication-TileColor" content="#004495" /> <meta name="X-UA-Compatible" content="IE=edge, chrome=1" /> <meta name="theme-color" content="#004495" /> <meta name="google-site-verification" content="CtY7cmIvz__KziWYj307NQBFeFLd9HzZ9m8y5av0oek" /> <link rel="canonical" href="https://holidays.radiotimes.com//brochures/newmarket-holidays/" /> <link rel="icon" href="https://holidays.radiotimes.com/images/radiotimes_favicon/favicon" type="image/x-icon" /> <link rel="shortcut icon" href="https://holidays.radiotimes.com/images/radiotimes_favicon/favicon" type="image/x-icon" /> <link rel="apple-touch-icon" href="https://holidays.radiotimes.com/images/radiotimes_webappicon/app60" /> <link rel="apple-touch-icon" sizes="76x76" href="https://holidays.radiotimes.com/images/radiotimes_webappicon/app76" /> <link rel="apple-touch-icon" sizes="120x120" href="https://holidays.radiotimes.com/images/radiotimes_webappicon/app120" /> <link rel="apple-touch-icon" sizes="152x152" href="https://holidays.radiotimes.com/images/radiotimes_webappicon/app152" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <script type="text/javascript">dataLayer=[];</script> <link rel="stylesheet" type="text/css" href="https://holidays.radiotimes.com/min/?fb=Zm9udHMvdmliZS5jc3MsY3NzL2RlZmF1bHQuY3Nz&amp;ts=1723466616" /> <link rel="stylesheet" type="text/css" href="nbf/style.php?brand=radiotimes&amp;ts=1717576266" /> <link rel="stylesheet" type="text/css" href="nbf/style_tpl.php?tpl=default&amp;brand=radiotimes&amp;ts=1714490142" /> <link rel="stylesheet" type="text/css" href="https://use.typekit.net/bda8yhn.css" /> <link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Open+Sans:400,400i,600" /> <link rel="stylesheet" type="text/css" href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" /> <style type="text/css"> /* COOKIE POLICY */ .cookiepolicytext { width: 100%; margin: 0 auto; display: block; max-width: 1340px; padding: 0 20px; box-sizing: border-box; } #cookieLaw { background-color: #FFFFFF !important; border: 2px solid #002C61 !important; color: #343434 !important; } #cookieLaw a { color: #004495; } #cookieLaw a { color: #004495; } html { text-rendering: optimizespeed; text-rendering: optimizeLegibility; -moz-font-feature-settings: 'kern'; font-feature-settings: 'kern'; font-kerning: normal; font-variant-ligatures: common-ligatures; -moz-osx-font-smoothing: grayscale; -moz-osx-font-smoothing: grayscale; -webkit-text-size-adjust: 100%; } body { overflow-y: scroll; } button.nbf_button { font-weight: 600; font-size: 14px; border-radius: 27px; text-align: center; min-width: 140px; min-height: 46px; background-color: #1AA800; background-image: none; } div.nbf_button { padding: 0; } #nbf_pagecontent_area p, #nbf_pagecontent_area ul { font-size: 14px; line-height: 22px; margin: 0; } h1.heading,h2.heading,h3.heading { font-style: normal; font-weight: 400; } .grey { color: #343434; } .white { color: #FFFFFF; } h1.heading { font-size: 46px; line-height: 56px; margin-bottom: 20px; } h2.heading { font-size: 36px; line-height: 46px; margin-bottom: 15px; } h3.heading { font-size: 26px; line-height: 36px; margin-bottom: 10px; } h4.heading,h5.heading,h6.heading { font-style: normal; font-weight: 600; } h4.heading { font-size: 20px; line-height: 30px; } h5.heading { font-size: 18px; line-height: 28px; } h6.heading { font-size: 16px; line-height: 26px; } button.nbf_button:hover { background-color: #127500; } button.nbf_button.search { background-color:#004495; } button.nbf_button.search:hover { background-color:#002C61; } button.nbf_button.secondary { background-color:#B3B9C0; } button.nbf_button.secondary:hover { background-color:#656D76; } .guttercontentwidth, .contentwidth { width: 100%; margin: 0 auto; display: block; } .guttercontentwidth { max-width: 1340px; } .contentwidth { max-width: 1300px; } .far::before, .fas::before, .fal::before { display:inline-block; font:normal normal normal 14px/1 FontAwesome; font-size:inherit; text-rendering:auto; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale } .myfavtext { line-height: 27px; vertical-align: top; margin-left: 8px; } /* HEADER MENU */ .nbf_tpl_menu div.submenu_item { box-shadow: none; margin-top: 10px; transform: translateX(-17%); } #header_menu a.submenu_entry { border-style: solid; border-color: #FFFFFF; } @media (max-width:768px) { h1.heading { font-size: 40px; line-height: 46px; margin-bottom: 15px; } h2.heading { font-size: 32px; line-height: 42px; margin-bottom: 10px; } h3.heading { font-size: 24px; line-height: 42px; margin-bottom: 10px; } /* MOBILE MENU */ #mobile_menu_menu_wrap.nbf_tpl_pagesection_collapsibletab img { width: 31px; transform: translate(-50%, -50%); top: 50%; right: 0; position: absolute; text-align: center; } #mobile_menu_menu_wrap.nbf_tpl_pagesection_collapsibletab img { width: 31px; } #mobile_menu_menu_wrap.nbf_tpl_pagesection_collapsibletabselected img { width: 17px; right: 15px; } } @media (max-width:320px) { #mobile_menu_menu_wrap.nbf_tpl_pagesection_collapsibletab img { right: -7px; } #mobile_menu_menu_wrap.nbf_tpl_pagesection_collapsibletabselected img { right: 8px; } } /* BASKET */ .nbf_fancyimg_basket_header { display: none; } .nbf_basket_field, .nbf_basket_fieldvalue { white-space: normal; text-align: left; display: inline-block; font-size: 16px; vertical-align: top; margin: 0 0 10px 0; } .nbf_basket_fieldvalue { width: 48%; font-weight: 600; } .nbf_basket_field { width: 50%; font-weight: 400; } /* BOOK NOW BUTTON */ #nbf_booknow_button { color: #FFFFFF; height: 46px; } #nbf_pagefooter p { margin: 0; } @media (max-width:320px) { #footer_menu ul li { width: 100%; } } </style> <script type="text/javascript" src="https://holidays.radiotimes.com/js/jquery-3.7.1.min.js?1716220949"></script> <script type="text/javascript" src="https://holidays.radiotimes.com/js/jquery-ui.min.js?1668699448"></script> <script type="text/javascript" src="https://holidays.radiotimes.com/min/?fb=anMvbmJmLmpzLGpzL2Jzbi5BdXRvU3VnZ2VzdF9jXzIuMC5qcyxqcy9uYmYubGlnaHRib3guanMsanMvcGIuanMsanMvbmJmLmNvbGxhcHNpYmxldGFicy5qcyxqcy9uYmYubWVudS5qcw==&amp;ts=1716373649"></script> <script type="text/javascript" defer>//MOBILE MENU $(document).ready(function(){ $('#menu_icon').click(function(){ $(this).toggleClass('fixed'); }); }); $(document).ready(function(){ $('#menu_icon').click(function(){ $("#mobile_menu").toggleClass('open'); }); }); !function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(t=t||self).LazyLoad=n()}(this,(function(){"use strict";function t(){return(t=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])}return t}).apply(this,arguments)}var n="undefined"!=typeof window,e=n&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),i=n&&"IntersectionObserver"in window,o=n&&"classList"in document.createElement("p"),r=n&&window.devicePixelRatio>1,a={elements_selector:".lazy",container:e||n?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_poster:"poster",class_applied:"applied",class_loading:"loading",class_loaded:"loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1},c=function(n){return t({},a,n)},s=function(t,n){var e,i="LazyLoad::Initialized",o=new t(n);try{e=new CustomEvent(i,{detail:{instance:o}})}catch(t){(e=document.createEvent("CustomEvent")).initCustomEvent(i,!1,!1,{instance:o})}window.dispatchEvent(e)},l="loading",u="loaded",d="applied",f="error",_="native",g="data-",v="ll-status",p=function(t,n){return t.getAttribute(g+n)},b=function(t){return p(t,v)},h=function(t,n){return function(t,n,e){var i="data-ll-status";null!==e?t.setAttribute(i,e):t.removeAttribute(i)}(t,0,n)},m=function(t){return h(t,null)},E=function(t){return null===b(t)},y=function(t){return b(t)===_},A=[l,u,d,f],I=function(t,n,e,i){t&&(void 0===i?void 0===e?t(n):t(n,e):t(n,e,i))},L=function(t,n){o?t.classList.add(n):t.className+=(t.className?" ":"")+n},w=function(t,n){o?t.classList.remove(n):t.className=t.className.replace(new RegExp("(^|\\s+)"+n+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")},k=function(t){return t.llTempImage},O=function(t,n){if(n){var e=n._observer;e&&e.unobserve(t)}},x=function(t,n){t&&(t.loadingCount+=n)},z=function(t,n){t&&(t.toLoadCount=n)},C=function(t){for(var n,e=[],i=0;n=t.children[i];i+=1)"SOURCE"===n.tagName&&e.push(n);return e},N=function(t,n,e){e&&t.setAttribute(n,e)},M=function(t,n){t.removeAttribute(n)},R=function(t){return!!t.llOriginalAttrs},G=function(t){if(!R(t)){var n={};n.src=t.getAttribute("src"),n.srcset=t.getAttribute("srcset"),n.sizes=t.getAttribute("sizes"),t.llOriginalAttrs=n}},T=function(t){if(R(t)){var n=t.llOriginalAttrs;N(t,"src",n.src),N(t,"srcset",n.srcset),N(t,"sizes",n.sizes)}},j=function(t,n){N(t,"sizes",p(t,n.data_sizes)),N(t,"srcset",p(t,n.data_srcset)),N(t,"src",p(t,n.data_src))},D=function(t){M(t,"src"),M(t,"srcset"),M(t,"sizes")},F=function(t,n){var e=t.parentNode;e&&"PICTURE"===e.tagName&&C(e).forEach(n)},P={IMG:function(t,n){F(t,(function(t){G(t),j(t,n)})),G(t),j(t,n)},IFRAME:function(t,n){N(t,"src",p(t,n.data_src))},VIDEO:function(t,n){!function(t,e){C(t).forEach((function(t){N(t,"src",p(t,n.data_src))}))}(t),N(t,"poster",p(t,n.data_poster)),N(t,"src",p(t,n.data_src)),t.load()}},S=function(t,n){var e=P[t.tagName];e&&e(t,n)},V=function(t,n,e){x(e,1),L(t,n.class_loading),h(t,l),I(n.callback_loading,t,e)},U=["IMG","IFRAME","VIDEO"],$=function(t,n){!n||function(t){return t.loadingCount>0}(n)||function(t){return t.toLoadCount>0}(n)||I(t.callback_finish,n)},q=function(t,n,e){t.addEventListener(n,e),t.llEvLisnrs[n]=e},H=function(t,n,e){t.removeEventListener(n,e)},B=function(t){return!!t.llEvLisnrs},J=function(t){if(B(t)){var n=t.llEvLisnrs;for(var e in n){var i=n[e];H(t,e,i)}delete t.llEvLisnrs}},K=function(t,n,e){!function(t){delete t.llTempImage}(t),x(e,-1),function(t){t&&(t.toLoadCount-=1)}(e),w(t,n.class_loading),n.unobserve_completed&&O(t,e)},Q=function(t,n,e){var i=k(t)||t;B(i)||function(t,n,e){B(t)||(t.llEvLisnrs={});var i="VIDEO"===t.tagName?"loadeddata":"load";q(t,i,n),q(t,"error",e)}(i,(function(o){!function(t,n,e,i){var o=y(n);K(n,e,i),L(n,e.class_loaded),h(n,u),I(e.callback_loaded,n,i),o||$(e,i)}(0,t,n,e),J(i)}),(function(o){!function(t,n,e,i){var o=y(n);K(n,e,i),L(n,e.class_error),h(n,f),I(e.callback_error,n,i),o||$(e,i)}(0,t,n,e),J(i)}))},W=function(t,n,e){!function(t){t.llTempImage=document.createElement("IMG")}(t),Q(t,n,e),function(t,n,e){var i=p(t,n.data_bg),o=p(t,n.data_bg_hidpi),a=r&&o?o:i;a&&(t.style.backgroundImage='url("'.concat(a,'")'),k(t).setAttribute("src",a),V(t,n,e))}(t,n,e),function(t,n,e){var i=p(t,n.data_bg_multi),o=p(t,n.data_bg_multi_hidpi),a=r&&o?o:i;a&&(t.style.backgroundImage=a,function(t,n,e){L(t,n.class_applied),h(t,d),n.unobserve_completed&&O(t,n),I(n.callback_applied,t,e)}(t,n,e))}(t,n,e)},X=function(t,n,e){!function(t){return U.indexOf(t.tagName)>-1}(t)?W(t,n,e):function(t,n,e){Q(t,n,e),S(t,n),V(t,n,e)}(t,n,e)},Y=["IMG","IFRAME"],Z=function(t){return t.use_native&&"loading"in HTMLImageElement.prototype},tt=function(t,n,e){t.forEach((function(t){return function(t){return t.isIntersecting||t.intersectionRatio>0}(t)?function(t,n,e,i){h(t,"entered"),L(t,e.class_entered),w(t,e.class_exited),function(t,n,e){n.unobserve_entered&&O(t,e)}(t,e,i),I(e.callback_enter,t,n,i),function(t){return A.indexOf(b(t))>=0}(t)||X(t,e,i)}(t.target,t,n,e):function(t,n,e,i){E(t)||(L(t,e.class_exited),function(t,n,e,i){e.cancel_on_exit&&function(t){return b(t)===l}(t)&&"IMG"===t.tagName&&(J(t),function(t){F(t,(function(t){D(t)})),D(t)}(t),function(t){F(t,(function(t){T(t)})),T(t)}(t),w(t,e.class_loading),x(i,-1),m(t),I(e.callback_cancel,t,n,i))}(t,n,e,i),I(e.callback_exit,t,n,i))}(t.target,t,n,e)}))},nt=function(t){return Array.prototype.slice.call(t)},et=function(t){return t.container.querySelectorAll(t.elements_selector)},it=function(t){return function(t){return b(t)===f}(t)},ot=function(t,n){return function(t){return nt(t).filter(E)}(t||et(n))},rt=function(t,e){var o=c(t);this._settings=o,this.loadingCount=0,function(t,n){i&&!Z(t)&&(n._observer=new IntersectionObserver((function(e){tt(e,t,n)}),function(t){return{root:t.container===document?null:t.container,rootMargin:t.thresholds||t.threshold+"px"}}(t)))}(o,this),function(t,e){n&&window.addEventListener("online",(function(){!function(t,n){var e;(e=et(t),nt(e).filter(it)).forEach((function(n){w(n,t.class_error),m(n)})),n.update()}(t,e)}))}(o,this),this.update(e)};return rt.prototype={update:function(t){var n,o,r=this._settings,a=ot(t,r);z(this,a.length),!e&&i?Z(r)?function(t,n,e){t.forEach((function(t){-1!==Y.indexOf(t.tagName)&&(t.setAttribute("loading","lazy"),function(t,n,e){Q(t,n,e),S(t,n),h(t,_)}(t,n,e))})),z(e,0)}(a,r,this):(o=a,function(t){t.disconnect()}(n=this._observer),function(t,n){n.forEach((function(n){t.observe(n)}))}(n,o)):this.loadAll(a)},destroy:function(){this._observer&&this._observer.disconnect(),et(this._settings).forEach((function(t){delete t.llOriginalAttrs})),delete this._observer,delete this._settings,delete this.loadingCount,delete this.toLoadCount},loadAll:function(t){var n=this,e=this._settings;ot(t,e).forEach((function(t){O(t,n),X(t,e,n)}))}},rt.load=function(t,n){var e=c(n);X(t,e)},rt.resetStatus=function(t){m(t)},n&&function(t,n){if(n)if(n.length)for(var e,i=0;e=n[i];i+=1)s(t,e);else s(t,n)}(rt,window.lazyLoadOptions),rt})); $(function(){ var lazyLoadInstance = new LazyLoad({ // Your custom settings go here }); }); </script> <!-- BEGIN Krux Control Tag for "travel.radiotimes.com" --><!-- Source: /snippet/controltag?confid=JppoloiQ&site=travel.radiotimes.com&edit=1 --><script class="kxct" data-id="JppoloiQ" data-timing="async" data-version="1.9" type="text/javascript"> window.Krux||((Krux=function() {Krux.q.push(arguments)} ).q=[]); (function(){ var k=document.createElement('script');k.type='text/javascript';k.async=true; var m,src=(m=location.href.match(/\bkxsrc=([^&]+)/))&&decodeURIComponent(m[1]); k.src = /^https?:\/\/([a-z0-9_\-\.]+\.)?krxd\.net(:\d{1,5})?\//i.test(src) ? src : src === "disable" ? "" : (location.protocol==="https:"?"https:":"http:")+"//cdn.krxd.net/controltag?confid=JppoloiQ" ; var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(k,s); }()); </script><!-- END Krux Controltag --><script type="text/javascript"> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', "UA-23688336-17", 'auto'); ga('set', 'currencyCode', 'GBP'); </script> <!-- Infinity Tracking Code v2.0 Copyright Infinity 2015 www.infinitycloud.com --><script type="text/javascript"> var _ictt = _ictt || []; _ictt.push(['_setIgrp','1274']); // Installation ID _ictt.push(['_enableGAIntegration',{'gua':true,'ga':false}]); _ictt.push(['_enableAutoDiscovery']); _ictt.push(['_track']); (function() { var ict = document.createElement('script'); ict.type = 'text/javascript'; ict.async = true; ict.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'ict.infinity-tracking.net/js/nas.v1.min.js'; var scr = document.getElementsByTagName('script')[0]; scr.parentNode.insertBefore(ict, scr); })(); </script><!-- Infinity Tracking Code End --> <!-- Start Visual Website Optimizer Asynchronous Code --> <script type='text/javascript'> var _vwo_code=(function(){ var account_id=32688, settings_tolerance=2000, library_tolerance=2500, use_existing_jquery=false, // DO NOT EDIT BELOW THIS LINE f=false,d=document;return{use_existing_jquery:function(){return use_existing_jquery;},library_tolerance:function(){return library_tolerance;},finish:function(){if(!f){f=true;var a=d.getElementById('_vis_opt_path_hides');if(a)a.parentNode.removeChild(a);}},finished:function(){return f;},load:function(a){var b=d.createElement('script');b.src=a;b.type='text/javascript';b.innerText;b.onerror=function(){_vwo_code.finish();};d.getElementsByTagName('head')[0].appendChild(b);},init:function(){settings_timer=setTimeout('_vwo_code.finish()',settings_tolerance);this.load('//dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(d.URL)+'&r='+Math.random());var a=d.createElement('style'),b='body{opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;}',h=d.getElementsByTagName('head')[0];a.setAttribute('id','_vis_opt_path_hides');a.setAttribute('type','text/css');if(a.styleSheet)a.styleSheet.cssText=b;else a.appendChild(d.createTextNode(b));h.appendChild(a);return settings_timer;}};}());_vwo_settings_timer=_vwo_code.init(); </script> <!-- End Visual Website Optimizer Asynchronous Code --> <!-- Optimizely Pixel --> <script src="https://cdn.optimizely.com/js/6971960938.js"></script> <!-- End Optimizely Pixel --> <!-- Facebook Pixel Code --> <script> !function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window,document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '2176354149308734'); fbq('track', 'PageView'); </script> <noscript> <img height="1" width="1" src="https://www.facebook.com/tr?id=2176354149308734&ev=PageView &noscript=1"/> </noscript> <!-- End Facebook Pixel Code --><script async src="https://www.googletagmanager.com/gtag/js?id=385028675"></script> <script type="text/javascript"> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} if (!localStorage.getItem('moduleTypesEnabled') || localStorage.getItem('moduleTypesEnabled') && localStorage.getItem('acceptedModuleTypes') && localStorage.getItem('acceptedModuleTypes').includes("Functional")) { gtag('js', new Date()); } </script> <style type="text/css">#nbf_page { background-color:#F3F4F5; } #nbf_page_container { padding: 20px; margin-right: auto; margin-left: auto; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; min-height: 400px; max-width: 1340px; } @media (max-width:768px) { #nbf_page_container { padding-left: 0px; padding-top: 0px; padding-right: 0px; } } </style></head><body class="lang-en-GB dir-ltr pb"><div id="nbf_page" class=""><header id="nbf_pageheader" class="nbf_tpl_pagesection_vertical nbf_align_center"><script>try{Typekit.load({ async: true });}catch(e){}</script><div id="header_top_wrap" class="nbf_tpl_pagesection_vertical_norwd header_top_wrap"><a href="/"><img id="site_logo" class="nbf_tpl_image site_logo" src="images/_rt_logo/radiotimes_header_logo/?m=nbf" alt="RadioTimes Travel" title="" /></a><div id="favourites_link" class="nbf_tpl_pagesection_linked favourites_link"><a href="/bookmarks.php"><div id="fav_text" class="nbf_tpl_text fav_text"><img alt="" src="images/_favourite_white" style="width: 25px;" /><span class="myfavtext">My favourites</span></div></a></div><script type="application/json" id="favourites_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"favourites_link", "settings":[]}</script><div id="mobile_menu" class="nbf_tpl_pagesection_collapsibletabscontainer mobile_menu nbf_tpl_pagesection_collapsibletabscontainerhorizontal " data-eventtype="click" data-collapseonoutsideclicks="false" data-defaulttab=""><ul class="nbf_tpl_pagesection_collapsibletabs" role="tablist"><li id="mobile_menu_menu_wrap" class="nbf_tpl_pagesection_collapsibletab" aria-selected="false" aria-controls="mobile_menu_menu_wrap_pane" role="tab" tabindex="0" data-image="images/_menu" data-selectedimage="images/_menu_close2x"><img class="img" src="images/_menu" alt="" /></li></ul><div id="mobile_menu_menu_wrap_pane" class="nbf_tpl_pagesection_collapsibletabpane nbf_hidden" aria-hidden="true" aria-labelledby="mobile_menu_menu_wrap" role="tabpanel"><div id="menu_wrap" class="nbf_tpl_pagesection_vertical_norwd menu_wrap nbf_first_child nbf_last_child"><div id="favourites_link_menu" class="nbf_tpl_pagesection_linked favourites_link_menu"><a href="/bookmarks.php"><div id="fav_text_menu" class="nbf_tpl_text fav_text_menu"><img alt="" src="images/_favourite_white" style="width: 25px;" /><span class="myfavtext">My favorites</span></div></a></div><script type="application/json" id="favourites_link_menu_pbdata" class="pb_data" data-type="page_section_linked">{"id":"favourites_link_menu", "settings":[]}</script><div id="level1_1_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_1_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="/tours/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;960&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;1&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Escorted Tours&quot;,&quot;link&quot;:&quot;\/tours\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;960\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;1&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;/tours/&quot;, &quot;Escorted Tours&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_1_level1_item" class="nbf_tpl_text level1_item">Escorted Tours</div></a></div><script type="application/json" id="level1_1_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_1_menu_item1_link", "settings":[]}</script></div><div id="level1_2_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_2_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="/cruises/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;961&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;Imagine&quot;,&quot;order&quot;:&quot;3&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Cruises&quot;,&quot;link&quot;:&quot;\/cruises\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;961\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;3&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;/cruises/&quot;, &quot;Cruises&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_2_level1_item" class="nbf_tpl_text level1_item">Cruises</div></a></div><script type="application/json" id="level1_2_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_2_menu_item1_link", "settings":[]}</script></div><div id="level1_3_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_3_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="https://prf.hn/click/camref:1101lkRI8/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;964&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;6&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Theatre&quot;,&quot;link&quot;:&quot;https:\/\/prf.hn\/click\/camref:1101lkRI8\/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;964\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;6&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://prf.hn/click/camref:1101lkRI8/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times&quot;, &quot;Theatre&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_3_level1_item" class="nbf_tpl_text level1_item">Theatre</div></a></div><script type="application/json" id="level1_3_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_3_menu_item1_link", "settings":[]}</script></div><div id="level1_4_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_4_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="/rail/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;969&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;8&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Rail&quot;,&quot;link&quot;:&quot;\/rail\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;969\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;Rail holidays&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;8&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;/rail/&quot;, &quot;Rail&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_4_level1_item" class="nbf_tpl_text level1_item">Rail</div></a></div><script type="application/json" id="level1_4_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_4_menu_item1_link", "settings":[]}</script></div><div id="level1_5_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_5_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="/magazine-offers/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;970&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;11&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Magazine Offers&quot;,&quot;link&quot;:&quot;\/magazine-offers\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;970\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;Magazine offers&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;11&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;/magazine-offers/&quot;, &quot;Magazine Offers&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_5_level1_item" class="nbf_tpl_text level1_item">Magazine Offers</div></a></div><script type="application/json" id="level1_5_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_5_menu_item1_link", "settings":[]}</script></div><div id="level1_6_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_6_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="travel-news" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;973&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;12&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Travel News&quot;,&quot;link&quot;:&quot;travel-news&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;973\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;Travel News&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;12&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;travel-news&quot;, &quot;Travel News&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_6_level1_item" class="nbf_tpl_text level1_item">Travel News</div></a></div><script type="application/json" id="level1_6_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_6_menu_item1_link", "settings":[]}</script></div><div id="level1_7_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_7_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="https://holidays.radiotimes.com/destinations" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;979&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;13&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Destinations&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/destinations&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:0:{}&quot;,&quot;title&quot;:&quot;Destination&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;13&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/destinations&quot;, &quot;Destinations&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_7_level1_item" class="nbf_tpl_text level1_item">Destinations</div></a></div><script type="application/json" id="level1_7_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_7_menu_item1_link", "settings":[]}</script></div><div id="level1_8_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_8_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="https://holidays.radiotimes.com/brochures/" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;981&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;14&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Request a brochure&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/brochures\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;981\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;14&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/brochures/&quot;, &quot;Request a brochure&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_8_level1_item" class="nbf_tpl_text level1_item">Request a brochure</div></a></div><script type="application/json" id="level1_8_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_8_menu_item1_link", "settings":[]}</script></div><div id="level1_9_level1_item_cont" class="nbf_tpl_pagesection_vertical nbf_tpl_it level1_item_cont"><div id="level1_9_menu_item1_link" class="nbf_tpl_pagesection_linked menu_item1_link"><a href="https://www.radiotimesmoney.com/news/zing-multi-currency-app-2/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;983&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;15&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Travel Money&quot;,&quot;link&quot;:&quot;https:\/\/www.radiotimesmoney.com\/news\/zing-multi-currency-app-2\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:0:{}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;15&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://www.radiotimesmoney.com/news/zing-multi-currency-app-2/&quot;, &quot;Travel Money&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } "><div id="level1_9_level1_item" class="nbf_tpl_text level1_item">Travel Money</div></a></div><script type="application/json" id="level1_9_menu_item1_link_pbdata" class="pb_data" data-type="page_section_linked">{"id":"level1_9_menu_item1_link", "settings":[]}</script></div></div></div></div></div><nav id="header_menu" class="nbf_tpl_menu header_menu guttercontentwidth nbf_tpl_menu_base_horizontal nbf_tpl_smenu_dir_horizontal nbf_tpl_smenu_itype_horizontal" data-options="{&quot;direction&quot;:&quot;horizontal&quot;,&quot;submenu_type&quot;:&quot;horizontal&quot;,&quot;submenu_animstyle&quot;:&quot;show&quot;,&quot;animduration&quot;:200,&quot;hidedelay&quot;:0}"><ul class="nbf_ul_horizontal nbf_ul_center nbf_ul_list_none"> <li class="first "><a href="https://holidays.radiotimes.com/tours/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;960&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Escorted Tours&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/tours\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;960\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;1&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/tours/&quot;, &quot;Escorted Tours&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Escorted Tours" data-event="site interaction">Escorted Tours</a></li> <li class="submenu " rel="Imagine"><a href="https://holidays.radiotimes.com/cruises/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;961&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;Imagine&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Cruises&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/cruises\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;961\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;3&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/cruises/&quot;, &quot;Cruises&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } ">Cruises</a></li> <li class=""><a href="https://prf.hn/click/camref:1101lkRI8/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;964&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Theatre&quot;,&quot;link&quot;:&quot;https:\/\/prf.hn\/click\/camref:1101lkRI8\/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;964\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;6&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://prf.hn/click/camref:1101lkRI8/destination:https%3A%2F%2Fwww.lovetheatre.com%2Fpartner%2Fradio-times&quot;, &quot;Theatre&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Theatre" data-event="site interaction">Theatre</a></li> <li class=""><a href="https://holidays.radiotimes.com/rail/" title="Rail holidays" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;969&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Rail&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/rail\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;969\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;Rail holidays&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;8&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/rail/&quot;, &quot;Rail&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Rail" data-event="site interaction">Rail</a></li> <li class=""><a href="https://holidays.radiotimes.com/magazine-offers/" title="Magazine offers" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;970&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Magazine Offers&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/magazine-offers\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;970\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;Magazine offers&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;11&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/magazine-offers/&quot;, &quot;Magazine Offers&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Magazine Offers" data-event="site interaction">Magazine Offers</a></li> <li class=""><a href="https://holidays.radiotimes.com/travel-news" title="Travel News" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;973&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Travel News&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/travel-news&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;973\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;Travel News&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;12&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/travel-news&quot;, &quot;Travel News&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Travel News" data-event="site interaction">Travel News</a></li> <li class=""><a href="https://holidays.radiotimes.com/destinations" title="Destination" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;979&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Destinations&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/destinations&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:0:{}&quot;,&quot;title&quot;:&quot;Destination&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;13&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/destinations&quot;, &quot;Destinations&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Destinations" data-event="site interaction">Destinations</a></li> <li class=""><a href="https://holidays.radiotimes.com/brochures/" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;981&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Request a brochure&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/brochures\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;981\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;14&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/brochures/&quot;, &quot;Request a brochure&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Request a brochure" data-event="site interaction">Request a brochure</a></li> <li class="last "><a href="https://www.radiotimesmoney.com/news/zing-multi-currency-app-2/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;983&quot;,&quot;menuid&quot;:&quot;RadioTimes_Header&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Travel Money&quot;,&quot;link&quot;:&quot;https:\/\/www.radiotimesmoney.com\/news\/zing-multi-currency-app-2\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:0:{}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;15&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://www.radiotimesmoney.com/news/zing-multi-currency-app-2/&quot;, &quot;Travel Money&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0,&#039;page_location&#039;: &#039;/404//brochures/newmarket-holidays/&#039;}); } " data-type="link" data-description="Travel Money" data-event="site interaction">Travel Money</a></li></ul><div class="submenu_item clearfix hidden" rel="Imagine"> <div class="submenu_contents"> </div> <div class="submenu_strapline"> </div> </div> </nav></header><div id="nbf_page_container" class=""><div id="nbf_container" class=""><div id="nbf_pagemiddle" class="nbf_tpl_pagesection_vertical"></div>&nbsp;<script type="text/javascript"> ga('send', 'pageview', {'page':"\/404\/\/brochures\/newmarket-holidays\/"}); </script> <!-- Facebook Pixel Code --> <script> !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, document,'script','https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '952142284913607'); fbq('track', "PageView");</script> <noscript><img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=952142284913607&ev=PageView&noscript=1" /></noscript> <!-- End Facebook Pixel Code --><script type="text/javascript"> if (!localStorage.getItem('moduleTypesEnabled') || localStorage.getItem('moduleTypesEnabled') && localStorage.getItem('acceptedModuleTypes') && localStorage.getItem('acceptedModuleTypes').includes("Functional")) { gtag('config', "385028675", {send_page_view: false,'page_location': '/404//brochures/newmarket-holidays/'}); gtag('event', 'page_view', {'send_to': "385028675"});} if (!localStorage.getItem('moduleTypesEnabled') || localStorage.getItem('moduleTypesEnabled') && localStorage.getItem('acceptedModuleTypes') && localStorage.getItem('acceptedModuleTypes').includes("Functional")) { } </script> </div><style type="text/css">#nbf_container { padding: 0px 20px 0px 20px; margin: 0px auto 0px auto; position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; max-width: 1340px; } </style></div><footer id="nbf_pagefooter" class="nbf_tpl_pagesection_vertical nbf_align_center"><div id="footer_menu_wrap" class="nbf_tpl_pagesection_vertical footer_menu_wrap"><nav id="footer_menu" class="nbf_tpl_menu footer_menu guttercontentwidth nbf_tpl_menu_base_horizontal nbf_tpl_smenu_dir_horizontal nbf_tpl_smenu_itype_horizontal" data-options="{&quot;direction&quot;:&quot;horizontal&quot;,&quot;submenu_type&quot;:&quot;horizontal&quot;,&quot;submenu_animstyle&quot;:&quot;show&quot;,&quot;animduration&quot;:200,&quot;hidedelay&quot;:0}"><ul class="nbf_ul_horizontal nbf_ul_center nbf_ul_list_none"> <li class="first "><a href="http://www.immediate.co.uk/privacy-policy/" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;618&quot;,&quot;menuid&quot;:&quot;radiotimes_footeraboutus_menu&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Privacy &amp; Cookies&quot;,&quot;link&quot;:&quot;http:\/\/www.immediate.co.uk\/privacy-policy\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;618\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:1:{i:0;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;0&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;http://www.immediate.co.uk/privacy-policy/&quot;, &quot;Privacy &amp; Cookies&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0}); } " data-type="link" data-description="Privacy &amp; Cookies" data-event="site interaction">Privacy &amp; Cookies</a></li> <li class=""><a href="https://holidays.radiotimes.com/terms-and-conditions/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;599&quot;,&quot;menuid&quot;:&quot;radiotimes_footeraboutus_menu&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Terms and Conditions&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/terms-and-conditions\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;599\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:1:{i:0;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;1&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/terms-and-conditions/&quot;, &quot;Terms and Conditions&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0}); } " data-type="link" data-description="Terms and Conditions" data-event="site interaction">Terms and Conditions</a></li> <li class=""><a href="http://www.immediate.co.uk/website-code-of-conduct/" target="_blank" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;619&quot;,&quot;menuid&quot;:&quot;radiotimes_footeraboutus_menu&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Code of Conduct&quot;,&quot;link&quot;:&quot;http:\/\/www.immediate.co.uk\/website-code-of-conduct\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;1&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;619\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;3&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;http://www.immediate.co.uk/website-code-of-conduct/&quot;, &quot;Code of Conduct&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0}); } " data-type="link" data-description="Code of Conduct" data-event="site interaction">Code of Conduct</a></li> <li class=""><a href="https://holidays.radiotimes.com/contact-us/" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;596&quot;,&quot;menuid&quot;:&quot;radiotimes_footeraboutus_menu&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Contact Us&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/contact-us\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;596\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:10:\&quot;radiotimes\&quot;;i:1;s:17:\&quot;radiotimesstaging\&quot;;}}&quot;,&quot;title&quot;:&quot;&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimes,radiotimesstaging,&quot;,&quot;menuorder&quot;:&quot;7&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/contact-us/&quot;, &quot;Contact Us&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0}); } " data-type="link" data-description="Contact Us" data-event="site interaction">Contact Us</a></li> <li class="last nbf_tpl_menu_selected"><a href="https://holidays.radiotimes.com/brochures/" title="Brochures" onclick="if (typeof dataLayer !== &#039;undefined&#039;) { dataLayer.push({&quot;event&quot;:&quot;Menu Category&quot;,&quot;id&quot;:&quot;972&quot;,&quot;menuid&quot;:&quot;radiotimes_footeraboutus_menu&quot;,&quot;childmenu_id&quot;:&quot;&quot;,&quot;order&quot;:&quot;0&quot;,&quot;sitestyle&quot;:&quot;&quot;,&quot;name&quot;:&quot;Brochures&quot;,&quot;link&quot;:&quot;https:\/\/holidays.radiotimes.com\/brochures\/&quot;,&quot;rel&quot;:&quot;&quot;,&quot;target&quot;:&quot;0&quot;,&quot;enabled&quot;:&quot;1&quot;,&quot;imageurl&quot;:&quot;&quot;,&quot;desc&quot;:&quot;&quot;,&quot;offergroup_id&quot;:&quot;0&quot;,&quot;data&quot;:&quot;a:4:{s:2:\&quot;id\&quot;;s:3:\&quot;972\&quot;;s:9:\&quot;image_alt\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;image_title\&quot;;s:0:\&quot;\&quot;;s:11:\&quot;storefronts\&quot;;a:2:{i:0;s:17:\&quot;radiotimesstaging\&quot;;i:1;s:10:\&quot;radiotimes\&quot;;}}&quot;,&quot;title&quot;:&quot;Brochures&quot;,&quot;accesskey&quot;:&quot;&quot;,&quot;image_alt&quot;:&quot;&quot;,&quot;image_title&quot;:&quot;&quot;,&quot;storefronts&quot;:&quot;,radiotimesstaging,radiotimes,&quot;,&quot;menuorder&quot;:&quot;8&quot;}); }ga(&#039;send&#039;, &#039;event&#039;, &quot;Top Navigation&quot;, &quot;https://holidays.radiotimes.com/brochures/&quot;, &quot;Brochures&quot;, 0);if (!localStorage.getItem(&#039;moduleTypesEnabled&#039;) || localStorage.getItem(&#039;moduleTypesEnabled&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;) &amp;&amp; localStorage.getItem(&#039;acceptedModuleTypes&#039;).includes(&quot;Functional&quot;)) { gtag(&#039;event&#039;, &quot;menu_category&quot;, {&#039;send_to&#039;: &quot;385028675&quot;,&#039;event_category&#039;: &quot;&quot;,&#039;event_action&#039;: &#039;&#039;,&#039;event_label&#039;: &#039;&#039;,&#039;value&#039;: 0}); } " data-type="link" data-description="Brochures" data-event="site interaction">Brochures</a></li></ul></nav></div><div id="footer_bottom_wrap" class="nbf_tpl_pagesection_vertical_norwd footer_bottom_wrap contentwidth"><img id="immediate_footer_icon" class="nbf_tpl_image immediate_footer_icon" src="images/_im_logo/RadioTimes_im_footer_logo/?m=nbf" srcset="images/_im_logo/RadioTimes_im_footer_logo/?m=nbf 1x, images/_im_logo/RadioTimes_im_footer_logo/2x/?m=nbf 2x, images/_im_logo/RadioTimes_im_footer_logo/3x/?m=nbf 3x, images/_im_logo/RadioTimes_im_footer_logo/4x/?m=nbf 4x" alt="Immediate Media Company" title="" /><div id="footer_cms" class="nbf_tpl_cms footer_cms"><p> Website is owned and published by Immediate Media Company Limited. <a href="http://www.immediate.co.uk" target="_blank">www.immediate.co.uk</a></p> <p> &copy; Immediate Media Company Ltd 2024</p> </div></div></footer></div><script type="text/javascript">pb.init.iterator = (function (config) {/** * Iterator javascript paging control object * @returns object */ function PB_Iterator_Paging() { var self = this; this.elemid = ""; this.numpages = 0; this.currentpage = 1; this.timer = undefined; this.delay = 0; this.pg_controls = undefined; this.controlstyle = ""; this.pageconf = "js"; this.autoprogression = "off"; this.init = function () { if (self.timer) { window.clearTimeout(self.timer); } self.pg_controls = $('div.nbf_pb_iterator_pagecontrols.' + self.elemid + '_pagectrl'); // Display page 1 self.changePage(1); // Setup timer if (self.autoprogression === "on" && self.delay > 0 && self.numpages > 1) { self.timer = window.setInterval(self.nextPage, self.delay); } }; this.changePage = function (pagenumber) { // Update the page controls based on the control mode. pagenumber = parseInt(pagenumber, 10); // force page number to be an integer. // Update arrows if (pagenumber === 1) { self.pg_controls.find('div.nbf_pb_iterator_firstpage,div.nbf_pb_iterator_previouspage,div.nbf_pb_pagem2,div.nbf_pb_pagem1').hide(); } if (pagenumber === 2) { self.pg_controls.find('div.nbf_pb_pagem2').hide(); } if (pagenumber === self.numpages) { self.pg_controls.find('div.nbf_pb_iterator_lastpage,div.nbf_pb_iterator_nextpage,div.nbf_pb_pagep2,div.nbf_pb_pagep1').hide(); } if (pagenumber > 1) { self.pg_controls.find('div.nbf_pb_iterator_firstpage,div.nbf_pb_iterator_previouspage,div.nbf_pb_pagem1').css('display','inline-block'); } if (pagenumber > 2) { self.pg_controls.find('div.nbf_pb_pagem2').css('display','inline-block'); } if (pagenumber < self.numpages) { self.pg_controls.find('div.nbf_pb_iterator_lastpage,div.nbf_pb_iterator_nextpage,div.nbf_pb_pagep1').css('display','inline-block'); self.pg_controls.find('div.nbf_pb_pagep2').hide(); } if (pagenumber < (self.numpages - 1)) { self.pg_controls.find('div.nbf_pb_pagep2').css('display','inline-block'); } if (self.controlstyle !== "2arrowallpage" && self.controlstyle !== "all") { // Update page number content for when we are showing some page numbers but not all. if (pagenumber > 1) { self.pg_controls.find('div.nbf_pb_pagem1').html((pagenumber - 1)); } if (pagenumber > 2) { self.pg_controls.find('div.nbf_pb_pagem2').html((pagenumber - 2)); } if (pagenumber < self.numpages) { self.pg_controls.find('div.nbf_pb_pagep1').html((pagenumber + 1)); } if (pagenumber < (self.numpages - 1)) { self.pg_controls.find('div.nbf_pb_pagep2').html((pagenumber + 2)); } self.pg_controls.find('div.nbf_pb_activepage').html(pagenumber); } else { self.pg_controls.find('div.nbf_pb_activepage').addClass('nbf_pb_inactivepage'); self.pg_controls.find('div.nbf_pb_activepage').removeClass('nbf_pb_activepage'); } self.pg_controls.find('div.nbf_pb_pagedirect[data-directpage=' + pagenumber + ']').addClass('nbf_pb_activepage'); self.currentpage = pagenumber; // Depending on pageconf. call the correct method for actually changing the page itself. // Additional implementations of paging may operate differently (xhr,etc) if (self.pageconf === "js") { self._js_changepage(pagenumber); } $(document).trigger("PB_Iterator:pageChanged", self); }; this._js_changepage = function (pagenumber) { $('div.' + self.elemid + '_page.nbf_pb_it_page').hide(); $('div.' + self.elemid + '_page.nbf_pb_it_page[data-page=' + pagenumber + ']').show(); }; this.nextPage = function () { if (self.currentpage >= self.numpages) { self.changePage(1); } else { self.changePage(self.currentpage + 1); } }; this.prevPage = function () { if (self.currentpage <= 1) { self.changePage(self.numpages); } else { self.changePage(self.currentpage - 1); } }; this.resume = function () { if (self.delay > 0) { self.timer = window.setInterval(self.nextPage, self.delay); $(document).trigger("PB_Iterator:stateResumed", self); } }; this.pause = function () { if (self.timer !== undefined) { window.clearInterval(self.timer); $(document).trigger("PB_Iterator:statePaused", self); } }; } // Set up instance if (config.id) { // Define the instance object var instance = new PB_Iterator_Paging(); if (config.settings.autoprogression === "on") { instance.autoprogression = config.settings.autoprogression; instance.delay = config.settings.progressiondelay; } instance.elemid = config.id; instance.pageconf = config.settings.pageconf; instance.numpages = config.settings.numpages; instance.controlstyle = config.settings.controlstyle; // Bind event listeners to instance. $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_iterator_firstpage").on("click", function () { instance.changePage(1); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_iterator_previouspage").on("click", function () { instance.prevPage(); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_iterator_nextpage").on("click", function () { instance.nextPage(); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_iterator_lastpage").on("click", function () { instance.changePage(instance.numpages); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_pagedirect").on("click", function () { instance.changePage($(this).attr("data-directpage")); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_pagem2").on("click", function () { instance.changePage(instance.currentpage - 2); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_pagem1").on("click", function () { instance.changePage(instance.currentpage - 1); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_pagep1").on("click", function () { instance.changePage(instance.currentpage + 1); }); $("div.nbf_pb_iterator_pagecontrols." + config.id + "_pagectrl div.nbf_pb_pagep2").on("click", function () { instance.changePage(instance.currentpage + 2); }); // On-hover javascript triggers for buttons corresponding to this iterator. $("div." + config.id + "_pagectrl.nbf_pb_iterator_pagecontrols > div").hover(function () { $img = $(this).find("img.nbf_pb_iterator_page"); $oldsrc = $img.attr("src"); $newsrc = $img.attr("data-hoversrc"); $img.attr("src", $newsrc); $img.attr("data-oldsrc", $oldsrc); instance.pause(); }, function () { $img = $(this).find("img.nbf_pb_iterator_page"); $newsrc = $img.attr("data-oldsrc"); $img.attr("src", $newsrc); instance.resume(); }); // Initialise instance instance.init(); pb_instance(config, instance); } }); pb.init.page_section_floating = (function (config) {if (config.id) { if (!config.floatparams) { config.floatparams = {}; } if (config.floatparams && config.floatparams.useboundscontainer === false) { $("body").append($("#"+config.id).detach()); } else { $("#"+config.id).parent().css({position:"relative"}); } $("#"+config.id).css({position:"absolute"}); if (typeof floatingMenu !== 'undefined') { floatingMenu.add(config.id,config.floatparams); } }}); pb.init.image = (function (config) {if (config.id) { if ($("#"+config.id).attr("data-hoversrc")) { $("#"+config.id).hover(function() { $(this).attr("src", $(this).attr("data-hoversrc")); $(this).attr("srcset", $(this).attr("data-hoversrcset")); }, function() { $(this).attr("src", $(this).attr("data-src")); $(this).attr("srcset", $(this).attr("data-srcset")); }); } if (config.settings.openfulllb) { // Bind a lightbox call to open the image url specified in a lightbox when its clicked. $(document).on("click","#"+config.id,function(){ nbf_lightbox(null,undefined,true); $(document).trigger('Pagebuilder_Image_Preload'); img = new Image(); img.src = config.settings.fullsize; img.onload = function() { nbf_updatelightbox('<img width="100%" src="'+config.settings.fullsize+'"/>'); $(document).trigger('Pagebuilder_Image_Loaded'); }; }); } } }); pb.init.page_section_linked = (function (config) {if (config.id && config.settings.cascadehover === true) { $(function () { $("#" + config.id).hover(function () { $(this).find("*").addClass("hover"); }, function () { $(this).find("*").removeClass("hover"); }); }); } }); pb.init.productsearchfilters = (function (config) {if (config.id) { $(document).trigger("PB_ProductSearch:registerComponent",["filter",$("#"+config.id)]); if (config.settings.purgeunused) { $("#"+config.id).attr("data-purge",true); } if (config.settings.showcounters) { $("#"+config.id).attr("data-showcount",true); } } }); pb.init.page_section_scroll = (function (config) {// <editor-fold defaultstate="collapsed" desc="Page section scroll instance controller javascript"> function PB_PageSectionScroll() { var elemid = ""; var isRTL = false; var direction = ""; var wraparound = false; var snapitems = false; var btn_w = 0; var btn_h = 0; var delay = 5000; var ticker = undefined; var indicators = {}; var dragstate = {}; var self = this; // TODO: add ticker for auto-progression this.init = function() { this.dragstate = {"dragging": false, "start": {}, "end": {}}; // Update buttons and initialise window.setTimeout(function(){ _updateButtons(); },500); }; this.next = function() { if (self.direction === "horizontal" || self.direction === "conthorizontal") { if (!this.isRTL) { _scrollLeft(); } else { _scrollRight(); } } else if (self.direction === "vertical" || self.direction === "contvertical") { _scrollUp(); } }; this.prev = function() { if (self.direction === "horizontal" || self.direction === "conthorizontal") { if (!this.isRTL) { _scrollRight(); } else { _scrollLeft(); } } else if (self.direction === "vertical" || self.direction === "contvertical") { _scrollDown(); } }; this.stop = function() { if (self.ticker !== undefined) { window.clearInterval(self.ticker); self.ticker = undefined; } } this.start = function() { if (self.ticker === undefined) { self.ticker = window.setInterval(function() { if (self.direction === "horizontal" || self.direction === "conthorizontal") { if (!this.isRTL) { _scrollLeft(); } else { _scrollRight(); } } else if (self.direction === "vertical" || self.direction === "contvertical") { _scrollUp(); } },self.delay); } } this.dragStart = function(position) { if (position !== undefined) { self.dragstate.dragging = true; self.dragstate.start = position; self.dragstate.end = {}; } }; this.dragStop = function(position) { if (self.dragstate.dragging && position !== undefined) { self.dragstate.end = position; // Do checks to make sure we havent dragged the content beyond its limits. if (self.direction === "horizontal") { minleft = (Math.min(0,0 - ($("#"+self.elemid+" div.nbf_tpl_pagesection_hscroll_contents").width() - $("#"+self.elemid).width()) )); maxleft = 0; if (position.left < minleft) { $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({left: minleft + "px"}, {complete: function () { _updateButtons(); }}); } else if (position.left > maxleft) { $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({left: maxleft + "px"}, {complete: function () { _updateButtons(); }}); } else if (self.snapitems === true) { _snapItems(); } else { _updateButtons(); } } else if (self.direction === "vertical") { mintop = (Math.min(0,0 - ($("#"+self.elemid+" div.nbf_tpl_pagesection_vscroll_contents").height() - $("#"+self.elemid).height()) )); maxtop = 0; if (position.top < mintop) { $("#"+self.elemid+" div.nbf_tpl_pagesection_vscroll_contents").animate({top:mintop + "px"},{complete:function() { _updateButtons()}}); } else if (position.top > maxtop) { $("#"+self.elemid+" div.nbf_tpl_pagesection_vscroll_contents").animate({top:maxtop + "px"},{complete:function() { _updateButtons()}}); } else if (self.snapitems === true) { _snapItems(); } else { _updateButtons(); } } self.dragstate.dragging = false; self.dragstate.start = {}; self.dragstate.end = {}; } }; /** * Returns the item's horizontal start offset based on the scrollcontents element. Not based on the scrollcontainer element. * This means the item offsets will be an unchanging number even during scrolling. * @param {Element} elem An item inside the nbf_tpl_pagesection_hscroll_contents element. * @returns {Number} Always a positive number. */ var _getItemOffsetStart = function(elem) { if (self.isRTL) { var scrollcontentswidth = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents,#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").width(); return Math.round(scrollcontentswidth - $(elem).position().left - $(elem).outerWidth()); } else { // LTR var itemstartoffset = $(elem).position().left; return Math.round(itemstartoffset); } } /** * Returns the item's horizontal end offset based on the scrollcontents element. Not based on the scrollcontainer element. * This means the item offsets will be an unchanging number even during scrolling. * @param {Element} elem An item inside the nbf_tpl_pagesection_hscroll_contents element. * @returns {Number} Always a positive number. */ var _getItemOffsetEnd = function(elem) { if (self.isRTL) { var scrollcontentswidth = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").width(); return Math.round(scrollcontentswidth - $(elem).position().left); } else { // LTR var itemstartoffset = $(elem).position().left; return Math.round(itemstartoffset + $(elem).outerWidth()); } } /** * Returns the scrollcontents element's current horizontal start offset. * This number will change during scrolling. * @returns {Number} Always a positive number. */ var _getScrollContentsOffsetStart = function() { if (self.isRTL) { var containerwidth = $("#" + self.elemid).width(); var scrollcontentswidth = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").width(); var scrollcontentsleftoffset = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").position().left; return Math.round((scrollcontentsleftoffset + scrollcontentswidth) - containerwidth); // positive number } else { // LTR var scrollcontentsleftoffset = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").position().left; return Math.round(scrollcontentsleftoffset * -1); // positive number } } /** * Returns the scrollcontents element's current horizontal end offset. * This number will change during scrolling. * @returns {Number} Always a positive number. */ var _getScrollContentsOffsetEnd = function() { if (self.isRTL) { var scrollcontentswidth = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").width(); var scrollcontentsleftoffset = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").position().left; return Math.round((scrollcontentsleftoffset + scrollcontentswidth)); // positive number } else { // LTR var containerwidth = $("#" + self.elemid).width(); var scrollcontentsleftoffset = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").position().left; return Math.round((scrollcontentsleftoffset * -1) + containerwidth); // positive number } } var _snapItems = function() { var elems = _previtems(); var dragdir; // use dragstate to determine the direction. if (self.direction === "horizontal") { if (self.dragstate.end.left < self.dragstate.start.left) { dragdir = "left"; } else { dragdir = "right"; } var new_left = 0; if (dragdir === "left") { $(elems).each(function(i,item) { if (($(item).position().left + $(item).width() + self.dragstate.end.left) > 0 && new_left == 0) {new_left = 0-($(item).position().left + $(item).width()); } }); } else { $(elems).each(function(i,item) { if (($(item).position().left + $(item).width() + self.dragstate.end.left) > 0 && new_left == 0) {new_left = 0-($(item).position().left); } }); } $("#"+self.elemid+" div.nbf_tpl_pagesection_hscroll_contents").animate({left:new_left + "px"},{complete:function() { _updateButtons(); } }); } else if (self.direction === "vertical") { if (self.dragstate.end.top < self.dragstate.start.top) { dragdir = "down"; } else { dragdir = "up"; } var new_top = 0; if (dragdir === "down") { $(elems).each(function(i,item) { if (($(item).position().top + $(item).height() + self.dragstate.end.top) > 0 && new_top == 0) {new_top = 0-($(item).position().top + $(item).height()); } }); } else { $(elems).each(function(i,item) { if (($(item).position().top + $(item).height() + self.dragstate.end.top) > 0 && new_top == 0) {new_top = 0-($(item).position().top); } }); } $("#"+self.elemid+" div.nbf_tpl_pagesection_vscroll_contents").animate({top:new_top + "px"},{complete:function() { _updateButtons(); } }); } _updateButtons(); }; var _updateButtons = function() { // Control the hiding of prev/next buttons when we reach the "end" of the list if (self.wraparound === false) { if (self.direction === "horizontal") { // Previous button if (_previtems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnleft").fadeIn(200); } else { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnleft").fadeOut(200); } // Next button if (_nextitems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnright").fadeIn(200); } else { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnright").fadeOut(200); } } else if (self.direction === "vertical") { if (_previtems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btntop").fadeIn(200); } else { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btntop").fadeOut(200); } if (_nextitems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btnbottom").fadeIn(200); } else { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btnbottom").fadeOut(200); } } else if (self.direction === "conthorizontal") { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnleft").fadeIn(200); if (_nextitems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_hscroll_btnright").fadeIn(200); } } else if (self.direction === "contvertical") { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btntop").fadeIn(200); if (_nextitems().length > 0) { $("#" + self.elemid + " .nbf_tpl_pagesection_vscroll_btnbottom").fadeIn(200); } } } else { // Always show buttons if (self.direction === "horizontal" || self.direction === "conthorizontal") { $("#"+self.elemid+" .nbf_tpl_pagesection_hscroll_btnleft").show(); $("#"+self.elemid+" .nbf_tpl_pagesection_hscroll_btnright").show(); } else if (self.direction === "vertical" || self.direction === "contvertical") { $("#"+self.elemid+" .nbf_tpl_pagesection_vscroll_btntop").show(); $("#"+self.elemid+" .nbf_tpl_pagesection_vscroll_btnbottom").show(); } } // Update the slide progress indicators if present if (self.direction === "horizontal") { items = $("#"+self.elemid+" div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)"); left_vis = -1*$("#"+self.elemid+" div.nbf_tpl_pagesection_hscroll_contents").position().left; right_vis = left_vis + $("#"+self.elemid).width(); $('#'+self.elemid+' div.nbf_tpl_pagesection_hscroll_indicators_content').empty(); for (i=0; i<items.length; i++) { if ($(items[i]).position().left >= left_vis && ($(items[i]).position().left + $(items[i]).width()) <= right_vis) { $('#'+self.elemid+' div.nbf_tpl_pagesection_hscroll_indicators_content').append('<div data-pos="'+i+'"><img src="'+self.indicators.active+'"/></div>'); } else { $('#'+self.elemid+' div.nbf_tpl_pagesection_hscroll_indicators_content').append('<div data-pos='+i+'><img src="'+self.indicators.inactive+'"/></div>'); } } } }; // Private methods var _previtems = function () { if (self.direction === "horizontal" || self.direction === "conthorizontal") { var scrollContentsOffsetStart = _getScrollContentsOffsetStart(); return $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)").filter(function () { var itemOffsetStart = _getItemOffsetStart(this); return itemOffsetStart < scrollContentsOffsetStart; }); } else if (self.direction === "vertical" || self.direction === "contvertical") { return $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents > *:not(script,link,meta)").filter(function () { return Math.round($(this).position().top) < Math.round((btn_h - ($("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").position().top))); }); } }; var _nextitems = function () { if (self.direction === "horizontal" || self.direction === "conthorizontal") { var scrollContentsOffsetEnd = _getScrollContentsOffsetEnd(); return $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)").filter(function () { var itemOffsetEnd = _getItemOffsetEnd(this); return itemOffsetEnd > scrollContentsOffsetEnd; }); } else if (self.direction === "vertical" || self.direction === "contvertical") { return $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents > *:not(script,link,meta)").filter(function () { return Math.round(($(this).position().top + $(this).height())) > Math.round(((btn_h - ($("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").position().top))) + $("#" + self.elemid).height()) }); } }; var _wrapLeftItem = function() { // Take the left hand side item - detatch it and add to the right. Update position of container right by its width var elems = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)"); $item = elems.first(); if (Math.round(_getItemOffsetEnd($item) - _getScrollContentsOffsetStart()) <= 0) { var newposition = Math.round(_getScrollContentsOffsetStart() - $item.outerWidth()); if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").css({ left: newposition+"px" }); $item.detach(); $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").append($item); } }; var _wrapRightItem = function() { var elems = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)"); $item = elems.last(); if (Math.round(_getScrollContentsOffsetStart()) >= 0) { var newposition = Math.round(_getScrollContentsOffsetStart() + $item.outerWidth()); if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").css({ left: newposition+"px" }); $item.detach(); $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").prepend($item); } }; var _wrapTopItem = function() { // take the first item and shove it to the bottom if its not longer visible. Shift the position of the container down by its height $item = $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents > *:not(script,link,meta)").first(); if ($item.position().top + $item.outerHeight(true) + $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").position().top <= 0) { $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").css({top:($("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").position().top + $item.outerHeight(true))}); $item.detach(); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").append($item); } }; var _wrapBottomItem = function() { // Take the last item if the top one has a top of >= 0 and put it on top, shift the position of the container up by its height. if ($("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents > *:not(script,link,meta)").first().position().top >= 0) { $item = $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents > *:not(script,link,meta)").last(); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").css({top:($("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").position().top - $item.outerHeight(true))}); $item.detach(); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").prepend($item); } }; var _scrollLeft = function () { $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").stop(true,true); // End all running animations on the content area // Check if there are any items "next" - if so slide the container along // If not, and we are in wraparound mode - go to the start var elems = _nextitems(); var containerwidth = $("#" + self.elemid).width(); if (elems.length > 0) { var newposition = Math.round(_getItemOffsetStart(elems.first()) - containerwidth + elems.first().outerWidth()); // positive number if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({ left: newposition+"px" }, function () { _updateButtons(); if (self.direction === "conthorizontal") { _wrapLeftItem(); } }); } else if (self.wraparound === true) { var elems = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)"); if (elems.length > 0) { // Same logic as _scrollRight var newposition = Math.round(_getItemOffsetStart(elems.first())); // positive number if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({ left: newposition+"px" }, _updateButtons); } } }; var _scrollRight = function () { $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").stop(true,true); // End all running animations on the content area if (self.direction === "conthorizontal") { _wrapRightItem(); } var elems = _previtems(); var containerwidth = $("#" + self.elemid).width(); if (elems.length > 0) { var newposition = Math.round(_getItemOffsetStart(elems.last())); // positive number if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({ left: newposition+"px" }, _updateButtons); } else if (self.wraparound === true) { var elems = $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents > *:not(script,link,meta)"); if (elems.length > 0) { // Same logic as _scrollLeft var newposition = Math.round(_getItemOffsetStart(elems.last()) - containerwidth + elems.last().outerWidth()); if (!self.isRTL) { newposition = (0 - newposition); // negative number } $("#" + self.elemid + " div.nbf_tpl_pagesection_hscroll_contents").animate({ left: newposition+"px" }, _updateButtons); } } }; var _scrollUp = function() { $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").stop(true,true); // End all running animations on the content area var elems = _nextitems(); if (elems.length > 0) { var new_top = Math.round(0 - elems.first().position().top + $("#" + self.elemid).height() - elems.first().height()); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").animate({top: new_top + "px"}, function () { _updateButtons(); if (self.direction === "contvertical") { _wrapTopItem(); } }); } else if (self.wraparound === true) { $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").animate({top: "0px"}, function () { _updateButtons(); }); } }; var _scrollDown = function() { $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").stop(true,true); // End all running animations on the content area if (self.direction === "contvertical") { _wrapBottomItem(); } var elems = _previtems(); if (elems.length > 0) { var new_top = Math.round(0 - elems.last().position().top); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").animate({top: new_top + "px"}, function () { _updateButtons(); }); } else if (self.wraparound === true) { var elems = _nextitems(); if (elems.length > 0) { var new_top = Math.round(0 - elems.last().position().top + $("#" + self.elemid).height() - elems.last().height()); $("#" + self.elemid + " div.nbf_tpl_pagesection_vscroll_contents").animate({top: new_top + "px"}, function () { _updateButtons(); }); } } }; } // </editor-fold> if (config.id) { // Create javascript object for control of the scrolling page section. var instance = new PB_PageSectionScroll(); // Set up config instance.elemid = config.id; instance.isRTL = ($('html').attr('dir') === 'rtl'); instance.direction = config.settings.direction; instance.wraparound = config.settings.wraparound; instance.snapitems = config.settings.snapitems; instance.indicators = {}; instance.indicators.active = config.settings.activeindicator; instance.indicators.inactive = config.settings.inactiveindicator; instance.autoprogression = config.settings.autoprogression; instance.delay = config.settings.progressiondelay; // bind events if (config.settings.direction === "horizontal" || config.settings.direction === "conthorizontal") { $("#"+config.id+" .nbf_tpl_pagesection_hscroll_btnleft").click(function() { instance.prev(); }); $("#"+config.id+" .nbf_tpl_pagesection_hscroll_btnright").click(function() { instance.next(); }); if (instance.autoprogression) { $("#"+config.id + " div.nbf_tpl_pagesection_hscroll_contents,#"+config.id+" .nbf_tpl_pagesection_hscroll_btnleft,#"+config.id+" .nbf_tpl_pagesection_hscroll_btnright").hover(function() { instance.stop(); },function() { instance.start(); }); } } if (config.settings.direction === "vertical" || config.settings.direction === "contvertical") { $("#"+config.id+" .nbf_tpl_pagesection_vscroll_btntop").click(function() { instance.prev(); }); $("#"+config.id+" .nbf_tpl_pagesection_vscroll_btnbottom").click(function() {instance.next(); }); if (instance.autoprogression) { $("#"+config.id + " div.nbf_tpl_pagesection_vscroll_contents,#"+config.id+" .nbf_tpl_pagesection_vscroll_btntop,#"+config.id+" .nbf_tpl_pagesection_vscroll_btnbottom").hover(function() { instance.stop(); },function() { instance.start(); }); } } if (config.settings.direction === "horizontal") { $("#"+config.id + " div.nbf_tpl_pagesection_hscroll_contents").draggable({axis:"x",scroll:false,start:function(event,ui) { instance.dragStart(ui.position); },stop:function(event,ui) { instance.dragStop(ui.position);} }); var firstY = null; var lastY = null; var currentY = null; var vertScroll = false; var initAdjustment = 0; $("#"+config.id + " div.nbf_tpl_pagesection_hscroll_contents").on('touchstart', function(e){ lastY = currentY = firstY = e.originalEvent.touches[0].pageY; }); $("#"+config.id + " div.nbf_tpl_pagesection_hscroll_contents").on('touchmove', function(e){ currentY = e.originalEvent.touches[0].pageY; var adjustment = lastY-currentY; // Mimic native vertical scrolling where scrolling only starts after the // cursor has moved up or down from its original position by ~30 pixels. if (vertScroll == false && Math.abs(currentY-firstY) > 30) { vertScroll = true; initAdjustment = currentY-firstY; } // only apply the adjustment if the user has met the threshold for vertical scrolling if (vertScroll == true) { window.scrollBy(0,adjustment + initAdjustment); lastY = currentY + adjustment; } }); $("#"+config.id + " div.nbf_tpl_pagesection_hscroll_contents").on('touchend', function(e){ vertScroll = false; }); } if (config.settings.direction === "vertical") { $("#"+config.id + " div.nbf_tpl_pagesection_vscroll_contents").draggable({axis:"y",scroll:false,start:function(event,ui) { instance.dragStart(ui.position); },stop:function(event,ui) { instance.dragStop(ui.position);} }); } // trigger initialisation instance.init(config.settings); if (instance.autoprogression) { instance.start(); } pb_instance(config,instance); } }); pb.init.contactform = (function (config) { if (config.id) { $(function() { const form = $(`#pb_contact_form_inner`); const inputs = $(`#${config.id} form [data-validation]`); const validationObj = new IBEvalidation({formId: form.attr("id")}); form.data("formhandler", validationObj); function clearErrorForInput(input) { const inputContainer = $(`div.contact_${input.attr("id")}`); const bigError = inputContainer.find(".bigerror"); if (bigError.length) { input.appendTo(inputContainer); bigError.remove(); } } function displayErrorForInput(input) { const inputContainer = $(`div.contact_${input.attr("id")}`); const errorMsg = input.data("validation-error"); inputContainer.find(".bigerror").remove(); inputContainer.prepend(`<div class="bigerror" id="${input.attr("id")}_error"><div class="message">${errorMsg}</div></div>`); input.appendTo(`${input.attr("id")}_error`); } inputs.each(function() { let validators = []; if ($(this).data("validators")) validators = $(this).data("validators").split(","); if (validators.length) { for (const validator of validators) { validationObj.add(`[name=${$(this).attr("name")}]`, validator, [], [$(this).data("validation-error")]); } } $(this).on("blur", (e) => { const inputContainer = $(`div.contact_${$(this).attr("id")}`); let isInputValid = true; validationObj.validate(); const formErrors = validationObj.getErrors(); for (const item of formErrors) { if (item[0].attr("id") == $(this).attr("id")) isInputValid = false; } clearErrorForInput($(this)); if (!isInputValid) displayErrorForInput($(this)); }); }); form.on("submit", (e) => { let isFormValid = validationObj.validate(); const formErrors = []; const objFormErrors = validationObj.getErrors(); for (const item of objFormErrors) { if (!formErrors.includes(item[0][0])) formErrors.push($(`#${item[0][0].getAttribute("id")}`)); } // Clear previous errors from all inputs inputs.each(function() { clearErrorForInput($(this)); }); if (!isFormValid) { for (const input of formErrors) { displayErrorForInput(input); } e.preventDefault(); } }); }); } }); pb.init.mediacarousel = (function (config) { // <editor-fold defaultstate="collapsed" desc="Media Carousel control javascript object"> function PB_MediaCarousel() { var self = this; this.currentposition = 0; this.numitems = 0; this.imgpreload = []; this.timer = undefined; this.delay = 5000; this.transition = 1000; this.type = undefined; // Common functions this.init = function () { if (self.timer) { window.clearTimeout(self.timer); } else { if (self.items !== undefined) { for (var key in self.items) { var item = self.items[key]; if (item.mainimg !== undefined) { img = new Image(); img.onload = function() { self.imgpreload.push(this);}; img.src = item.mainimg; } } self.numitems = self.items.length; } else { self.numitems = 0; } } // Switch to position 0 and start. self.changeSlide(0); self.resume(); }; this.changeSlide = function(slidenum) { $(document).trigger("PB_MediaCarousel:slideChangeRequested",self,slidenum); if (typeof(self._switchslide) === "function") { self._switchslide(slidenum); // Trigger the implementing function we've defined $(document).trigger("PB_MediaCarousel:slideChanged",self); } }; this.doVideoReplacement = function (videosrc) { videohtml = self.createVideoIframe(self.currentposition, videosrc.outerWidth(), videosrc.outerHeight()); $(document).trigger("PB_MediaCarousel:videoReplaced",self); if (videohtml.length > 0) { self.pause(); // pause slideshow while video starts } videosrc.html(videohtml); }; this.getSlide = function(slidenum) { if (self.items !== undefined) { return self.items[slidenum]; } else { return undefined; } }; this.timertick = function () { self.currentposition++; if (self.currentposition >= self.numitems) { self.currentposition = 0; } self.changeSlide(self.currentposition); $(document).trigger("PB_MediaCarousel:timerTick",self); }; this.createVideoIframe = function (slidenum, vwidth, vheight) { // Get the slide out of the configuration and check its settings slide = self.items[slidenum]; if (slide.type === "video") { // Create the html and return it if (slide.videotype === "youtube") { videohtml = '<div class="pb_mediacarousel_slidectr"><iframe src="https://www.youtube.com/embed/' + slide.videoid + '?autoplay=1&loop=0&showinfo=0&modestbranding=1"></iframe><img class="pb_mediacarousel_slide" src="'+slide.mainimg+'"/></div>'; } else if (slide.videotype === "vimeo") { videohtml = '<div class="pb_mediacarousel_slidectr"><iframe src="https://player.vimeo.com/video/' + slide.videoid + '?autoplay=1&loop=0"></iframe><img class="pb_mediacarousel_slide" src="'+slide.mainimg+'"/></div>'; } else if (slide.videotype === "html5") { videohtml = '<div class="pb_mediacarousel_slidectr"><video autoplay loop><source src="' + slide.videourl + '"></source></video><img class="pb_mediacarousel_slide" src="'+slide.mainimg+'"/></div>'; } return videohtml; } else { // This wasnt a video slide, dont return anything. return ""; } }; this.resume = function () { self.timer = window.setInterval(self.timertick, self.delay); $(document).trigger("PB_MediaCarousel:stateResumed",self); }; this.pause = function () { window.clearInterval(self.timer); $(document).trigger("PB_MediaCarousel:statePaused",self); }; this.prev = function () { self.pause(); self.currentposition--; if (self.currentposition < 0) { self.currentposition = (self.numitems - 1); } self.changeSlide(self.currentposition); self.resume(); }; this.next = function () { self.pause(); self.currentposition++; if (self.currentposition >= self.numitems) { self.currentposition = 0; } self.changeSlide(self.currentposition); self.resume(); }; } //</editor-fold> if (config.id) { // Define the instance object var instance = new PB_MediaCarousel(); instance.delay = config.settings.delay; instance.items = config.settings.items; instance.type = config.settings.type; instance.elemid = config.id; instance.transition = config.settings.transition; if ( config.settings.type === "slideshow") { // <editor-fold defaultstate="collapsed" desc="Slideshow style specific logic"> instance._switchslide = function(slidenum) { // bump the z-index of the slide we want? }; // </editor-fold> } else if ( config.settings.type === "slidingwindow") { // <editor-fold defaultstate="collapsed" desc="Sliding window style specific logic"> instance._switchslide = function(slidenum) { }; // </editor-fold> } else if ( config.settings.type === "background") { // <editor-fold defaultstate="collapsed" desc="Background style specific logic"> instance._switchslide = function(slidenum) { }; // </editor-fold> } else if ( config.settings.type === "mediaflow") { // <editor-fold defaultstate="collapsed" desc="Mediaflow style specific logic"> instance._switchslide = function(slidenum) { }; // </editor-fold> } else if (config.settings.type === "gallery") { // <editor-fold defaultstate="collapsed" desc="Gallery style specific logic"> // Initialise html for the gallery $(config.settings.items).each(function (i, item) { if (item.type === "image") { if (item.title === null) { item.title = ""; } if (item.alt === null) { item.alt = ""; } // Check alternate nav images var imgcontent; if (item.hasOwnProperty('navalternate') && Object.keys(item.navalternate).length > 0) { imgcontent = '<picture alt="'+item.alt+'" title="'+item.title+'">'; $(Object.keys(item.navalternate)).each(function(i,bw) { imgcontent += '<source media="(max-width: '+bw+'px)" srcset="'+item.navalternate[bw]+ '/?m=nbf" />'; }); // Fallback image imgcontent += '<img src="' + item.navthumb + '" alt="' + item.alt + '" title="' + item.title + '"/>'; imgcontent += '</picture>'; } else { imgcontent = '<img src="' + item.navthumb + '" alt="' + item.alt + '" title="' + item.title + '"/>'; } $("#" + config.id + " nav.nbf_pb_mediacarousel_playlist div.nbf_pb_mediacarousel_itemcontainer").append('<div class="nbf_pb_mediacarousel_gallerynav" data-pos="' + i + '">'+imgcontent+'</div>'); } else if (item.type === "video") { $("#" + config.id + " nav.nbf_pb_mediacarousel_playlist div.nbf_pb_mediacarousel_itemcontainer").append('<div class="nbf_pb_mediacarousel_gallerynav" data-pos="' + i + '"><img src="' + item.navthumb + '" /><div class="nbf_pb_mediacarousel_vthumboverlay"></div></div>'); } }); instance._recalculateSectionHeight = function() { $("#" + config.id + " section.main").height($("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_gallerymain:last-child").outerHeight()); }; // define the switch slide function implementation for gallery type instance._switchslide = function (slidenum) { instance.currentposition = slidenum; // Any slides currently there are about to go... $("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_gallerymain").addClass("pb_mediacarousel_oldslide"); var slide = instance.getSlide(slidenum); var slidehtml = ""; if (slide == undefined) { return; // There are no slides. Return without error. } if (slide.type === "image") { slidehtml = '<div class="nbf_pb_mediacarousel_gallerymain">'; // Check alternate main images var imgcontent; if (slide.hasOwnProperty('mainalternate') && Object.keys(slide.mainalternate).length > 0) { imgcontent = '<picture class="pb_mediacarousel_slide" alt="'+slide.alt+'" title="'+slide.title+'">'; $(Object.keys(slide.mainalternate)).each(function(i,bw) { imgcontent += '<source media="(max-width: '+bw+'px)" srcset="'+slide.mainalternate[bw]+ '/?m=nbf" />'; }); // Fallback image imgcontent += '<img class="pb_mediacarousel_slide" src="' + slide.mainimg + '" alt="' + slide.alt + '" title="' + slide.title + '"/>'; imgcontent += '</picture>'; } else { imgcontent = '<img class="pb_mediacarousel_slide" src="' + slide.mainimg + '" alt="' + slide.alt + '" title="' + slide.title + '"/>'; } if (slide.href !== null && config.settings.suppresslinks !== true) { slidehtml += '<a href="' + slide.href + '">'+imgcontent+'</a>'; } else { slidehtml += imgcontent; } slidehtml += '</div>'; } if (slide.type === "video") { slidehtml = '<div class="nbf_pb_mediacarousel_gallerymain nbf_pb_mediacarousel_video"><img class="pb_mediacarousel_slide" src="' + slide.mainimg + '"/>'; if (config.settings.usevideooverlay) { slidehtml += '<div class="pb_mediacarousel_slideoverlay"></div>'; } slidehtml += '</div>'; } $("#" + config.id + " section.nbf_pb_mediacarousel_main").append(slidehtml,instance._recalculateSectionHeight()); // Update the overlay text if its set, content to null if empty if (config.settings.showtextoverlay === true) { if (slide.title) { $("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_overlay").text(slide.title); $("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_overlay").show(); } else { $("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_overlay").hide(); } } // Start the fade out of the old slide $("#" + config.id + " section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_gallerymain.pb_mediacarousel_oldslide").fadeOut(instance.transition, function () { $(this).remove(); }); if (config.settings.nocyclethumbs !== true) { // get all of the items "before" and append them to the end, in order. $("#" + config.id + " nav.nbf_pb_mediacarousel_playlist div.nbf_pb_mediacarousel_gallerynav").each(function(i,item) { if (parseInt($(item).attr("data-pos"),10) !== slidenum) { // Slide this one off, and put it onto the end $(item).appendTo("#" + config.id + " nav.nbf_pb_mediacarousel_playlist div.nbf_pb_mediacarousel_itemcontainer"); } else if (parseInt($(item).attr("data-pos"),10) === slidenum) { return false; // Stop doing them now, we've reached our own one } }); } }; // if controls are enabled, work out the widths of the images - and set the widths for the buttons accordingly if (config.settings.usenavctrl === true) { leftimg = new Image(); leftimg.onload = function() { // Set width of left button; $("#" + config.id + " div.nbf_pb_mediacarousel_navleft").css({width:(this.width+10)+"px"}); } leftimg.src = config.settings.previmg; rightimg = new Image(); rightimg.onload = function() { // Set width of left button; $("#" + config.id + " div.nbf_pb_mediacarousel_navright").css({width:(this.width+10)+"px"}); } rightimg.src = config.settings.nextimg; $(document).on("click","#" + config.id + " div.nbf_pb_mediacarousel_navleft",function() { instance.prev(); }); $(document).on("click","#" + config.id + " div.nbf_pb_mediacarousel_navright",function() { instance.next(); }); } if (config.settings.pauseonhover === true) { $(document).on("mouseenter","#"+config.id+" section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_gallerymain img",function() { instance.pause(); }); $(document).on("mouseleave","#"+config.id+" section.nbf_pb_mediacarousel_main div.nbf_pb_mediacarousel_gallerymain img",function() { instance.resume(); }); } $(window).resize(function() { instance._recalculateSectionHeight(); }); // bind the event handlers for controls to functions in this instance object. $(document).on("click","#" + config.id + " div.nbf_pb_mediacarousel_gallerymain.nbf_pb_mediacarousel_video",function() { instance.doVideoReplacement($(this)); }); // Direct click on a slide - switch to that slide. If its a video - autostart $(document).on("click","#" + config.id + " div.nbf_pb_mediacarousel_gallerynav",function() { instance.pause(); instance.currentposition = $(this).attr("data-pos"); instance.changeSlide(instance.currentposition); if (instance.items[instance.currentposition].type === "video") { vslide = $("#" + config.id + " div.nbf_pb_mediacarousel_gallerymain.nbf_pb_mediacarousel_video:not(.pb_mediacarousel_oldslide)"); instance.doVideoReplacement(vslide); } else { instance.resume(); } }); // </editor-fold> } instance.init(); pb_instance(config,instance); } }); pb.init.list = (function (config) {if (config.id) { $("#"+config.id).accordion(config.settings); }}); </script><!-- START-IBE-EUCOOKIE --><script type="text/javascript"> function removeeu() { var t = new Date(); var e = new Date(); e.setFullYear(t.getFullYear()+10); document.cookie = "wt=f;expires="+e.toGMTString()+";domain=radiotimes.com;path=/;secure"; $('#cookieLaw').hide(); const moduleTypesEnabled = Boolean(0); const trackingAccepted = new Event("trackingAccepted"); document.dispatchEvent(trackingAccepted); } function declineeu() { var t = new Date(); var e = new Date(); e.setFullYear(t.getFullYear()+10); document.cookie = "wt=d;expires="+e.toGMTString()+";domain=radiotimes.com;path=/;secure"; $('#cookieLaw').hide(); } $(function() { $("body").append("<div id=\"cookieLaw\">We use cookies to improve your experience of our website. <a href=\"http:\/\/www.immediate.co.uk\/cookies-policy\/\" class=\"cookie-link\" target=\"_blank\">Read more.<\/a> <a onclick=\"this.parentNode.parentNode.removeChild(this.parentNode);return false;\" href=\"javascript:void(0);\" class=\"cookie-close\">Got It<\/a><\/div>"); if ($("#euCookieLawDeclineButton").length) { $("#euCookieLawDeclineButton").click(function(e) {e.stopImmediatePropagation();}) } if ($(".cookielaw-typeselection-container").length) { $(".cookielaw-typeselection-container").click((e) => e.stopImmediatePropagation()); } if ($("#cookielaw-preferences-link").length) { $("#cookielaw-preferences-link").click((e) => e.stopImmediatePropagation()); } let clickAnywhere = true; const cookieBannerItems = $("#cookieLaw").find("button"); cookieBannerItems.each((i, elem) => { if (elem.id && $(`#${elem.id}`).attr("onclick") == "removeeu();") clickAnywhere = false; }); if (clickAnywhere) { $("#cookieLaw").css("cursor", "pointer").attr("onclick", "removeeu();"); } }); if (localStorage.getItem("moduleTypesEnabled") == "false") localStorage.removeItem("moduleTypesEnabled");</script><!-- END-IBE-EUCOOKIE --></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10