{"version":3,"sources":["webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/controller.ts","webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/main.ts","webpack:///./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/index.js"],"names":[],"mappings":"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","file":"js/wholesale-broadband-form-2.js","sourcesContent":["import * as $ from 'jquery';\r\nimport * as Backbone from 'backbone';\r\nimport * as Radio from 'backbone.radio';\r\nimport * as Marionette from 'backbone.marionette';\r\nimport { on, Options } from \"../utils/decorators\";\r\nimport { forEach } from 'underscore';\r\nimport internal = require('assert');\r\n\r\ninterface props {\r\n controller: any\r\n}\r\n\r\n@Options({\r\n el: '#fxb_00000000-0000-0000-0000-000000000000_ef177952-ff08-4e29-be1f-4e1dd8c75190',\r\n template: false,\r\n ui: { \r\n stateCheckbox: \".single-state-checkbox\",\r\n checkboxAllStates: \".all-states-checkbox\",\r\n submissionTypeRadioButtons: '[data-sc-field-key=\"82FA892D4D514FE68D16A581F87A5AFA\"] input[type=\"radio\"]',\r\n submissionTypeRadio: '[value=\"Change (Provide change description below)\"]',\r\n submissionTypeTextbox: \"#fxb_00000000-0000-0000-0000-000000000000_Fields_ef7c1a86-a29c-409e-99b7-1ac8725dd116__Value\"\r\n }\r\n})\r\n\r\nexport default class ViewController extends Marionette.View{\r\n\r\n // VARIABLES\r\n public statesArr = [];\r\n public allStatesIsChecked: boolean = false;\r\n public formBase: HTMLElement; \r\n\r\n // EVENTS\r\n // --------------------------------\r\n\r\n setupClasses() { \r\n // add a class to targeted form IDs\r\n $(this.el).addClass(\"form-with-state-fields-2\");\r\n this.formBase = document.querySelector(\".form-with-state-fields-2\");\r\n\r\n const stateBoxChildren = this.formBase.querySelectorAll('[data-sc-field-key=\"03854C82CC8A478AAA50B288BE8F6A88\"] > div');\r\n\r\n forEach(stateBoxChildren, (el) => {\r\n (el).classList.add(\"state-line\");\r\n });\r\n\r\n const checkedValues = this.formBase.querySelectorAll('[data-sc-field-key=\"A07579D5341F4B0797F997AB3CA6143D\"] input[type=\"checkbox\"]');\r\n\r\n checkedValues[0].classList.add(\"all-states-checkbox\");\r\n\r\n // iterate over all checkboxes except the first one and add a class\r\n for (let i = 1; i < checkedValues.length; i++) {\r\n checkedValues[i].classList.add(\"single-state-checkbox\");\r\n // initialize array with empty values\r\n this.statesArr.push(false);\r\n } \r\n\r\n checkedValues[0].classList.add(\"all-states-checkbox\");\r\n }\r\n\r\n fillAllStates() { \r\n this.statesArr.forEach((el, i) => {\r\n this.statesArr[i] = true;\r\n }); \r\n this.hideStateFields();\r\n }\r\n\r\n clearAllStates() {\r\n this.statesArr.forEach((el, i) => {\r\n this.statesArr[i] = false;\r\n }); \r\n this.hideStateFields();\r\n }\r\n\r\n buildStateArray() {\r\n let newStateArr = [];\r\n const allCheckboxes = this.formBase.querySelectorAll('.single-state-checkbox');\r\n forEach(allCheckboxes, (el: HTMLInputElement) => {\r\n if(el.checked) {\r\n newStateArr.push(true);\r\n } else {\r\n newStateArr.push(false);\r\n }\r\n }); \r\n this.statesArr = newStateArr;\r\n }\r\n\r\n hideStateFields() {\r\n let fieldIndex = 0; \r\n const stateFields = this.formBase.querySelectorAll(\".state-line\");\r\n \r\n forEach(stateFields, (el) => {\r\n el.classList.add(\"hidden\");\r\n const inputBoxes = el.querySelectorAll('input[type=\"text\"]');\r\n\r\n // make each state input not required by default\r\n forEach(inputBoxes, (input) => {\r\n this.makeInputNotRequired(input);\r\n });\r\n\r\n if (fieldIndex <= stateFields.length) { \r\n if (this.statesArr[fieldIndex]) {\r\n el.classList.remove(\"hidden\"); \r\n \r\n // switch the input to required when not hidden\r\n forEach(inputBoxes, (input) => {\r\n this.makeInputRequired(input);\r\n });\r\n }\r\n }\r\n fieldIndex++;\r\n });\r\n \r\n }\r\n\r\n makeInputRequired(input) {\r\n input.required = true;\r\n }\r\n\r\n makeInputNotRequired(input) {\r\n input.required = '';\r\n }\r\n\r\n initStateFields() {\r\n const stateFields = this.formBase.querySelectorAll(\".state-line\");\r\n\r\n for (let i = 0; i < stateFields.length; i++) {\r\n stateFields[i].classList.add(\"hidden\");\r\n }\r\n }\r\n\r\n fillDateField() {\r\n const dateInput: HTMLInputElement = document.querySelector('[data-sc-field-name=\"Date\"]');\r\n if (dateInput) {\r\n dateInput.valueAsDate = new Date();\r\n\r\n // hide date field container\r\n dateInput.parentElement.style.display = 'none';\r\n }\r\n }\r\n\r\n @on(\"change @ui.checkboxAllStates\") \r\n onChangeAllStateCheckbox(ev) { \r\n if (this.allStatesIsChecked) {\r\n this.fillAllStates();\r\n } else {\r\n this.clearAllStates();\r\n }\r\n this.allStatesIsChecked = !this.allStatesIsChecked; \r\n }\r\n\r\n @on(\"change @ui.stateCheckbox\")\r\n onChangeAnyStateCheckbox(ev) { \r\n const isAllChecked = document.querySelector('.all-states-checkbox:checked'); \r\n if (!isAllChecked) { \r\n this.allStatesIsChecked = false;\r\n this.buildStateArray();\r\n this.hideStateFields(); \r\n } else {\r\n this.allStatesIsChecked = true;\r\n }\r\n }\r\n\r\n @on(\"change @ui.submissionTypeRadioButtons\")\r\n onChangeSubmissionTypeRadioButtons(ev) {\r\n const submissionRadioButton = $(this.ui.submissionTypeRadio);\r\n const isRadioSelected = submissionRadioButton.is(':checked');\r\n\r\n if (isRadioSelected === true) {\r\n this.ui.submissionTypeTextbox.attr(\"required\", true);\r\n } else {\r\n this.ui.submissionTypeTextbox.attr(\"required\", false);\r\n }\r\n }\r\n\r\n\r\n onRender() {\r\n let _this = this;\r\n // if ($(_this.el).length) {\r\n // this.setupClasses();\r\n // this.initStateFields();\r\n // }\r\n\r\n this.fillDateField();\r\n }\r\n\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/controller.ts","import * as Backbone from \"backbone\";\r\nimport * as Marionette from \"backbone.marionette\";\r\nimport * as $ from \"jquery\";\r\nimport ViewController from \"./controller\";\r\n\r\nconst app = new Marionette.Application()\r\n\r\napp.once(\"start\", () => {\r\n new ViewController().render()\r\n});\r\n\r\n$(() => {\r\n app.start();\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/main.ts","require(\"./main.ts\");\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./Websites/FrontierEnterprise.Web/@static/@modules/wholesale-broadband-form-2/index.js\n// module id = 73\n// module chunks = 8"],"sourceRoot":""}