CINXE.COM

Festival Programmes - 35th SGIFF 2024

<!DOCTYPE html> <html dir="ltr" lang="en-US" prefix="og: https://ogp.me/ns#"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width" /> <title>Festival Programmes - 35th SGIFF 2024</title> <meta name="description" content="With over 100 films from more than 40 countries, SGIFF warmly invites you to its 35th edition, taking place from 28 November to 8 December 2024." /> <meta name="robots" content="max-image-preview:large" /> <link rel="canonical" href="https://sgiff.com/festival-programmes/" /> <meta property="og:locale" content="en_US" /> <meta property="og:site_name" content="SGIFF - Singapore International Film Festival" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Festival Programmes - 35th SGIFF 2024" /> <meta property="og:description" content="With over 100 films from more than 40 countries, SGIFF warmly invites you to its 35th edition, taking place from 28 November to 8 December 2024." /> <meta property="og:url" content="https://sgiff.com/festival-programmes/" /> <meta property="article:published_time" content="2023-10-20T05:19:53+00:00" /> <meta property="article:modified_time" content="2024-10-28T03:49:36+00:00" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Festival Programmes - 35th SGIFF 2024" /> <meta name="twitter:description" content="With over 100 films from more than 40 countries, SGIFF warmly invites you to its 35th edition, taking place from 28 November to 8 December 2024." /> <script type="application/ld+json" class="aioseo-schema"> {"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/sgiff.com\/festival-programmes\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/sgiff.com\/#listItem","position":1,"item":{"@type":"WebPage","@id":"https:\/\/sgiff.com\/","name":"Home","description":"Thank you for being part of the 35th SGIFF during 28 November to 8 December 2024! We'll see you for the 36th edition in 2025.","url":"https:\/\/sgiff.com\/"},"nextItem":"https:\/\/sgiff.com\/festival-programmes\/#listItem"},{"@type":"ListItem","@id":"https:\/\/sgiff.com\/festival-programmes\/#listItem","position":2,"item":{"@type":"WebPage","@id":"https:\/\/sgiff.com\/festival-programmes\/","name":"Experiencing the Festival","description":"With over 100 films from more than 40 countries, SGIFF warmly invites you to its 35th edition, taking place from 28 November to 8 December 2024.","url":"https:\/\/sgiff.com\/festival-programmes\/"},"previousItem":"https:\/\/sgiff.com\/#listItem"}]},{"@type":"Organization","@id":"https:\/\/sgiff.com\/#organization","name":"Singapore International Film Festival","url":"https:\/\/sgiff.com\/"},{"@type":"WebPage","@id":"https:\/\/sgiff.com\/festival-programmes\/#webpage","url":"https:\/\/sgiff.com\/festival-programmes\/","name":"Festival Programmes - 35th SGIFF 2024","description":"With over 100 films from more than 40 countries, SGIFF warmly invites you to its 35th edition, taking place from 28 November to 8 December 2024.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/sgiff.com\/#website"},"breadcrumb":{"@id":"https:\/\/sgiff.com\/festival-programmes\/#breadcrumblist"},"datePublished":"2023-10-20T05:19:53+08:00","dateModified":"2024-10-28T03:49:36+08:00"},{"@type":"WebSite","@id":"https:\/\/sgiff.com\/#website","url":"https:\/\/sgiff.com\/","name":"sgiff2023","description":"Singapore International Film Festival","inLanguage":"en-US","publisher":{"@id":"https:\/\/sgiff.com\/#organization"}}]} </script> <script src="//www.googletagmanager.com/gtag/js?id=G-6GH97XYL34" data-cfasync="false" data-wpfc-render="false" type="text/javascript" async></script> <script data-cfasync="false" data-wpfc-render="false" type="text/javascript"> var mi_version = '8.20.1'; var mi_track_user = true; var mi_no_track_reason = ''; var disableStrs = [ 'ga-disable-G-6GH97XYL34', ]; /* Function to detect opted out users */ function __gtagTrackerIsOptedOut() { for (var index = 0; index < disableStrs.length; index++) { if (document.cookie.indexOf(disableStrs[index] + '=true') > -1) { return true; } } return false; } /* Disable tracking if the opt-out cookie exists. */ if (__gtagTrackerIsOptedOut()) { for (var index = 0; index < disableStrs.length; index++) { window[disableStrs[index]] = true; } } /* Opt-out function */ function __gtagTrackerOptout() { for (var index = 0; index < disableStrs.length; index++) { document.cookie = disableStrs[index] + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/'; window[disableStrs[index]] = true; } } if ('undefined' === typeof gaOptout) { function gaOptout() { __gtagTrackerOptout(); } } window.dataLayer = window.dataLayer || []; window.MonsterInsightsDualTracker = { helpers: {}, trackers: {}, }; if (mi_track_user) { function __gtagDataLayer() { dataLayer.push(arguments); } function __gtagTracker(type, name, parameters) { if (!parameters) { parameters = {}; } if (parameters.send_to) { __gtagDataLayer.apply(null, arguments); return; } if (type === 'event') { parameters.send_to = monsterinsights_frontend.v4_id; var hookName = name; if (typeof parameters['event_category'] !== 'undefined') { hookName = parameters['event_category'] + ':' + name; } if (typeof MonsterInsightsDualTracker.trackers[hookName] !== 'undefined') { MonsterInsightsDualTracker.trackers[hookName](parameters); } else { __gtagDataLayer('event', name, parameters); } } else { __gtagDataLayer.apply(null, arguments); } } __gtagTracker('js', new Date()); __gtagTracker('set', { 'developer_id.dZGIzZG': true, }); __gtagTracker('config', 'G-6GH97XYL34', {"forceSSL":"true","link_attribution":"true"} ); window.gtag = __gtagTracker; (function () { /* https://developers.google.com/analytics/devguides/collection/analyticsjs/ */ /* ga and __gaTracker compatibility shim. */ var noopfn = function () { return null; }; var newtracker = function () { return new Tracker(); }; var Tracker = function () { return null; }; var p = Tracker.prototype; p.get = noopfn; p.set = noopfn; p.send = function () { var args = Array.prototype.slice.call(arguments); args.unshift('send'); __gaTracker.apply(null, args); }; var __gaTracker = function () { var len = arguments.length; if (len === 0) { return; } var f = arguments[len - 1]; if (typeof f !== 'object' || f === null || typeof f.hitCallback !== 'function') { if ('send' === arguments[0]) { var hitConverted, hitObject = false, action; if ('event' === arguments[1]) { if ('undefined' !== typeof arguments[3]) { hitObject = { 'eventAction': arguments[3], 'eventCategory': arguments[2], 'eventLabel': arguments[4], 'value': arguments[5] ? arguments[5] : 1, } } } if ('pageview' === arguments[1]) { if ('undefined' !== typeof arguments[2]) { hitObject = { 'eventAction': 'page_view', 'page_path': arguments[2], } } } if (typeof arguments[2] === 'object') { hitObject = arguments[2]; } if (typeof arguments[5] === 'object') { Object.assign(hitObject, arguments[5]); } if ('undefined' !== typeof arguments[1].hitType) { hitObject = arguments[1]; if ('pageview' === hitObject.hitType) { hitObject.eventAction = 'page_view'; } } if (hitObject) { action = 'timing' === arguments[1].hitType ? 'timing_complete' : hitObject.eventAction; hitConverted = mapArgs(hitObject); __gtagTracker('event', action, hitConverted); } } return; } function mapArgs(args) { var arg, hit = {}; var gaMap = { 'eventCategory': 'event_category', 'eventAction': 'event_action', 'eventLabel': 'event_label', 'eventValue': 'event_value', 'nonInteraction': 'non_interaction', 'timingCategory': 'event_category', 'timingVar': 'name', 'timingValue': 'value', 'timingLabel': 'event_label', 'page': 'page_path', 'location': 'page_location', 'title': 'page_title', }; for (arg in args) { if (!(!args.hasOwnProperty(arg) || !gaMap.hasOwnProperty(arg))) { hit[gaMap[arg]] = args[arg]; } else { hit[arg] = args[arg]; } } return hit; } try { f.hitCallback(); } catch (ex) { } }; __gaTracker.create = newtracker; __gaTracker.getByName = newtracker; __gaTracker.getAll = function () { return []; }; __gaTracker.remove = noopfn; __gaTracker.loaded = true; window['__gaTracker'] = __gaTracker; })(); } else { console.log(""); (function () { function __gtagTracker() { return null; } window['__gtagTracker'] = __gtagTracker; window['gtag'] = __gtagTracker; })(); } </script> <link rel='stylesheet' id='wpacu-combined-css-head-1' href='https://sgiff.com/wp-content/cache/asset-cleanup/css/head-5e6aa128297109bac98b89dc13862d11132545b9.css' type='text/css' media='all' /> <script type="text/javascript" src="https://sgiff.com/wp-content/plugins/google-analytics-for-wordpress/assets/js/frontend-gtag.min.js?ver=8.20.1" id="monsterinsights-frontend-script-js"></script> <script data-cfasync="false" data-wpfc-render="false" type="text/javascript" id='monsterinsights-frontend-script-js-extra'>/* <![CDATA[ */ var monsterinsights_frontend = {"js_events_tracking":"true","download_extensions":"doc,pdf,ppt,zip,xls,docx,pptx,xlsx","inbound_paths":"[{\"path\":\"\\\/go\\\/\",\"label\":\"affiliate\"},{\"path\":\"\\\/recommend\\\/\",\"label\":\"affiliate\"}]","home_url":"https:\/\/sgiff.com","hash_tracking":"false","v4_id":"G-6GH97XYL34"};/* ]]> */ </script> <script type="text/javascript" src="https://sgiff.com/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://sgiff.com/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <link rel="https://api.w.org/" href="https://sgiff.com/wp-json/" /><link rel="alternate" type="application/json" href="https://sgiff.com/wp-json/wp/v2/pages/1938" /> <script> ( function() { window.onpageshow = function( event ) { // Defined window.wpforms means that a form exists on a page. // If so and back/forward button has been clicked, // force reload a page to prevent the submit button state stuck. if ( typeof window.wpforms !== 'undefined' && event.persisted ) { window.location.reload(); } }; }() ); </script> <link rel="icon" href="https://sgiff.com/wp-content/uploads/2024/10/cropped-favicon-2024-2-32x32.jpg" sizes="32x32" /> <link rel="icon" href="https://sgiff.com/wp-content/uploads/2024/10/cropped-favicon-2024-2-192x192.jpg" sizes="192x192" /> <link rel="apple-touch-icon" href="https://sgiff.com/wp-content/uploads/2024/10/cropped-favicon-2024-2-180x180.jpg" /> <meta name="msapplication-TileImage" content="https://sgiff.com/wp-content/uploads/2024/10/cropped-favicon-2024-2-270x270.jpg" /> <style id="wpforms-css-vars-root"> :root { --wpforms-field-border-radius: 3px; --wpforms-field-border-style: solid; --wpforms-field-border-size: 1px; --wpforms-field-background-color: #ffffff; --wpforms-field-border-color: rgba( 0, 0, 0, 0.25 ); --wpforms-field-border-color-spare: rgba( 0, 0, 0, 0.25 ); --wpforms-field-text-color: rgba( 0, 0, 0, 0.7 ); --wpforms-field-menu-color: #ffffff; --wpforms-label-color: rgba( 0, 0, 0, 0.85 ); --wpforms-label-sublabel-color: rgba( 0, 0, 0, 0.55 ); --wpforms-label-error-color: #d63637; --wpforms-button-border-radius: 3px; --wpforms-button-border-style: none; --wpforms-button-border-size: 1px; --wpforms-button-background-color: #066aab; --wpforms-button-border-color: #066aab; --wpforms-button-text-color: #ffffff; --wpforms-page-break-color: #066aab; --wpforms-background-image: none; --wpforms-background-position: center center; --wpforms-background-repeat: no-repeat; --wpforms-background-size: cover; --wpforms-background-width: 100px; --wpforms-background-height: 100px; --wpforms-background-color: rgba( 0, 0, 0, 0 ); --wpforms-background-url: none; --wpforms-container-padding: 0px; --wpforms-container-border-style: none; --wpforms-container-border-width: 1px; --wpforms-container-border-color: #000000; --wpforms-container-border-radius: 3px; --wpforms-field-size-input-height: 43px; --wpforms-field-size-input-spacing: 15px; --wpforms-field-size-font-size: 16px; --wpforms-field-size-line-height: 19px; --wpforms-field-size-padding-h: 14px; --wpforms-field-size-checkbox-size: 16px; --wpforms-field-size-sublabel-spacing: 5px; --wpforms-field-size-icon-size: 1; --wpforms-label-size-font-size: 16px; --wpforms-label-size-line-height: 19px; --wpforms-label-size-sublabel-font-size: 14px; --wpforms-label-size-sublabel-line-height: 17px; --wpforms-button-size-font-size: 17px; --wpforms-button-size-height: 41px; --wpforms-button-size-padding-h: 15px; --wpforms-button-size-margin-top: 10px; --wpforms-container-shadow-size-box-shadow: none; } </style> <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=Lexend+Deca:wght@300;400;600&display=swap" rel="stylesheet"> <link href="https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,300;1,300&family=Space+Grotesk&display=swap" rel="stylesheet"> <meta name="google-site-verification" content="z7FQVCqYTycvymjnqsJURg-A1jmjmnSMf0UcPQmuFIg" /> </head> <body> <header> <div> <section class="c__sitelogo"> <div> <input type="checkbox" id="id_hamburger"> <figure> <a href="https://sgiff.com/"><img src="https://sgiff.com/wp-content/uploads/2024/10/sgifflogo2.svg"></a> </figure> <section class="c__navon"> <div> <div class="s_primarydesktop"> <nav> <ul> <li> <input type="radio" id="id_col_1" name="nav_radio"> <label for="id_col_1">About Us</label> <div class="s_list v_desktopfull"> <ul> <li> <input type="checkbox" id="id_col_1_1"> <label for="id_col_1_1">About Us</label> <ul> <li> <a href="/about-sgiff/" target="">About SGIFF</a> </li> <li> <a href="/festival-team/" target="">Festival Team</a> </li> <li> <a href="/board-committee-members/" target="">Board &amp; Committee Members</a> </li> <li> <a href="/past-edition/" target="">Past Editions</a> </li> <li> <a href="/press-office/" target="">Press Office</a> </li> <li> <a href="/financial-results/" target="">Financial Results</a> </li> </ul> </li> <li> <input type="checkbox" id="id_col_1_2"> <label for="id_col_1_2">Join Us</label> <ul> <li> <a href="/join-sgiff/" target="">Join SGIFF</a> </li> <li> <a href="/volunteer/" target="">Volunteer at SGIFF</a> </li> </ul> </li> <li> <input type="checkbox" id="id_col_1_3"> <label for="id_col_1_3">Education</label> <ul> <li> <a href="/film-immersion-programme/" target="">Film Immersion Programme</a> </li> <li> <a href="/nac-arts-education-programme/" target="">NAC – Arts Education Programme</a> </li> </ul> </li> </ul> </div> </li> <li> <input type="radio" id="id_col_2" name="nav_radio"> <label for="id_col_2">SGIFF Pro</label> <div class="s_list "> <ul> <li> <input type="checkbox" id="id_col_2_1"> <label for="id_col_2_1">Programmes</label> <ul> <li> <a href="/sgiff-pro/" target="">About SGIFF Pro</a> </li> <li> <a href="/sgiff-film-fund/" target="">SGIFF Film Fund 2025</a> </li> <li> <a href="/industry-days/" target="">SGIFF Industry Days</a> </li> <li> <a href="/asian-producers-network/" target="">Asian Producers Network</a> </li> <li> <a href="/film-academy-alumni/" target="">Film Academy Alumni</a> </li> </ul> </li> </ul> </div> </li> <li> <input type="radio" id="id_col_3" name="nav_radio"> <label for="id_col_3">Support</label> <div class="s_list "> <ul> <li> <input type="checkbox" id="id_col_3_1"> <label for="id_col_3_1">Support</label> <ul> <li> <a href="https://donate.sgiff.com/" target="_blank">Donate</a> </li> <li> <a href="/donate/" target="">Be An SGIFFriend</a> </li> <li> <a href="/volunteer/" target="">Volunteer</a> </li> </ul> </li> </ul> </div> </li> <li> <input type="radio" id="id_col_4" name="nav_radio"> <label for="id_col_4">Festival</label> <div class="s_list v_desktopfull"> <ul> <li> <input type="checkbox" id="id_col_4_1"> <label for="id_col_4_1">Explore the Festival</label> <ul> <li> <a href="https://sgiff.com/wp-content/uploads/2025/01/35th-SGIFF-Festival-Guide_Digital-compressed.pdf" target="_blank">Download Guide</a> </li> <li> <a href="/explore-films/" target="">Explore Films</a> </li> <li> <a href="/festival-programmes/" target="">Festival Sections</a> </li> <li> <a href="/forums-events/" target="">Forums &amp; Events</a> </li> <li> <a href="/festival-ambassador/" target="">Festival Ambassador</a> </li> <li> <a href="/festival-passes/" target="">Festival Passes</a> </li> </ul> </li> <li> <input type="checkbox" id="id_col_4_2"> <label for="id_col_4_2">Awards</label> <ul> <li> <a href="/about-silver-screen-awards/" target="">About Silver Screen Awards</a> </li> <li> <a href="https://sgiff.com/silver-screen-awards/" target="">Silver Screen Award Winners</a> </li> <li> <a href="/competition-jury/" target="">Silver Screen Awards Jury</a> </li> <li> <a href="/cinema-honorary-award/" target="">Cinema Honorary Award</a> </li> <li> <a href="/screen-icon-award/" target="">Screen Icon Award</a> </li> <li> <a href="/outstanding-contribution-to-southeast-asian-cinema-award/" target="">Outstanding Contribution to Southeast Asian Cinema Award</a> </li> </ul> </li> <li> <input type="checkbox" id="id_col_4_3"> <label for="id_col_4_3">More Information</label> <ul> <li> <a href="https://sgiff.com/merchandise/" target="">Shop Merchandise</a> </li> <li> <a href="/donate/" target="">SGIFFriends Pass</a> </li> <li> <a href="/festival-passes/" target="">Industry Pass</a> </li> <li> <a href="/cinephile-pass/" target="">Cinephile Pass</a> </li> <li> <a href="/ticketing/" target="">Ticketing</a> </li> <li> <a href="https://sgiff.com/promotions/" target="">Ticket Rewards</a> </li> <li> <a href="/how-to-fest/" target="">How to Fest</a> </li> <li> <a href="/sponsors/" target="">Sponsors</a> </li> <li> <a href="/faq/" target="">FAQs</a> </li> </ul> </li> </ul> </div> </li> </ul> </nav> </div> </div> </section> <div class="s_hamburger"> <label for="id_hamburger"></label> </div> </div> </section> </div> </header> <main class="p__page"> <div> <section class="c__pagetitle"> <div> <div class="s_header v_cols"> <h1>Experiencing the Festival</h1> <div class="s_content"><p>The Singapore International Film Festival (SGIFF) warmly invites you to return to the cinemas for its 35th edition, taking place from 28 November to 8 December 2024. This edition showcases a diverse and inclusive selection of 105 films by filmmakers from 45 countries. Each carefully chosen film evokes memories and emotions while sparking meaningful conversations, celebrating the enduring power of film and storytelling across our cinematic landscape.</p> </div> </div> </div> </section> <section class="c__statictab"> <div> <div class="s_header"> <h2>Festival Sections</h2> </div> <div class="s_content v_outline"> <section class="c__filmpreview"> <div> <figure> <a href="/film/7023/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/stranger-eyes-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://sgiff.com/wp-content/uploads/2024/10/stranger-eyes-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/stranger-eyes-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/stranger-eyes-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="/film/7023/"> <p><span class="u__iconarrowup"></span> Stranger Eyes</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="/film/7023/"> Festival Opening </a> </h3> <p>In <em>Stranger Eyes</em>, the fear and desire of being watched conjure new realisations in this mystery thriller that follows an estranged couple and their stalker.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/asian-feature-film-competition/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/mongrel-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/mongrel-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/mongrel-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/mongrel-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/asian-feature-film-competition/"> <p><span class="u__iconarrowup"></span> Mongrel</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/asian-feature-film-competition/"> Asian Feature Film Competition </a> </h3> <p>Experience bold new cinematic visions by emerging Asian directors debuting their first to third feature films. These nine films collectively capture the vibrant pulse of Asian cinema today.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/southeast-asian-short-film-competition/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/sighnight-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/sighnight-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/sighnight-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/sighnight-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/southeast-asian-short-film-competition/"> <p><span class="u__iconarrowup"></span> sighnight</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/southeast-asian-short-film-competition/"> Southeast Asian Short Film Competition </a> </h3> <p>The Southeast Asian Short Film Competition highlights the best short cinematic gems from the region. This year’s selection presents 24 films across five programmes. </p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/singapore-panorama/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/dragon-head-phoenix-tail-brow-filmStill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/dragon-head-phoenix-tail-brow-filmStill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/dragon-head-phoenix-tail-brow-filmStill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/dragon-head-phoenix-tail-brow-filmStill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/singapore-panorama/"> <p><span class="u__iconarrowup"></span> Dragon Head Phoenix Tail Brow</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/singapore-panorama/"> Singapore Panorama </a> </h3> <p>With its unwavering focus on local cinema, Singapore Panorama presents a selection of the latest short films from both emerging and established Singapore filmmakers.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/standpoint/"> <img width="1920" height="1080" src="https://sgiff.com/wp-content/uploads/2024/10/TOW.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/TOW.jpg 1920w, https://sgiff.com/wp-content/uploads/2024/10/TOW-300x169.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/TOW-1024x576.jpg 1024w" sizes="(max-width: 1920px) 100vw, 1920px" /> </a> <a href="https://sgiff.com/festival-programmes/standpoint/"> <p><span class="u__iconarrowup"></span> Until the Orchid Blooms</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/standpoint/"> Standpoint </a> </h3> <p>The personal and the sociopolitical are intertwined in profoundly compelling ways. The 10 films in this section plunge headfirst into today’s most hotly debated issues alongside stories of deeply personal struggles.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/undercurrent/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/melting-fire-iceman-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/melting-fire-iceman-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/melting-fire-iceman-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/melting-fire-iceman-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/undercurrent/"> <p><span class="u__iconarrowup"></span> Melting Fire Iceman</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/undercurrent/"> Undercurrent </a> </h3> <p>Tracing uncharted territories in cinema, Undercurrent taps into the audacious innovations of experimental filmmaking today and invites you to explore the art form's limitless possibilities with 13 moving image works. </p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/horizon/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/spirit-world-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/spirit-world-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/spirit-world-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/spirit-world-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/horizon/"> <p><span class="u__iconarrowup"></span> Spirit World</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/horizon/"> Horizon </a> </h3> <p>Horizon offers a bird's-eye view of world cinema today, showcasing 14 diverse filmic discoveries and celebrated works from the international film festival circuit, each expanding our horizons a little further.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/foreground/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/dont-cry-butterfly-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/dont-cry-butterfly-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/dont-cry-butterfly-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/dont-cry-butterfly-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/foreground/"> <p><span class="u__iconarrowup"></span> Don&#8217;t Cry, Butterfly</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/foreground/"> Foreground </a> </h3> <p>From inventive plot twists to fascinating character studies, Foreground highlights 12 captivating, genre-driven films that celebrate the essence of popular cinema and its significance to audiences today. </p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="https://sgiff.com/festival-programmes/landmark/"> <img width="1600" height="875" src="https://sgiff.com/wp-content/uploads/2024/10/stars-in-broad-daylight-filmstill-2024.jpg" class="attachment-full size-full wp-post-image" alt="" decoding="async" srcset="https://sgiff.com/wp-content/uploads/2024/10/stars-in-broad-daylight-filmstill-2024.jpg 1600w, https://sgiff.com/wp-content/uploads/2024/10/stars-in-broad-daylight-filmstill-2024-300x164.jpg 300w, https://sgiff.com/wp-content/uploads/2024/10/stars-in-broad-daylight-filmstill-2024-1024x560.jpg 1024w" sizes="(max-width: 1600px) 100vw, 1600px" /> </a> <a href="https://sgiff.com/festival-programmes/landmark/"> <p><span class="u__iconarrowup"></span> Stars in Broad Daylight</p> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="https://sgiff.com/festival-programmes/landmark/"> Landmark </a> </h3> <p>Co-curated with the Asian Film Archive, Landmark showcases recent restorations of classic films from the 1970s to the 2000s, with a special focus on Jafar Panahi this year.</p> </div> </div> </div> </section> <section class="c__filmpreview"> <div> <figure> <a href="/domain/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/domain-gv-yishun.jpg"> </a> </figure> <div class="s_content"> <div class="s_filminfo"> <h3> <a href="/domain/"> Domain </a> </h3> <p>Domain seeks to expand our collective sphere of knowledge, deepening our engagement with cinema through thoughtful curatorial interventions. This edition introduces <em>Dwellings</em>, a series of short videos that revisit bygone or forgotten screening spaces in Singapore using archival materials.</p> </div> </div> </div> </section> </div> </div> </section> </div> </main> <footer> <div> <section class="c__mailinglist"> <div> <div class="s_mailchimp"> <div class="s_desc"> <h3>Join Our Mailing List</h3> <p>Sign up to receive updates and reminders for films screening and more.</p> </div> <div id="mc_embed_signup" class="s_mailinglist"> <form action="https://sgiff.us9.list-manage.com/subscribe/post?u=dc7c0c2224dc610b163401830&amp;id=f0d8f7922a&amp;f_id=007815e1f0" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate="novalidate"> <div id="mc_embed_signup_scroll"> <div class="mc-field-group"> <input type="text" value="" name="FNAME" class="required" id="mce-FNAME" aria-required="true" required> <label>Name</label> </div> <div class="mc-field-group"> <input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL" aria-required="true" required> <label>Email</label> </div> <div class="mc-checkbox-group"> <label for="id_subscribecheckbox"> By subscribing, you consent to receive marketing updates and other news from Singapore International Film Festival and its affiliates under the Infocomm Media Development Authority. </label> </div> <div id="mce-responses" class="clear foot"> <div class="response" id="mce-error-response" style="display:none"></div> <div class="response" id="mce-success-response" style="display:none"></div> </div> <div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_ddf4ac8cbb3ab4edaba74473f_542df749b1" tabindex="-1" value=""></div> <div class="clear u__ctabtn"><input type="submit" value="SIGN UP" name="subscribe" id="mc-embedded-subscribe" class="button"></div> </div> </form> </div> <script type="text/javascript" src="https://s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js"></script> <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] = 'MMERGE3'; ftypes[3] = 'url'; }(jQuery)); var $mcj = jQuery.noConflict(true); </script> </div> </div> </section> <section class="c__footerlogos"> <div> <article class="swiper s_footerlogos"> <div class="swiper-wrapper s_logos"> <div class="swiper-slide s_logo"> <figure> <a href="https://www.imda.gov.sg/activities/activities-catalogue/singapore-media-festival"> <img src="https://sgiff.com/wp-content/uploads/2024/10/Singapore-Media-Festival.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.imda.gov.sg/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-imda-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://mochachailab.com/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-mochachai-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.showtecgroup.com/site/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-offical-showtec-filmgear.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href=""> <img src="https://sgiff.com/wp-content/uploads/2024/10/Web-79.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://all.accor.com/hotel/6657/index.en.shtml?utm_source=google&amp;utm_medium=cpc&amp;utm_campaign=ppc-ibi-mar-goo-sg-en-sg-exa-sear-sg&amp;utm_term=mar&amp;utm_content=sg-en-SG-V5579&amp;gad_source=1&amp;gclid=CjwKCAiArfauBhApEiwAeoB7qDhscni8TqedFiN2IvDGsjAbHefS56gC6Bnd9Q96jrwbw3XPsmaeThoCEzsQAvD_BwE"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-ibis-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.turkishairlines.com/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-turkishnew.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://asianfilmarchive.org/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-asian.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.ntu.edu.sg/wkwsci"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-festival-ntu-chinese-humanities-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.scape.sg/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-festival-scape-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href=""> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-tek.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.lasalle.edu.sg/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-uas.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href=""> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-pro-partners-sony.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://whitelightpost.com/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-whitelight-1.png"> </a> </figure> </div> <div class="swiper-slide s_logo"> <figure> <a href="https://www.winnslavin.com/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/logo-pro-partners-winn-slavin-1.png"> </a> </figure> </div> </div> </article> </div> </section> <section class="c__footernav"> <div> <nav class="s_navigation"> <div class="s_nav v_defaulton"> <input type="checkbox" id="id_nav0" checked> <label for="id_nav0">About The Festival<span class="u__iconarrowup"></span></label> <ul> <li> <a href="/about-sgiff/"> About SGIFF </a> </li> <li> <a href="/festival-team/"> Festival Team </a> </li> <li> <a href="/board-committee-members/"> Board &amp; Committee Members </a> </li> <li> <a href="/past-edition/"> Past Editions </a> </li> <li> <a href="/press-office/"> Press Office </a> </li> <li> <a href="/financial-results/"> Financial Results </a> </li> <li> <a href="/join-sgiff/"> Join SGIFF </a> </li> <li> <a href="/volunteer/"> Volunteer at SGIFF </a> </li> <li> <a href="/film-immersion-programme/"> Film Immersion Programme </a> </li> <li> <a href="/nac-arts-education-programme/"> NAC – Arts Education Programme </a> </li> </ul> </div> <div class="s_nav"> <input type="checkbox" id="id_nav1" checked> <label for="id_nav1">SGIFF Pro<span class="u__iconarrowup"></span></label> <ul> <li> <a href="/sgiff-pro/"> About SGIFF Pro </a> </li> <li> <a href="/sgiff-film-fund/"> SGIFF Film Fund 2025 </a> </li> <li> <a href="/industry-days/"> SGIFF Industry Days </a> </li> <li> <a href="/asian-producers-network/"> Asian Producers Network </a> </li> <li> <a href="/film-academy-alumni/"> Film Academy Alumni </a> </li> </ul> </div> <div class="s_nav"> <input type="checkbox" id="id_nav2" checked> <label for="id_nav2">Support SGIFF<span class="u__iconarrowup"></span></label> <ul> <li> <a href="https://donate.sgiff.com/"> Donate </a> </li> <li> <a href="/donate/"> Be an SGIFFriend </a> </li> <li> <a href="/volunteer/"> Volunteer </a> </li> </ul> </div> <div class="s_nav"> <input type="checkbox" id="id_nav3" checked> <label for="id_nav3">Festival<span class="u__iconarrowup"></span></label> <ul> <li> <a href="https://sgiff.com/wp-content/uploads/2025/01/35th-SGIFF-Festival-Guide_Digital-compressed.pdf"> Download Guide </a> </li> <li> <a href="/explore-films/"> Explore Films </a> </li> <li> <a href="/festival-programmes/"> Festival Sections </a> </li> <li> <a href="/forums-events/"> Forums &amp; Events </a> </li> <li> <a href="/festival-ambassador/"> Festival Ambassador </a> </li> <li> <a href="/festival-passes/"> Festival Passes </a> </li> <li> <a href="https://sgiff.com/merchandise/"> Shop Merchandise </a> </li> <li> <a href="/ticketing/"> Ticketing </a> </li> <li> <a href="https://sgiff.com/promotions/"> Ticket Rewards Programme </a> </li> <li> <a href="/how-to-fest/"> How to Fest </a> </li> <li> <a href="/sponsors/"> Sponsors </a> </li> <li> <a href="/faq/"> FAQs </a> </li> </ul> </div> </nav> </div> </section> <section class="c__socialfooter"> <div> <label>CONNECT WITH US</label> <nav class="s_icons"> <ul> <li> <a href="https://www.facebook.com/sginternationalfilmfestival/"> <img src="https://sgiff.com/wp-content/uploads/2024/10/icon-facebook.svg" alt=""> </a> </li> <li> <a href="https://twitter.com/SGIFFest"> <img src="https://sgiff.com/wp-content/uploads/2024/10/icon-x.svg" alt=""> </a> </li> <li> <a href="https://www.instagram.com/sgiffest/?hl=en"> <img src="https://sgiff.com/wp-content/uploads/2023/10/icon-instagram.svg" alt=""> </a> </li> <li> <a href="https://www.youtube.com/c/SingaporeInternationalFilmFestival"> <img src="https://sgiff.com/wp-content/uploads/2023/10/icon-youtube.svg" alt=""> </a> </li> </ul> </nav> <nav class="s_links"> <ul> <li> <a href="mailto:enquiries@sgiff.com"> Contact Us </a> </li> <li> <a href="/faq/"> FAQ </a> </li> </ul> </nav> </div> </section> <section class="c__copyright"> <div> <nav> <ul> <li> <a href="/terms-of-service/"> Terms of Service </a> </li> <li> <a href="/privacy-policy/"> Privacy Policy </a> </li> </ul> </nav> <p>© 2024 SGIFF</p> </div> </section> </div> </footer> <div class="u__primarybtn u__bottomcta"> <a href="https://donate.sgiff.com/" target="_blank">Donate to SGIFF</a> </div> </div> <script type="text/javascript" src="https://sgiff.com/wp-content/themes/blankslate/assets/js/main.js?v=1742590562&amp;ver=1.0.0" id="main-js"></script> <script src="//ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script> <script> window.jQuery || document.write('<script src="https://sgiff.com/wp-content/themes/blankslate/assets/js/vendor/jquery-3.7.1.min.js"><\/script>') </script> <script src="https://sgiff.com/wp-content/themes/blankslate/assets/js/vendor/swiper.min.js"></script> <script src="https://sgiff.com/wp-content/themes/blankslate/assets/js/vendor/colcade.js"></script> <script src="https://sgiff.com/wp-content/themes/blankslate/assets/js/vendor/jquery.matchHeight-min.js"></script> <script src="https://sgiff.com/wp-content/themes/blankslate/assets/js/vendor/swiper-bundle.min.js"></script> <style> .s_logout { margin-top: 100px; } .form-login.login .form-row span.s_error,.register-form.register .form-row span.s_error,.lost_reset_password .form-row span.s_error{ display:none; } .form-login.login .form-row.v_invalid span.s_error,.register-form.register .form-row.v_invalid span.s_error,.lost_reset_password .form-row.v_invalid span.s_error{ display:block; } input{ color:#333; } .feSc td, .feSc th { border: 1px solid; padding: 10px; } .feSc { width: 75%; text-align: center; border: 1px solid; } </style> <script> const slides = $('.c__mastheadcarousel .swiper .swiper-slide'); const loopEnabled = slides.length > 1; var swiper = new Swiper(".c__mastheadcarousel .swiper", { slidesPerView: "auto", loop: loopEnabled, autoplay: { delay: 4500, waitForTransition: true, disableOnInteraction: false }, pagination: { el: ".swiper-pagination", clickable: true, renderBullet: function (index, className) { return '<span class="' + className + '"><svg class="progress-bar" width="100%" height="100%"><rect class="progress" x="0" y="0" width="0" height="100%" fill="blue" /></svg></span>'; } }, on: { init: function () { updateProgressBar(this); }, slideChange: function () { updateProgressBar(this); }, autoplayStart: function () { updateProgressBar(this); } } }); function updateProgressBar(swiper) { const bullets = document.querySelectorAll(".c__mastheadcarousel .swiper-pagination span"); const autoplayDelay = 4500; const activeIndex = swiper.realIndex; bullets.forEach((bullet, index) => { const rect = bullet.querySelector('.progress'); if (rect) { if (index === activeIndex) { bullet.classList.add('active'); rect.setAttribute('fill', '#23CFFF'); animateProgress(rect, autoplayDelay); } else { bullet.classList.remove('active'); rect.setAttribute('fill', 'transparent'); rect.setAttribute('width', '0'); } } }); } function animateProgress(rect, duration) { let start = null; const animate = (timestamp) => { if (!start) start = timestamp; const progress = Math.min((timestamp - start) / duration, 1); rect.setAttribute('width', `${progress * 100}%`); if (progress < 1) { requestAnimationFrame(animate); } }; requestAnimationFrame(animate); } var swiper = new Swiper(".c__carouselswiper.v_carousel .s_swiper", { // freeMode: true, slidesPerView: "auto", pagination: { el: ".swiper-pagination", }, }); var swiper = new Swiper(".c__accordion .c__screentogether .s_swiper", { // freeMode: true, slidesPerView: "auto", pagination: { el: ".swiper-pagination", }, });    var swiper = new Swiper(".c__more .s_swiper", {        // freeMode: true,        slidesPerView: "auto",        autoplay: {            delay: 5000,       },        pagination: {            el: ".swiper-pagination",       },        breakpoints: {            728: {                autoplay: false,           }       }   }); var swiper = new Swiper(".c__carouselswiper .s_swiper", { // freeMode: true, slidesPerView: "auto", pagination: { el: ".swiper-pagination", }, }); var swiper = new Swiper(".c__carouselswiper .v_swiper", { // freeMode: true, slidesPerView: "auto", pagination: { el: ".swiper-pagination", }, }); var swiper = new Swiper(".c__featuredblocks .s_swiper", { // freeMode: true, effect: "fade", slidesPerView: "auto", pagination: { el: ".swiper-pagination", }, }); var swiper = new Swiper(".c__squareblocks .s_swiper", { // freeMode: true, slidesPerView: "auto", loop: true, centeredSlides: true, pagination: { el: ".swiper-pagination", }, }); var swiper = new Swiper(".c__festivalperiodads .s_swiper", { // freeMode: true, effect: "fade", autoHeight: true, autoplay: { delay: 2000, }, slidesPerView: "auto", pagination: { el: ".swiper-pagination", type: "fraction", }, }); let footerSitemap = null; $(window).on('resize', function() { if ($(window).width() < 728) { if (footerSitemap != null) { footerSitemap.colcade('destroy'); footerSitemap = null; } } else { if (footerSitemap == null) { footerSitemap = $('.u__wrapper.v_filmdetail > div').colcade({ columns: '.grid-col', items: '.grid-item' }); } } }); $(window).trigger('resize'); // Ei Update 18-10-23 jQuery(document).ready(function($){ var emailFilter =/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; function validateElm($elm) { var inputType = $elm.data("type"); var val; switch (inputType) { case "text": case "number": val = $.trim($elm.find("input").val()); //console.log(val); if (val === "") { $elm.addClass("v_invalid"); return false; } break; case "email": val = $.trim($elm.find("input").val()); if (!emailFilter.test(val)) { $elm.addClass("v_invalid"); $('.s_conerror').css('display','none'); return false; } break; case "password": val = $.trim($elm.find("input").val()); //console.log(val); if (val === "") { $elm.addClass("v_invalid"); return false; } break; case "checkbox": if ($elm.find('input[type="checkbox"]:checked').length == 0) { $elm.addClass("v_invalid"); return false; } break; case "select": if (!$elm.find('select').val()) { $elm.addClass("v_invalid"); return false; } break; case "radio": if ($elm.find('input[type="radio"]:checked').length == 0) { $elm.addClass("v_invalid"); return false; } break; } $elm.removeClass("v_invalid"); $elm.addClass("v_valid"); return true; } $('.register .v_inv_psw').append('<p id="passwordStrength"></p>'); $('#update-password').on('input', function() { //console.log('hi'); var password = $(this).val(); var strength = checkPasswordStrength(password); displayPasswordStrength2(strength); }); $('#reg_password').on('input', function() { var password = $(this).val(); var strength = checkPasswordStrength(password); displayPasswordStrength(strength); }); function checkPasswordStrength(password) { var strength = 0; if (password.length >= 8) { strength += 1; } if (/[a-z]/.test(password) && /[A-Z]/.test(password)) { strength += 1; } if (/\d/.test(password)) { strength += 1; } if (/[!@#$%^&*]/.test(password)) { strength += 1; } return strength; } function displayPasswordStrength(strength) { var strengthText; var submitButton = $('.form-register__submit'); var regPsw = $('#reg_password'); switch (strength) { case 0: case 1: //strengthText = 'Weak'; strengthText = 'Password strength: Weak'; $('.form-register__submit').addClass('noPointer'); //regPsw.css('border', '1px solid red'); break; case 2: strengthText = 'Password strength: Medium'; $('.form-register__submit').removeClass('noPointer'); //regPsw.css('border', '1px solid #C4CED4'); break; default: strengthText = 'Password strength: Strong'; $('.form-register__submit').removeClass('noPointer'); //regPsw.css('border', '1px solid #C4CED4'); break; } $('#passwordStrength').text(strengthText); } function displayPasswordStrength2(strength) { var strengthText; var submitButton = $('.lost_confirm'); var regPsw = $('#update-password'); switch (strength) { case 0: case 1: //strengthText = 'Weak'; strengthText = 'Password strength: Weak'; $('.lost_confirm').addClass('noPointer'); //regPsw.css('border', '1px solid red'); break; case 2: strengthText = 'Password strength: Medium'; $('.lost_confirm').removeClass('noPointer'); //regPsw.css('border', '1px solid #C4CED4'); break; default: strengthText = 'Password strength: Strong'; $('.lost_confirm').removeClass('noPointer'); //regPsw.css('border', '1px solid #C4CED4'); break; } $('#passwordStrength2').text(strengthText); } $('.register-form .form-row input').on("blur", function() { //console.log('hi'); var $this = $(this); var $elm = $this.parent(); validateElm($elm); }); $('.register-form .form-row input[name="password"],.update-password-form .form-row input[name="update-password"]').on("blur", function() { var $passwordField = $.trim($(this).val()); if ($passwordField == '') { $('.v_inv_psw').addClass("v_invalid"); return false; } else { $('.v_inv_psw').removeClass("v_invalid"); } }) $('.register-form .form-row input[name="confirm_password"]').on("blur", function() { var $passwordField = $('input[name="password"]'); var $confirmPasswordField = $(this); var password = $.trim($passwordField.val()); var confirmPassword = $.trim($confirmPasswordField.val()); //console.log('password -> '+password+' confirmPassword -> '+confirmPassword) if (password !== confirmPassword || confirmPassword == '') { $('.con_psw').addClass("v_invalid"); $('.form-register__submit').css("pointer-events", 'none'); return false; } else { $('.con_psw').removeClass("v_invalid"); $('.form-register__submit').css("pointer-events", 'auto'); } }) $('.update-password-form .form-row input[name="update-password_2"]').on("blur", function() { var $passwordField = $('input[name="update-password"]'); var $confirmPasswordField = $(this); var password = $.trim($passwordField.val()); var confirmPassword = $.trim($confirmPasswordField.val()); //console.log('password -> '+password+' confirmPassword -> '+confirmPassword) if (password !== confirmPassword || confirmPassword == '') { $('.con_psw').addClass("v_invalid"); $('.lost_confirm').css("pointer-events", 'none'); return false; } else { $('.con_psw').removeClass("v_invalid"); $('.lost_confirm').css("pointer-events", 'auto'); } }) $('.register-form').on('submit', function(e) { e.preventDefault(); // Your custom logic here var validate = true; var $form = $(this); // Example: Perform form validation $(".register-form .form-row").each(function() { var $elm = $(this); var required = $elm.data("required"); if (required) { if (!validateElm($elm)) { validate = false; } } }); //validate = false; //console.log(validate, 'hi') if (validate) { reg_email = $('#reg_email').val(); reg_password = $('#reg_password').val(); $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'register_custom_user_account', reg_email: reg_email, reg_password: reg_password }, success: function(data) { //console.log('what'); var modifiedData = data.slice(0, -1); $('#reg_email').val(''); $('#reg_password').val(''); $('#reg_confirm_password').val(''); $('.c__registerwelcome').css('display','block'); if (modifiedData == 'exit') { $('.c__registerwelcome').html('<ul class="error" role="alert"><li> Error: An account is already registered with your email address. Please log in.</li></ul>'); } else { $('.c__loginheader,.register-form').css('display','none'); $('.s_uniquecode a').html(modifiedData+'<span class="u__iconcopy"></span>'); //console.log(modifiedData); //window.location.href = '/my-account'; } }, error: function(data) { $('.c__registerwelcome').html('Something was wrong!'); } }); } }); $('.form-login__submit').on('click', function(e) { e.preventDefault(); // Your custom logic here var validate = true; var $form = $(this); // Example: Perform form validation $(".form-login .form-row").each(function() { var $elm = $(this); var required = $elm.data("required"); if (required) { if (!validateElm($elm)) { validate = false; } } }); var reg_email = $('#username').val(); var reg_password = $('#password').val(); //validate = false; //console.log(validate, reg_email,reg_password,'hi') if (validate) { $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'login_user_account', reg_email: reg_email, reg_password: reg_password }, success: function(data) { // var modifiedData = data.slice(0, -1); //console.log(modifiedData,data); if (data == 'valid') { window.location.href = '/festival-schedule/'; }else if(data == 'feSche'){ window.location.href = '/my-schedule/'; document.cookie = 'feSche=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; }else { $('.s_status p').text(data); } }, error: function(data) { $('.s_status p').html('Something was wrong!'); } }); } }); $('.lost_reset_password').on('submit', function(e) { e.preventDefault(); // Your custom logic here var validate = true; var $form = $(this); // Example: Perform form validation $(".lost_reset_password .form-row").each(function() { var $elm = $(this); var required = $elm.data("required"); if (required) { if (!validateElm($elm)) { validate = false; } } }); //validate = false; if (validate) { reg_email = $('#user_login').val(); $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'custom_reset_password', reg_email: reg_email, }, success: function(data) { //console.log('what'); var modifiedData = data.slice(0, -1); $('.c__fpReturn').css('display','block'); if (modifiedData == 'invalid') { $('.c__fpReturn').css('display','block').text('Something wend wrong! Check your email'); } else { // console.log(modifiedData); $('.c__forgetpassword,.reset_form_wrap').css('display','none'); } }, error: function(data) { $('.c__fpReturn').html('Something was wrong!'); } }); } }); $('.lost_confirm').on('click', function(e) { e.preventDefault(); // Your custom logic here var validate = true; var $form = $(this); // Example: Perform form validation $(".update-password-form .form-row").each(function() { var $elm = $(this); var required = $elm.data("required"); if (required) { if (!validateElm($elm)) { validate = false; } } }); //validate = false; if (validate) { user_id = $('#reset_user').val(); password_2 = $('#update-password_2').val(); $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'custom_update_password', user_id: user_id, password_2: password_2 }, success: function(data) { var modifiedData = data.slice(0, -1); //console.log(modifiedData); if (data == 'changed') { window.location.href = '/festival-schedule/'; }else if(data == 'feSche'){ window.location.href = '/my-schedule/'; document.cookie = 'feSche=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;'; }else { $('.s_status p').text(data); } $('.update-form-wrap').css('display','none'); }, error: function(data) { $('.c__resetpassword').html('Something was wrong!'); } }); } }); $('.u__iconbookmark').on('click', function(e) { e.preventDefault(); // Your custom logic here //pId = $('#id_bookmark0').val(); //wId = $('#id_bookmark1').val(); pId = $(this).attr('pId'); wId = $(this).attr('wpId'); var $checkbox = $(this).closest('.s_bookmark').find('input[type="checkbox"]'); if(wId == 0){ $('.c__schedulepop').removeClass('hidden'); }else{ $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'update_bookmark_screen_time', pId: pId, wpId: wId }, success: function(data) { //console.log('what'); var modifiedData = data.slice(0, -1); if (window.location.pathname === '/my-schedule/') { // Reload the page location.reload(); } if(data == 'added'){ $checkbox.prop('checked', true); }else if(data == 'deleted'){ $checkbox.prop('checked', false); } window.location.href = '/my-schedule'; }, error: function(data) { //$('.c__register').html('Something was wrong!'); } }); } }); $('.remove_action').on('click', function(e) { e.preventDefault(); // Your custom logic here pId = $(this).attr('pid'); wId = $(this).attr('wpid'); var $tr = $(this).closest('tr'); $.ajax({ url: 'https://sgiff.com/wp-admin/admin-ajax.php', type: 'post', data: { action: 'delete_bookmark_screen_time', pId: pId, wpId: wId }, success: function(data) { //console.log('what'); var modifiedData = data.slice(0, -1); //console.log(modifiedData); //location.reload(); $tr.remove(); //$('.c__resetpassword').text(modifiedData); }, error: function(data) { //$('.c__register').html('Something was wrong!'); } }); }); $('.login-feSc').on('click',function(){ var expirationDate = new Date(); expirationDate.setTime(expirationDate.getTime() + (1 * 60 * 60 * 1000)); document.cookie = "feSche=true; expires=" + expirationDate.toUTCString() + "; path=/"; location.replace("/login"); }); $('.s_logout button').on('click',function(){ event.preventDefault(); $.ajax({ type: 'POST', url: 'https://sgiff.com/wp-admin/admin-ajax.php', data: { action: 'custom_logout' // Use your custom action name }, success: function () { // Redirect or perform any other actions after successful logout window.location.href = '/'; // Replace with the URL you want to redirect to } }); }); if ($('.s_quicklinks').length > 0) { // If it exists, add the .v_fixedside class to main.p__page $('main.p__page').addClass('v_fixedside'); $('.c__accordioncontent:first').before('<section class="u__wrapper"><div>'); $('.c__accordioncontent').appendTo($('.u__wrapper div')); var accordionSections = $('.c__accordioncontent'); // Select the .s_quicklinks ul var quickLinksUl = $('.s_quicklinks ul'); // Loop through each .c__accordioncontent section accordionSections.each(function(index) { $(this).attr('id', 'c__accordioncontent' + index); var h2Text = $(this).find('h2').text(); // Get the text from the h2 element // Create a new list item with a link var listItem = $('<li><a href="#c__accordioncontent' + index + '">' + h2Text + '</a></li>'); // Append the list item to the .s_quicklinks ul quickLinksUl.append(listItem); }); $(".c__pagetitle .s_quicklinks ul > li:first-child a").addClass('v_active') $(".c__pagetitle .s_quicklinks ul > li a").on("click", function (e) { e.preventDefault(); var $this = $(this); $(".c__pagetitle .s_quicklinks ul > li a").removeClass("v_active"); $this.addClass("v_active"); var targetSectionId = $this.attr("href"); var $targetSection = $(targetSectionId); }); $(".c__pagetitle .s_quicklinks ul > li a").on("click", function (e) { e.preventDefault(); var $this = $(this); var index = $this.parent().index(); var $elm = $(".c__pagetitle + .u__wrapper .c__accordioncontent").eq(index); setTimeout(function () { $(".c__pagetitle .s_quicklinks ul > li a").removeClass("v_active"); $this.addClass("v_active"); }, 300); if ($(window).outerWidth() < 728) { $("html, body") .stop() .animate( { scrollTop: $elm.offset().top - (70 + 87 + 75) }, 500, function () { } ); } else { $("html, body") .stop() .animate( { scrollTop: $elm.offset().top - (70 + (index > 0 ? -28 : 0) + 75), }, 500, function () { } ); } }); const links = document.querySelectorAll('.c__pagetitle .s_quicklinks ul > li a[href^="#"]'); const titles = []; for (const link of links) { link.addEventListener('click', function () { highlight(link); }) const url = new URL(link.href); const dom = document.querySelector(url.hash); if (dom) { titles.push(dom) } } const scrollHandler = function () { const range = [0, 300]; const rects = titles.map((title) => title.getBoundingClientRect()); for (let i = 0; i < titles.length; i++) { const title = titles[i]; const rect = rects[i]; if (rect.top >= range[0] && rect.top <= range[1]) { highlight(title.id); // console.log(title.id); // updateLabelText(title.id); // break; } if (rect.top < range[0] && rects[i + 1] && rects[i + 1].top >= document.documentElement.clientHeight) { highlight(title.id); // updateLabelText(title.id); // break; } } } window.addEventListener('scroll', scrollHandler) } function debounce(fn, delay) { let timeout; return function () { clearTimeout(timeout) timeout = setTimeout(() => { fn.apply(this, arguments); }, delay) } } function highlight(id) { document .querySelectorAll('a.v_active') .forEach((a) => a.classList.remove('v_active')); if (id instanceof HTMLElement) { id.classList.add('v_active'); return; } if (id.startsWith('#')) { id = id.substring(1); } document.querySelector(`a[href="#${id}"]`).classList.add('v_active'); // updateLabelText(id); } var noImage = false; $('.c__profiles:not(.v_noheader) .s_profile').each(function() { if (!$(this).find('figure').length) { noImage = true; } }); if (noImage) { $('.c__profiles').addClass('v_noimage'); } $('.c__profiles.v_noheader').removeClass('v_noimage'); $('.s_accordion').each(function(index) { $(this).find('input').attr('id','id_accordioncontent'+index); $(this).find('label').attr('for','id_accordioncontent'+index); }); $(document).on("click", ".poster-image,.play-button", function () { $(".poster-image,.play-button").addClass("active"); var iframe = $("iframe"); var currentSrc = iframe.attr("src"); var newSrc = currentSrc + (currentSrc.includes("?") ? "&" : "?") + "autoplay=1"; iframe.attr("src", newSrc); }); }); jQuery(document).ready(function($) { const htmlbody = document.querySelector('html'); var isOpen = false; $('#id_hamburger').click(function () { if (isOpen) { isOpen = false; htmlbody.classList.remove('v_noscroll'); } else { isOpen = true; htmlbody.classList.add('v_noscroll'); } }); var res = $(".c__navigation .s_sublinks").val(); if ($(window).width() >= 820) { if (!res) { $(".c__navigation .s_sublinks:first-child input").prop("checked", true); $(".c__navigation .s_sublinks input").attr({ type: "radio", name: "id_radio", }); } } }); </script> <script> var swiper = new Swiper(".c__footerlogos .s_footerlogos", { slidesPerView: "auto", loop: true, autoplay: { delay: 1000, pauseOnMouseEnter: true, }, pagination: { el: ".c__footerlogos .swiper-pagination", }, }); var footerLogos = document.querySelector(".c__footerlogos .s_footerlogos"); footerLogos.addEventListener("mouseenter", function () { swiper.autoplay.stop(); }); footerLogos.addEventListener("mouseleave", function () { swiper.autoplay.start(); }); jQuery(document).ready(function($) { $('.s_accordion > input[type="checkbox"]').change(function() { // Find the associated label for the checkbox that was changed var label = $('label[for="' + $(this).attr('id') + '"].s_readmore'); // Only change the label text if it exists if (label.length) { // Change text based on the checkbox state if ($(this).is(':checked')) { label.html('Read Less <span></span>'); } else { label.html('Read More <span></span>'); } } }); }); </script> </body> </html>

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