1 2<!DOCTYPE html> 3 <html lang="en-au"> 4 <head id="ctl00_ctl00_ctl00_Head1"><title> 5 Flights and accommodation | Pathology Update 2027 6</title><meta charset="utf-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" /> 7 <meta name="generator" content="elcomCMS - http://elcomCMS.com" /> 8 9 <meta property="og:type" content="article" /> 10 11 <meta property="og:url" content="https://www.pathologyupdate.com/travel/flights-and-accommodation" /> 12 13 <meta property="og:description" content="How to get to Åtautahi Christchurch and where to stay. Options for every attendee. " /> 14 15 <meta property="og:title" content="Flights and accommodation" /> 16 17 <link rel="canonical" href="https://www.pathologyupdate.com/flights-and-accommodation" /> 18<link href="/images/UserUploadedImages/351/favicon-16x16.png" type="image/x-icon" rel="icon" /><link href="/include/css/jquery-ui-1.13.2.min.css?_zv=202608131002" type="text/css" rel="stylesheet" media="all" /> 19<link rel="preconnect" href="https://fonts.googleapis.com" /><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="" /><link href="https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Tinos:ital,wght@0,400;0,700;1,400;1,700&display=swap" rel="stylesheet" /><link href="/ecthemes/13/css/fontawesome-bundle?_zv=202608131002" type="text/css" rel="stylesheet" media="screen,print,pdf" /><link href="/ecthemes/13/css/theme-bundle?_zv=202608131002" type="text/css" rel="stylesheet" media="screen,print,pdf" /><link href="/ecthemes/13/css/print.min.css?_zv=202608131002" type="text/css" rel="stylesheet" media="print,pdf" /><link type="text/css" rel="stylesheet" href="/ecthemes/13/css/editor-styles.css?_zv=202608131002" />
19<script src="/include/js/jquery-3.7.1.min.js?_zv=202608131002" type="text/javascript" ></script>
vendor: 2 bytes, line 19
19
20<script src="/include/js/errors.min.js?_zv=202608131002" type="text/javascript" ></script>
vendor: 2 bytes, line 20
20
21<script src="/include/js/validation.min.js?_zv=202608131002" type="text/javascript" ></script>
vendor: 2 bytes, line 21
21
22<script src="/include/js/common.min.js?_zv=202608131002" type="text/javascript" ></script>
vendor: 2 bytes, line 22
22
23<script src="/include/js/jquery-ui-1.13.2.min.js?_zv=202608131002" type="text/javascript" ></script>
23 24 25
25<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
25 26 27<!-- Google Tag Manager script --> 28
28<script></script>
28 29<!-- End Google Tag Manager script --> 30 <link href="/Telerik.Web.UI.WebResource.axd?d=68aPNzx5JNEZh0WzwbvZJsbq_J5PdiIA9k88JDuEW1IppOAYTiP_z1flNHfaGF_aKHd1zbKknWUsAQMGFK9sYEuERTob2sfWHLqgaqiYOTOvrCNdkGnE-vNIOg-aGtWL4PyRpXuFo6SvBZlrZo95PQ2&t=638628567619626917&compress=1&_TSM_CombinedScripts_=%3b%3bCMDotNet%3aen-AU%3a5ebbd9f4-a9f1-4478-95a3-558d876e252d%3a683d5954%3a741a6ad1%3bCMDotNet.Skins%3aen-AU%3ada722f09-a0fd-444a-8486-be280e74bf5e%3a301aceb2%3bCMDotNet%3aen-AU%3a5ebbd9f4-a9f1-4478-95a3-558d876e252d%3a842a83f0%3bCMDotNet.Skins%3aen-AU%3ada722f09-a0fd-444a-8486-be280e74bf5e%3ab5dc755c" type="text/css" rel="stylesheet" /></head> 31 <body class=''> 32<!-- Google Tag Manager noscript --> 33 <noscript></noscript> 34<!-- End Google Tag Manager noscript --> 35 <form method="post" action="./flights-and-accommodation" id="aspnetForm"> 36<div class="aspNetHidden"> 37<input type="hidden" name="returnurlforpage" id="returnurlforpage" value="/flights-and-accommodation" /> 38<input type="hidden" name="ctl00_ctl00_ctl00_ctl12_TSSM" id="ctl00_ctl00_ctl00_ctl12_TSSM" value="" /> 39<input type="hidden" name="ctl00_ctl00_ctl00_rsm_TSM" id="ctl00_ctl00_ctl00_rsm_TSM" value="" /> 40<input type="hidden" name="__EVENTTARGET" id="__EVENTTARGET" value="" /> 41<input type="hidden" name="__EVENTARGUMENT" id="__EVENTARGUMENT" value="" /> 42<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUENTM4MQ8WBB4PX19BbnRpWHNyZlRva2VuBSAyMTdjMzE2NWY1Yjg0ODNiOWY1ODgyZTg1MWYwYWQ4YR4SX19BbnRpWHNyZlVzZXJOYW1lZRYCZg9kFgJmD2QWAmYPZBYCAgUPZBYCAgwPZBYCAgEPZBYEAgMPZBYKZg9kFgJmD2QWAgIBD2QWAgIFDxBkZBYAZAICD2QWAmYPZBYCAgEPZBYCAgUPEGRkFgBkAgMPZBYCZg9kFgICAQ9kFgICBQ8QZGQWAGQCBQ9kFgJmD2QWAgIBD2QWAgIFDxBkZBYAZAIGD2QWAmYPZBYCAgEPZBYCAgUPEGRkFgBkAgUPZBYCZg9kFgJmD2QWAgIBD2QWAgIFDxBkZBYAZBgWBSdjdGwwMCRjdGwwMCRjdGwwMCRjdGwyNyREaXNwbGF5TW9kZVZpZXcPD2RmZAUiY3RsMDAkY3RsMDAkY3RsMDAkY3RsMTUkTXVsdGlWaWV3MQ8PZGZkBV1jdGwwMCRjdGwwMCRjdGwwMCRuZXN0ZWRBcmVhVHdvJGNvbnRlbnRBcmVhWm9uZSRDb250ZW50UGxhY2VIb2xkZXJNYWluTm9BamF4JGN0bDAwJE11bHRpVmlldzEPD2RmZAUiY3RsMDAkY3RsMDAkY3RsMDAkY3RsMTckTXVsdGlWaWV3MQ8PZGZkBWdjdGwwMCRjdGwwMCRjdGwwMCRuZXN0ZWRBcmVhVHdvJGNvbnRlbnRBcmVhWm9uZSRDb250ZW50UGxhY2VIb2xkZXJNYWluTm9BamF4JGN0bDA2JGd2RGVmaW5lZENvbnRlbnREYXRhDzwrAAwCBhUBAklECAL/////D2QFZ2N0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJENvbnRlbnRQbGFjZUhvbGRlck1haW5Ob0FqYXgkY3RsMDMkZ3ZEZWZpbmVkQ29udGVudERhdGEPPCsADAIGFQECSUQIAv////8PZAVdY3RsMDAkY3RsMDAkY3RsMDAkbmVzdGVkQXJlYVR3byRjb250ZW50QXJlYVpvbmUkQ29udGVudFBsYWNlSG9sZGVyTWFpbk5vQWpheCRjdGwwNCRNdWx0aVZpZXcxDw9kZmQFXWN0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJENvbnRlbnRQbGFjZUhvbGRlck1haW5Ob0FqYXgkY3RsMDEkTXVsdGlWaWV3MQ8PZGZkBWdjdGwwMCRjdGwwMCRjdGwwMCRuZXN0ZWRBcmVhVHdvJGNvbnRlbnRBcmVhWm9uZSRDb250ZW50UGxhY2VIb2xkZXJNYWluTm9BamF4JGN0bDAyJGd2RGVmaW5lZENvbnRlbnREYXRhDzwrAAwCBhUBAklECAL/////D2QFW2N0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJHpvbmVIZWFkaW5nUmlnaHQkY3RsMDAkZ3ZEZWZpbmVkQ29udGVudERhdGEPPCsADAIGFQECSUQIAv////8PZAVEY3RsMDAkY3RsMDAkY3RsMDAkY3RsMjckQWNrbm93bGVkZ2VHcm91cHMkc2VsR3JvdXBTZWxlY3RvciRjYm9Hcm91cHMPFCsAAmVlZAUiY3RsMDAkY3RsMDAkY3RsMDAkY3RsMjUkTXVsdGlWaWV3MQ8PZGZkBSJjdGwwMCRjdGwwMCRjdGwwMCRjdGwyMyRNdWx0aVZpZXcxDw9kZmQFZ2N0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJENvbnRlbnRQbGFjZUhvbGRlck1haW5Ob0FqYXgkY3RsMDUkZ3ZEZWZpbmVkQ29udGVudERhdGEPPCsADAIGFQECSUQIAv////8PZAVdY3RsMDAkY3RsMDAkY3RsMDAkbmVzdGVkQXJlYVR3byRjb250ZW50QXJlYVpvbmUkQ29udGVudFBsYWNlSG9sZGVyTWFpbk5vQWpheCRjdGwwNiRNdWx0aVZpZXcxDw9kZmQFXWN0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJENvbnRlbnRQbGFjZUhvbGRlck1haW5Ob0FqYXgkY3RsMDIkTXVsdGlWaWV3MQ8PZGZkBVFjdGwwMCRjdGwwMCRjdGwwMCRuZXN0ZWRBcmVhVHdvJGNvbnRlbnRBcmVhWm9uZSR6b25lSGVhZGluZ1JpZ2h0JGN0bDAwJE11bHRpVmlldzEPD2RmZAUiY3RsMDAkY3RsMDAkY3RsMDAkY3RsMTkkTXVsdGlWaWV3MQ8PZGZkBSJjdGwwMCRjdGwwMCRjdGwwMCRjdGwyMSRNdWx0aVZpZXcxDw9kZmQFXWN0bDAwJGN0bDAwJGN0bDAwJG5lc3RlZEFyZWFUd28kY29udGVudEFyZWFab25lJENvbnRlbnRQbGFjZUhvbGRlck1haW5Ob0FqYXgkY3RsMDUkTXVsdGlWaWV3MQ8PZGZkBV1jdGwwMCRjdGwwMCRjdGwwMCRuZXN0ZWRBcmVhVHdvJGNvbnRlbnRBcmVhWm9uZSRDb250ZW50UGxhY2VIb2xkZXJNYWluTm9BamF4JGN0bDAzJE11bHRpVmlldzEPD2RmZAVnY3RsMDAkY3RsMDAkY3RsMDAkbmVzdGVkQXJlYVR3byRjb250ZW50QXJlYVpvbmUkQ29udGVudFBsYWNlSG9sZGVyTWFpbk5vQWpheCRjdGwwMCRndkRlZmluZWRDb250ZW50RGF0YQ88KwAMAgYVAQJJRAgC////
42/w9k/YCwPTmDvH8U5qGb3jXs47T4N6i0IqFpUTPd4euvr8Y=" /> 43</div> 44
45<script type="text/javascript"> 46//<![CDATA[ 47var theForm = document.forms['aspnetForm']; 48if (!theForm) { 49 theForm = document.aspnetForm; 50} 51function __doPostBack(eventTarget, eventArgument) { 52 if (!theForm.onsubmit || (theForm.onsubmit() != false)) { 53 theForm.__EVENTTARGET.value = eventTarget; 54 theForm.__EVENTARGUMENT.value = eventArgument; 55 theForm.submit(); 56 } 57} 58//]]> 59</script>
59 60 61
62<script src="/WebResource.axd?d=8NRj6pVjERQoQAsy68p8SuG53pSvtyhNANsx8sALzSjNEczyZw6jlXORaTNNFX_czEuA3Ye-V0p4_BcwRxc9hQl62NuhugaNnWk-jopH7xg1&t=638628567619783110" type="text/javascript"></script>
62 63 64
65<script src="/Telerik.Web.UI.WebResource.axd?_TSM_HiddenField_=ctl00_ctl00_ctl00_rsm_TSM&compress=1&_TSM_CombinedScripts_=%3b%3bSystem.Web.Extensions%2c+Version%3d4.0.0.0%2c+Culture%3dneutral%2c+PublicKeyToken%3d31bf3856ad364e35%3aen-AU%3a95047a2c-8908-49e3-b68e-d249be89f134%3aea597d4b%3ab25378d2%3bCMDotNet%3aen-AU%3a5ebbd9f4-a9f1-4478-95a3-558d876e252d%3a3e4267ce" type="text/javascript"></script>
65 66<div class="aspNetHidden"> 67 68 <input type="hidden" name="__VIEWSTATEGENERATOR" id="__VIEWSTATEGENERATOR" value="541A68AF" /> 69 <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEdAAOY45pc38q1DXLdBqtTMM5SxjlYSiM50S2FvdYGjA3UVEqKcZGyvmuPvv6Z6//whLUnkXnj2i/GQezH+kwiyvMN3WFaiMUw6eD80wEO753Dbg==" /> 70</div> 71 72 73 74 75 <header id="header" role="banner"> 76 <div class="container padding-top"> 77 <nav id="main-nav" class="navbar justify-content-between justify-content-lg-start align-items-stretch no-padding" role="navigation" aria-label="Site main navigation"> 78 <a href="#page-content" class="skip-link sr-only sr-only-focusable d-print-none">Skip to main content</a> 79 <div id="header-icon" class="navbar-header order-2 order-xl-1"> 80 <a class="navbar-brand" href="/" title="Back to homepage"><span class="sr-only">Navigate to home page</span><img src="/images/UserUploadedImages/351/RCPA-Pathology-Update-2027-logo.svg" alt="Logo for Pathology Update 2027" class="d-none d-print-block"></a> 81 <p class="d-none d-md-block text-white large no-margin-bottom"> 82 83 84 Reimagining the future of pathology | 5 to 7 March 2027 85 86 87 </div> 88 <div id="header-nav" class="navbar-expand-xl d-block d-xl-flex order-1 order-xl-2 flex-xl-fill align-items-xl-stretch d-print-none justify-content-end"> 89 <button type="button" class="btn-section navbar-toggler d-block bg-shade d-xl-none border-circle collapsed" data-toggle="collapse" data-target="#site-nav" aria-pressed="false" aria-controls="site-nav" aria-expanded="false"> 90 <span class="icon icon-right icon-only icon-small icon-menu smallest">Site nav</span> 91 </button> 92 <div id="site-nav" class="navbar-collapse align-items-xl-start collapse flex-grow-0" aria-hidden="false"> 93 <ul class="hmenu menu40"> 94 <li class="iFOL579 first"><a href="/submissions"><span>Submissions</span></a> 95 </li> 96 <li class="iFOL609 selected"><a href="/flights-and-accommodation"><span>Travel</span></a> 97 </li> 98 <li class="iFOL608"><a href="/grants"><span>Grants</span></a> 99 </li> 100 <li class="iFOL346"><a href="/speakers"><span>Speakers</span></a> 101 </li> 102 <li class="iFOL345"><a href="/program"><span>Program</span></a> 103 </li> 104 <li class="iFOL582"><a href="/registration"><span>Registration</span></a> 105 </li> 106 <li class="iFOL349"><a href="/partners-and-exhibitors"><span>Partners</span></a> 107 </li> 108 <li class="iFOL350 last"><a href="/contact"><span>Contact</span></a> 109 </li> 110 111</ul> 112 113 </div> 114 <div class="header-top-cta"></div> 115 </div> 116 </nav> 117 </div> 118 </header> 119 <main id="page-content" role="main"> 120 121<div id="general"> 122<section class="content-area container padding-bottom-mid"> 123 <div class="row no-margin"> 124 125<div class="w-100 heading col-12 col-md-12 order-1 no-padding" > 126 <h1>Flights and accommodation</h1> 127</div> 128<article class="col-12 order-3"> 129 130 131 132 133<div class="col-12 bg-light border-rad padding-all-full arrow-right margin-bottom-mid"> 134 <h2 class="smaller"></h2> 135<p><h3>Coming from out of town? </h3> 136<p>The RCPA is pleased to offer a range of flight and accommodation options through our partner Spencer Groups & Travel to make it easy to get to Christchurch and enjoy Pathology Update 2027.</p> 137<p><strong>Accommodation</strong> bookings can be made when you register for the conference, with rates and availability for attendees displayed during the registration process. </p> 138<p><strong>Flights </strong>can also be included as part of registering for the conference. Prefer to book flights separately? A special discount code is available for attendees on eligible flights. See below for further information.</p> 139<p> 140<a href="#https://rcpa.eventsair.com/pathology-update-2027/registration-attendee/Site/Register" class="btn btn-primary btn-external">Go straight to registration</a> 141</p> 142<p> 143</p></p> 144<a class="link-cover" href=""><span class="sr-only">View more on </span></a> 145</div> 146 147 148 149 150 151 152 153 <h3 style="line-height: 48px;">Accommodation</h3> 154 155 156 157 <div class="bg-section padding-all-full border-rad margin-bottom-mid"> 158<div class="row"> 159 160<div class="col-12 col-md-12 col-lg-6 padding-right-mid"> 161<p><iframe src="https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d2892.700553157923!2d172.63313997621395!3d-43.52943678178978!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x6d318a3b667af795%3A0xb8926bce7a0ae078!2sTe%20Pae%20Christchurch%20Convention%20Centre!5e0!3m2!1sen!2sau!4v1787709267638!5m2!1sen!2sau" width="800" height="600" style="border:0;
161" allowfullscreen="" loading="lazy" referrerpolicy="strict-origin-when-cross-origin"></iframe></p> 162</div> 163<div class="col-12 col-md-6 col-lg-3 padding-right-mid text-primary"> 164<p></p> 165</div> 166<div class="col-12 col-md-6 col-lg-3 padding-right-mid text-primary"> 167<p><h6>All options are within 2 to 11 minutes' walk of the conference venue, Te Pae Christchurch Convention Centre.</h6> 168<h6>Explore the accommodation listings below, and then head over to the registration page to complete your booking.</h6></p> 169</div> 170 171 172 173</div> 174</div> 175 176 177 178 179 180 181 182<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Crowne Plaza Christchurch "> 183 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 184 <h5>Crowne Plaza Christchurch </h5> 185<p>Approximately 2 minutes' walk to Te Pae </p> 186<p>A premium central-city hotel opposite Victoria Square, offering modern rooms, high-speed Wi-Fi, in-room charging facilities and onsite dining at Market Place Restaurant & Bar and 1851 Social Bar & Lounge.</p> 187<p> 188<a href="https://www.ihg.com/crowneplaza/hotels/us/en/christchurch/chccs/hoteldetail" class="btn btn-secondary btn-external" target="_blank">Crowne Plaza</a> 189</p> 190 </div> 191 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 192 <img src="/Images/UserUploadedImages/610/Christchurch Crowne Plaza.png" alt="" class="object-fit-cover"> 193 </div> 194</div> 195<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Novotel Christchurch Cathedral Square "> 196 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 197 <h5>Novotel Christchurch Cathedral Square </h5> 198<p>Approximately 4 minutes' walk to Te Pae </p> 199<p>A contemporary hotel in Cathedral Square with modern rooms, a fitness centre and onsite dining. Its central location provides easy access to Te Pae and the surrounding CBD. </p> 200<p> 201<a href="https://all.accor.com/hotel/6592/index.en.shtml" class="btn btn-secondary btn-external" target="_blank">Novotel</a> 202</p> 203<div></div> 204 </div> 205 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 206 <img src="/Images/UserUploadedImages/610/Novotel Christchurch.png" alt="" class="object-fit-cover"> 207 </div> 208</div> 209<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Fable Christchurch"> 210 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 211 <h5>Fable Christchurch</h5> 212<p> Approximately 5 minutes' walk to Te Pae </p> 213<p>A boutique central Christchurch hotel close to New Regent Street, dining, entertainment and major city attractions, combining contemporary accommodation with convenient access to the conference venue. </p> 214<p> 215<a href="https://www.fablehotelsandresorts.com/hotels/fable-christchurch" class="btn btn-secondary btn-external">Fable Christchurch</a> 216</p> 217<div></div> 218 </div> 219 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 220 <img src="/Images/UserUploadedImages/610/Fable Christchurch.png" alt="" class="object-fit-cover"> 221 </div> 222</div> 223<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Quest on Kilmore"> 224 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 225 <h5>Quest on Kilmore </h5> 226<p>Approximately 6 minutes' walk to Te Pae </p> 227<p>Apartment-style accommodation opposite Christchurch Town Hall, with kitchen and laundry facilities, high-speed internet and work space. A practical option for delegates planning a longer stay.</p> 228<p> 229<a href="https://www.questapartments.co.nz/properties/south-island/christchurch/quest-on-kilmore" class="btn btn-secondary btn-external" target="_blank">Quest on Kilmore</a> 230</p> 231 </div> 232 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 233 <img src="/Images/UserUploadedImages/610/Quest on Kilmore.png" alt="" class="object-fit-cover"> 234 </div> 235</div> 236<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Wyndham Garden Christchurch "> 237 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 238 <h5>Wyndham Garden Christchurch </h5> 239<p>Approximately 6 minutes' walk to Te Pae </p> 240<p>A modern central-city property offering hotel and apartment-style rooms, including self
240-contained options, with an onsite licensed cafe and convenient access to Te Pae and Christchurch Town Hall. </p> 241<div><strong> 242<a href="https://www.wyndhamhotels.com/wyndham-garden/christchurch-new-zealand/wyndham-garden-christchurch-kilmore-street/overview" class="btn btn-secondary btn-external">Wyndham Garden</a> 243</strong></div> 244 </div> 245 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 246 <img src="/Images/UserUploadedImages/610/Wyndham Garden Christchurch.png" alt="" class="object-fit-cover"> 247 </div> 248</div> 249<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="ibis Christchurch"> 250 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 251 <h5>ibis Christchurch </h5> 252<p>Approximately 7 minutes' walk to Te Pae <br> 253<br> 254A centrally located hotel close to Cathedral Square, Riverside Market and The Terrace hospitality precinct, providing a convenient base for both conference attendance and exploring the city. </p> 255<p> 256<a href="https://all.accor.com/hotel/5983/index.en.shtml" class="btn btn-secondary btn-external" target="_blank">ibis Christchurch</a> 257</p> 258 </div> 259 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 260 <img src="/Images/UserUploadedImages/610/Ibis Christchurch.png" alt="" class="object-fit-cover"> 261 </div> 262</div> 263<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Rydges Latimer Christchurch "> 264 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 265 <h5>Rydges Latimer Christchurch </h5> 266<p>Approximately 11 minutes' walk to Te Pae </p> 267<p>Overlooking Latimer Square, Rydges offers comfortable contemporary accommodation within walking distance of the convention centre and central Christchurch. </p> 268<p> 269<a href="https://www.rydges.com/accommodation/new-zealand/latimer-christchurch/" class="btn btn-secondary btn-external">Rydges Latimer</a> 270</p> 271 </div> 272 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 273 <img src="/Images/UserUploadedImages/610/Rydges Latimer Christchurch.png" alt="" class="object-fit-cover"> 274 </div> 275</div> 276<div class="row border-rad bg-tertiary no-margin-left no-margin-right margin-bottom" title="Sudima Christchurch City "> 277 <div class="col-12 col-md-6 text-white padding-all-full margin-bottom"> 278 <h5>Sudima Christchurch City</h5> 279<p> Approximately 11 minutes' walk to Te Pae </p> 280<p>A five-star boutique hotel in the Victoria precinct, with stylish rooms, selected kitchenette facilities, an onsite restaurant and bar, and a day spa. </p> 281<p> 282<a href="https://www.sudimahotels.com/en/hotels/christchurch-city/" class="btn btn-secondary btn-external" target="_blank">Sudima Christchurch</a> 283</p> 284<div></div> 285 </div> 286 <div class="col-12 col-md-6 bg-light border-rad overflow-hidden no-padding"> 287 <img src="/Images/UserUploadedImages/610/Sudima Hotel Christchurch.png" alt="" class="object-fit-cover"> 288 </div> 289</div> 290 291 292 293 294 295 296 297 <h2>Flights</h2> 298 299 300 301 <div class="bg-section padding-all-full border-rad margin-bottom-mid"> 302<div class="row"> 303 304<div class="col-12 col-md-12 col-lg-6 padding-right-mid"> 305<p><h6><span style="font-size: medium;">There are a range of flight options from Australia to Christchurch, including direct flights from some cities. </span></h6> 306<p><span style="font-weight: 400; font-size: medium; font-family: Inter, "Helvetica Neue", helvetica, arial, sans-serif; color: rgb(0, 0, 0);">When registering for conference, you may select your flight time preferences, and our travel partner Spencer Groups & Travel will contact you to arrange your flights. </span></p> 307<p><span style="font-weight: 400; font-size: medium; font-family: Inter, "Helvetica Neue", helvetica, arial, sans-serif; color: rgb(0, 0, 0);">If booking your own flights, Air New Zealand is offering Pathology Update delegates discounts on eligible flights. </span><span style="font-size: medium;">Over the booking period from 1 September 2026 to 20 February 2027, delegates will be able to access fares with a discount of up to 15%. The proposed travel period is 1 to 12 March 2027 for return travel from Australia to Christchurch.</span></p> 308<p><span style="font-weight: 400; font-size: medium; font-family: Inter, "Helvetica Neue", helvetica, arial, sans-serif; color: rgb(0, 0, 0);"> 309<a href="https://www.airnewzealand.com.au/rcpa-pathology-update-2027" class="btn btn-primary btn-external">Air New Zealand offer</a> 310</span></p> 311<p><span style="font-weight: 400; font-size: 16px; color: rgb(0, 0, 0);"> 312<a href="#https://rcpa.eventsair.com/pathology-update-2027/registration-attendee/Site/Register" class="btn btn-secondary btn-external">Go to registration</a> 313</span></p></p> 314</div> 315<div class="col-12 col-md-6 col-lg-3 padding-right-mid text-primary"> 316<p><h5>Direct flights </h5> 317<p>Sydney --> Christchurch<br> 318Melbourne --> Christchurch<br> 319Cairns --> Christchurch<br> 320Gold Coast --> Christchurch<br> 321Brisbane --> Christchurch<br> 322Perth --> Christchurch</p> 323<h5>With stopovers </h5> 324<p>Adelaide <br> 325Hobart <br> 326Darwin <br> 327Canberra </p></p> 328</div> 329<div class="col-12 col-md-6 col-lg-3 padding-right-mid text-primary"> 330<p><h5>Once you get there </h5> 331<p>Once you get there, Christchurch Airport is well serviced with transport options, making it easy to get to your accommodation and start exploring the city. </p> 332<p> 333<a href="https://www.christchurchnz.com/visit/plan-your-visit/getting-here" class="btn btn-primary btn-external">Getting to and around Christchurch</a> 334</p></p> 335</div> 336 337 338 339</div> 340</div> 341 342 343 344 345 346 347 348<div class="col-12 bg-secondary text-white border-rad padding-all-full arrow-right margin-bottom-mid"> 349 <h2 class="smaller"></h2> 350<p><h3>Booking with the RCPA's travel partner</h3> 351<h5 style="line-height: 48px;">Accommodation payment and cancellation</h5> 352<p>A valid credit card must be provided as a guarantee when requesting accommodation. Spencer Groups & Travel will issue an accommodation invoice in January 2027 (approximately 3
3520 days prior your arrival). By providing your card details as a guarantee, you authorise Spencer Groups & Travel to process full payment for your accommodation upon receiving the invoice.</p> 353<p>Please ensure the nominated card remains valid through February 2027. Reservations that have not been paid in full by the required payment deadline may be cancelled.</p> 354<h6>Cancellation policy</h6> 355<ul> 356 <li>Within 30 days prior to arrival: 100% of all accommodation nights booked will be charged.</li> 357 <li>No-show: 100% of the confirmed accommodation booking will be charged.</li> 358 <li>Early check-out: no refund will be provided for unused accommodation nights.</li> 359</ul> 360<p>Travel insurance is strongly recommended to protect against cancellation or other unforeseen circumstances.</p> 361<h6>Travel assistance</h6> 362<p>Delegates will be able to indicate during registration whether they are interested in booking travel and accommodation through Spencer Groups & Travel. Where group flight options are made available, details will be provided through the registration process.</p></p> 363<a class="link-cover" href=""><span class="sr-only">View more on </span></a> 364</div> 365 366 367 368 369 370 371</article> 372<div class="col-12 col-md-4 order-2"> 373 374 375 376 377 378</div> 379 380 381 </div> 382</section> 383</div> 384 385 </main> 386 <footer id="footer" class="d-print-none padding-all container" role="contentinfo"> 387 <h2 class="sr-only">Site Information</h2> 388 <nav id="footer-links" aria-label="Site navigation in footer"> 389 <div class="container"> 390 <div class="row border-rad bg-tertiary"> 391 <div class="col-12 col-md-6 text-white padding-all-full d-flex margin-bottom"> 392 <div class="row col-12 no-padding"> 393 <div class="col-12 col-lg-6"> 394 <a class="navbar-brand" href="/"> 395 396 <img src="/ecthemes/13/images/rcpa-logo_Inverse.png" alt="RCPA logo"> 397 398</a> 399 400 401 <ul class="no-list social d-flex"> 402 <li><a class="icon icon-small icon-only icon-light icon-facebook" href="https://www.facebook.com/TheRoyalCollegeOfPathologistsOfAustralasia" target="_blank">Connect with us on Facebook</a></li> 403 <li><a class="icon icon-small icon-only icon-light icon-twitter" href="https://twitter.com/PathologyRCPA" target="_blank">Connect with us on Twitter</a></li> 404 <li><a class="icon icon-small icon-only icon-light icon-instagram" href="https://www.instagram.com/the_rcpa/" target="_blank">Connect with us on Youtube</a></li> 405 <li><a class="icon icon-small icon-only icon-light icon-linkedin" href="https://www.linkedin.com/company/the-royal-college-of-pathologists-of-australasia-rcpa/" target="_blank">Connect with us on LinkedIn</a></li> 406</ul> 407 408 409 </div> 410 <div class="col-12 col-lg-6 sitemap"> 411 <h6 class="large"><a href="/" title="Back to home">Pathology Update 2027</a></h6> 412 <ul class="hmenu menu41"> 413 <li class="iFOL345 first"><a href="/program"><span>Program</span></a> 414 </li> 415 <li class="iFOL349"><a href="/partners-and-exhibitors"><span>Partners</span></a> 416 </li> 417 <li class="iFOL579"><a href="/submissions"><span>Submissions</span></a> 418 </li> 419 <li class="iFOL346"><a href="/speakers"><span>Speakers</span></a> 420 </li> 421 <li class="iFOL348"><a href="/blog"><span>Blog</span></a> 422 </li> 423 <li class="iFOL350"><a href="/contact"><span>Contact</span></a> 424 </li> 425 <li class="iFOL582 last"><a href="/registration"><span>Registration</span></a> 426 </li> 427 428</ul> 429 430 </div> 431 </div> 432 </div> 433 <div class="col-12 col-md-6 bg-secondary border-rad padding-all-full stay-updated"> 434 435 </div> 436 </div> 437 </div> 438 </nav> 439 <article id="footer-bottom" class="margin-top-mid padding-bottom-mid"> 440 <div class="container"> 441 <div class="row margin-bottom-full padding-all"> 442 443 444 <p><strong>The RCPA acknowledges the Traditional Owners of Country throughout Australia and recognises their continuing connection to lands, waters and communities. We pay our respect to Aboriginal and Torres Strait Islander traditions and cultures, and to Elders past, present and emerging.</strong></p> 445<p><strong> 446The RCPA acknowledges the rangatiratanga of MÄori as tangata whenua and Treaty of Waitangi partners in Aotearoa New Zealand.</strong></p> 447 448 449 </div> 450 <div class="row"> 451 <div class="col-md-5 col-12 padding-bottom-mid left"> 452 453 454 <p>© 2026. All rights reserved.</p> 455 456 457 </div>
458 <div class="col-md-7 col-12 padding-bottom-mid d-flex justify-content-md-end right"> 459 460 461 <p><a title="Terms & Conditions" href="/t-cs/delegate-terms-and-conditions">Terms & Conditions</a> <a href="/cookie-privacy-policy/privacy">Cookie & Privacy Policy</a></p> 462 463 464 </div> 465 </div> 466 </div> 467 </article> 468 </footer> 469 470 <div id="ctl00_ctl00_ctl00_ctl27_viewPanel"> 471 472 473 <div class="article-acknowledge-main"> 474 <div id="ctl00_ctl00_ctl00_ctl27_divAcknowledgeTextDisplay" class="clsAknowledgeTextDisplay ack-content"> 475 <div id="AckContent_1206" class="ack-item ack-banner"> 476<div id="AckTextContent_1206" class="ack-content alert alert-info"> 477<p>This site makes use of cookies to enhance your site experience and for analytical purposes. By continuing to browse or clicking 'Accept' you agree to the storing of these cookies on your device. To learn more about how we use cookies <a href="/privacy/cookie-policy">please visit our Cookie Policy</a></p> 478<button id="AckButtonsContent_1206" type="button" class="btn btn-primary acknowledge-btn btn btn-primary acknowledge-btn" onclick="javascript:ConfirmAcknowledge1206(0,1206); return false;">Accept and close</button> 479</div> 480</div> 481 482 483 </div> 484 </div> 485 486</div> 487 <div id="ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog" style="display:none;"> 488 <div onkeypress="javascript:return WebForm_FireDefaultButton(event, 'ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog_submitButton')"> 489 490 491 492 </div><div><input type="submit" name="ctl00$ctl00$ctl00$ctl27$ShowAcknowlegementModalDialog$submitButton" value="Submit" onclick="with ($find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog')) { raiseEvent('onSubmitClicked', event); if (event.returnValue) close();} return false;" id="ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog_submitButton" class="btn btn-primary" /><input type="submit" name="ctl00$ctl00$ctl00$ctl27$ShowAcknowlegementModalDialog$cancelButton" value="Cancel" onclick="with ($find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog')) { raiseEvent('onCancelClicked', event); close();} return false;" id="ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog_cancelButton" class="btn btn-light" /></div> 493</div> 494
494<script type="text/javascript"> 495 function ConfirmAcknowledge1206(intTrackBy, numModuleID) { 496 //var numModuleID = $("#hidAckModuleID").val(); 497 498 var serviceURL = '/Acknowledge/Services/Acknowledge.asmx/CreateAcknowledgeConfirmLog'; 499 var requestData = { 500 moduleID: numModuleID, 501 trackBy: intTrackBy 502 } 503 504 validation.callValidatingJsonReturnValueService( 505 serviceURL, 506 "GET", 507 requestData, 508 ConfirmAcknowledgeSuccess1206, //success with data 509 ConfirmAcknowledgeSuccess1206, // Success with no data 510 validationFailed1206, 511 serverError1206); 512 } 513 514 515 function ConfirmAcknowledgeSuccess1206(ackCount) { 516 //var ackModuleID = $("#hidAckModuleID").val(); 517 var targetCtrl = $("#AckTextContent_1206"); // + ackModuleID); 518 var popupCtrl = $("#AckAlertContent_1206"); // + ackModuleID); 519 520 if (popupCtrl !== null) { 521 popupCtrl.show(); 522 } 523 if (targetCtrl !== null) { 524 targetCtrl.hide(); 525 } 526 527 SetAcknowledgesCount1206(ackCount); 528 } 529 530 function SetAcknowledgesCount1206(ackCount) { 531 if (ackCount > 0) { 532 $(".acknowledgement-count").each(function (index) { 533 $(this).text(' ' + ackCount); 534 }); 535 } else { 536 $(".acknowledgement-count-content").each(function (index) { 537 $(this).hide(); 538 }); 539 } 540 } 541 542 function CancelAcknowledgement1206(numModuleID) { 543 //var numModuleID = $("#hidAckModuleID").val(); 544 545 var serviceURL = '/Acknowledge/Services/Acknowledge.asmx/SetUserConfirmCancelFlag'; 546 var requestData = { 547 moduleID: numModuleID 548 } 549 550 validation.callValidatingJsonReturnValueService( 551 serviceURL, 552 "GET", 553 requestData, 554 function (resp) { CancelAcknowledgementSuccess1206(numModuleID); }, //success with data. Note, return value is not used 555 function () { CancelAcknowledgementSuccess1206(numModuleID); }, // Success with no data 556 validationFailed1206, 557 serverError1206); 558 } 559 560 function CancelAcknowledgementSuccess1206(ackModuleID) { 561 //var ackModuleID = $("#hidAckModuleID").val(); 562 var targetCtrl = $("#AckTextContent_" + ackModuleID); 563 targetCtrl.val(''); 564 targetCtrl.html(''); 565 targetCtrl.change(); 566 } 567 568 function performAcknowledgement1206(intTrackdBy, numModuleId, blnHideAcktext) { 569 if ($find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog') !== null) { 570 ConfirmAcknowledge1206(intTrackdBy, numModuleId); 571 572 $find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog').close(); 573 574 showAfterAckMsg1206(numModuleId, blnHideAcktext); 575 576 return false; 577 } 578 } 579 580 function cancelAcknowledgementModalDialog1206(numModuleId) { 581 if ($find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog') !== null) { 582 CancelAcknowledgement1206(numModuleId); 583 584 $find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog').close(); 585 return false; 586 } 587 } 588 589 function showAfterAckMsg1206(numModuleId, blnHideAcktext) { 590 // var targetCtrl = $("#AckTextContent_" + numModuleId); 591 var afterAckCtrl = $("#AckAfterAckContent_" + numModuleId); 592 var ackTextCtrl = $("#AckTextContent_" + numModuleId); 593 594 //if (targetCtrl !== null) { 595 // targetCtrl.show(); 596 //} 597 598 if (blnHideAcktext === 0) { 599 600 var buttonsContentCtrl = $("#AckButtonsContent_" + numModuleId); 601 if (buttonsContentCtrl !== null) { 602 buttonsContentCtrl.hide(); 603 } 604 605 ackTextCtrl.show(); 606 ackTextCtrl.addClass("ack-content-confirmed"); 607 608 if (afterAckCtrl !== null) { 609 afterAckCtrl.show(); 610 } 611 } 612 } 613 614 function validationFailed1206(msg) { 615 if (msg !== null || msg.length > 0) { 616 var msgStr = ''; 617 618 for (var i = 0; i < msg.length; i++) { 619 msgStr += msg[i].Value + '<br/>'; 620 } 621 622 errors.showError(msg[0].Value); 623 } 624 else { 625 errors.showError('validationFailed'); 626 } 627 } 628 629 function serverError1206(msg) { 630 if (msg !== null || msg.length > 0) { 631 632 errors.showError(msg); 633 } 634 else { 635 errors.showError('serverError'); 636 } 637 } 638 </script>
638 639 640 641 <div> <!-- Required elements which were missing (Added by CM to ensure masterpage integrity) --> 642 643 644 645 646 647</div>
648<script type="text/javascript"> 649//<![CDATA[ 650Sys.WebForms.PageRequestManager._initialize('ctl00$ctl00$ctl00$rsm', 'aspnetForm', [], [], [], 90, 'ctl00$ctl00$ctl00'); 651//]]> 652</script>
vendor: 2 bytes, line 652
652
653<script src="/include/js/editorcustomcommands.min.js?_zv=202608131002" type="text/javascript" ></script>
653 654 655
656<script type="text/javascript"> 657//<![CDATA[ 658window.__TsmHiddenField = $get('ctl00_ctl00_ctl00_rsm_TSM');Sys.Application.add_load(function () { $find('ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog').initializeDialog(); 659}); ;(function() { 660 function loadHandler() { 661 var hf = $get('ctl00_ctl00_ctl00_ctl12_TSSM'); 662 if (!hf._RSSM_init) { hf._RSSM_init = true; hf.value = ''; } 663 hf.value += ';CMDotNet:en-AU:5ebbd9f4-a9f1-4478-95a3-558d876e252d:683d5954:741a6ad1;CMDotNet.Skins:en-AU:da722f09-a0fd-444a-8486-be280e74bf5e:301aceb2;CMDotNet:en-AU:5ebbd9f4-a9f1-4478-95a3-558d876e252d:842a83f0;CMDotNet.Skins:en-AU:da722f09-a0fd-444a-8486-be280e74bf5e:b5dc755c'; 664 Sys.Application.remove_load(loadHandler); 665 }; 666 Sys.Application.add_load(loadHandler); 667 })();Sys.Application.add_init(function() { 668 $create(CMDotNet.ModalDialog, {"autoOpen":false,"autoOpenDelay":0,"causesPostback":false,"title":"","width":0}, null, null, $get("ctl00_ctl00_ctl00_ctl27_ShowAcknowlegementModalDialog")); 669}); 670//]]> 671</script>
671 672</form> 673
673<script src="/ecthemes/13/js/theme-bundle?_zv=202608131002" type="text/javascript"></script>
673 674
674<script type="text/javascript"> 675 $(document).ready(function() { 676 languageController.setUserSiteLanguage('1'); 677 }); 678 </script>
678 679 <div id="mc_embed_shell"> 680 <div id="mc_embed_signup"> 681 <form action="https://rcpa.us10.list-manage.com/subscribe/post?u=9dd0541eb58e20d45987e8760&id=4a0bd71088&f_id=009032e2f0" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank"> 682 <div id="mc_embed_signup_scroll"> 683 <h2 class="sr-only">Subscribe</h2> 684 <div class="mc-field-group"><label for="mce-EMAIL">Email Address <span class="asterisk">*</span></label><input type="email" name="EMAIL" class="required email" id="mce-EMAIL" required="" value=""></div> 685 <div hidden=""><input type="hidden" name="tags" value="13541218"></div> 686 <div id="mce-responses" class="clear"> 687 <div class="response" id="mce-error-response" style="display: none;"></div> 688 <div class="response" id="mce-success-response" style="display: none;"></div> 689 </div> 690 <div aria-hidden="true" style="position: absolute; left: -5000px;"><input type="text" name="b_9dd0541eb58e20d45987e8760_4a0bd71088" tabindex="-1" value=""></div> 691 <div class="clear"><input type="submit" name="subscribe" id="mc-embedded-subscribe" class="button button btn btn-secondary" value="Subscribe"></div> 692 </div> 693 </form> 694 </div> 695 </div>
696<script type="text/javascript" src="//s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js"></script>
696<script type="text/javascript">(function($) {window.fnames = new Array(); window.ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';fnames[3]='ADDRESS';ftypes[3]='address';fnames[4]='PHONE';ftypes[4]='phone';fnames[5]='MMERGE5';ftypes[5]='dropdown';fnames[6]='MMERGE6';ftypes[6]='dropdown';fnames[7]='MMERGE7';ftypes[7]='text';}(jQuery));var $mcj = jQuery.noConflict(true); 697 // SMS Phone Multi-Country Functionality 698 if(!window.MC) { 699 window.MC = {}; 700 } 701 window.MC.smsPhoneData = { 702 defaultCountryCode: 'AU', 703 programs: [], 704 smsProgramDataCountryNames: [] 705 }; 706 707 function getCountryUnicodeFlag(countryCode) { 708 return countryCode.toUpperCase().replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397)) 709 }; 710 711 // HTML sanitization function to prevent XSS 712 function sanitizeHtml(str) { 713 if (typeof str !== 'string') return ''; 714 return str 715 .replace(/&/g, '&') 716 .replace(/</g, '<') 717 .replace(/>/g, '>') 718 .replace(/"/g, '"') 719 .replace(/'/g, ''') 720 .replace(/\//g, '/'); 721 } 722 723 // URL sanitization function to prevent javascript: and data: URLs 724 function sanitizeUrl(url) { 725 if (typeof url !== 'string') return ''; 726 const trimmedUrl = url.trim().toLowerCase(); 727 if (trimmedUrl.startsWith('javascript:') || trimmedUrl.startsWith('data:') || trimmedUrl.startsWith('vbscript:')) { 728 return '#'; 729 } 730 return url; 731 } 732 733 const getBrowserLanguage = () => { 734 if (!window?.navigator?.language?.split('-')[1]) { 735 return window?.navigator?.language?.toUpperCase(); 736 } 737 return window?.navigator?.language?.split('-')[1]; 738 }; 739 740 function getDefaultCountryProgram(defaultCountryCode, smsProgramData) { 741 if (!smsProgramData || smsProgramData.length === 0) { 742 return null; 743 } 744 745 const browserLanguage = getBrowserLanguage(); 746 747 if (browserLanguage) { 748 const foundProgram = smsProgramData.find( 749 (program) => program?.countryCode === browserLanguage, 750 ); 751 if (foundProgram) { 752 return foundProgram; 753 } 754 } 755 756 if (defaultCountryCode) { 757 const foundProgram = smsProgramData.find( 758 (program) => program?.countryCode === defaultCountryCode, 759 ); 760 if (foundProgram) { 761 return foundProgram; 762 } 763 } 764 765 return smsProgramData[0]; 766 } 767 768 function updateSmsLegalText(countryCode, fieldName) { 769 if (!countryCode || !fieldName) { 770 return; 771 } 772 773 const programs = window?.MC?.smsPhoneData?.programs; 774 if (!programs || !Array.isArray(programs)) { 775 return; 776 } 777 778 const program = programs.find(program => program?.countryCode === countryCode); 779 if (!program || !program.requiredTemplate) { 780 return; 781 } 782 783 const legalTextElement = document.querySelector('#legal-text-' + fieldName); 784 if (!legalTextElement) { 785 return; 786 } 787 788 // Remove HTML tags and clean up the text 789 const divRegex = new RegExp('</?[div][^>]*>', 'gi'); 790 const fullAnchorRegex = new RegExp('<a.*?</a>', 'g'); 791 const anchorRegex = new RegExp('<a href="(.*?)" target="(.*?)">(.*?)</a>'); 792 793 const template = program.requiredTemplate.replace(divRegex, ''); 794 795 796 797 legalTextElement.textContent = ''; 798 const parts = template.split(/(<a href=".*?" target=".*?">.*?<\/a>)/g); 799 parts.forEach(function(part) { 800 if (!part) { 801 return; 802 } 803 const anchorMatch = part.match(/<a href="(.*?)" target="(.*?)">(.*?)<\/a>/); 804 if (anchorMatch) { 805 const linkElement = document.createElement('a'); 806 linkElement.href = sanitizeUrl(anchorMatch[1]); 807 linkElement.target = sanitizeHtml(anchorMatch[2]); 808 linkElement.textContent = sanitizeHtml(anchorMatch[3]); 809 legalTextElement.appendChild(linkElement); 810 } else { 811 legalTextElement.appendChild(document.createTextNode(part));
812 } 813 }); 814 815 } 816 817 function generateDropdownOptions(smsProgramData) { 818 if (!smsProgramData || smsProgramData.length === 0) { 819 return ''; 820 } 821 822 return smsProgramData.map(program => { 823 const flag = getCountryUnicodeFlag(program.countryCode); 824 const countryName = getCountryName(program.countryCode); 825 const callingCode = program.countryCallingCode || ''; 826 // Sanitize all values to prevent XSS 827 const sanitizedCountryCode = sanitizeHtml(program.countryCode || ''); 828 const sanitizedCountryName = sanitizeHtml(countryName || ''); 829 const sanitizedCallingCode = sanitizeHtml(callingCode || ''); 830 return '<option value="' + sanitizedCountryCode + '">' + sanitizedCountryName + ' ' + sanitizedCallingCode + '</option>'; 831 }).join(''); 832 } 833 834 function getCountryName(countryCode) { 835 if (window.MC?.smsPhoneData?.smsProgramDataCountryNames && Array.isArray(window.MC.smsPhoneData.smsProgramDataCountryNames)) { 836 for (let i = 0; i < window.MC.smsPhoneData.smsProgramDataCountryNames.length; i++) { 837 if (window.MC.smsPhoneData.smsProgramDataCountryNames[i].code === countryCode) { 838 return window.MC.smsPhoneData.smsProgramDataCountryNames[i].name; 839 } 840 } 841 } 842 return countryCode; 843 } 844 845 function getDefaultPlaceholder(countryCode) { 846 if (!countryCode || typeof countryCode !== 'string') { 847 return '+1 000 000 0000'; // Default US placeholder 848 } 849 850 var mockPlaceholders = [ 851 { 852 countryCode: 'US', 853 placeholder: '+1 000 000 0000', 854 helpText: 'Include the US country code +1 before the phone number', 855 }, 856 { 857 countryCode: 'GB', 858 placeholder: '+44 0000 000000', 859 helpText: 'Include the GB country code +44 before the phone number', 860 }, 861 { 862 countryCode: 'CA', 863 placeholder: '+1 000 000 0000', 864 helpText: 'Include the CA country code +1 before the phone number', 865 }, 866 { 867 countryCode: 'AU', 868 placeholder: '+61 000 000 000', 869 helpText: 'Include the AU country code +61 before the phone number', 870 }, 871 { 872 countryCode: 'DE', 873 placeholder: '+49 000 0000000', 874 helpText: 'F¸gen Sie vor der Telefonnummer die DE-Lâ°ndervorwahl +49 ein', 875 }, 876 { 877 countryCode: 'FR', 878 placeholder: '+33 0 00 00 00 00', 879 helpText: 'Incluez le code pays FR +33 avant le numÃro de tÃlÃphone', 880 }, 881 { 882 countryCode: 'ES', 883 placeholder: '+34 000 000 000', 884 helpText: 'Incluya el cÃdigo de paÃs ES +34 antes del nËmero de telÃfono', 885 }, 886 { 887 countryCode: 'NL', 888 placeholder: '+31 0 00000000', 889 helpText: 'Voeg de NL-landcode +31 toe vÃÃr het telefoonnummer', 890 }, 891 { 892 countryCode: 'BE', 893 placeholder: '+32 000 00 00 00', 894 helpText: 'Incluez le code pays BE +32 avant le numÃro de tÃlÃphone', 895 }, 896 { 897 countryCode: 'CH', 898 placeholder: '+41 00 000 00 00', 899 helpText: 'F¸gen Sie vor der Telefonnummer die CH-Lâ°ndervorwahl +41 ein', 900 }, 901 { 902 countryCode: 'AT', 903 placeholder: '+43 000 000 0000', 904 helpText: 'F¸gen Sie vor der Telefonnummer die AT-Lâ°ndervorwahl +43 ein', 905 }, 906 { 907 countryCode: 'IE', 908 placeholder: '+353 00 000 0000', 909 helpText: 'Include the IE country code +353 before the phone number', 910 }, 911 { 912 countryCode: 'IT', 913 placeholder: '+39 000 000 0000', 914 helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono', 915 }, 916 { 917 countryCode: 'NO', 918 placeholder: '+47 000 00 000', 919 helpText: 'Inkluder NO landskode +47 f¯r telefonnummeret', 920 }, 921 { 922 countryCode: 'SE', 923 placeholder: '+46 00 000 00 00', 924 helpText: 'Inkludera SE landskod +46 fËre telefonnumret', 925 }, 926 { 927 countryCode: 'DK', 928 placeholder: '+45 00 00 00 00', 929 helpText: 'Inkluder DK landekode +45 f¯r telefonnummeret', 930 }, 931 { 932 countryCode: 'FI', 933 placeholder: '+358 00 000 0000', 934 helpText: 'Sisâ°llytâ° FI-maakoodi +358 ennen puhelinnumeroa', 935 }, 936 { 937 countryCode: 'EE', 938 placeholder: '+372 0000 0000', 939 helpText: 'Lisage EE riigikood +372 telefoninumbri ette', 940 }, 941 { 942 countryCode: 'PL', 943 placeholder: '+48 000 000 000', 944 helpText: 'Podaj numer kierunkowy PL +48 przed numerem telefonu', 945 }, 946 { 947 countryCode: 'SK', 948 placeholder: '+421 000 000 000', 949 helpText: 'Pred telefÃnne ?Ãslo uve?te kÃd krajiny SK +421', 950 }, 951 { 952 countryCode: 'LV', 953 placeholder: '+371 0000 0000', 954 helpText: 'Iek?aujiet LV valsts kodu +371 pirms t?lru?a numura', 955 }, 956 { 957 countryCode: 'LT', 958 placeholder: '+370 0000 0000', 959 helpText: '?traukite LT öalies kod? +370 prieö telefono numer?', 960 }, 961 { 962 countryCode: 'GR', 963 placeholder: '+30 000 000 0000', 964 helpText: '????????????? ??? ?????? ????? GR +30 ???? ??? ??? ?????? ?????????', 965 }, 966 { 967 countryCode: 'PT', 968 placeholder: '+351 000 000 000', 969 helpText: 'Inclua o cÃdigo de paÃs PT +351 antes do nËmero de telefone', 970 }, 971 { 972 countryCode: 'HR', 973 placeholder: '+385 00 000 0000', 974 helpText: 'Uklju?ite HR pozivni broj drûave +385 prije telefonskog broja', 975 }, 976 { 977 countryCode: 'SI', 978 placeholder: '+386 00 000 000', 979 helpText: 'Vklju?ite SI kodo drûave +386 pred telefonsko ötevilko', 980 }, 981 { 982 countryCode: 'IS', 983 placeholder: '+354 000 0000', 984 helpText: 'L·ttu IS landsnËmer +354 fylgja · undan sÃmanËmerinu', 985 }, 986 { 987 countryCode: 'LU', 988 placeholder: '+352 000 000 000', 989 helpText: 'Incluez le code pays LU +352 avant le numÃro de tÃlÃphone', 990 }, 991 { 992 countryCode: 'MC', 993 placeholder: '+377 00 00 00 00', 994 helpText: 'Incluez le code pays MC +377 avant le numÃro de tÃlÃphone', 995 }, 996 { 997 countryCode: 'AD', 998 placeholder: '+376 000 000', 999 helpText: 'Incloeu el codi de paÃs AD +376 abans del nËmero de telÃfon', 1000 }, 1001 { 1002 countryCode: 'JE', 1003 placeholder: '+44 0000 000000', 1004 helpText: 'Include the JE country code +44 before the phone number', 1005 }, 1006 { 1007 countryCode: 'IM', 1008 placeholder: '+44 0000 000000', 1009 helpText: 'Include the IM country code +44 before the phone number', 1010 }, 1011 { 1012 countryCode: 'GG', 1013 placeholder: '+44 0000 000000', 1014 helpText: 'Include the GG country code +44 before the phone number', 1015 }, 1016 { 1017 countryCode: 'AL', 1018 placeholder: '+355 00 000 0000', 1019 helpText: 'PÃrfshini kodin e vendit AL +355 para numrit tà telefonit', 1020 }, 1021 { 1022 countryCode: 'SM', 1023 placeholder: '+378 0000 000000', 1024 helpText: 'Includere il prefisso internazionale SM +378 prima del numero di telefono', 1025 }, 1026 { 1027 countryCode: 'FO', 1028 placeholder: '+298 000000', 1029 helpText: 'Inkluder FO landekode +298 f¯r telefonnummeret', 1030 }, 1031 { 1032 countryCode: 'MT', 1033 placeholder: '+356 0000 0000', 1034 helpText: 'Include the MT country code +356 before the phone number', 1035 }, 1036 { 1037 countryCode: 'LI', 1038 placeholder: '+423 000 0000', 1039 helpText: 'F¸gen Sie vor der Telefonnummer die LI-Lâ°ndervorwahl +423 ein', 1040 }, 1041 { 1042 countryCode: 'GI', 1043 placeholder: '+350 000 00000', 1044 helpText: 'Include the GI country code +350 before the phone number', 1045 }, 1046 { 1047 countryCode: 'MD', 1048 placeholder: '+373 00 000 000', 1049 helpText: 'Include?i codul de ?ar? MD +373 Ãnaintea num?rului de telefon', 1050 }, 1051 { 1052 countryCode: 'HU', 1053 placeholder: '+36 00 000 0000', 1054 helpText: 'A telefonsz·m el?tt adja meg a HU orsz·gkÃdot +36', 1055 }, 1056 { 1057 countryCode: 'NZ', 1058 placeholder: '+64 00 000 0000', 1059 helpText: 'Include the NZ country code +64 before the phone number', 1060 }, 1061 { 1062 countryCode: 'ME', 1063 placeholder: '+382 00 000 000', 1064 helpText: 'Uklju?ite ME pozivni broj drûave +382 prije telefonskog broja', 1065 }, 1066 ]; 1067 1068 const selectedPlaceholder = mockPlaceholders.find(function(item) { 1069 return item && item.countryCode === countryCode; 1070 }); 1071 1072 return selectedPlaceholder ? selectedPlaceholder.placeholder : mockPlaceholders[0].placeholder; 1073 } 1074 1075 function updatePlaceholder(countryCode, fieldName) { 1076 if (!countryCode || !fieldName) { 1077 return; 1078 } 1079 1080 const phoneInput = document.querySelector('#mce-' + fieldName); 1081 if (!phoneInput) { 1082 return; 1083 } 1084 1085 const placeholder = getDefaultPlaceholder(countryCode); 1086 if (placeholder) { 1087 phoneInput.placeholder = placeholder; 1088 } 1089 } 1090 1091 function updateCountryCodeInstruction(countryCode, fieldName) { 1092 updatePlaceholder(countryCode, fieldName); 1093 1094 } 1095 1096 function getDefaultHelpText(countryCode) { 1097 var mockPlaceholders = [ 1098 { 1099 countryCode: 'US', 1100 placeholder: '+1 000 000 0000', 1101 helpText: 'Include the US country code +1 before the phone number', 1102 }, 1103 { 1104 countryCode: 'GB', 1105 placeholder: '+44 0000 000000', 1106 helpText: 'Include the GB country code +44 before the phone number', 1107 }, 1108 { 1109 countryCode: 'CA', 1110 placeholder: '+1 000 000 0000', 1111 helpText: 'Include the CA country code +1 before the phone number', 1112 }, 1113 { 1114 countryCode: 'AU', 1115 placeholder: '+61 000 000 000', 1116 helpText: 'Include the AU country code +61 before the phone number', 1117 }, 1118 { 1119 countryCode: 'DE', 1120 placeholder: '+49 000 0000000', 1121 helpText: 'F¸gen Sie vor der Telefonnummer die DE-Lâ°ndervorwahl +49 ein', 1122 }, 1123 { 1124 countryCode: 'FR', 1125 placeholder: '+33 0 00 00 00 00', 1126 helpText: 'Incluez le code pays FR +33 avant le numÃro de tÃlÃphone', 1127 }, 1128 { 1129 countryCode: 'ES', 1130 placeholder: '+34 000 000 000', 1131 helpText: 'Incluya el cÃdigo de paÃs ES +34 antes del nËmero de telÃfono', 1132 }, 1133 { 1134 countryCode: 'NL', 1135 placeholder: '+31 0 00000000', 1136 helpText: 'Voeg de NL-landcode +31 toe vÃÃr het telefoonnummer', 1137 }, 1138 { 1139 countryCode: 'BE', 1140 placeholder: '+32 000 00 00 00', 1141 helpText: 'Incluez le code pays BE +32 avant le numÃro de tÃlÃphone', 1142 }, 1143 { 1144 countryCode: 'CH', 1145 placeholder: '+41 00 000 00 00', 1146 helpText: 'F¸gen Sie vor der Telefonnummer die CH-Lâ°n
1146dervorwahl +41 ein', 1147 }, 1148 { 1149 countryCode: 'AT', 1150 placeholder: '+43 000 000 0000', 1151 helpText: 'F¸gen Sie vor der Telefonnummer die AT-Lâ°ndervorwahl +43 ein', 1152 }, 1153 { 1154 countryCode: 'IE', 1155 placeholder: '+353 00 000 0000', 1156 helpText: 'Include the IE country code +353 before the phone number', 1157 }, 1158 { 1159 countryCode: 'IT', 1160 placeholder: '+39 000 000 0000', 1161 helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono', 1162 }, 1163 { 1164 countryCode: 'NO', 1165 placeholder: '+47 000 00 000', 1166 helpText: 'Inkluder NO landskode +47 f¯r telefonnummeret', 1167 }, 1168 { 1169 countryCode: 'SE', 1170 placeholder: '+46 00 000 00 00', 1171 helpText: 'Inkludera SE landskod +46 fËre telefonnumret', 1172 }, 1173 { 1174 countryCode: 'DK', 1175 placeholder: '+45 00 00 00 00', 1176 helpText: 'Inkluder DK landekode +45 f¯r telefonnummeret', 1177 }, 1178 { 1179 countryCode: 'FI', 1180 placeholder: '+358 00 000 0000', 1181 helpText: 'Sisâ°llytâ° FI-maakoodi +358 ennen puhelinnumeroa', 1182 }, 1183 { 1184 countryCode: 'EE', 1185 placeholder: '+372 0000 0000', 1186 helpText: 'Lisage EE riigikood +372 telefoninumbri ette', 1187 }, 1188 { 1189 countryCode: 'PL', 1190 placeholder: '+48 000 000 000', 1191 helpText: 'Podaj numer kierunkowy PL +48 przed numerem telefonu', 1192 }, 1193 { 1194 countryCode: 'SK', 1195 placeholder: '+421 000 000 000', 1196 helpText: 'Pred telefÃnne ?Ãslo uve?te kÃd krajiny SK +421', 1197 }, 1198 { 1199 countryCode: 'LV', 1200 placeholder: '+371 0000 0000', 1201 helpText: 'Iek?aujiet LV valsts kodu +371 pirms t?lru?a numura', 1202 }, 1203 { 1204 countryCode: 'LT', 1205 placeholder: '+370 0000 0000', 1206 helpText: '?traukite LT öalies kod? +370 prieö telefono numer?', 1207 }, 1208 { 1209 countryCode: 'GR', 1210 placeholder: '+30 000 000 0000', 1211 helpText: '????????????? ??? ?????? ????? GR +30 ???? ??? ??? ?????? ?????????', 1212 }, 1213 { 1214 countryCode: 'PT', 1215 placeholder: '+351 000 000 000', 1216 helpText: 'Inclua o cÃdigo de paÃs PT +351 antes do nËmero de telefone', 1217 }, 1218 { 1219 countryCode: 'HR', 1220 placeholder: '+385 00 000 0000', 1221 helpText: 'Uklju?ite HR pozivni broj drûave +385 prije telefonskog broja', 1222 }, 1223 { 1224 countryCode: 'SI', 1225 placeholder: '+386 00 000 000', 1226 helpText: 'Vklju?ite SI kodo drûave +386 pred telefonsko ötevilko', 1227 }, 1228 { 1229 countryCode: 'IS', 1230 placeholder: '+354 000 0000', 1231 helpText: 'L·ttu IS landsnËmer +354 fylgja · undan sÃmanËmerinu', 1232 }, 1233 { 1234 countryCode: 'LU', 1235 placeholder: '+352 000 000 000', 1236 helpText: 'Incluez le code pays LU +352 avant le numÃro de tÃlÃphone', 1237 }, 1238 { 1239 countryCode: 'MC', 1240 placeholder: '+377 00 00 00 00', 1241 helpText: 'Incluez le code pays MC +377 avant le numÃro de tÃlÃphone', 1242 }, 1243 { 1244 countryCode: 'AD', 1245 placeholder: '+376 000 000', 1246 helpText: 'Incloeu el codi de paÃs AD +376 abans del nËmero de telÃfon', 1247 }, 1248 { 1249 countryCode: 'JE', 1250 placeholder: '+44 0000 000000', 1251 helpText: 'Include the JE country code +44 before the phone number', 1252 }, 1253 { 1254 countryCode: 'IM', 1255 placeholder: '+44 0000 000000', 1256 helpText: 'Include the IM country code +44 before the phone number', 1257 }, 1258 { 1259 countryCode: 'GG', 1260 placeholder: '+44 0000 000000', 1261 helpText: 'Include the GG country code +44 before the phone number', 1262 }, 1263 { 1264 countryCode: 'AL', 1265 placeholder: '+355 00 000 0000', 1266 helpText: 'PÃrfshini kodin e vendit AL +355 para numrit tà telefonit', 1267 }, 1268 { 1269 countryCode: 'SM', 1270 placeholder: '+378 0000 000000', 1271 helpText: 'Includere il prefisso internazionale SM +378 prima del numero di telefono', 1272 }, 1273 { 1274 countryCode: 'FO', 1275 placeholder: '+298 000000', 1276 helpText: 'Inkluder FO landekode +298 f¯r telefonnummeret', 1277 }, 1278 { 1279 countryCode: 'MT', 1280 placeholder: '+356 0000 0000', 1281 helpText: 'Include the MT country code +356 before the phone number', 1282 }, 1283 { 1284 countryCode: 'LI', 1285 placeholder: '+423 000 0000', 1286 helpText: 'F¸gen Sie vor der Telefonnummer die LI-Lâ°ndervorwahl +423 ein', 1287 }, 1288 { 1289 countryCode: 'GI', 1290 placeholder: '+350 000 00000', 1291 helpText: 'Include the GI country code +350 before the phone number', 1292 }, 1293 { 1294 countryCode: 'MD', 1295 placeholder: '+373 00 000 000', 1296 helpText: 'Include?i codul de ?ar? MD +373 Ãnaintea num?rului de telefon', 1297 }, 1298 { 1299 countryCode: 'HU', 1300 placeholder: '+36 00 000 0000', 1301 helpText: 'A telefonsz·m el?tt adja meg a HU orsz·gkÃdot +36', 1302 }, 1303 { 1304 countryCode: 'NZ', 1305 placeholder: '+64 00 000 0000', 1306 helpText: 'Include the NZ country code +64 before the phone number', 1307 }, 1308 { 1309 countryCode: 'ME', 1310 placeholder: '+382 00 000 000', 1311 helpText: 'Uklju?ite ME pozivni broj drûave +382 prije telefonskog broja', 1312 }, 1313 ]; 1314 1315 if (!countryCode || typeof countryCode !== 'string') { 1316 return mockPlaceholders[0].helpText; 1317 } 1318 1319 const selectedHelpText = mockPlaceholders.find(function(item) { 1320 return item && item.countryCode === countryCode; 1321 }); 1322 1323 return selectedHelpText ? selectedHelpText.helpText : mockPlaceholders[0].helpText; 1324 } 1325 1326 function setDefaultHelpText(countryCode) { 1327 const helpTextSpan = document.querySelector('#help-text'); 1328 if (!helpTextSpan) { 1329 return; 1330 } 1331 1332 1333 } 1334 1335 function updateHelpTextCountryCode(countryCode, fieldName) { 1336 if (!countryCode || !fieldName) { 1337 return; 1338 } 1339 1340 setDefaultHelpText(countryCode); 1341 } 1342 1343 function initializeSmsPhoneDropdown(fieldName) { 1344 if (!fieldName || typeof fieldName !== 'string') { 1345 return; 1346 } 1347 1348 const dropdown = document.querySelector('#country-select-' + fieldName); 1349 const displayFlag = document.querySelector('#flag-display-' + fieldName); 1350 1351 if (!dropdown || !displayFlag) { 1352 return; 1353 } 1354 1355 const smsPhoneData = window.MC?.smsPhoneData; 1356 if (smsPhoneData && smsPhoneData.programs && Array.isArray(smsPhoneData.programs)) { 1357 dropdown.innerHTML = generateDropdownOptions(smsPhoneData.programs); 1358 } 1359 1360 const defaultProgram = getDefaultCountryProgram(smsPhoneData?.defaultCountryCode, smsPhoneData?.programs); 1361 if (defaultProgram && defaultProgram.countryCode) { 1362 dropdown.value = defaultProgram.countryCode; 1363
1364 const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName); 1365 if (flagSpan) { 1366 flagSpan.textContent = getCountryUnicodeFlag(defaultProgram.countryCode); 1367 flagSpan.setAttribute('aria-label', sanitizeHtml(defaultProgram.countryCode) + ' flag'); 1368 } 1369 1370 updateSmsLegalText(defaultProgram.countryCode, fieldName); 1371 updatePlaceholder(defaultProgram.countryCode, fieldName); 1372 updateCountryCodeInstruction(defaultProgram.countryCode, fieldName); 1373 } 1374 1375 1376 var smsNotRequiredRemoveCountryCodeEnabled = true; 1377 var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"Email Address","helper_text":"","type":"email","required":true,"audience_field_name":"Email Address","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"First Name","helper_text":"","type":"text","required":false,"audience_field_name":"First Name","enabled":false,"order":null,"field_type":"merge","merge_id":1},"LNAME":{"name":"LNAME","label":"Last Name","helper_text":"","type":"text","required":false,"audience_field_name":"Last Name","enabled":false,"order":null,"field_type":"merge","merge_id":2},"ADDRESS":{"name":"ADDRESS","label":"Address","helper_text":"","type":"address","required":false,"audience_field_name":"Address","enabled":false,"order":null,"field_type":"merge","merge_id":3,"countries":{"2":"Albania","3":"Algeria","4":"Andorra","5":"Angola","6":"Argentina","7":"Armenia","8":"Australia","9":"Austria","10":"Azerbaijan","11":"Bahamas","12":"Bahrain","13":"Bangladesh","14":"Barbados","15":"Belarus","16":"Belgium","17":"Belize","18":"Benin","19":"Bermuda","20":"Bhutan","21":"Bolivia","22":"Bosnia and Herzegovina","23":"Botswana","24":"Brazil","25":"Bulgaria","26":"Burkina Faso","27":"Burundi","28":"Cambodia","29":"Cameroon","30":"Canada","31":"Cape Verde","32":"Cayman Islands","33":"Central African Republic","34":"Chad","35":"Chile","36":"China","37":"Colombia","38":"Congo","40":"Croatia","41":"Cyprus","42":"Czech Republic","43":"Denmark","44":"Djibouti","45":"Ecuador","46":"Egypt","47":"El Salvador","48":"Equatorial Guinea","49":"Eritrea","50":"Estonia","51":"Ethiopia","52":"Fiji","53":"Finland","54":"France","56":"Gabon","57":"Gambia","58":"Georgia","59":"Germany","60":"Ghana","61":"Greece","62":"Guam","63":"Guinea","64":"Guinea-Bissau","65":"Guyana","66":"Honduras","67":"Hong Kong","68":"Hungary","69":"Iceland","70":"India","71":"Indonesia","74":"Ireland","75":"Israel","76":"Italy","78":"Japan","79":"Jordan","80":"Kazakhstan","81":"Kenya","82":"Kuwait","83":"Kyrgyzstan","84":"Lao People's Democratic Republic","85":"Latvia","86":"Lebanon","87":"Lesotho","88":"Liberia","90":"Liechtenstein","91":"Lithuania","92":"Luxembourg","93":"Macedonia","94":"Madagascar","95":"Malawi","96":"Malaysia","97":"Maldives","98":"Mali","99":"Malta","100":"Mauritania","101":"Mexico","102":"Moldova","103":"Monaco","104":"Mongolia","105":"Morocco","106":"Mozambique","107":"Namibia","108":"Nepal","109":"Netherlands","110":"Netherlands Antilles","111":"New Zealand","112":"Nicaragua","113":"Niger","114":"Nigeria","116":"Norway","117":"Oman","118":"Pakistan","119":"Panama","120":"Paraguay","121":"Peru","122":"Philippines","123":"Poland","124":"Portugal","126":"Qatar","127":"Reunion","128":"Romania","129":"Russia","130":"Rwanda","132":"Samoa (Independent)","133":"Saudi Arabia","134":"Senegal","135":"Seychelles","136":"Sierra Leone","137":"Singapore","138":"Slovakia","139":"Slovenia","140":"Somalia","141":"South Africa","142":"South Korea","143":"Spain","144":"Sri Lanka","146":"Suriname","147":"Swaziland","148":"Sweden","149":"Switzerland","152":"Taiwan","153":"Tanzania","154":"Thailand","155":"Togo","156":"Tunisia","157":"Turkiye","158":"Turkmenistan","159":"Uganda","161":"Ukraine","162":"United Arab Emirates","163":"Uruguay","164":"USA","165":"Uzbekistan","166":"Vatican City State (Holy See)","167":"Venezuela","168":"Vietnam","169":"Virgin Islands (British)","170":"Yemen","173":"Zambia","174":"Zimbabwe","175":"Antigua And Barbuda","176":"Anguilla","178":"American Samoa","179":"Aruba","180":"Brunei Darussalam","181":"Bouvet Island","183":"Cook Islands","185":"Christmas Island","187":"Dominican Republic","188":"Western Sahara","189":"Falkland Islands","191":"Faroe Islands","192":"Grenada","193":"French Guiana","194":"Gibraltar","195":"Greenland","196":"Guadeloupe","198":"Guatemala","200":"Haiti","202":"Jamaica","203":"Kiribati","204":"C
1377omoros","205":"Saint Kitts and Nevis","206":"Saint Lucia","207":"Marshall Islands","208":"Macau","210":"Martinique","212":"Mauritius","213":"New Caledonia","214":"Norfolk Island","215":"Nauru","217":"Niue","219":"Papua New Guinea","221":"Pitcairn","222":"Palau","223":"Solomon Islands","225":"Svalbard and Jan Mayen Islands","227":"San Marino","232":"Tonga","233":"Timor-Leste","234":"Trinidad and Tobago","235":"Tuvalu","237":"Saint Vincent and the Grenadines","238":"Virgin Islands (U.S.)","239":"Vanuatu","241":"Mayotte","242":"Myanmar","255":"Sao Tome and Principe","257":"South Georgia and the South Sandwich Islands","260":"Tajikistan","262":"United Kingdom","268":"Costa Rica","270":"Guernsey","272":"North Korea","274":"Afghanistan","275":"Cote D'Ivoire","276":"Cuba","277":"French Polynesia","278":"Iran","279":"Iraq","281":"Libya","282":"Palestine","285":"Syria","286":"Aaland Islands","287":"Turks & Caicos Islands","288":"Jersey (Channel Islands)","289":"Dominica","290":"Montenegro","293":"Sudan","294":"Montserrat","298":"Curacao","302":"Sint Maarten","311":"South Sudan","315":"Republic of Kosovo","318":"Congo, Democratic Republic of the","323":"Isle of Man","324":"Saint Martin","325":"Bonaire, Saint Eustatius and Saba","326":"Serbia"},"defaultcountry":164},"PHONE":{"name":"PHONE","label":"Phone Number","helper_text":"","type":"phone","required":false,"audience_field_name":"Phone Number","phoneformat":"","enabled":false,"order":null,"field_type":"merge","merge_id":4},"MMERGE5":{"name":"MMERGE5","label":"Prefix","helper_text":"","type":"dropdown","required":false,"audience_field_name":"Prefix","choices":[{"value":"Dr","label":"Dr"},{"value":"Prof","label":"Prof"},{"value":"A/Prof","label":"A/Prof"},{"value":"Miss","label":"Miss"},{"value":"Ms","label":"Ms"},{"value":"Mrs","label":"Mrs"},{"value":"Mr","label":"Mr"},{"value":"Mx","label":"Mx"},{"value":"Other","label":"Other"}],"enabled":false,"order":null,"field_type":"merge","merge_id":5},"MMERGE6":{"name":"MMERGE6","label":"Discipline","helper_text":"","type":"dropdown","required":false,"audience_field_name":"Discipline","choices":[{"value":"Anatomical Pathology","label":"Anatomical Pathology"},{"value":"Chemical Pathology","label":"Chemical Pathology"},{"value":"Forensic Pathology","label":"Forensic Pathology"},{"value":"Genetic Pathology","label":"Genetic Pathology"},{"value":"Microbiology","label":"Microbiology"},{"value":"Immunopathology","label":"Immunopathology"},{"value":"General Pathology","label":"General Pathology"},{"value":"Haematology","label":"Haematology"},{"value":"Other","label":"Other"}],"enabled":false,"order":null,"field_type":"merge","merge_id":6},"MMERGE7":{"name":"MMERGE7","label":"Special interests","helper_text":"","type":"text","required":false,"audience_field_name":"Special interests","enabled":false,"order":null,"field_type":"merge","merge_id":7},"interests_62632":{"name":"interests_62632","label":"Discipline","helper_text":"","type":"select","required":false,"choices":[{"value":"1","label":"Anatomical Pathology"},{"value":"2","label":"Chemical Pathology"},{"value":"4","label":"Forensic Pathology"},{"value":"8","label":"Genetic Pathology"},{"value":"16","label":"Microbiology"},{"value":"32","label":"Immunopathology"},{"value":"64","label":"General Pathology"},{"value":"128","label":"Haematology"},{"value":"256","label":"Other"}],"audience_field_name":"Discipline","enabled":false,"order":null,"field_type":"group","group_id":62632}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; }); 1378 var isRequired = smsField ? smsField.required : false; 1379 var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true; 1380 1381 var phoneInput = document.querySelector('#mce-' + fieldName); 1382 if (phoneInput && defaultProgram.countryCallingCode && shouldAppendCountryCode) { 1383 phoneInput.value = defaultProgram.countryCallingCode; 1384 } 1385 1386 1387 1388 displayFlag?.addEventListener('click', function(e) { 1389 dropdown.focus(); 1390 }); 1391 1392 1393 dropdown?.addEventListener('change', function() { 1394 const selectedCountry = this.value; 1395 1396 if (!selectedCountry || typeof selectedCountry !== 'string') { 1397 return; 1398 } 1399
1400 const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName); 1401 if (flagSpan) { 1402 flagSpan.textContent = getCountryUnicodeFlag(selectedCountry); 1403 flagSpan.setAttribute('aria-label', sanitizeHtml(selectedCountry) + ' flag'); 1404 } 1405 1406 1407 const selectedProgram = window.MC?.smsPhoneData?.programs.find(function(program) { 1408 return program && program.countryCode === selectedCountry; 1409 }); 1410 1411 var smsNotRequiredRemoveCountryCodeEnabled = true; 1412 var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"Email Address","helper_text":"","type":"email","required":true,"audience_field_name":"Email Address","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"First Name","helper_text":"","type":"text","required":false,"audience_field_name":"First Name","enabled":false,"order":null,"field_type":"merge","merge_id":1},"LNAME":{"name":"LNAME","label":"Last Name","helper_text":"","type":"text","required":false,"audience_field_name":"Last Name","enabled":false,"order":null,"field_type":"merge","merge_id":2},"ADDRESS":{"name":"ADDRESS","label":"Address","helper_text":"","type":"address","required":false,"audience_field_name":"Address","enabled":false,"order":null,"field_type":"merge","merge_id":3,"countries":{"2":"Albania","3":"Algeria","4":"Andorra","5":"Angola","6":"Argentina","7":"Armenia","8":"Australia","9":"Austria","10":"Azerbaijan","11":"Bahamas","12":"Bahrain","13":"Bangladesh","14":"Barbados","15":"Belarus","16":"Belgium","17":"Belize","18":"Benin","19":"Bermuda","20":"Bhutan","21":"Bolivia","22":"Bosnia and Herzegovina","23":"Botswana","24":"Brazil","25":"Bulgaria","26":"Burkina Faso","27":"Burundi","28":"Cambodia","29":"Cameroon","30":"Canada","31":"Cape Verde","32":"Cayman Islands","33":"Central African Republic","34":"Chad","35":"Chile","36":"China","37":"Colombia","38":"Congo","40":"Croatia","41":"Cyprus","42":"Czech Republic","43":"Denmark","44":"Djibouti","45":"Ecuador","46":"Egypt","47":"El Salvador","48":"Equatorial Guinea","49":"Eritrea","50":"Estonia","51":"Ethiopia","52":"Fiji","53":"Finland","54":"France","56":"Gabon","57":"Gambia","58":"Georgia","59":"Germany","60":"Ghana","61":"Greece","62":"Guam","63":"Guinea","64":"Guinea-Bissau","65":"Guyana","66":"Honduras","67":"Hong Kong","68":"Hungary","69":"Iceland","70":"India","71":"Indonesia","74":"Ireland","75":"Israel","76":"Italy","78":"Japan","79":"Jordan","80":"Kazakhstan","81":"Kenya","82":"Kuwait","83":"Kyrgyzstan","84":"Lao People's Democratic Republic","85":"Latvia","86":"Lebanon","87":"Lesotho","88":"Liberia","90":"Liechtenstein","91":"Lithuania","92":"Luxembourg","93":"Macedonia","94":"Madagascar","95":"Malawi","96":"Malaysia","97":"Maldives","98":"Mali","99":"Malta","100":"Mauritania","101":"Mexico","102":"Moldova","103":"Monaco","104":"Mongolia","105":"Morocco","106":"Mozambique","107":"Namibia","108":"Nepal","109":"Netherlands","110":"Netherlands Antilles","111":"New Zealand","112":"Nicaragua","113":"Niger","114":"Nigeria","116":"Norway","117":"Oman","118":"Pakistan","119":"Panama","120":"Paraguay","121":"Peru","122":"Philippines","123":"Poland","124":"Portugal","126":"Qatar","127":"Reunion","128":"Romania","129":"Russia","130":"Rwanda","132":"Samoa (Independent)","133":"Saudi Arabia","134":"Senegal","135":"Seychelles","136":"Sierra Leone","137":"Singapore","138":"Slovakia","139":"Slovenia","140":"Somalia","141":"South Africa","142":"South Korea","143":"Spain","144":"Sri Lanka","146":"Suriname","147":"Swaziland","148":"Sweden","149":"Switzerland","152":"Taiwan","153":"Tanzania","154":"Thailand","155":"Togo","156":"Tunisia","157":"Turkiye","158":"Turkmenistan","159":"Uganda","161":"Ukraine","162":"United Arab Emirates","163":"Uruguay","164":"USA","165":"Uzbekistan","166":"Vatican City State (Holy See)","167":"Venezuela","168":"Vietnam","169":"Virgin Islands (British)","170":"Yemen","173":"Zambia","174":"Zimbabwe","175":"Antigua And Barbuda","176":"Anguilla","178":"American Samoa","179":"Aruba","180":"Brunei Darussalam","181":"Bouvet Island","183":"Cook Islands","185":"Christmas Island","187":"Dominican Republic","188":"Western Sahara","189":"Falkland Islands","191":"Faroe Islands","192":"Grenada","193":"French Guiana","194":"Gibraltar","195":"Greenland","196":"Guadeloupe","198":"Guatemala","200":"Haiti","202":"Jamaica","203":"Kiribati","204":"C
1412omoros","205":"Saint Kitts and Nevis","206":"Saint Lucia","207":"Marshall Islands","208":"Macau","210":"Martinique","212":"Mauritius","213":"New Caledonia","214":"Norfolk Island","215":"Nauru","217":"Niue","219":"Papua New Guinea","221":"Pitcairn","222":"Palau","223":"Solomon Islands","225":"Svalbard and Jan Mayen Islands","227":"San Marino","232":"Tonga","233":"Timor-Leste","234":"Trinidad and Tobago","235":"Tuvalu","237":"Saint Vincent and the Grenadines","238":"Virgin Islands (U.S.)","239":"Vanuatu","241":"Mayotte","242":"Myanmar","255":"Sao Tome and Principe","257":"South Georgia and the South Sandwich Islands","260":"Tajikistan","262":"United Kingdom","268":"Costa Rica","270":"Guernsey","272":"North Korea","274":"Afghanistan","275":"Cote D'Ivoire","276":"Cuba","277":"French Polynesia","278":"Iran","279":"Iraq","281":"Libya","282":"Palestine","285":"Syria","286":"Aaland Islands","287":"Turks & Caicos Islands","288":"Jersey (Channel Islands)","289":"Dominica","290":"Montenegro","293":"Sudan","294":"Montserrat","298":"Curacao","302":"Sint Maarten","311":"South Sudan","315":"Republic of Kosovo","318":"Congo, Democratic Republic of the","323":"Isle of Man","324":"Saint Martin","325":"Bonaire, Saint Eustatius and Saba","326":"Serbia"},"defaultcountry":164},"PHONE":{"name":"PHONE","label":"Phone Number","helper_text":"","type":"phone","required":false,"audience_field_name":"Phone Number","phoneformat":"","enabled":false,"order":null,"field_type":"merge","merge_id":4},"MMERGE5":{"name":"MMERGE5","label":"Prefix","helper_text":"","type":"dropdown","required":false,"audience_field_name":"Prefix","choices":[{"value":"Dr","label":"Dr"},{"value":"Prof","label":"Prof"},{"value":"A/Prof","label":"A/Prof"},{"value":"Miss","label":"Miss"},{"value":"Ms","label":"Ms"},{"value":"Mrs","label":"Mrs"},{"value":"Mr","label":"Mr"},{"value":"Mx","label":"Mx"},{"value":"Other","label":"Other"}],"enabled":false,"order":null,"field_type":"merge","merge_id":5},"MMERGE6":{"name":"MMERGE6","label":"Discipline","helper_text":"","type":"dropdown","required":false,"audience_field_name":"Discipline","choices":[{"value":"Anatomical Pathology","label":"Anatomical Pathology"},{"value":"Chemical Pathology","label":"Chemical Pathology"},{"value":"Forensic Pathology","label":"Forensic Pathology"},{"value":"Genetic Pathology","label":"Genetic Pathology"},{"value":"Microbiology","label":"Microbiology"},{"value":"Immunopathology","label":"Immunopathology"},{"value":"General Pathology","label":"General Pathology"},{"value":"Haematology","label":"Haematology"},{"value":"Other","label":"Other"}],"enabled":false,"order":null,"field_type":"merge","merge_id":6},"MMERGE7":{"name":"MMERGE7","label":"Special interests","helper_text":"","type":"text","required":false,"audience_field_name":"Special interests","enabled":false,"order":null,"field_type":"merge","merge_id":7},"interests_62632":{"name":"interests_62632","label":"Discipline","helper_text":"","type":"select","required":false,"choices":[{"value":"1","label":"Anatomical Pathology"},{"value":"2","label":"Chemical Pathology"},{"value":"4","label":"Forensic Pathology"},{"value":"8","label":"Genetic Pathology"},{"value":"16","label":"Microbiology"},{"value":"32","label":"Immunopathology"},{"value":"64","label":"General Pathology"},{"value":"128","label":"Haematology"},{"value":"256","label":"Other"}],"audience_field_name":"Discipline","enabled":false,"order":null,"field_type":"group","group_id":62632}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; }); 1413 var isRequired = smsField ? smsField.required : false; 1414 var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true; 1415 1416 var phoneInput = document.querySelector('#mce-' + fieldName); 1417 if (phoneInput && selectedProgram.countryCallingCode && shouldAppendCountryCode) { 1418 phoneInput.value = selectedProgram.countryCallingCode; 1419 } 1420 1421 1422 updateSmsLegalText(selectedCountry, fieldName); 1423 updatePlaceholder(selectedCountry, fieldName); 1424 updateCountryCodeInstruction(selectedCountry, fieldName); 1425 }); 1426 } 1427 1428 document.addEventListener('DOMContentLoaded', function() { 1429 const smsPhoneFields = document.querySelectorAll('[id^="country-select-"]'); 1430 1431 smsPhoneFields.forEach(function(dropdown) { 1432 const fieldName = dropdown?.id.replace('country-select-', ''); 1433 initializeSmsPhoneDropdown(fieldName); 1434 }); 1435 });
1436 </script>
1436 1437
1437<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"264670e4f729453dbba22023b60c792d","r":1,"spa":2}' crossorigin="anonymous"></script>
1437 1438</body> 1439</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.