{"version":3,"sources":["webpack:///./src/components/Spaces/ModalEditSpaceChannels.vue","webpack:///src/components/Spaces/ModalEditSpaceChannels.vue","webpack:///./src/components/Spaces/ModalEditSpaceChannels.vue?8f9b","webpack:///./src/components/Spaces/ModalEditSpaceChannels.vue?42e0"],"names":["render","_vm","this","_c","_self","attrs","$t","onClickCancel","showModal","saveSpace","isSaving","isSavingSuccess","isSavingError","on","scopedSlots","_u","key","fn","staticClass","_v","_s","tag","enter","leave","_l","filteredEditChannels","channel","ChannelId","MeetingtypeId","directives","name","rawName","value","IsActive","expression","domProps","_defineProperty","Array","isArray","_i","$event","$$a","$$el","target","$$c","checked","$$v","$$i","$set","concat","slice","ChannelName","IsPublic","proxy","staticRenderFns","components","props","meetingtypeId","default","type","Number","Boolean","Function","required","data","editChannels","locationChannels","locationId","$route","params","locationMeetingtypes","computed","_objectSpread","mapState","self","filter","ec","created","mSpace","JSON","parse","stringify","space","getLocationChannels","getLocationMeetingtypes","prepData","methods","mapMutations","locationChannnels","locationState","Channels","Meetingtypes","checkSpaceOnChannel","channelId","_this","result","channelIndex","findIndex","c","checkSpaceActiveOnChannel","_this2","i","length","meetingtype","j","push","spaceProvider","updateSpace","then","response","status","setSpace","catch","error","finally","component"],"mappings":"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","file":"js/chunk-2d0c7771.js?id=aefc6edc0c2d25d5885e","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t('Components.Spaces.ModalEditSpaceChannels.Main_Title'),\"onClickCancel\":_vm.onClickCancel,\"showModal\":_vm.showModal,\"onClickSave\":_vm.saveSpace,\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"disableSaveButton\":_vm.isSaving},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('table',{staticClass:\"table is-fullwidth is-narrow\"},[_c('thead',[_c('tr',[_c('th',{attrs:{\"width\":\"50\"}},[_vm._v(\" \"+_vm._s(_vm.$t('Components.Spaces.ModalEditSpaceChannels.Table_Active'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Spaces.ModalEditSpaceChannels.Table_Channel'))+\" \")]),_c('th',[_vm._v(\" \"+_vm._s(_vm.$t('Components.Spaces.ModalEditSpaceChannels.Table_Public'))+\" \")])])]),_c(\"transition-group\",{tag:\"tbody\",attrs:{\"name\":\"fade\",\"mode\":\"out-in\",\"duration\":{ enter: 300, leave: 300 }}},_vm._l((_vm.filteredEditChannels),function(channel){return _c('tr',{key:channel.ChannelId + '-' + channel.MeetingtypeId},[_c('td',{attrs:{\"width\":\"50\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(channel.IsActive),expression:\"channel.IsActive\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":channel.IsActive,\"checked\":Array.isArray(channel.IsActive)?_vm._i(channel.IsActive,null)>-1:(channel.IsActive)},on:{\"change\":function($event){var $$a=channel.IsActive,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(channel, \"IsActive\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(channel, \"IsActive\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(channel, \"IsActive\", $$c)}}}})]),_c('td',[_c('span',[_vm._v(_vm._s(channel.ChannelName))])]),_c('td',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(channel.IsPublic),expression:\"channel.IsPublic\"}],key:'cb-' + channel.ChannelId + '-' + channel.MeetingtypeId,attrs:{\"type\":\"checkbox\",\"disabled\":!channel.IsActive},domProps:{\"checked\":channel.IsPublic,\"checked\":Array.isArray(channel.IsPublic)?_vm._i(channel.IsPublic,null)>-1:(channel.IsPublic)},on:{\"change\":function($event){var $$a=channel.IsPublic,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.$set(channel, \"IsPublic\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(channel, \"IsPublic\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(channel, \"IsPublic\", $$c)}}}})])])}),0)],1)]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"$t('Components.Spaces.ModalEditSpaceChannels.Main_Title')\"\n    :onClickCancel=\"onClickCancel\"\n    :showModal=\"showModal\"\n    :onClickSave=\"saveSpace\"\n    :isSaving=\"isSaving\"\n    :isSavingSuccess=\"isSavingSuccess\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError || isSavingSuccess\"\n    :disableSaveButton=\"isSaving\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template v-slot:content>\n      <table class=\"table is-fullwidth is-narrow\">\n        <thead>\n          <tr>\n            <th width=\"50\">\n              {{ $t('Components.Spaces.ModalEditSpaceChannels.Table_Active') }}\n            </th>\n            <th>\n              {{ $t('Components.Spaces.ModalEditSpaceChannels.Table_Channel') }}\n            </th>\n            <th>\n              {{ $t('Components.Spaces.ModalEditSpaceChannels.Table_Public') }}\n            </th>\n          </tr>\n        </thead>\n        <tbody\n          name=\"fade\"\n          is=\"transition-group\"\n          mode=\"out-in\"\n          :duration=\"{ enter: 300, leave: 300 }\"\n        >\n          <tr v-for=\"channel in filteredEditChannels\" :key=\"channel.ChannelId + '-' + channel.MeetingtypeId\">\n            <td width=\"50\">\n              <input\n                type=\"checkbox\"\n                v-model=\"channel.IsActive\"\n                :checked=\"channel.IsActive\"\n              />\n            </td>\n            <td>\n              <span>{{ channel.ChannelName }}</span>\n            </td>\n            <td>\n              <input\n                type=\"checkbox\"\n                :key=\"'cb-' + channel.ChannelId + '-' + channel.MeetingtypeId\"\n                v-model=\"channel.IsPublic\"\n                :disabled=\"!channel.IsActive\"\n                :checked=\"channel.IsPublic\"\n              />\n            </td>\n          </tr>\n        </tbody>\n      </table>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport spaceProvider from '@/providers/space'\n\nexport default {\n  components: {},\n\n  props: {\n    meetingtypeId: {\n      default: 0,\n      type: Number,\n    },\n\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n  },\n\n  data() {\n    return {\n      editChannels: [],\n      isSaving: false,\n      isSavingError: false,\n      isSavingSuccess: false,\n      locationChannels: [],\n      locationId: Number(this.$route.params.locationId),\n      locationMeetingtypes: [],\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('spaceStore', ['space']),\n\n    filteredEditChannels() {\n      let self = this\n      return self.editChannels.filter(\n        (ec) => ec.MeetingtypeId === self.meetingtypeId\n      )\n    },\n  },\n\n  created() {\n    this.mSpace = JSON.parse(JSON.stringify(this.space))\n\n    this.locationChannels = this.getLocationChannels()\n    this.locationMeetingtypes = this.getLocationMeetingtypes()\n\n    this.prepData()\n  },\n\n  methods: {\n    ...mapMutations('spaceStore', ['setSpace']),\n\n    getLocationChannels() {\n      let locationChannnels = []\n      if (this.locationState) {\n        locationChannnels = this.locationState.Channels\n      }\n      return locationChannnels\n    },\n\n    getLocationMeetingtypes() {\n      let locationMeetingtypes = []\n      if (this.locationState) {\n        locationMeetingtypes = this.locationState.Meetingtypes\n      }\n      return locationMeetingtypes\n    },\n\n    checkSpaceOnChannel(channelId) {\n      let result = false\n\n      let channelIndex = this.mSpace.Channels.findIndex(\n        (c) =>\n          c.MeetingtypeId === this.meetingtypeId && c.ChannelId === channelId\n      )\n      if (channelIndex > -1) {\n        result = true\n      }\n\n      return result\n    },\n\n    checkSpaceActiveOnChannel(channelId) {\n      let result = false\n\n      let channelIndex = this.mSpace.Channels.findIndex(\n        (c) =>\n          c.MeetingtypeId === this.meetingtypeId && c.ChannelId === channelId\n      )\n      if (channelIndex > -1) {\n        result = this.mSpace.Channels[channelIndex].IsPublic\n      }\n\n      return result\n    },\n\n    prepData() {\n      let self = this\n\n      for (let i = 0; i < self.locationMeetingtypes.length; i++) {\n        let meetingtype = self.locationMeetingtypes[i]\n        for (let j = 0; j < self.locationChannels.length; j++) {\n          self.editChannels.push({\n            ChannelId: self.locationChannels[j].ChannelId,\n            ChannelName: self.locationChannels[j].ChannelName,\n            MeetingtypeId: meetingtype.MeetingtypeId,\n            IsPublic: self.checkSpaceActiveOnChannel(\n              self.locationChannels[j].ChannelId\n            ),\n            IsActive: self.checkSpaceOnChannel(\n              self.locationChannels[j].ChannelId\n            ),\n          })\n        }\n      }\n    },\n\n    saveSpace() {\n      let self = this\n      self.isSaving = true\n      self.isSavingSuccess = false\n      self.isSavingError = false\n\n      self.mSpace.Channels = self.editChannels.filter((c) => c.IsActive)\n\n      spaceProvider.methods\n        .updateSpace(self.mSpace)\n        .then((response) => {\n          if (response.status === 200) {\n            self.mSpace = response.data\n            self.setSpace(self.mSpace)\n\n            self.onClickCancel()\n          }\n        })\n        .catch((error) => {\n          self.isSavingError = true\n        })\n        .finally(() => {\n          self.isSaving = false\n        })\n    },\n  },\n}\n</script>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditSpaceChannels.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalEditSpaceChannels.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalEditSpaceChannels.vue?vue&type=template&id=1bbdaf22\"\nimport script from \"./ModalEditSpaceChannels.vue?vue&type=script&lang=js\"\nexport * from \"./ModalEditSpaceChannels.vue?vue&type=script&lang=js\"\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  null,\n  null\n  \n)\n\nexport default component.exports"],"sourceRoot":""}