1<!doctype html> 2<html lang="en" xmlns="http://www.w3.org/1999/xhtml"> 3<head> 4 <!-- Google Tag Manager --> 5
5<script>
vendor: 341 bytes, lines 5-10
5 6 (function(w,d,s,l,i){ w[l]=w[l]||[];w[l].push({ 'gtm.start': 7 new Date().getTime(),event:'gtm.js' });var f=d.getElementsByTagName(s)[0], 8 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 9 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 10 })(window,document,'script','dataLayer','
10GTM-WFCWFLS
vendor: 5 bytes, lines 10-11
10'); 11
11</script>
11 12 <!-- End Google Tag Manager --> <title>Sign in</title> 13 <meta charset="utf-8"> 14 <meta name="description" content=""> 15 <meta name="keywords" content=""> 16 <meta property="og:locale" content="en_GB" /> 17 <meta property="og:type" content="website" /> 18 <meta property="og:title" content="Sign in" /> 19 <meta property="og:description" content="" /> 20 <meta property="og:url" content="https://bookings.watermouthcastle.com/user/login" /> 21 <meta property="og:site_name" content="" /> <meta property="og:image" content="" /> 22 <meta name="twitter:card" content="summary" /> 23 <meta name="twitter:description" content="" /> 24 <meta name="twitter:title" content="Sign in" /> 25 <meta name="twitter:site" content="" /> <meta name="twitter:creator" content="" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=5"> 26 <link rel="canonical" href="https://bookings.watermouthcastle.com/user/login" /> 27 <!-- Favicon --> 28 <link rel="icon" type="image/png" sizes="32x32" href="https://www.watermouthcastle.com/media/vnalefs3/newlogodb.png?width=32&height=32" /> 29 <link rel="icon" type="image/png" sizes="16x16" href="https://www.watermouthcastle.com/media/vnalefs3/newlogodb.png?width=16&height=16" /> 30 <link href="/common/assets/bootstrap/5.3.8/css/bootstrap.min.css" rel="stylesheet" ><link href="/common/assets/fonts/font-awesome-pro/7.1.0/css/all.min.css" rel="stylesheet" media="none" onload="if(media!='all')media='all'"> 31 32 <link href="/assets/css/style.css?cc=1785927501" rel="stylesheet" type="text/css" media="none" onload="if(media!='all')media='all'"/> 33 34 <noscript> 35 <link href="/assets/css/style.css?cc=1785927501" rel="stylesheet" type="text/css"/> 36 <link href="/common/assets/fonts/font-awesome-pro/7.1.0/css/all.min.css" rel="stylesheet" type="text/css"/> 37 </noscript> 38 39 <!-- JS --> 40
40<script src="/common/assets/js/jquery/jquery-3.7.1.min.js"></script>
40 41
41<script src="/common/assets/bootstrap/5.3.8/js/bootstrap.bundle.min.js"></script>
41 42
42<script nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0="> 43var WS_USER = "watermouthcastle"; 44var BASE_CURRENCY = "GBP"; 45var CURRENCY_STRING = "£"; 46var language = ""; 47//console.log("Including /common/assets/js/common.tpl"); 48</script>
48 49 50
51<script src="/common/assets/js/common.js?v=1783678918" nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0=" ></script>
51 52
52<script type="application/ld+json"> 53 { "@context":"http://schema.org", 54 "@type":"Organization", 55 "legalName":"", 56 "url":"", 57 "logo":"", 58 "contactPoint":[{ 59 "@type":"ContactPoint", 60 "telephone":"", 61 "contactType":"customer service" 62 }] 63 } 64</script>
64 <link rel="canonical" href="/sign-in" /> 65</head> 66 67<body id="login" class="groupLogin"> 68 <!-- Google Tag Manager (noscript) -->
vendor: 69 bytes, lines 68-69
68 69 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
69GTM-WFCWFLS
vendor: 84 bytes, lines 69-70
69" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 70
70<!-- End Google Tag Manager (noscript) --> <a href="#content" class="sr-only visually-hidden">Skip to content</a> 71 <!-- wrapper --> 72 <div id="wrapper" class="h-100 d-flex flex-column"> 73 <div id="header"> 74 <div id="headerWrap"> 75 <div id="topBar"> 76 <div class="container d-flex mb-4"> 77 </div> 78 </div> 79 <div id="headerContent"> 80 <div class="container"> 81 <nav class="navbar navbar-expand-md px-md-3 px-md-3"> 82 <a class="navbar-brand mr-auto order-1" href="https://bookings.watermouthcastle.com"> 83 <img class="headerLogo headerLogo" src="/assets/images/logo.webp" height="" width="160px" alt="" class=""> 84 </a> 85 <ul class="navbar-nav ml-auto ms-auto flex-nowrap flex-row order-2 order-md-3"> 86 <li class="nav-item"> 87 <a class="nav-link px-2 mr-2 me-2 mr-md-3 me-md-3" href="/user/my_account"><i class="fa-regular fa-user"></i></a> 88 </li> 89 <li class="nav-item"> 90 <a class="nav-link px-2 mr-2 me-2 mr-md-3 me-md-3 position-relative" href="/shop/basket"> 91 <i class="fa-regular fa-basket-shopping-simple"></i> 92 93 </a> 94 </li> 95 <li class="nav-item dropdown"> 96 <a class="dropdown-toggle btn btn-primary" href="#" role="button" data-toggle="dropdown" data-bs-toggle="dropdown" aria-expanded="false"> 97 Book now 98 </a> 99 <div class="dropdown-menu dropdown-menu-right dropdown-menu-end"> 100 <a href="/book" class="dropdown-item" href="#">Book tickets</a> 101 <a href="/booking/select-voucher-type" class="dropdown-item" href="#">Redeem vouchers</a> 102 <a href="/booking/tesco/package" class="dropdown-item">Redeem Clubcard vouchers</a> 103 </div> 104 </li> 105 </ul> 106 </nav> 107 </div> 108 </div> 109 </div> 110 </div> <!-- DEV/templates/user/login.tpl --> 111 <div id="content" class="container py-4 flex-grow-1 d-flex align-items-center justify-content-center"> 112 <div class="row justify-content-center flex-grow-1"> 113 <div class="col-12 col-sm-10 col-md-6"> 114 115 <div class="card"> 116 <div class="card-body"> 117 <h1 class="text-center"><span>Login</span></h1> 118 119 <form method="post" id="loginform" class="text-right" autocomplete="off"> 120 <input type="hidden" id="urltogoto" name="urltogoto" value="/user/my_account" /> 121 <input type="text" name="username" value="" placeholder="Username" class="form-control mb-2" required aria-label="Username" autocomplete="off"> 122 <input type="password" name="password" placeholder="Password" class="form-control mb-2" required aria-label="Password" autocomplete="off"> 123 <button type="submit" class="btn btn-primary mb-3">Login</button> 124 </form> 125 <p>Forgotten your password? <a href="/user/forgotten_password" class="linktext">Reset password</a></p> 126 <p>Create an account? <a href="/user/register" class="linktext">Click here</a></p> 127 128 129 <div class="clear"></div> 130 </div> 131 </div> 132 133 </div> 134 </div> 135 </div> 136 <style> 137 #footer #socialLinks .socialIcon{ 138 display:flex; 139 height: 40px; 140 width: 40px; 141 justify-content:center; 142 align-items:center; 143 background: var(--pink); 144 } 145 146 #footer #socialLinks .socialIcon svg{ 147 height: 18px; 148 } 149 150 #footer #socialLinks .socialIcon:hover{ 151 background: var(--white); 152 color: var(--pink); 153 } 154 155</style> 156 157<div id="footer" class="mt-auto text-center"> 158 <div id="footerWrapper"> 159 <div class="container py-5"> 160 <a href="https://www.escapadegroup.com/"><img class="footerLogo mb-5" src="/assets/images/escapade_horizontal_logo_white.png"/></a> 161 162 163 <div id="footerImages" class="pb-3"> 164 <div class="d-flex flex-column flex-md-row align-items-center justify-content-center pt-2"> 165 </div> 166 </div> 167 168 <div class=""> 169 <ul class="nav mb-5 flex-column flex-lg-row justify-content-center align-items-center"> 170 <li class="nav-item"> 171 <a class="nav-link" href="https://www.escapadegroup.com/">Escapade - Creators of Extraordinary Experiences</a> 172 </li> 173 <li class="nav-item"> 174 <a class="nav-link" href="https://www.fusemetrix.com">Powered by <img class="fmxlogo" src="/common/fmx-logos/logo-fmx-group-white.svg" height="40px" width="auto" alt="FuseMetrix Group logo"></a> 175 </li> 176 </ul> 177 </div> 178 179 180 <small class="text-center d-block">©2026 Hobbledown Limited. All Rights Reserved.</small> 181 </div> 182 </div> 183</div> 184 185 <!-- footer includes file dev/common/footer-includes.php --> 186 187 188
188<script nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0="> 189 let popups = [] 190 191 function Popup(id, members, page) { 192 this.id = id 193 this.members = members 194 this.page = page 195 } 196 //grab vars from template for checks 197 var scriptName = '/user/login.php' 198 var isMember = '' 199 200 201 const validPopup = (members, page) => { 202 let allow = true 203 204 switch(page) { 205 case 'home': 206 (scriptName == '/index.php' || scriptName == '/shop/category.php') ? null : allow = false 207 break; 208 case 'my-account': 209 scriptName == '/user/my_account.php' ? null : allow = false 210 break; 211 } 212 213 if(parseInt(members)){ 214 parseInt(isMember) ? null : allow = false 215 } 216 return allow; 217 } 218 </script>
218 219 220
220<script nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0="> 221 console.log(popups) 222 223 $('document').ready(() => { 224 //loop through the popups arr and try to fire them 225 for(let i = 0; i < popups.length; i++) { 226 let popupCookie = getCookie("popuploaded"+popups[i].id); 227 if(popupCookie == ''){ 228 //check page and member conditions 229 if(validPopup(popups[i].members, popups[i].page)) { 230 $('#sitePopup'+popups[i].id).modal('show') 231 } 232 } 233 } 234 }) 235 function setCookie(cname, cvalue, exdays) { 236 var d = new Date(); 237 d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); 238 var expires = "expires="+d.toUTCString(); 239 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 240 } 241 242 function getCookie(cname) { 243 var name = cname + "="; 244 var ca = document.cookie.split(';'); 245 for(var i = 0; i < ca.length; i++) { 246 var c = ca[i]; 247 while (c.charAt(0) == ' ') { 248 c = c.substring(1); 249 } 250 if (c.indexOf(name) == 0) { 251 return c.substring(name.length, c.length); 252 } 253 } 254 return ""; 255 } 256 </script>
256 257 258
258<script nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0="> 259 function genAlertMsg(title, msg, e = {}){ 260 e.target ? e.preventDefault() : null; 261 262 $('#genAlertModalTitle').html(title); 263 $('#genAlertModalBody').html(msg); 264 $('#genAlertModal').modal('show') 265 } 266</script>
266 267 268<div style='z-index: 1000000' id='genAlertModal' class="modal" tabindex="-1"> 269 <div class="modal-dialog"> 270 <div class="modal-content"> 271 <div class="modal-header"> 272 <h5 id='genAlertModalTitle' class="modal-title">Error</h5> 273 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 274 <span aria-hidden="true">×</span> 275 </button> 276 </div> 277 <div class="modal-body"> 278 <p id='genAlertModalBody'></p> 279 </div> 280 <div class="modal-footer"> 281 <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> 282 </div> 283 </div> 284 </div> 285</div> 286 <style> 287 #basketUpdateAlert { 288 position: fixed; 289 top: 0; 290 z-index: 99999; 291 right: 0; 292 top: 65px; 293 min-width: 350px; 294 background-color: #fff; 295 display: none; 296 } 297 #basketUpdateAlert p { 298 padding-bottom: 4px; 299 margin-bottom: 0px; 300 } 301</style> 302 303<section id='basketUpdateAlert' class='shadow p-3'> 304 <div class='d-flex align-items-center justify-content-between mb-2'> 305 <strong class='pl-3'>Added to Cart</strong> 306 <div data-action="basketUpdateAlertToggle" class="text-right font-weight-bold">×</div> 307 </div> 308 <div class='mx-auto d-flex'> 309 <div style='max-width: 100px'> 310 <img id='basketUpdateProductImage' src="" alt="placeholder image"> 311 </div> 312 <div class='pl-3'> 313 <p id='basketUpdateProductName'></p> 314 <p id='basketUpdateProductPrice'></p> 315 <p>Qty: <span id='basketUpdateProductQty'></span></p> 316 </div> 317 </div> 318 <div class='mt-2'> 319 <a href="/shop/basket" class='btn basketAlert-btn btn-primary w-100'>Checkout</a> 320 </div> 321</section> 322
323<script nonce="P5mMmLeT2PcjZBXDje9hAvOKjzVaI0BJWa8V7Fe6GQ0="> 324 $(document).on('click', '[data-action="basketUpdateAlertToggle"]', function (e) { 325 e.preventDefault(); 326 $('#basketUpdateAlert').fadeOut() 327 }); 328 329</script>
329 330 331 332</body> 333</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.