{"version":3,"sources":["contactQueryForm.js"],"names":["vmFormQA","recaptchaError","Callback","recaptchaCallback","document","getElementById","Vue","filter","stringToSearch","searchTerm","s","trim","replace","iQuery","RegExp","toString","matchedText","a","b","component","VueSelect","use","window","vuelidate","_window$validators","validators","required","requiredIf","sameAs","email","numeric","maxLength","helpers","phone","regex","el","data","form","firstNameQA","surnameQA","emailQA","phoneQA","organisationQA","organisationIdQA","otherOrganisationQA","mprnQA","descQA","filesQA","tandcQA","cmsVersionQA","submitStatus","loading","organisationsQAList","showDropdownList","rcapt_sig_key","captchaKey","rcapt_id","error","serverSideErrors","info","isGasConsumerQuery","allowNotListedOrganisation","queryType","cmsVersionShow","cmsVersionRequired","cmsDropdownList","showOtherOrganisation","validations","this","function","length","undefined","filteredItems","id","methods","grecaptcha","getResponse","organisationChanged","addFile","fileName","push","removeFileByNameGuid","nameGuid","i","splice","sendForm","_this","g_recaptcha_response","$v","$touch","$invalid","$","documentElement","body","animate","scrollTop","offset","top","axios","post","IsGasConsumerQuery","QueryType","FirstName","Surname","Email","Phone","OrganisationId","OrganisationOther","Mprn","Description","Files","CmsVersion","CaptchaVerification","headers","Content-Type","then","response","logGAEvent","location","href","ResponseCode","constructor","Array","getOrganisations","_this2","get","matchWords","subject","words","every","toLowerCase","includes","back","reload","selectOrganisation","item","combinedTitle","mounted","computed","showResponseMsg","showDropdown","_this3","rg","split","e","other","shortCode","name","gasSupplier","concat","watch","css","uploadFilesSum","upload","onSelect","console","log","each","files","index","value","fileSizeLimit","size","limitOfFileNumber","validationErrors","uid","entry","remove","onError","getFileInfo","onSuccess","operation","file","onRemove","kendoUpload","async","saveUrl","removeUrl","localization","invalidFileExtension","invalidMaxFileSize","filesSumSizeLimit","dropFilesHere","select","success","validation","allowedExtensions","maxFileSize"],"mappings":"aAAA,IAAIA,SAAW,KACXC,eAAiB,GAIrB,SAASC,WACLF,SAASG,oBAEb,GAAIC,SAASC,eAAe,UAAW,CACnCC,IAAIC,OAAO,aAAa,SAAUC,EAAgBC,GAC9C,GAAmB,KAAfA,EAAmB,OAAOD,EAC9B,IAAIE,EAAI,IAAMD,EAAWE,OAAOC,QAAQ,MAAO,KAAO,IAClDC,EAAS,IAAIC,OAAOJ,EAAG,MAC3B,OAAOF,EAAeO,WAAWH,QAAQC,GAAQ,SAAUG,EAAaC,EAAGC,GACvE,MAAQ,2BAA+BF,EAAc,gBAG7DV,IAAIa,UAAU,WAAYC,UAAUA,WACpCd,IAAIe,IAAIC,OAAOC,UAAP,SACR,IAAAC,mBAA6EF,OAAOG,WAA5EC,SAARF,mBAAQE,SAAUC,WAAlBH,mBAAkBG,WAAYC,OAA9BJ,mBAA8BI,OAAQC,MAAtCL,mBAAsCK,MAAOC,QAA7CN,mBAA6CM,QAASC,UAAtDP,mBAAsDO,UAAWC,QAAjER,mBAAiEQ,QAC3DC,MAAQD,QAAQE,MAAM,QAAS,iBACrClC,SAAW,IAAIM,IAAI,CACf6B,GAAI,UACJC,KAAM,WAAA,MAAO,CACTC,KAAM,CACFC,YAAa,GACbC,UAAW,GACXC,QAAS,GACTC,QAAS,GACTC,eAAgB,GAChBC,iBAAkB,GAClBC,oBAAqB,GACrBC,OAAQ,GACRC,OAAQ,GACRC,QAAS,GACTC,SAAS,EACTC,aAAc,MAElBC,aAAc,GACdC,SAAS,EACTC,oBAAqB,GACrBC,kBAAkB,EAClBC,cAAeC,WACfC,SAAU,EACVC,MAAOxD,eACPyD,iBAAkB,GAClBC,KAAM,KACNC,mBAAkD,oBAAvBA,oBAA4D,SAAvBA,mBAChEC,2BAAkE,oBAA/BA,4BAA4E,SAA/BA,2BAChFC,UAAWA,UACXC,eAAgBA,eAChBC,mBAAoBA,mBACpBC,gBAAiBA,gBACjBC,uBAAuB,IAE3BC,YAAa,CACT9B,KAAM,CACFC,YAAa,CACTZ,SAAAA,SACAK,UAAWA,UAAU,MAEzBQ,UAAW,CACPb,SAAAA,SACAK,UAAWA,UAAU,MAEzBS,QAAS,CACLd,SAAAA,SACAK,UAAWA,UAAU,KACrBF,MAAAA,OAEJY,QAAS,CACLR,MAAAA,MACAF,UAAWA,UAAU,KAEzBW,eAAgB,CACZX,UAAWA,UAAU,KACrBL,SAAUC,YAAW,WAAc,OAAQyC,KAAKR,sBAFpCS,SAAA,WAGC,OAAQD,KAAKR,oBAAyD,GAAnCQ,KAAK/B,KAAKK,eAAe4B,QAAsCC,MAAtBH,KAAKI,eAA8BJ,KAAKI,cAAcF,QAAU,GAAmC,IAA9BF,KAAK/B,KAAKM,kBAA2ByB,KAAK/B,KAAKM,kBAAoByB,KAAKI,cAAc,GAAGC,KAE3P7B,oBAAqB,CACjBlB,SAAUC,YAAW,WAAc,OAAuC,IAAhCyC,KAAK/B,KAAKM,qBAExDE,OAAQ,CACJd,UAAWA,UAAU,MAEzBe,OAAQ,CACJf,UAAWA,UAAU,KACrBL,SAAAA,UAEJsB,QAAS,CACLtB,SAAAA,SACAE,OAAQA,QAAO,WAAA,OAAM,MAEzBqB,aAAc,CACVvB,SAAUC,YAAW,WAAa,OAAOyC,KAAKJ,yBAI1DU,QAAS,CACLvE,kBADK,WAEsC,GAAnCwE,WAAWC,cAAcN,OACzBF,KAAKX,MAAQ,6BAEbW,KAAKX,MAAQ,IAQrBoB,oBAbK,WAcDT,KAAK/B,KAAKM,iBAAmB,GAC7ByB,KAAK/B,KAAKO,oBAAsB,IAEpCkC,QAjBK,SAiBGC,GACJX,KAAK/B,KAAKU,QAAQiC,KAAKD,IAE3BE,qBApBK,SAoBgBC,GACjB,GAAId,KAAK/B,KAAKU,SAAWqB,KAAK/B,KAAKU,QAAQuB,OACvC,IAAK,IAAIa,EAAI,EAAGA,EAAIf,KAAK/B,KAAKU,QAAQuB,OAAQa,IAC1C,GAAIf,KAAK/B,KAAKU,QAAQoC,GAAGD,WAAaA,EAAU,CAC5Cd,KAAK/B,KAAKU,QAAQqC,OAAOD,EAAG,GAC5B,QAKhBE,SA9BK,WA8BM,IAAAC,EAAAlB,KAEHmB,EAAuBZ,WAAWC,cAEtCR,KAAKjB,SAAU,EAEfiB,KAAKoB,GAAGnD,KAAKoD,SACTrB,KAAKoB,GAAGnD,KAAKqD,UAA2C,GAA/BH,EAAqBjB,QAC9CF,KAAKlB,aAAe,QACpBkB,KAAKjE,oBACLiE,KAAKjB,SAAU,EACfwC,EAAE,CAACvF,SAASwF,gBAAiBxF,SAASyF,OAAOC,QAAQ,CACjDC,UAAWJ,EAAE,QAAQK,SAASC,IAAM,KACrC,OAEH7B,KAAKX,MAAQ,GACbW,KAAKjB,SAAU,EACf+C,MAAMC,KAZI,qCAaN,CACIC,mBAlBChC,KAkBwBR,mBAAmB7C,WAC5CsF,UAnBCjC,KAmBeN,UAChBwC,UApBClC,KAoBe/B,KAAKC,YACrBiE,QArBCnC,KAqBa/B,KAAKE,UACnBiE,MAtBCpC,KAsBW/B,KAAKG,QACjBiE,MAvBCrC,KAuBW/B,KAAKI,QACjBiE,eAxBCtC,KAwBoB/B,KAAKM,iBAC1BgE,kBAzBCvC,KAyBuB/B,KAAKO,oBAC7BgE,KA1BCxC,KA0BU/B,KAAKQ,OAChBgE,YA3BCzC,KA2BiB/B,KAAKS,OACvBgE,MA5BC1C,KA4BW/B,KAAKU,QACjBgE,WA7BC3C,KA6BgB/B,KAAKY,aACtB+D,oBAAqBzB,GAEzB,CACI0B,QAAS,CACLC,eAAgB,qCAGvBC,MAAK,SAAAC,GACF9B,EAAK3B,KAAOyD,EAAShF,KACrBkD,EAAKnC,SAAU,EACfkE,WAAW,iBAAkB,sBAAuBjH,SAASkH,SAASC,MACtE5B,EAAE,CAACvF,SAASwF,gBAAiBxF,SAASyF,OAAOC,QAAQ,CACjDC,UAAWJ,EAAE,QAAQK,SAASC,IAAM,KACrC,QA3BX,OA6BW,SAAAxC,GACH,GAAIA,EAAM2D,SAAShF,KACf,GAAIqB,EAAM2D,SAAShF,KAAKoF,aACpBlC,EAAK3B,KAAOF,EAAM2D,SAAShF,SAE1B,CACD,GAAIqB,EAAM2D,SAAShF,KAAKqF,cAAgBC,MACpC,IAAK,IAAIvC,EAAI,EAAGA,EAAI1B,EAAM2D,SAAShF,KAAKkC,OAAQa,IAC5CG,EAAK5B,iBAAiBsB,KAAKvB,EAAM2D,SAAShF,KAAK+C,SAInDG,EAAK5B,iBAAiBsB,KAAKvB,EAAM2D,SAAShF,MAE9CuD,EAAE,CAACvF,SAASwF,gBAAiBxF,SAASyF,OAAOC,QAAQ,CACjDC,UAAWJ,EAAE,QAAQK,SAASC,IAAM,KACrC,KAGXX,EAAKnC,SAAU,OAI/BwE,iBAnGK,WAmGc,IAAAC,EAAAxD,KACf8B,MACK2B,IAAI,+DAAiEzD,KAAKR,mBAAmB7C,YAC7FoG,MAAK,SAAAC,GAAQ,OAAKQ,EAAKxE,oBAAsBgE,EAAShF,SAE/D0F,WAAY,SAAUC,EAASC,GAC3B,OAAOA,EAAMC,OAAM,SAAA9F,GAAE,OAAI4F,EAAQG,cAAcC,SAAShG,EAAG+F,mBAE/DE,KA3GK,WA4GDd,SAASe,UAEbC,mBA9GK,SA8GcC,GACfnE,KAAK/B,KAAKK,eAAiB6F,EAAKC,cAC5BpE,KAAK/B,KAAKM,iBAAmB4F,EAAK9D,GAClCL,KAAKf,kBAAmB,IAGpCoF,QAjMe,WAkMXrE,KAAKuD,oBAETe,SAAU,CACNC,gBADM,WAEF,OAAoB,MAAbvE,KAAKT,MAA6BY,MAAbH,KAAKT,MAErCiF,aAJM,WAKF,SAAIxE,KAAKI,eAAiBJ,KAAKI,cAAcF,QAAgC,aAAtBF,KAAKI,eAAgCJ,KAAKf,mBAKrGmB,cAVM,WAUU,IAAAqE,EAAAzE,KACN0E,EAAK1E,KAAK/B,KAAKK,eAAeqG,MAAM,SAASxI,QAAO,SAAAyI,GAAC,OAAIA,EAAErI,OAAO2D,OAAS,KAI3E2E,EAAQ7E,KAAKP,2BAA6B,CAAC,CAAEY,IAAO,EAAGyE,UAAa,QAASC,KAAQ,2BAA4BX,cAAiB,2BAA4BY,aAAe,IAAW,GAC9L,GAAIhF,KAAK/B,KAAKK,eAEV,OAAgC,IADT0B,KAAKhB,oBAAoB7C,QAAO,SAAA4E,GAAC,OAAIA,EAAEqD,gBAAkBK,EAAKxG,KAAKK,kBACrE4B,OACVF,KAAKhB,oBAAoB7C,QAAO,SAAA4E,GAAC,OAAIA,EAAEqD,gBAAkBK,EAAKxG,KAAKK,kBAEnEuG,EAAMI,OAAOjF,KAAKhB,oBAAoB7C,QAAO,SAAA4E,GAAC,OAAI0D,EAAKf,WAAW3C,EAAEqD,cAAeM,SAK1GQ,MAAO,CACHnG,QADG,WAEKiB,KAAKjB,QACLwC,EAAE,WAAW4D,IAAI,UAAW,SAE5B5D,EAAE,WAAW4D,IAAI,UAAW,YAMhD,IAAIC,eAAiB,EACjBC,OAAS9D,EAAE,YAAYvD,KAAK,eAwBhC,SAASsH,SAASV,GAEdW,QAAQC,IAAIZ,GACZrD,EAAEkE,KAAKb,EAAEc,OAAO,SAAUC,EAAOC,GAC7B,GAAIR,eAAiBS,eAAiBD,EAAME,KAAOD,eAAkBT,eAAiBQ,EAAME,KAAQD,eAAiBtE,EAAE,qBAAqBrB,OAAS6F,kBAAoB,GAAMxE,EAAE,qBAAqBrB,OAASyF,EAASI,kBAAoB,EAAG,CAC3O,IAAIL,EAAQd,EAAEc,MACdA,EAAMC,GAAOK,iBAAmB,CAAC,qBACjC,IAAIC,EAAMP,EAAMC,GAAOM,IACnBC,EAAQ3E,EAAE,qBAAuB0E,EAAM,MACvCC,EAAMhG,OAAS,GACfgG,EAAMC,cAGLvB,EAAEc,MAAM,GAAGM,mBACZZ,gBAAkBQ,EAAME,SAKxC,SAASM,QAAQxB,GAEb,IADA,IAAIc,EAAQd,EAAEc,MACL3E,EAAI,EAAGA,EAAI2E,EAAMxF,OAAQa,IAAK,CACnC,IAAIkF,EAAMP,EAAM3E,GAAGkF,IACfC,EAAQ3E,EAAE,qBAAuB0E,EAAM,MACvCC,EAAMhG,OAAS,GACfgG,EAAMC,UAIlB,SAASE,YAAYzB,GAEjB,IADA,IAAIc,EAAQd,EAAEc,MACL3E,EAAI,EAAGA,EAAI2E,EAAMxF,OAAQa,IAC9B,OAAO2E,EAAM3E,GAAG+E,KAIxB,SAASQ,UAAU1B,GACf,GAAoB,WAAhBA,EAAE2B,UAAwB,CAC1B,IAAIC,EAAO5B,EAAEc,MAAM,GACnBc,EAAK1F,SAAW8D,EAAE5B,SAClBpH,SAAS8E,QAAQ8F,IAIzB,SAASC,SAAS7B,GACdhJ,SAASiF,qBAAqB+D,EAAEc,MAAM,GAAG5E,UAEpCsE,gBAAkBiB,YAAYzB,KAAOA,EAAEc,MAAM,GAAGM,mBACjDZ,gBAAkBiB,YAAYzB,IAElCA,EAAE5G,KAAO,CACL8C,SAAU8D,EAAEc,MAAM,GAAG5E,UAzE7BS,EAAE,YAAYmF,YAAY,CACtBC,MAAO,CACHC,QAAS,wDACTC,UAAW,+DAEfC,aAAc,CACVC,qBAAsB,+LACtBC,mBAAoB,4LACpBC,kBAAmB,4LACnBC,cAAe,+BACfC,OAAQ,UAEZA,OAAQ7B,SACR8B,QAASd,UACTH,OAAQM,SACRY,WAAY,CACRC,kBAAmBA,kBACnBC,YAAa1B,eAEjBxG,MAAO+G","file":"contactQueryForm.min.js","sourcesContent":["var vmFormQA = null;\r\nvar recaptchaError = \"\";\r\n//function isCaptchaChecked() {\r\n// return grecaptcha && grecaptcha.getResponse().length !== 0;\r\n//}\r\nfunction Callback() {\r\n vmFormQA.recaptchaCallback()\r\n}\r\nif (document.getElementById(\"formQA\")) {\r\n Vue.filter('highlight', function (stringToSearch, searchTerm) {\r\n if (searchTerm === '') return stringToSearch;\r\n var s = '(' + searchTerm.trim().replace(/ +/g, '|') + ')';\r\n var iQuery = new RegExp(s, \"ig\");\r\n return stringToSearch.toString().replace(iQuery, function (matchedText, a, b) {\r\n return ('' + matchedText + '');\r\n });\r\n });\r\n Vue.component('v-select', VueSelect.VueSelect);\r\n Vue.use(window.vuelidate.default);\r\n const { required, requiredIf, sameAs, email, numeric, maxLength, helpers } = window.validators;\r\n const phone = helpers.regex('phone', /^[0-9 ()+-]+$/)\r\n vmFormQA = new Vue({\r\n el: '#formQA',\r\n data: () => ({\r\n form: {\r\n firstNameQA: \"\",\r\n surnameQA: \"\",\r\n emailQA: \"\",\r\n phoneQA: \"\",\r\n organisationQA: \"\",\r\n organisationIdQA: \"\",\r\n otherOrganisationQA: \"\",\r\n mprnQA: \"\",\r\n descQA: \"\",\r\n filesQA: [],\r\n tandcQA: false,\r\n cmsVersionQA: null\r\n },\r\n submitStatus: \"\",\r\n loading: false,\r\n organisationsQAList: [],\r\n showDropdownList: false,\r\n rcapt_sig_key: captchaKey,\r\n rcapt_id: 0,\r\n error: recaptchaError,\r\n serverSideErrors: [],\r\n info: null,\r\n isGasConsumerQuery: typeof isGasConsumerQuery !== 'undefined' ? isGasConsumerQuery === \"True\" ? true : false : false,\r\n allowNotListedOrganisation: typeof allowNotListedOrganisation !== 'undefined' ? allowNotListedOrganisation === \"True\" ? true : false : false,\r\n queryType: queryType,\r\n cmsVersionShow: cmsVersionShow,\r\n cmsVersionRequired: cmsVersionRequired,\r\n cmsDropdownList: cmsDropdownList,\r\n showOtherOrganisation: false\r\n }),\r\n validations: {\r\n form: {\r\n firstNameQA: {\r\n required,\r\n maxLength: maxLength(256)\r\n },\r\n surnameQA: {\r\n required,\r\n maxLength: maxLength(256)\r\n },\r\n emailQA: {\r\n required,\r\n maxLength: maxLength(100),\r\n email\r\n },\r\n phoneQA: {\r\n phone,\r\n maxLength: maxLength(32)\r\n },\r\n organisationQA: {\r\n maxLength: maxLength(256),\r\n required: requiredIf(function () { return !this.isGasConsumerQuery }),\r\n function() { return (this.isGasConsumerQuery && this.form.organisationQA.length == 0) || this.filteredItems != undefined && this.filteredItems.length >= 1 && this.form.organisationIdQA != '' && this.form.organisationIdQA == this.filteredItems[0].id }\r\n },\r\n otherOrganisationQA: {\r\n required: requiredIf(function () { return this.form.organisationIdQA === -1 })\r\n },\r\n mprnQA: {\r\n maxLength: maxLength(100)\r\n },\r\n descQA: {\r\n maxLength: maxLength(4000),\r\n required\r\n },\r\n tandcQA: {\r\n required,\r\n sameAs: sameAs(() => true),\r\n },\r\n cmsVersionQA: {\r\n required: requiredIf(function() { return this.cmsVersionRequired})\r\n }\r\n }\r\n },\r\n methods: {\r\n recaptchaCallback() {\r\n if (grecaptcha.getResponse().length == 0) {\r\n this.error = \"Complete captcha challenge\";\r\n } else {\r\n this.error = \"\";\r\n }\r\n },\r\n //addOrganisation() {\r\n // this.form.organisationQA = this.otherOrganisationQA;\r\n // this.otherOrganisationQA = \"\";\r\n // this.showDropdownList = true\r\n //},\r\n organisationChanged() {\r\n this.form.organisationIdQA = '';\r\n this.form.otherOrganisationQA = '';\r\n },\r\n addFile(fileName) {\r\n this.form.filesQA.push(fileName)\r\n },\r\n removeFileByNameGuid(nameGuid) {\r\n if (this.form.filesQA && this.form.filesQA.length) {\r\n for (var i = 0; i < this.form.filesQA.length; i++) {\r\n if (this.form.filesQA[i].nameGuid === nameGuid) {\r\n this.form.filesQA.splice(i, 1);\r\n break;\r\n }\r\n }\r\n }\r\n },\r\n sendForm() {\r\n const self = this;\r\n let g_recaptcha_response = grecaptcha.getResponse();\r\n\r\n this.loading = true;\r\n var dataUrl = \"/umbraco/api/ContactApi/FormSubmit\";\r\n this.$v.form.$touch()\r\n if (this.$v.form.$invalid || g_recaptcha_response.length == 0) {\r\n this.submitStatus = 'ERROR'\r\n this.recaptchaCallback();\r\n this.loading = false;\r\n $([document.documentElement, document.body]).animate({\r\n scrollTop: $(\"form\").offset().top - 100\r\n }, 2000)\r\n } else {\r\n this.error = \"\";\r\n this.loading = true;\r\n axios.post(dataUrl,\r\n {\r\n IsGasConsumerQuery: self.isGasConsumerQuery.toString(),\r\n QueryType: self.queryType,\r\n FirstName: self.form.firstNameQA,\r\n Surname: self.form.surnameQA,\r\n Email: self.form.emailQA,\r\n Phone: self.form.phoneQA,\r\n OrganisationId: self.form.organisationIdQA,\r\n OrganisationOther: self.form.otherOrganisationQA,\r\n Mprn: self.form.mprnQA,\r\n Description: self.form.descQA,\r\n Files: self.form.filesQA,\r\n CmsVersion: self.form.cmsVersionQA,\r\n CaptchaVerification: g_recaptcha_response\r\n },\r\n {\r\n headers: {\r\n 'Content-Type': 'application/json; charset=utf-8'\r\n }\r\n })\r\n .then(response => {\r\n this.info = response.data\r\n this.loading = false;\r\n logGAEvent(\"Help & Support\", \"Form Submit Success\", document.location.href);\r\n $([document.documentElement, document.body]).animate({\r\n scrollTop: $(\"form\").offset().top - 100\r\n }, 2000)\r\n })\r\n .catch(error => {\r\n if (error.response.data) {\r\n if (error.response.data.ResponseCode) {\r\n this.info = error.response.data\r\n }\r\n else {\r\n if (error.response.data.constructor === Array) {\r\n for (var i = 0; i < error.response.data.length; i++) {\r\n this.serverSideErrors.push(error.response.data[i]);\r\n }\r\n }\r\n else {\r\n this.serverSideErrors.push(error.response.data);\r\n }\r\n $([document.documentElement, document.body]).animate({\r\n scrollTop: $(\"form\").offset().top - 100\r\n }, 2000)\r\n }\r\n }\r\n this.loading = false;\r\n });\r\n }\r\n },\r\n getOrganisations() {\r\n axios\r\n .get('/umbraco/api/ContactApi/GetOrganisationList?gasSupplierList=' + this.isGasConsumerQuery.toString())\r\n .then(response => (this.organisationsQAList = response.data))\r\n },\r\n matchWords: function (subject, words) {\r\n return words.every(el => subject.toLowerCase().includes(el.toLowerCase()));\r\n },\r\n back() {\r\n location.reload();\r\n },\r\n selectOrganisation(item) {\r\n this.form.organisationQA = item.combinedTitle,\r\n this.form.organisationIdQA = item.id,\r\n this.showDropdownList = false \r\n } \r\n },\r\n mounted() {\r\n this.getOrganisations();\r\n },\r\n computed: {\r\n showResponseMsg() {\r\n return this.info == null || this.info == undefined\r\n },\r\n showDropdown() {\r\n if (this.filteredItems && this.filteredItems.length && this.filteredItems != 'undefined' && this.showDropdownList) {\r\n return true;\r\n } else { return false }\r\n },\r\n\r\n filteredItems() {\r\n const rg = this.form.organisationQA.split(/(\\s+)/).filter(e => e.trim().length > 0)\r\n //if (this.form.organisationQA) {\r\n // return this.organisationsQAList.filter(i => this.matchWords(i.combinedTitle, rg))\r\n //}\r\n const other = this.allowNotListedOrganisation ? [{ \"id\": -1, \"shortCode\": \"OTHER\", \"name\": \"Organisation not listed?\", \"combinedTitle\": \"Organisation not listed?\", \"gasSupplier\": false }] : []\r\n if (this.form.organisationQA) {\r\n let fullMatchHandler = this.organisationsQAList.filter(i => i.combinedTitle === this.form.organisationQA)\r\n if (fullMatchHandler.length === 1) {\r\n return this.organisationsQAList.filter(i => i.combinedTitle === this.form.organisationQA)\r\n } else { \r\n return other.concat(this.organisationsQAList.filter(i => this.matchWords(i.combinedTitle, rg))) \r\n }\r\n }\r\n }\r\n },\r\n watch: {\r\n loading() {\r\n if (this.loading) {\r\n $('.loader').css(\"display\", \"block\")\r\n } else {\r\n $('.loader').css(\"display\", \"none\")\r\n }\r\n }\r\n }\r\n })\r\n}\r\nvar uploadFilesSum = 0;\r\nvar upload = $(\"#filesQA\").data(\"kendoUpload\");\r\n\r\n$(\"#filesQA\").kendoUpload({\r\n async: {\r\n saveUrl: \"/umbraco/api/ContactApi/SupportingDocumentationUpload\",\r\n removeUrl: \"/umbraco/api/ContactApi/SupportingDocumentationUploadRemove\"\r\n },\r\n localization: {\r\n invalidFileExtension: '
File upload error. File type not permitted.
Additional files can be submitted later by replying to your confirmation email.
',\r\n invalidMaxFileSize: '
File upload error. 10MB limit exceeded.
Additional files can be submitted later by replying to your confirmation email.
',\r\n filesSumSizeLimit: '
File upload error. 10MB limit exceeded.
Additional files can be submitted later by replying to your confirmation email.
',\r\n dropFilesHere: \"Drag and drop files here or \",\r\n select: \"Browse\"\r\n },\r\n select: onSelect,\r\n success: onSuccess,\r\n remove: onRemove,\r\n validation: {\r\n allowedExtensions: allowedExtensions,\r\n maxFileSize: fileSizeLimit\r\n },\r\n error: onError\r\n});\r\n\r\nfunction onSelect(e) {\r\n\r\n console.log(e);\r\n $.each(e.files, function (index, value) {\r\n if (uploadFilesSum > fileSizeLimit || value.size > fileSizeLimit || (uploadFilesSum + value.size) > fileSizeLimit || $('.k-file[data-uid]').length > limitOfFileNumber - 1 || ($('.k-file[data-uid]').length + index) > limitOfFileNumber - 1) {\r\n var files = e.files;\r\n files[index].validationErrors = [\"filesSumSizeLimit\"];\r\n var uid = files[index].uid;\r\n var entry = $(\".k-file[data-uid='\" + uid + \"']\");\r\n if (entry.length > 0) {\r\n entry.remove();\r\n }\r\n } else {\r\n if (!e.files[0].validationErrors) {\r\n uploadFilesSum += value.size;\r\n }\r\n }\r\n });\r\n};\r\nfunction onError(e) {\r\n var files = e.files;\r\n for (var i = 0; i < files.length; i++) {\r\n var uid = files[i].uid;\r\n var entry = $(\".k-file[data-uid='\" + uid + \"']\");\r\n if (entry.length > 0) {\r\n entry.remove();\r\n }\r\n }\r\n}\r\nfunction getFileInfo(e) {\r\n var files = e.files;\r\n for (var i = 0; i < files.length; i++) {\r\n return files[i].size\r\n }\r\n}\r\n\r\nfunction onSuccess(e) {\r\n if (e.operation !== 'remove') {\r\n var file = e.files[0]\r\n file.nameGuid = e.response;\r\n vmFormQA.addFile(file);\r\n }\r\n};\r\n\r\nfunction onRemove(e) {\r\n vmFormQA.removeFileByNameGuid(e.files[0].nameGuid)\r\n\r\n if ((uploadFilesSum >= getFileInfo(e) && !e.files[0].validationErrors)) {\r\n uploadFilesSum -= getFileInfo(e);\r\n }\r\n e.data = {\r\n nameGuid: e.files[0].nameGuid\r\n }\r\n};"]}