1<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"><link href="/app-icons/apple-touch-icon.png" rel="apple-touch-icon"><link href="/app-icons/apple-touch-icon-152x152.png" rel="apple-touch-icon" sizes="152x152"><link href="/app-icons/apple-touch-icon-167x167.png" rel="apple-touch-icon" sizes="167x167"><link href="/app-icons/apple-touch-icon-180x180.png" rel="apple-touch-icon" sizes="180x180"><link href="/app-icons/icon-hires.png" rel="icon" sizes="192x192"><link href="/app-icons/icon-normal.png" rel="icon" sizes="128x128"><link href="https://www.flicks.co.nz/member/login/" rel="canonical"><title>Sign in to Flicks</title><meta name="description" property="description" content="Get to your watchlist and membership"><meta name="og:site_name" property="og:site_name" content="Flicks.co.nz"><meta name="og:title" property="og:title" content="Sign in to Flicks"><meta name="og:description" property="og:description" content="Get to your watchlist and membership"><meta name="twitter:card" property="twitter:card" content="summary_large_image"><meta name="twitter:site" property="twitter:site" content="@FlicksNZ"><meta name="twitter:title" property="twitter:title" content="Sign in to Flicks"><meta name="twitter:description" property="twitter:description" content="Get to your watchlist and membership"><meta name="twitter:image" property="twitter:image" content="https://www.flicks.co.nz/img/og/flicks-og.png"><link rel="shortcut icon" href="/favicon.svg?v= 2085"><meta name="apple-itunes-app" content="app-id=338053302, affiliate-data=pt=310696&ct=smart-banner&mt=8"> 2 <link rel="alternate" hreflang="en-AU" href="https://www.flicks.com.au/member/login/"> 3 <link rel="alternate" hreflang="en-NZ" href="https://www.flicks.co.nz/member/login/"> 4 <link rel="alternate" hreflang="en-GB" href="https://www.flicks.co.uk/member/login/"> 5 <link rel="alternate" hreflang="en-US" href="https://www.flicks.us/member/login/"> 6 <link rel="alternate" hreflang="x-default" href="https://www.flicks.us/member/login/"> 7 <link rel="stylesheet" href="//use.typekit.net/xbf4ygq.css"><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap"><link rel="stylesheet" href="/styles.min.css?v=2085">
7<link rel="manifest" href="/manifest.json"><meta name="apple-mobile-web-app-status-bar-style" content="black"><meta name="apple-mobile-web-app-title" content="Flicks">
7<script>var defaultAlertCloseTime = 5000 //milli seconds 8var distance_unit = "km"; 9window.__APP_CONFIG = Object.assign({}, window.__APP_CONFIG, { 10 googleMapsApiKey: "AIzaSyA_tARuEqSbMoB7D9CPgWyWQj-Qd7DGEQA", 11 googleMapsMapId: "d95d7dbe302f43564addc05e" 12}); 13</script>
13<script>var cookie_ok = true</script>
13<script class="_iub_cs_activate" src="//www.googletagservices.com/tag/js/gpt.js" data-iub-purposes="5"></script>
13<script type="application/javascript">var ads_provider = "google" 14 15function hideTopPos() { 16 setTimeout(checkTopPosContainer,200) 17} 18function checkTopPosContainer () { 19 if (document.getElementById('div-gpt-ad-top')) { 20 document.getElementById("div-gpt-ad-top").className = "div-gpt-ad-top-hidden"; 21 document.getElementById("div-gpt-ad-top").innerHTML = ""; 22 document.getElementById("wallpaper-container").className = "page__bg-ad" 23 } else { 24 setTimeout(checkTopPosContainer, 50); //wait 50 ms, then try again 25 } 26} 27function loadTopPos(){ 28 if (document.getElementById('div-gpt-ad-top')) { 29 document.getElementById("div-gpt-ad-top").className = "div-gpt-ad-top"; 30 document.getElementById("wallpaper-container").className = "" 31 googletag.cmd.push(function() { googletag.display('div-gpt-ad-top');googletag.pubads().refresh([gptadslots[0]]); }); 32 } 33} 34 35function hideIsland() { 36 setTimeout(checkIslandContainer,200) 37} 38function checkIslandContainer () { 39 if (document.getElementById('div-gpt-ad-second')) { 40 document.getElementById("div-gpt-ad-second").className = "div-gpt-ad-second-hidden"; 41 document.getElementById("div-gpt-ad-second").innerHTML = ""; 42 } else { 43 setTimeout(checkIslandContainer, 50); //wait 50 ms, then try again 44 } 45} 46function loadIsland(){ 47 if (document.getElementById('div-gpt-ad-second')) { 48 document.getElementById("div-gpt-ad-second").className = "div-gpt-ad-second"; 49 googletag.cmd.push(function() { googletag.display('div-gpt-ad-second');googletag.pubads().refresh([gptadslots[1]]); }); 50 } 51} 52gptadslots=[]; 53 54var screenW = window.matchMedia('screen and (min-width: 971px)').matches ? 'desktop' : 'mobile'; 55 56//- (new Image()).src = "//sync.search.spotxchange.com/partner?source=229801" 57 58googletag.setConfig({ 59 targeting: {"is_home":"no","category_slug":"member"} 60}) 61</script>
61<script>if (screenW == 'desktop') { 62 googletag.cmd.push(function() { 63 gptadslots[0] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_728x90(970x250)_topPos', [[970, 250],[728, 90]], 'div-gpt-ad-top').addService(googletag.pubads()); 64 gptadslots[1] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_728x90(970x250)_secondPos', [[970, 250],[728, 90]], 'div-gpt-ad-second').addService(googletag.pubads()); 65 gptadslots[2] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_728x90(970x250)_infinitePos', [[970, 250],[728, 90]], 'div-gpt-ad-infinite').addService(googletag.pubads()); 66 gptadslots[3] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_300x600', [300, 600], 'div-gpt-ad-halfpage').addService(googletag.pubads()); 67 68 //- googletag.pubads().disableInitialLoad(); 69 70 //- googletag.pubads().addEventListener('slotRenderEnded', function(event) { 71 //- loadTopPos(); 72 //- }); 73 googletag.enableServices(); 74 }); 75} 76 77if (screenW == 'mobile') { 78 googletag.cmd.push(function() { 79 gptadslots[0] = googletag.defineSlot('/7721243/NZ_FLICKS_MOBILE_320x100', [320, 100], 'div-gpt-ad-top').addService(googletag.pubads()); 80 gptadslots[1] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_300x250_secondPos', [300, 250], 'div-gpt-ad-second').addService(googletag.pubads()); 81 gptadslots[2] = googletag.defineSlot('/7721243/NZ_FLICKS_ROS_300x250_infinitePos', [300, 250], 'div-gpt-ad-infinite').addService(googletag.pubads()); 82 gptadslots[3] = googletag.defineSlot('/7721243/NZ_FLICKS_MOBILE_FLOATER',[3, 3], 'div-gpt-ad-floater').addService(googletag.pubads()); 83 84 //- googletag.pubads().disableInitialLoad(); 85 86 //- googletag.pubads().addEventListener('slotRenderEnded', function(event) { 87 //- loadIsland(); 88 //- }); 89 googletag.enableServices(); 90 }); 91} 92</script>
92<style>.div-gpt-ad-second-hidden{visibility:hidden;} 93.div-gpt-ad-top-hidden{visibility:hidden;}</style>
93<script>
vendor: 328 bytes, lines 93-97
93(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 94new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 95j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 96'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 97})(window,document,'script','dataLayer', '
97GTM-PK47FVBM
vendor: 3 bytes, line 97
97');
97</script>
97</head><body>
vendor: 67 bytes, line 97
97<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
97GTM-PK47FVBM
vendor: 82 bytes, line 97
97" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
97<div id="svg-sprite-container" style="display:none"></div>
97<script>(function(){var c=document.getElementById('svg-sprite-container');if(c){fetch('/sprite.svg').then(function(r){return r.text()}).then(function(s){c.innerHTML=s}).catch(function(e){console.warn('Sprite load failed:',e)})}})();</script>
97<div id="wallpaper-container"><main><div><div class="user-login"><div class="container--v5 container--v5-forms"><div class="container--v5__inner"><div class="user-join__inner"><div class="user-join__flicks-logo"><a href="/"><svg><use xlink:href="#flickslogored"></use></svg></a></div><div class="heading__outer"><h1 class="cognito-title heading-1">Sign in or create an account</h1></div><p class="cognito-subtext">Members get watchlists, exclusive features, comps and rewards.</p><div class="medium-divider medium-divider--smaller-mobile"></div><form class="form form--login js-only-one-submission" action="/member/login-otp/" method="POST"><div class="form__group form__group--login"><p class="form__label">Email</p><input class="form__input" type="email" name="email" id="login-email" placeholder="[email protected]" autocomplete=" email" inputmode="email" title="Houston, we have a typo. Try that email again." required><input class="form__input-honey" type="text" name="url"><input class="form__input--hidden" type="hidden" name="source" value="web"></div><div class="form__submit-wrapper"><button class="form__submit-button" type="submit"><span class="submit-button__value">Sign in</span><span class="submit-button__spinner is-hidden"><img src="/img/white-spinner.svg"></span></button></div></form><p class="user-login__text-separator">Or do it with...</p><ul class="member-nav__socials"><li><a class="btn--social btn--social-google self" href="https://auth.weareflicks.co/oauth2/authorize?identity_provider=Google&redirect_uri=https://www.flicks.co.nz/member/sso_verify/&response_type=code&client_id=28697se2phftt6d1ppn1put4na&scope=email+openid+profile+aws.cognito.signin.user.admin&prompt=select_account"><svg><use xlink:href="#google"></use></svg><span>Google</span></a></li><li><a class="btn--social btn--social-apple self" href="https://auth.weareflicks.co/oauth2/authorize?identity_provider=SignInWithApple&redirect_uri=https://www.flicks.co.nz/member/sso_verify/&response_type=code&client_id=28697se2phftt6d1ppn1put4na&scope=email+openid+profile+aws.cognito.signin.user.admin"><svg><use xlink:href="#apple"></use></svg><span>Apple</span></a></li><li><a class="btn--social btn--social-facebook self" href="https://auth.weareflicks.co/oauth2/authorize?identity_provider=Facebook&redirect_uri=https://www.flicks.co.nz/member/sso_verify/&response_type=code&client_id=28697se2phftt6d1ppn1put4na&scope=email+openid+profile+aws.cognito.signin.user.admin"><img class="facebook-rounded" src="/img/facebook-rounded.png" alt=""><span>Facebook</span></a></li></ul><p class="join-legal">By continuing you agree to our <a href="https://go.weareflicks.co/terms">terms & conditions</a> and <a href="https://go.weareflicks.co/privacy">privacy policy</a></p><p class="join-about"><a href="https://go.weareflicks.co/membership">About Flicks membership</a> | <a href="https://go.weareflicks.co/member-changes">Weâve gone passwordless<a></p></div><div class="empty-space--full"></div></div></div></div></div></main></div><div class="modal search-nav"><div class="container"><div class="search-nav__inner"><div class="search-nav__header"><div class="search-nav__header__inner"><button class="js--closeSearchNav" title="close"><svg><use xlink:href="#arrowleft"></use></svg></button><form class="search-nav__search js--searchNavForm" action="/search/"><input type="text" name="q" placeholder="What do you want to watch?"><input class="btn btn--brick btn--brick--red" type="submit" value="Search"></form></div></div><div class="search-nav__content"><div class="js--searchNavSuggest"><div class="search-nav__content__inner search-nav__content__inner--suggestions"><div class="search-nav__top-section"><p class="search-nav__suggestions-heading">Trending</p><ul class="search-nav__trending"><li class="search-nav__trending-item"><a href="/movie/heart-of-the-beast/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260923203426-qkciHKeIybCT3IokxNtpveQ3233XAZEe_300x442.jpg" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/tv/american-horror-story-season-13/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260927203324-Md2Wdvs3eYXdxTo2unmTmQpFuuNKZsn2_300x442.png" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/movie/the-love-hypothesis/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260923203417-LcldohqTqCgEyjZaCHVwUJpyytYISe8c_300x442.webp" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/movie/resident-evil-2026/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260916215702-MEF6kBw5wMZDSuutsAaFGP4BWnRcuEUv_300x442.jpg" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/tv/mobland-season-2/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260920213150-RftIREowl1NWX7vgzWGhVkxCphWbXWR6_300x442.webp" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/movie/forgotten-island/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260916215822-4JEwXYvYXJVfq6hqRQSpjtjobetzQ8E7_300x442.jpg" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/tv/outlander-blood-of-my-blood-season-2/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260920213408-M6Y0STqYcM7HWgmxDbShOJWoV9BEzKRq_300x442.webp" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/movie/practical-magic-2/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260909213847-fTtKUU4nkVdPXoukIWauecIcYSObb5hU_300x442.webp" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/tv/slow-horses-season-6/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260916215508-LVcHnOecoea2wzChOE8HYPntD2UoQZqr_300x442.jpg" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li><li class="search-nav__trending-item"><a href="/movie/coyote-vs-acme/"><div class="search-nav__trending-skeleton"></div><img src="//d1478j0kge9vfg.cloudfront.net/homepage/20260916215849-djxw93ueLFWToPluA1g7ilkCBW4bJ8mV_300x442.jpg" loading="lazy" onload="this.closest('.search-nav__trending-item').classList.add('is-loaded')" onerror="this.closest('.search-nav__trending-item').classList.add('is-loaded')"></a></li></ul></div><div class="search-nav__bottom-scroll"><p class="search-nav__suggestions-heading">Search suggestions</p><ul class="search-nav__suggestions"><li><a href="/now-playing/">Movies in Cinemas</a></li><li><a href="/cinemas/">Cinemas</a></li><li><a href="/on-demand/">Streaming</a></li><li><a href="/sport/">Sport</a></li><li><a href="/coming-soon/">Coming Soon</a></li><li><a href="/trailers/">New Trailers</a></li><li><a href="/discover/">Opinion</a></li></ul></div></div></div><div class="search-nav__results js--searchNavResults js--addToWatchlistWrapper"></div></div></div></div></div>
97<div class="modal modal--v5 modal--opacity member-nav"><div class="modal__inner"><div class="modal__content"><button class="modal__btn-close member-nav__btn-close js--closeMemberNav" title="close"><svg><use xlink:href="#close"></use></svg></button><div class="member-nav__form member-nav__form--login member-nav__form--showing"><span class="page__header__heading">Sign in</span><div class="login-join"><p class="member-nav__sign-in-description">Get to your watchlist.</p><ul class="member-nav__socials"><li><a class="btn--social btn--social-facebook" href="/member/login/facebook?source=web"><svg><use xlink:href="#facebook"></use></svg><span>sign in with Facebook</span></a></li><li><a class="btn--social btn--social-google" href="/member/login/google?source=web"><svg><use xlink:href="#google"></use></svg><span>sign in with Google</span></a></li><li><a class="btn--social btn--social-apple" href="/member/login/apple?source=web"><svg><use xlink:href="#apple"></use></svg><span>sign in with Apple</span></a></li></ul><p class="member-nav__sign-in-title">Or sign in with your email</p><form class="member-nav__sign-in-form" action="/member/login/" method="POST"><label class="label" for="login-email">Email Address</label><input class="input-text input--block" type="email" name="email" id="login-email" placeholder="Email" required><label class="label" for="login-password">Password</label><input class="input-text input--block" type="password" id="login-password" name="password" placeholder="Password" required><input type="hidden" name="source" value="web"><input class="input-submit btn btn--brick btn--brick--red input--block" type="submit" value="Sign in"></form></div><p class="member-nav__switch-view">Donât have a Flicks account?<button class="js--memberNavFormJoin">Sign Up.</button></p><p class="member-nav__switch-view"><button class="js--memberNavFormPassword">I forgot my damn password.</button></p></div><div class="member-nav__form member-nav__form--join"><span class="page__header__heading">Join Flicks</span><div class="login-join"><p class="member-nav__sign-in-description">Keep track of the movies and show you want to see + get Flicks email updates.</p><ul class="member-nav__socials"><li><a class="btn--social btn--social-facebook" href="/member/login/facebook?source=web"><svg><use xlink:href="#facebook"></use></svg><span>sign up with Facebook</span></a></li><li><a class="btn--social btn--social-google" href="/member/login/google?source=web"><svg><use xlink:href="#google"></use></svg><span>sign up with Google</span></a></li><li><a class="btn--social btn--social-apple" href="/member/login/apple?source=web"><svg><use xlink:href="#apple"></use></svg><span>sign up with Apple</span></a></li></ul><p class="member-nav__sign-in-title">Or sign up with your email</p><form class="member-nav__sign-in-form" action="/member/join/" method="POST"><label class="label" for="join-email">Email Address</label><input class="input-text input--block" type="email" name="email" id="join-email" placeholder="Email" required><label class="label" for="join-password">Password</label><input class="input-text input--block" type="password" id="join-password" name="password" placeholder="Password" required><input type="hidden" name="source" value="web"><label class="label" for="join-full_name">Name</label><input class="input-text input--block" type="text" name="full_name" id="join-full_name" placeholder="Name"><input class="input-honey" type="text" name="url"><input class="input-submit btn btn--brick btn--brick--red input--block" type="submit" value="Sign up"><p>By signing up, you agree to our<a href="/page/termsconditions" target="_blank">terms & conditions</a>and<a href="/page/privacypolicy" target="_blank">privacy policy</a>.</p></form></div><p class="member-nav__switch-view">Already have a Flicks account?<button class="js--memberNavFormLogin">Sign in</button></p></div><div class="member-nav__form member-nav__form--password password-reset-form"><form class="form js--forgotPassword-form" action="/member/password/forgot/" method="POST"><div class="form__group form__group--member-edit"><p>Confirm below that you want to reset your password, and weâll send a link to reset it.</p><input class="form__input" type="hidden" name="email" id="forgot-email" placeholder="Email" value=""><input class="form__input" type="hidden" name="is_member" id="forgot-email-member" value="1"></div><div class="form__submit-wrapper"><input class="form__submit-button" type="submit" value="Confirm"></div></form><p class="member-nav__switch-view">
97Donât have a Flicks account?<button class="js--memberNavFormJoin">Sign Up</button></p><p class="member-nav__switch-view">Remembered your password?<button class="js--memberNavFormLogin">Sign In</button></p></div><div class="member-nav__form member-nav__form--username"><span class="page__header__heading">Your username</span><p>To post ratings/reviews we need a username. This is what will appear next to your ratings and reviews.</p><form class="member-nav__sign-in-form" action="" method="POST"><label class="label" for="username">Username</label><input class="input-text input--block" type="text" name="username" placeholder="Username"><input class="input-submit btn btn--brick btn--brick--red input--block" type="submit" value="Submit"></form><p class="member-nav__switch-view"><button class="js--memberNavFormLogin">I don't know, create one for me</button></p></div><div class="member-nav__form member-nav__form--delete delete-account-form"></div></div></div></div><div class="modal trailer-modal theme--dark"><button class="trailer-modal__close js--closeTrailer" title="close"><div class="js--closeTrailer"><svg><use xlink:href="#close"></use></svg></div></button><div class="js--loadTrailer js--addToWatchlistWrapper js--voteWrapper"></div></div><div class="modal movie-modal js-movie-modal theme--dark"><button class="movie-modal__close js--close-movie-popup" title="close"><div class="js--close-movie"><svg><use xlink:href="#close"></use></svg></div></button><div class="movie-modal__content js-movie-modal__content"></div></div><div class="modal modal--opacity js-modal" id="social-modal"><div class="modal__inner"><div class="modal__content"><button class="modal__btn-close member-nav__btn-close js--closeModal" title="close"><svg><use xlink:href="#close"></use></svg></button><span class="page__header__heading share-display padding-spacing-more-bottom">Share</span><div class="padding-spacing-more-bottom"><share-button class="share--popupTrigger"></share-button></div></div></div></div><div class="review-form"><div class="modal watchlist-popup modal--opacity"><div class="modal__inner"><div class="modal__content"><div>You have to sign in first<button class="btn btn--block btn--brick btn--brick--red review-form__submit">Sign-in</button></div></div></div></div></div><button class="js-pass-movie-data js-check-lists-status js--openModal" id="wild-flicks-watchlist-trigger" type="button" style="display:none" aria-hidden="true" tabindex="-1" data-list="movie" data-slug="" data-on="1" data-user="" data-username="" data-title="" data-modal-id="user-toggle-lists" data-preselected="watchlist"></button><div class="modal rewards-popup modal--opacity js-modal"><div class="modal__inner"><div class="modal__content"><div> <div class="left-wrapper"><button class="watchlist-btn watchlist-on-btn"><svg><use xlink:href="#watchlist-tick"></use></svg></button><span class="rewards-popup__dynamic-content"></span></div><div class="right-wrapper"><button class="modal__btn-close member-nav__btn-close js--closeReviewForm js--closeModal" title="close"><svg><use xlink:href="#close"></use></svg></button></div></div></div></div></div><div class="modal modal--v5 modal--opacity js-modal" id="social-modal-v5"><div class="modal__inner"><div class="modal__content"><button class="modal__btn-close member-nav__btn-close js--closeModal" title="close"><svg><use xlink:href="#close"></use></svg></button><div class="modal__heading">Share</div><share-button class="share--popupTrigger"></share-button></div></div></div><div class="js-times-streaming-popup streaming-popup modal modal--v5 modal--opacity js-modal" id="times-streaming-modal"><div class="modal__inner"><div class="modal__content"><button class="modal__btn-close js--closeModal" title="close"><svg><use xlink:href="#close"></use></svg></button></div><div class="thin-divider thin-divider--smaller divider--streaming-popup"></div></div></div><div class="list-notification is-hidden"><svg width="430" height="430" viewBox="0 0 430 430" fill="none" xmlns="http://www.w3.org/2000/svg"> 98 <path d="M215 0C96.2663 0 0 96.2663 0 215C0 333.734 96.2663 430 215 430C333.734 430 430 333.734 430 215C430 96.2663 333.734 0 215 0ZM197.083 304.583L107.5 209.643L132.565 184.022L196.6 250.959L314.348 125.417L340.417 150.554L197.083 304.583Z" fill="#25262B"/> 99</svg><p class="list-notification__text">Done.</p></div><!--[if lt IE 10]><div class="modal modal--opacity js-modal js--autoModal modal--displaying"><div class="modal__inner"><div class="modal__content"><h2 class="page__header__heading padding-spacing-bottom">SORRY TO SAY, FLICKS NO LONGER SUPPORTS IE9</h2><p class="padding-spacing-bottom">Please update to<a href="https://www.microsoft.com/windows/microsoft-edge" target="_blank">Microsoft Edge</a>, or another browser.</p><p class="padding-spacing-bottom">Or, if you want to stick it out with Internet Explorer, please update your browser to the latest version<span class="inline-block">(<a href="https://support.microsoft.com/help/4028118/windows-run-the-latest-version-of-internet-explorer-11" target="_blank">IE 11</a>)</span></p></div></div></div><![endif]--><div style="height: 0; overflow:hidden"><div id="div-gpt-ad-floater">
99<script class="_iub_cs_activate-inline" type="application/javascript" data-iub-purposes="5">if (screenW == 'mobile') { 100 googletag.cmd.push(function() { 101 googletag.display('div-gpt-ad-floater'); 102 googletag.pubads().refresh([gptadslots[3]]); 103 }); 104}</script>
104</div></div>
104<script src="https://unpkg.com/@trevoreyre/autocomplete-js"></script>
104<script src="https://cdn.jwplayer.com/libraries/erspRbQ1.js"></script>
vendor: 63 bytes, line 104
104<script src="https://www.google.com/recaptcha/api.js"></script>
104<script src="/main.min.js?v=2085" async></script>
104<script>(function () { 105 if (typeof window === 'undefined') return; 106 var lastSlug = null; 107 var lastList = null; 108 var lastAt = 0; 109 var username = ""; 110 111 function escapeAttr(value) { 112 return String(value || '') 113 .replace(/&/g, '&') 114 .replace(/"/g, '"') 115 .replace(/</g, '<') 116 .replace(/>/g, '>'); 117 } 118 119 function posterFallback(type, slug) { 120 return 'https://cdn.flicks.co.nz/NZ/' + type + '/' + slug + '/poster/300x442/img.jpg'; 121 } 122 123 function emptyMarkup() { 124 var link = document.querySelector('.js--wl-count-text'); 125 var href = link && link.closest('a') ? link.closest('a').getAttribute('href') : '/member/dashboard/'; 126 return '<li class="mobile-nav__watchlist-poster mobile-nav__watchlist-poster--empty">' + 127 '<a class="mobile-nav__link mobile-nav__link--secondary" href="' + escapeAttr(href) + '">' + 128 'You have nothing on your watchlist, get adding</a></li>'; 129 } 130 131 function posterMarkup(detail) { 132 var slug = String(detail.slug || ''); 133 var type = String(detail.type || 'movie'); 134 var title = String(detail.title || ''); 135 var poster = detail.poster || posterFallback(type, slug); 136 return '<li class="mobile-nav__watchlist-poster" data-wl-slug="' + escapeAttr(slug) + '">' + 137 '<a href="/' + escapeAttr(type) + '/' + escapeAttr(slug) + '/">' + 138 '<img src="' + escapeAttr(poster) + '" alt="' + escapeAttr(title) + '" loading="lazy" ' + 139 'onerror="this.onerror=null;this.src=\'/img/placeholders/poster-placeholder.jpg\';"></a></li>'; 140 } 141 142 function listPosterMarkup(detail) { 143 var slug = String(detail.slug || ''); 144 var type = String(detail.type || 'movie'); 145 var title = String(detail.title || ''); 146 var poster = detail.poster || posterFallback(type, slug); 147 return '<div class="user-list__poster" data-wl-slug="' + escapeAttr(slug) + '">' + 148 '<img src="' + escapeAttr(poster) + '" alt="' + escapeAttr(title) + '" loading="lazy" ' + 149 'onerror="this.onerror=null;this.src=\'/img/placeholders/poster-placeholder.jpg\';"></div>'; 150 } 151 152 function patchPosterLists(detail) { 153 if (!detail.slug) return; 154 document.querySelectorAll('.js--wl-posters').forEach(function (list) { 155 Array.prototype.slice.call(list.children).forEach(function (node) { 156 if (node.getAttribute('data-wl-slug') === String(detail.slug)) { 157 node.parentNode.removeChild(node); 158 } 159 }); 160 list.querySelectorAll('.mobile-nav__watchlist-poster--empty').forEach(function (node) { 161 node.parentNode.removeChild(node); 162 }); 163 if (detail.added) { 164 list.insertAdjacentHTML('afterbegin', posterMarkup(detail)); 165 } 166 while (list.children.length > 4) { 167 list.removeChild(list.lastElementChild); 168 } 169 if (!list.children.length) { 170 list.insertAdjacentHTML('beforeend', emptyMarkup()); 171 } 172 }); 173 } 174 175 function customListsHref() { 176 return username ? '/member/' + encodeURIComponent(username) + '/lists/' : '/member/dashboard/'; 177 } 178 179 function customListHref(listSlug) { 180 return username ? '/member/' + encodeURIComponent(username) + '/lists/' + encodeURIComponent(listSlug) + '/' : '/member/dashboard/'; 181 } 182 183 function ensureCustomListsSection() { 184 var section = document.querySelector('.js--wl-lists-section'); 185 if (section) return section; 186 187 var watchlistSection = document.querySelector('.js--wl-posters'); 188 watchlistSection = watchlistSection ? watchlistSection.closest('.mobile-nav__section') : null; 189 if (!watchlistSection) return null; 190 191 watchlistSection.insertAdjacentHTML('afterend', 192 '<div class="mobile-nav__section js--wl-lists-section">' + 193 '<a class="mobile-nav__link mobile-nav__link--primary mobile-nav__link--has-desc" href="' + escapeAttr(customListsHref()) + '">' + 194 '<span class="js--wl-lists-count" data-wl-list-count="1">All lists (1)</span>' + 195 '<svg class="svg-inline is-gray svg-arrow"><use xlink:href="#arrowright-white"></use></svg>' + 196 '</a>' + 197 '<div class="mobile-nav__submenu js--wl-lists-menu"></div>' + 198 '</div>' 199 ); 200 return document.querySelector('.js--wl-lists-section'); 201 } 202 203 function customListRowMarkup(detail) { 204 var list = String(detail.list || ''); 205 var name = String(detail.listName || list); 206 return '<li class="mobile-nav__submenu-item js--wl-list-row" data-wl-list="' + escapeAttr(list) + '">' + 207 '<a href="' + escapeAttr(customListHref(list)) + '" class="mobile-nav__link mobile-nav__link--secondary mobile-nav__link--all-watchlists">' + 208 '<div class="user-list__posters js--wl-list-posters" data-wl-list="' + escapeAttr(list) + '"></div>' + 209 '<span>' + escapeAttr(name) + '</span>' + 210 '</a>' + 211 '</li>'; 212 } 213 214 function updateCustomListCount(wasInserted) { 215 if (!wasInserted) return; 216 document.querySelectorAll('.js--wl-lists-count').forEach(function (node) { 217 var cur = parseInt(node.getAttribute('data-wl-list-count') || '1', 10); 218 if (isNaN(cur)) cur = 1; 219 var next = cur + 1;
220 node.setAttribute('data-wl-list-count', String(next)); 221 node.textContent = 'All lists (' + next + ')'; 222 }); 223 } 224 225 function patchCustomList(detail) { 226 var listSlug = String(detail.list || ''); 227 if (!listSlug || listSlug === 'watchlist') return; 228 229 var section = ensureCustomListsSection(); 230 if (!section) return; 231 var menu = section.querySelector('.js--wl-lists-menu'); 232 if (!menu) return; 233 234 var row = null; 235 Array.prototype.slice.call(menu.querySelectorAll('.js--wl-list-row')).some(function (node) { 236 if (node.getAttribute('data-wl-list') === listSlug) { 237 row = node; 238 return true; 239 } 240 return false; 241 }); 242 var inserted = false; 243 if (!row) { 244 menu.insertAdjacentHTML('afterbegin', customListRowMarkup(detail)); 245 row = null; 246 Array.prototype.slice.call(menu.querySelectorAll('.js--wl-list-row')).some(function (node) { 247 if (node.getAttribute('data-wl-list') === listSlug) { 248 row = node; 249 return true; 250 } 251 return false; 252 }); 253 inserted = true; 254 } 255 updateCustomListCount(inserted && detail.source === 'list-create'); 256 257 var posters = row ? row.querySelector('.js--wl-list-posters') : null; 258 if (!posters || !detail.slug) return; 259 Array.prototype.slice.call(posters.children).forEach(function (node) { 260 if (node.getAttribute('data-wl-slug') === String(detail.slug)) { 261 node.parentNode.removeChild(node); 262 } 263 }); 264 if (detail.added) { 265 posters.insertAdjacentHTML('afterbegin', listPosterMarkup(detail)); 266 } 267 while (posters.children.length > 4) { 268 posters.removeChild(posters.lastElementChild); 269 } 270 } 271 272 // Open the existing watchlist popup from a wild-flicks WC button. 273 // The WC dispatches `wild-flicks-open-watchlist` with the item's 274 // slug / type / title in detail. We update the seed trigger's 275 // data-* attrs and click it -- which reuses the same code paths 276 // an in-page watchlist button would (auth gate via data-user, 277 // list-state AJAX via .js-check-lists-status, modal open via 278 // .js--openModal). On submit the modal fires its own watchlist- 279 // changed events that the listener below picks up to sync the 280 // nav, and the WC's useWatchlist hook listens for the same 281 // event to flip card pill labels. 282 window.addEventListener('wild-flicks-open-watchlist', function (e) { 283 var detail = (e && e.detail) || {}; 284 var slug = detail.slug; 285 if (!slug) return; 286 var trigger = document.getElementById('wild-flicks-watchlist-trigger'); 287 if (!trigger) return; 288 // data-list mirrors the pug helper (always 'movie'). The 289 // modal's AJAX endpoint is slug-only -- doesn't differentiate 290 // movie vs tv. Pass type through anyway for downstream 291 // handlers that might branch on it. 292 trigger.setAttribute('data-slug', String(slug)); 293 trigger.setAttribute('data-title', String(detail.title || '')); 294 if (detail.type) trigger.setAttribute('data-content-type', String(detail.type)); 295 trigger.click(); 296 }); 297 298 window.addEventListener('wild-flicks-watchlist-changed', function (e) { 299 var detail = (e && e.detail) || {}; 300 var slug = detail.slug || null; 301 var list = detail.list || (detail.source === 'toggle' ? 'watchlist' : null); 302 var added = !!detail.added; 303 // De-dupe: WC fires for both toggle + list-edit on the same 304 // gesture in some flows; ignore a second event for the same 305 // slug within 1.5s of the first. 306 var now = Date.now(); 307 if (slug && slug === lastSlug && list === lastList && now - lastAt < 1500) return; 308 lastSlug = slug; 309 lastList = list; 310 lastAt = now; 311 if (list === 'watchlist') { 312 var nodes = document.querySelectorAll('.js--wl-count-text'); 313 nodes.forEach(function (node) { 314 var cur = parseInt(node.getAttribute('data-wl-count') || '0', 10); 315 if (isNaN(cur)) cur = 0; 316 var next = Math.max(0, cur + (added ? 1 : -1)); 317 node.setAttribute('data-wl-count', String(next)); 318 // Replace the trailing "(N)" â preserves whatever label 319 // precedes it ("Watchlist", "Your watchlist", etc.). 320 node.textContent = node.textContent.replace(/\(\d+\)/, '(' + next + ')'); 321 }); 322 patchPosterLists(detail); 323 } else { 324 patchCustomList(detail); 325 } 326 }); 327})();</script>
327<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":"dbf5459867994a9a8e495779b4d58c42","spa":2}' crossorigin="anonymous"></script>
327 328</body></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.