window.firstImageLoaded = false; window.muted = true; // TODO: when change to javascript check URL param window.queryString = window.location.search; window.urlParams = new URLSearchParams(queryString); window.anaglyph = false; const anaglyphParam = urlParams.get('anaglyph'); if (anaglyphParam) { window.anaglyph = anaglyphParam === 'yes'; } window.photos = [{"filename":"20261006132511491jpg-1791280196468.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006132511491jpg-1791280196468.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006132511491jpg-1791280196468.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006132511491jpg-1791280196468.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006132511491jpg-1791280196468.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":1,"status":"active","created_date":"2026-10-06T09:49:56.542Z","updated_date":"2026-10-06T09:49:56.542Z","version":"v3","id":"5983162758856704","title":"Outdoor and Courtyard Play Area","has_anaglyph":false,"index":0},{"filename":"20261006133354226jpg-1791280242370.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133354226jpg-1791280242370.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133354226jpg-1791280242370.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133354226jpg-1791280242370.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133354226jpg-1791280242370.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":2,"status":"active","created_date":"2026-10-06T09:50:42.454Z","updated_date":"2026-10-06T09:50:42.454Z","version":"v3","id":"5997757997252608","title":"Multi Purpose Activity Hall","has_anaglyph":false,"index":1},{"filename":"20261006133724597jpg-1791280295691.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133724597jpg-1791280295691.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133724597jpg-1791280295691.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133724597jpg-1791280295691.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133724597jpg-1791280295691.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":3,"status":"active","created_date":"2026-10-06T09:51:35.766Z","updated_date":"2026-10-06T09:51:35.766Z","version":"v3","id":"5421504248414208","title":"Main Activity Learn and Play Area","has_anaglyph":false,"index":2},{"filename":"20261006133855536jpg-1791281125729.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133855536jpg-1791281125729.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133855536jpg-1791281125729.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133855536jpg-1791281125729.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133855536jpg-1791281125729.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":4,"status":"active","created_date":"2026-10-06T10:05:25.801Z","updated_date":"2026-10-06T10:05:25.801Z","version":"v3","id":"4650596978130944","title":"Nursery Activity Room","has_anaglyph":false,"index":3}]; console.log('num photos: ' + window.photos.length); window.photosMap = {"5983162758856704":{"filename":"20261006132511491jpg-1791280196468.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006132511491jpg-1791280196468.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006132511491jpg-1791280196468.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006132511491jpg-1791280196468.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006132511491jpg-1791280196468.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":1,"status":"active","created_date":"2026-10-06T09:49:56.542Z","updated_date":"2026-10-06T09:49:56.542Z","version":"v3","id":"5983162758856704","title":"Outdoor and Courtyard Play Area","has_anaglyph":false,"index":0},"5997757997252608":{"filename":"20261006133354226jpg-1791280242370.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133354226jpg-1791280242370.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133354226jpg-1791280242370.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133354226jpg-1791280242370.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133354226jpg-1791280242370.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":2,"status":"active","created_date":"2026-10-06T09:50:42.454Z","updated_date":"2026-10-06T09:50:42.454Z","version":"v3","id":"5997757997252608","title":"Multi Purpose Activity Hall","has_anaglyph":false,"index":1},"5421504248414208":{"filename":"20261006133724597jpg-1791280295691.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133724597jpg-1791280295691.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133724597jpg-1791280295691.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133724597jpg-1791280295691.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133724597jpg-1791280295691.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":3,"status":"active","created_date":"2026-10-06T09:51:35.766Z","updated_date":"2026-10-06T09:51:35.766Z","version":"v3","id":"5421504248414208","title":"Main Activity Learn and Play Area","has_anaglyph":false,"index":2},"4650596978130944":{"filename":"20261006133855536jpg-1791281125729.jpg","folder":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584","gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133855536jpg-1791281125729.jpg","image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/20261006133855536jpg-1791281125729.jpg","thumbnail_gcs_filename":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133855536jpg-1791281125729.jpg","thumbnail_image_url":"/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006133855536jpg-1791281125729.jpg","rotation":0,"photo_type":"360_mono","is_stereo":false,"sort_order":4,"status":"active","created_date":"2026-10-06T10:05:25.801Z","updated_date":"2026-10-06T10:05:25.801Z","version":"v3","id":"4650596978130944","title":"Nursery Activity Room","has_anaglyph":false,"index":3}}; if (window.is_static) { window.photosRoot = 'https://images.orbix360.com'; // TODO: after we create all the local schema/template folders, change this to empty string window.pluginsRoot = 'plugins/'; } else { window.photosRoot = 'https://images.orbix360.com'; window.pluginsRoot = 'https://storage.googleapis.com/orbix360-prod-plugins/'; } window.minterUrl = 'https://minter.orbix360.com'; window.tourId = "5354284419907584"; // 052: the tour sound's Loop / Play once choice (absent = loop). window.tourAudioLoop = true; window.tourUid = "StvQBn7UXrYdel0l2nQRHWnSKpf1"; window.isTourOwner = false; window.customUrl = "https://kiddy123.com/"; window.tourSlug = "tiny-tots-montessori-centre-ipoh"; window.template = '360_mono'; window.template_category = '360'; window.tourShortCode = "-5xG3tbzm"; window.room = ''; window.mask = ''; window.current_image_index = 0; // todo: use photo object instead of correlated arrays window.nextImageToLoad = 1; window.photo_indexes = {}; window.im = false; window.photo_indexes['5983162758856704'] = 0; window.current_image_index = 0; window.current_image_id = 5983162758856704 window.photo_indexes['5997757997252608'] = 1; window.photo_indexes['5421504248414208'] = 2; window.photo_indexes['4650596978130944'] = 3; window.current_info_hotspot = null; window.current_explore_page = 1; let savedCurrentExplorePage = window.localStorage.getItem('current_explore_page'); if (savedCurrentExplorePage) { window.current_explore_page = Number(savedCurrentExplorePage); } window.current_explore_filter = 'featured'; let savedCurrentExploreFilter = window.localStorage.getItem('current_explore_filter'); if (savedCurrentExploreFilter) { window.current_explore_filter = savedCurrentExploreFilter; } window.user_profile_image = '/images/profile-icon.png'; window.user_profile_name = 'Orbi-3310788280'; window.shortURLRoot = 'https://orbix360.com'; window.image_url = 'https://images.orbix360.com/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/thumb_20261006132511491jpg-1791280196468.jpg.play.jpg'; window.image_url_root = 'https://images.orbix360.com'; window.cloudFunctionsRoot = 'https://us-central1-orbix360-prod.cloudfunctions.net'; window.timeSinceRestartRotation = 0; window.initialState = {"versionNumber":3,"autorotate":{"enabled":true},"orbs":[{"id":5983162758856704,"hotspots":[{"id":"hotspot_5983162758856704_5997757997252608","from":5983162758856704,"to":5997757997252608,"position":{"x":0.9606079117351275,"y":-0.07365479591097267,"z":0.2679690484947658},"toTitle":"Multi Purpose Activity Hall"}],"infoHotspots":[],"plugins":[{"pluginId":"4826070998056960","instanceId":"plugin_4826070998056960_1791281534259","instanceName":"Image","templateFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/template.html","schemaFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/schema.json","scriptFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/script.js","position":{"x":"0.1","y":"-0.9","z":"0.01"},"rotation":{"x":"-100","y":"65","z":"0"},"scale":{"x":"1","y":"1","z":"1"},"src":"https://storage.googleapis.com/orbix360-prod-assets/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/5983162758856704/plugin_4826070998056960_1791281534259/Tiny-Tots Montessori Centre.png","width":3,"height":"3","visible":true,"shader":"flat","transparent":true,"opacity":"1.0","side":"front","repeat":"1 1","additional_components":""}]},{"id":5997757997252608,"hotspots":[{"id":"hotspot_5997757997252608_5983162758856704","from":5997757997252608,"to":5983162758856704,"position":{"x":0.8717017411528211,"y":-0.05361917691176089,"z":-0.48709450657797954},"toTitle":"Outdoor and Courtyard Play Area"},{"id":"hotspot_5997757997252608_5421504248414208","from":5997757997252608,"to":5421504248414208,"position":{"x":-0.936685694884742,"y":-0.07539069040409589,"z":0.34195928529385156},"toTitle":"Main Activity Learn and Play Area"},{"id":"hotspot_5997757997252608_4650596978130944","from":5997757997252608,"to":4650596978130944,"position":{"x":-0.9966581486640218,"y":0.07561564006713413,"z":0.030899994803268896},"toTitle":"Nursery Activity Room"}],"infoHotspots":[],"plugins":[{"pluginId":"4826070998056960","instanceId":"plugin_4826070998056960_1791281562323","instanceName":"Image","templateFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/template.html","schemaFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/schema.json","scriptFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/script.js","position":{"x":"0.1","y":"-0.9","z":"0.01"},"rotation":{"x":"-100","y":"65","z":"0"},"scale":{"x":"1","y":"1","z":"1"},"src":"https://storage.googleapis.com/orbix360-prod-assets/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/5997757997252608/plugin_4826070998056960_1791281562323/Tiny-Tots Montessori Centre.png","width":3,"height":"3","visible":true,"shader":"flat","transparent":true,"opacity":"1.0","side":"front","repeat":"1 1","additional_components":""}]},{"id":5421504248414208,"hotspots":[{"id":"hotspot_5421504248414208_4650596978130944","from":5421504248414208,"to":4650596978130944,"position":{"x":0.6593663893242814,"y":-0.017273646699550293,"z":-0.751623300436568},"toTitle":"Nursery Activity Room"},{"id":"hotspot_5421504248414208_5997757997252608","from":5421504248414208,"to":5997757997252608,"position":{"x":-0.2224691111065356,"y":-0.05133409048801964,"z":0.9735873385358069},"toTitle":"Multi Purpose Activity Hall"}],"infoHotspots":[],"plugins":[{"pluginId":"4826070998056960","instanceId":"plugin_4826070998056960_1791281583390","instanceName":"Image","templateFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/template.html","schemaFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/schema.json","scriptFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/script.js","position":{"x":"0.1","y":"-0.9","z":"0.01"},"rotation":{"x":"-100","y":"65","z":"0"},"scale":{"x":"1","y":"1","z":"1"},"src":"https://storage.googleapis.com/orbix360-prod-assets/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/5421504248414208/plugin_4826070998056960_1791281583390/Tiny-Tots Montessori Centre.png","width":3,"height":"3","visible":true,"shader":"flat","transparent":true,"opacity":"1.0","side":"front","repeat":"1 1","additional_components":""}]},{"id":4650596978130944,"hotspots":[{"id":"hotspot_4650596978130944_5421504248414208","from":4650596978130944,"to":5421504248414208,"position":{"x":0.9724229267512928,"y":-0.16363249510966912,"z":-0.16618681678350403},"toTitle":"Main Activity Learn and Play Area"},{"id":"hotspot_4650596978130944_5997757997252608","from":4650596978130944,"to":5997757997252608,"position":{"x":0.6082926140544936,"y":-0.0010769361979928208,"z":-0.7937121240696631},"toTitle":"Multi Purpose Activity Hall"}],"infoHotspots":[],"plugins":[{"pluginId":"4826070998056960","instanceId":"plugin_4826070998056960_1791281606906","instanceName":"Image","templateFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/template.html","schemaFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/schema.json","scriptFilename":"users/sn4iLJyuI5Y6LMBmIQrqSelGxJK2/4826070998056960/v3/script.js","position":{"x":"0.1","y":"-0.9","z":"0.01"},"rotation":{"x":"-100","y":"65","z":"0"},"scale":{"x":"1","y":"1","z":"1"},"src":"https://storage.googleapis.com/orbix360-prod-assets/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/5354284419907584/4650596978130944/plugin_4826070998056960_1791281606906/Tiny-Tots Montessori Centre.png","width":3,"height":"3","visible":true,"shader":"flat","transparent":true,"opacity":"1.0","side":"front","repeat":"1 1","additional_components":""}]}]}; window.brandingAllowed = true; window.isOwner = false; // 045: owner-only prompts route to the Premium Tour page window.upgradeCheckoutSessionStatus = ''; window.isUpgradeSubscriptionValid = false; window.isPro = true; // 072: the shared entitlement rule // 029: free-plan limits from functions/common/plan_limits.js; read by // add_photos_dropzone.js (image cap, file size), which keeps fallbacks. window.planLimits = {"freeMaxMultiImageTours":2,"freeMaxSingleImageTours":-1,"freeMaxImagesPerTour":5,"freeMaxFileBytes":20000000,"multiImageLimitCutoffDate":"2026-10-11T00:00:00Z","freeMultiImageBonusPerUpgradedTour":2,"freeMultiImageBonusPerSharedTour":1,"freeMultiImageShareCreditVisitors":1,"freeMultiImageBonusForUseCase":1,"freeMaxMultiImageToursWithBonus":10,"freeMultiImageShareBonusEnabled":true,"freeMultiImageLimitEnabled":true}; // 038: offer prices from functions/common/prices.js (display strings, cents); read by nothing yet. window.prices = {"currency":"usd","proMonthly":{"amount":999,"interval":"month","perMonth":999,"display":"$9.99","perMonthDisplay":"$9.99"},"proYearly":{"amount":9900,"interval":"year","perMonth":825,"display":"$99.00","perMonthDisplay":"$8.25"},"tourMonthly":{"amount":299,"interval":"month","perMonth":299,"display":"$2.99","perMonthDisplay":"$2.99"},"tourConversionCredit":{"amount":300,"display":"$3.00"},"tourComparison":{"count":4,"total":1196,"totalDisplay":"$11.96"}}; window.nadirLogoURL = window.isPro ? 'https://images.orbix360.com/users/StvQBn7UXrYdel0l2nQRHWnSKpf1/branding/nadir-1729253472432.png' : '/images/orbix_nadir.png'; window.editMode = false; // #325 feature flag: screen-space nav hotspot dock. Environment default from // app_config.NAV_DOCK_ENABLED; overridable per page load with ?navdock=on|off // (this script runs in the viewer page's context, so location.search is the // tour page's query string). Flag off = pre-#325 world-anchored nav hotspots. window.navDockEnabled = false; (function () { try { var navdock = new URLSearchParams(window.location.search).get('navdock'); if (navdock === 'on' || navdock === 'yes') { window.navDockEnabled = true; } else if (navdock === 'off' || navdock === 'no') { window.navDockEnabled = false; } } catch (e) { /* keep the environment default */ } })();