{"version":3,"sources":["webpack:///./src/eventbus/event-bus.js","webpack:///./src/components/Settings/Reservations/ModalEditReservationMailText.vue","webpack:///src/components/Settings/Reservations/ModalEditReservationMailText.vue","webpack:///./src/components/Settings/Reservations/ModalEditReservationMailText.vue?a801","webpack:///./src/components/Settings/Reservations/ModalEditReservationMailText.vue?6c4e"],"names":["EventBus","Vue","render","_vm","this","_c","_self","attrs","$t","isSaving","isSavingSuccess","isSavingError","onClickCancel","saveReservationMailText","showModal","on","scopedSlots","_u","key","fn","mailType","model","value","name","callback","$$v","expression","_e","staticClass","_l","languages","language","Language","class","selectedLanguage","$event","setSelectedLanguage","_v","_s","LanguageId","mMailTypeTexts","mailtexts","filter","mt","mailtext","index","directives","rawName","Subject","domProps","target","composing","$set","Body","proxy","slot","staticRenderFns","baseInputField","components","props","type","Boolean","default","Function","required","mailTypeTexts","Object","data","computed","_objectSpread","mapState","mapGetters","defaultLanguageId","locationState","Settings","DefaultLanguage","length","MailType","created","cleanSource","Name","methods","mapMutations","_this","self","mMailTexts","JSON","parse","stringify","reservationMailTexts","_loop","i","textIndex","findIndex","t","Id","set","mailProvider","saveLocationReservationMailTexts","then","response","status","setReservationMailTexts","$emit","message","catch","e","finally","component"],"mappings":"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","file":"js/chunk-13049682.js?id=59c40af7d4ea6d8b71f5","sourcesContent":["import Vue from 'vue'\nexport const EventBus = new Vue()\n\nexport default EventBus\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('ui-component-modal',{attrs:{\"modalTitle\":_vm.$t(\n      'Components.Settings.Reservations.ModalEditReservationMailText.Modal_Title'\n    ),\"modalSize\":\"large\",\"isSaving\":_vm.isSaving,\"isSavingSuccess\":_vm.isSavingSuccess,\"isSavingError\":_vm.isSavingError,\"hideFooterButtons\":_vm.isSavingError || _vm.isSavingSuccess,\"onClickCancel\":_vm.onClickCancel,\"onClickSave\":_vm.saveReservationMailText,\"showModal\":_vm.showModal},on:{\"closeModal\":_vm.onClickCancel},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [_c('div',[(_vm.mailType === 'Custom')?_c('base-input-field',{attrs:{\"label\":_vm.$t(\n            'Components.Settings.Reservations.ModalEditReservationMailText.Label_Name'\n          )},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}):_vm._e(),_c('div',{staticClass:\"tabs\"},[_c('ul',_vm._l((_vm.languages),function(language){return _c('li',{key:language.Language,class:{ 'is-active' : _vm.selectedLanguage === language.Language }},[_c('a',{on:{\"click\":function($event){return _vm.setSelectedLanguage(language.Language)}}},[_vm._v(_vm._s(_vm.$t('LanguageLabels.Language' + language.LanguageId)))])])}),0)]),_c('div',{staticClass:\"columns is-multiline\"},_vm._l((_vm.mMailTypeTexts.mailtexts.filter(mt => mt.Language === _vm.selectedLanguage)),function(mailtext,index){return _c('div',{key:'column' + index,staticClass:\"column\"},[_c('div',{staticClass:\"field\"},[_c('div',{staticClass:\"control\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(mailtext.Subject),expression:\"mailtext.Subject\"}],staticClass:\"input\",attrs:{\"type\":\"text\",\"placeholder\":_vm.$t(\n                    'Components.Settings.Reservations.ModalEditReservationMailText.Placeholder_Subject'\n                  )},domProps:{\"value\":(mailtext.Subject)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(mailtext, \"Subject\", $event.target.value)}}})])]),_c('div',{staticClass:\"field\"},[_c('div',{staticClass:\"control\"},[_c('ui-text-editor',{key:'editor-' + _vm.selectedLanguage,attrs:{\"id\":'editor-' + _vm.selectedLanguage},model:{value:(mailtext.Body),callback:function ($$v) {_vm.$set(mailtext, \"Body\", $$v)},expression:\"mailtext.Body\"}})],1)])])}),0)],1)]},proxy:true}])},[_c('template',{slot:\"modalTitle\"})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n  <ui-component-modal\n    :modalTitle=\"\n      $t(\n        'Components.Settings.Reservations.ModalEditReservationMailText.Modal_Title'\n      )\n    \"\n    modalSize=\"large\"\n    :isSaving=\"isSaving\"\n    :isSavingSuccess=\"isSavingSuccess\"\n    :isSavingError=\"isSavingError\"\n    :hideFooterButtons=\"isSavingError || isSavingSuccess\"\n    :onClickCancel=\"onClickCancel\"\n    :onClickSave=\"saveReservationMailText\"\n    :showModal=\"showModal\"\n    @closeModal=\"onClickCancel\"\n  >\n    <template slot=\"modalTitle\"></template>\n    <template v-slot:content>\n      <div>\n        <base-input-field\n          v-if=\"mailType === 'Custom'\"\n          :label=\"\n            $t(\n              'Components.Settings.Reservations.ModalEditReservationMailText.Label_Name'\n            )\n          \"\n          v-model=\"name\"\n        />\n\n        <div class=\"tabs\">\n          <ul>\n            <li v-for=\"language in languages\" :key=\"language.Language\" :class=\"{ 'is-active' : selectedLanguage === language.Language }\">\n              <a @click=\"setSelectedLanguage(language.Language)\">{{ $t('LanguageLabels.Language' + language.LanguageId) }}</a>\n            </li>\n          </ul>\n        </div>\n\n        <div class=\"columns is-multiline\">\n          <div\n            v-for=\"(mailtext, index) in mMailTypeTexts.mailtexts.filter(mt => mt.Language === selectedLanguage)\"\n            :key=\"'column' + index\"\n            class=\"column\"\n          >\n            <div class=\"field\">\n              <div class=\"control\">\n                <input\n                  class=\"input\"\n                  type=\"text\"\n                  :placeholder=\"\n                    $t(\n                      'Components.Settings.Reservations.ModalEditReservationMailText.Placeholder_Subject'\n                    )\n                  \"\n                  v-model=\"mailtext.Subject\"\n                />\n              </div>\n            </div>\n            <div class=\"field\">\n              <div class=\"control\">\n                <ui-text-editor\n                  :id=\"'editor-' + selectedLanguage\"\n                  :key=\"'editor-' + selectedLanguage\"\n                  v-model=\"mailtext.Body\"\n                ></ui-text-editor>\n              </div>\n            </div>\n          </div>\n        </div>\n      </div>\n    </template>\n  </ui-component-modal>\n</template>\n\n<script>\nimport Vue from 'vue'\nimport { mapState, mapGetters, mapMutations } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport { cleanSource } from '@/utils/objectHelper'\nimport mailProvider from '@/providers/mail'\n\nconst baseInputField = () => import('@/components/UI/Form/BaseInputField')\n\nexport default {\n  components: {\n    'base-input-field': baseInputField,\n    //message: Message\n  },\n\n  props: {\n    showModal: {\n      type: Boolean,\n      default: false,\n    },\n\n    onClickCancel: {\n      type: Function,\n      required: true,\n    },\n\n    mailTypeTexts: {\n      type: Object,\n      default: null,\n    },\n  },\n\n  data() {\n    return {\n      isSaving: false,\n      isSavingSuccess: false,\n      isSavingError: false,\n      mMailTypeTexts: null,\n      name: '',\n      selectedLanguage: 'en',\n    }\n  },\n\n  computed: {\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('settingsStore', ['reservationMailTexts']),\n    ...mapGetters('locationStore', ['languages']),\n\n    defaultLanguageId() {\n      let language = 'en';\n\n      if (this.locationState)\n      {\n        language = this.locationState.Settings.DefaultLanguage;\n      }\n\n      return language;\n    },\n\n    mailType() {\n      let type = ''\n\n      if (this.mMailTypeTexts && this.mMailTypeTexts.mailtexts.length > 0) {\n        let mt = this.mMailTypeTexts.mailtexts[0]\n        if (mt) {\n          type = mt.MailType\n        }\n      }\n\n      return type\n    },\n  },\n\n  created() {\n    this.mMailTypeTexts = cleanSource(this.mailTypeTexts);\n    this.name = this.mMailTypeTexts.mailtexts[0].Name;\n\n    this.setSelectedLanguage(this.defaultLanguageId);\n  },\n\n  methods: {\n    ...mapMutations('settingsStore', ['setReservationMailTexts']),\n\n    setSelectedLanguage(language) {\n      this.selectedLanguage = language;\n    },\n\n    saveReservationMailText() {\n      let self = this\n\n      if (!self.isSavingSuccess) {\n        self.isSaving = true\n\n        let mMailTexts = JSON.parse(JSON.stringify(self.reservationMailTexts))\n\n        for (let i = 0; i < self.mMailTypeTexts.mailtexts.length; i++) {\n          let mt = self.mMailTypeTexts.mailtexts[i]\n          mt.Name = self.name\n          let textIndex = mMailTexts.findIndex((t) => t.Id === mt.Id)\n\n          if (textIndex > -1) {\n            Vue.set(mMailTexts, textIndex, mt)\n          }\n        }\n\n        mailProvider.methods\n          .saveLocationReservationMailTexts(self.locationState.Id, mMailTexts)\n          .then((response) => {\n            if (response.status === 200) {\n              self.setReservationMailTexts(response.data)\n\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t(\n                  'Components.Settings.MailTexts.Toast_MailUpdated'\n                ),\n              })\n\n              self.onClickCancel()\n            }\n          })\n          .catch((e) => {\n            //console.log(error.response)\n            self.isSavingError = true\n          })\n          .finally(() => {\n            self.isSaving = false\n          })\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!./ModalEditReservationMailText.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!./ModalEditReservationMailText.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ModalEditReservationMailText.vue?vue&type=template&id=26bdecaf\"\nimport script from \"./ModalEditReservationMailText.vue?vue&type=script&lang=js\"\nexport * from \"./ModalEditReservationMailText.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":""}