{"version":3,"sources":["common/js/components/edometic/customerApplication.js"],"names":["customerApplication","init","scrollToFirstInvalidElement","$","hide","submit","e","preventDefault","formValid","valid","termsCheckboxesNotValid","length","checkIfAnyCheckboxIsChecked","checkBoxList","alternatives","children","i","checked","find","is","each","this","siblings","show","businessEntities","businessClassification","typeOfCustomer","serviceProviderProductTypes","isServiceProvider","next","form","filesValid","allowedExtensionsRegx","elements","element","type","fileNames","j","files","size","name","filename","extension","substr","lastIndexOf","test","attr","token","val","formData","FormData","append","data","_element","get","set","push","join","value","ajax","url","dataType","processData","contentType","success","result","error","_error","removeAttr","removeClass","change","prop","toLowerCase","includes","click","forId","closest","$checkbox","termsCheckboxClick","keydown","keyCode","setCheckboxValue","modal","event","document","ready"],"mappings":"AAAAA,qBACEC,KAAM,SAASA,OACbC,4BAA4BC,EAAE,6BAG9BA,EAAE,4BAA4BC,OAC9BD,EAAE,4BAA4BE,OAAO,SAAUC,GAC7CA,EAAEC,iBAGFJ,EAAE,yBAAyBC,OAC3BD,EAAE,iCAAiCC,OACnCD,EAAE,yBAAyBC,OAC3BD,EAAE,sCAAsCC,OACxC,IAAII,UAAYL,EAAE,4BAA4BM,QAC1CC,wBAA0BP,EAAE,oDAAoDQ,OAQpF,SAASC,4BAA4BC,cAEnC,IADA,IAAIC,aAAeD,aAAaE,WACvBC,EAAI,EAAGA,EAAIF,aAAaH,OAAQK,IAAK,CAC5C,IAAIC,QACJ,GADcH,aAAaI,KAAK,0BAA0BC,GAAG,YAE3D,OAAO,EAIX,OAAO,EAhBLT,yBACFP,EAAE,oDAAoDiB,KAAK,WACzDjB,EAAEkB,MAAMC,SAAS,wCAAwCC,SAkB7D,IAAIC,iBAAmBrB,EAAE,mBACrBsB,uBAAyBtB,EAAE,2BAC3BuB,eAAiBvB,EAAE,mBACnBwB,4BAA8BxB,EAAE,gCAahCyB,kBAZChB,4BAA4BY,oBAC/BhB,WAAY,EACZL,EAAEqB,kBAAkBK,KAAK,wCAAwCN,QAE9DX,4BAA4Ba,0BAC/BjB,WAAY,EACZL,EAAEsB,wBAAwBI,KAAK,wCAAwCN,QAEpEX,4BAA4Bc,kBAC/BlB,WAAY,EACZL,EAAEuB,gBAAgBG,KAAK,wCAAwCN,QAEzCpB,EAAE,2BAA2BgB,GAAG,cAEjDP,4BAA4Be,+BAC/BnB,WAAY,EACZL,EAAEwB,6BAA6BE,KAAK,wCAAwCN,SAOhF,IAJA,IAAIO,KAAOT,KACPU,YAAa,EAEbC,sBAAwB,2EACnBhB,EAAI,EAAGA,EAAIc,KAAKG,SAAStB,OAAQK,IAAK,CAC7C,IAAIkB,QAAUJ,KAAKG,SAASjB,GAC5B,GAAqB,SAAjBkB,QAAQC,KAEV,IADA,IAAIC,aACKC,EAAI,EAAGA,EAAIH,QAAQI,MAAM3B,OAAQ0B,IAAK,CAEzCH,QAAQI,MAAMD,GAAGE,KAAO,KAAO,KAAO,KACxCpC,EAAE,IAAM+B,QAAQM,KAAO,eAAejB,OACtCQ,YAAa,GAGf,IAAIU,SAAWP,QAAQI,MAAMD,GAAGG,KAC5BE,UAAYD,SAASE,OAAOF,SAASG,YAAY,MAChDZ,sBAAsBa,KAAKH,aAC9BvC,EAAE,IAAM+B,QAAQM,KAAO,eAAejB,OACtCQ,YAAa,IAKrB,GAAKvB,YAAaE,yBAA4BqB,WAA9C,CAIA5B,EAAE2B,MAAMZ,KAAK,8BAA8Bd,OAC3CD,EAAE2B,MAAMZ,KAAK,yBAAyB4B,KAAK,WAAY,YACvD,IAAIC,MAAQ5C,EAAE,2CAA4C2B,MAAMkB,MAC5DC,SAAW,IAAIC,SACnBD,SAASE,OAAO,cAAehD,EAAE,QAAQiD,KAAK,gBAC9CH,SAASE,OAAO,6BAA8BJ,OAC9C,IAAK,IAAI/B,EAAI,EAAGA,EAAIc,KAAKG,SAAStB,OAAQK,IAAK,CAC7C,IAAIqC,SAAWvB,KAAKG,SAASjB,GAC7B,GAAsB,aAAlBqC,SAASlB,KACPc,SAASK,IAAID,SAASb,MACpBa,SAASpC,SAASgC,SAASM,IAAIF,SAASb,KAAMS,SAASK,IAAID,SAASb,MAAQ,KAAOrC,EAAEkD,UAAUD,KAAK,OAC/FtB,KAAKG,SAASoB,SAASb,MAAM7B,OAAS,EAC3C0C,SAASpC,SAASgC,SAASE,OAAOE,SAASb,KAAMrC,EAAEkD,UAAUD,KAAK,OAEtEH,SAASE,OAAOE,SAASb,KAAMa,SAASpC,cAErC,GAAsB,SAAlBoC,SAASlB,KAAiB,CAEnC,IADA,IAAIC,aACKC,EAAI,EAAGA,EAAIgB,SAASf,MAAM3B,OAAQ0B,IACzCD,UAAUoB,KAAKH,SAASf,MAAMD,GAAGG,MACjCS,SAASE,OAAOE,SAASb,KAAOH,EAAGgB,SAASf,MAAMD,IAEpDY,SAASE,OAAOE,SAASb,KAAO,YAAaJ,UAAUqB,aAEvDR,SAASE,OAAOE,SAASb,KAAMa,SAASK,OAG5CvD,EAAEwD,MACAC,IAAK,2CACLzB,KAAM,OACNiB,KAAMH,SACNY,SAAU,OACVC,aAAa,EACbC,aAAa,EACbC,QAAS,SAASA,QAAQC,QACxB9D,EAAE2B,MAAM1B,KAAK,GAAI,WACfD,EAAE,gCAAgCoB,KAAK,WAG3C2C,MAAO,SAASA,MAAMC,QACpBhE,EAAE2B,MAAMZ,KAAK,8BAA8BK,KAAK,QAChDpB,EAAE2B,MAAMZ,KAAK,yBAAyBkD,WAAW,YAAYC,YAAY,oBA5C3EnE,4BAA4BC,EAAE,+BAgDlCA,EAAE,2BAA2BmE,OAAO,WAC9BnE,EAAE,2BAA2BgB,GAAG,aAClChB,EAAE,4BAA4BoB,OAC9BpB,EAAE,kBAAkBoE,KAAK,YAAY,GACrCpE,EAAE,sBAAsBoE,KAAK,YAAY,GACzCpE,EAAE,mBAAmBoE,KAAK,YAAY,GACtCpE,EAAE,gBAAgBoE,KAAK,YAAY,KAEnCpE,EAAE,4BAA4BC,OAC9BD,EAAE,4BAA4Be,KAAK,SAAS8B,IAAI,IAChD7C,EAAE,kBAAkBiE,WAAW,YAC/BjE,EAAE,sBAAsBiE,WAAW,YACnCjE,EAAE,mBAAmBiE,WAAW,YAChCjE,EAAE,gBAAgBiE,WAAW,eAOjCjE,EAAE,gBAAgBmE,OAAO,WACnBnE,EAAEkB,MAAM2B,MAAMwB,cAAcC,SAAS,UAAWtE,EAAE,iBAAiBoE,KAAK,YAAY,GACtFpE,EAAE,iBAAiBiE,WAAW,cAGlCjE,EAAE,mBAAmBmE,OAAO,WACtBnE,EAAEkB,MAAM2B,MAAMwB,cAAcC,SAAS,QACvCtE,EAAE,eAAeoE,KAAK,YAAY,GAClCpE,EAAE,sBAAsBoE,KAAK,YAAY,KAEzCpE,EAAE,eAAeiE,WAAW,YAC5BjE,EAAE,sBAAsBiE,WAAW,eAGvCjE,EAAE,kBAAkBmE,OAAO,WACrBnE,EAAEkB,MAAM2B,MAAMwB,cAAcC,SAAS,OAAQtE,EAAE,oBAAoBoE,KAAK,YAAY,GACtFpE,EAAE,oBAAoBiE,WAAW,cAGrCjE,EAAE,wBAAwBuE,MAAM,SAAUpE,GACxCA,EAAEC,iBACF,IAAIoE,MAAQxE,EAAEkB,MAAMuD,QAAQ,SAASL,KAAK,OACtCM,UAAY1E,EAAE,IAAMwE,OACxB3E,oBAAoB8E,mBAAmBD,aAEzC1E,EAAE,gCAAgCuE,MAAM,SAAUpE,GAChDA,EAAEC,iBACF,IAAIoE,MAAQxE,EAAEkB,MAAMuD,QAAQ,SAASL,KAAK,OACtCM,UAAY1E,EAAE,IAAMwE,OACxB3E,oBAAoB8E,mBAAmBD,aAEzC1E,EAAE,mBAAmBuE,MAAM,SAAUpE,GACnCA,EAAEC,iBACF,IAAIoE,MAAQxE,EAAEkB,MAAMuD,QAAQ,SAASL,KAAK,OACtCM,UAAY1E,EAAE,IAAMwE,OACxB3E,oBAAoB8E,mBAAmBD,aAEzC1E,EAAE,mBAAmB4E,QAAQ,SAAUzE,GACpB,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB9E,EAAE,yBAA0BG,MAGrEH,EAAE,yBAAyB4E,QAAQ,SAAUzE,GAC1B,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,MAG/CH,EAAE,yBAAyBuE,MAAM,SAAUpE,GACzCA,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,KAE7CH,EAAE,uBAAuBuE,MAAM,SAAUpE,GACvCH,EAAEkB,MAAMC,SAAS,wCAAwClB,SAE3DD,EAAE,2BAA2B4E,QAAQ,SAAUzE,GAC5B,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB9E,EAAE,iCAAkCG,MAG7EH,EAAE,iCAAiCuE,MAAM,SAAUpE,GACjDA,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,KAE7CH,EAAE,iCAAiC4E,QAAQ,SAAUzE,GAClC,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,MAG/CH,EAAE,cAAc4E,QAAQ,SAAUzE,GACf,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB9E,EAAE,oBAAqBG,MAGhEH,EAAE,oBAAoBuE,MAAM,SAAUpE,GACpCA,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,KAE7CH,EAAE,oBAAoB4E,QAAQ,SAAUzE,GACrB,IAAbA,EAAE0E,SAA8B,IAAb1E,EAAE0E,UACvB1E,EAAEC,iBACFP,oBAAoBiF,iBAAiB5D,KAAMf,OAIjDwE,mBAAoB,SAASA,mBAAmBD,WAC9CA,UAAUvD,SAAS,SAAS+C,YAAY,YACxClE,EAAE,mCAAmCC,OACrCD,EAAE,kCAAkCC,OACpCD,EAAE,wBAA0B0E,UAAUN,KAAK,QAAU,UAAUhD,OAC/DsD,UAAU/B,KAAK,eAAgB,GAC/B3C,EAAE,6BAA6B+E,SAEjCD,iBAAkB,SAASA,iBAAiB/C,QAASiD,OACnDhF,EAAE+B,SAASZ,SAAS,wCAAwClB,OAC5D,IAAIuE,MAAQxE,EAAE+B,SAASqC,KAAK,OACxBM,UAAY1E,EAAE,IAAMwE,OACxB,GAAsC,GAAlCE,UAAU/B,KAAK,gBACjB,OAAI+B,UAAU1D,GAAG,iBACf0D,UAAUN,KAAK,WAAW,QAG1BM,UAAUN,KAAK,WAAW,GAK5BvE,oBAAoB8E,mBAAmBD,aAI7C1E,EAAEiF,UAAUC,MAAM,WAChBrF,oBAAoBC","file":"../../../../../common/js/components/edometic/customerApplication-ed478f093b.js","sourcesContent":["customerApplication = {\n init: function init() {\n scrollToFirstInvalidElement($(\"#customerApplicationForm\"));\n\n //Hide service provider fields from start\n $(\"#serviceProvider-wrapper\").hide();\n $(\"#customerApplicationForm\").submit(function (e) {\n e.preventDefault();\n\n //Hide the error messages if they are already showing from last validation.\n $(\"#businessEntity-error\").hide();\n $(\"#businessClassification-error\").hide();\n $(\"#typeOfCustomer-error\").hide();\n $(\"#serviceProviderProductTypes-error\").hide();\n var formValid = $(\"#customerApplicationForm\").valid();\n var termsCheckboxesNotValid = $(\".customerApplication-termsCheckbox:not(:checked)\").length;\n if (termsCheckboxesNotValid) {\n $(\".customerApplication-termsCheckbox:not(:checked)\").each(function () {\n $(this).siblings(\".customerApplication-validationError\").show();\n });\n }\n\n //Validates if at least one checkbox is checked.\n function checkIfAnyCheckboxIsChecked(checkBoxList) {\n var alternatives = checkBoxList.children();\n for (var i = 0; i < alternatives.length; i++) {\n var checked = alternatives.find(\"input[type='checkbox']\").is(\":checked\");\n if (checked) {\n return true;\n break;\n }\n }\n return false;\n }\n\n //Checkbox lists\n var businessEntities = $(\"#businessEntity\");\n var businessClassification = $(\"#businessClassification\");\n var typeOfCustomer = $(\"#typeOfCustomer\");\n var serviceProviderProductTypes = $(\"#serviceProviderProductTypes\");\n if (!checkIfAnyCheckboxIsChecked(businessEntities)) {\n formValid = false;\n $(businessEntities).next(\".customerApplication-validationError\").show();\n }\n if (!checkIfAnyCheckboxIsChecked(businessClassification)) {\n formValid = false;\n $(businessClassification).next(\".customerApplication-validationError\").show();\n }\n if (!checkIfAnyCheckboxIsChecked(typeOfCustomer)) {\n formValid = false;\n $(typeOfCustomer).next(\".customerApplication-validationError\").show();\n }\n var isServiceProvider = $(\"#areYouAServiceProvider\").is(\":checked\");\n if (isServiceProvider) {\n if (!checkIfAnyCheckboxIsChecked(serviceProviderProductTypes)) {\n formValid = false;\n $(serviceProviderProductTypes).next(\".customerApplication-validationError\").show();\n }\n }\n var form = this;\n var filesValid = true;\n // \"image/jpeg,image/png,image/gif,text/plain,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/csv,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"\n var allowedExtensionsRegx = /(\\.jpg|\\.jpeg|\\.png|\\.gif|\\.pdf|\\.doc|\\.docx|\\.xls|\\.xlsx|\\.csv|\\.txt)$/i;\n for (var i = 0; i < form.elements.length; i++) {\n var element = form.elements[i];\n if (element.type === 'file') {\n var fileNames = [];\n for (var j = 0; j < element.files.length; j++) {\n // validate file size\n if (element.files[j].size / 1024 / 1024 > 10) {\n $(\"#\" + element.name + \"-error-size\").show();\n filesValid = false;\n }\n // validate file extension\n var filename = element.files[j].name;\n var extension = filename.substr(filename.lastIndexOf(\".\"));\n if (!allowedExtensionsRegx.test(extension)) {\n $(\"#\" + element.name + \"-error-type\").show();\n filesValid = false;\n }\n }\n }\n }\n if (!formValid || termsCheckboxesNotValid || !filesValid) {\n scrollToFirstInvalidElement($(\"#customerApplicationForm\"));\n return;\n }\n $(form).find(\".customerApplication-error\").hide();\n $(form).find(\"button[type='submit']\").attr(\"disabled\", \"disabled\");\n var token = $('input[name=\"__RequestVerificationToken\"]', form).val();\n var formData = new FormData();\n formData.append('sc-language', $(\"body\").data('sc-language'));\n formData.append('__RequestVerificationToken', token);\n for (var i = 0; i < form.elements.length; i++) {\n var _element = form.elements[i];\n if (_element.type === 'checkbox') {\n if (formData.get(_element.name)) {\n if (_element.checked) formData.set(_element.name, formData.get(_element.name) + \", \" + $(_element).data(\"id\"));\n } else if (form.elements[_element.name].length > 1) {\n if (_element.checked) formData.append(_element.name, $(_element).data(\"id\"));\n } else {\n formData.append(_element.name, _element.checked);\n }\n } else if (_element.type === 'file') {\n var fileNames = [];\n for (var j = 0; j < _element.files.length; j++) {\n fileNames.push(_element.files[j].name);\n formData.append(_element.name + j, _element.files[j]);\n }\n formData.append(_element.name + \"FileNames\", fileNames.join());\n } else {\n formData.append(_element.name, _element.value);\n }\n }\n $.ajax({\n url: \"/api/edometic/customerapplication/submit\",\n type: 'POST',\n data: formData,\n dataType: 'json',\n processData: false,\n contentType: false,\n success: function success(result) {\n $(form).hide(\"\", function () {\n $(\".customerApplication-success\").show(\"slow\");\n });\n },\n error: function error(_error) {\n $(form).find(\".customerApplication-error\").show('slow');\n $(form).find(\"button[type='submit']\").removeAttr(\"disabled\").removeClass(\"disabled\");\n }\n });\n });\n $(\"#areYouAServiceProvider\").change(function () {\n if ($(\"#areYouAServiceProvider\").is(\":checked\")) {\n $(\"#serviceProvider-wrapper\").show();\n $(\"#mobileService\").prop('required', true);\n $(\"#warrantyLaborRate\").prop('required', true);\n $(\"#operationHours\").prop('required', true);\n $(\"#serviceArea\").prop('required', true);\n } else {\n $(\"#serviceProvider-wrapper\").hide();\n $(\"#serviceProvider-wrapper\").find(\"input\").val(\"\");\n $(\"#mobileService\").removeAttr('required');\n $(\"#warrantyLaborRate\").removeAttr('required');\n $(\"#operationHours\").removeAttr('required');\n $(\"#serviceArea\").removeAttr('required');\n //var checkboxes = $(\"#serviceProviderProductTypes\").children();\n //for (var i = 0; i < checkboxes.length; i++) {\n // $(checkboxes[i]).find(\".customerApplication-checkbox\").prop(\"checked\", false);\n //}\n }\n });\n $(\"#paymentType\").change(function () {\n if ($(this).val().toLowerCase().includes(\"credit\")) $(\"#ifOpenCredit\").prop('required', true);else {\n $(\"#ifOpenCredit\").removeAttr('required');\n }\n });\n $(\"#onlineRetailer\").change(function () {\n if ($(this).val().toLowerCase().includes(\"yes\")) {\n $(\"#websiteURL\").prop('required', true);\n $(\"#resaleCertificate\").prop('required', true);\n } else {\n $(\"#websiteURL\").removeAttr('required');\n $(\"#resaleCertificate\").removeAttr('required');\n }\n });\n $(\"#mobileService\").change(function () {\n if ($(this).val().toLowerCase().includes(\"yes\")) $(\"#ifMobileService\").prop('required', true);else {\n $(\"#ifMobileService\").removeAttr('required');\n }\n });\n $(\"#buyerAgreement-link\").click(function (e) {\n e.preventDefault();\n var forId = $(this).closest(\"label\").prop(\"for\");\n var $checkbox = $(\"#\" + forId);\n customerApplication.termsCheckboxClick($checkbox);\n });\n $(\"#serviceCenterAgreement-link\").click(function (e) {\n e.preventDefault();\n var forId = $(this).closest(\"label\").prop(\"for\");\n var $checkbox = $(\"#\" + forId);\n customerApplication.termsCheckboxClick($checkbox);\n });\n $(\"#saleTerms-link\").click(function (e) {\n e.preventDefault();\n var forId = $(this).closest(\"label\").prop(\"for\");\n var $checkbox = $(\"#\" + forId);\n customerApplication.termsCheckboxClick($checkbox);\n });\n $(\"#buyerAgreement\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue($(\"#buyerAgreement-label\"), e);\n }\n });\n $(\"#buyerAgreement-label\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n }\n });\n $(\"#buyerAgreement-label\").click(function (e) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n });\n $(\"#taxAgreement-label\").click(function (e) {\n $(this).siblings(\".customerApplication-validationError\").hide();\n });\n $(\"#serviceCenterAgreement\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue($(\"#serviceCenterAgreement-label\"), e);\n }\n });\n $(\"#serviceCenterAgreement-label\").click(function (e) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n });\n $(\"#serviceCenterAgreement-label\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n }\n });\n $(\"#saleTerms\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue($(\"#saleTerms-label\"), e);\n }\n });\n $(\"#saleTerms-label\").click(function (e) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n });\n $(\"#saleTerms-label\").keydown(function (e) {\n if (e.keyCode == 32 || e.keyCode == 13) {\n e.preventDefault();\n customerApplication.setCheckboxValue(this, e);\n }\n });\n },\n termsCheckboxClick: function termsCheckboxClick($checkbox) {\n $checkbox.siblings(\"label\").removeClass(\"disabled\");\n $(\".customerApplication-modalTitle\").hide();\n $(\".customerApplication-modalText\").hide();\n $(\".customerApplication-\" + $checkbox.prop(\"name\") + \"-modal\").show();\n $checkbox.attr(\"data-hasRead\", 1);\n $(\"#customerApplicationModal\").modal();\n },\n setCheckboxValue: function setCheckboxValue(element, event) {\n $(element).siblings(\".customerApplication-validationError\").hide();\n var forId = $(element).prop(\"for\");\n var $checkbox = $(\"#\" + forId);\n if ($checkbox.attr(\"data-hasread\") == 1) {\n if ($checkbox.is(\":checked\")) {\n $checkbox.prop('checked', false);\n return;\n } else {\n $checkbox.prop('checked', true);\n return;\n }\n return;\n } else {\n customerApplication.termsCheckboxClick($checkbox);\n }\n }\n};\n$(document).ready(function () {\n customerApplication.init();\n});"]}