{"version":3,"sources":["webpack:///./src/views/configuration/components/advertisement.vue?064a","webpack:///./src/views/configuration/components/advertisement.vue?5b97","webpack:///src/views/configuration/components/advertisement.vue","webpack:///./src/views/configuration/components/advertisement.vue?5716","webpack:///./src/views/configuration/components/advertisement.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","on","$event","preventDefault","onSubmit","_m","staticClass","directives","name","rawName","value","advertisement","expression","class","errors","has","attrs","domProps","target","composing","$set","_v","required","url","require_protocol","_s","first","isEdit","_e","uploadFile","ref","maxAllowedAdvertisements","_l","group","index","key","id","isCategoryUnavailable","Array","isArray","advertisementGroups","_i","$$a","$$el","$$c","checked","$$v","$$i","concat","slice","getAdvertismentGroups","length","zone","zones","isSaving","closeModal","staticRenderFns","data","initialGroups","computed","mounted","$validator","reset","fetchZones","methods","includes","adCount","$refs","uploadLabel","innerHTML","filename","image","e","files","$bvModal","hide","component"],"mappings":"kHAAA,W,2CCAA,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,OAAO,CAACE,GAAG,CAAC,OAAS,SAASC,GAAgC,OAAxBA,EAAOC,iBAAwBR,EAAIS,SAASF,MAAW,CAACP,EAAIU,GAAG,GAAGN,EAAG,MAAM,CAACO,YAAY,cAAc,CAACP,EAAG,MAAM,CAACO,YAAY,cAAc,CAACX,EAAIU,GAAG,GAAGN,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAAkB,KAAEC,WAAW,sBAAsB,CAACJ,KAAK,WAAWC,QAAQ,aAAaC,MAAM,WAAaE,WAAW,eAAeN,YAAY,eAAeO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,SAAUC,MAAM,CAAC,GAAK,OAAO,KAAO,OAAO,KAAO,OAAO,aAAe,MAAM,YAAc,aAAa,aAAa,cAAcC,SAAS,CAAC,MAAStB,EAAIgB,cAAkB,MAAGV,GAAG,CAAC,MAAQ,SAASC,GAAWA,EAAOgB,OAAOC,WAAqBxB,EAAIyB,KAAKzB,EAAIgB,cAAe,OAAQT,EAAOgB,OAAOR,WAAWX,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG,yCAAyCtB,EAAG,MAAM,CAACO,YAAY,cAAc,CAACX,EAAIU,GAAG,GAAGN,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAAwB,WAAEC,WAAW,4BAA4B,CAACJ,KAAK,WAAWC,QAAQ,aAAaC,MAAM,WAAaE,WAAW,eAAeN,YAAY,eAAeO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,eAAgBC,MAAM,CAAC,GAAK,aAAa,KAAO,aAAa,KAAO,OAAO,aAAe,MAAM,YAAc,iBAAiB,aAAa,kBAAkBC,SAAS,CAAC,MAAStB,EAAIgB,cAAwB,YAAGV,GAAG,CAAC,MAAQ,SAASC,GAAWA,EAAOgB,OAAOC,WAAqBxB,EAAIyB,KAAKzB,EAAIgB,cAAe,aAAcT,EAAOgB,OAAOR,WAAWX,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG,6CAA6CtB,EAAG,MAAM,CAACO,YAAY,cAAc,CAACX,EAAIU,GAAG,GAAGN,EAAG,QAAQ,CAACO,YAAY,iCAAiCU,MAAM,CAAC,GAAK,sBAAsB,CAACrB,EAAI0B,GAAG,iGAAiGtB,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAAuB,UAAEC,WAAW,2BAA2B,CAACJ,KAAK,WAAWC,QAAQ,aAAaC,MAAM,CAAGY,UAAU,EAAMC,IAAK,CAAEC,kBAAkB,IAASZ,WAAW,uDAAuDN,YAAY,eAAeO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,cAAeC,MAAM,CAAC,GAAK,YAAY,KAAO,YAAY,KAAO,OAAO,aAAe,MAAM,YAAc,WAAW,aAAa,YAAYC,SAAS,CAAC,MAAStB,EAAIgB,cAAuB,WAAGV,GAAG,CAAC,MAAQ,SAASC,GAAWA,EAAOgB,OAAOC,WAAqBxB,EAAIyB,KAAKzB,EAAIgB,cAAe,YAAaT,EAAOgB,OAAOR,WAAWX,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG1B,EAAI8B,GAAG9B,EAAImB,OAAOY,MAAM,mBAAmB3B,EAAG,MAAM,CAACO,YAAY,cAAc,CAACX,EAAIU,GAAG,GAAGN,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAA2B,cAAEC,WAAW,+BAA+B,CAACJ,KAAK,WAAWC,QAAQ,aAAaC,MAAM,WAAaE,WAAW,eAAeN,YAAY,eAAeO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,kBAAmBC,MAAM,CAAC,GAAK,gBAAgB,KAAO,gBAAgB,KAAO,OAAO,aAAe,MAAM,YAAc,kBAAkB,aAAa,mBAAmBC,SAAS,CAAC,MAAStB,EAAIgB,cAA2B,eAAGV,GAAG,CAAC,MAAQ,SAASC,GAAWA,EAAOgB,OAAOC,WAAqBxB,EAAIyB,KAAKzB,EAAIgB,cAAe,gBAAiBT,EAAOgB,OAAOR,WAAWX,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG,8CAAgD1B,EAAIgC,OAA6vBhC,EAAIiC,KAAzvB7B,EAAG,MAAM,CAACO,YAAY,cAAc,CAACP,EAAG,QAAQ,CAACiB,MAAM,CAAC,IAAM,4BAA4B,CAACrB,EAAI0B,GAAG,iBAAiBtB,EAAG,MAAM,CAACO,YAAY,eAAe,CAACP,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,WAAWC,QAAQ,aAAaC,MAAM,WAAaE,WAAW,eAAeN,YAAY,oBAAoBO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,wBAAyBC,MAAM,CAAC,KAAO,OAAO,GAAK,sBAAsB,KAAO,sBAAsB,OAAS,WAAWf,GAAG,CAAC,OAASN,EAAIkC,cAAc9B,EAAG,QAAQ,CAACO,YAAY,oBAAoBU,MAAM,CAAC,IAAM,wBAAwB,CAACjB,EAAG,OAAO,CAAC+B,IAAI,cAAcxB,YAAY,0BAA0B,CAACX,EAAI0B,GAAG,sBAAsBtB,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG,8CAAuDtB,EAAG,MAAM,CAACO,YAAY,cAAc,CAACP,EAAG,QAAQ,CAACO,YAAY,QAAQ,CAACX,EAAI0B,GAAG,oBAAoBtB,EAAG,QAAQ,CAACO,YAAY,kCAAkC,CAACX,EAAI0B,GAAG,iFAAiF1B,EAAI8B,GAAG9B,EAAIoC,0BAA0B,SAAShC,EAAG,MAAM,CAACiB,MAAM,CAAC,GAAK,mBAAmBrB,EAAIqC,GAAIrC,EAAyB,uBAAE,SAASsC,EAAMC,GAAO,OAAOnC,EAAG,MAAM,CAACoC,IAAIF,EAAMG,GAAG9B,YAAY,kCAAkC,CAACP,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAAiC,oBAAEC,WAAW,qCAAqC,CAACJ,KAAK,WAAWC,QAAQ,aAAaC,MAAM,WAAaE,WAAW,eAAeN,YAAY,uBAAuBO,MAAM,CAAE,aAAclB,EAAImB,OAAOC,IAAI,YAAaC,MAAM,CAAC,GAAK,WAAakB,EAAM,KAAO,UAAU,KAAO,WAAW,SAAWvC,EAAI0C,sBAAsBJ,GAAO,SAAWtC,EAAI0C,sBAAsBJ,IAAQhB,SAAS,CAAC,MAAQgB,EAAMG,GAAG,QAAUE,MAAMC,QAAQ5C,EAAIgB,cAAc6B,qBAAqB7C,EAAI8C,GAAG9C,EAAIgB,cAAc6B,oBAAoBP,EAAMG,KAAK,EAAGzC,EAAIgB,cAAiC,qBAAGV,GAAG,CAAC,OAAS,SAASC,GAAQ,IAAIwC,EAAI/C,EAAIgB,cAAc6B,oBAAoBG,EAAKzC,EAAOgB,OAAO0B,IAAID,EAAKE,QAAuB,GAAGP,MAAMC,QAAQG,GAAK,CAAC,IAAII,EAAIb,EAAMG,GAAGW,EAAIpD,EAAI8C,GAAGC,EAAII,GAAQH,EAAKE,QAASE,EAAI,GAAIpD,EAAIyB,KAAKzB,EAAIgB,cAAe,sBAAuB+B,EAAIM,OAAO,CAACF,KAAaC,GAAK,GAAIpD,EAAIyB,KAAKzB,EAAIgB,cAAe,sBAAuB+B,EAAIO,MAAM,EAAEF,GAAKC,OAAON,EAAIO,MAAMF,EAAI,UAAYpD,EAAIyB,KAAKzB,EAAIgB,cAAe,sBAAuBiC,OAAU7C,EAAG,QAAQ,CAACO,YAAY,uBAAuBU,MAAM,CAAC,IAAM,WAAakB,IAAQ,CAACvC,EAAI0B,GAAG1B,EAAI8B,GAAGQ,EAAMzB,SAAU0B,IAAUvC,EAAIuD,sBAAsBC,OAAS,EAAGpD,EAAG,MAAM,CAACO,YAAY,oBAAoB,CAACX,EAAI0B,GAAG,qDAAqD1B,EAAIiC,UAAS,KAAK7B,EAAG,MAAM,CAACO,YAAY,cAAc,CAACX,EAAIU,GAAG,GAAGN,EAAG,QAAQ,CAACO,YAAY,kCAAkC,CAACX,EAAI0B,GAAG,oEAAoEtB,EAAG,MAAM,CAACiB,MAAM,CAAC,GAAK,mBAAmBrB,EAAIqC,GAAIrC,EAAY,UAAE,SAASyD,EAAKlB,GAAO,OAAOnC,EAAG,MAAM,CAACoC,IAAIiB,EAAKhB,GAAG9B,YAAY,kCAAkC,CAACP,EAAG,QAAQ,CAACQ,WAAW,CAAC,CAACC,KAAK,QAAQC,QAAQ,UAAUC,MAAOf,EAAIgB,cAAmB,MAAEC,WAAW,wBAAwBN,YAAY,uBAAuBU,MAAM,CAAC,GAAK,QAAUkB,EAAM,KAAO,OAAO,KAAO,YAAYjB,SAAS,CAAC,MAAQmC,EAAKhB,GAAG,QAAUE,MAAMC,QAAQ5C,EAAIgB,cAAc0C,OAAO1D,EAAI8C,GAAG9C,EAAIgB,cAAc0C,MAAMD,EAAKhB,KAAK,EAAGzC,EAAIgB,cAAmB,OAAGV,GAAG,CAAC,OAAS,SAASC,GAAQ,IAAIwC,EAAI/C,EAAIgB,cAAc0C,MAAMV,EAAKzC,EAAOgB,OAAO0B,IAAID,EAAKE,QAAuB,GAAGP,MAAMC,QAAQG,GAAK,CAAC,IAAII,EAAIM,EAAKhB,GAAGW,EAAIpD,EAAI8C,GAAGC,EAAII,GAAQH,EAAKE,QAASE,EAAI,GAAIpD,EAAIyB,KAAKzB,EAAIgB,cAAe,QAAS+B,EAAIM,OAAO,CAACF,KAAaC,GAAK,GAAIpD,EAAIyB,KAAKzB,EAAIgB,cAAe,QAAS+B,EAAIO,MAAM,EAAEF,GAAKC,OAAON,EAAIO,MAAMF,EAAI,UAAYpD,EAAIyB,KAAKzB,EAAIgB,cAAe,QAASiC,OAAU7C,EAAG,QAAQ,CAACO,YAAY,uBAAuBU,MAAM,CAAC,IAAM,QAAUkB,IAAQ,CAACvC,EAAI0B,GAAG1B,EAAI8B,GAAG2B,EAAK5C,cAAa,OAAOT,EAAG,MAAM,CAACO,YAAY,gBAAgB,CAACP,EAAG,SAAS,CAACO,YAAY,+BAA+BO,MAAM,CAAE,QAAYlB,EAAI2D,UAAWtC,MAAM,CAAC,KAAO,SAAS,SAAWrB,EAAI2D,WAAW,CAAE3D,EAAY,SAAEI,EAAG,OAAO,CAACJ,EAAI0B,GAAG,eAAetB,EAAG,OAAO,CAACJ,EAAI0B,GAAG,UAAUtB,EAAG,MAAM,CAACO,YAAY,yBAAyBP,EAAG,SAAS,CAACO,YAAY,oBAAoBU,MAAM,CAAC,KAAO,UAAUf,GAAG,CAAC,MAAQN,EAAI4D,aAAa,CAAC5D,EAAI0B,GAAG,gBAClnPmC,EAAkB,CAAC,WAAa,IAAI7D,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACO,YAAY,gBAAgB,CAACP,EAAG,KAAK,CAACO,YAAY,eAAe,CAACX,EAAI0B,GAAG,6BAA6B,WAAa,IAAI1B,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACiB,MAAM,CAAC,IAAM,SAAS,CAACrB,EAAI0B,GAAG,eAAetB,EAAG,OAAO,CAACO,YAAY,oBAAoB,WAAa,IAAIX,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACiB,MAAM,CAAC,IAAM,eAAe,CAACrB,EAAI0B,GAAG,mBAAmBtB,EAAG,OAAO,CAACO,YAAY,oBAAoB,WAAa,IAAIX,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACO,YAAY,OAAOU,MAAM,CAAC,IAAM,cAAc,CAACrB,EAAI0B,GAAG,aAAatB,EAAG,OAAO,CAACO,YAAY,oBAAoB,WAAa,IAAIX,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACiB,MAAM,CAAC,IAAM,kBAAkB,CAACrB,EAAI0B,GAAG,oBAAoBtB,EAAG,OAAO,CAACO,YAAY,oBAAoB,WAAa,IAAIX,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,QAAQ,CAACO,YAAY,QAAQ,CAACX,EAAI0B,GAAG,kBAAkBtB,EAAG,OAAO,CAACO,YAAY,qB,giCCuGxoC,OACEE,KAAM,gBACNiD,KAAM,WACJ,MAAO,CACLC,cAAe,GACf/B,QAAQ,EACR2B,UAAU,EACVvB,yBAA0B,GAC1BpB,cAAe,CACb6B,oBAAqB,GACrBa,MAAO,MAIbM,SAAU,EAAZ,GACA,wEAEEC,QAAS,WACPhE,KAAKe,cAAgB,EAAzB,yBACIf,KAAK8D,cAAgB9D,KAAKe,cAAc6B,oBACxC5C,KAAK+B,SAAW/B,KAAKe,cAAcyB,GACnCxC,KAAKiE,WAAWC,QAChBlE,KAAKmE,cAEPC,QAAS,EAAX,CACI3B,sBADJ,SACA,GACM,OAAIzC,KAAK8D,cAAcO,SAAShC,EAAMG,KAG/BH,EAAMiC,SAAWtE,KAAKmC,0BAE/BF,WAPJ,SAOA,GACM,IAAN,6BACA,gBACMjC,KAAKuE,MAAMC,YAAYC,UAAYC,EACnC1E,KAAKe,cAAc4D,MAAQC,EAAEtD,OAAOuD,MAAM,IAE5C,SAbJ,WAaA,mIACA,wBADA,UACA,EADA,OAGA,EAHA,iDAOA,cAEA,4DACA,iBACA,cACA,wCACA,kBAEA,kBACA,cACA,gDAjBA,8CAoBIlB,WAjCJ,WAkCM3D,KAAK8E,SAASC,KAAK,4BAEzB,qDCpKqX,I,wBCQjXC,EAAY,eACd,EACAlF,EACA8D,GACA,EACA,KACA,WACA,MAIa,aAAAoB,E","file":"js/chunk-63d921cb.c4e3d854.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./advertisement.vue?vue&type=style&index=0&id=2e8cdc09&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.onSubmit($event)}}},[_vm._m(0),_c('div',{staticClass:\"modal-body\"},[_c('div',{staticClass:\"form-group\"},[_vm._m(1),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.name),expression:\"advertisement.name\"},{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],staticClass:\"form-control\",class:{ 'is-invalid': _vm.errors.has('name') },attrs:{\"id\":\"name\",\"name\":\"name\",\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":\"Image Name\",\"data-vv-as\":\"Image Name\"},domProps:{\"value\":(_vm.advertisement.name)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.advertisement, \"name\", $event.target.value)}}}),_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(\"The Image Name field is required.\")])]),_c('div',{staticClass:\"form-group\"},[_vm._m(2),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.imgAltText),expression:\"advertisement.imgAltText\"},{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],staticClass:\"form-control\",class:{ 'is-invalid': _vm.errors.has('imgAltText') },attrs:{\"id\":\"imgAltText\",\"name\":\"imgAltText\",\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":\"Image Alt Text\",\"data-vv-as\":\"Image Alt Text\"},domProps:{\"value\":(_vm.advertisement.imgAltText)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.advertisement, \"imgAltText\", $event.target.value)}}}),_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(\"The Image Alt Text field is required.\")])]),_c('div',{staticClass:\"form-group\"},[_vm._m(3),_c('small',{staticClass:\"form-text text-muted mt-0 mb-1\",attrs:{\"id\":\"passwordHelpBlock\"}},[_vm._v(\" The provided URL requires a protocol (i.e. http or https) at the beginning of the address \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.linkToUrl),expression:\"advertisement.linkToUrl\"},{name:\"validate\",rawName:\"v-validate\",value:({ required: true, url: { require_protocol: true }}),expression:\"{ required: true, url: { require_protocol: true }}\"}],staticClass:\"form-control\",class:{ 'is-invalid': _vm.errors.has('linkToUrl') },attrs:{\"id\":\"linkToUrl\",\"name\":\"linkToUrl\",\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":\"Link Url\",\"data-vv-as\":\"Link Url\"},domProps:{\"value\":(_vm.advertisement.linkToUrl)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.advertisement, \"linkToUrl\", $event.target.value)}}}),_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(_vm._s(_vm.errors.first('linkToUrl')))])]),_c('div',{staticClass:\"form-group\"},[_vm._m(4),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.linkTitleText),expression:\"advertisement.linkTitleText\"},{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],staticClass:\"form-control\",class:{ 'is-invalid': _vm.errors.has('linkTitleText') },attrs:{\"id\":\"linkTitleText\",\"name\":\"linkTitleText\",\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":\"Link Title Text\",\"data-vv-as\":\"Link Title Text\"},domProps:{\"value\":(_vm.advertisement.linkTitleText)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.advertisement, \"linkTitleText\", $event.target.value)}}}),_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(\"The Link Title Text field is required.\")])]),(!_vm.isEdit)?_c('div',{staticClass:\"form-group\"},[_c('label',{attrs:{\"for\":\"exampleFormControlFile1\"}},[_vm._v(\"Upload File\")]),_c('div',{staticClass:\"custom-file\"},[_c('input',{directives:[{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],staticClass:\"custom-file-input\",class:{ 'is-invalid': _vm.errors.has('validatedCustomFile') },attrs:{\"type\":\"file\",\"id\":\"validatedCustomFile\",\"name\":\"validatedCustomFile\",\"accept\":\"image/*\"},on:{\"change\":_vm.uploadFile}}),_c('label',{staticClass:\"custom-file-label\",attrs:{\"for\":\"validatedCustomFile\"}},[_c('span',{ref:\"uploadLabel\",staticClass:\"custom-file-label-text\"},[_vm._v(\"Choose file...\")])]),_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(\"Example invalid custom file feedback\")])])]):_vm._e(),_c('div',{staticClass:\"form-group\"},[_c('label',{staticClass:\"mb-0\"},[_vm._v(\"Apply To Group\")]),_c('small',{staticClass:\"form-text text-muted mt-0 mb-1\"},[_vm._v(\" Disabled options indicate that the advertisement group has reached capacity (\"+_vm._s(_vm.maxAllowedAdvertisements)+\"). \")]),_c('div',{attrs:{\"id\":\"shareWithZones\"}},_vm._l((_vm.getAdvertismentGroups),function(group,index){return _c('div',{key:group.id,staticClass:\"custom-control custom-checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.advertisementGroups),expression:\"advertisement.advertisementGroups\"},{name:\"validate\",rawName:\"v-validate\",value:('required'),expression:\"'required'\"}],staticClass:\"custom-control-input\",class:{ 'is-invalid': _vm.errors.has('adGroup') },attrs:{\"id\":'adGroup-' + index,\"name\":\"adGroup\",\"type\":\"checkbox\",\"readonly\":_vm.isCategoryUnavailable(group),\"disabled\":_vm.isCategoryUnavailable(group)},domProps:{\"value\":group.id,\"checked\":Array.isArray(_vm.advertisement.advertisementGroups)?_vm._i(_vm.advertisement.advertisementGroups,group.id)>-1:(_vm.advertisement.advertisementGroups)},on:{\"change\":function($event){var $$a=_vm.advertisement.advertisementGroups,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=group.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.advertisement, \"advertisementGroups\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.advertisement, \"advertisementGroups\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.advertisement, \"advertisementGroups\", $$c)}}}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":'adGroup-' + index}},[_vm._v(_vm._s(group.name))]),(index === _vm.getAdvertismentGroups.length - 1)?_c('div',{staticClass:\"invalid-feedback\"},[_vm._v(\"Please select at least one advertisement group.\")]):_vm._e()])}),0)]),_c('div',{staticClass:\"form-group\"},[_vm._m(5),_c('small',{staticClass:\"form-text text-muted mt-0 mb-1\"},[_vm._v(\" When no zones are selected, it is assumed available for all. \")]),_c('div',{attrs:{\"id\":\"shareWithZones\"}},_vm._l((_vm.getZones),function(zone,index){return _c('div',{key:zone.id,staticClass:\"custom-control custom-checkbox\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.advertisement.zones),expression:\"advertisement.zones\"}],staticClass:\"custom-control-input\",attrs:{\"id\":'zone-' + index,\"name\":\"zone\",\"type\":\"checkbox\"},domProps:{\"value\":zone.id,\"checked\":Array.isArray(_vm.advertisement.zones)?_vm._i(_vm.advertisement.zones,zone.id)>-1:(_vm.advertisement.zones)},on:{\"change\":function($event){var $$a=_vm.advertisement.zones,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=zone.id,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(_vm.advertisement, \"zones\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.advertisement, \"zones\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.advertisement, \"zones\", $$c)}}}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":'zone-' + index}},[_vm._v(_vm._s(zone.name))])])}),0)])]),_c('div',{staticClass:\"modal-footer\"},[_c('button',{staticClass:\"btn btn-success ld-ext-right\",class:{ 'running' : _vm.isSaving },attrs:{\"type\":\"submit\",\"disabled\":_vm.isSaving}},[(_vm.isSaving)?_c('span',[_vm._v(\"Saving...\")]):_c('span',[_vm._v(\"Save\")]),_c('div',{staticClass:\"ld ld-ring ld-spin\"})]),_c('button',{staticClass:\"btn btn-secondary\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.closeModal}},[_vm._v(\"Close\")])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"modal-header\"},[_c('h4',{staticClass:\"modal-title\"},[_vm._v(\"Manage Advertisement\")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{attrs:{\"for\":\"name\"}},[_vm._v(\"Image Name \"),_c('span',{staticClass:\"red-dot ml-3\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{attrs:{\"for\":\"imgAltText\"}},[_vm._v(\"Image Alt Text \"),_c('span',{staticClass:\"red-dot ml-3\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"mb-0\",attrs:{\"for\":\"linkToUrl\"}},[_vm._v(\"Link Url \"),_c('span',{staticClass:\"red-dot ml-3\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{attrs:{\"for\":\"linkTitleText\"}},[_vm._v(\"Link Title Text \"),_c('span',{staticClass:\"red-dot ml-3\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"mb-0\"},[_vm._v(\"Apply To Zone \"),_c('span',{staticClass:\"red-dot ml-3\"})])}]\n\nexport { render, staticRenderFns }","<template>\r\n  <form v-on:submit.prevent=\"onSubmit\">\r\n    <div class=\"modal-header\">\r\n      <h4 class=\"modal-title\">Manage Advertisement</h4>\r\n    </div>\r\n\r\n    <div class=\"modal-body\">\r\n      <div class=\"form-group\">\r\n        <label for=\"name\">Image Name <span class=\"red-dot ml-3\"></span></label>\r\n        <input id=\"name\" name=\"name\" type=\"text\" class=\"form-control\" :class=\"{ 'is-invalid': errors.has('name') }\"\r\n          autocomplete=\"off\" placeholder=\"Image Name\" v-model=\"advertisement.name\" v-validate=\"'required'\" data-vv-as=\"Image Name\" />\r\n        <div class=\"invalid-feedback\">The Image Name field is required.</div>\r\n      </div>\r\n\r\n      <div class=\"form-group\">\r\n        <label for=\"imgAltText\">Image Alt Text <span class=\"red-dot ml-3\"></span></label>\r\n        <input id=\"imgAltText\" name=\"imgAltText\" type=\"text\" class=\"form-control\" :class=\"{ 'is-invalid': errors.has('imgAltText') }\"\r\n          autocomplete=\"off\" placeholder=\"Image Alt Text\" v-model=\"advertisement.imgAltText\" v-validate=\"'required'\" data-vv-as=\"Image Alt Text\" />\r\n        <div class=\"invalid-feedback\">The Image Alt Text field is required.</div>\r\n      </div>\r\n\r\n      <div class=\"form-group\">\r\n        <label for=\"linkToUrl\" class=\"mb-0\">Link Url <span class=\"red-dot ml-3\"></span></label>\r\n        <small id=\"passwordHelpBlock\" class=\"form-text text-muted mt-0 mb-1\">\r\n          The provided URL requires a protocol (i.e. http or https) at the beginning of the address\r\n        </small>\r\n        <input id=\"linkToUrl\" name=\"linkToUrl\" type=\"text\" class=\"form-control\" :class=\"{ 'is-invalid': errors.has('linkToUrl') }\"\r\n          autocomplete=\"off\" placeholder=\"Link Url\" v-model=\"advertisement.linkToUrl\" v-validate=\"{ required: true, url: { require_protocol: true }}\" data-vv-as=\"Link Url\" />\r\n        <div class=\"invalid-feedback\">{{ errors.first('linkToUrl') }}</div>\r\n      </div>\r\n\r\n      <div class=\"form-group\">\r\n        <label for=\"linkTitleText\">Link Title Text <span class=\"red-dot ml-3\"></span></label>\r\n        <input id=\"linkTitleText\" name=\"linkTitleText\" type=\"text\" class=\"form-control\" :class=\"{ 'is-invalid': errors.has('linkTitleText') }\"\r\n          autocomplete=\"off\" placeholder=\"Link Title Text\" v-model=\"advertisement.linkTitleText\" v-validate=\"'required'\" data-vv-as=\"Link Title Text\" />\r\n        <div class=\"invalid-feedback\">The Link Title Text field is required.</div>\r\n      </div>\r\n\r\n      <div class=\"form-group\" v-if=\"!isEdit\">\r\n        <label for=\"exampleFormControlFile1\">Upload File</label>\r\n        <div class=\"custom-file\">\r\n          <input type=\"file\" id=\"validatedCustomFile\" name=\"validatedCustomFile\" class=\"custom-file-input\" :class=\"{ 'is-invalid': errors.has('validatedCustomFile') }\"\r\n            accept=\"image/*\" v-validate=\"'required'\" @change=\"uploadFile\">\r\n          <label class=\"custom-file-label\" for=\"validatedCustomFile\">\r\n            <span class=\"custom-file-label-text\" ref=\"uploadLabel\">Choose file...</span>\r\n          </label>\r\n          <div class=\"invalid-feedback\">Example invalid custom file feedback</div>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"form-group\">\r\n        <label class=\"mb-0\">Apply To Group</label>\r\n        <small class=\"form-text text-muted mt-0 mb-1\">\r\n          Disabled options indicate that the advertisement group has reached capacity ({{ maxAllowedAdvertisements }}).\r\n        </small>\r\n        <div id=\"shareWithZones\">\r\n          <div v-for=\"(group, index) in getAdvertismentGroups\" :key=\"group.id\" class=\"custom-control custom-checkbox\">\r\n            <input :id=\"'adGroup-' + index\" name=\"adGroup\" type=\"checkbox\" class=\"custom-control-input\" :class=\"{ 'is-invalid': errors.has('adGroup') }\"\r\n              :value=\"group.id\" :readonly=\"isCategoryUnavailable(group)\" :disabled=\"isCategoryUnavailable(group)\" v-model=\"advertisement.advertisementGroups\" v-validate=\"'required'\">\r\n            <label class=\"custom-control-label\" :for=\"'adGroup-' + index\">{{ group.name }}</label>\r\n            <div class=\"invalid-feedback\" v-if=\"index === getAdvertismentGroups.length - 1\">Please select at least one advertisement group.</div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"form-group\">\r\n        <label class=\"mb-0\">Apply To Zone <span class=\"red-dot ml-3\"></span></label>\r\n        <small class=\"form-text text-muted mt-0 mb-1\">\r\n          When no zones are selected, it is assumed available for all.\r\n        </small>\r\n        <div id=\"shareWithZones\">\r\n          <div v-for=\"(zone, index) in getZones\" :key=\"zone.id\" class=\"custom-control custom-checkbox\">\r\n            <input :id=\"'zone-' + index\" name=\"zone\" type=\"checkbox\" class=\"custom-control-input\" :value=\"zone.id\" v-model=\"advertisement.zones\">\r\n            <label class=\"custom-control-label\" :for=\"'zone-' + index\">{{ zone.name }}</label>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"modal-footer\">\r\n      <button type=\"submit\" class=\"btn btn-success ld-ext-right\" :class=\"{ 'running' : isSaving }\" :disabled=\"isSaving\">\r\n        <span v-if=\"isSaving\">Saving...</span>\r\n        <span v-else>Save</span>\r\n        <div class=\"ld ld-ring ld-spin\"></div>\r\n      </button>\r\n      <button type=\"button\" class=\"btn btn-secondary\" @click=\"closeModal\">Close</button>\r\n    </div>\r\n  </form>\r\n</template>\r\n\r\n<style scoped>\r\n.custom-file-label-text {\r\n  display: block;\r\n  margin-right: 82px;\r\n  overflow: hidden;\r\n  text-overflow: ellipsis;\r\n  white-space: nowrap;\r\n}\r\n</style>\r\n\r\n<script>\r\nimport { mapGetters, mapActions } from \"vuex\";\r\nimport Toast from \"@/utils/toast\";\r\n\r\nexport default {\r\n  name: 'advertisement',\r\n  data: function () {\r\n    return {\r\n      initialGroups: [],\r\n      isEdit: false,\r\n      isSaving: false,\r\n      maxAllowedAdvertisements: 20,\r\n      advertisement: {\r\n        advertisementGroups: [],\r\n        zones: []\r\n      }\r\n    }\r\n  },\r\n  computed: {\r\n    ...mapGetters([\"getAdvertisment\", \"getAdvertismentGroups\", \"getZones\"])\r\n  },\r\n  mounted: function() {\r\n    this.advertisement = { ...this.getAdvertisment };\r\n    this.initialGroups = this.advertisement.advertisementGroups;\r\n    this.isEdit = !!this.advertisement.id;\r\n    this.$validator.reset();\r\n    this.fetchZones();\r\n  },\r\n  methods: {\r\n    isCategoryUnavailable (group) {\r\n      if (this.initialGroups.includes(group.id))\r\n        return false;\r\n\r\n      return group.adCount >= this.maxAllowedAdvertisements;\r\n    },\r\n    uploadFile(e) {\r\n      let splittedValue = e.target.value.split('\\\\');\r\n      let filename = splittedValue[splittedValue.length - 1];\r\n      this.$refs.uploadLabel.innerHTML = filename;\r\n      this.advertisement.image = e.target.files[0];\r\n    },\r\n    async onSubmit() {\r\n      var isFormValid = await this.$validator.validate();\r\n\r\n      if (!isFormValid) {\r\n        return;\r\n      }\r\n\r\n      this.isSaving = true;\r\n\r\n      this.saveAdvertisement({ data: this.advertisement, isEdit: this.isEdit })\r\n        .then(() => {\r\n          this.isSaving = false;\r\n          Toast.success(this, \"Successfully saved!\");\r\n          this.closeModal();\r\n        })\r\n        .catch(() => {\r\n          this.isSaving = false;\r\n          Toast.danger(this, \"Oops! There was an error.\");\r\n        });\r\n    },\r\n    closeModal() {\r\n      this.$bvModal.hide(\"bv-modal-advertisement\");\r\n    },\r\n    ...mapActions([\"fetchZones\", \"saveAdvertisement\"])\r\n  }\r\n}\r\n</script>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./advertisement.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./advertisement.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./advertisement.vue?vue&type=template&id=2e8cdc09&scoped=true&\"\nimport script from \"./advertisement.vue?vue&type=script&lang=js&\"\nexport * from \"./advertisement.vue?vue&type=script&lang=js&\"\nimport style0 from \"./advertisement.vue?vue&type=style&index=0&id=2e8cdc09&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"2e8cdc09\",\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}