{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/javascript/app/preloader.js","webpack:///./src/assets/javascript/app/utilities/index.js","webpack:///./src/assets/javascript/app/slider.js","webpack:///./src/assets/javascript/app/questions.js","webpack:///./src/assets/javascript/app/results.js","webpack:///./src/assets/javascript/app/application.js","webpack:///./src/assets/javascript/app/index.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","Preloader","params","timeline","preloadCount","extension","self","this","preloaderElement","document","getElementById","loaderFill","querySelector","loaderBar","loadingText","overlay","Modernizr","on","console","log","images","imageFile","imageTag","Image","src","addEventListener","fileLoaded","fileError","startLoading","loaderTween","percent","Math","round","undefined","kill","TweenLite","to","width","toString","onComplete","checkPreloadCount","TimelineLite","closeComplete","Application","tweenLength","opacity","tweenStagger","style","display","driverSelector","preloaderClosed","trackEvent","category","action","label","ga","dataLayer","completedEvt","Slider","sliderElement","elementId","mobileCircleElement","mobileCircleId","input","startLabel","middleLabel","endLabel","closeButton","initialize","ua","navigator","userAgent","indexOf","isInternetExplorer","sliderChanged","id","sliderOver","sliderOut","mobileCircleClicked","closeButtonClicked","event","target","classList","add","remove","units","getAttribute","min","max","innerHTML","resetLabels","questions","setClubhead","setPath","setLandingSpot","closeAllSliders","closeMobileSlider","getFlight","flight","getDistance","getValue","Questions","sectionElement","backgroundElement","headerElement","playerElement","clubheadsElement","pathsElement","landingSpotElement","questionsElement","submitButton","mobileSubmitButton","mobileControls","slider1","slider2","slider3","slider4","open","set","transform","openComplete","onCompleteScope","play","initializeSubmitButton","allPaths","querySelectorAll","x","distance","className","flightCircle","distanceCircle","allHeads","clubhead","consistency","accuracyCircle","submitClicked","disableSubmitButton","removeEventListener","calculateResults","slider2Val","slider3Val","slider4Val","close","questionsClosed","Results","ResultsElement","background","header","primaryTitle","alternateTitle","leftCol","rightCol","exploreButton","exploreTS1Button","exploreTSI2Button","exploreTSI3Button","exploreTS4Button","fittingButton","homeButton","showAlternateButton","showPrimaryButton","nextPage","driverId","reset","fadeBG","setResults","sortedScores","homeClicked","alternateClicked","primaryClicked","exploreClicked","fittingClicked","override","parent","location","href","disableControls","_singletonInstance","preloader","results","currentState","answers","score_ts1","score_tsi2","score_tsi3","score_ts4","direction","scrollToTopOfPage","element","value1","value2","value3","value4","elements","parseInt","scores","keys","sort","a","b","scrollTo","top","behavior","e"],"mappings":"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","file":"bundle.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"./dist/assets/javascript/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([121,\"vendor\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import Application from \"./application\"\r\n\r\nlet Preloader = function (params) {\r\n\t// console.log('Preloader initalizing ' + Application.tweenLength);\r\n\r\n\t/**\r\n\t * PRELOAD STUFF\r\n\t */\r\n\tlet preloadTotal = 0\r\n\tlet preloadCount = 0\r\n\tlet extension = \".png\"\r\n\tlet images = []\r\n\tlet self = this\r\n\tlet preloaderElement = document.getElementById(\"preloader\")\r\n\tlet loaderFill = preloaderElement.querySelector(\".preloader-fill\")\r\n\tlet loaderBar = preloaderElement.querySelector(\".preloader-bar\")\r\n\tlet loadingText = preloaderElement.querySelector(\".preloader-label\")\r\n\tlet overlay = preloaderElement.querySelector(\".preloader-overlay\")\r\n\tlet timeline\r\n\t// Wait for modernizr to determine webp support before we start the loading sequence\r\n\tModernizr.on(\"webp\", function (result) {\r\n\t\t// console.log('webp support = ' + result);\r\n\t\tif (result) {\r\n\t\t\textension = \".webp\"\r\n\t\t}\r\n\t\t// temp beta hack\r\n\t\t// extension = \".png\";\r\n\t\tconsole.log(\"extension is \" + extension)\r\n\t\tself.images = [\r\n\t\t\t\"common/arrow-right\" + extension,\r\n\t\t\t\"common/arrow-left\" + extension,\r\n\t\t\t\"common/slider.png\",\r\n\t\t\t\"common/slider-bar.png\",\r\n\t\t\t\"main/bg.jpg\",\r\n\t\t\t\"main/clubhead-1\" + extension,\r\n\t\t\t\"main/clubhead-2\" + extension,\r\n\t\t\t\"main/clubhead-3\" + extension,\r\n\t\t\t\"main/paths/path-high1\" + extension,\r\n\t\t\t\"main/paths/path-high2\" + extension,\r\n\t\t\t\"main/paths/path-high3\" + extension,\r\n\t\t\t\"main/paths/path-high4\" + extension,\r\n\t\t\t\"main/paths/path-high5\" + extension,\r\n\t\t\t\"main/paths/path-high6\" + extension,\r\n\t\t\t\"main/paths/path-high7\" + extension,\r\n\t\t\t\"main/paths/path-high8\" + extension,\r\n\t\t\t\"main/paths/path-high9\" + extension,\r\n\t\t\t\"main/paths/path-high10\" + extension,\r\n\t\t\t\"main/paths/path-high11\" + extension,\r\n\t\t\t\"main/paths/path-med1\" + extension,\r\n\t\t\t\"main/paths/path-med2\" + extension,\r\n\t\t\t\"main/paths/path-med3\" + extension,\r\n\t\t\t\"main/paths/path-med4\" + extension,\r\n\t\t\t\"main/paths/path-med5\" + extension,\r\n\t\t\t\"main/paths/path-med6\" + extension,\r\n\t\t\t\"main/paths/path-med7\" + extension,\r\n\t\t\t\"main/paths/path-med8\" + extension,\r\n\t\t\t\"main/paths/path-med9\" + extension,\r\n\t\t\t\"main/paths/path-med10\" + extension,\r\n\t\t\t\"main/paths/path-med11\" + extension,\r\n\t\t\t\"main/paths/path-low1\" + extension,\r\n\t\t\t\"main/paths/path-low2\" + extension,\r\n\t\t\t\"main/paths/path-low3\" + extension,\r\n\t\t\t\"main/paths/path-low4\" + extension,\r\n\t\t\t\"main/paths/path-low5\" + extension,\r\n\t\t\t\"main/paths/path-low6\" + extension,\r\n\t\t\t\"main/paths/path-low7\" + extension,\r\n\t\t\t\"main/paths/path-low8\" + extension,\r\n\t\t\t\"main/paths/path-low9\" + extension,\r\n\t\t\t\"main/paths/path-low10\" + extension,\r\n\t\t\t\"main/paths/path-low11\" + extension,\r\n\t\t\t\"results/bg.jpg\",\r\n\t\t\t\"results/logo-tsr1\" + extension,\r\n\t\t\t\"results/logo-tsr2\" + extension,\r\n\t\t\t\"results/logo-tsr3\" + extension,\r\n\t\t\t\"results/logo-tsr4\" + extension,\r\n\t\t\t\"results/tsr1\" + extension,\r\n\t\t\t\"results/tsr2\" + extension,\r\n\t\t\t\"results/tsr3\" + extension,\r\n\t\t\t\"results/tsr4\" + extension\r\n\t\t]\r\n\t\tstartLoading()\r\n\t})\r\n\r\n\tfunction startLoading() {\r\n\t\tconsole.log(\"startLoading \", self.images)\r\n\t\tlet imageFile\r\n\t\tlet imageTag\r\n\t\tfor (let i = 0; i < self.images.length; i++) {\r\n\t\t\timageFile = self.images[i]\r\n\t\t\timageTag = new Image()\r\n\t\t\timageTag.src = \"../assets/images/\" + imageFile\r\n\t\t\timageTag.addEventListener(\"load\", fileLoaded)\r\n\t\t\timageTag.addEventListener(\"error\", fileError)\r\n\t\t}\r\n\t}\r\n\r\n\tlet percent = 0\r\n\tlet loaderTween\r\n\tfunction fileLoaded() {\r\n\t\tconsole.log(\"image loaded\")\r\n\t\tpreloadCount++\r\n\t\t//update loader bar\r\n\t\tpercent = Math.round((preloadCount / preloadTotal) * 100)\r\n\t\tif (percent > 100) {\r\n\t\t\tpercent = 100\r\n\t\t}\r\n\t\tif (loaderTween !== undefined) {\r\n\t\t\tloaderTween.kill()\r\n\t\t}\r\n\t\tloaderTween = TweenLite.to(loaderFill, 1, { width: percent.toString() + \"%\", onComplete: checkPreloadCount })\r\n\t}\r\n\r\n\tfunction fileError() {\r\n\t\tconsole.log(\"\")\r\n\t\tconsole.log(\"ERROR loading file, proceeding with app experience anyway...\")\r\n\t\tconsole.log(\"\")\r\n\t\t// comment the rest of this function out to stop the app when an image doesn't load,\r\n\t\t// but the app should still be usable without most image files, so we will let it proceed...\r\n\t\tpreloadCount++\r\n\t\t//update loader bar\r\n\t\tpercent = Math.round((preloadCount / preloadTotal) * 100)\r\n\t\tif (percent > 100) {\r\n\t\t\tpercent = 100\r\n\t\t}\r\n\t\tif (loaderTween !== undefined) {\r\n\t\t\tloaderTween.kill()\r\n\t\t}\r\n\t\tloaderTween = TweenLite.to(loaderFill, 1, { width: percent.toString() + \"%\", onComplete: checkPreloadCount })\r\n\t}\r\n\r\n\tfunction checkPreloadCount() {\r\n\t\t//check for all images\r\n\t\tif (preloadCount >= preloadTotal) {\r\n\t\t\t// console.log('everything is loaded');\r\n\t\t\t// showIntro();\r\n\t\t\tclosePreloader()\r\n\t\t}\r\n\t}\r\n\r\n\tfunction closePreloader() {\r\n\t\ttimeline = new TimelineLite({ onComplete: closeComplete })\r\n\t\ttimeline.to([loaderBar, loadingText], Application.tweenLength, { opacity: 0 })\r\n\t\ttimeline.to(overlay, Application.tweenLength, { opacity: 0 }, \"-=\" + Application.tweenStagger.toString())\r\n\t\t// loaderTween = TweenLite.to([loaderBar, loadingText], Application.tweenLength, {opacity: 0});\r\n\t\t// loaderTween2 = TweenLite.to(overlay, Application.tweenLength, {opacity: 0, delay: Application.tweenStagger, onComplete: closeComplete});\r\n\t}\r\n\r\n\tfunction closeComplete() {\r\n\t\tloaderTween.kill()\r\n\t\tloaderTween = null\r\n\t\ttimeline.kill()\r\n\t\ttimeline = null\r\n\t\tpreloaderElement.style.display = \"none\"\r\n\t\t// window.intro.open();\r\n\t\twindow.driverSelector.preloaderClosed()\r\n\t}\r\n}\r\n\r\nexport default Preloader\r\n","/**\r\n * querySelector wrapper\r\n *\r\n * @param {string} selector Selector to query\r\n * @param {Element} [scope] Optional scope element for the selector\r\n */\r\nexport function qs(selector, scope) {\r\n return (scope || document).querySelector(selector);\r\n}\r\n\r\nexport function qsArray (selector, scope) {\r\n let nodeList = (scope || document).querySelectorAll(selector);\r\n let arr = [];\r\n for(let i = 0; i < nodeList.length; i++) {\r\n arr.push(nodeList[i]);\r\n }\r\n return arr;\r\n}\r\n\r\n/**\r\n * addEventListener wrapper\r\n *\r\n * @param {Element|Window} target Target Element\r\n * @param {string} type Event name to bind to\r\n * @param {Function} callback Event callback\r\n * @param {boolean} [capture] Capture the event\r\n */\r\nexport function $on(target, type, callback, capture) {\r\n target.addEventListener(type, callback, !!capture);\r\n}\r\n\r\n/**\r\n * Attach a handler to an event for all elements matching a selector.\r\n *\r\n * @param {Element} target Element which the event must bubble to\r\n * @param {string} selector Selector to match\r\n * @param {string} type Event name\r\n * @param {Function} handler Function called when the event bubbles to target\r\n * from an element matching selector\r\n * @param {boolean} [capture] Capture the event\r\n */\r\n// export function $delegate(target, selector, type, handler, capture) {\r\n// const dispatchEvent = event => {\r\n// const targetElement = event.target;\r\n// const potentialElements = target.querySelectorAll(selector);\r\n// let i = potentialElements.length;\r\n//\r\n// while (i--) {\r\n// if (potentialElements[i] === targetElement) {\r\n// handler.call(targetElement, event);\r\n// break;\r\n// }\r\n// }\r\n// };\r\n//\r\n// $on(target, type, dispatchEvent, !!capture);\r\n// }\r\n\r\n/**\r\n * Returns a function, that, as long as it continues to be invoked, will not\r\n * be triggered. The function will be called after it stops being called for\r\n * N milliseconds. If `immediate` is passed, trigger the function on the\r\n * leading edge, instead of the trailing.\r\n *\r\n * @param {Function} func to be executed on debounce\r\n * @param {number} wait time in milliseconds\r\n * @param {boolean} immediate boolean\r\n *\r\n * */\r\nexport function debounce(func, wait, immediate) {\r\n let timeout;\r\n return function() {\r\n let context = this, args = arguments;\r\n let later = function() {\r\n timeout = null;\r\n if (!immediate) func.apply(context, args);\r\n };\r\n let callNow = immediate && !timeout;\r\n clearTimeout(timeout);\r\n timeout = setTimeout(later, wait);\r\n if (callNow) func.apply(context, args);\r\n };\r\n}\r\n\r\n/*!\r\n* Microsoft Internet Explorer Browser Test\r\n* */\r\nexport function isInternetExplorer() {\r\n let ua = window.navigator.userAgent;\r\n\r\n let msie = ua.indexOf('MSIE ');\r\n if (msie > 0) {\r\n return true;\r\n // IE 10 or older => return version number\r\n // return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\r\n }\r\n\r\n var trident = ua.indexOf('Trident/');\r\n if (trident > 0) {\r\n return true;\r\n // IE 11 => return version number\r\n // let rv = ua.indexOf('rv:');\r\n // return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\r\n }\r\n\r\n // other browser\r\n return false;\r\n}\r\n\r\n/*!\r\n * Microsoft Edge Browser Test\r\n * */\r\nexport function isEdge() {\r\n let ua = window.navigator.userAgent;\r\n\r\n let edge = ua.indexOf('Edge/');\r\n if (edge > 0) {\r\n return true;\r\n // // Edge (IE 12+) => return version number\r\n // return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\r\n }\r\n\r\n // other browser\r\n return false;\r\n}\r\n\r\n/*\r\n * Google Analytic tracking function\r\n * */\r\n\r\nexport function trackEvent(category, action, label, value)\r\n{\r\n if (window.ga !== undefined && window.ga !== null)\r\n window.ga('send', 'event', category, action, label, value);\r\n if (typeof dataLayer !== 'undefined')\r\n {\r\n var completedEvt = { 'event': 'GAEvent', 'eventCategory': category, 'eventAction': action, 'eventLabel': label, 'UA Event Value' : value };\r\n dataLayer.push(completedEvt);\r\n }\r\n console.log('event: ' + category + \", \" + action + ', ' + label + ', ' + value);\r\n}\r\n","// import TweenLite from './vendor/TweenLite';\r\n// import { qs, qsArray } from './utilities/selectors';\r\nimport {qs, qsArray, isInternetExplorer, isEdge, trackEvent} from './utilities/index';\r\nimport Application from \"./application\";\r\n\r\nlet Slider = function (params) {\r\n // console.log('Slider initalizing ' + params);\r\n\r\n /**\r\n *\r\n */\r\n let self = this;\r\n let sliderElement = document.getElementById(params.elementId);\r\n let mobileCircleElement = document.getElementById(params.mobileCircleId);\r\n let input = sliderElement.querySelector('input[type=\"range\"]');\r\n let startLabel = sliderElement.querySelector('.start-label');\r\n let middleLabel = sliderElement.querySelector('.middle-label');\r\n let endLabel = sliderElement.querySelector('.end-label');\r\n let closeButton = document.getElementById('close-button');\r\n\r\n this.initialize = function () {\r\n input = sliderElement.querySelector('input[type=\"range\"]');\r\n if ( input !== null ) {\r\n if (isInternetExplorer() === true) {\r\n // chrome slider released, works in ie\r\n input.addEventListener('change', this.sliderChanged);\r\n } else {\r\n // chrome slider moved, doesn't work in ie works in edge and everything else\r\n input.addEventListener('input', this.sliderChanged);\r\n }\r\n\r\n if (sliderElement.id === 'q3-slider') {\r\n input.addEventListener('mouseover', this.sliderOver);\r\n input.addEventListener('mouseout', this.sliderOut);\r\n }\r\n }\r\n // console.log('mobileCircleId is ' + params.mobileCircleId);\r\n // console.log('mobileCircleElement is ', mobileCircleElement);\r\n mobileCircleElement.addEventListener('click', this.mobileCircleClicked);\r\n closeButton.addEventListener('click', this.closeButtonClicked);\r\n };\r\n\r\n this.sliderOver = function (event) {\r\n console.log('over');\r\n let input = event.target;\r\n console.log('over value is : ', input.value);\r\n if (input.value === '2' || input.value === '3') {\r\n document.getElementById('clubheads').classList.add('selected');\r\n }\r\n };\r\n\r\n this.sliderOut = function (event) {\r\n console.log('out');\r\n document.getElementById('clubheads').classList.remove('selected');\r\n };\r\n\r\n this.sliderChanged = function (event) {\r\n // console.log('changed: ', event);\r\n let input = event.target;\r\n console.log('value is : ', input.value);\r\n console.log('sliderElement is ' + sliderElement.id);\r\n if ( sliderElement.id === 'q1-slider') {\r\n let display = input.value;\r\n // if (display <= 200) {\r\n // display = \"200\";\r\n // } else if (display >= 300) {\r\n // display = \"300\";\r\n // }\r\n let units = sliderElement.getAttribute('data-units');\r\n if (units === null || units === undefined || units === \"\") {\r\n units = 'YDS';\r\n }\r\n let min = sliderElement.getAttribute('data-min');\r\n if (min === null || min === undefined) {\r\n min = '';\r\n }\r\n let max = sliderElement.getAttribute('data-max');\r\n if (max === null || max === undefined) {\r\n max = '';\r\n }\r\n if (display === \"200\") {\r\n display = min;\r\n } else if (display === \"300\") {\r\n display = max;\r\n } else {\r\n display = display.toString() + ' ' + units;\r\n // let offset = parseInt(sliderElement.getAttribute('data-offset'), 10);\r\n // let distance = parseInt(input.value, 10);\r\n // distance = distance - offset;\r\n // display = distance.toString() + ' ' + units;\r\n }\r\n\r\n // offset for locales\r\n\r\n middleLabel.innerHTML = display.toString();\r\n } else {\r\n self.resetLabels();\r\n if (input.value === '1') {\r\n startLabel.classList.add('selected');\r\n } else if (input.value === '2') {\r\n middleLabel.classList.add('selected');\r\n } else if (input.value === '3') {\r\n endLabel.classList.add('selected');\r\n }\r\n }\r\n if (sliderElement.id == 'q3-slider') {\r\n window.driverSelector.questions.setClubhead();\r\n } else {\r\n window.driverSelector.questions.setPath();\r\n window.driverSelector.questions.setLandingSpot();\r\n }\r\n };\r\n\r\n this.mobileCircleClicked = function (event) {\r\n // console.log('mobileCircleClicked');\r\n window.driverSelector.questions.closeAllSliders();\r\n document.getElementById('sliders').classList.add('selected');\r\n document.getElementById('sliders').classList.add(params.mobileCircleId);\r\n sliderElement.classList.add('selected');\r\n mobileCircleElement.classList.add('selected');\r\n document.getElementById('clubheads').classList.remove('selected');\r\n\r\n };\r\n\r\n this.closeButtonClicked = function (event) {\r\n // console.log('closeButtonClicked');\r\n window.driverSelector.questions.closeAllSliders();\r\n\r\n };\r\n\r\n this.closeMobileSlider = function() {\r\n // console.log('closeMobileSlider');\r\n document.getElementById('sliders').classList.remove('selected');\r\n document.getElementById('sliders').classList.remove(params.mobileCircleId);\r\n sliderElement.classList.remove('selected');\r\n mobileCircleElement.classList.remove('selected');\r\n document.getElementById('clubheads').classList.remove('selected');\r\n };\r\n\r\n this.getFlight = function() {\r\n let flightSlider = document.getElementById('q2-slider');\r\n let value = flightSlider.querySelector('input[type=\"range\"]').value;\r\n let flight = 'low';\r\n if (value === '1') {\r\n flight = 'low';\r\n } else if (value === '2') {\r\n flight = 'medium';\r\n } else if (value === '3') {\r\n flight = 'high';\r\n }\r\n return flight;\r\n };\r\n\r\n this.getDistance = function() {\r\n let flightSlider = document.getElementById('q1-slider');\r\n let value = flightSlider.querySelector('input[type=\"range\"]').value;\r\n return value;\r\n };\r\n\r\n this.getValue = function() {\r\n return input.value;\r\n };\r\n\r\n this.resetLabels = function () {\r\n startLabel.classList.remove('selected');\r\n middleLabel.classList.remove('selected');\r\n endLabel.classList.remove('selected');\r\n }\r\n};\r\n\r\nexport default Slider;\r\n\r\n","// import TweenLite from './vendor/TweenLite';\r\n// import { qs, qsArray } from './utilities/selectors';\r\nimport {qs, qsArray, isInternetExplorer, isEdge, trackEvent} from './utilities/index';\r\nimport Application from \"./application\";\r\nimport Slider from \"./slider\";\r\n\r\nlet Questions = function (params) {\r\n // console.log('Questions initalizing ' + params);\r\n\r\n /**\r\n *\r\n */\r\n let self = this;\r\n let sectionElement = document.getElementById('application');\r\n let backgroundElement = document.getElementById('questions-bg');\r\n let headerElement = document.getElementById('questions-header');\r\n let playerElement = document.getElementById('player');\r\n let clubheadsElement = document.getElementById('clubheads');\r\n let pathsElement = document.getElementById('paths');\r\n let landingSpotElement = document.getElementById('landing-spot');\r\n let questionsElement = document.getElementById('sliders');\r\n let submitButton = document.getElementById('submit-button');\r\n let mobileSubmitButton = document.getElementById('mobile-submit-button');\r\n let mobileControls = document.getElementById('mobile-controls');\r\n // q1 distance slider\r\n this.slider1 = new Slider({elementId: 'q1-slider', mobileCircleId: 'q1-distance-circle'});\r\n // q2 flight slider\r\n this.slider2 = new Slider({elementId: 'q2-slider', mobileCircleId: 'q2-flight-circle'});\r\n // q3 clubhead slider\r\n this.slider3 = new Slider({elementId: 'q3-slider', mobileCircleId: 'q3-clubhead-circle'});\r\n // q4 accuracy consistency slider\r\n this.slider4 = new Slider({elementId: 'q4-slider', mobileCircleId: 'q4-accuracy-circle'});\r\n\r\n // let mobileControls = document.getElementById('mobile-controls');\r\n // let slider1Circle = mobileControls.querySelector('#q1-distance-circle');\r\n // let slider2Circle = mobileControls.querySelector('#q2-flight-circle');\r\n // let slider3Circle = mobileControls.querySelector('#q3-clubhead-circle');\r\n // let slider4Circle = mobileControls.querySelector('#q4-accuracy-circle');\r\n\r\n let timeline;\r\n let playerTween = null;\r\n let panelTween = null;\r\n\r\n this.open = function() {\r\n console.log('Questions.open');\r\n sectionElement.style.display = 'block';\r\n TweenLite.set([playerElement, pathsElement, questionsElement, landingSpotElement, mobileControls, mobileSubmitButton], {opacity: 0});\r\n TweenLite.set([questionsElement], {transform: 'translateX(100px)'});\r\n timeline = new TimelineLite({onComplete: this.openComplete, onCompleteScope: this});\r\n timeline.to([backgroundElement, headerElement, playerElement, pathsElement, landingSpotElement], 0.75, {opacity: 1});\r\n timeline.to([mobileControls, mobileSubmitButton], .5, {opacity: 1}, '-=0.25');\r\n timeline.to([questionsElement], .5, {opacity: 1, transform: 'translateX(0)'}, \"-=0.5\");\r\n\r\n timeline.play();\r\n };\r\n\r\n this.openComplete = function () {\r\n console.log('Questions.openComplete');\r\n this.slider1.initialize();\r\n this.slider2.initialize();\r\n this.slider3.initialize();\r\n this.slider4.initialize();\r\n this.initializeSubmitButton();\r\n };\r\n\r\n this.closeAllSliders = function () {\r\n this.slider1.closeMobileSlider();\r\n this.slider2.closeMobileSlider();\r\n this.slider3.closeMobileSlider();\r\n this.slider4.closeMobileSlider();\r\n };\r\n\r\n this.setPath = function () {\r\n let allPaths = pathsElement.querySelectorAll('.path');\r\n for (let x = 0; x < allPaths.length; x++) {\r\n allPaths[x].classList.remove('selected');\r\n }\r\n let flight = this.slider2.getFlight();\r\n let distance = this.slider1.getDistance();\r\n let className = '.' + flight + '-' + distance;\r\n let path = pathsElement.querySelector(className);\r\n path.classList.add('selected');\r\n document.getElementById('clubheads').classList.remove('selected');\r\n console.log('selected path name is ' + className);\r\n\r\n let flightCircle = document.getElementById('q2-flight-circle');\r\n flightCircle.classList.remove('high-200');\r\n flightCircle.classList.remove('high-210');\r\n flightCircle.classList.remove('high-220');\r\n flightCircle.classList.remove('high-230');\r\n flightCircle.classList.remove('high-240');\r\n flightCircle.classList.remove('high-250');\r\n flightCircle.classList.remove('high-260');\r\n flightCircle.classList.remove('high-270');\r\n flightCircle.classList.remove('high-280');\r\n flightCircle.classList.remove('high-290');\r\n flightCircle.classList.remove('high-300');\r\n flightCircle.classList.remove('medium-200');\r\n flightCircle.classList.remove('medium-210');\r\n flightCircle.classList.remove('medium-220');\r\n flightCircle.classList.remove('medium-230');\r\n flightCircle.classList.remove('medium-240');\r\n flightCircle.classList.remove('medium-250');\r\n flightCircle.classList.remove('medium-260');\r\n flightCircle.classList.remove('medium-270');\r\n flightCircle.classList.remove('medium-280');\r\n flightCircle.classList.remove('medium-290');\r\n flightCircle.classList.remove('medium-300');\r\n flightCircle.classList.remove('low-200');\r\n flightCircle.classList.remove('low-210');\r\n flightCircle.classList.remove('low-220');\r\n flightCircle.classList.remove('low-230');\r\n flightCircle.classList.remove('low-240');\r\n flightCircle.classList.remove('low-250');\r\n flightCircle.classList.remove('low-260');\r\n flightCircle.classList.remove('low-270');\r\n flightCircle.classList.remove('low-280');\r\n flightCircle.classList.remove('low-290');\r\n flightCircle.classList.remove('low-300');\r\n flightCircle.classList.add(flight + '-' + distance);\r\n\r\n let distanceCircle = document.getElementById('q1-distance-circle');\r\n distanceCircle.classList.remove('low');\r\n distanceCircle.classList.remove('medium');\r\n distanceCircle.classList.remove('high');\r\n distanceCircle.classList.add(flight);\r\n\r\n };\r\n\r\n this.setClubhead = function () {\r\n let allHeads = clubheadsElement.querySelectorAll('.clubhead');\r\n for (let x = 0; x < allHeads.length; x++) {\r\n allHeads[x].classList.remove('selected');\r\n }\r\n let clubhead = this.slider3.getValue();\r\n if (clubhead === '2' || clubhead === '3')\r\n {\r\n let element = clubheadsElement.querySelector('#clubhead-' + clubhead);\r\n element.classList.add('selected');\r\n document.getElementById('clubheads').classList.add('selected');\r\n } else {\r\n document.getElementById('clubheads').classList.remove('selected');\r\n }\r\n\r\n };\r\n\r\n this.setLandingSpot = function () {\r\n let consistency = this.slider4.getValue();\r\n let distance = this.slider1.getDistance();\r\n landingSpotElement.classList.remove('size-1');\r\n landingSpotElement.classList.remove('size-2');\r\n landingSpotElement.classList.remove('size-3');\r\n landingSpotElement.classList.remove('distance-200');\r\n landingSpotElement.classList.remove('distance-210');\r\n landingSpotElement.classList.remove('distance-220');\r\n landingSpotElement.classList.remove('distance-230');\r\n landingSpotElement.classList.remove('distance-240');\r\n landingSpotElement.classList.remove('distance-250');\r\n landingSpotElement.classList.remove('distance-260');\r\n landingSpotElement.classList.remove('distance-270');\r\n landingSpotElement.classList.remove('distance-280');\r\n landingSpotElement.classList.remove('distance-290');\r\n landingSpotElement.classList.remove('distance-300');\r\n landingSpotElement.classList.add('size-' + consistency);\r\n landingSpotElement.classList.add('distance-' + distance);\r\n\r\n let accuracyCircle = document.getElementById('q4-accuracy-circle');\r\n accuracyCircle.classList.remove('distance-200');\r\n accuracyCircle.classList.remove('distance-210');\r\n accuracyCircle.classList.remove('distance-220');\r\n accuracyCircle.classList.remove('distance-230');\r\n accuracyCircle.classList.remove('distance-240');\r\n accuracyCircle.classList.remove('distance-250');\r\n accuracyCircle.classList.remove('distance-260');\r\n accuracyCircle.classList.remove('distance-270');\r\n accuracyCircle.classList.remove('distance-280');\r\n accuracyCircle.classList.remove('distance-290');\r\n accuracyCircle.classList.remove('distance-300');\r\n accuracyCircle.classList.add('distance-' + distance);\r\n };\r\n\r\n this.initializeSubmitButton = function () {\r\n submitButton.addEventListener('click', this.submitClicked);\r\n mobileSubmitButton.addEventListener('click', this.submitClicked);\r\n };\r\n\r\n this.disableSubmitButton = function () {\r\n submitButton.removeEventListener('click', this.submitClicked);\r\n mobileSubmitButton.removeEventListener('click', this.submitClicked);\r\n };\r\n\r\n\r\n this.submitClicked = function (event) {\r\n console.log('Questions.submitClicked!');\r\n window.driverSelector.calculateResults();\r\n // // close it up\r\n var slider2Val = window.driverSelector.questions.slider2.getValue();\r\n var slider3Val = window.driverSelector.questions.slider3.getValue();\r\n var slider4Val = window.driverSelector.questions.slider4.getValue();\r\n\r\n switch(slider2Val)\r\n {\r\n case \"1\":\r\n slider2Val = \"low\";\r\n break;\r\n case \"2\":\r\n slider2Val = \"medium\";\r\n break;\r\n case \"3\":\r\n slider2Val = \"large\";\r\n break;\r\n }\r\n\r\n switch(slider3Val)\r\n {\r\n case \"1\":\r\n slider3Val = \"notsure\";\r\n break;\r\n case \"2\":\r\n slider3Val = \"modern\";\r\n break;\r\n case \"3\":\r\n slider3Val = \"traditional\";\r\n break;\r\n }\r\n\r\n switch(slider4Val)\r\n {\r\n case \"1\":\r\n slider4Val = \"notvery\";\r\n break;\r\n case \"2\":\r\n slider4Val = \"somewhat\";\r\n break;\r\n case \"3\":\r\n slider4Val = \"very\";\r\n break;\r\n }\r\n\r\n self.close();\r\n trackEvent('answer', 'slider1', window.driverSelector.questions.slider1.getValue());\r\n trackEvent('answer', 'slider2', slider2Val);\r\n trackEvent('answer', 'slider3', slider3Val);\r\n trackEvent('answer', 'slider4', slider4Val);\r\n trackEvent('navigation', 'Next');\r\n };\r\n\r\n this.close = function () {\r\n console.log('Questions.close');\r\n this.disableSubmitButton();\r\n\r\n timeline = new TimelineLite({onComplete: self.closeComplete, onCompleteScope: self});\r\n timeline.to([mobileControls, mobileSubmitButton], .5, {opacity: 0});\r\n timeline.to([questionsElement], .5, {opacity: 0, transform: 'translateX(100px)'}, '-=0.5');\r\n timeline.to([headerElement, backgroundElement, playerElement, pathsElement, landingSpotElement], .5, {opacity: 0});\r\n\r\n timeline.play();\r\n\r\n };\r\n\r\n this.closeComplete = function() {\r\n console.log('Questions.closeComplete');\r\n timeline.kill();\r\n timeline = null;\r\n sectionElement.style.display = 'none';\r\n window.driverSelector.questionsClosed();\r\n }\r\n\r\n};\r\n\r\nexport default Questions;\r\n\r\n","import Application from './application';\r\nimport { trackEvent } from './utilities/index';\r\n\r\nlet Results = function (params) {\r\n // console.log('Results initalizing ' + params);\r\n\r\n /**\r\n *\r\n */\r\n let self = this;\r\n let ResultsElement = document.getElementById( 'results' );\r\n let background = ResultsElement.querySelector('.bg-image' );\r\n let header = ResultsElement.querySelector('.header' );\r\n let primaryTitle = ResultsElement.querySelector('h2.primary' );\r\n let alternateTitle = ResultsElement.querySelector('h2.alternate' );\r\n\r\n let leftCol = ResultsElement.querySelector('.learn-more');\r\n let rightCol = ResultsElement.querySelector('.club-photo');\r\n let exploreButton = ResultsElement.querySelector('.explore-button');\r\n let exploreTS1Button = ResultsElement.querySelector('.explore-ts1');\r\n let exploreTSI2Button = ResultsElement.querySelector('.explore-tsi2');\r\n let exploreTSI3Button = ResultsElement.querySelector('.explore-tsi3');\r\n let exploreTS4Button = ResultsElement.querySelector('.explore-ts4');\r\n let fittingButton = ResultsElement.querySelector('.fitting-button');\r\n let homeButton = ResultsElement.querySelector('.home-button');\r\n let showAlternateButton = ResultsElement.querySelector('.alternate-button');\r\n let showPrimaryButton = ResultsElement.querySelector('.primary-button');\r\n let timeline;\r\n let nextPage = \"primary\";\r\n let driverId = \"\";\r\n\r\n this.open = function(fadeBG) {\r\n if (fadeBG === null || fadeBG === undefined) {\r\n fadeBG = true;\r\n }\r\n // console.log('Results.open');\r\n this.setResults();\r\n TweenLite.set( [header, leftCol, rightCol], {opacity: 0});\r\n ResultsElement.style.display = 'block';\r\n timeline = new TimelineLite({onComplete: this.openComplete, onCompleteScope: this});\r\n if (fadeBG === true) {\r\n TweenLite.set( [background], {opacity: 0});\r\n timeline.to(background, Application.tweenLength, {opacity: 1});\r\n timeline.to(header, Application.tweenLength, {opacity: 1}, Application.tweenStagger);\r\n } else {\r\n timeline.to(header, Application.tweenLength, {opacity: 1});\r\n }\r\n timeline.to(leftCol, Application.tweenLength, {opacity: 1}, Application.tweenStagger);\r\n timeline.to(rightCol, Application.tweenLength, {opacity: 1}, Application.tweenStagger);\r\n timeline.play();\r\n };\r\n\r\n this.setResults = function() {\r\n // ironId = window.ironSelector.calculateResults();\r\n let sortedScores = window.driverSelector.calculateResults();\r\n if (nextPage === \"alternate\") {\r\n driverId = sortedScores[1];\r\n // toggle buttons\r\n showPrimaryButton.style.display = 'inline-block';\r\n showAlternateButton.style.display = 'none';\r\n alternateTitle.style.display = 'block';\r\n primaryTitle.style.display = 'none';\r\n } else {\r\n driverId = sortedScores[0];\r\n // toggle buttons\r\n showPrimaryButton.style.display = 'none';\r\n showAlternateButton.style.display = 'inline-block';\r\n alternateTitle.style.display = 'none';\r\n primaryTitle.style.display = 'block';\r\n }\r\n exploreTS1Button.style.display = 'none';\r\n exploreTSI2Button.style.display = 'none';\r\n exploreTSI3Button.style.display = 'none';\r\n exploreTS4Button.style.display = 'none';\r\n ResultsElement.querySelector('.explore-' + driverId).style.display = 'inline-block';\r\n console.log('selected driver id is: ' + driverId);\r\n ResultsElement.classList.add('show-' + driverId);\r\n nextPage = \"\";\r\n\r\n // track here or in the application?\r\n trackEvent('Recommendation', 'Primary', sortedScores[0]);\r\n trackEvent('Recommendation', 'Alternative', sortedScores[1]);\r\n };\r\n\r\n this.openComplete = function () {\r\n console.log('openComplete');\r\n // // todo: initialize controls\r\n homeButton.addEventListener('click', this.homeClicked);\r\n showAlternateButton.addEventListener('click', this.alternateClicked);\r\n showPrimaryButton.addEventListener('click', this.primaryClicked);\r\n // tracking listners\r\n exploreButton.addEventListener('click', this.exploreClicked);\r\n fittingButton.addEventListener('click', this.fittingClicked);\r\n };\r\n\r\n this.exploreClicked = function(event) {\r\n trackEvent('navigation', 'Results', 'Product Details');\r\n };\r\n\r\n this.fittingClicked = function(event) {\r\n trackEvent('navigation', 'Results', 'Find A Fitting Location');\r\n };\r\n\r\n\r\n\r\n this.homeClicked = function(event) {\r\n let override = homeButton.getAttribute('data-url-override');\r\n if (override === null || override === undefined || override === \"\") {\r\n nextPage = \"home\";\r\n self.close();\r\n trackEvent('navigation', 'Home');\r\n } else {\r\n parent.window.location.href = override;\r\n // window.location.href = override;\r\n }\r\n };\r\n // this.homeClicked = function(event) {\r\n // nextPage = \"home\";\r\n // self.close();\r\n // trackEvent('navigation', 'Home');\r\n // };\r\n\r\n\r\n this.alternateClicked = function(event) {\r\n nextPage = \"alternate\";\r\n self.close();\r\n trackEvent('navigation', 'Results', 'See alternate Results');\r\n };\r\n\r\n this.primaryClicked = function(event) {\r\n nextPage = \"primary\";\r\n self.close();\r\n trackEvent('navigation', 'Results', 'See Primary Results');\r\n };\r\n\r\n this.disableControls = function () {\r\n // console.log('disable controls ' + homeButton);\r\n // // todo: initialize controls\r\n homeButton.removeEventListener('click', this.homeClicked);\r\n showAlternateButton.removeEventListener('click', this.alternateClicked);\r\n showPrimaryButton.removeEventListener('click', this.primaryClicked);\r\n // tracking listners\r\n exploreButton.removeEventListener('click', this.exploreClicked);\r\n fittingButton.removeEventListener('click', this.fittingClicked);\r\n };\r\n\r\n this.close = function () {\r\n console.log('close ' + nextPage);\r\n this.disableControls();\r\n timeline.kill();\r\n timeline = new TimelineLite({onComplete: closeComplete});\r\n timeline.to(leftCol, Application.tweenLength, {opacity: 0});\r\n timeline.to(rightCol, Application.tweenLength, {opacity: 0}, Application.tweenStagger);\r\n timeline.to(header, Application.tweenLength, {opacity: 0}, Application.tweenStagger);\r\n if (nextPage === 'home') {\r\n timeline.to(background, Application.tweenLength, {opacity: 0}, Application.tweenStagger);\r\n }\r\n timeline.play();\r\n\r\n };\r\n\r\n function closeComplete() {\r\n // console.log('closeComplete ' + nextPage);\r\n timeline.kill();\r\n timeline = null;\r\n ResultsElement.style.display = 'none';\r\n ResultsElement.classList.remove('show-' + driverId);\r\n if (nextPage === \"home\") {\r\n // console.log('reset');\r\n nextPage = \"primary\";\r\n window.driverSelector.reset();\r\n } else if (nextPage === \"primary\") {\r\n console.log('primary');\r\n self.open(false);\r\n } else if (nextPage === \"alternate\") {\r\n console.log('alternate');\r\n self.open(false);\r\n }\r\n }\r\n\r\n};\r\n\r\nexport default Results;\r\n\r\n","// import TweenLite from './vendor/TweenLite';\r\nimport Preloader from './preloader';\r\nimport Questions from './questions';\r\nimport Results from './results';\r\n\r\nlet Application = function (params) {\r\n if (Application.prototype._singletonInstance) {\r\n return Application.prototype._singletonInstance;\r\n }\r\n Application.prototype._singletonInstance = this;\r\n\r\n this.initialize(params);\r\n};\r\n\r\nApplication.prototype.initialize = function (params) {\r\n // console.log('Application initalizing ' + params);\r\n\r\n Application.tweenLength = 0.5;\r\n Application.tweenStagger = \"-=0.25\";\r\n\r\n /**\r\n *\r\n */\r\n let self = this;\r\n this.preloader = new Preloader({});\r\n this.questions = new Questions();\r\n this.results = new Results({});\r\n\r\n // Current screen/state info\r\n // preloader, questions, results\r\n this.currentState = \"preloader\";\r\n\r\n // Scoring info\r\n // array of html element ids that have data attributes that are used to calculate final results\r\n this.answers = [];\r\n this.score_ts1 = 0;\r\n this.score_tsi2 = 0;\r\n this.score_tsi3 = 0;\r\n this.score_ts4 = 0;\r\n\r\n this.preloaderClosed = function () {\r\n // this.intro.open();\r\n this.currentState = \"questions\";\r\n document.getElementById('content').style.display = 'block';\r\n this.questions.open();\r\n };\r\n\r\n this.questionsClosed = function (direction) {\r\n console.log('questionsClosed!');\r\n this.scrollToTopOfPage();\r\n this.results.open();\r\n // if ( direction > 0 ) {\r\n // // next question or results\r\n // this.currentQuestion++;\r\n // } else {\r\n // // previous question or intro\r\n // this.currentQuestion--;\r\n // }\r\n // console.log('Application.questionClosed opening question ' + this.currentQuestion);\r\n // // console.log('this.currentQuestion === 0 ' + (this.currentQuestion === 0));\r\n // this.scrollToTopOfPage();\r\n // if (this.currentQuestion === 0) {\r\n // this.intro.open();\r\n // } else if (this.currentQuestion === this.totalQuestions + 1) {\r\n // //show results\r\n // // console.log(\"TODO RESULTS\");\r\n // this.results.open();\r\n // this.currentState = \"results\";\r\n // // this.currentQuestion = 0;\r\n // // this.intro.open();\r\n //\r\n // } else {\r\n // this.questions[this.currentQuestion - 1].open();\r\n // }\r\n };\r\n\r\n this.calculateResults = function () {\r\n this.score_ts1 = 0;\r\n this.score_tsi2 = 0;\r\n this.score_tsi3 = 0;\r\n this.score_ts4 = 0;\r\n\r\n let value1 = this.questions.slider1.getValue();\r\n let value2 = this.questions.slider2.getValue();\r\n let value3 = this.questions.slider3.getValue();\r\n let value4 = this.questions.slider4.getValue();\r\n\r\n let element1 = document.getElementById('q1-answer' + value1);\r\n let element2 = document.getElementById('q2-answer' + value2);\r\n let element3 = document.getElementById('q3-answer' + value3);\r\n let element4 = document.getElementById('q4-answer' + value4);\r\n let elements = [element1, element2, element3, element4];\r\n\r\n let element;\r\n for (let x = 0; x < elements.length; x++) {\r\n element = elements[x];\r\n // console.log(element.id + \" ts1 \" + parseInt(element.getAttribute('data-ts1'), 10));\r\n // console.log(element.id + \" tsi2 \" + parseInt(element.getAttribute('data-tsi2'), 10));\r\n // console.log(element.id + \" tsi3 \" + parseInt(element.getAttribute('data-tsi3'), 10));\r\n // console.log(element.id + \" ts4 \" + parseInt(element.getAttribute('data-ts4'), 10));\r\n this.score_ts1 += parseInt(element.getAttribute('data-ts1'), 10);\r\n this.score_tsi2 += parseInt(element.getAttribute('data-tsi2'), 10);\r\n this.score_tsi3 += parseInt(element.getAttribute('data-tsi3'), 10);\r\n this.score_ts4 += parseInt(element.getAttribute('data-ts4'), 10);\r\n }\r\n\r\n console.log('Score recap:');\r\n console.log('ts1: ' + this.score_ts1);\r\n console.log('tsi2: ' + this.score_tsi2);\r\n console.log('tsi3: ' + this.score_tsi3);\r\n console.log('ts4: ' + this.score_ts4);\r\n\r\n let scores = { 'ts1' : this.score_ts1, 'tsi2' : this.score_tsi2, 'tsi3' : this.score_tsi3, 'ts4' : this.score_ts4 };\r\n let sortedScores = Object.keys(scores).sort(function(a,b){return scores[b]-scores[a]});\r\n console.log(\"final sorted score results: \", sortedScores);\r\n return sortedScores;\r\n };\r\n\r\n this.reset = function() {\r\n this.currentState = \"questions\";\r\n document.getElementById('content').style.display = 'block';\r\n this.questions.open();\r\n this.scrollToTopOfPage();\r\n };\r\n\r\n this.scrollToTopOfPage = function() {\r\n try {\r\n window.scrollTo({\r\n top: 0,\r\n behavior: 'auto'\r\n });\r\n } catch(e) {\r\n console.log('scroll to top error');\r\n }\r\n try {\r\n window.parent.parent.scrollTo({\r\n top: 0,\r\n behavior: 'auto'\r\n });\r\n } catch(e) {\r\n console.log('scroll to top error');\r\n }\r\n };\r\n\r\n};\r\n\r\nexport default Application;\r\n\r\n","import Application from './application';\r\n\r\nif (__DEV__) {\r\n console.log('DEVELOPMENT ENVIRONMENT');\r\n}\r\nif (__SRC__) {\r\n console.log('SOURCE ENVIRONMENT');\r\n}\r\nif (__DIST__) {\r\n console.log('DISTRIBUTION ENVIRONMENT');\r\n}\r\n\r\nwindow.driverSelector = new Application();\r\n// window.intro = new Intro({});\r\n// window.preloader = new Preloader({test: 'hello'});\r\n// window.question1 = new Questions({elementId: 'question-1'});\r\n\r\n// /**\r\n// * IFRAME RESIZING\r\n// */\r\n// function resizeFrame() {\r\n// //TODO: debounce this?\r\n// let height = 0;\r\n// // dont resize dynamically during intro\r\n// // if ( document.getElementById('intro').style.display === \"none\" ) {\r\n// // var height = document.getElementsByTagName(\"html\")[0].scrollHeight;\r\n// height = document.getElementById('main').scrollHeight;\r\n// // } else {\r\n// // height = 0;\r\n// // }\r\n// // console.log('resizeFrame ' + height);\r\n//\r\n// if ( height >= 0 ) {\r\n// window.parent.postMessage([height], \"*\");\r\n// }\r\n// }\r\n// window.addEventListener('load', resizeFrame);\r\n// window.addEventListener('resize', resizeFrame);\r\n\r\n"],"sourceRoot":""}