//global variables var deviceState = 0; var pedalState = 0; var menuLayer = 0; var powerLvl = 0; var selectedRegime = 2; var selectedProcedure = 0; var presetMenu = 0; var homeMenu = 0; var selectedWavelength = ""; var activeMenu = 0; var updateMenu = 0; var mainMenu = 0; var tipIllumination = 2; var soundLevel = 2; var aimingLight = 2; var hapticPedal = 2; var hapticPBM = 2; var tipLightMenu = 0; var aimingLightMenu = 0; var soundLevelMenu = 0; var voiceMenu = 0; var hapticMenu = 0; var voiceConfirmation = 1; var updateCounter = 0; var menuPBM = 0; var timerSetValue = 0; var countingDownValue = 0; var ifPaused = true; var obj = null; var obj1 = null; //passcode variables var passCode = [1, 1, 0, 0]; var enteredCode = []; //audio elements //added to array var audioJingle = document.getElementById("audioJingle"); var audioPassCode = document.getElementById("audioPassCode"); var audioBeep = document.getElementById("audioBeep"); var audioSelectWavelength = document.getElementById("audioSelectWavelength"); var audioDualStby = document.getElementById("audioDualStby"); var audio810Stby = document.getElementById("audio810Stby"); var audio980Stby = document.getElementById("audio980Stby"); var audioOff = document.getElementById("audioOff"); var Off = document.getElementById("Off"); var Low = document.getElementById("Low"); var Medium = document.getElementById("Medium"); var High = document.getElementById("High"); var audioIlluminationOff = document.getElementById("audioIlluminationOff"); var audioIlluminationLow = document.getElementById("audioIlluminationLow"); var audioIlluminationMedium = document.getElementById("audioIlluminationMedium"); var audioIlluminationHigh = document.getElementById("audioIlluminationHigh"); var aimingLightOff = document.getElementById("audioAimingLightOff"); var aimingLightLow = document.getElementById("audioAimingLightLow"); var aimingLightMedium = document.getElementById("audioAimingLightMedium"); var aimingLightHigh = document.getElementById("audioAimingLightHigh"); var pedalHaptic = document.getElementById("pedalHaptic"); var pbmHaptic = document.getElementById("pbmHaptic"); var wifi = document.getElementById("wifi"); var voiceOn = document.getElementById("voiceConfirmationOn"); var voiceOff = document.getElementById("voiceConfirmationOff"); var decontamination = document.getElementById("decontamination"); var debridement = document.getElementById("debridement"); var aphtousulcer = document.getElementById("aphtousulcer"); var hemostasis = document.getElementById("hemostasis"); var incision = document.getElementById("incision"); var implantrecovery = document.getElementById("implantrecovery"); var toothexposure = document.getElementById("toothexposure"); var operculectomy = document.getElementById("operculectomy"); var gingivoplasty = document.getElementById("gingivoplasty"); var gingivectomy = document.getElementById("gingivectomy"); var frenectomy = document.getElementById("frenectomy"); var pulpotomy = document.getElementById("pulpotomy"); var troughing = document.getElementById("troughing"); var audio3mm = document.getElementById("audio3mm"); var audio7mm = document.getElementById("audio7mm"); var audio25mm = document.getElementById("audio25mm"); var audioActive = document.getElementById("audioActive"); var timer = document.getElementById("timer"); var updateAvailable = document.getElementById("updateAvailable"); var updating = document.getElementById("updating"); var updateCompleted = document.getElementById("updateCompleted"); var customProcedure = document.getElementById("customProcedure"); var active810 = document.getElementById("active810"); var active980 = document.getElementById("active980"); var activeDual = document.getElementById("activeDual"); var beepContinious = document.getElementById("beepContinious"); var threeBeepPBM = document.getElementById("threeBeepPBM"); var treatmentSeconds = document.getElementById("treatmentSeconds"); //do not add in array - always same level var soundOff = document.getElementById("soundMute"); var soundLow = document.getElementById("soundLow"); var soundMedium = document.getElementById("soundMedium"); soundMedium.volume = 0.5; soundLow.volume = 0.25; soundOff.volume = 0.25; //array of all sounds to be able to control volume of all of them var allSounds = [Off, Low, Medium, High, audioJingle, audioPassCode, audioBeep, audioSelectWavelength, audioDualStby, audio810Stby, audio980Stby, audioOff, audioIlluminationOff, audioIlluminationLow, audioIlluminationMedium, audioIlluminationHigh, aimingLightOff, aimingLightLow, aimingLightMedium, aimingLightHigh, pedalHaptic, pbmHaptic, wifi, voiceOn, voiceOff, decontamination, debridement, aphtousulcer, hemostasis, incision, implantrecovery, toothexposure, operculectomy, gingivectomy, gingivoplasty, frenectomy, pulpotomy, troughing, audio3mm, audio7mm, audio25mm, audioActive, timer, updateAvailable, updating, updateCompleted, customProcedure, active810, active980, activeDual, beepContinious, threeBeepPBM, treatmentSeconds]; function changeLoudness() { if (soundLevel == 1) { for (i = 0; i < allSounds.length; i++) { allSounds[i].volume = 0.25; } } else if (soundLevel == 2) { for (i = 0; i < allSounds.length; i++) { allSounds[i].volume = 0.5; } } else if (soundLevel == 3) { for (i = 0; i < allSounds.length; i++) { allSounds[i].volume = 1; } } else if (soundLevel == 0) {Z for (i = 0; i < allSounds.length; i++) { allSounds[i].volume = 0; } } } //starting conditions // var nodesInitial = document.getElementById("baseImage").childNodes; // for (var i = 0; i < nodesInitial.length; i++) { // if (nodesInitial[i].nodeName.toLowerCase() == "div") { // nodesInitial[i].style.opacity = "1"; // nodesInitial[i].style.visibility = "visible"; // nodesInitial[i].style.opacity = "0"; // nodesInitial[i].style.visibility = "hidden"; // } // } showElement("onBtn"); addElement("pedalReleasedOff"); addElement("guidingText"); addElement("turnSoundOn"); opacity50("turnSoundOn"); document.getElementById("guidingText").style.opacity = "0.5"; //menu layer 0 //turning on and off function function simulatorStart() { if (deviceState == 0) { deviceState = 1; simulatorSequence(); for (i = 0; i < allSounds.length; i++) { allSounds[i].volume = 0.5; } } else { deviceState = 0; shutDown(); } } //menu layer 1 //actual product working sequence function simulatorSequence() { blinkBtn(500); setTimeout(() => playAudio(audioPassCode), 5000); setTimeout(() => playAudio(audioJingle), 500); document.getElementById("guidingText").innerHTML = "Product is starting up..." clearInterval(obj); menuLayer = 1; } //blinking ON button function blinkBtn(blinkDelay) { addElement("disableAll"); setTimeout(() => removeElement("disableAll"), blinkDelay * 8 + 800); addElement("stopBtn"); for (i = 1; i <= 7; i++) { if (i % 2 != 0) { setTimeout(() => opacityOne("onBtn"), blinkDelay * i); } else { setTimeout(() => opacityZero("onBtn"), blinkDelay * i); } } for (i = 1; i <= 3; i++) { if (i == 1) { setTimeout(() => addElement("screenUltradent"), blinkDelay * 8 + 250 * i); } else if (i == 2) { setTimeout(() => addElement("screenPassCode"), blinkDelay * 8 + 250 * i); } else { setTimeout(() => addElement("topBtn"), blinkDelay * 8 + 250 * i); setTimeout(() => addElement("bottomBtn"), blinkDelay * 8 + 250 * i); setTimeout(() => document.getElementById("guidingText").innerHTML = "Enter passcode - UP | UP | DOWN | DOWN", blinkDelay * 8 + 250 * i); } } } //wifi button function wifiConnected() { playAudio(wifi); } //pressing top button function btnUp() { if (menuLayer == 1) { var elementPlace = enteredCode.length; if (enteredCode.length < 4) { enteredCode.push(1); playAudio(audioBeep); if (enteredCode[elementPlace] == passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("true1"); } else if (enteredCode.length == 2) { addElement("true2"); } else if (enteredCode.length == 3) { addElement("true3"); } else if (enteredCode.length == 4) { addElement("true4"); } } else if (enteredCode[elementPlace] != passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("false1"); } else if (enteredCode.length == 2) { addElement("false2"); } else if (enteredCode.length == 3) { addElement("false3"); } else if (enteredCode.length == 4) { addElement("false4"); } } } correctNot(); } if (updateMenu == 2) { var elementPlace = enteredCode.length; if (enteredCode.length < 4) { enteredCode.push(1); playAudio(audioBeep); if (enteredCode[elementPlace] == passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("true1"); } else if (enteredCode.length == 2) { addElement("true2"); } else if (enteredCode.length == 3) { addElement("true3"); } else if (enteredCode.length == 4) { addElement("true4"); } } else if (enteredCode[elementPlace] != passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("false1"); } else if (enteredCode.length == 2) { addElement("false2"); } else if (enteredCode.length == 3) { addElement("false3"); } else if (enteredCode.length == 4) { addElement("false4"); } } } correctNotUpdate(); } if (menuLayer == 4) { if (selectedRegime == 1) { if (selectedProcedure > 1) { selectedProcedure--; playAudio(audioBeep); displayProcedure(); } } else if (selectedRegime == 2) { if (selectedProcedure > 1) { selectedProcedure--; playAudio(audioBeep); displayProcedure(); } } else if (selectedRegime == 3) { if (selectedProcedure > 1) { selectedProcedure--; playAudio(audioBeep); displayProcedure(); } } if (activeMenu == 1) { clearOutActive(); } } if (menuLayer == 6) { if (tipIllumination < 3) { addElement("topBtn"); addElement("bottomBtn"); tipIllumination++; tipIlluminationVisuals(); } } if (menuLayer == 7) { if (aimingLight < 3) { addElement("topBtn"); addElement("bottomBtn"); aimingLight++; aimingLightVisuals(); } } if (menuLayer == 8) { if (soundLevel < 3) { addElement("topBtn"); addElement("bottomBtn"); soundLevel++; soundVisuals(); changeLoudness(); } } if (menuLayer == 9) { if (hapticPedal < 3) { addElement("topBtn"); addElement("bottomBtn"); hapticPedal++; hapticPedalVisuals(); } } if (menuLayer == 10) { if (hapticPBM < 3) { addElement("topBtn"); addElement("bottomBtn"); hapticPBM++; hapticPBMVisuals(); } } } //pressing bottom button function btnDown() { if (menuLayer == 1) { var elementPlace = enteredCode.length; if (enteredCode.length < 4) { enteredCode.push(0); playAudio(audioBeep); if (enteredCode[elementPlace] == passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("true1"); } else if (enteredCode.length == 2) { addElement("true2"); } else if (enteredCode.length == 3) { addElement("true3"); } else if (enteredCode.length == 4) { addElement("true4"); } } else if (enteredCode[elementPlace] != passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("false1"); } else if (enteredCode.length == 2) { addElement("false2"); } else if (enteredCode.length == 3) { addElement("false3"); } else if (enteredCode.length == 4) { addElement("false4"); } } } correctNot(); } if (updateMenu == 2) { var elementPlace = enteredCode.length; if (enteredCode.length < 4) { enteredCode.push(0); playAudio(audioBeep); if (enteredCode[elementPlace] == passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("true1"); } else if (enteredCode.length == 2) { addElement("true2"); } else if (enteredCode.length == 3) { addElement("true3"); } else if (enteredCode.length == 4) { addElement("true4"); } } else if (enteredCode[elementPlace] != passCode[elementPlace]) { if (enteredCode.length == 1) { addElement("false1"); } else if (enteredCode.length == 2) { addElement("false2"); } else if (enteredCode.length == 3) { addElement("false3"); } else if (enteredCode.length == 4) { addElement("false4"); } } } correctNotUpdate(); } if (menuLayer == 4) { if (selectedRegime == 1) { if (selectedProcedure < 4) { selectedProcedure++; playAudio(audioBeep); displayProcedure(); } } else if (selectedRegime == 2) { if (selectedProcedure < 9) { selectedProcedure++; playAudio(audioBeep); displayProcedure(); } } else if (selectedRegime == 3) { if (selectedProcedure < 3) { selectedProcedure++; playAudio(audioBeep); displayProcedure(); } } if (activeMenu == 1) { clearOutActive(); } } if (menuLayer == 6) { if (tipIllumination > 0) { addElement("topBtn"); addElement("bottomBtn"); tipIllumination--; tipIlluminationVisuals(); } } if (menuLayer == 7) { if (aimingLight > 0) { addElement("topBtn"); addElement("bottomBtn"); aimingLight--; aimingLightVisuals(); } } if (menuLayer == 8) { if (soundLevel > 0) { addElement("topBtn"); addElement("bottomBtn"); soundLevel--; soundVisuals(); changeLoudness(); } } if (menuLayer == 9) { if (hapticPedal > 0) { addElement("topBtn"); addElement("bottomBtn"); hapticPedal--; hapticPedalVisuals(); } } if (menuLayer == 10) { if (hapticPBM > 0) { addElement("topBtn"); addElement("bottomBtn"); hapticPBM--; hapticPBMVisuals(); } } } //right button function btnRight() { if (menuLayer == 3 || menuLayer == 2) { if (activeMenu != 1) { if (powerLvl < 20) { powerLvl++; powerLevel(powerLvl) playAudio(audioBeep); } } } if (menuLayer == 4 && activeMenu == 0) { if (selectedRegime < 3) { selectedRegime++; selectedProcedure = 0; playAudio(audioBeep); displayProcedure(); } if (activeMenu == 1) { clearOutActive(); } } if (menuPBM == 1) { if (timerSetValue < 99) { playAudio(audioBeep); timerSetValue++; killTweensPBM(); timerValue(timerSetValue); countingDownValue = timerSetValue; } } } //left button function btnLeft() { if (menuLayer == 3 || menuLayer == 2) { if (activeMenu != 1) { if (powerLvl > 0) { powerLvl--; powerLevel(powerLvl) playAudio(audioBeep); } } } if (menuLayer == 4 && activeMenu == 0) { if (selectedRegime > 1) { selectedRegime--; selectedProcedure = 0; playAudio(audioBeep); displayProcedure(); } if (activeMenu == 1) { clearOutActive(); } } if (menuPBM == 1) { if (timerSetValue > 0) { playAudio(audioBeep); timerSetValue--; killTweensPBM(); timerValue(timerSetValue); countingDownValue = timerSetValue; } } } //checks if entered passcode is correct and proceeds function correctNot() { if (enteredCode.length == 4) { var equalMembers = 0; for (i = 1; i <= 4; i++) { if (enteredCode[i - 1] == passCode[i - 1]) { equalMembers++; } } if (equalMembers == 4) { addElement("disableAll"); setTimeout(() => removeElement("true1"), 500); setTimeout(() => removeElement("true2"), 500); setTimeout(() => removeElement("true3"), 500); setTimeout(() => removeElement("true4"), 500); setTimeout(() => removeElement("false1"), 500); setTimeout(() => removeElement("false2"), 500); setTimeout(() => removeElement("false3"), 500); setTimeout(() => removeElement("false4"), 500); setTimeout(() => removeElement("screenPassCode"), 500); setTimeout(() => removeElement("topBtn"), 500); setTimeout(() => removeElement("bottomBtn"), 500); setTimeout(() => removeElement("disableAll"), 1000); enteredCode = []; if (menuLayer == 1) { setTimeout(() => chooseWavelength(), 1000); setTimeout(() => document.getElementById("guidingText").innerHTML = "Select a wavelength", 1000); } } else { enteredCode = []; addElement("disableAll"); setTimeout(() => removeElement("true1"), 500); setTimeout(() => removeElement("true2"), 500); setTimeout(() => removeElement("true3"), 500); setTimeout(() => removeElement("true4"), 500); setTimeout(() => removeElement("false1"), 500); setTimeout(() => removeElement("false2"), 500); setTimeout(() => removeElement("false3"), 500); setTimeout(() => removeElement("false4"), 500); setTimeout(() => removeElement("disableAll"), 500); document.getElementById("guidingText").innerHTML = "Try again - UP | UP | DOWN | DOWN" } } } //checks if entered passcode is correct and proceeds function correctNotUpdate() { if (enteredCode.length == 4) { var equalMembers = 0; for (i = 1; i <= 4; i++) { if (enteredCode[i - 1] == passCode[i - 1]) { equalMembers++; } } if (equalMembers == 4) { addElement("disableAll"); setTimeout(() => removeElement("true1"), 500); setTimeout(() => removeElement("true2"), 500); setTimeout(() => removeElement("true3"), 500); setTimeout(() => removeElement("true4"), 500); setTimeout(() => removeElement("false1"), 500); setTimeout(() => removeElement("false2"), 500); setTimeout(() => removeElement("false3"), 500); setTimeout(() => removeElement("false4"), 500); setTimeout(() => removeElement("screenPassCode"), 500); setTimeout(() => removeElement("topBtn"), 500); setTimeout(() => removeElement("bottomBtn"), 500); setTimeout(() => removeElement("disableAll"), 1000); document.getElementById("guidingText").innerHTML = "Enter passcode - UP | UP | DOWN | DOWN" enteredCode = []; if (updateMenu == 2) { setTimeout(() => updateSequence(), 1000); } } else { enteredCode = []; addElement("disableAll"); setTimeout(() => removeElement("true1"), 500); setTimeout(() => removeElement("true2"), 500); setTimeout(() => removeElement("true3"), 500); setTimeout(() => removeElement("true4"), 500); setTimeout(() => removeElement("false1"), 500); setTimeout(() => removeElement("false2"), 500); setTimeout(() => removeElement("false3"), 500); setTimeout(() => removeElement("false4"), 500); setTimeout(() => removeElement("disableAll"), 500); document.getElementById("guidingText").innerHTML = "Try again - UP | UP | DOWN | DOWN" } } } //choose wavelength function chooseWavelength() { addElement("screen980"); addElement("screenLine980"); addElement("screen810"); addElement("screenLine810"); addElement("eightBtn"); addElement("nineBtn"); addElement("dualBtn"); opacity75("eightBtn"); opacity75("dualBtn"); opacity75("nineBtn"); blinkWavelengths(); blinkScreenWavelengths(); playAudio(audioSelectWavelength); } //blinking the wavelengths (GSAP) function blinkWavelengths() { if (deviceState == 0) { gsap.killTweensOf(["#dualBtn", "#nineBtn", "#eightBtn"]) } else { gsap.to(["#dualBtn", "#nineBtn", "#eightBtn"], { duration: 0.75, opacity: 0, repeat: -1, yoyo: true, ease: "sine.inOut", }) } } //blinking the wavelengths (GSAP) function blinkScreenWavelengths() { if (deviceState == 0) { gsap.killTweensOf(["#screen980", "#screenLine980", "#screen810", "#screenLine810"]) } else { gsap.to(["#screen980", "#screenLine980", "#screen810", "#screenLine810"], { duration: 0.75, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } } //select dual WV function selectDual() { if (menuLayer == 1 || menuLayer == 2 || menuLayer == 3) { playAudio(audioDualStby); selectedWavelength = "dual"; stopWavelengths(); selectWavelength(); opacity30("nineBtn"); opacity30("eightBtn"); addElement("screenLine810"); addElement("screenStby810"); addElement("screen810"); addElement("screenLine980"); addElement("screenStby980"); addElement("screen980"); powerLevel(powerLvl); document.getElementById("guidingText").innerHTML = "Dual Standby"; } if (menuLayer == 4) { playAudio(audioDualStby); selectedWavelength = "dual"; opacity30("nineBtn"); opacity30("eightBtn"); opacityOne("dualBtn"); addElement("screenLine810"); addElement("screenStby810"); addElement("screen810"); addElement("screenLine980"); addElement("screenStby980"); addElement("screen980"); displayProcedure(); } if (activeMenu == 1) { clearOutActive(); } } //select eight WV function selectEight() { if (menuLayer == 1 || menuLayer == 2 || menuLayer == 3) { playAudio(audio810Stby); selectedWavelength = "810"; stopWavelengths(); selectWavelength(); opacity30("nineBtn"); opacity30("dualBtn"); addElement("screenLine810"); addElement("screenStby810"); addElement("screen810"); showElement("screenLine980"); showElement("screen980"); opacity30("screenLine980") opacity30("screen980") removeElement("screenStby980") powerLevel(powerLvl); document.getElementById("guidingText").innerHTML = "810nm Standby" } if (menuLayer == 4) { playAudio(audio810Stby); selectedWavelength = "810"; opacity30("nineBtn"); opacity30("dualBtn"); opacityOne("eightBtn"); addElement("screenLine810"); addElement("screenStby810"); addElement("screen810"); showElement("screenLine980"); showElement("screen980"); opacity30("screenLine980") opacity30("screen980") removeElement("screenStby980") displayProcedure(); } if (activeMenu == 1) { clearOutActive(); } } //select nine WV function selectNine() { if (menuLayer == 1 || menuLayer == 2 || menuLayer == 3) { playAudio(audio980Stby); selectedWavelength = "980"; stopWavelengths(); selectWavelength(); opacity30("eightBtn"); opacity30("dualBtn"); addElement("screenLine980"); addElement("screenStby980"); addElement("screen980"); showElement("screenLine810"); showElement("screen810"); opacity30("screenLine810") opacity30("screen810") removeElement("screenStby810") powerLevel(powerLvl); document.getElementById("guidingText").innerHTML = "980nm Standby"; } if (menuLayer == 4) { playAudio(audio980Stby); selectedWavelength = "980"; opacity30("eightBtn"); opacity30("dualBtn"); opacityOne("nineBtn"); addElement("screenLine980"); addElement("screenStby980"); addElement("screen980"); showElement("screenLine810"); showElement("screen810"); opacity30("screenLine810") opacity30("screen810") removeElement("screenStby810") displayProcedure(); } if (activeMenu == 1) { clearOutActive(); } } //stop wavelenghts animation function stopWavelengths () { gsap.killTweensOf(["#dualBtn", "#nineBtn", "#eightBtn"]) gsap.killTweensOf(["#screen980", "#screenLine980", "#screen810", "#screenLine810"]) addElement("dualBtn"); addElement("nineBtn"); addElement("eightBtn"); removeElement("screen980"); removeElement("screen810"); removeElement("screenLine980"); removeElement("screenLine810"); } //icons added once wavelength is selected function selectWavelength() { menuLayer = 2; addElement("homeBtn"); addElement("presetBtn"); addElement("wifiBtn"); addElement("menuBtn"); addElement("rightBtn"); addElement("leftBtn"); addElement("activeBtn"); addElement("stbyBtn"); addElement("screenAvgWatts"); addElement("screenPeak"); addElement("screenIcon1"); addElement("screenIcon4"); addElement("screenIcon6"); addElement("rightBtn"); addElement("leftBtn"); removeElement("topBtn"); removeElement("bottomBtn") setTimeout(() => document.getElementById("pressThePedal").style.opacity = "0.5", 1000); setTimeout(() => document.getElementById("simulateUpdate").style.opacity = "0.35", 1000); if (pedalState == 0 || activeMenu == 1) { setTimeout(() => addElement("pressThePedal"), 1000); } setTimeout(() => addElement("simulateUpdate"), 1000); } //menu layer 3 - home menu function btnHome () { playAudio(audioBeep); if (menuLayer == 4) { clearOutPresetMenu(); } else if (menuLayer == 5) { clearOutMainMenu(); } else if (menuLayer == 6) { clearOutMainMenu(); clearOutTipLightMenu(); } else if (menuLayer == 7) { clearOutMainMenu(); clearOutAimingLightMenu() } else if (menuLayer == 8) { clearOutMainMenu(); clearOutSoundMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutMainMenu(); clearOutHapticMenu(); } else if (updateMenu == 2) { homeMenu = 1; menuLayer = 3; document.getElementById("guidingText").innerHTML = "Navigate the menu using the GTI"; powerLvl = 0; powerLevel(powerLvl); updateMenu = 0; document.getElementById("updateBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/updateBtn.png)"; removeElement("updateBtn"); addElement("stopBtn"); addElement("onBtn"); addElement("pedalReleasedOff"); addElement("guidingText"); removeElement("topBtn"); removeElement("bottomBtn"); removeElement("screenPassCode"); removeElement("true1"); removeElement("true2"); removeElement("true3"); removeElement("true4"); removeElement("false1"); removeElement("false2"); removeElement("false3"); removeElement("false4"); addElement("turnSoundOn"); opacity50("turnSoundOn"); document.getElementById("guidingText").style.opacity = "0.5"; selectWavelength(); updateCounter = 0; pedalState = 0; document.getElementById("pressThePedal").innerHTML = "Press to wake up" if (selectedWavelength == "dual") { selectDual(); removeElement("topBtn"); removeElement("bottomBtn"); } else if (selectedWavelength == "810") { selectEight(); removeElement("topBtn"); removeElement("bottomBtn"); } else if (selectedWavelength == "980") { selectNine(); removeElement("topBtn"); removeElement("bottomBtn"); } } if (homeMenu == 0) { homeMenu = 1; menuLayer = 3; document.getElementById("guidingText").innerHTML = "Adjust power using the left and right arrow"; powerLvl = 0; powerLevel(powerLvl); } else { menuLayer = 2; clearOutHomeMenu(); document.getElementById("guidingText").innerHTML = "Navigate the menu using the GTI"; } if (activeMenu == 1) { clearOutActive(); } if (menuPBM != 0) { clearOutPBM(); clearOutActive(); } } //clear out all that has been added by the home menu when exiting or entering a new one function clearOutHomeMenu() { homeMenu = 0; powerLvl = 0; powerLevel(powerLvl); } //layer 4 - preset menu function btnPreset() { if (menuLayer == 3) { clearOutHomeMenu(); } else if (menuLayer == 5) { clearOutMainMenu(); } playAudio(audioBeep); if (presetMenu == 0) { presetMenu = 1; powerLvl = 0; powerLevel(powerLvl); menuLayer = 4; document.getElementById("guidingText").innerHTML = "Select a preset procedure using the arrows"; addElement("topBtn"); addElement("bottomBtn"); addElement("screenPainRelief"); addElement("screenSurgical"); addElement("screenNonSurgical"); opacity30("screenPainRelief"); opacityOne("screenSurgical"); opacity30("screenNonSurgical"); for (i = 1; i <= 9; i++) { addElement("ss" + i); opacity30("ss" + i); } for (i = 1; i <= 4; i++) { addElement("sns" + i); opacity30("sns" + i); } for (i = 1; i <= 3; i++) { addElement("spr" + i); opacity30("spr" + i); } } else { menuLayer = 2; document.getElementById("guidingText").innerHTML = "Navigate the menu using the GTI"; clearOutPresetMenu(); } if (activeMenu == 1) { clearOutActive(); } } //clear out all that has been added by the preset menu when exiting or entering a new one function clearOutPresetMenu() { presetMenu = 0; powerLvl = 0; powerLevel(powerLvl); removeElement("screenPainRelief"); removeElement("screenSurgical"); removeElement("screenNonSurgical"); removeElement("topBtn"); removeElement("bottomBtn"); removeElement("tip7mm"); removeElement("tip3mm"); removeElement("tip25mm"); selectedRegime = 2; selectedProcedure = 0; for (i = 1; i <= 9; i++) { removeElement("ss" + i); } for (i = 1; i <= 4; i++) { removeElement("sns" + i); } for (i = 1; i <= 3; i++) { removeElement("spr" + i); } } function opacityAllProcedures() { for (i = 1; i <= 9; i++) { opacity30("ss" + i); } for (i = 1; i <= 4; i++) { opacity30("sns" + i); } for (i = 1; i <= 3; i++) { opacity30("spr" + i); } removeElement("tip7mm"); removeElement("tip25mm") removeElement("tip3mm"); } function displayProcedure() { if (selectedRegime == 1) { opacity30("screenPainRelief"); opacity30("screenSurgical"); opacityOne("screenNonSurgical"); if (selectedProcedure == 0) { opacityAllProcedures(); powerLvl = 0; powerLevel(powerLvl); } else if (selectedProcedure == 1) { opacityAllProcedures(); opacityOne("sns1"); if (selectedWavelength == "810") { powerLvl = 6; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 5; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 6; powerLevel(powerLvl); } } else if (selectedProcedure == 2) { opacityAllProcedures(); opacityOne("sns2"); if (selectedWavelength == "810") { powerLvl = 7; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 6; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 8; powerLevel(powerLvl); } } else if (selectedProcedure == 3) { opacityAllProcedures(); opacityOne("sns3"); if (selectedWavelength == "810") { powerLvl = 9; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 8; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 10; powerLevel(powerLvl); } } else if (selectedProcedure == 4) { opacityAllProcedures(); opacityOne("sns4"); if (selectedWavelength == "810") { powerLvl = 4; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 3; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 5; powerLevel(powerLvl); } } } else if (selectedRegime == 2) { opacity30("screenPainRelief"); opacityOne("screenSurgical"); opacity30("screenNonSurgical"); if (selectedProcedure == 0) { opacityAllProcedures(); powerLvl = 0; powerLevel(powerLvl); } else if (selectedProcedure == 1) { opacityAllProcedures(); opacityOne("ss1"); if (selectedWavelength == "810") { powerLvl = 11; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 10; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 12; powerLevel(powerLvl); } } else if (selectedProcedure == 2) { opacityAllProcedures(); opacityOne("ss2"); if (selectedWavelength == "810") { powerLvl = 13; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 11; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 15; powerLevel(powerLvl); } } else if (selectedProcedure == 3) { opacityAllProcedures(); opacityOne("ss3"); if (selectedWavelength == "810") { powerLvl = 8; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 7; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 9; powerLevel(powerLvl); } } else if (selectedProcedure == 4) { opacityAllProcedures(); opacityOne("ss4"); if (selectedWavelength == "810") { powerLvl = 12; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 11; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 14; powerLevel(powerLvl); } } else if (selectedProcedure == 5) { opacityAllProcedures(); opacityOne("ss5"); if (selectedWavelength == "810") { powerLvl = 8; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 7; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 9; powerLevel(powerLvl); } } else if (selectedProcedure == 6) { opacityAllProcedures(); opacityOne("ss6"); if (selectedWavelength == "810") { powerLvl = 10; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 9; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 11; powerLevel(powerLvl); } } else if (selectedProcedure == 7) { opacityAllProcedures(); opacityOne("ss7"); if (selectedWavelength == "810") { powerLvl = 12; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 11; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 14; powerLevel(powerLvl); } } else if (selectedProcedure == 8) { opacityAllProcedures(); opacityOne("ss8"); if (selectedWavelength == "810") { powerLvl = 8; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 7; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 10; powerLevel(powerLvl); } } else if (selectedProcedure == 9) { opacityAllProcedures(); opacityOne("ss9"); if (selectedWavelength == "810") { powerLvl = 9; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 8; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 10; powerLevel(powerLvl); } } } else if (selectedRegime == 3) { opacityOne("screenPainRelief"); opacity30("screenSurgical"); opacity30("screenNonSurgical"); if (selectedProcedure == 0) { opacityAllProcedures(); powerLvl = 0; powerLevel(powerLvl); } else if (selectedProcedure == 1) { opacityAllProcedures(); opacityOne("spr1"); addElement("tip7mm"); if (selectedWavelength == "810") { powerLvl = 3; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 3; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 3; powerLevel(powerLvl); } } else if (selectedProcedure == 2) { opacityAllProcedures(); opacityOne("spr2"); addElement("tip3mm"); if (selectedWavelength == "810") { powerLvl = 3; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 3; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 3; powerLevel(powerLvl); } } else if (selectedProcedure == 3) { opacityAllProcedures(); opacityOne("spr3"); addElement("tip25mm"); if (selectedWavelength == "810") { powerLvl = 10; powerLevel(powerLvl); } else if (selectedWavelength == "dual") { powerLvl = 10; powerLevel(powerLvl); } else if (selectedWavelength == "980") { powerLvl = 10; powerLevel(powerLvl); } } } } //layer 5 - menu options function btnMenu() { if (menuLayer == 3) { clearOutHomeMenu(); } else if (menuLayer == 4) { clearOutPresetMenu(); } else if (menuLayer == 6) { clearOutTipLightMenu(); } else if (menuLayer == 7) { clearOutAimingLightMenu() } else if (menuLayer == 8) { clearOutSoundMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutHapticMenu(); } playAudio(audioBeep); if (mainMenu == 0) { mainMenu = 1; powerLvl = 0; powerLevel(powerLvl); menuLayer = 5; removeElement("dualBtn"); removeElement("eightBtn"); removeElement("nineBtn"); removeElement("presetBtn"); removeElement("wifiBtn"); removeElement("activeBtn"); removeElement("stbyBtn"); removeElement("topBtn"); removeElement("bottomBtn"); removeElement("leftBtn"); removeElement("rightBtn"); addElement("hapticBtn"); addElement("aimingBtn"); addElement("tiplightBtn"); addElement("voiceBtn"); addElement("soundBtn"); document.getElementById("guidingText").innerHTML = "Choose a setting to adjust"; } else { menuLayer = 2; document.getElementById("guidingText").innerHTML = "Navigate the menu using the GTI"; clearOutMainMenu(); } if (activeMenu == 1) { clearOutActive(); } } function clearOutMainMenu() { mainMenu = 0; showWavelengths(); powerLvl = 0; powerLevel(powerLvl); addElement("presetBtn"); addElement("wifiBtn"); addElement("activeBtn"); addElement("stbyBtn"); addElement("leftBtn"); addElement("rightBtn"); removeElement("hapticBtn"); removeElement("aimingBtn"); removeElement("tiplightBtn"); removeElement("voiceBtn"); removeElement("soundBtn"); } //return wavelength buttons after being removed with the correct one selected function showWavelengths() { if (selectedWavelength == "dual") { addElement("dualBtn"); addElement("eightBtn"); addElement("nineBtn"); opacity30("eightBtn"); opacity30("nineBtn"); } else if (selectedWavelength == "810") { addElement("dualBtn"); addElement("eightBtn"); addElement("nineBtn"); opacity30("dualBtn"); opacity30("nineBtn"); } else if (selectedWavelength == "980") { addElement("dualBtn"); addElement("eightBtn"); addElement("nineBtn"); opacity30("dualBtn"); opacity30("eightBtn"); } } //tip illumination menu selecting and deselecting menu layer 6 function changeTipLight() { if (menuLayer == 7) { clearOutAimingLightMenu() } else if (menuLayer == 8) { clearOutSoundMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutHapticMenu(); } if (tipLightMenu == 0) { tipLightMenu = 1 menuLayer = 6; addElement("topBtn"); addElement("bottomBtn"); showElement("tipLitOn"); document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnGreen.png)"; if (tipIllumination == 0) { removeElement("bottomBtn"); document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnRed.png)"; playAudio(audioIlluminationOff); } else if (tipIllumination == 1) { playAudio(audioIlluminationLow); } else if (tipIllumination == 2) { playAudio(audioIlluminationMedium); } else if (tipIllumination == 3) { removeElement("topBtn"); playAudio(audioIlluminationHigh); } document.getElementById("guidingText").innerHTML = "Adjust tip illumination intensity" illuminationPreview(); removeElement("screenAiming"); for (i = 1; i <= 4; i++) { removeElement("screenAimingBar" + i); } } else { clearOutTipLightMenu(); menuLayer = 5; playAudio(audioBeep); document.getElementById("guidingText").innerHTML = "Choose a setting to adjust" } } function clearOutTipLightMenu() { tipLightMenu = 0; document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtn.png)"; removeElement("topBtn"); removeElement("bottomBtn"); hideElement("tipLitOn"); } //displays and plays sounds when tip illumination level changes function tipIlluminationVisuals() { if (tipIllumination == 0) { removeElement("bottomBtn"); document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnRed.png)"; playAudio(Off); } else if (tipIllumination == 1) { document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnGreen.png)"; playAudio(Low); } else if (tipIllumination == 2) { document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnGreen.png)"; playAudio(Medium); } else if (tipIllumination == 3) { document.getElementById("tiplightBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/tiplightBtnGreen.png)"; removeElement("topBtn"); playAudio(High); } illuminationPreview(); removeElement("screenAiming"); for (i = 1; i <= 4; i++) { removeElement("screenAimingBar" + i); } } //tip illumination preview function illuminationPreview() { addElement("tipLitOn"); if (tipIllumination == 0) { showElement("tipLitOn"); setTimeout(() => hideElement("tipLitOn"), 1500); document.getElementById("tipLitOn").style.opacity = "0"; } else if (tipIllumination == 1) { showElement("tipLitOn"); setTimeout(() => hideElement("tipLitOn"), 1500); document.getElementById("tipLitOn").style.opacity = "0.33"; } else if (tipIllumination == 2) { showElement("tipLitOn"); setTimeout(() => hideElement("tipLitOn"), 1500); document.getElementById("tipLitOn").style.opacity = "0.66"; } else if (tipIllumination == 3) { showElement("tipLitOn"); setTimeout(() => hideElement("tipLitOn"), 1500); document.getElementById("tipLitOn").style.opacity = "1"; } } //tip illumination menu selecting and deselecting menu layer 7 function changeAimingLight() { if (menuLayer == 6) { clearOutTipLightMenu(); } else if (menuLayer == 8) { clearOutSoundMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutHapticMenu(); } if (aimingLightMenu == 0) { aimingLightMenu = 1; menuLayer = 7; addElement("topBtn"); addElement("bottomBtn"); showElement("tipLaserLight"); document.getElementById("guidingText").innerHTML = "Adjust aiming light intensity" document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnGreen.png)"; if (aimingLight == 0) { removeElement("bottomBtn"); document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnRed.png)"; playAudio(aimingLightOff); } else if (aimingLight == 1) { playAudio(aimingLightLow); } else if (aimingLight == 2) { playAudio(aimingLightMedium); } else if (aimingLight == 3) { removeElement("topBtn"); playAudio(aimingLightHigh); } aimingPreview(); } else { clearOutAimingLightMenu(); menuLayer = 5; playAudio(audioBeep); document.getElementById("guidingText").innerHTML = "Choose a setting to adjust" } } //reset all function clearOutAimingLightMenu() { aimingLightMenu = 0; document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtn.png)"; removeElement("topBtn"); removeElement("bottomBtn"); hideElement("tipLaserLight"); hideElement("tipLight25"); hideElement("tipLight37"); removeElement("screenAiming"); for (i = 1; i <= 4; i++) { removeElement("screenAimingBar" + i); } } //displays and plays sounds when tip illumination level changes function aimingLightVisuals() { if (aimingLight == 0) { removeElement("bottomBtn"); document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnRed.png)"; playAudio(Off); } else if (aimingLight == 1) { document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnGreen.png)"; playAudio(Low); } else if (aimingLight == 2) { document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnGreen.png)"; playAudio(Medium); } else if (aimingLight == 3) { document.getElementById("aimingBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/aimingBtnGreen.png)"; removeElement("topBtn"); playAudio(High); } aimingPreview(); } //tip illumination preview function aimingPreview() { showElement("tipLaserLight"); if (aimingLight == 0) { showElement("tipLaserLight"); setTimeout(() => hideElement("tipLaserLight"), 1500); document.getElementById("tipLaserLight").style.opacity = "0"; document.getElementById("tipLight25").style.opacity = "0"; document.getElementById("tipLight37").style.opacity = "0"; } else if (aimingLight == 1) { showElement("tipLaserLight"); setTimeout(() => hideElement("tipLaserLight"), 1500); document.getElementById("tipLaserLight").style.opacity = "0.33"; document.getElementById("tipLight25").style.opacity = "0.33"; document.getElementById("tipLight37").style.opacity = "0.33"; } else if (aimingLight == 2) { showElement("tipLaserLight"); setTimeout(() => hideElement("tipLaserLight"), 1500); document.getElementById("tipLaserLight").style.opacity = "0.66"; document.getElementById("tipLight37").style.opacity = "0.66"; document.getElementById("tipLight25").style.opacity = "0.66"; } else if (aimingLight == 3) { showElement("tipLaserLight"); setTimeout(() => hideElement("tipLaserLight"), 1500); document.getElementById("tipLaserLight").style.opacity = "1"; document.getElementById("tipLight37").style.opacity = "1"; document.getElementById("tipLight25").style.opacity = "1"; } addElement("screenAiming"); screenAimingBar(aimingLight); } //menu layer 8 - selecting sound level function changeSound() { if (menuLayer == 6) { clearOutTipLightMenu(); } else if (menuLayer == 7) { clearOutAimingLightMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutHapticMenu(); } if (soundLevelMenu == 0) { soundLevelMenu = 1 menuLayer = 8; addElement("topBtn"); addElement("bottomBtn"); document.getElementById("guidingText").innerHTML = "Adjust sound level" document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnGreen.png)"; if (soundLevel == 0) { removeElement("bottomBtn"); document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnRed.png)"; playAudio(soundOff); } else if (soundLevel == 1) { playAudio(soundLow); } else if (soundLevel == 2) { playAudio(soundMedium); } else if (soundLevel == 3) { removeElement("topBtn"); playAudio(soundHigh); } soundPreview(); } else { clearOutSoundMenu(); menuLayer = 5; playAudio(audioBeep); document.getElementById("guidingText").innerHTML = "Choose a setting to adjust" } } //reset all function clearOutSoundMenu() { soundLevelMenu = 0; document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtn.png)"; removeElement("topBtn"); removeElement("bottomBtn"); removeElement("screenSound"); for (i = 1; i <= 4; i++) { removeElement("screenSoundBar" + i); } } //displays and plays sounds when sound changes function soundVisuals() { if (soundLevel == 0) { removeElement("bottomBtn"); document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnRed.png)"; playAudio(soundOff); } else if (soundLevel == 1) { document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnGreen.png)"; playAudio(Low); Low.volume = 0.25; } else if (soundLevel == 2) { document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnGreen.png)"; playAudio(Medium); Medium.volume = 0.5; } else if (soundLevel == 3) { document.getElementById("soundBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/soundBtnGreen.png)"; removeElement("topBtn"); playAudio(High); } soundPreview(); } //sound bars function soundPreview() { addElement("screenSound"); soundBars(soundLevel); } //level 9 - 10 foot pedal haptic function btnHaptic() { if (menuLayer == 6) { clearOutTipLightMenu(); } else if (menuLayer == 7) { clearOutAimingLightMenu(); } else if (menuLayer == 8) { clearOutSoundMenu(); } if (hapticMenu == 0 || hapticMenu == 2) { hapticMenu = 1; menuLayer = 9; addElement("topBtn"); addElement("bottomBtn"); document.getElementById("guidingText").innerHTML = "Adjust pedal haptic feedback" document.getElementById("hapticBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/hapticBtnBlue.png)"; if (hapticPedal == 0) { removeElement("bottomBtn"); playAudio(pedalHaptic); setTimeout(() => playAudio(Off), 2000); } else if (hapticPedal == 1) { playAudio(pedalHaptic); setTimeout(() => playAudio(Low), 2000); } else if (hapticPedal == 2) { playAudio(pedalHaptic); setTimeout(() => playAudio(Medium), 2000); } else if (hapticPedal == 3) { removeElement("topBtn"); playAudio(pedalHaptic); setTimeout(() => playAudio(High), 1500); } } else if (hapticMenu == 1) { hapticMenu = 2; menuLayer = 10; addElement("topBtn"); addElement("bottomBtn"); document.getElementById("guidingText").innerHTML = "Adjust PBM haptic feedback" document.getElementById("hapticBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/hapticBtnOrange.png)"; if (hapticPBM == 0) { removeElement("bottomBtn"); playAudio(pbmHaptic); setTimeout(() => playAudio(Off), 2000); } else if (hapticPBM == 1) { playAudio(pbmHaptic); setTimeout(() => playAudio(Low), 2000); } else if (hapticPBM == 2) { playAudio(pbmHaptic); setTimeout(() => playAudio(Medium), 2000); } else if (hapticPBM == 3) { removeElement("topBtn"); playAudio(pbmHaptic); setTimeout(() => playAudio(High), 2000); } } else { clearOutHapticMenu(); menuLayer = 5; playAudio(audioBeep); document.getElementById("guidingText").innerHTML = "Choose a setting to adjust" } } function hapticPedalVisuals() { if (hapticPedal == 0) { removeElement("bottomBtn"); playAudio(Off); } else if (hapticPedal == 1) { playAudio(Low); } else if (hapticPedal == 2) { playAudio(Medium); } else if (hapticPedal == 3) { removeElement("topBtn"); playAudio(High); } } function hapticPBMVisuals() { if (hapticPBM == 0) { removeElement("bottomBtn"); playAudio(Off); } else if (hapticPBM == 1) { playAudio(Low); } else if (hapticPBM == 2) { playAudio(Medium); } else if (hapticPBM == 3) { removeElement("topBtn"); playAudio(High); } } function clearOutHapticMenu() { document.getElementById("hapticBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/hapticBtn.png)"; hapticMenu = 0; removeElement("topBtn"); removeElement("bottomBtn"); } //voice confirmation function voiceConfirm() { if (menuLayer == 6) { clearOutTipLightMenu(); } else if (menuLayer == 7) { clearOutAimingLightMenu(); } else if (menuLayer == 8) { clearOutSoundMenu(); } else if (menuLayer == 9 || menuLayer == 10) { clearOutHapticMenu(); } if (voiceConfirmation == 1) { voiceConfirmation = 0; document.getElementById("voiceBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/voiceBtnRed.png)"; playAudio(voiceOff); } else { voiceConfirmation = 1; document.getElementById("voiceBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/voiceBtn.png)"; playAudio(voiceOn); } } //layer 11 - activating a procedure function btnActivate() { if (powerLvl != 0) { if(menuLayer == 3 || menuLayer == 2){ if (activeMenu == 0) { if (selectedWavelength == "dual") { addElement("screenActive810"); addElement("screenActive980"); } else if (selectedWavelength == "810") { addElement("screenActive810"); removeElement("screenActive980"); } else if (selectedWavelength == "980") { addElement("screenActive980"); removeElement("screenActive810"); } activeMenu = 1; removeElement("screenStby810"); removeElement("screenStby980"); addElement("screenIcon5"); if (pedalState == 1) { addElement("pedalHapticReleased"); addElement("pedalBthReleased"); } activatedProcedure(); document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtnGreen.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtnInactive.png)"; document.getElementById("guidingText").innerHTML = "Press Active again to go back"; setTimeout(() => addElement("pressThePedal"), 200); showHideLights(); } else if (pedalState == 1 && activeMenu == 1) { clearOutActive(); pauseAudio(beepContinious); removeElement("screenActive980"); removeElement("screenActive810"); } else if (pedalState != 1 && activeMenu == 1) { clearOutActive(); removeElement("pressThePedal"); pauseAudio(beepContinious); removeElement("screenActive980"); removeElement("screenActive810"); } } if (menuLayer == 4 && selectedRegime != 3) { if (activeMenu == 0) { if (selectedWavelength == "dual") { addElement("screenActive810"); addElement("screenActive980"); } else if (selectedWavelength == "810") { addElement("screenActive810"); removeElement("screenActive980"); } else if (selectedWavelength == "980") { addElement("screenActive980"); removeElement("screenActive810"); } activeMenu = 1; removeElement("screenStby810"); removeElement("screenStby980"); addElement("screenIcon5"); if (pedalState == 1) { addElement("pedalHapticReleased"); addElement("pedalBthReleased"); } removeElement("topBtn"); removeElement("bottomBtn"); activatedProcedure(); document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtnGreen.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtnInactive.png)"; document.getElementById("guidingText").innerHTML = "Press Active again to go back"; setTimeout(() => addElement("pressThePedal"), 200); showHideLights(); } else if (pedalState == 1 && activeMenu == 1) { clearOutActive(); pauseAudio(beepContinious); removeElement("screenActive980"); removeElement("screenActive810"); } else if (pedalState != 1 && activeMenu == 1) { clearOutActive(); removeElement("pressThePedal"); pauseAudio(beepContinious); removeElement("screenActive980"); removeElement("screenActive810"); } } } if (timerValue != 0) { if (selectedRegime == 3 && selectedProcedure != 0) { if (activeMenu == 0) { timerValue(0); timerSetValue = 0; removeIconsPBM(); timerAnimation(); addElement("screenTimer"); activeMenu = 2; menuPBM = 1; document.getElementById("guidingText").innerHTML = "Adjust time using the arrows"; showHideLights(); } else if (activeMenu == 2 && timerSetValue != 0) { activeMenu = 1; menuPBM = 2; addElement("screenIcon5"); if (pedalState == 1) { addElement("pedalHapticReleased"); addElement("pedalBthReleased"); } setTimeout(() => addElement("pressThePedal"), 200); activatedProcedure(); removeElement("screenStby810"); removeElement("screenStby980"); addElement("screenIcon5"); if (selectedWavelength == "dual") { addElement("screenActive810"); addElement("screenActive980"); } else if (selectedWavelength == "810") { addElement("screenActive810"); removeElement("screenActive980"); } else if (selectedWavelength == "980") { addElement("screenActive980"); removeElement("screenActive810"); } document.getElementById("guidingText").innerHTML = "Press pedal to fire the laser"; document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtnGreen.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtnInactive.png)"; showHideLights(); } else if (activeMenu == 1 && menuPBM == 2) { menuPBM = 0; activeMenu = 0; document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtn.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtn.png)"; clearOutPBM(); clearInterval(obj); timerValue(0); timerSetValue = 0; removeElement("screenActive810"); removeElement("screenActive980"); pauseAudio(beepContinious); removeElement("disableAll"); removeElement("screenActive810"); removeElement("screenActive980"); if (pedalState == 1) { addElement("pedalHapticReleased"); addElement("pedalBthReleased"); } showHideLights(); clearOutActive(); addElement("topBtn"); addElement("bottomBtn"); } } } } //remove icons for PBM function removeIconsPBM() { removeElement("eightBtn"); removeElement("dualBtn"); removeElement("nineBtn"); removeElement("topBtn"); removeElement("bottomBtn"); removeElement("aimingBtn"); removeElement("updateBtn"); removeElement("presetBtn"); removeElement("wifiBtn"); removeElement("tiplightBtn"); removeElement("menuBtn"); removeElement("soundBtn"); removeElement("voiceBtn"); removeElement("H"); removeElement("screenAvgWatts"); addElement("screenTimer"); } function clearOutPBM() { menuPBM = 0; timerSetValue = 0; addElement("eightBtn"); addElement("dualBtn"); addElement("nineBtn"); addElement("presetBtn"); addElement("menuBtn"); addElement("wifiBtn"); powerLevel(0); addElement("H"); addElement("screenAvgWatts"); removeElement("screenTimer"); killTweensPBM(); timerValue(0); document.getElementById("guidingText").innerHTML = "Navigate the menu using the GTI"; showWavelengths(); } //counting down functions function countDown() { if (pedalState == 1 && deviceState == 1) { obj = setInterval(decrementingFunction, 800); document.getElementById("pressThePedal").innerHTML = "Release to pause"; pedalState = 2; document.getElementById("guidingText").innerHTML = "Laser is firing"; pedalPressAnimation(); playAudio(beepContinious); document.getElementById("beepContinious").loop = true; addElement("disableAll"); } else if (pedalState == 2 && deviceState == 1) { pedalState = 1; clearInterval(obj); document.getElementById("pressThePedal").innerHTML = "Press to fire laser"; document.getElementById("guidingText").innerHTML = "Press to continue"; pedalPressAnimation(); pauseAudio(beepContinious); removeElement("disableAll"); } } function decrementingFunction() { if (countingDownValue > 0 && deviceState == 1) { countingDownValue--; timerValue(countingDownValue); } else if (countingDownValue == 0 && deviceState == 1) { clearInterval(obj); countingDownValue = timerSetValue; pedalState = 1; playAudio(threeBeepPBM); document.getElementById("pressThePedal").innerHTML = "Press to fire laser"; document.getElementById("guidingText").innerHTML = "Press to continue"; pedalPressAnimation(); pauseAudio(beepContinious); timerValue(timerSetValue); } } //clear out active menu function clearOutActive() { if(selectedRegime != 3) { activeMenu = 0; if (menuLayer != 2 && menuLayer !=3) { addElement("topBtn"); addElement("bottomBtn"); } } document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtn.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtn.png)"; document.getElementById("guidingText").innerHTML = "Choose another procedure settings and press Active"; removeElement("screenActive980"); removeElement("screenActive810"); removeElement("pedalHapticReleased"); removeElement("pedalBthReleased"); hideElement("tipLaserLight"); hideElement("tipLight25"); hideElement("tipLight37"); removeElement("screenIcon5"); if (pedalState == 2) { document.getElementById("pressThePedal").innerHTML = "Press to fire laser"; pedalState = 1; pedalPressAnimation(); } if (pedalState != 0) { removeElement("pressThePedal"); } showHideLights(); if (selectedWavelength == "810") { playAudio(audio810Stby); addElement("screenStby810"); } else if (selectedWavelength == "980") { playAudio(audio980Stby); addElement("screenStby980"); } else if (selectedWavelength == "dual") { playAudio(audioDualStby); addElement("screenStby980"); addElement("screenStby810"); } } //pedal actions function pressPedal() { if (selectedRegime == 1 || selectedRegime == 2) { if (pedalState == 1) { pedalState = 2; document.getElementById("pressThePedal").innerHTML = "Press to release"; document.getElementById("guidingText").innerHTML = "Laser is firing"; pedalPressAnimation(); playAudio(beepContinious); document.getElementById("beepContinious").loop = true; addElement("disableAll"); } else if (pedalState == 2) { pedalState = 1; document.getElementById("pressThePedal").innerHTML = "Press to fire laser"; document.getElementById("guidingText").innerHTML = "Choose another procedure settings and press Active"; pedalPressAnimation(); pauseAudio(beepContinious); removeElement("disableAll"); } } if (selectedRegime == 3 && menuPBM == 2 && pedalState != 0) { countDown(); } if (pedalState == 0 && deviceState == 1) { pedalState = 1; wakeUpPedalAnimation(); removeElement("pressThePedal"); } } //waking up the pedal function wakeUpPedalAnimation() { if (activeMenu == 0) { addElement("pedalPressed"); addElement("pedalBatPressed"); addElement("pedalPressedOff") setTimeout(() => addElement("pedalBatReleased"), 500); setTimeout(() => removeElement("pedalPressed"), 500); setTimeout(() => removeElement("pedalBatPressed"), 500); setTimeout(() => removeElement("pedalPressedOff"), 500); setTimeout(() => document.getElementById("pressThePedal").innerHTML = "Press to fire laser", 600); } else if (activeMenu == 1) { addElement("pedalPressed"); addElement("pedalBatPressed"); addElement("pedalBthPressed"); addElement("pedalHapticPressed"); addElement("pedalPressedOff") setTimeout(() => addElement("pedalBatReleased"), 500); setTimeout(() => addElement("pedalBthReleased"), 500); setTimeout(() => addElement("pedalHapticReleased"), 500); setTimeout(() => removeElement("pedalBthPressed"), 500); setTimeout(() => removeElement("pedalHapticPressed"), 500); setTimeout(() => removeElement("pedalPressed"), 500); setTimeout(() => removeElement("pedalBatPressed"), 500); setTimeout(() => removeElement("pedalPressedOff"), 500); setTimeout(() => addElement("pressThePedal"), 600); setTimeout(() => document.getElementById("pressThePedal").innerHTML = "Press to fire laser", 600); } else if (activeMenu == 2) { addElement("pedalPressed"); addElement("pedalBatPressed"); addElement("pedalPressedOff") setTimeout(() => addElement("pedalBatReleased"), 500); setTimeout(() => removeElement("pedalPressed"), 500); setTimeout(() => removeElement("pedalBatPressed"), 500); setTimeout(() => removeElement("pedalPressedOff"), 500); setTimeout(() => document.getElementById("pressThePedal").innerHTML = "Press to fire laser", 600); } } //single press the pedal, for 1-2 presets and custom power level function pedalPressAnimation() { if (pedalState == 1) { removeElement("pedalPressed"); removeElement("pedalBatPressed"); removeElement("pedalBthPressed"); removeElement("pedalHapticPressed"); removeElement("pedalLaserPressed"); removeElement("pedalPressedOff"); removeElement("disableAll"); blinkActiveWV(); } else { addElement("pedalPressed"); addElement("pedalBatPressed"); addElement("pedalPressedOff"); addElement("pedalBthPressed"); addElement("pedalHapticPressed"); addElement("pedalLaserPressed"); addElement("disableAll"); blinkActiveWV(); } } //active, blinking wavelengths function blinkActiveWV() { if (pedalState == 2) { if (selectedWavelength == "810") { gsap.to(["#screen810", "#screenActive810"], { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } else if (selectedWavelength == "980") { gsap.to(["#screen980", "#screenActive980"], { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } else if (selectedWavelength == "dual") { gsap.to(["#screen810", "#screenActive810", "#screen980", "#screenActive980"], { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } } else { gsap.killTweensOf(["#screen980", "#screenActive980", "#screen810", "#screenActive810"]); if (selectedWavelength == "810") { addElement("screen810"); addElement("screenActive810"); } else if (selectedWavelength == "980") { addElement("screen980"); addElement("screenActive980"); } else if (selectedWavelength == "dual") { addElement("screen980"); addElement("screenActive980"); addElement("screen810"); addElement("screenActive810"); } } } function activatedProcedure() { if (selectedRegime == 1) { if (selectedProcedure == 1) { playAudio(decontamination); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 2) { playAudio(debridement); setTimeout(() => playAudio(audioActive), 1000); } else if (selectedProcedure == 3) { playAudio(aphtousulcer); setTimeout(() => playAudio(audioActive), 1000); } else if (selectedProcedure == 4) { playAudio(hemostasis); setTimeout(() => playAudio(audioActive), 1000); } } if (selectedRegime == 2) { if (selectedProcedure == 1) { playAudio(incision); setTimeout(() => playAudio(audioActive), 2000); } else if (selectedProcedure == 2) { playAudio(implantrecovery); setTimeout(() => playAudio(audioActive), 1500); } else if (selectedProcedure == 3) { playAudio(toothexposure); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 4) { playAudio(operculectomy); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 5) { playAudio(gingivoplasty); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 6) { playAudio(gingivectomy); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 7) { playAudio(frenectomy); setTimeout(() => playAudio(audioActive), 1250); } else if (selectedProcedure == 8) { playAudio(pulpotomy); setTimeout(() => playAudio(audioActive), 1000); } else if (selectedProcedure == 9) { playAudio(troughing); setTimeout(() => playAudio(audioActive), 1000); } } if (selectedRegime == 3) { if (selectedProcedure == 1) { playAudio(audio7mm); setTimeout(() => playAudio(audioActive), 1500); } else if (selectedProcedure == 2) { playAudio(audio3mm); setTimeout(() => playAudio(audioActive), 1500); } else if (selectedProcedure == 3) { playAudio(audio25mm); setTimeout(() => playAudio(audioActive), 2000); } } if (presetMenu == 0) { if (selectedWavelength == "810") { playAudio(active810); } else if (selectedWavelength == "980") { playAudio(active980); } else if (selectedWavelength == "dual") { playAudio(activeDual); } } } //simulate update feature function simulateUpdate() { if (updateMenu == 0) { menuLayer = 0; updateMenu = 1; gsap.killTweensOf("#screenIcon3"); playAudio(updateAvailable); addElement("screenIcon3"); gsap.to("#screenIcon3", { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) gsap.killTweensOf("#updateBtn"); addElement("updateBtn"); document.getElementById("updateBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/updateBtnRed.png)"; gsap.to("#updateBtn", { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } else if (updateMenu == 1) { var nodes = document.getElementById("baseImage").childNodes; for (var i = 0; i < nodes.length; i++) { if (nodes[i].nodeName.toLowerCase() == "div") { nodes[i].style.opacity = "0"; nodes[i].style.visibility = "hidden"; } } addElement("turnSoundOn"); opacity50("turnSoundOn"); updateMenu = 2; document.getElementById("updateBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/updateBtn.png)"; passCode = [1, 1, 0, 0]; enteredCode = []; addElement("pedalReleasedOff"); addElement("updateBtn"); addElement("homeBtn"); addElement("stopBtn"); addElement("onBtn"); addElement("guidingText"); document.getElementById("guidingText").style.opacity = "0.5"; blinkBtn(50); setTimeout(() => playAudio(audioPassCode), 150); } console.log(updateMenu); } //update sequence function updateSequence() { var nodes = document.getElementById("baseImage").childNodes; for (var i = 0; i < nodes.length; i++) { if (nodes[i].nodeName.toLowerCase() == "div") { nodes[i].style.opacity = "0"; nodes[i].style.visibility = "hidden"; } } addElement("turnSoundOn"); opacity50("turnSoundOn"); playAudio(updating); updateMenu = 0; addElement("disableAll"); addElement("pedalReleasedOff"); addElement("stopBtn"); addElement("onBtn"); addElement("guidingText"); addElement("screenUltradent"); addElement("screenIconsLineTop"); addElement("screenIconsLineBottom"); document.getElementById("guidingText").innerHTML = "Update in progress - do not turn off" document.getElementById("guidingText").style.opacity = "0.5"; obj1 = setInterval(incrementingValue, 100); for (i = 1; i <= 20; i++) { var element = "spb" + i; addElement(element); opacity30(element); } } function incrementingValue() { if (updateCounter < 99) { updateCounter++; timerValue(updateCounter); for (i = 1; i <= 20; i++) { if (updateCounter > i*4.8) { opacityOne("spb" + i); } } } else if (updateCounter == 99) { deviceState = 0; setTimeout(() => shutDown(), 1500); clearInterval(obj1); document.getElementById("guidingText").innerHTML = "Rebooting device" setTimeout(() => document.getElementById("guidingText").innerHTML = "Rebooting device", 1500); setTimeout(() => location.reload(), 1750); } } //selects all divs and makes them disappear, resets the page and all variables function shutDown() { clearInterval(obj); clearInterval(obj1); addElement("disableAll") setTimeout(() => removeElement("disableAll"), 2000); setTimeout(() => shutDownSequence(), 1500); document.getElementById("guidingText").innerHTML = "Shutting down..." } function shutDownSequence() { var nodes = document.getElementById("baseImage").childNodes; for (var i = 0; i < nodes.length; i++) { if (nodes[i].nodeName.toLowerCase() == "div") { nodes[i].style.opacity = "0"; nodes[i].style.visibility = "hidden"; } } showElement("onBtn"); addElement("pedalReleasedOff"); addElement("turnSoundOn"); opacity50("turnSoundOn"); enteredCode = []; addElement("guidingText"); document.getElementById("guidingText").style.opacity = "0.5"; document.getElementById("guidingText").innerHTML = "Press the ON button to start again"; document.getElementById("activeBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/activeBtn.png)"; document.getElementById("stbyBtn").style.backgroundImage = "url(https://fs.hubspotusercontent00.net/hubfs/5802407/1_Ultradent%20Products/Campaigns/2021/Gemini_Evo/Landing_Page/images/simulator/stbyBtn.png)"; gsap.killTweensOf(["#dualBtn", "#nineBtn", "#eightBtn"]); opacityOne("eightBtn"); opacityOne("dualBtn"); opacityOne("nineBtn"); pedalState = 0; menuLayer = 0; powerLvl = 0; presetMenu = 0; homeMenu = 0; mainMenu = 0; tipLightMenu = 0; aimingLightMenu = 0; soundLevelMenu = 0; hapticMenu = 0; activeMenu = 0; selectedWavelength = ""; selectedProcedure = 0; timerSetValue = 0; countingDownValue = 0; selectedRegime = 2; menuPBM = 0; countingDownValue = 0; updateCounter = 0; updateMenu = 0; obj = null; obj1 = null; pauseAudio(beepContinious); document.getElementById("pressThePedal").innerHTML = "Press to wake up"; gsap.killTweensOf(["#screen980", "#screenLine980", "#screen810", "#screenLine810", "#screenActive810", "#screenActive980"]); removeElement("screen980"); removeElement("screen810"); removeElement("screenLine810"); removeElement("screenLine980"); removeElement("screenActive810"); removeElement("screenActive980"); gsap.killTweensOf(["#A1", "#B1", "#C1", "#D1", "#E1", "#F1", "#A2", "#B2", "#C2", "#D2", "#E2", "#F2"]); gsap.killTweensOf("#updateBtn"); gsap.killTweensOf("#screenIcon3"); removeElement("A1"); removeElement("B1"); removeElement("C1"); removeElement("D1"); removeElement("E1"); removeElement("F1"); removeElement("A2"); removeElement("B2"); removeElement("C2"); removeElement("D2"); removeElement("E2"); removeElement("F2"); } function laserStop() { deviceState = 0; shutDown(); } //universal functions used all around, not part of the sequence //toggling element visibility - makes it clickable function showElement(ID) { document.getElementById(ID).style.visibility = "visible"; } function hideElement(ID) { document.getElementById(ID).style.visibility = "hidden"; } //toggling element opacity - makes it visible function opacityOne(ID) { document.getElementById(ID).style.opacity = "1"; } function opacityZero(ID) { document.getElementById(ID).style.opacity = "0"; } //toggling both visibility and opacity at once function addElement(ID) { document.getElementById(ID).style.visibility = "visible"; document.getElementById(ID).style.opacity = "1"; } function removeElement(ID) { document.getElementById(ID).style.visibility = "hidden"; document.getElementById(ID).style.opacity = "0"; } //opacity 30% function opacity30(ID) { document.getElementById(ID).style.opacity = "0.3"; } //opacity 50% function opacity50(ID) { document.getElementById(ID).style.opacity = "0.5"; } //opacity 75% function opacity75(ID) { document.getElementById(ID).style.opacity = "0.75"; } //animate timer function timerAnimation() { if (timerSetValue == 0) { playAudio(treatmentSeconds); gsap.to(["#A1", "#B1", "#C1", "#D1", "#E1", "#F1", "#A2", "#B2", "#C2", "#D2", "#E2", "#F2"], { duration: 0.5, opacity: 0, repeat: -1, yoyo: true, ease: "steps(1)", }) } else { killTweensPBM(); timerValue(timerSetValue); } } function killTweensPBM() { gsap.killTweensOf(["#A1", "#B1", "#C1", "#D1", "#E1", "#F1", "#A2", "#B2", "#C2", "#D2", "#E2", "#F2"]); addElement("A1"); addElement("B1"); addElement("C1"); addElement("D1"); addElement("E1"); addElement("F1"); addElement("A2"); addElement("B2"); addElement("C2"); addElement("D2"); addElement("E2"); addElement("F2"); } //define numbers function numZero(place) { addElement("A" + place); addElement("B" + place); addElement("C" + place); addElement("D" + place); addElement("E" + place); addElement("F" + place); removeElement("G" + place); } function numOne(place) { removeElement("A" + place); addElement("B" + place); addElement("C" + place); removeElement("D" + place); removeElement("E" + place); removeElement("F" + place); removeElement("G" + place); } function numTwo(place) { addElement("A" + place); addElement("B" + place); removeElement("C" + place); addElement("D" + place); addElement("E" + place); removeElement("F" + place); addElement("G" + place); } function numThree(place) { addElement("A" + place); addElement("B" + place); addElement("C" + place); addElement("D" + place); removeElement("E" + place); removeElement("F" + place); addElement("G" + place); } function numFour(place) { removeElement("A" + place); addElement("B" + place); addElement("C" + place); removeElement("D" + place); removeElement("E" + place); addElement("F" + place); addElement("G" + place); } function numFive(place) { addElement("A" + place); removeElement("B" + place); addElement("C" + place); addElement("D" + place); removeElement("E" + place); addElement("F" + place); addElement("G" + place); } function numSix(place) { addElement("A" + place); removeElement("B" + place); addElement("C" + place); addElement("D" + place); addElement("E" + place); addElement("F" + place); addElement("G" + place); } function numSeven(place) { addElement("A" + place); addElement("B" + place); addElement("C" + place); removeElement("D" + place); removeElement("E" + place); removeElement("F" + place); removeElement("G" + place); } function numEight(place) { addElement("A" + place); addElement("B" + place); addElement("C" + place); addElement("D" + place); addElement("E" + place); addElement("F" + place); addElement("G" + place); } function numNine(place) { addElement("A" + place); addElement("B" + place); addElement("C" + place); addElement("D" + place); removeElement("E" + place); addElement("F" + place); addElement("G" + place); } //define power levels, 7 segment display function powerLevel(level) { addElement("screenIconsLineTop"); addElement("screenIconsLineBottom"); opacityOne("screenIconsLineTop"); opacityOne("screenIconsLineBottom"); for (i = 1; i <= 20; i++) { var element = "spb" + i; addElement(element); opacity30(element); } if (level == 0) { numZero(1); addElement("H"); numZero(2); opacity30("screenIconsLineTop"); opacity30("screenIconsLineBottom"); } else if (level == 1) { numZero(1) addElement("H"); numOne(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 2) { numZero(1); addElement("H"); numTwo(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 3) { numZero(1); addElement("H"); numThree(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 4) { numZero(1); addElement("H"); numFour(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 5) { numZero(1); addElement("H"); numFive(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 6) { numZero(1); addElement("H"); numSix(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 7) { numZero(1); addElement("H"); numSeven(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 8) { numZero(1); addElement("H"); numEight(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 9) { numZero(1); addElement("H"); numNine(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 10) { numOne(1); addElement("H"); numZero(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 11) { numOne(1); addElement("H"); numOne(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 12) { numOne(1); addElement("H"); numTwo(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 13) { numOne(1); addElement("H"); numThree(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 14) { numOne(1); addElement("H"); numFour(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 15) { numOne(1); addElement("H"); numFive(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 16) { numOne(1); addElement("H"); numSix(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 17) { numOne(1); addElement("H"); numSeven(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 18) { numOne(1); addElement("H"); numEight(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 19) { numOne(1); addElement("H"); numNine(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } else if (level == 20) { numTwo(1); addElement("H"); numZero(2); for (i = 1; i <= level; i++) { var element = "spb" + i; opacityOne(element); } } } //define timer values, 7 segment display function timerValue(timerSetValue) { if (timerSetValue == 0) { numZero(1); numZero(2); } else if (timerSetValue == 1) { numZero(1); numOne(2); } else if (timerSetValue == 2) { numZero(1); numTwo(2); } else if (timerSetValue == 3) { numZero(1); numThree(2); } else if (timerSetValue == 4) { numZero(1); numFour(2); } else if (timerSetValue == 5) { numZero(1); numFive(2); } else if (timerSetValue == 6) { numZero(1); numSix(2); } else if (timerSetValue == 7) { numZero(1); numSeven(2); } else if (timerSetValue == 8) { numZero(1); numEight(2); } else if (timerSetValue == 9) { numZero(1); numNine(2); } else if (timerSetValue == 10) { numOne(1); numZero(2); } else if (timerSetValue == 11) { numOne(1); numOne(2); } else if (timerSetValue == 12) { numOne(1); numTwo(2); } else if (timerSetValue == 13) { numOne(1); numThree(2); } else if (timerSetValue == 14) { numOne(1); numFour(2); } else if (timerSetValue == 15) { numOne(1); numFive(2); } else if (timerSetValue == 16) { numOne(1); numSix(2); } else if (timerSetValue == 17) { numOne(1); numSeven(2); } else if (timerSetValue == 18) { numOne(1); numEight(2); } else if (timerSetValue == 19) { numOne(1); numNine(2); } else if (timerSetValue == 20) { numTwo(1); numZero(2); } else if (timerSetValue == 21) { numTwo(1); numOne(2); } else if (timerSetValue == 22) { numTwo(1); numTwo(2); } else if (timerSetValue == 23) { numTwo(1); numThree(2); } else if (timerSetValue == 24) { numTwo(1); numFour(2); } else if (timerSetValue == 25) { numTwo(1); numFive(2); } else if (timerSetValue == 26) { numTwo(1); numSix(2); } else if (timerSetValue == 27) { numTwo(1); numSeven(2); } else if (timerSetValue == 28) { numTwo(1); numEight(2); } else if (timerSetValue == 29) { numTwo(1); numNine(2); } else if (timerSetValue == 30) { numThree(1); numZero(2); } else if (timerSetValue == 31) { numThree(1); numOne(2); } else if (timerSetValue == 32) { numThree(1); numTwo(2); } else if (timerSetValue == 33) { numThree(1); numThree(2); } else if (timerSetValue == 34) { numThree(1); numFour(2); } else if (timerSetValue == 35) { numThree(1); numFive(2); } else if (timerSetValue == 36) { numThree(1); numSix(2); } else if (timerSetValue == 37) { numThree(1); numSeven(2); } else if (timerSetValue == 38) { numThree(1); numEight(2); } else if (timerSetValue == 39) { numThree(1); numNine(2); } else if (timerSetValue == 40) { numFour(1); numZero(2); } else if (timerSetValue == 41) { numFour(1); numOne(2); } else if (timerSetValue == 42) { numFour(1); numTwo(2); } else if (timerSetValue == 43) { numFour(1); numThree(2); } else if (timerSetValue == 44) { numFour(1); numFour(2); } else if (timerSetValue == 45) { numFour(1); numFive(2); } else if (timerSetValue == 46) { numFour(1); numSix(2); } else if (timerSetValue == 47) { numFour(1); numSeven(2); } else if (timerSetValue == 48) { numFour(1); numEight(2); } else if (timerSetValue == 49) { numFour(1); numNine(2); } else if (timerSetValue == 50) { numFive(1); numZero(2); } else if (timerSetValue == 51) { numFive(1); numOne(2); } else if (timerSetValue == 52) { numFive(1); numTwo(2); } else if (timerSetValue == 53) { numFive(1); numThree(2); } else if (timerSetValue == 54) { numFive(1); numFour(2); } else if (timerSetValue == 55) { numFive(1); numFive(2); } else if (timerSetValue == 56) { numFive(1); numSix(2); } else if (timerSetValue == 57) { numFive(1); numSeven(2); } else if (timerSetValue == 58) { numFive(1); numEight(2); } else if (timerSetValue == 59) { numFive(1); numNine(2); } else if (timerSetValue == 60) { numSix(1); numZero(2); } else if (timerSetValue == 61) { numSix(1); numOne(2); } else if (timerSetValue == 62) { numSix(1); numTwo(2); } else if (timerSetValue == 63) { numSix(1); numThree(2); } else if (timerSetValue == 64) { numSix(1); numFour(2); } else if (timerSetValue == 65) { numSix(1); numFive(2); } else if (timerSetValue == 66) { numSix(1); numSix(2); } else if (timerSetValue == 67) { numSix(1); numSeven(2); } else if (timerSetValue == 68) { numSix(1); numEight(2); } else if (timerSetValue == 69) { numSix(1); numNine(2); } else if (timerSetValue == 70) { numSeven(1); numZero(2); } else if (timerSetValue == 71) { numSeven(1); numOne(2); } else if (timerSetValue == 72) { numSeven(1); numTwo(2); } else if (timerSetValue == 73) { numSeven(1); numThree(2); } else if (timerSetValue == 74) { numSeven(1); numFour(2); } else if (timerSetValue == 75) { numSeven(1); numFive(2); } else if (timerSetValue == 76) { numSeven(1); numSix(2); } else if (timerSetValue == 77) { numSeven(1); numSeven(2); } else if (timerSetValue == 78) { numSeven(1); numEight(2); } else if (timerSetValue == 79) { numSeven(1); numNine(2); } else if (timerSetValue == 80) { numEight(1); numZero(2); } else if (timerSetValue == 81) { numEight(1); numOne(2); } else if (timerSetValue == 82) { numEight(1); numTwo(2); } else if (timerSetValue == 83) { numEight(1); numThree(2); } else if (timerSetValue == 84) { numEight(1); numFour(2); } else if (timerSetValue == 85) { numEight(1); numFive(2); } else if (timerSetValue == 86) { numEight(1); numSix(2); } else if (timerSetValue == 87) { numEight(1); numSeven(2); } else if (timerSetValue == 88) { numEight(1); numEight(2); } else if (timerSetValue == 89) { numEight(1); numNine(2); } else if (timerSetValue == 90) { numNine(1); numZero(2); } else if (timerSetValue == 91) { numNine(1); numOne(2); } else if (timerSetValue == 92) { numNine(1); numTwo(2); } else if (timerSetValue == 93) { numNine(1); numThree(2); } else if (timerSetValue == 94) { numNine(1); numFour(2); } else if (timerSetValue == 95) { numNine(1); numFive(2); } else if (timerSetValue == 96) { numNine(1); numSix(2); } else if (timerSetValue == 97) { numNine(1); numSeven(2); } else if (timerSetValue == 98) { numNine(1); numEight(2); } else if (timerSetValue == 99) { numNine(1); numNine(2); } } //showing sound bars function soundBars(numberOfShown) { for (i = 1; i <= 4; i++) { removeElement("screenSoundBar" + i); } for (i = 1; i <= numberOfShown+1; i++) { addElement("screenSoundBar" + i); } } //showing aiming bars function screenAimingBar(numberOfShown) { for (i = 1; i <= 4; i++) { removeElement("screenAimingBar" + i); } for (i = 1; i <= numberOfShown+1; i++) { addElement("screenAimingBar" + i); } } //play audio function playAudio(audioID) { audioID.play(); } //pause audio function pauseAudio(audioID) { audioID.pause(); } //show handpiece lights with appropriate levels when activating the unit function showHideLights() { if (activeMenu == 1) { if (selectedRegime == 1 || selectedRegime == 2) { if (aimingLight == 0) { addElement("tipLaserLight"); document.getElementById("tipLaserLight").style.opacity = "0"; } else if (aimingLight == 1) { addElement("tipLaserLight"); document.getElementById("tipLaserLight").style.opacity = "0.33"; } else if (aimingLight == 2) { addElement("tipLaserLight"); document.getElementById("tipLaserLight").style.opacity = "0.66"; } else if (aimingLight == 3) { addElement("tipLaserLight"); document.getElementById("tipLaserLight").style.opacity = "1"; } if (tipIllumination == 0) { addElement("tipLitOn"); document.getElementById("tipLitOn").style.opacity = "0"; } else if (tipIllumination == 1) { addElement("tipLitOn"); document.getElementById("tipLitOn").style.opacity = "0.33"; } else if (tipIllumination == 2) { addElement("tipLitOn"); document.getElementById("tipLitOn").style.opacity = "0.66"; } else if (tipIllumination == 3) { addElement("tipLitOn"); document.getElementById("tipLitOn").style.opacity = "1"; } } if (selectedRegime == 3 && selectedProcedure == 1) { if (aimingLight == 0) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0"; } else if (aimingLight == 1) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0.33"; } else if (aimingLight == 2) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0.66"; } else if (aimingLight == 3) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "1"; } } if (selectedRegime == 3 && selectedProcedure == 2) { if (aimingLight == 0) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0"; } else if (aimingLight == 1) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0.33"; } else if (aimingLight == 2) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "0.66"; } else if (aimingLight == 3) { addElement("tipLight37"); document.getElementById("tipLight37").style.opacity = "1"; } } if (selectedRegime == 3 && selectedProcedure == 3) { if (aimingLight == 0) { addElement("tipLight25"); document.getElementById("tipLight25").style.opacity = "0"; } else if (aimingLight == 1) { addElement("tipLight25"); document.getElementById("tipLight25").style.opacity = "0.33"; } else if (aimingLight == 2) { addElement("tipLight25"); document.getElementById("tipLight25").style.opacity = "0.66"; } else if (aimingLight == 3) { addElement("tipLight25"); document.getElementById("tipLight25").style.opacity = "1"; } } } else { removeElement("tipLaserLight"); removeElement("tipLight25"); removeElement("tipLight37"); removeElement("tipLitOn"); } }