{"version":3,"file":"taxFreeTool.js","mappings":"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","sources":["webpack://MandG/./src/js/legacy/qna.js","webpack://MandG/./src/js/legacy/tools-global.js","webpack://MandG/webpack/bootstrap","webpack://MandG/webpack/runtime/compat get default export","webpack://MandG/webpack/runtime/define property getters","webpack://MandG/webpack/runtime/hasOwnProperty shorthand","webpack://MandG/./src/js/legacy/taxfree-tool.js"],"sourcesContent":["\r\n(function () {\r\n\r\n \"use strict\";\r\n\r\n $(document).ready(function () {\r\n\r\n var $doc = $(this);\r\n\r\n var qnaClass = function () {\r\n\r\n var answers = {},\r\n qnaActive = true,\r\n currentToolType;\r\n\r\n\r\n this.init = function (params) {\r\n\r\n params = params || {};\r\n\r\n var paramDefaults = {\r\n callbacks: {\r\n onFinalQuestionComplete: function () {\r\n // This method is overwritten in 'tools-global.js'.\r\n }\r\n },\r\n\r\n toolType: false\r\n };\r\n\r\n if (!params.toolType) {\r\n window.console.warn('QnA init failed. Parameter \"toolType\" is required');\r\n return false;\r\n } else {\r\n main($.extend(true, {}, paramDefaults, params));\r\n currentToolType = params.toolType;\r\n }\r\n };\r\n\r\n this.isActive = function () {\r\n return qnaActive;\r\n };\r\n\r\n this.getCurrentToolType = function () {\r\n return currentToolType;\r\n };\r\n\r\n /**\r\n *\r\n * @param params\r\n */\r\n function main(params) {\r\n\r\n var counter = {\r\n current: 1,\r\n max: $('.questions-block .question').length\r\n },\r\n qnaLoader = {\r\n\r\n setCounterMaxValue: function () {\r\n\r\n $('.counter-block .max').text(counterFormat(counter.max));\r\n\r\n },\r\n\r\n setCounterCurrentValue: function () {\r\n\r\n $('.counter-block .current').text(counterFormat(counter.current));\r\n\r\n },\r\n\r\n displayCurrentQuestion: function () {\r\n\r\n var $loader = this,\r\n $question = $('.question'),\r\n $currentQuestionElem = $question.eq(counter.current - 1),\r\n $categoryHeading = $('.section-title'),\r\n $hasMultipleChoice = (typeof $currentQuestionElem.attr('data-has-multiple') === 'undefined') ? false : true,\r\n categoryHeading = $currentQuestionElem.attr('data-category-heading') || false,\r\n isMobile = navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i);\r\n var $QuestionInput = $currentQuestionElem.find('.input-block>input').hasClass(\"skip\");\r\n\r\n if ($QuestionInput && counter.current === counter.max) {\r\n $currentQuestionElem.find(\"button.next\").click();\r\n }\r\n if ($QuestionInput && counter.current !== counter.max) {\r\n counter.current++;\r\n $currentQuestionElem = $question.eq(counter.current - 1);\r\n //$currentQuestionElem.find(\"button.next\").click();\r\n }\r\n $question.removeClass('show');\r\n $loader.setCounterCurrentValue();\r\n $currentQuestionElem.addClass('show');\r\n\r\n if (categoryHeading && categoryHeading !== $categoryHeading.text()) {\r\n\r\n $categoryHeading.addClass('hide');\r\n\r\n setTimeout(function () {\r\n\r\n $categoryHeading.text(categoryHeading);\r\n\r\n }, 400);\r\n\r\n $categoryHeading.removeClass('hide');\r\n\r\n }\r\n\r\n setTimeout(function () {\r\n\r\n // New functionality for answers that have more than one option.\r\n if ($hasMultipleChoice === true) {\r\n\r\n var questionToShow = answers[Object.keys(answers)[Object.keys(answers).length - 1]],\r\n $multipleChoiceQuestion = $('.multiple-choice-question');\r\n\r\n $multipleChoiceQuestion.filter(function () {\r\n\r\n var $this = $(this),\r\n currentQuestionNames = $this.data('question-names').split(',');\r\n\r\n $.each(currentQuestionNames, function (index) {\r\n\r\n if (questionToShow === currentQuestionNames[index]) {\r\n\r\n $this.removeClass('hide');\r\n\r\n return;\r\n\r\n }\r\n\r\n });\r\n\r\n });\r\n\r\n }\r\n\r\n $currentQuestionElem.css({ opacity: 1 });\r\n\r\n if (!isMobile) {\r\n $('input', $currentQuestionElem).focus();\r\n }\r\n\r\n }, 400);\r\n\r\n // If the first question is being displayed, don't scroll.\r\n if (counter.current === 1) {\r\n return;\r\n }\r\n\r\n // // Animate the scroll to desired position.\r\n // $('html, body').stop().animate({\r\n // scrollTop: ($('.QA-main .content-block-60').offset().top - ($('.header.headroom').height() + 10))\r\n // }, 400);\r\n\r\n },\r\n\r\n nextButton: function () {\r\n\r\n var loader = this;\r\n\r\n $doc.on('click', 'button.next', function () {\r\n\r\n counter.max = $('.questions-block .question').length;\r\n $('.counter-block .max').text(counterFormat(counter.max));\r\n var $inputElem = $(this).closest('.question').find('.question-controls input, .question-controls .icon-group');\r\n\r\n storeCurrentAnswer($inputElem, getInputElemType($inputElem));\r\n\r\n console.log($inputElem.length);\r\n\r\n while (i < $inputElem.length) {\r\n $inputElem[i].data('goal');\r\n i++;\r\n }\r\n if(window.gaTracking){\r\n window.gaTracking.sendEvent(\r\n 'submit',\r\n window.location.pathname + '/' + $('h2', '.question-text:eq(' + (counter.current - 1) + ')').text(),\r\n 'Completed question ' + counter.current + ' of ' + counter.max,\r\n ($inputElem.val() === '') ? $inputElem.data('goal') : $inputElem.val(),\r\n ''\r\n );\r\n }\r\n if (counter.current !== counter.max) {\r\n counter.current++;\r\n loader.displayCurrentQuestion();\r\n } else {\r\n\r\n qnaActive = false;\r\n params.callbacks.onFinalQuestionComplete(answers);\r\n\r\n // Animate the scroll to desired position.\r\n $('html, body').stop().animate({\r\n scrollTop: ($('.result-chart-block').offset().top - ($('.header.headroom').height() + 10))\r\n }, 400);\r\n\r\n }\r\n });\r\n\r\n function storeCurrentAnswer($inputElem, elemType) {\r\n var key = null,\r\n val = null;\r\n\r\n switch (elemType) {\r\n\r\n case 'input':\r\n if ($inputElem.length === 3) {\r\n key = 'education-costs';\r\n val = {\r\n 'primary-school-cost': $inputElem.eq(0).val(),\r\n 'high-school-cost': $inputElem.eq(1).val(),\r\n 'tertiary-cost': $inputElem.eq(2).val(),\r\n };\r\n }\r\n else {\r\n key = $inputElem.attr('data-prepop-id');\r\n val = $inputElem.val();\r\n }\r\n break;\r\n\r\n case 'ul':\r\n key = $inputElem.attr('data-prepop-id');\r\n val = (typeof $inputElem.attr('data-goal') !== \"undefined\") ? $inputElem.attr('data-goal') : $inputElem.attr('data-selected-id');\r\n break;\r\n\r\n default:\r\n throw '\"elemType\" is not defined on switch statement.';\r\n }\r\n\r\n answers[key] = {};\r\n answers[key] = val;\r\n\r\n }\r\n\r\n function getInputElemType($inputElem) {\r\n\r\n return $inputElem[0].tagName.toLowerCase();\r\n\r\n }\r\n },\r\n\r\n inputValidation: function () {\r\n\r\n $('.question').each(function () {\r\n\r\n var $questionElem = $(this);\r\n\r\n function showNextButton() {\r\n $questionElem.find(\"button.next\").addClass(\"enabled\");\r\n }\r\n\r\n function hideNextButton() {\r\n $questionElem.find('button.next').removeClass('enabled');\r\n }\r\n\r\n $questionElem.find('.input-block input').on('keyup', function () {\r\n if (this.validity.valid) {\r\n showNextButton();\r\n } else {\r\n hideNextButton();\r\n }\r\n });\r\n\r\n $questionElem.find('.choose-your-goal li').on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').siblings('.goal-icon').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n $questionElem.find('.radio-group li label').on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').parent().siblings('.goal-icon').find('label').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n $questionElem.find('.icon-group.dropdown-menu li').off().on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').siblings('.goal-icon').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n $questionElem.find('.icon-group.select-tax.dropdown-menu li').off().on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').siblings('.goal-icon').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n $questionElem.find('.icon-group.select-month.dropdown-menu li').off().on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').siblings('.goal-icon').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n $questionElem.find('.icon-group.select-year.dropdown-menu li').off().on('click', function () {\r\n\r\n var $this = $(this);\r\n\r\n $this.addClass('active').siblings('.goal-icon').removeClass('active');\r\n showNextButton();\r\n\r\n });\r\n\r\n });\r\n }\r\n };\r\n\r\n for (var i in qnaLoader) {\r\n if (qnaLoader[i].hasOwnProperty) {\r\n qnaLoader[i]();\r\n }\r\n }\r\n\r\n\r\n function counterFormat(number) {\r\n\r\n return number > 9 ? number + '' : '0' + number;\r\n\r\n }\r\n }\r\n };\r\n\r\n window._QnA = new qnaClass();\r\n\r\n });\r\n\r\n})();\r\n","/*\r\n * We will use a self executing/anonomous function to protect the private variables and methods.\r\n * We also add the ; incase a the previous code has not been closed off when we concatenate our source code later for production.\r\n */\r\n;(function() {\r\n\r\n\t\"use strict\";\r\n\t\r\n\t$(document).ready(function() {\r\n\r\n\t\tvar $doc = $(this),\r\n\t\t\tqna = window._QnA;\r\n\t\t\r\n\t\tif (!qna) {\r\n\r\n\t\t\tapplyToolGlobalCode();\r\n\r\n\t\t} else {\r\n\r\n\t\t\tvar w_qnaToolTypeCheck = setInterval(function() {\r\n\r\n\t\t\t\tif (getToolType()) {\r\n\r\n\t\t\t\t\tapplyToolGlobalCode();\r\n\t\t\t\t\tclearInterval(w_qnaToolTypeCheck);\r\n\r\n\t\t\t\t}\r\n\t\t\t}, 200);\r\n\r\n\t\t}\r\n\r\n function getToolType() {\r\n\r\n var toolType = null;\r\n\r\n if(qna) {\r\n\r\n\t\t\t\ttoolType = qna.getCurrentToolType();\r\n\r\n } else {\r\n\r\n\t\t\t\ttoolType = window.toolType;\r\n\r\n }\r\n\r\n return toolType;\r\n }\r\n\r\n\t\tfunction applyToolGlobalCode() {\r\n\r\n\t\t\t$doc.on(\"keypress\", function(e) {\r\n\r\n\t\t\t\tvar keycodes = {\r\n\t\t\t\t\t\tenter : 13\r\n\t\t\t\t\t},\r\n\t\t\t\t\tisQnaActive;\r\n\r\n\t\t\t\tif(qna) {\r\n\r\n\t\t\t\t\tisQnaActive = qna.isActive();\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t\tfunction keyCheckHandler() {\r\n\r\n\t\t\t\t\tif (e.keyCode === keycodes.enter) {\r\n\r\n\t\t\t\t\t\tif (isQnaActive) {\r\n\r\n\t\t\t\t\t\t\tqnaControlHandler();\r\n\r\n\t\t\t\t\t\t} else {\r\n\r\n\t\t\t\t\t\ttoolControlHandler(getToolType());\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t\tkeyCheckHandler();\r\n\r\n\t\t\t});\r\n\r\n\t\t\tfunction qnaControlHandler() {\r\n\r\n\t\t\t\t$(\".question.show .next.enabled\").click();\r\n\r\n\t\t\t}\r\n\r\n\t\t\tfunction toolControlHandler(tooltype) {\r\n\r\n\t\t\t\tvar tooltypeList = {\r\n\r\n\t\t\t\t\t\"retirement-calc\" : function() {\r\n\t\t\t\t\t\t// Currently we don't use this but it is here for future usages.\r\n\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\"goal-calc\" : function() {\r\n\t\t\t\t\t\t$(\".calculate\").click();\r\n },\r\n\r\n \"education-calc\": function () {\r\n $(\".calculate\").click();\r\n },\r\n\r\n \"tax-free\" : function() {\r\n $(\".calculate\").click();\r\n },\r\n\r\n\t\t\t\t\t\"fund-picker\" : function() {\r\n\t\t\t\t\t\t$(\".lookup-funds\").click();\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\r\n\t\t\t\ttooltypeList[tooltype]();\r\n\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t\t// END: applyToolGlobalCode();\r\n\r\n\t});\r\n\t// End : Document.ready();\r\n\r\n})();\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import \"/src/css/legacy/taxfree.css\";\r\nimport \"/src/css/legacy/funds.css\";\r\nimport \"/src/css/legacy/our-tools.css\";\r\n\r\nimport \"/src/js/legacy/qna.js\";\r\nimport \"/src/js/legacy/tools-global.js\";\r\n\r\n(function () {\r\n\t\"use strict\";\r\n\r\n\t$(document).ready(function () {\r\n\t\tvar $doc = $(this),\r\n\t\t\t$qnaComplete = false,\r\n\t\t\t$currentFund = \"\",\r\n\t\t\t$fundElem,\r\n\t\t\tf = window.formatNumber.toRandFormat,\r\n\t\t\tcurrentLumpSum = 0,\r\n\t\t\tcurrentMonthly = 0,\r\n\t\t\tisValid = true,\r\n\t\t\tgraphBreakpoint = window.matchMedia(\"(min-width: 1023px)\"),\r\n\t\t\t$wrapper = $(\"div.wrapper\"),\r\n\t\t\t$resultChartBlock = $(\"div.result-chart-block\"),\r\n\t\t\t$investmentValueGraph = $(\r\n\t\t\t\t\"div.result-chart-block-container.chartdiv.investment-value-graph\"\r\n\t\t\t),\r\n\t\t\t/**\r\n\t\t\t * Gets the funds for the dropdown and populates it.\r\n\t\t\t * @returns nothing\r\n\t\t\t */\r\n\t\t\tgetFunds = function () {\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: \"/api/services/GetTaxFreeFundsForDropdown\",\r\n\t\t\t\t\ttype: \"GET\",\r\n\t\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\t\tsuccess: function (data) {\r\n\t\t\t\t\t\tdata.forEach(function (item) {\r\n\t\t\t\t\t\t\t$(\"
  • \")\r\n\t\t\t\t\t\t\t\t.text(item.Text)\r\n\t\t\t\t\t\t\t\t.attr(\"class\", \"goal-icon\")\r\n\t\t\t\t\t\t\t\t.attr(\"data-item-id\", item.Value)\r\n\t\t\t\t\t\t\t\t.appendTo(\".select-funds\")\r\n\t\t\t\t\t\t\t\t// This event is placed here as it is not registering from the 'qna.js' validation function\r\n\t\t\t\t\t\t\t\t// as the elements do not exist yet.\r\n\t\t\t\t\t\t\t\t.on(\"click\", function () {\r\n\t\t\t\t\t\t\t\t\tvar $this = $(this);\r\n\r\n\t\t\t\t\t\t\t\t\t$this\r\n\t\t\t\t\t\t\t\t\t\t.addClass(\"active\")\r\n\t\t\t\t\t\t\t\t\t\t.siblings(\".goal-icon\")\r\n\t\t\t\t\t\t\t\t\t\t.removeClass(\"active\");\r\n\t\t\t\t\t\t\t\t\t$(\".question.show\")\r\n\t\t\t\t\t\t\t\t\t\t.find(\"button.next\")\r\n\t\t\t\t\t\t\t\t\t\t.addClass(\"enabled\");\r\n\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\t/**\r\n\t\t\t * Checks whether the Questions & Answers section has been completed.\r\n\t\t\t * @type {number}\r\n\t\t\t */\r\n\t\t\tqnaChecker = setInterval(function () {\r\n\t\t\t\tif (typeof window._QnA !== \"undefined\") {\r\n\t\t\t\t\twindow._QnA.init({\r\n\t\t\t\t\t\tcallbacks: {\r\n\t\t\t\t\t\t\t/**\r\n\t\t\t\t\t\t\t * The callback once the Questions & Answers section has been completed\r\n\t\t\t\t\t\t\t * @param answers an array of answers, answered by the user.\r\n\t\t\t\t\t\t\t */\r\n\t\t\t\t\t\t\tonFinalQuestionComplete: function (answers) {\r\n\t\t\t\t\t\t\t\tfor (var i in answers) {\r\n\t\t\t\t\t\t\t\t\tif (answers[i].hasOwnProperty) {\r\n\t\t\t\t\t\t\t\t\t\t// Set the main form fields values.\r\n\t\t\t\t\t\t\t\t\t\t$(\r\n\t\t\t\t\t\t\t\t\t\t\t'.tax-free-fields input[data-prepop-id=\"' +\r\n\t\t\t\t\t\t\t\t\t\t\t\ti +\r\n\t\t\t\t\t\t\t\t\t\t\t\t'\"]'\r\n\t\t\t\t\t\t\t\t\t\t).val(answers[i]);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\t\t$qnaComplete = true;\r\n\r\n\t\t\t\t\t\t\t\t$(\".QA-main\").css({ display: \"none\" });\r\n\t\t\t\t\t\t\t\t$(\".tax-free-container\").addClass(\"show\");\r\n\t\t\t\t\t\t\t\t$(\".tax-free-fields input\")\r\n\t\t\t\t\t\t\t\t\t.eq(0)\r\n\t\t\t\t\t\t\t\t\t.trigger(\"keypress\");\r\n\r\n\t\t\t\t\t\t\t\t$(\".tax-free-fields input\").change(function () {\r\n\t\t\t\t\t\t\t\t\t$(\".calculate\").click();\r\n\t\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t\t\t\t// Show the main window.\r\n\t\t\t\t\t\t\t\t\t$(\".tax-free-main\")\r\n\t\t\t\t\t\t\t\t\t\t.addClass(\"show\")\r\n\t\t\t\t\t\t\t\t\t\t.css({ opacity: 1 });\r\n\t\t\t\t\t\t\t\t\t//$('.calculate').attr('disabled', false).click();\r\n\t\t\t\t\t\t\t\t\t$(\".calculate\").click();\r\n\t\t\t\t\t\t\t\t}, 400);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t},\r\n\r\n\t\t\t\t\t\ttoolType: \"tax-free\"\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t\t$(\".lumpsum, .monthly-recurring\").on(\"input\", function () {\r\n\t\t\t\t\t\t// Get a jQuery reference to the current DOM object.\r\n\t\t\t\t\t\tvar $this = $(this),\r\n\t\t\t\t\t\t\t// Get a clean string without any comma seperators.\r\n\t\t\t\t\t\t\tstrippedNumber = $this.val().replace(/,/g, \"\");\r\n\r\n\t\t\t\t\t\t// If the number is polluted with other characters...\r\n\t\t\t\t\t\tif (isNaN(Number(strippedNumber))) {\r\n\t\t\t\t\t\t\t// ...Go no further.\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif ($($this).attr(\"class\").includes(\"lumpsum\")) {\r\n\t\t\t\t\t\t\tif ($this.val().replace(/,/g, \"\") < 10000) {\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-lumpsum\").removeClass(\r\n\t\t\t\t\t\t\t\t\t\"valid\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-lumpsum\").addClass(\r\n\t\t\t\t\t\t\t\t\t\"valid\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\t$($this).attr(\"class\").includes(\"monthly-recurring\")\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\tif ($this.val().replace(/,/g, \"\") < 500) {\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-debit\").removeClass(\r\n\t\t\t\t\t\t\t\t\t\"valid\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-debit\").addClass(\"valid\");\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// If the string is at least in the thousands...\r\n\t\t\t\t\t\tif (strippedNumber.length >= 3) {\r\n\t\t\t\t\t\t\t// Add the en-US local which by default seperates thousnads, millions etc...\r\n\t\t\t\t\t\t\t// More info here : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString\r\n\t\t\t\t\t\t\t// Supports these browsers : https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString#Browser_compatibility\r\n\t\t\t\t\t\t\tstrippedNumber = Number(\r\n\t\t\t\t\t\t\t\tstrippedNumber\r\n\t\t\t\t\t\t\t).toLocaleString(\"en-US\", {\r\n\t\t\t\t\t\t\t\tminimumFractionDigits: 0\r\n\t\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\t\t// Add the newly formatted string to the DOM.\r\n\t\t\t\t\t\t\t$this.val(strippedNumber);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\t$(\".lumpsum\").on(\"change\", function () {\r\n\t\t\t\t\t\tvar $span = $(this)\r\n\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t.find(\"span.question-validation\")\r\n\t\t\t\t\t\t\t.filter(\":visible\");\r\n\t\t\t\t\t\tvar $amount = $(\".lumpsum\").val().replace(\",\", \"\");\r\n\t\t\t\t\t\tvar $selectedOption = $(\r\n\t\t\t\t\t\t\t\"#investmentOption>li>div>input:checked\"\r\n\t\t\t\t\t\t).val();\r\n\t\t\t\t\t\tif ($amount >= 0 && $selectedOption === \"both\") {\r\n\t\t\t\t\t\t\t$span.addClass(\"valid\");\r\n\t\t\t\t\t\t} else if (\r\n\t\t\t\t\t\t\t$amount >= 10000 &&\r\n\t\t\t\t\t\t\t$selectedOption === \"lump sum\"\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\t$span.addClass(\"valid\");\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$span.removeClass(\"valid\");\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t\t$(\".monthly-recurring\").on(\r\n\t\t\t\t\t\t\"change keydown input\",\r\n\t\t\t\t\t\tfunction () {\r\n\t\t\t\t\t\t\tvar $Debitamount = $(\".monthly-recurring\")\r\n\t\t\t\t\t\t\t\t.val()\r\n\t\t\t\t\t\t\t\t.replace(\",\", \"\");\r\n\t\t\t\t\t\t\tvar $span = $(this)\r\n\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t.find(\"span.question-validation\")\r\n\t\t\t\t\t\t\t\t.filter(\":visible\");\r\n\t\t\t\t\t\t\tvar $selectedOption = $(\r\n\t\t\t\t\t\t\t\t\"#investmentOption>li>div>input:checked\"\r\n\t\t\t\t\t\t\t).val();\r\n\t\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\t\t$Debitamount >= 500 &&\r\n\t\t\t\t\t\t\t\t($selectedOption === \"both\" ||\r\n\t\t\t\t\t\t\t\t\t$selectedOption === \"debit order\")\r\n\t\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\t\tif ($selectedOption === \"debit order\") {\r\n\t\t\t\t\t\t\t\t\t$(this);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t$span.addClass(\"valid\");\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t$span.removeClass(\"valid\");\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\t\t\t\t\t$(\"[id^=investment-Options\").on(\r\n\t\t\t\t\t\t\"ifChanged ifChecked click change\",\r\n\t\t\t\t\t\tfunction () {\r\n\t\t\t\t\t\t\tvar selectedInvestmentOption = $(\r\n\t\t\t\t\t\t\t\t\"#investmentOption>li>div>input:checked\"\r\n\t\t\t\t\t\t\t).val();\r\n\t\t\t\t\t\t\t$(\"span.question-validation\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t.hide(); //\r\n\t\t\t\t\t\t\tif (selectedInvestmentOption === \"lump sum\") {\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").val(0);\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").attr(\r\n\t\t\t\t\t\t\t\t\t\"pattern\",\r\n\t\t\t\t\t\t\t\t\t\"\\\\d{1}(,[0-9]{3,4}){2,}|[1-9]\\\\d{1,3}(,[0-9]{3,4}){1,}\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").attr(\r\n\t\t\t\t\t\t\t\t\t\"pattern\",\r\n\t\t\t\t\t\t\t\t\t\"0|[5-9][0-9]{2}|\\\\d{0,3}(,[0-9]{3,4}){1,}\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-lumpsum\")\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t\t.show(); //\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\")\r\n\t\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t\t.find(\"button.next\")\r\n\t\t\t\t\t\t\t\t\t.addClass(\"enabled\");\r\n\t\t\t\t\t\t\t\t$(\"label\").removeClass(\"active\");\r\n\t\t\t\t\t\t\t\tconsole.log(this);\r\n\t\t\t\t\t\t\t\t$(this).siblings().addClass(\"active\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").addClass(\"skip\");\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").removeClass(\"skip\");\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif (selectedInvestmentOption === \"debit order\") {\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").val(0);\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").attr(\"pattern\", \"[0-9]+\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").attr(\r\n\t\t\t\t\t\t\t\t\t\"pattern\",\r\n\t\t\t\t\t\t\t\t\t\"[5-9][0-9]{2}|\\\\d{0,3}(,[0-9]{3,4}){1,}\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\")\r\n\t\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t\t.find(\"button.next\")\r\n\t\t\t\t\t\t\t\t\t.addClass(\"enabled\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\")\r\n\t\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t\t.find(\"button.next\")\r\n\t\t\t\t\t\t\t\t\t.hide()\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"next\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\")\r\n\t\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t\t.find(\"button.result\")\r\n\t\t\t\t\t\t\t\t\t.show()\r\n\t\t\t\t\t\t\t\t\t.addClass(\"next\");\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-debit\")\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t\t.show(); //\r\n\t\t\t\t\t\t\t\t$(\"label\").removeClass(\"active\");\r\n\t\t\t\t\t\t\t\t$(this).siblings().addClass(\"active\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").removeClass(\"skip\");\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").addClass(\"skip\");\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif (selectedInvestmentOption === \"both\") {\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").val(\"\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").val(\"\");\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").attr(\r\n\t\t\t\t\t\t\t\t\t\"pattern\",\r\n\t\t\t\t\t\t\t\t\t\"[0-9]+|[1-9][0-9]{2}|\\\\d{0,3}(,[0-9]{3,4}){1,}\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").attr(\r\n\t\t\t\t\t\t\t\t\t\"pattern\",\r\n\t\t\t\t\t\t\t\t\t\"[5-9][0-9]{2}|\\\\d{0,3}(,[0-9]{3,4}){1,}\"\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-debit\")\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t\t.hide();\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-lumpsum\")\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t\t.hide();\r\n\t\t\t\t\t\t\t\t$(\"span.taxFree-alert-lumpsum-both\")\r\n\t\t\t\t\t\t\t\t\t.removeClass(\"valid\")\r\n\t\t\t\t\t\t\t\t\t.show();\r\n\t\t\t\t\t\t\t\t$(\"label\").removeClass(\"active\");\r\n\t\t\t\t\t\t\t\t$(this).siblings().addClass(\"active\");\r\n\t\t\t\t\t\t\t\t$(\".monthly-recurring\").removeClass(\"skip\");\r\n\t\t\t\t\t\t\t\t$(\".lumpsum\").removeClass(\"skip\");\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t$(this)\r\n\t\t\t\t\t\t\t\t.closest(\".question\")\r\n\t\t\t\t\t\t\t\t.find(\"button.next\")\r\n\t\t\t\t\t\t\t\t.addClass(\"enabled\");\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\tclearInterval(qnaChecker);\r\n\t\t\t\t}\r\n\t\t\t}, 50),\r\n\t\t\t/**\r\n\t\t\t *\r\n\t\t\t * @param onsuccess\r\n\t\t\t */\r\n\t\t\tvalidateInput = function (onsuccess) {\r\n\t\t\t\tif ($(\"#term\").val() === \"\" || $(\"#term\").val() === \"0\") {\r\n\t\t\t\t\t$(\"button.calculate\").attr(\"disabled\", true);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$(\"button.calculate\").attr(\"disabled\", false);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tvar model = {};\r\n\r\n\t\t\t\tmodel.FundId = $(\"ul.select-funds.dropdown-menu\").attr(\r\n\t\t\t\t\t\"data-selected-id\"\r\n\t\t\t\t);\r\n\t\t\t\tmodel.TaxRate = $(\"ul.select-tax.dropdown-menu\").attr(\r\n\t\t\t\t\t\"data-selected-id\"\r\n\t\t\t\t);\r\n\t\t\t\tmodel.Term = $(\"#term\").val() !== \"\" ? $(\"#term\").val() : 1;\r\n\t\t\t\tmodel.LumpSum =\r\n\t\t\t\t\t$(\"#lumpSum\").val() !== \"\" ? $(\"#lumpSum\").val() : 0;\r\n\t\t\t\tmodel.Monthly =\r\n\t\t\t\t\t$(\"#monthly\").val() !== \"\" ? $(\"#monthly\").val() : 0;\r\n\r\n\t\t\t\tcurrentLumpSum = model.LumpSum;\r\n\t\t\t\tcurrentMonthly = model.Monthly;\r\n\r\n\t\t\t\t$.ajax({\r\n\t\t\t\t\turl: \"/api/services/GetValidationModel\",\r\n\t\t\t\t\ttype: \"POST\",\r\n\t\t\t\t\tdata: JSON.stringify(model),\r\n\t\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\t\tsuccess: function (data) {\r\n\t\t\t\t\t\t$(\"#yearsToReachMax\").text(\r\n\t\t\t\t\t\t\tdata.YearsToReach + \" Years to reach R500,000 (max)\"\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\t$(\"#grossReturn\").text(\r\n\t\t\t\t\t\t\tMath.round(data.GrossReturnRate * 10) / 10 + \"%\"\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\t$(\"#afterTaxReturn\").text(\r\n\t\t\t\t\t\t\tMath.round(data.AfterTaxRate * 10) / 10 + \"%\"\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\t$(\"#cgt\").text(\r\n\t\t\t\t\t\t\tMath.round(data.CgtRate * 10) / 10 + \"%\"\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\tif (data.AnnualMaxExceeded === false) {\r\n\t\t\t\t\t\t\t$(\"#annualInvestment span\").text(\r\n\t\t\t\t\t\t\t\tf(data.YearlyInvestment).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\t\" / \"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t$(\"#annualMax\").text(\r\n\t\t\t\t\t\t\t\tf(36000 - data.YearlyInvestment).replace(\r\n\t\t\t\t\t\t\t\t\t\".00\",\r\n\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t) + \" available\"\r\n\t\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t\t$(\"#annualInvestment span\")\r\n\t\t\t\t\t\t\t\t.closest(\"span\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"not-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"is-valid\");\r\n\t\t\t\t\t\t\t$(\"#annualMax\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"not-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"is-valid\");\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(\"#annualInvestment span\").text(\r\n\t\t\t\t\t\t\t\tf(data.YearlyInvestment).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\t\" / \"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t$(\"#annualMax\").text(\r\n\t\t\t\t\t\t\t\t\"Exceeded (\" +\r\n\t\t\t\t\t\t\t\t\tf(\r\n\t\t\t\t\t\t\t\t\t\tMath.abs(36000 - data.YearlyInvestment)\r\n\t\t\t\t\t\t\t\t\t).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\t\" over limit)\"\r\n\t\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\t\t\t$(\"#annualInvestment span\")\r\n\t\t\t\t\t\t\t\t.closest(\"span\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\t\t\t\t\t\t\t$(\"#annualMax\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (data.IsValid === true) {\r\n\t\t\t\t\t\t\tisValid = true;\r\n\t\t\t\t\t\t\t$(\".calculate\").attr(\"disabled\", false);\r\n\r\n\t\t\t\t\t\t\t$(\"#stillAvailable\").text(\r\n\t\t\t\t\t\t\t\tf(Math.abs(data.RecurringAvailable)).replace(\r\n\t\t\t\t\t\t\t\t\t\".00\",\r\n\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t) + \" available\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t$(\"#stillAvailable\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"not-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"is-valid\");\r\n\r\n\t\t\t\t\t\t\t$(\".result-chart-block-container\").show();\r\n\t\t\t\t\t\t\t$(\".result-info-block\").addClass(\"show\");\r\n\t\t\t\t\t\t\t$(\".result-info-block-dummy\").removeClass(\"show\");\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (data.IsValid === false) {\r\n\t\t\t\t\t\t\tisValid = false;\r\n\t\t\t\t\t\t\t$(\".calculate\").attr(\"disabled\", true);\r\n\r\n\t\t\t\t\t\t\t$(\"#stillAvailable\").text(\r\n\t\t\t\t\t\t\t\tf(Math.abs(data.RecurringAvailable)).replace(\r\n\t\t\t\t\t\t\t\t\t\".00\",\r\n\t\t\t\t\t\t\t\t\t\"\"\r\n\t\t\t\t\t\t\t\t) + \" over limit\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t$(\"#stillAvailable\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\r\n\t\t\t\t\t\t\t$(\".result-chart-block-container\").hide();\r\n\t\t\t\t\t\t\t$(\".result-info-block\").removeClass(\"show\");\r\n\t\t\t\t\t\t\t$(\".result-info-block-dummy\").addClass(\"show\");\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (currentLumpSum > 36000) {\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\").text(\"Exceeded annual maximum\");\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\").text(\"\");\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (currentLumpSum.replace(\",\", \"\") < 10000) {\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\").text(\"Minimum R10,000\");\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(\"#lumpsumMax\").text(\"\");\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif (currentMonthly.replace(\",\", \"\") < 500) {\r\n\t\t\t\t\t\t\t$(\"#debitorderMax\").text(\"Minimum R500\");\r\n\t\t\t\t\t\t\t$(\"#debitorderMax\")\r\n\t\t\t\t\t\t\t\t.closest(\"p\")\r\n\t\t\t\t\t\t\t\t.removeClass(\"is-valid\")\r\n\t\t\t\t\t\t\t\t.addClass(\"not-valid\");\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(\"#debitorderMax\").text(\"\");\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (\r\n\t\t\t\t\t\t\tdata.IsValid &&\r\n\t\t\t\t\t\t\t!data.AnnualMaxExceeded &&\r\n\t\t\t\t\t\t\tonsuccess\r\n\t\t\t\t\t\t) {\r\n\t\t\t\t\t\t\tonsuccess();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t};\r\n\r\n\t\tvar elemEvents = {\r\n\t\t\tcalculate: function () {\r\n\t\t\t\t$doc.on(\"click\", \".calculate\", function () {\r\n\t\t\t\t\tvar $resultInfoBlock = $(\".result-info-block\");\r\n\t\t\t\t\t$(\".lumpsum\").attr(\"disabled\", false);\r\n\t\t\t\t\t$(\".monthly-recurring\").attr(\"disabled\", false);\r\n\t\t\t\t\tget$currentFund();\r\n\r\n\t\t\t\t\t$resultInfoBlock.removeClass(\"show\");\r\n\r\n\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t$resultInfoBlock.addClass(\"show\");\r\n\t\t\t\t\t}, 1000);\r\n\r\n\t\t\t\t\tfunction get$currentFund() {\r\n\t\t\t\t\t\tif ($qnaComplete) {\r\n\t\t\t\t\t\t\t$currentFund = $(\r\n\t\t\t\t\t\t\t\t\".tax-free-input-row .dropdown button\"\r\n\t\t\t\t\t\t\t).text();\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$currentFund = $(\r\n\t\t\t\t\t\t\t\t\".choose-your-goal .icon-group\"\r\n\t\t\t\t\t\t\t).attr(\"data-fund\");\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tvalidateInput(getChartData());\r\n\t\t\t\t});\r\n\t\t\t},\r\n\r\n\t\t\tvalidation: function () {\r\n\t\t\t\tvar $inputs = $(\".tax-free-input-row:not(.optional-row) input\"),\r\n\t\t\t\t\t$calculate = $(\".calculate\");\r\n\r\n\t\t\t\t$doc.on(\"change\", $inputs, function () {\r\n\t\t\t\t\tvar isValid = true;\r\n\r\n\t\t\t\t\tsetTimeout(function () {\r\n\t\t\t\t\t\t$inputs.each(function () {\r\n\t\t\t\t\t\t\tvar $this = $(this),\r\n\t\t\t\t\t\t\t\thasNoVal = $this.val() === \"\";\r\n\r\n\t\t\t\t\t\t\tif ($this.hasClass(\":invalid\") || hasNoVal) {\r\n\t\t\t\t\t\t\t\tisValid = false;\r\n\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tif (isValid) {\r\n\t\t\t\t\t\t\t$calculate.attr(\"disabled\", false);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$calculate.attr(\"disabled\", true);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}, 20);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t/**\r\n\t\t *\r\n\t\t */\r\n\t\tfunction getChartData() {\r\n\t\t\tvar model = {};\r\n\r\n\t\t\tmodel.FundId = $(\".select-funds\").attr(\"data-selected-id\");\r\n\t\t\tmodel.Term = $(\"#term\").val();\r\n\t\t\tmodel.TaxRate = $(\".select-tax\").attr(\"data-selected-id\");\r\n\t\t\tmodel.LumpSum = $(\"#lumpSum\").val();\r\n\t\t\tmodel.Monthly = $(\"#monthly\").val();\r\n\r\n\t\t\t$.ajax({\r\n\t\t\t\turl: \"/api/services/GetChartData\",\r\n\t\t\t\ttype: \"POST\",\r\n\t\t\t\tdata: JSON.stringify(model),\r\n\t\t\t\tcontentType: \"application/json\",\r\n\t\t\t\tsuccess: function (data) {\r\n\t\t\t\t\t$(\"#taxFreeInvestmentValue\").text(data.TaxFreeInvestment);\r\n\t\t\t\t\t$(\"#afterTaxInvestmentValue\").text(data.AfterTaxInvestment);\r\n\t\t\t\t\t$(\"#cgtValue\").text(data.CGTValue);\r\n\t\t\t\t\t$(\"#dividendTaxValue\").text(data.TaxOnInterestAndDividends);\r\n\t\t\t\t\t$(\"#payments\").text(data.Payments);\r\n\r\n\t\t\t\t\tvar graphData = [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tcategory: \"Taxable Investment\",\r\n\t\t\t\t\t\t\t\"column-1\": data.AfterTaxInvestment,\r\n\t\t\t\t\t\t\t\"column-2\":\r\n\t\t\t\t\t\t\t\tNumber(data.TaxFreeInvestment) -\r\n\t\t\t\t\t\t\t\tNumber(data.AfterTaxInvestment)\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tcategory: \"Tax-free Investment\",\r\n\t\t\t\t\t\t\t\"column-1\": data.TaxFreeInvestment\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t];\r\n\r\n\t\t\t\t\tvar chartdiv = $(\".chartdiv\")[0];\r\n\r\n\t\t\t\t\tplot(graphData, chartdiv);\r\n\r\n\t\t\t\t\tupdateResultInfoBlock();\r\n\r\n\t\t\t\t\tfunction updateResultInfoBlock() {\r\n\t\t\t\t\t\tif (!isValid) {\r\n\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tsendFacebookToolCompletedEvent('Tax-Free Investment Calculator');\r\n\t\t\t\t\t\t$(\".result-info-block p\").text(resultSummaryText());\r\n\t\t\t\t\t\tsendFacebookToolCompletedEvent('Tax-Free Investment Calculator');\r\n\t\t\t\t\t\tfunction resultSummaryText() {\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\"In a typical taxable investment, a return of \" +\r\n\t\t\t\t\t\t\t\tf(data.TaxFreeInvestment).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\" will attract \" +\r\n\t\t\t\t\t\t\t\tf(\r\n\t\t\t\t\t\t\t\t\tNumber(data.TaxFreeInvestment) -\r\n\t\t\t\t\t\t\t\t\t\tNumber(data.AfterTaxInvestment)\r\n\t\t\t\t\t\t\t\t).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\" worth of taxes,\" +\r\n\t\t\t\t\t\t\t\t\" leaving you with just \" +\r\n\t\t\t\t\t\t\t\tf(data.AfterTaxInvestment).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\". Whereas, in a tax-free investment you can receive the full benefit of \" +\r\n\t\t\t\t\t\t\t\tf(data.TaxFreeInvestment).replace(\".00\", \"\") +\r\n\t\t\t\t\t\t\t\t\".\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\t$(\"#term\").change(function () {\r\n\t\t\tvalidateInput(null);\r\n\t\t});\r\n\r\n\t\t$(\"#lumpSum\").change(function () {\r\n\t\t\tvalidateInput(null);\r\n\t\t});\r\n\r\n\t\t$(\"#monthly\").change(function () {\r\n\t\t\tvalidateInput(null);\r\n\t\t});\r\n\r\n\t\t// Radio buttons\r\n\t\t$(\"input\").iCheck({\r\n\t\t\tcheckboxClass: \"icheckbox_square-red\",\r\n\t\t\tradioClass: \"iradio_square-red\",\r\n\t\t\tincreaseArea: \"30%\" // optional\r\n\t\t});\r\n\r\n\t\t$(document)\r\n\t\t\t.on(\"click\", \".select-funds li\", function () {\r\n\t\t\t\tvar $this = $(this),\r\n\t\t\t\t\t$dropdowns = $(\".select-funds\");\r\n\r\n\t\t\t\t$fundElem = $this;\r\n\t\t\t\t$dropdowns.attr(\"data-selected-id\", $this.attr(\"data-item-id\"));\r\n\t\t\t\t$dropdowns.siblings(\"button\").text($this.text());\r\n\t\t\t\t$(\".calculate\").click();\r\n\t\t\t})\r\n\t\t\t.on(\"click\", \".select-tax li\", function () {\r\n\t\t\t\tvar $this = $(this),\r\n\t\t\t\t\t$dropdowns = $(\".select-tax\");\r\n\r\n\t\t\t\t$fundElem = $this;\r\n\t\t\t\t$dropdowns.attr(\"data-selected-id\", $this.attr(\"data-item-id\"));\r\n\t\t\t\t$dropdowns.siblings(\"button\").text($this.text());\r\n\t\t\t\t$(\".calculate\").click();\r\n\t\t\t});\r\n\r\n\t\tfor (var i in elemEvents) {\r\n\t\t\tif (elemEvents[i].hasOwnProperty) {\r\n\t\t\t\telemEvents[i]();\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tfunction plot(graphData, targetElem) {\r\n\t\t\t/**\r\n\t\t\t * Define function to handle legend clicks.\r\n\t\t\t * @param graph\r\n\t\t\t * @returns {boolean}\r\n\t\t\t */\r\n\t\t\tfunction handleLegendClick(graph) {\r\n\t\t\t\t// Return false so that default action is canceled.\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\t// Remove the old graph.\r\n\t\t\tAmCharts.charts = [];\r\n\r\n\t\t\t/**\r\n\t\t\t * Create the chart.\r\n\t\t\t */\r\n\t\t\tvar $targetElem = $(targetElem),\r\n\t\t\t\tchart = AmCharts.makeChart(targetElem, {\r\n\t\t\t\t\tautoDisplay: true,\r\n\t\t\t\t\ttype: \"serial\",\r\n\t\t\t\t\tcategoryField: \"category\",\r\n\t\t\t\t\tbackgroundColor: \"#fff\",\r\n\t\t\t\t\tcolor: \"#2f2f2f\",\r\n\t\t\t\t\tfontFamily: \"InfraSemibold\",\r\n\t\t\t\t\tfontSize: 12,\r\n\t\t\t\t\ttheme: \"dark\",\r\n\t\t\t\t\taddClassNames: true,\r\n\t\t\t\t\tcategoryAxis: {\r\n\t\t\t\t\t\tdashLength: 1,\r\n\t\t\t\t\t\tminorGridEnabled: true,\r\n\t\t\t\t\t\tcolor: \"#2f2f2f\",\r\n\t\t\t\t\t\ttitleColor: \"#2f2f2f\"\r\n\t\t\t\t\t},\r\n\t\t\t\t\tnumberFormatter: {\r\n\t\t\t\t\t\tprecision: 0,\r\n\t\t\t\t\t\tdecimalSeparator: \".\",\r\n\t\t\t\t\t\tthousandsSeparator: \",\"\r\n\t\t\t\t\t},\r\n\t\t\t\t\ttrendLines: [],\r\n\t\t\t\t\tgraphs: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tfillAlphas: 1,\r\n\t\t\t\t\t\t\tlineColor: \"#055a60\",\r\n\t\t\t\t\t\t\tfillColors: \"#055a60\",\r\n\t\t\t\t\t\t\tcolor: \"#ffffff\",\r\n\t\t\t\t\t\t\tid: \"AmGraph-1\",\r\n\t\t\t\t\t\t\ttitle: \"Investment Value\",\r\n\t\t\t\t\t\t\ttype: \"column\",\r\n\t\t\t\t\t\t\tvalueField: \"column-1\",\r\n\t\t\t\t\t\t\tmarkerType: \"square\",\r\n\t\t\t\t\t\t\tshowBalloon: false,\r\n\t\t\t\t\t\t\tshowOnAxis: false,\r\n\t\t\t\t\t\t\tlabelText: \"R[[value]]\",\r\n\t\t\t\t\t\t\tfixedColumnWidth: 100\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tlineColor: \"#65b4e5\",\r\n\t\t\t\t\t\t\tfillColors: \"#65b4e5\",\r\n\t\t\t\t\t\t\tfillAlphas: 1,\r\n\t\t\t\t\t\t\tcolor: \"#2f2f2f\",\r\n\t\t\t\t\t\t\tid: \"AmGraph-2\",\r\n\t\t\t\t\t\t\ttitle: \"Tax\",\r\n\t\t\t\t\t\t\ttype: \"column\",\r\n\t\t\t\t\t\t\tvalueField: \"column-2\",\r\n\t\t\t\t\t\t\tshowBalloon: false,\r\n\t\t\t\t\t\t\tlabelText: \"R[[value]]\",\r\n\t\t\t\t\t\t\tfixedColumnWidth: 100\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t],\r\n\t\t\t\t\tguides: [],\r\n\t\t\t\t\tvalueAxes: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tid: \"v1\",\r\n\t\t\t\t\t\t\tstackType: \"regular\",\r\n\t\t\t\t\t\t\taxisAlpha: 1,\r\n\t\t\t\t\t\t\tunit: \"R\",\r\n\t\t\t\t\t\t\tunitPosition: \"left\"\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t],\r\n\t\t\t\t\tvalueAxesSettings: {\r\n\t\t\t\t\t\tunit: \"R\",\r\n\t\t\t\t\t\tunitPosition: \"left\"\r\n\t\t\t\t\t},\r\n\t\t\t\t\tallLabels: [],\r\n\t\t\t\t\tballoon: {},\r\n\t\t\t\t\tlegend: {\r\n\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\tautoMargins: false,\r\n\t\t\t\t\t\tequalWidths: false,\r\n\t\t\t\t\t\tcolor: '#2f2f2f',\r\n\t\t\t\t\t\tclickMarker: handleLegendClick,\r\n\t\t\t\t\t\tclickLabel: handleLegendClick\r\n\t\t\t\t\t},\r\n\t\t\t\t\tresponsive: {\r\n\t\t\t\t\t\tenabled: true,\r\n\t\t\t\t\t\trules: [\r\n\t\t\t\t\t\t\t// At 480 px we hide value axis labels altogether.\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tmaxWidth: 480,\r\n\t\t\t\t\t\t\t\tfontSize: 10,\r\n\t\t\t\t\t\t\t\toverrides: {\r\n\t\t\t\t\t\t\t\t\tvalueAxes: {\r\n\t\t\t\t\t\t\t\t\t\tlabelsEnabled: false\r\n\t\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t\tlegend: {\r\n\t\t\t\t\t\t\t\t\t\tlabelWidth: 100,\r\n\t\t\t\t\t\t\t\t\t\tequalWidths: false,\r\n\t\t\t\t\t\t\t\t\t\tautoMargins: false,\r\n\t\t\t\t\t\t\t\t\t\tvalueAlign: \"left\",\r\n\t\t\t\t\t\t\t\t\t\tvalueWidth: 18,\r\n\t\t\t\t\t\t\t\t\t\tmarkerSize: 11\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t]\r\n\t\t\t\t\t},\r\n\t\t\t\t\ttitles: [\r\n\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\tid: \"mainTitle\",\r\n\t\t\t\t\t\t\tsize: 15,\r\n\t\t\t\t\t\t\ttext: \"Benefits of Tax-free Investing\"\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t],\r\n\t\t\t\t\tdataProvider: graphData\r\n\t\t\t\t});\r\n\r\n\t\t\t$(\".amcharts-main-div\", $targetElem).css({ opacity: 0 });\r\n\r\n\t\t\t// Animate the scroll to desired position.\r\n\t\t\t$(\"html, body\")\r\n\t\t\t\t.stop()\r\n\t\t\t\t.animate(\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tscrollTop:\r\n\t\t\t\t\t\t\t$resultChartBlock.offset().top -\r\n\t\t\t\t\t\t\t($(\".header.headroom\").height() + 10)\r\n\t\t\t\t\t},\r\n\t\t\t\t\t400,\r\n\t\t\t\t\tfunction () {\r\n\t\t\t\t\t\tchart.write(targetElem);\r\n\r\n\t\t\t\t\t\tchart.validateNow();\r\n\r\n\t\t\t\t\t\t$targetElem.width($targetElem.width() + 1).height(500);\r\n\r\n\t\t\t\t\t\tvar timer;\r\n\r\n\t\t\t\t\t\tclearTimeout(timer);\r\n\r\n\t\t\t\t\t\tvar timer = setTimeout(function () {\r\n\t\t\t\t\t\t\t$(\".amcharts-main-div\", $targetElem).animate(\r\n\t\t\t\t\t\t\t\t{ opacity: 1 },\r\n\t\t\t\t\t\t\t\t\"slow\"\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}, 200);\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\r\n\t\t}\r\n\r\n\t\t// Get the funds for the dropdown list.\r\n\t\tgetFunds();\r\n\r\n\t});\r\n})();\r\n"],"names":["$","document","ready","$doc","this","window","_QnA","currentToolType","answers","qnaActive","init","params","toolType","console","warn","counter","current","max","length","qnaLoader","setCounterMaxValue","text","counterFormat","setCounterCurrentValue","displayCurrentQuestion","$question","$currentQuestionElem","eq","$categoryHeading","$hasMultipleChoice","attr","categoryHeading","isMobile","navigator","userAgent","match","$QuestionInput","find","hasClass","click","removeClass","addClass","setTimeout","questionToShow","Object","keys","filter","$this","currentQuestionNames","data","split","each","index","css","opacity","focus","nextButton","loader","on","$inputElem","closest","elemType","key","val","storeCurrentAnswer","tagName","toLowerCase","getInputElemType","log","i","gaTracking","sendEvent","location","pathname","callbacks","onFinalQuestionComplete","stop","animate","scrollTop","offset","top","height","inputValidation","$questionElem","showNextButton","validity","valid","siblings","parent","off","hasOwnProperty","number","main","extend","isActive","getCurrentToolType","qna","w_qnaToolTypeCheck","setInterval","getToolType","applyToolGlobalCode","clearInterval","e","isQnaActive","keyCode","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","get","obj","prop","prototype","call","$qnaComplete","f","formatNumber","toRandFormat","currentLumpSum","currentMonthly","isValid","$resultChartBlock","matchMedia","qnaChecker","display","trigger","change","strippedNumber","replace","isNaN","Number","includes","toLocaleString","minimumFractionDigits","$span","$amount","$selectedOption","$Debitamount","selectedInvestmentOption","hide","show","validateInput","onsuccess","model","FundId","TaxRate","Term","LumpSum","Monthly","ajax","url","type","JSON","stringify","contentType","success","YearsToReach","Math","round","GrossReturnRate","AfterTaxRate","CgtRate","AnnualMaxExceeded","YearlyInvestment","abs","IsValid","RecurringAvailable","elemEvents","calculate","$resultInfoBlock","TaxFreeInvestment","AfterTaxInvestment","CGTValue","TaxOnInterestAndDividends","Payments","graphData","targetElem","handleLegendClick","graph","AmCharts","charts","$targetElem","chart","makeChart","autoDisplay","categoryField","backgroundColor","color","fontFamily","fontSize","theme","addClassNames","categoryAxis","dashLength","minorGridEnabled","titleColor","numberFormatter","precision","decimalSeparator","thousandsSeparator","trendLines","graphs","fillAlphas","lineColor","fillColors","id","title","valueField","markerType","showBalloon","showOnAxis","labelText","fixedColumnWidth","guides","valueAxes","stackType","axisAlpha","unit","unitPosition","valueAxesSettings","allLabels","balloon","legend","enabled","autoMargins","equalWidths","clickMarker","clickLabel","responsive","rules","maxWidth","overrides","labelsEnabled","labelWidth","valueAlign","valueWidth","markerSize","titles","size","dataProvider","write","validateNow","width","clearTimeout","timer","plot","category","sendFacebookToolCompletedEvent","validation","$inputs","$calculate","hasNoVal","iCheck","checkboxClass","radioClass","increaseArea","$dropdowns","forEach","item","Text","Value","appendTo"],"sourceRoot":""}