{"version":3,"sources":["webpack:///./src/components/Spaces/CheckLocationSpaces.vue","webpack:///src/components/Spaces/CheckLocationSpaces.vue","webpack:///./src/components/Spaces/CheckLocationSpaces.vue?5071","webpack:///./src/components/Spaces/CheckLocationSpaces.vue?174e"],"names":["render","_vm","this","_c","_self","attrs","showSideDrawer","drawerTitle","hideDrawer","scopedSlots","_u","key","fn","showSpaceSummary","itemId","warnings","_e","proxy","staticClass","_m","pSpaces","length","_l","space","index","_v","_s","Name","_f","MeetingtypeId","CheckStatus","Warnings","on","$event","setShowSpaceSummary","staticRenderFns","components","SpaceSummary","props","data","channelId","locationId","Number","$route","params","isSearching","computed","_objectSpread","mapState","created","locationState","Settings","ChannelId","spacesPageState","spaces","getLocationSpaces","processSpaces","methods","mapMutations","self","spaceProvider","searchTerm","meetingtypeId","page","itemsPerPage","then","response","status","i","Results","push","setSpacesPageState","finally","j","Meetingtypes","meetingtype","Id","checkSpaces","_this","checkSpace","component"],"mappings":"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","file":"js/chunk-2d0decf2.js?id=b20dbba225034e409a53","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('ui-page-hero',{attrs:{\"title\":\"Spaces report\"}}),(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"drawerSize\":'extra-large',\"position\":\"right\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showSpaceSummary)?_c('SpaceSummary',{attrs:{\"spaceId\":_vm.itemId,\"warnings\":_vm.warnings}}):_vm._e()]},proxy:true}],null,false,3113833558)}):_vm._e(),_c('table',{staticClass:\"table is-fullwidth\"},[_vm._m(0),(_vm.pSpaces.length)?_c('tbody',_vm._l((_vm.pSpaces),function(space,index){return _c('tr',{key:index},[_c('td',[_vm._v(_vm._s(space.Name))]),_c('td',[_vm._v(_vm._s(_vm._f(\"getMeetingtypeName\")(space.MeetingtypeId)))]),_c('td',[_c('span',{staticClass:\"icon\"},[(space.CheckStatus === 1)?_c('font-awesome-icon',{staticClass:\"has-text-success\",attrs:{\"icon\":['fas', 'check']}}):_vm._e(),(space.CheckStatus === -1)?_c('font-awesome-icon',{staticClass:\"has-text-danger\",attrs:{\"icon\":['fas', 'times']}}):_vm._e()],1)]),_c('td',[_c('span',{staticClass:\"icon\"},[(space.CheckStatus === 1 && space.Warnings.length === 0)?_c('font-awesome-icon',{staticClass:\"has-text-success\",attrs:{\"icon\":['fas', 'check']}}):_vm._e(),(space.Warnings.length > 0)?_c('font-awesome-icon',{staticClass:\"has-text-danger\",attrs:{\"icon\":['fas', 'times']}}):_vm._e()],1),(space.Warnings.length > 0)?_c('span',[_vm._v(_vm._s(space.Warnings.length)+\" Warnings\")]):_vm._e()]),_c('td',[_c('a',{on:{\"click\":function($event){return _vm.setShowSpaceSummary(space, space.Warnings)}}},[_vm._v(\"Show\")])])])}),0):_vm._e()])],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('thead',[_c('tr',[_c('th',[_vm._v(\"Space\")]),_c('th',[_vm._v(\"Meetingtype\")]),_c('th',[_vm._v(\"Check status\")]),_c('th',[_vm._v(\"Warnings\")]),_c('th',[_vm._v(\" \")])])])\n}]\n\nexport { render, staticRenderFns }","<template>\n  <div>\n    <ui-page-hero title=\"Spaces report\" />\n\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      :drawerSize=\"'extra-large'\"\n      position=\"right\"\n    >\n      <template v-slot:content>\n        <SpaceSummary\n          v-if=\"showSpaceSummary\"\n          :spaceId=\"itemId\"\n          :warnings=\"warnings\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <table class=\"table is-fullwidth\">\n      <thead>\n        <tr>\n          <th>Space</th>\n          <th>Meetingtype</th>\n          <th>Check status</th>\n          <th>Warnings</th>\n          <th>&nbsp;</th>\n        </tr>\n      </thead>\n      <tbody v-if=\"pSpaces.length\">\n        <tr v-for=\"(space, index) in pSpaces\" :key=\"index\">\n          <td>{{ space.Name }}</td>\n          <td>{{ space.MeetingtypeId | getMeetingtypeName }}</td>\n          <td>\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"space.CheckStatus === 1\"\n                :icon=\"['fas', 'check']\"\n                class=\"has-text-success\"\n              />\n              <font-awesome-icon\n                v-if=\"space.CheckStatus === -1\"\n                :icon=\"['fas', 'times']\"\n                class=\"has-text-danger\"\n              />\n            </span>\n          </td>\n          <td>\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"space.CheckStatus === 1 && space.Warnings.length === 0\"\n                :icon=\"['fas', 'check']\"\n                class=\"has-text-success\"\n              />\n              <font-awesome-icon\n                v-if=\"space.Warnings.length > 0\"\n                :icon=\"['fas', 'times']\"\n                class=\"has-text-danger\"\n              />\n            </span>\n            <span v-if=\"space.Warnings.length > 0\"\n              >{{ space.Warnings.length }} Warnings</span\n            >\n          </td>\n          <td>\n            <a @click=\"setShowSpaceSummary(space, space.Warnings)\">Show</a>\n          </td>\n        </tr>\n      </tbody>\n    </table>\n  </div>\n</template>\n\n<script>\nimport { mapState, mapMutations } from 'vuex'\nimport spaceProvider from '@/providers/space'\n\nexport default {\n  components: {\n    SpaceSummary: () => import('@/components/Spaces/SpaceSummary'),\n  },\n\n  props: {},\n\n  data() {\n    return {\n      drawerTitle: '',\n      channelId: 0,\n      locationId: Number(this.$route.params.locationId),\n      index: 0,\n      pSpaces: [],\n      itemId: 0,\n      showSideDrawer: false,\n      showSpaceSummary: false,\n      warnings: [],\n      isSearching: false,\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('spaceStore', ['spacesPageState']),\n  },\n\n  created() {\n    if (this.locationState) {\n      this.channelId = this.locationState.Settings.ChannelId\n    }\n\n    if (this.spacesPageState.spaces.length === 0) {\n      this.getLocationSpaces()\n    } else {\n      this.processSpaces()\n    }\n  },\n\n  methods: {\n    ...mapMutations('spaceStore', ['setSpacesPageState']),\n\n    getLocationSpaces() {\n      let self = this\n\n      if (!this.isSearching) {\n        self.isSearching = true\n\n        spaceProvider.methods\n          .getLocationSpaces(\n            self.locationId,\n            self.spacesPageState.searchTerm,\n            self.meetingtypeId,\n            0,\n            self.spacesPageState.page,\n            self.spacesPageState.itemsPerPage\n          )\n          .then((response) => {\n            if (response.status === 200) {\n              let spaces = []\n\n              if (self.spacesPageState.page > 1) {\n                spaces = self.spacesPageState.spaces\n              }\n\n              for (let i = 0; i < response.data.Results.length; i++) {\n                spaces.push(response.data.Results[i])\n              }\n\n              self.spacesPageState.spaces = spaces\n              self.spacesPageState.page = self.spacesPageState.page + 1\n\n              self.setSpacesPageState(self.spacesPageState)\n\n              self.processSpaces()\n            }\n          })\n          .finally(() => {\n            self.isSearching = false\n          })\n      }\n    },\n\n    processSpaces() {\n      let spaces = []\n\n      for (let i = 0; i < this.spacesPageState.spaces.length; i++) {\n        let space = this.spacesPageState.spaces[i]\n\n        for (let j = 0; j < space.Meetingtypes.length; j++) {\n          let meetingtype = space.Meetingtypes[j]\n\n          spaces.push({\n            Id: space.Id,\n            Name: space.Name,\n            MeetingtypeId: meetingtype.MeetingtypeId,\n            CheckStatus: -1,\n            Warnings: [],\n          })\n        }\n      }\n\n      this.pSpaces = spaces\n\n      this.checkSpaces()\n    },\n\n    checkSpaces() {\n      if (this.pSpaces && this.pSpaces.length > 0) {\n        let space = this.pSpaces[this.index]\n        if (space) {\n          space.CheckStatus = 0\n\n          spaceProvider.methods\n            .checkSpace(\n              this.channelId,\n              this.locationId,\n              space.Id,\n              space.MeetingtypeId\n            )\n            .then((response) => {\n              if (response.status === 200) {\n                space.Warnings = response.data\n              }\n            })\n            .finally(() => {\n              space.CheckStatus = 1\n\n              if (this.index < this.pSpaces.length) {\n                this.index = this.index + 1\n                this.checkSpaces()\n              }\n            })\n        }\n      }\n    },\n\n    setShowSpaceSummary(space, warnings) {\n      this.showSideDrawer = true\n      this.showSpaceSummary = true\n      this.itemId = space.Id\n      this.warnings = warnings\n      this.drawerTitle = space.Name\n    },\n\n    hideDrawer() {\n      this.showSideDrawer = false\n      this.showSpaceSummary = false\n      this.itemId = 0\n      this.warnings = []\n      this.drawerTitle = ''\n    },\n  },\n}\n</script>\n\n<style></style>\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!./CheckLocationSpaces.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!./CheckLocationSpaces.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CheckLocationSpaces.vue?vue&type=template&id=705938fe\"\nimport script from \"./CheckLocationSpaces.vue?vue&type=script&lang=js\"\nexport * from \"./CheckLocationSpaces.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":""}