{"version":3,"sources":["webpack:///./node_modules/date-fns/esm/isAfter/index.js","webpack:///./src/components/Reservations/ReservationDetail.vue","webpack:///./src/providers/quote.js","webpack:///src/components/Reservations/ReservationDetail.vue","webpack:///./src/components/Reservations/ReservationDetail.vue?7c66","webpack:///./src/components/Reservations/ReservationDetail.vue?dc3d","webpack:///./src/components/Reservations/ReservationDetail.vue?26db"],"names":["isAfter","dirtyDate","dirtyDateToCompare","arguments","date","dateToCompare","getTime","render","_vm","this","_c","_self","reservation","locationId","LocationId","_e","showAddDate","attrs","hideModal","selectedDate","showDeleteDate","showModalCancelReservation","isEmployee","showCancelDate","showModalCreateInvoice","showSetExpiration","Expiration","showSendMail","mailType","showSideDrawer","drawerTitle","hideDrawer","scopedSlots","_u","key","fn","showInvoiceSummary","itemId","showProposalPreview","staticClass","ProposalKey","Language","LanguageId","showChangeDate","hideDatePicker","drawerActionType","on","showCopyDate","showCopyReservation","Dates","length","showReservationSet","proxy","isDraft","staticStyle","Id","String","$event","domProps","_s","$t","class","isLockedCancel","StatusId","setShowCancelReservation","_v","NoInvoice","hasInvoiceActivated","disableCreateInvoice","setShowModalCreateInvoice","isCreatingInvoice","isLocked","isSaving","setShowChangeDate","isLockedCopyDate","setShowCopyReservation","Status","Type","setShowSetExpiration","IsExpired","deleteExpiration","Date","_f","Minutes","PoRequired","toggleReservationPoRequired","NoTax","toggleReservationNoTax","IsPrivate","toggleReservationIsPrivate","ReservationSet","setShowReservationSet","setShowInvoiceSummary","HasInvoice","MeetingtypeId","hasProposalActivated","setShowProposalPreview","HasProposal","emptyDates","showFinalizeReservation","reservationAccepted","reservationDenied","reservationDate","setReservationDate","_l","index","isSelectedDate","returnFormattedDate","setShowAddDate","resDates","setShowCopyDate","setShowCancelDate","reviveReservationDate","setShowDeleteDate","StartMinutes","EndMinutes","locationState","Settings","LanguageCulture","staticRenderFns","getLocationQuotesToken","methods","getQuoteById","quoteId","_asyncToGenerator","_regenerator","m","_callee","response","w","_context","n","axios","get","concat","process","headers","apiToken","profileToken","store","getters","v","a","getLocationQuotes","_arguments","_callee2","searchTerm","companyId","profileId","statusId","page","itemsPerPage","_context2","undefined","cancel","CancelToken","source","cancelToken","token","params","q","createQuoteFromReservation","reservationId","_callee3","criteria","_context3","ReservationId","post","JSON","stringify","name","components","ChangeDate","CopyReservation","Message","ModalCancelReservation","ModalCancelReservationDate","ModalCreateInvoice","ReservationAcceptReject","ReservationFinalize","ReservationBasicData","ReservationInvoiceAddress","ReservationWorkspaces","ReservationMeetingspaces","ReservationOptions","ReservationPackages","ReservationTotals","IsPinned","LinkPrint","ModalSendMail","InvoiceSummary","LinkDownload","ProposalDetail","ModalAddDate","CopyDate","ModalDeleteDate","ModalSetExpiration","props","default","type","Number","reservationKey","isShownInDrawer","Boolean","data","modalTitle","selectedOption","selectedSpace","showAddCompany","showAddProfile","showCompanySummary","showModal","showAddPackage","selectedReservationDate","computed","_objectSpread","mapGetters","mapState","isBooker","booker","profile","ProfileId","employee","LocationAccountRights","locked","ProposalStatus","editDatePassed","parseISO","BookerEditableUntil","ChannelId","IsBackend","show","InvoiceAddress","PoNumber","disable","_this","dates","filter","d","i","resDate","Spaces","Options","Packages","push","spacesTotalSeats","self","total","j","Seats","watch","newValue","oldValue","TotalSeats","created","_this2","Key","getReservationData","EventBus","$on","set","updateReservationStore","t","setTimeout","setShowSendMail","clearTimeout","callbackInvoiceCreated","callbackInvoiceRejected","callbackInvoiceCredited","beforeDestroy","$off","mapActions","mapMutations","invoice","_this3","isDeposit","HasDepositInvoice","setReservation","dateString","_locale","$dateTimeHelper","getDateFnsLocale","$i18n","locale","format","isDate","reservationProvider","getReservationByKey","then","status","catch","err","finally","pageLoadReady","getLocationLanguageIds","_this4","locationProvider","languageIds","_this5","$emit","message","error","isSavingError","incomingReservationUpdate","incoming","_this6","deleteReservationExpiration","getReservationPdf","_this7","resResponse","dataURItoBlob","dataURI","byteString","atob","split","mimeString","ab","ArrayBuffer","ia","Uint8Array","charCodeAt","bb","Blob","setSelectedDate","setShowAddDeskspace","setVisibleSideBarItem","setShowAddPackage","setVisibleModalItem","item","roundToZero","num","Math","round","roundToTwo","goToProposal","$router","proposalId","createQuote","quoteProvider","QuoteId","newInvoice","action","_drawerTitle","component"],"mappings":"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","file":"js/chunk-f040ad48.js?id=7d1afe8880eae16bc51f","sourcesContent":["import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isAfter\n * @category Common Helpers\n * @summary Is the first date after the second one?\n *\n * @description\n * Is the first date after the second one?\n *\n * @param {Date|Number} date - the date that should be after the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is after the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 after 11 February 1987?\n * const result = isAfter(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> true\n */\nexport default function isAfter(dirtyDate, dirtyDateToCompare) {\n  requiredArgs(2, arguments);\n  var date = toDate(dirtyDate);\n  var dateToCompare = toDate(dirtyDateToCompare);\n  return date.getTime() > dateToCompare.getTime();\n}","var render = function render(){var _vm=this,_c=_vm._self._c;return (\n    _vm.reservation && (_vm.locationId === 0 || _vm.reservation.LocationId === _vm.locationId)\n  )?_c('div',[(_vm.showAddDate)?_c('ModalAddDate',{attrs:{\"showModal\":_vm.showAddDate,\"onClickCancel\":_vm.hideModal,\"reservationDate\":_vm.selectedDate}}):_vm._e(),(_vm.showDeleteDate)?_c('ModalDeleteDate',{attrs:{\"showModal\":_vm.showDeleteDate,\"onClickCancel\":_vm.hideModal,\"selectedDate\":_vm.selectedDate}}):_vm._e(),(_vm.showModalCancelReservation)?_c('ModalCancelReservation',{attrs:{\"showModal\":_vm.showModalCancelReservation,\"isEmployee\":_vm.isEmployee,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showCancelDate)?_c('ModalCancelReservationDate',{attrs:{\"showModal\":_vm.showCancelDate,\"reservationDate\":_vm.selectedDate,\"isEmployee\":_vm.isEmployee,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showModalCreateInvoice)?_c('ModalCreateInvoice',{attrs:{\"showModal\":_vm.showModalCreateInvoice,\"onClickCancel\":_vm.hideModal}}):_vm._e(),(_vm.showSetExpiration)?_c('ModalSetExpiration',{attrs:{\"showModal\":_vm.showSetExpiration,\"onClickCancel\":_vm.hideModal,\"expirationDate\":(_vm.reservation && _vm.reservation.Expiration) ? _vm.reservation.Expiration : null}}):_vm._e(),(_vm.showSendMail)?_c('ModalSendMail',{attrs:{\"showModal\":_vm.showSendMail,\"onClickCancel\":_vm.hideModal,\"mailType\":_vm.mailType}}):_vm._e(),(_vm.showSideDrawer)?_c('ui-component-drawer',{attrs:{\"drawerTitle\":_vm.drawerTitle,\"showDrawer\":_vm.showSideDrawer,\"onClickClose\":_vm.hideDrawer,\"position\":\"right\",\"drawerSize\":\"extra-large\"},scopedSlots:_vm._u([{key:\"content\",fn:function(){return [(_vm.showInvoiceSummary)?_c('InvoiceSummary',{attrs:{\"invoiceId\":_vm.itemId,\"locationId\":_vm.locationId}}):_vm._e(),(_vm.showProposalPreview)?_c('ProposalDetail',{staticClass:\"proposalDetail\",attrs:{\"proposalKey\":_vm.reservation.ProposalKey,\"language\":_vm.reservation.Language,\"languageId\":_vm.reservation.LanguageId,\"isEmployee\":true}}):_vm._e(),(_vm.showChangeDate)?_c('ChangeDate',{attrs:{\"hideDatePicker\":_vm.hideDatePicker,\"action\":_vm.drawerActionType},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showCopyDate)?_c('CopyDate',{attrs:{\"reservationDate\":_vm.selectedDate},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showCopyReservation)?_c('CopyReservation',{attrs:{\"showAllAccordions\":_vm.reservation.Dates.length === 1},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e(),(_vm.showReservationSet)?_c('ReservationSet',{attrs:{\"showModal\":_vm.showReservationSet},on:{\"hideDrawer\":_vm.hideDrawer}}):_vm._e()]},proxy:true}],null,false,2787675933)}):_vm._e(),(!_vm.isDraft)?_c('div',{staticClass:\"is-hidden-print actionBar has-padding has-text-right mb-5\",staticStyle:{\"border-bottom\":\"1px solid #cccccc\"}},[(_vm.isEmployee)?_c('IsPinned',{staticClass:\"ml-2\",attrs:{\"locationId\":_vm.reservation.LocationId,\"type\":'reservation',\"itemId\":_vm.reservation.Id}}):_vm._e(),_c('LinkPrint',{staticClass:\"ml-2\",attrs:{\"type\":\"reservation\",\"id\":String(_vm.reservation.Id)}}),(_vm.isEmployee)?_c('a',{staticClass:\"has-icon ml-2\",on:{\"click\":function($event){_vm.showSendMail = true}}},[_c('span',{staticClass:\"icon is-small\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'paper-plane']}})],1),_c('span',{domProps:{\"textContent\":_vm._s(_vm.$t('Components.Reservation.ReservationMailLog.Icon_SendMail'))}})]):_vm._e(),_c('LinkDownload',{staticClass:\"ml-2\",attrs:{\"type\":\"reservation\",\"id\":String(_vm.reservation.Id),\"fileName\":_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_Reservation') + '-' + _vm.reservation.Id}}),(!_vm.isDraft)?[_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{\n          'has-text-grey is-disabled': _vm.isLockedCancel || _vm.reservation.StatusId === 3,\n        },on:{\"click\":_vm.setShowCancelReservation}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'ban']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CancelReservation')))])]),(_vm.isEmployee && !_vm.reservation.NoInvoice && _vm.hasInvoiceActivated)?_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{\n          'has-text-grey is-disabled': _vm.disableCreateInvoice,\n        },on:{\"click\":_vm.setShowModalCreateInvoice}},[_c('span',{staticClass:\"icon\",class:{ 'is-loading': _vm.isCreatingInvoice }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CreateInvoice')))])]):_vm._e(),_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{ 'has-text-grey is-disabled': _vm.isLocked },attrs:{\"disabled\":_vm.isSaving || _vm.isLocked},on:{\"click\":function($event){return _vm.setShowChangeDate(false, 'changeDate')}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'calendar-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_ChangeDate')))])]),_c('a',{staticClass:\"has-icon has-text-link ml-2\",class:{ 'has-text-grey is-disabled': _vm.isLockedCopyDate },attrs:{\"disabled\":_vm.isSaving || _vm.isDraft},on:{\"click\":_vm.setShowCopyReservation}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_CopyReservation')))])])]:_vm._e()],2):_vm._e(),_c('div',{staticClass:\"mb-6\"},[_c('nav',{staticClass:\"navbar is-hidden-print\",attrs:{\"role\":\"navigation\",\"aria-label\":\"main navigation\"}},[_c('div',{staticClass:\"navbar-start\"},[_c('div',[((_vm.reservation.Status === 'Request' || \n                      _vm.reservation.Status === 'Draft' || \n                      _vm.reservation.Status === 'AwaitingPoNumber' || \n                      _vm.reservation.Type === 'Proposal') && !_vm.reservation.Expiration)?_c('div',[_c('div',[_c('a',{on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_SetExpiration')))])])])]):_vm._e(),(_vm.reservation.Expiration)?_c('div',[(_vm.reservation.Expiration.IsExpired)?_c('div',[_c('span',{staticClass:\"tag icon-text is-danger\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_HasExpired')))])]),_c('div',[(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]):_vm._e(),(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Delete')))])]):_vm._e()])]):_vm._e(),(!_vm.reservation.Expiration.IsExpired)?_c('div',[_c('div',[_c('span',{staticClass:\"tag icon-text is-warning\"},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'exclamation-triangle']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ReservationType_' + _vm.reservation.Type))+\" \"+_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Label_ExpiresOn'))+\" \"),_c('span',{staticClass:\"has-text-weight-bold\"},[_vm._v(_vm._s(_vm.reservation.Expiration.Date)+\" @ \"+_vm._s(_vm._f(\"minutesToTime\")(_vm.reservation.Expiration.Minutes)))])])]),_c('div',[(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.setShowSetExpiration}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'edit']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Edit')))])]):_vm._e(),(!_vm.isLocked)?_c('a',{staticClass:\"ml-2 is-size-7\",on:{\"click\":_vm.deleteExpiration}},[_c('span',{staticClass:\"icon has-text-danger\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Form.Control.Delete')))])]):_vm._e()])])]):_vm._e()]):_vm._e()])]),(!_vm.isDraft)?_c('div',{staticClass:\"navbar-end\"},[(_vm.isEmployee)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.PoRequired },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_PoRequired'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_PoRequired'),\"disabled\":_vm.isLocked},on:{\"click\":_vm.toggleReservationPoRequired}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.PoRequired)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}):_vm._e(),(!_vm.reservation.PoRequired)?_c('font-awesome-icon',{attrs:{\"icon\":['far', 'tag']}}):_vm._e()],1),(_vm.reservation.PoRequired)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PoRequired')))]):_vm._e(),(!_vm.reservation.PoRequired)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PoOptional')))]):_vm._e()]):_vm._e(),(_vm.isEmployee)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.NoTax },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_Taxable'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_Taxable'),\"disabled\":_vm.isLocked},on:{\"click\":_vm.toggleReservationNoTax}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.NoTax)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'times']}}):_vm._e(),(!_vm.reservation.NoTax)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'coins']}}):_vm._e()],1),(_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NonTaxable')))]):_vm._e(),(!_vm.reservation.NoTax)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_Taxable')))]):_vm._e()]):_vm._e(),_c('button',{staticClass:\"button is-info is-light is-small ml-2\",class:{ 'is-warning is-light': _vm.reservation.IsPrivate },attrs:{\"title\":_vm.$t('Components.Reservation.ReservationDetail.Label_Private'),\"aria-label\":_vm.$t('Components.Reservation.ReservationDetail.Label_Private')},on:{\"click\":_vm.toggleReservationIsPrivate}},[_c('span',{staticClass:\"icon\"},[(_vm.reservation.IsPrivate)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'eye-slash']}}):_vm._e(),(!_vm.reservation.IsPrivate)?_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'eye']}}):_vm._e()],1),(_vm.reservation.IsPrivate)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_IsPrivate')))]):_vm._e(),(!_vm.reservation.IsPrivate)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_IsPublic')))]):_vm._e()]),(_vm.reservation.ReservationSet.length > 0)?_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":_vm.setShowReservationSet}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'clone']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_PartOfSet')))])]):_vm._e(),(_vm.hasInvoiceActivated)?[_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":function($event){return _vm.setShowInvoiceSummary()}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),(_vm.reservation.HasInvoice > 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_InvoiceCreated')))]):_vm._e(),(_vm.reservation.HasInvoice === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NoInvoice')))]):_vm._e()])]:_vm._e(),(_vm.reservation.MeetingtypeId === 1 && _vm.hasProposalActivated)?[_c('button',{staticClass:\"button is-info is-light is-small ml-2\",on:{\"click\":_vm.setShowProposalPreview}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'file-invoice']}})],1),(_vm.reservation.HasProposal > 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_Proposal'))+\" #\"+_vm._s(_vm.reservation.HasProposal))]):_vm._e(),(_vm.reservation.HasProposal === 0)?_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDetail.Icon_NoProposal')))]):_vm._e()])]:_vm._e()],2):_vm._e()]),(_vm.emptyDates.length > 0)?_c('div',[_c('Message',{staticClass:\"is-warning\",attrs:{\"message\":'Empty dates are found in reservation'}})],1):_vm._e(),(_vm.showFinalizeReservation)?_c('ReservationFinalize',{staticClass:\"has-margin-top\"}):_vm._e(),(_vm.isEmployee && !_vm.isLocked)?_c('ReservationAcceptReject',{staticClass:\"has-margin-top\",on:{\"accepted\":_vm.reservationAccepted,\"denied\":_vm.reservationDenied}}):_vm._e(),_c('div',{staticClass:\"columns has-margin-top\"},[_c('div',{staticClass:\"column\"},[_c('ReservationBasicData',{attrs:{\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee}})],1),_c('div',{staticClass:\"column\"},[_c('ReservationInvoiceAddress',{attrs:{\"isLocked\":_vm.isLocked,\"isEmployee\":_vm.isEmployee}})],1)])],1),_c('div',{staticClass:\"mb-4\"},[(_vm.reservation.Dates.length > 0)?_c('div',{staticClass:\"tabs is-boxed has-background-white-bis has-custom-scrollbar\"},[_c('ul',[(_vm.reservation.Dates.length > 1)?[_c('li',{class:{ 'is-active' : !_vm.reservationDate }},[_c('a',{on:{\"click\":function($event){return _vm.setReservationDate(null)}}},[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_AllDates')))])]),_vm._l((_vm.reservation.Dates),function(date,index){return _c('li',{key:index,class:{ 'is-active' : _vm.isSelectedDate(date) }},[_c('a',{on:{\"click\":function($event){return _vm.setReservationDate(date)}}},[_vm._v(_vm._s(_vm.returnFormattedDate(date.Date)))])])})]:_vm._e(),(_vm.isEmployee && !_vm.isLocked)?_c('li',[_c('a',{staticClass:\"has-icon has-text-link\",on:{\"click\":function($event){return _vm.setShowAddDate(null)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fa', 'plus']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_AddDay')))])])]):_vm._e()],2)]):_vm._e()]),_vm._l((_vm.resDates),function(date,index){return _c('div',{key:index+'_'+date.Date,class:{'mt-6': index !== 0 }},[_c('div',{staticClass:\"mb-6\"},[_c('div',{staticClass:\"mb-2\"},[_c('strong',{staticClass:\"mr-3 is-size-3 title-date\"},[_c('span',[_vm._v(_vm._s(_vm.returnFormattedDate(date.Date)))]),(date.Status === 'Cancelled')?_c('span',{staticClass:\"ml-2\"},[_vm._v(\"[\"+_vm._s(_vm.$t('ReservationStatus.status_' + date.Status))+\"]\")]):_vm._e()]),(_vm.isEmployee && !_vm.isLocked)?[(_vm.reservation.MeetingtypeId === 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.setShowCopyDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_CopyDate')))])]):_vm._e(),(date.Status !== 'Cancelled' && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.setShowCancelDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'copy']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_CancelDate')))])]):_vm._e(),(date.Status === 'Cancelled' && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.isLocked },on:{\"click\":function($event){return _vm.reviveReservationDate(date)}}},[_c('span',{staticClass:\"icon\"},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'heartbeat']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_ReviveDate')))])]):_vm._e(),(_vm.reservation.MeetingtypeId === 1 && _vm.reservation.Dates.length > 1)?_c('a',{staticClass:\"ml-4 has-icon is-size-6\",class:{ 'has-text-grey is-disabled': _vm.reservation.Dates.length === 1 || _vm.isLocked },on:{\"click\":function($event){return _vm.setShowDeleteDate(date)}}},[_c('span',{staticClass:\"icon\",class:{ 'has-text-danger': !_vm.isLocked && _vm.reservation.Dates.length > 1 }},[_c('font-awesome-icon',{attrs:{\"icon\":['fas', 'trash-alt']}})],1),_c('span',[_vm._v(_vm._s(_vm.$t('Components.Reservation.ReservationDates.label_DeleteDate')))])]):_vm._e()]:_vm._e()],2),_c('div',{staticClass:\"is-size-6 has-text-weight-normal\"},[_vm._v(_vm._s(_vm._f(\"minutesToTime\")(date.StartMinutes))+\" - \"+_vm._s(_vm._f(\"minutesToTime\")(date.EndMinutes)))])]),(_vm.reservation.MeetingtypeId === 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationPackages',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked}})],1):_vm._e(),(_vm.reservation.MeetingtypeId === 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationMeetingspaces',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isLocked\":_vm.isLocked}})],1):_vm._e(),(_vm.reservation.MeetingtypeId === 2)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationWorkspaces',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isEmployee\":_vm.isEmployee,\"isLocked\":_vm.isLocked}})],1):_vm._e(),_c('div',{staticClass:\"mb-6\"},[_c('ReservationOptions',{attrs:{\"reservationDate\":date,\"reservation\":_vm.reservation,\"isLocked\":_vm.isLocked}})],1),(_vm.reservation.Dates.length > 1)?_c('div',{staticClass:\"mb-6\"},[_c('ReservationTotals',{attrs:{\"reservation\":_vm.reservation,\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"reservationDate\":date,\"titleText\":_vm.$t('Components.Reservation.ReservationDetail.Title_DateSubtotal')}})],1):_vm._e(),(_vm.reservation.Dates.length > 1)?_c('hr'):_vm._e()])}),(!_vm.reservationDate)?_c('ReservationTotals',{attrs:{\"reservation\":_vm.reservation,\"languageCulture\":_vm.locationState.Settings.LanguageCulture,\"titleText\":_vm.$t('Components.Reservation.ReservationDetail.Title_ReservationTotal')}}):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import axios from \"axios\";\nimport store from \"@/store\";\n\nlet getLocationQuotesToken = null;\n\nexport default {\n  methods: {\n    async getQuoteById(quoteId) {\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/${quoteId}`,\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async getLocationQuotes(\n      locationId,\n      searchTerm = \"\",\n      companyId = 0,\n      profileId = 0,\n      statusId = 0,\n      page = 1,\n      itemsPerPage = 25\n    ) {\n      if (getLocationQuotesToken) {\n        getLocationQuotesToken.cancel();\n      }\n      getLocationQuotesToken = axios.CancelToken.source();\n\n      const response = await axios.get(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/location/${locationId}`,\n        {\n          cancelToken: getLocationQuotesToken.token,\n\n          params: {\n            q: searchTerm,\n            companyId: companyId,\n            profileId: profileId,\n            statusId: statusId,\n            page: page,\n            itemsPerPage: itemsPerPage\n          },\n\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    },\n\n    async createQuoteFromReservation(reservationId) {\n      let criteria = {\n        ReservationId: reservationId\n      };\n\n      const response = await axios.post(\n        `${process.env.VUE_APP_API_BASE_URL}/api/v1/quote/reservation/${reservationId}`,\n        JSON.stringify(criteria),\n        {\n          headers: {\n            \"Content-type\": \"application/json\",\n            apiToken: process.env.VUE_APP_API_KEY,\n            profileToken: store.getters['profileStore/getProfileToken']\n          }\n        }\n      );\n      return response;\n    }\n  }\n};\n","<template>\n  <div v-if=\"\n      reservation && (locationId === 0 || reservation.LocationId === locationId)\n    \">\n        \n    <ModalAddDate\n      v-if=\"showAddDate\"\n      :showModal=\"showAddDate\"\n      :onClickCancel=\"hideModal\"\n      :reservationDate=\"selectedDate\"\n    />\n\n    <ModalDeleteDate\n      v-if=\"showDeleteDate\"\n      :showModal=\"showDeleteDate\"\n      :onClickCancel=\"hideModal\"\n      :selectedDate=\"selectedDate\"\n    />\n\n    <ModalCancelReservation\n      v-if=\"showModalCancelReservation\"\n      :showModal=\"showModalCancelReservation\"\n      :isEmployee=\"isEmployee\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalCancelReservationDate\n      v-if=\"showCancelDate\"\n      :showModal=\"showCancelDate\"\n      :reservationDate=\"selectedDate\"\n      :isEmployee=\"isEmployee\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalCreateInvoice\n      v-if=\"showModalCreateInvoice\"\n      :showModal=\"showModalCreateInvoice\"\n      :onClickCancel=\"hideModal\"\n    />\n\n    <ModalSetExpiration\n      v-if=\"showSetExpiration\"\n      :showModal=\"showSetExpiration\"\n      :onClickCancel=\"hideModal\"\n      :expirationDate=\"(reservation && reservation.Expiration) ? reservation.Expiration : null\"\n    />\n\n    <ModalSendMail\n      v-if=\"showSendMail\"\n      :showModal=\"showSendMail\"\n      :onClickCancel=\"hideModal\"\n      :mailType=\"mailType\"\n    />\n\n    <ui-component-drawer\n      v-if=\"showSideDrawer\"\n      :drawerTitle=\"drawerTitle\"\n      :showDrawer=\"showSideDrawer\"\n      :onClickClose=\"hideDrawer\"\n      position=\"right\"\n      drawerSize=\"extra-large\"\n    >\n      <template v-slot:content>\n        <InvoiceSummary\n          v-if=\"showInvoiceSummary\"\n          :invoiceId=\"itemId\"\n          :locationId=\"locationId\"\n        />\n\n        <ProposalDetail\n          v-if=\"showProposalPreview\"\n          :proposalKey=\"reservation.ProposalKey\"\n          :language=\"reservation.Language\"\n          :languageId=\"reservation.LanguageId\"\n          :isEmployee=\"true\"\n          class=\"proposalDetail\"\n        />\n\n        <ChangeDate\n          v-if=\"showChangeDate\"\n          :hideDatePicker=\"hideDatePicker\"\n          :action=\"drawerActionType\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <CopyDate\n          v-if=\"showCopyDate\"\n          :reservationDate=\"selectedDate\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <CopyReservation\n          v-if=\"showCopyReservation\"\n          :showAllAccordions=\"reservation.Dates.length === 1\"\n          @hideDrawer=\"hideDrawer\"\n        />\n\n        <ReservationSet\n          v-if=\"showReservationSet\"\n          :showModal=\"showReservationSet\"\n          @hideDrawer=\"hideDrawer\"\n        />\n      </template>\n    </ui-component-drawer>\n\n    <div\n      v-if=\"!isDraft\"\n      class=\"is-hidden-print actionBar has-padding has-text-right mb-5\"\n      style=\"border-bottom:  1px solid #cccccc;\"\n    >\n      <IsPinned\n        v-if=\"isEmployee\"\n        :locationId=\"reservation.LocationId\"\n        :type=\"'reservation'\"\n        :itemId=\"reservation.Id\"\n        class=\"ml-2\"\n      />\n\n      <LinkPrint\n        type=\"reservation\"\n        :id=\"String(reservation.Id)\"\n        class=\"ml-2\"\n      />\n\n      <a\n        v-if=\"isEmployee\"\n        @click=\"showSendMail = true\"\n        class=\"has-icon ml-2\"\n      >\n        <span class=\"icon is-small\">\n          <font-awesome-icon :icon=\"['fas', 'paper-plane']\" />\n        </span>\n        <span v-text=\"$t('Components.Reservation.ReservationMailLog.Icon_SendMail')\"></span>\n      </a>\n\n      <LinkDownload\n        type=\"reservation\"\n        :id=\"String(reservation.Id)\"\n        :fileName=\"$t('Components.Reservation.ReservationDetail.Label_ReservationType_Reservation') + '-' + reservation.Id\"\n        class=\"ml-2\"\n      />\n\n      <template v-if=\"!isDraft\">\n        <a\n          @click=\"setShowCancelReservation\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{\n            'has-text-grey is-disabled': isLockedCancel || reservation.StatusId === 3,\n          }\"\n        >\n          <span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'ban']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CancelReservation')\n          }}</span>\n        </a>\n\n        <a\n          v-if=\"isEmployee && !reservation.NoInvoice && hasInvoiceActivated\"\n          @click=\"setShowModalCreateInvoice\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{\n            'has-text-grey is-disabled': disableCreateInvoice,\n          }\"\n        ><span\n            class=\"icon\"\n            :class=\"{ 'is-loading': isCreatingInvoice }\"\n          >\n            <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CreateInvoice')\n          }}</span></a>\n\n        <a\n          @click=\"setShowChangeDate(false, 'changeDate')\"\n          :disabled=\"isSaving || isLocked\"\n          class=\"has-icon has-text-link ml-2\"\n          :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n        ><span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'calendar-alt']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_ChangeDate')\n          }}</span></a>\n        <a\n          @click=\"setShowCopyReservation\"\n          :disabled=\"isSaving || isDraft\"\n          :class=\"{ 'has-text-grey is-disabled': isLockedCopyDate }\"\n          class=\"has-icon has-text-link ml-2\"\n        ><span class=\"icon\">\n            <font-awesome-icon :icon=\"['fas', 'copy']\" />\n          </span>\n          <span>{{\n            $t('Components.Reservation.ReservationDetail.Icon_CopyReservation')\n          }}</span></a>\n      </template>\n    </div>\n\n    <div class=\"mb-6\">\n      <nav\n        class=\"navbar is-hidden-print\"\n        role=\"navigation\"\n        aria-label=\"main navigation\"\n      >\n        <div class=\"navbar-start\">\n          <div>\n            <div v-if=\"(reservation.Status === 'Request' || \n                        reservation.Status === 'Draft' || \n                        reservation.Status === 'AwaitingPoNumber' || \n                        reservation.Type === 'Proposal') && !reservation.Expiration\">\n              <div>\n                <a @click=\"setShowSetExpiration\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                  </span>\n                  <span>{{ $t('Components.Reservation.ReservationDetail.Label_SetExpiration') }}</span>\n                </a>\n              </div>\n\n            </div>\n\n            <div v-if=\"reservation.Expiration\">\n              <div v-if=\"reservation.Expiration.IsExpired\">\n                <span class=\"tag icon-text is-danger\">\n                  <span class=\"icon\">\n                    <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                  </span>\n                  <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_HasExpired') }}</span>\n                </span>\n\n                <div>\n                  <a\n                    @click=\"setShowSetExpiration\"\n                    class=\"ml-2 is-size-7\"\n                    v-if=\"!isLocked\"\n                  >\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                    </span>\n                    <span>{{ $t('Form.Control.Edit') }}</span>\n                  </a>\n\n                  <a\n                    @click=\"deleteExpiration\"\n                    class=\"ml-2 is-size-7\"\n                    v-if=\"!isLocked\"\n                  >\n                    <span class=\"icon has-text-danger\">\n                      <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                    </span>\n                    <span>{{ $t('Form.Control.Delete') }}</span>\n                  </a>\n                </div>\n              </div>\n              <div v-if=\"!reservation.Expiration.IsExpired\">\n                <div>\n                  <span class=\"tag icon-text is-warning\">\n                    <span class=\"icon\">\n                      <font-awesome-icon :icon=\"['fas', 'exclamation-triangle']\" />\n                    </span>\n                    <span>{{ $t('Components.Reservation.ReservationDetail.Label_ReservationType_' + reservation.Type) }} {{ $t('Components.Reservation.ReservationDetail.Label_ExpiresOn') }} <span class=\"has-text-weight-bold\">{{ reservation.Expiration.Date }} @ {{ reservation.Expiration.Minutes | minutesToTime }}</span></span>\n                  </span>\n\n                  <div>\n                    <a\n                      @click=\"setShowSetExpiration\"\n                      class=\"ml-2 is-size-7\"\n                      v-if=\"!isLocked\"\n                    >\n                      <span class=\"icon\">\n                        <font-awesome-icon :icon=\"['fas', 'edit']\" />\n                      </span>\n                      <span>{{ $t('Form.Control.Edit') }}</span>\n                    </a>\n                    <a\n                      @click=\"deleteExpiration\"\n                      class=\"ml-2 is-size-7\"\n                      v-if=\"!isLocked\"\n                    >\n                      <span class=\"icon has-text-danger\">\n                        <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n                      </span>\n                      <span>{{ $t('Form.Control.Delete') }}</span>\n                    </a>\n                  </div>\n                </div>\n              </div>\n            </div>\n          </div>\n        </div>\n        <div v-if=\"!isDraft\" class=\"navbar-end\">\n          <!-- Reservation PO required tag -->\n          <button\n            v-if=\"isEmployee\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationPoRequired\"\n            :class=\"{ 'is-warning is-light': reservation.PoRequired }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_PoRequired')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_PoRequired')\"\n            :disabled=\"isLocked\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.PoRequired\"\n                :icon=\"['fas', 'times']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.PoRequired\"\n                :icon=\"['far', 'tag']\"\n              />\n            </span>\n            <span v-if=\"reservation.PoRequired\">{{ $t('Components.Reservation.ReservationDetail.Icon_PoRequired') }}</span>\n            <span v-if=\"!reservation.PoRequired\">{{ $t('Components.Reservation.ReservationDetail.Icon_PoOptional') }}</span>\n          </button>\n\n          <!-- Reservation is taxable tag -->\n          <button\n            v-if=\"isEmployee\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationNoTax\"\n            :class=\"{ 'is-warning is-light': reservation.NoTax }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_Taxable')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_Taxable')\"\n            :disabled=\"isLocked\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.NoTax\"\n                :icon=\"['fas', 'times']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.NoTax\"\n                :icon=\"['fas', 'coins']\"\n              />\n            </span>\n            <span v-if=\"reservation.NoTax\">{{ $t('Components.Reservation.ReservationDetail.Icon_NonTaxable') }}</span>\n            <span v-if=\"!reservation.NoTax\">{{ $t('Components.Reservation.ReservationDetail.Icon_Taxable') }}</span>\n          </button>\n\n          <!-- Reservation private tag -->\n          <button\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"toggleReservationIsPrivate\"\n            :class=\"{ 'is-warning is-light': reservation.IsPrivate }\"\n            :title=\"$t('Components.Reservation.ReservationDetail.Label_Private')\"\n            :aria-label=\"$t('Components.Reservation.ReservationDetail.Label_Private')\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon\n                v-if=\"reservation.IsPrivate\"\n                :icon=\"['fas', 'eye-slash']\"\n              />\n              <font-awesome-icon\n                v-if=\"!reservation.IsPrivate\"\n                :icon=\"['fas', 'eye']\"\n              />\n            </span>\n            <span v-if=\"reservation.IsPrivate\">{{ $t('Components.Reservation.ReservationDetail.Icon_IsPrivate') }}</span>\n            <span v-if=\"!reservation.IsPrivate\">{{ $t('Components.Reservation.ReservationDetail.Icon_IsPublic') }}</span>\n          </button>\n\n          <!-- Reservation set tag -->\n          <button\n            v-if=\"reservation.ReservationSet.length > 0\"\n            class=\"button is-info is-light is-small ml-2\"\n            @click=\"setShowReservationSet\"\n          >\n            <span class=\"icon\">\n              <font-awesome-icon :icon=\"['fas', 'clone']\" />\n            </span>\n            <span>{{ $t('Components.Reservation.ReservationDetail.Icon_PartOfSet') }}</span>\n          </button>\n\n          <!-- Reservation Invoice Tag -->\n          <template v-if=\"hasInvoiceActivated\">\n            <button\n              class=\"button is-info is-light is-small ml-2\"\n              @click=\"setShowInvoiceSummary()\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n              </span>\n              <span v-if=\"reservation.HasInvoice > 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_InvoiceCreated') }}</span>\n              <span v-if=\"reservation.HasInvoice === 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_NoInvoice') }}</span>\n            </button>\n          </template>\n\n          <!-- Reservation proposal tag -->\n          <template v-if=\"reservation.MeetingtypeId === 1 && hasProposalActivated\">\n            <button\n              class=\"button is-info is-light is-small ml-2\"\n              @click=\"setShowProposalPreview\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'file-invoice']\" />\n              </span>\n              <span v-if=\"reservation.HasProposal > 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_Proposal') }} #{{ reservation.HasProposal }}</span>\n              <span v-if=\"reservation.HasProposal === 0\">{{ $t('Components.Reservation.ReservationDetail.Icon_NoProposal') }}</span>\n            </button>\n          </template>\n        </div>\n      </nav>\n\n      <div v-if=\"emptyDates.length > 0\">\n        <Message :message=\"'Empty dates are found in reservation'\" class=\"is-warning\" />\n      </div>\n\n      <ReservationFinalize\n        class=\"has-margin-top\"\n        v-if=\"showFinalizeReservation\"\n      />\n\n      <ReservationAcceptReject\n        class=\"has-margin-top\"\n        v-if=\"isEmployee && !isLocked\"\n        @accepted=\"reservationAccepted\"\n        @denied=\"reservationDenied\"\n      />\n\n      <div class=\"columns has-margin-top\">\n        <div class=\"column\">\n          <ReservationBasicData\n            :isLocked=\"isLocked\"\n            :isEmployee=\"isEmployee\"\n          />\n        </div>\n        <div class=\"column\">\n          <ReservationInvoiceAddress\n            :isLocked=\"isLocked\"\n            :isEmployee=\"isEmployee\"\n          />\n        </div>\n      </div>\n    </div>\n\n    <div class=\"mb-4\">\n      <div\n        v-if=\"reservation.Dates.length > 0\"\n        class=\"tabs is-boxed has-background-white-bis has-custom-scrollbar\"\n      >\n        <ul>\n          <template v-if=\"reservation.Dates.length > 1\">\n            <li :class=\"{ 'is-active' : !reservationDate }\">\n              <a\n                @click=\"setReservationDate(null)\"\n                class=\"\"\n              >{{ $t('Components.Reservation.ReservationDates.label_AllDates') }}</a>\n            </li>\n            <li\n              v-for=\"(date, index) in reservation.Dates\"\n              :key=\"index\"\n              :class=\"{ 'is-active' : isSelectedDate(date) }\"\n            >\n              <a @click=\"setReservationDate(date)\">{{ returnFormattedDate(date.Date) }}</a>\n            </li>\n          </template>\n          <li v-if=\"isEmployee && !isLocked\">\n            <a\n              @click=\"setShowAddDate(null)\"\n              class=\"has-icon has-text-link\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fa', 'plus']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_AddDay') }}</span>\n            </a>\n          </li>\n        </ul>\n      </div>\n    </div>\n\n    <div\n      v-for=\"(date, index) in resDates\"\n      :key=\"index+'_'+date.Date\"\n      :class=\"{'mt-6': index !== 0 }\"\n    >\n      <div class=\"mb-6\">\n        <div class=\"mb-2\">\n          <strong class=\"mr-3 is-size-3 title-date\">\n            <span>{{ returnFormattedDate(date.Date) }}</span>\n            <span\n              v-if=\"date.Status === 'Cancelled'\"\n              class=\"ml-2\"\n            >[{{ $t('ReservationStatus.status_' + date.Status) }}]</span>\n          </strong>\n          <template v-if=\"isEmployee && !isLocked\">\n            <!-- COPY DATE -->\n            <a\n              v-if=\"reservation.MeetingtypeId === 1\"\n              @click=\"setShowCopyDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'copy']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_CopyDate') }}</span>\n            </a>\n            <!-- CANCEL DATE -->\n            <a\n              v-if=\"date.Status !== 'Cancelled' && reservation.Dates.length > 1\"\n              @click=\"setShowCancelDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'copy']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_CancelDate') }}</span>\n            </a>\n            <!-- REVIVE DATE -->\n            <a\n              v-if=\"date.Status === 'Cancelled' && reservation.Dates.length > 1\"\n              @click=\"reviveReservationDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': isLocked }\"\n            >\n              <span class=\"icon\">\n                <font-awesome-icon :icon=\"['fas', 'heartbeat']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_ReviveDate') }}</span>\n            </a>\n            <!-- DELETE DATE -->\n            <a\n              v-if=\"reservation.MeetingtypeId === 1 && reservation.Dates.length > 1\"\n              @click=\"setShowDeleteDate(date)\"\n              class=\"ml-4 has-icon is-size-6\"\n              :class=\"{ 'has-text-grey is-disabled': reservation.Dates.length === 1 || isLocked }\"\n            >\n              <span\n                class=\"icon\"\n                :class=\"{ 'has-text-danger': !isLocked && reservation.Dates.length > 1 }\"\n              >\n                <font-awesome-icon :icon=\"['fas', 'trash-alt']\" />\n              </span>\n              <span>{{ $t('Components.Reservation.ReservationDates.label_DeleteDate') }}</span>\n            </a>\n          </template>\n        </div>\n        <div class=\"is-size-6 has-text-weight-normal\">{{ date.StartMinutes | minutesToTime }} - {{ date.EndMinutes | minutesToTime }}</div>\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 1\"\n      >\n        <ReservationPackages\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isEmployee=\"isEmployee\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 1\"\n      >\n        <ReservationMeetingspaces\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        class=\"mb-6\"\n        v-if=\"reservation.MeetingtypeId === 2\"\n      >\n        <ReservationWorkspaces\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isEmployee=\"isEmployee\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div class=\"mb-6\">\n        <ReservationOptions\n          :reservationDate=\"date\"\n          :reservation=\"reservation\"\n          :isLocked=\"isLocked\"\n        />\n      </div>\n\n      <div\n        v-if=\"reservation.Dates.length > 1\"\n        class=\"mb-6\"\n      >\n        <ReservationTotals\n          :reservation=\"reservation\"\n          :languageCulture=\"locationState.Settings.LanguageCulture\"\n          :reservationDate=\"date\"\n          :titleText=\"$t('Components.Reservation.ReservationDetail.Title_DateSubtotal')\"\n        />\n      </div>\n\n      <hr v-if=\"reservation.Dates.length > 1\" />\n    </div>\n\n    <ReservationTotals\n      v-if=\"!reservationDate\"\n      :reservation=\"reservation\"\n      :languageCulture=\"locationState.Settings.LanguageCulture\"\n      :titleText=\"$t('Components.Reservation.ReservationDetail.Title_ReservationTotal')\"\n    />\n  </div>\n</template>\n\n<script>\nimport { mapGetters, mapState, mapMutations, mapActions } from 'vuex'\nimport { EventBus } from '@/eventbus/event-bus'\nimport locationProvider from '@/providers/location'\nimport quoteProvider from '@/providers/quote'\nimport reservationProvider from '@/providers/reservation'\nimport { format, isAfter, parseISO } from 'date-fns'\nimport Message from '../UI/Message.vue'\n\nexport default {\n  name: 'reservationDetailComponent',\n\n  components: {\n    ChangeDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ChangeDate'),\n    CopyReservation: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/CopyReservation'),\n    Message: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/UI/Message'),\n    ModalCancelReservation: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCancelReservation'\n      ),\n    ModalCancelReservationDate: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCancelReservationDate'\n      ),\n    ModalCreateInvoice: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCreateInvoice'),\n    ReservationSet: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationSet'),\n    ReservationAcceptReject: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationAcceptReject'),\n    ReservationFinalize: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationFinalize'),\n    ReservationBasicData: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationBasicData'),\n    ReservationInvoiceAddress: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationInvoiceAddress'),\n    ReservationWorkspaces: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationWorkspaces'),\n    ReservationMeetingspaces: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationMeetingspaces'),\n    ReservationOptions: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationOptions'),\n    ReservationPackages: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationPackages'),\n    ReservationTotals: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ReservationTotals'),\n    IsPinned: () => import(/* webpackPrefetch: true */ /* webpackChunkName: \"reservation-detail\" */ '@/components/Pins/IsPinned'),\n    LinkPrint: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/UI/LinkPrint'\n      ),\n    ModalSendMail: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalSendMail'\n      ),\n    InvoiceSummary: () =>\n      import(\n        /* webpackChunkName: \"reservation-detail\" */ '@/components/Invoices/InvoiceSummary'\n      ),\n    LinkDownload: () => import('@/components/UI/LinkDownload'),\n    ProposalDetail: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Proposals/BookerPreview/ProposalDetail.vue'),\n\n    ModalAddDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalAddDate'),\n    CopyDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/CopyDate'),\n    //ModalCopyDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalCopyDate'),\n    ModalDeleteDate: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalDeleteDate'),\n    ModalSetExpiration: () => import(/* webpackChunkName: \"reservation-detail\" */ '@/components/Reservations/ModalSetExpiration')\n  },\n\n  props: {\n    locationId: {\n      default: 0,\n      type: Number,\n    },\n\n    reservationKey: {\n      default: '',\n      type: String,\n    },\n\n    isShownInDrawer: {\n      type: Boolean,\n      default: false\n    }\n  },\n\n  data() {\n    return {\n      drawerTitle: '',\n      hideDatePicker: false,\n      isCreatingInvoice: false,\n      //isEmployee: true,\n      isSaving: false,\n      itemId: 0,\n      mailType: '',\n      modalTitle: '',\n      selectedOption: null,\n      selectedSpace: null,\n      selectedDate: null,\n      showAddCompany: false,\n      showAddProfile: false,\n      showCompanySummary: false,\n      showModal: false,\n      showModalCancelReservation: false,\n      showModalCreateInvoice: false,\n      showReservationSet: false,\n      showSendMail: false,\n      showInvoiceSummary: false,\n      showSideDrawer: false,\n      showAddPackage: false,\n      showAddDate: false,\n      showCopyDate: false,\n      showCopyReservation: false,\n      showChangeDate: false,\n      showCancelDate: false,\n      showDeleteDate: false,\n      showSetExpiration: false,\n\n      selectedReservationDate: null,\n\n      showProposalPreview: false,\n      drawerActionType: ''\n    }\n  },\n\n  computed: {\n    ...mapGetters('menuStore', ['hasEventActivated', 'hasInvoiceActivated', 'hasProposalActivated']),\n    ...mapState('reservationStore', ['reservation', 'reservationDate']),\n    ...mapGetters('reservationStore', ['isDraft']),\n    ...mapState('locationStore', ['locationState']),\n    ...mapState('profileStore', ['profile']),\n\n    isBooker() {\n      let booker = false;\n\n      if (this.reservation && this.profile && this.reservation.ProfileId === this.profile.Id) {\n        booker = true;\n      }\n\n      return booker;\n    },\n\n    isEmployee() {\n      let employee = false;\n\n      if (this.locationState && this.locationState.LocationAccountRights) {\n        employee = true;\n      }\n\n      return employee;\n    },\n\n    isLocked() {\n      let locked = false;\n\n      if (this.locationId > 0) {\n        if (\n          this.isCreatingInvoice ||\n          this.reservation.Type === 'Draft' ||\n          this.reservation.HasInvoice > 0 ||\n          this.reservation.StatusId === 3 ||\n          (this.reservation.HasProposal > 0\n            && this.reservation.ProposalStatus === 'WaitingForApproval')\n        ) {\n          locked = true\n        }\n      }\n\n      const editDatePassed = isAfter(new Date(), parseISO(this.reservation.BookerEditableUntil));\n\n      if (this.locationId === 0) {\n        if (\n          this.reservation &&\n          (this.reservation.HasInvoice > 0 ||\n            this.reservation.Type === 'Draft' ||\n            this.reservation.StatusId === 3 ||\n            editDatePassed ||\n            (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n            (this.reservation.HasProposal > 0\n              && this.reservation.ProposalStatus === 'WaitingForApproval'))\n        ) {\n          return true\n        }\n      }\n\n      return locked\n    },\n\n    isLockedCancel() {\n      let isLocked = false;\n\n      if (this.locationId > 0) {\n        if (\n          this.isCreatingInvoice ||\n          this.reservation.Type === 'Draft' ||\n          this.reservation.HasInvoice > 0 ||\n          this.reservation.StatusId === 3 ||\n          (this.reservation.HasProposal > 0\n            && this.reservation.ProposalStatus === 'WaitingForApproval') ||\n          (this.reservation.ChannelId === 1009 // THIS IS A FUCKIGN UGLY HACK TO LOCK CANCEL FOR MS RFP RESERVATIONS\n            && this.reservation.IsBackend) // AS LONG AS MS DOES NOT ALLOW CANCELLATION OF RFP RESERVATIONS, WE LOCK IT FOR NOW\n\n        ) {\n          isLocked = true;\n        }\n      }\n\n      const editDatePassed = isAfter(new Date(), parseISO(this.reservation.BookerEditableUntil));\n\n      if (this.locationId === 0) {\n        if (\n          this.reservation &&\n          (this.reservation.HasInvoice > 0 ||\n            this.reservation.Type === 'Draft' ||\n            this.reservation.StatusId === 3 ||\n            editDatePassed ||\n            (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n            (this.reservation.HasProposal > 0\n              && this.reservation.ProposalStatus === 'WaitingForApproval'))\n        ) {\n          return true;\n        }\n      }\n\n      return isLocked;\n    },\n\n    isLockedCopyDate() {\n      return (!this.isEmployee && this.reservation.MeetingtypeId !== 1) ||\n        this.reservation.Type === 'Draft' ||\n        this.reservation.Type === 'Request' ||\n        this.reservation.Status === 'Cancelled' ||\n        (this.reservation.Expiration && this.reservation.Expiration.IsExpired) ||\n        (this.reservation.HasProposal > 0 && this.reservation.ProposalStatus === 'WaitingForApproval')\n    },\n\n    showFinalizeReservation() {\n      let show = false;\n\n      if (this.reservation &&\n        this.reservation.Type === 'Reservation' &&\n        this.reservation.Status === 'Optional' ||\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0) &&\n        !this.isLocked) {\n        show = true;\n      }\n\n      return show;\n    },\n\n    disableCreateInvoice() {\n      let disable = false\n\n      if (this.isCreatingInvoice ||\n        this.NoInvoice ||\n        this.reservation.HasInvoice > 0 ||\n        this.reservation.Status === 'Option' ||\n        this.reservation.Status === 'AwaitingPoNumber' ||\n        (this.reservation.PoRequired && this.reservation.InvoiceAddress.PoNumber.length === 0) ||\n        this.reservation.Type === 'Draft') {\n        disable = true;\n      }\n\n      return disable\n    },\n\n    resDates() {\n      let dates = [];\n\n      if (this.reservation.Dates) {\n        dates = this.reservation.Dates;\n      }\n\n      if (this.reservationDate) {\n        dates = dates.filter(d => d.Date === this.reservationDate.Date)\n      }\n\n      return dates;\n    },\n\n    emptyDates() {\n      let dates = [];\n\n      for (let i = 0; i < this.reservation.Dates.length; i++) {\n        let resDate = this.reservation.Dates[i];\n\n        if (resDate.Spaces.length === 0 &&\n          resDate.Options.length === 0 &&\n          resDate.Packages.length === 0) {\n          dates.push(resDate)\n        }\n      }\n\n      return dates;\n    },\n\n    spacesTotalSeats() {\n      let self = this\n      let total = 0\n\n      if (self.reservation && self.reservation !== null) {\n        for (let i = 0; i < this.reservation.Dates.length; i++) {\n          let resDate = this.reservation.Dates[i];\n\n          for (let j = 0; j < resDate.Spaces.length; j++) {\n            total = total + Number(resDate.Spaces[j].Seats)\n          }\n        }\n      }\n      return total\n    }\n  },\n\n  watch: {\n    spacesTotalSeats: function(newValue, oldValue) {\n      let self = this\n\n      if (self.reservation && self.reservation !== null) {\n        if (self.reservation.TotalSeats === oldValue) {\n          self.reservation.TotalSeats = Number(newValue)\n        }\n      }\n    },\n  },\n\n  created() {\n    if (!this.reservation || this.reservation.Key !== this.reservationKey) {\n      this.getReservationData();\n    }\n\n    EventBus.$on('dateDeleted', () => {\n      this.selectedDate = null\n    });\n\n    EventBus.$on('addToSet', (set) => {\n      this.reservation.ReservationSet.push(set)\n      this.updateReservationStore(this.reservation)\n    });\n\n    EventBus.$on('cancelled', (reservation) => {\n      let t = setTimeout(() => {\n\n        if (this.isEmployee) {\n          this.setShowSendMail('LocationClient_ReservationCancel');\n        }\n        clearTimeout(t);\n      }, 500);\n    });\n\n    EventBus.$on('showMoveSpace', () => {\n      this.setShowChangeDate(true, 'changeSpace');\n    });\n\n    EventBus.$on('reservationMoved', () => {\n      this.hideDrawer();\n    });\n\n    EventBus.$on('dateCopied', () => {\n      this.hideDrawer();\n    });\n\n\n    EventBus.$on('newInvoiceCreated', this.callbackInvoiceCreated)\n    EventBus.$on('invoiceRejected', this.callbackInvoiceRejected)\n    EventBus.$on('invoiceCredited', this.callbackInvoiceCredited)\n  },\n\n  beforeDestroy() {\n    this.selectedDate = null;\n    this.setReservationDate(null);\n\n    EventBus.$off('showMoveSpace');\n    EventBus.$off('dateDeleted');\n    EventBus.$off('addToSet');\n    EventBus.$off('cancelled');\n    EventBus.$off('reservationMoved');\n    EventBus.$off('dateCopied');\n    EventBus.$off('newInvoiceCreated', this.callbackInvoiceCreated)\n    EventBus.$off('invoiceRejected', this.callbackInvoiceRejected);\n    EventBus.$off('invoiceCredited', this.callbackInvoiceCredited);\n  },\n\n  methods: {\n    ...mapActions('reservationStore', ['refreshReservation']),\n    ...mapMutations('reservationStore', ['setReservation', 'setReservationDate']),\n\n    callbackInvoiceCreated(invoice) {\n      if (this.isShownInDrawer) {\n        let t = setTimeout(() => {\n          this.setShowInvoiceSummary(invoice)\n          clearTimeout(t)\n        }, 200)\n      }\n    },\n\n    callbackInvoiceRejected(invoice) {\n      if (invoice.isDeposit) {\n        this.reservation.HasDepositInvoice = 0\n      }\n\n      if (!invoice.isDeposit) {\n        this.reservation.HasInvoice = 0\n      }\n\n      // Update store\n      this.setReservation(this.reservation)\n      this.hideDrawer()\n    },\n\n    callbackInvoiceCredited(invoice) {\n      if (invoice.isDeposit) {\n        this.reservation.HasDepositInvoice = 0\n      }\n\n      if (!invoice.isDeposit) {\n        this.reservation.HasInvoice = 0\n      }\n      this.hideDrawer()\n    },\n\n    returnFormattedDate(dateString) {\n      if (!dateString) return '';\n\n      let _locale = this.$dateTimeHelper.getDateFnsLocale(this.$i18n.locale);\n      const date = parseISO(dateString);\n      return format(parseISO(dateString), 'eeee dd MMMM yyyy', {\n        locale: _locale\n      });\n    },\n\n    isSelectedDate(date) {\n      let isDate = false;\n\n      if (this.reservationDate) {\n        isDate = this.reservationDate.Date === date.Date\n      }\n\n      return isDate\n    },\n\n    getReservationData() {\n      let self = this\n\n      reservationProvider.methods\n        .getReservationByKey(self.reservationKey)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => {\n          self.pageLoadReady = true\n        })\n    },\n\n    getLocationLanguageIds() {\n      locationProvider.methods\n        .getLocationLanguageIds(this.reservation.LocationId)\n        .then((response) => {\n          if (response.status === 200) {\n            this.languageIds = response.data\n          }\n        })\n        .catch((err) => { })\n    },\n\n    reviveReservationDate(date) {\n      if (!this.isSaving) {\n        this.isSaving = true;\n\n        reservationProvider.methods\n          .reviveReservationDate(this.reservation.Key, date.Date)\n          .then((response) => {\n            if (response.status === 200) {\n              // Update reservation store\n              this.setReservation(response.data)\n\n              // Send message to be shown as toast on page\n              EventBus.$emit('showToast', {\n                type: 'info',\n                message: this.$t('General.Toast_ReservationUpdated'),\n              })\n            }\n          })\n          .catch((error) => {\n            this.isSavingError = true\n          })\n          .finally(() => {\n            this.isSaving = false\n          })\n      }\n    },\n\n    setShowAddDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      if (resDate === null) {\n        resDate = this.reservation.Dates[this.reservation.Dates.length - 1]\n      }\n      this.showAddDate = true;\n      this.selectedDate = resDate;\n    },\n\n    setShowDeleteDate(resDate) {\n      if (this.reservation.Dates.length === 1 || this.isLocked) {\n        return;\n      }\n\n      this.showDeleteDate = true\n      this.selectedDate = resDate\n    },\n\n\n    incomingReservationUpdate(incoming) {\n      let self = this\n\n      self.reservation.HasDepositInvoice = incoming.HasDepositInvoice\n      self.reservation.HasInvoice = incoming.HasInvoice\n\n      // Update store\n      self.updateReservationStore(self.reservation)\n    },\n\n    deleteExpiration() {\n      reservationProvider.methods\n        .deleteReservationExpiration(this.reservation.Key)\n        .then(response => {\n          if (response.status === 200) {\n            this.setReservation(response.data)\n          }\n        })\n    },\n\n    async getReservationPdf() {\n      const resResponse = await reservationProvider.methods\n        .getReservationPdf(this.reservation.Id)\n        .catch((err) => { })\n      return resResponse\n    },\n\n    toggleReservationIsPrivate() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationIsPrivate(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    toggleReservationNoTax() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationNoTax(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    toggleReservationPoRequired() {\n      let self = this\n\n      reservationProvider.methods\n        .toggleReservationPoRequired(this.reservation.Key)\n        .then((response) => {\n          if (response.status === 200) {\n            // Update store\n            self.updateReservationStore(response.data)\n          }\n        })\n        .catch((err) => { })\n        .finally(() => { })\n    },\n\n    dataURItoBlob(dataURI) {\n      const byteString = atob(dataURI.split(',')[1])\n      const mimeString = dataURI.split(',')[0].split(':')[1].split(';')[0]\n\n      // write the bytes of the string to an ArrayBuffer\n      const ab = new ArrayBuffer(byteString.length)\n      const ia = new Uint8Array(ab)\n      for (let i = 0; i < byteString.length; i++) {\n        ia[i] = byteString.charCodeAt(i)\n      }\n\n      // write the ArrayBuffer to a blob, and you're done\n      const bb = new Blob([ab], { type: mimeString })\n      return bb\n    },\n\n    reservationAccepted() {\n      this.setShowSendMail('LocationClient_ReservationAccepted')\n    },\n\n    reservationDenied() {\n      this.setShowSendMail('LocationClient_ReservationDenied')\n    },\n\n    setSelectedDate(date) {\n      this.selectedDate = date\n    },\n\n    setShowAddDeskspace() {\n      this.modalTitle = 'Add deskspace'\n      this.setVisibleSideBarItem('addDeskspace')\n    },\n\n    setShowModalCreateInvoice() {\n      if (!this.disableCreateInvoice) {\n        this.showModalCreateInvoice = true\n      }\n    },\n\n    setShowCancelReservation() {\n      if (!this.isLockedCancel && this.reservation.StatusId !== 3) {\n        this.showModalCancelReservation = true;\n      }\n    },\n\n    setShowAddPackage() {\n      this.showAddPackage = true\n    },\n\n\n    setShowSetExpiration() {\n      this.showSetExpiration = true\n    },\n\n    setVisibleModalItem(item) {\n      this.showModal = item.length > 0\n    },\n\n    setShowSendMail(mailType) {\n      this.showSendMail = true\n      this.mailType = mailType\n    },\n\n    setShowCancelDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      this.showCancelDate = true;\n      //this.showSideDrawer = true;\n      this.selectedDate = resDate;\n    },\n\n    hideModal() {\n      this.showModalCancelReservation = false;\n      this.showModalCreateInvoice = false;\n      this.showSetExpiration = false;\n      this.showSendMail = false;\n      this.showAddPackage = false;\n      this.showAddDate = false;\n      this.showDeleteDate = false;\n      this.showCancelDate = false;\n\n      this.itemId = 0\n      this.drawerTitle = ''\n      this.mailType = ''\n      this.resDate = null;\n      this.selectedDate = null;\n\n      this.setVisibleModalItem('')\n    },\n\n    roundToZero(num) {\n      let self = this\n      return +(Math.round(self.roundToTwo(num) + 'e+0') + 'e-0')\n    },\n\n    roundToTwo(num) {\n      return +(Math.round(num + 'e+2') + 'e-2')\n    },\n\n    goToProposal(quoteId) {\n      this.$router.push({\n        name: `proposals-detail`,\n        params: { proposalId: quoteId },\n      })\n    },\n\n    createQuote() {\n      let self = this\n      quoteProvider.methods\n        .createQuoteFromReservation(self.reservation.Id)\n        .then((response) => {\n          if (response.status === 200) {\n            // self.reservation.QuoteId = response.data.Id\n            self.reservation.QuoteId = response.data.Id\n\n            // Update store\n            self.updateReservationStore(self.reservation)\n          }\n        })\n        .catch((err) => { })\n    },\n\n    /**\n     * Update reservation state and original reservation\n     */\n    updateReservationStore(data) {\n      this.setReservation(data);\n    },\n\n    setShowInvoiceSummary(newInvoice = null) {\n      if (newInvoice) {\n        this.itemId = newInvoice.Id\n        this.drawerTitle = this.$t(\n          'Components.Invoices.InvoiceList.DrawerTitle_InvoiceDetail'\n        );\n        this.showSideDrawer = true;\n        this.showInvoiceSummary = true;\n        return\n      }\n\n      if (this.reservation.HasInvoice === 0) {\n        EventBus.$emit('showReservationInvoice');\n        return\n      }\n\n      this.itemId = this.reservation.HasInvoice;\n      this.drawerTitle = this.$t(\n        'Components.Invoices.InvoiceList.DrawerTitle_InvoiceDetail'\n      );\n      this.showSideDrawer = true;\n      this.showInvoiceSummary = true;\n    },\n\n    setShowProposalPreview() {\n      if (this.reservation.HasProposal === 0) {\n        EventBus.$emit('showReservationProposal');\n      }\n      else {\n        this.showSideDrawer = true;\n        this.showProposalPreview = true;\n      }\n    },\n\n    setShowChangeDate(hideDatePicker, action = '') {\n      if (this.isLocked) {\n        return;\n      }\n\n      let _drawerTitle = ''\n      if (action === 'changeSpace' && this.reservation.MeetingtypeId === 1) {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title_ChangeSpace')\n      }\n      if (action === 'changeSpace' && this.reservation.MeetingtypeId === 2) {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title_ChangeWorkspace')\n      }\n\n      if (action === 'changeDate') {\n        _drawerTitle = this.$t('Components.Reservation.ModalChangeDate.Main_Title')\n      }\n\n      this.drawerActionType = action\n      this.drawerTitle = _drawerTitle\n      this.hideDatePicker = hideDatePicker;\n      this.showChangeDate = true;\n      this.showSideDrawer = true;\n    },\n\n    setShowCopyDate(resDate) {\n      if (this.isLocked) {\n        return;\n      }\n\n      this.drawerTitle = this.$t('Components.Reservation.CopyDate.title_CopyDay')\n      this.showCopyDate = true;\n      this.showSideDrawer = true;\n      this.selectedDate = resDate;\n    },\n\n    setShowCopyReservation() {\n      if(this.isLockedCopyDate) {\n        return\n      }\n      \n      this.drawerTitle = this.$t('Components.Reservation.CopyReservation.title')\n      this.showCopyReservation = true;\n      this.showSideDrawer = true;\n    },\n\n    setShowReservationSet() {\n      this.showReservationSet = true;\n      this.showSideDrawer = true;\n    },\n\n    hideDrawer() {\n      this.itemId = 0;\n      this.drawerTitle = '';\n      this.showSideDrawer = false;\n      this.showInvoiceSummary = false;\n      this.showProposalPreview = false;\n      this.showChangeDate = false;\n      this.showCopyDate = false;\n      this.showCopyReservation = false;\n      this.showReservationSet = false;\n      this.drawerActionType = ''\n    },\n  },\n}\n</script>\n\n<style lang=\"sass\" scoped>\n.proposalDetail\n  :deep(.section)\n    padding-inline: 0 !important\n\n.title-date\n  &:first-letter\n    text-transform: uppercase\n</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!./ReservationDetail.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!./ReservationDetail.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReservationDetail.vue?vue&type=template&id=63f5b5ed&scoped=true\"\nimport script from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nexport * from \"./ReservationDetail.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReservationDetail.vue?vue&type=style&index=0&id=63f5b5ed&prod&lang=sass&scoped=true\"\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  \"63f5b5ed\",\n  null\n  \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ReservationDetail.vue?vue&type=style&index=0&id=63f5b5ed&prod&lang=sass&scoped=true\""],"sourceRoot":""}