{"version":3,"file":"js/app.8c01502e.js","mappings":"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","sources":["webpack://frontend-fairtix/./src/App.vue","webpack://frontend-fairtix/./src/layouts/Default.vue","webpack://frontend-fairtix/src/layouts/Default.vue","webpack://frontend-fairtix/./src/layouts/Default.vue?7ede","webpack://frontend-fairtix/./src/layouts/Default.vue?74e3","webpack://frontend-fairtix/./src/layouts/Shop.vue","webpack://frontend-fairtix/./src/api/user.js","webpack://frontend-fairtix/./src/pages/Login.vue","webpack://frontend-fairtix/src/pages/Login.vue","webpack://frontend-fairtix/./src/pages/Login.vue?20a0","webpack://frontend-fairtix/./src/pages/Login.vue?a178","webpack://frontend-fairtix/./src/pages/Signup.vue","webpack://frontend-fairtix/./src/functions.js","webpack://frontend-fairtix/src/pages/Signup.vue","webpack://frontend-fairtix/./src/pages/Signup.vue?e85c","webpack://frontend-fairtix/./src/pages/Signup.vue?708c","webpack://frontend-fairtix/./src/pages/Dashboard.vue","webpack://frontend-fairtix/./src/pages/NormalDashboard.vue","webpack://frontend-fairtix/src/pages/NormalDashboard.vue","webpack://frontend-fairtix/./src/pages/NormalDashboard.vue?d98c","webpack://frontend-fairtix/./src/pages/NormalDashboard.vue?da20","webpack://frontend-fairtix/./src/pages/CustomerSupportDashboard.vue","webpack://frontend-fairtix/src/pages/CustomerSupportDashboard.vue","webpack://frontend-fairtix/./src/pages/CustomerSupportDashboard.vue?1f6f","webpack://frontend-fairtix/./src/pages/CustomerSupportDashboard.vue?9938","webpack://frontend-fairtix/src/pages/Dashboard.vue","webpack://frontend-fairtix/./src/pages/Dashboard.vue?40e4","webpack://frontend-fairtix/./src/pages/Dashboard.vue?251b","webpack://frontend-fairtix/./src/pages/Companies.vue","webpack://frontend-fairtix/src/pages/Companies.vue","webpack://frontend-fairtix/./src/pages/Companies.vue?9d40","webpack://frontend-fairtix/./src/pages/Companies.vue?f446","webpack://frontend-fairtix/./src/pages/ManageCompany.vue","webpack://frontend-fairtix/./src/components/DateTimePicker.vue","webpack://frontend-fairtix/src/components/DateTimePicker.vue","webpack://frontend-fairtix/./src/components/DateTimePicker.vue?787d","webpack://frontend-fairtix/./src/components/DateTimePicker.vue?cb8c","webpack://frontend-fairtix/src/pages/ManageCompany.vue","webpack://frontend-fairtix/./src/pages/ManageCompany.vue?0fab","webpack://frontend-fairtix/./src/pages/ManageCompany.vue?0b77","webpack://frontend-fairtix/./src/pages/ManageCompanyLayout.vue","webpack://frontend-fairtix/src/pages/ManageCompanyLayout.vue","webpack://frontend-fairtix/./src/pages/ManageCompanyLayout.vue?60d6","webpack://frontend-fairtix/./src/pages/ManageCompanyLayout.vue?c8e7","webpack://frontend-fairtix/./src/pages/Events.vue","webpack://frontend-fairtix/./src/components/StatusLabel.vue","webpack://frontend-fairtix/src/components/StatusLabel.vue","webpack://frontend-fairtix/./src/components/StatusLabel.vue?6640","webpack://frontend-fairtix/./src/components/StatusLabel.vue?610d","webpack://frontend-fairtix/src/pages/Events.vue","webpack://frontend-fairtix/./src/pages/Events.vue?677c","webpack://frontend-fairtix/./src/pages/Events.vue?8f6d","webpack://frontend-fairtix/./src/pages/ManageEvent.vue","webpack://frontend-fairtix/./src/components/EventNav.vue","webpack://frontend-fairtix/src/components/EventNav.vue","webpack://frontend-fairtix/./src/components/EventNav.vue?59e7","webpack://frontend-fairtix/./src/components/EventNav.vue?481a","webpack://frontend-fairtix/./src/components/CountrySelection.vue","webpack://frontend-fairtix/src/components/CountrySelection.vue","webpack://frontend-fairtix/./src/components/CountrySelection.vue?a1ec","webpack://frontend-fairtix/./src/components/CountrySelection.vue?4d22","webpack://frontend-fairtix/src/pages/ManageEvent.vue","webpack://frontend-fairtix/./src/pages/ManageEvent.vue?01de","webpack://frontend-fairtix/./src/pages/ManageEvent.vue?5a21","webpack://frontend-fairtix/./src/pages/EventProducts.vue","webpack://frontend-fairtix/src/pages/EventProducts.vue","webpack://frontend-fairtix/./src/pages/EventProducts.vue?5808","webpack://frontend-fairtix/./src/pages/EventProducts.vue?c3c0","webpack://frontend-fairtix/./src/pages/EventsOverview.vue","webpack://frontend-fairtix/./src/components/PosCard.vue","webpack://frontend-fairtix/src/components/PosCard.vue","webpack://frontend-fairtix/./src/components/PosCard.vue?03ab","webpack://frontend-fairtix/./src/components/PosCard.vue?6a46","webpack://frontend-fairtix/src/pages/EventsOverview.vue","webpack://frontend-fairtix/./src/pages/EventsOverview.vue?c9d4","webpack://frontend-fairtix/./src/pages/EventsOverview.vue?33c3","webpack://frontend-fairtix/./src/pages/ViewPointOfSale.vue","webpack://frontend-fairtix/./src/components/ProductList.vue","webpack://frontend-fairtix/./src/components/PosNumberInput.vue","webpack://frontend-fairtix/src/components/PosNumberInput.vue","webpack://frontend-fairtix/./src/components/PosNumberInput.vue?d47f","webpack://frontend-fairtix/./src/components/PosNumberInput.vue?bc2f","webpack://frontend-fairtix/src/components/ProductList.vue","webpack://frontend-fairtix/./src/components/ProductList.vue?2a41","webpack://frontend-fairtix/./src/components/ProductList.vue?f507","webpack://frontend-fairtix/./src/components/GtmPageView.vue","webpack://frontend-fairtix/src/components/GtmPageView.vue","webpack://frontend-fairtix/./src/components/GtmPageView.vue?02df","webpack://frontend-fairtix/./src/components/GtmPageView.vue?eb57","webpack://frontend-fairtix/./src/components/PosCartPlaceOrder.vue","webpack://frontend-fairtix/src/components/PosCartPlaceOrder.vue","webpack://frontend-fairtix/./src/components/PosCartPlaceOrder.vue?61ee","webpack://frontend-fairtix/./src/components/PosCartPlaceOrder.vue?7b0f","webpack://frontend-fairtix/src/pages/ViewPointOfSale.vue","webpack://frontend-fairtix/./src/pages/ViewPointOfSale.vue?dbeb","webpack://frontend-fairtix/./src/pages/ViewPointOfSale.vue?384b","webpack://frontend-fairtix/./src/pages/EventPointsOfSale.vue","webpack://frontend-fairtix/./src/components/PosProduct.vue","webpack://frontend-fairtix/src/components/PosProduct.vue","webpack://frontend-fairtix/./src/components/PosProduct.vue?100c","webpack://frontend-fairtix/./src/components/PosProduct.vue?4eb2","webpack://frontend-fairtix/./src/components/QrCode.vue","webpack://frontend-fairtix/src/components/QrCode.vue","webpack://frontend-fairtix/./src/components/QrCode.vue?ff39","webpack://frontend-fairtix/./src/components/QrCode.vue?bcb8","webpack://frontend-fairtix/src/pages/EventPointsOfSale.vue","webpack://frontend-fairtix/./src/pages/EventPointsOfSale.vue?5647","webpack://frontend-fairtix/./src/pages/EventPointsOfSale.vue?50d2","webpack://frontend-fairtix/./src/pages/EventTimeslots.vue","webpack://frontend-fairtix/src/pages/EventTimeslots.vue","webpack://frontend-fairtix/./src/pages/EventTimeslots.vue?a637","webpack://frontend-fairtix/./src/pages/EventTimeslots.vue?2f94","webpack://frontend-fairtix/./src/pages/EventCustomerInformation.vue","webpack://frontend-fairtix/src/pages/EventCustomerInformation.vue","webpack://frontend-fairtix/./src/pages/EventCustomerInformation.vue?6e6c","webpack://frontend-fairtix/./src/pages/EventCustomerInformation.vue?3360","webpack://frontend-fairtix/./src/pages/Discountcodes.vue","webpack://frontend-fairtix/./src/components/DiscountcodeForm.vue","webpack://frontend-fairtix/src/components/DiscountcodeForm.vue","webpack://frontend-fairtix/./src/components/DiscountcodeForm.vue?cf9c","webpack://frontend-fairtix/./src/components/DiscountcodeForm.vue?61b6","webpack://frontend-fairtix/src/pages/Discountcodes.vue","webpack://frontend-fairtix/./src/pages/Discountcodes.vue?6a49","webpack://frontend-fairtix/./src/pages/Discountcodes.vue?fe94","webpack://frontend-fairtix/./src/pages/OrderOverview.vue","webpack://frontend-fairtix/./src/components/DatePicker.vue","webpack://frontend-fairtix/src/components/DatePicker.vue","webpack://frontend-fairtix/./src/components/DatePicker.vue?2afa","webpack://frontend-fairtix/./src/components/DatePicker.vue?f309","webpack://frontend-fairtix/src/pages/OrderOverview.vue","webpack://frontend-fairtix/./src/pages/OrderOverview.vue?ec4f","webpack://frontend-fairtix/./src/pages/OrderOverview.vue?05ae","webpack://frontend-fairtix/./src/pages/OrderDetails.vue","webpack://frontend-fairtix/./src/components/OrderDetailsRefund.vue","webpack://frontend-fairtix/src/components/OrderDetailsRefund.vue","webpack://frontend-fairtix/./src/components/OrderDetailsRefund.vue?6634","webpack://frontend-fairtix/./src/components/OrderDetailsRefund.vue?8c29","webpack://frontend-fairtix/src/pages/OrderDetails.vue","webpack://frontend-fairtix/./src/pages/OrderDetails.vue?4fcf","webpack://frontend-fairtix/./src/pages/OrderDetails.vue?cd35","webpack://frontend-fairtix/./src/pages/ScannerOverview.vue","webpack://frontend-fairtix/src/pages/ScannerOverview.vue","webpack://frontend-fairtix/./src/pages/ScannerOverview.vue?57fc","webpack://frontend-fairtix/./src/pages/ScannerOverview.vue?bd9b","webpack://frontend-fairtix/./src/pages/ScanOperationOverview.vue","webpack://frontend-fairtix/src/pages/ScanOperationOverview.vue","webpack://frontend-fairtix/./src/pages/ScanOperationOverview.vue?92a7","webpack://frontend-fairtix/./src/pages/ScanOperationOverview.vue?ef55","webpack://frontend-fairtix/./src/pages/ScanOperationManage.vue","webpack://frontend-fairtix/src/pages/ScanOperationManage.vue","webpack://frontend-fairtix/./src/pages/ScanOperationManage.vue?50b6","webpack://frontend-fairtix/./src/pages/ScanOperationManage.vue?c198","webpack://frontend-fairtix/./src/pages/ClaimTicket.vue","webpack://frontend-fairtix/./src/components/CustomerForm.vue","webpack://frontend-fairtix/./src/components/MaterialInput.vue","webpack://frontend-fairtix/src/components/MaterialInput.vue","webpack://frontend-fairtix/./src/components/MaterialInput.vue?ecf5","webpack://frontend-fairtix/./src/components/MaterialInput.vue?2bdf","webpack://frontend-fairtix/src/components/CustomerForm.vue","webpack://frontend-fairtix/./src/components/CustomerForm.vue?2462","webpack://frontend-fairtix/./src/components/CustomerForm.vue?7089","webpack://frontend-fairtix/./src/components/CustomerInformationForm.vue","webpack://frontend-fairtix/src/components/CustomerInformationForm.vue","webpack://frontend-fairtix/./src/components/CustomerInformationForm.vue?ad9f","webpack://frontend-fairtix/./src/components/CustomerInformationForm.vue?eee9","webpack://frontend-fairtix/src/pages/ClaimTicket.vue","webpack://frontend-fairtix/./src/pages/ClaimTicket.vue?09a6","webpack://frontend-fairtix/./src/pages/ClaimTicket.vue?b0a8","webpack://frontend-fairtix/./src/pages/TicketClaimed.vue","webpack://frontend-fairtix/src/pages/TicketClaimed.vue","webpack://frontend-fairtix/./src/pages/TicketClaimed.vue?ab2e","webpack://frontend-fairtix/./src/pages/TicketClaimed.vue?8528","webpack://frontend-fairtix/./src/pages/OrderEnterPersonalDetails.vue","webpack://frontend-fairtix/./src/components/OrderTimer.vue","webpack://frontend-fairtix/src/components/OrderTimer.vue","webpack://frontend-fairtix/./src/components/OrderTimer.vue?0c05","webpack://frontend-fairtix/./src/components/OrderTimer.vue?40c4","webpack://frontend-fairtix/src/pages/OrderEnterPersonalDetails.vue","webpack://frontend-fairtix/./src/pages/OrderEnterPersonalDetails.vue?0880","webpack://frontend-fairtix/./src/pages/OrderEnterPersonalDetails.vue?cb8b","webpack://frontend-fairtix/./src/pages/OrderSelectTimeslot.vue","webpack://frontend-fairtix/src/pages/OrderSelectTimeslot.vue","webpack://frontend-fairtix/./src/pages/OrderSelectTimeslot.vue?a6b9","webpack://frontend-fairtix/./src/pages/OrderSelectTimeslot.vue?a9a1","webpack://frontend-fairtix/./src/pages/OrderSelectPaymentMethod.vue","webpack://frontend-fairtix/./src/components/Cart.vue","webpack://frontend-fairtix/src/components/Cart.vue","webpack://frontend-fairtix/./src/components/Cart.vue?ad90","webpack://frontend-fairtix/./src/components/Cart.vue?12ba","webpack://frontend-fairtix/src/pages/OrderSelectPaymentMethod.vue","webpack://frontend-fairtix/./src/pages/OrderSelectPaymentMethod.vue?6b6b","webpack://frontend-fairtix/./src/pages/OrderSelectPaymentMethod.vue?5758","webpack://frontend-fairtix/./src/pages/OrderAdditionalProducts.vue","webpack://frontend-fairtix/src/pages/OrderAdditionalProducts.vue","webpack://frontend-fairtix/./src/pages/OrderAdditionalProducts.vue?c729","webpack://frontend-fairtix/./src/pages/OrderAdditionalProducts.vue?41a5","webpack://frontend-fairtix/./src/pages/OrderStatus.vue","webpack://frontend-fairtix/src/pages/OrderStatus.vue","webpack://frontend-fairtix/./src/pages/OrderStatus.vue?d271","webpack://frontend-fairtix/./src/pages/OrderStatus.vue?352f","webpack://frontend-fairtix/./src/pages/CustomerOrderDetails.vue","webpack://frontend-fairtix/src/pages/CustomerOrderDetails.vue","webpack://frontend-fairtix/./src/pages/CustomerOrderDetails.vue?1c92","webpack://frontend-fairtix/./src/pages/CustomerOrderDetails.vue?73aa","webpack://frontend-fairtix/./src/pages/CustomerOrderPending.vue","webpack://frontend-fairtix/src/pages/CustomerOrderPending.vue","webpack://frontend-fairtix/./src/pages/CustomerOrderPending.vue?d9ab","webpack://frontend-fairtix/./src/pages/CustomerOrderPending.vue?b852","webpack://frontend-fairtix/./src/pages/AssignTickets.vue","webpack://frontend-fairtix/src/pages/AssignTickets.vue","webpack://frontend-fairtix/./src/pages/AssignTickets.vue?028a","webpack://frontend-fairtix/./src/pages/AssignTickets.vue?219d","webpack://frontend-fairtix/./src/pages/ReportsOverview.vue","webpack://frontend-fairtix/src/pages/ReportsOverview.vue","webpack://frontend-fairtix/./src/pages/ReportsOverview.vue?1a5f","webpack://frontend-fairtix/./src/pages/ReportsOverview.vue?36cb","webpack://frontend-fairtix/./src/pages/CampaignDetails.vue","webpack://frontend-fairtix/src/pages/CampaignDetails.vue","webpack://frontend-fairtix/./src/pages/CampaignDetails.vue?9f8e","webpack://frontend-fairtix/./src/pages/CampaignDetails.vue?e5a9","webpack://frontend-fairtix/./src/pages/CampaignsOverview.vue","webpack://frontend-fairtix/src/pages/CampaignsOverview.vue","webpack://frontend-fairtix/./src/pages/CampaignsOverview.vue?4118","webpack://frontend-fairtix/./src/pages/CampaignsOverview.vue?0e85","webpack://frontend-fairtix/./src/pages/OrderThankYou.vue","webpack://frontend-fairtix/./src/components/GtmPurchase.vue","webpack://frontend-fairtix/src/components/GtmPurchase.vue","webpack://frontend-fairtix/./src/components/GtmPurchase.vue?1e40","webpack://frontend-fairtix/./src/components/GtmPurchase.vue?aaff","webpack://frontend-fairtix/src/pages/OrderThankYou.vue","webpack://frontend-fairtix/./src/pages/OrderThankYou.vue?7fe2","webpack://frontend-fairtix/./src/pages/OrderThankYou.vue?910e","webpack://frontend-fairtix/./src/pages/TicketTemplates.vue","webpack://frontend-fairtix/src/pages/TicketTemplates.vue","webpack://frontend-fairtix/./src/pages/TicketTemplates.vue?2275","webpack://frontend-fairtix/./src/pages/TicketTemplates.vue?149c","webpack://frontend-fairtix/./src/pages/EditTicketTemplate.vue","webpack://frontend-fairtix/src/pages/EditTicketTemplate.vue","webpack://frontend-fairtix/./src/pages/EditTicketTemplate.vue?ecd2","webpack://frontend-fairtix/./src/pages/EditTicketTemplate.vue?9d8d","webpack://frontend-fairtix/./src/pages/NotFound.vue","webpack://frontend-fairtix/./src/pages/NotFound.vue?5275","webpack://frontend-fairtix/./src/pages/TermsConditions.vue","webpack://frontend-fairtix/./src/pages/TermsConditionsEN.vue","webpack://frontend-fairtix/src/pages/TermsConditionsEN.vue","webpack://frontend-fairtix/./src/pages/TermsConditionsEN.vue?a954","webpack://frontend-fairtix/./src/pages/TermsConditionsEN.vue?50c7","webpack://frontend-fairtix/./src/pages/TermsConditionsDE.vue","webpack://frontend-fairtix/src/pages/TermsConditionsDE.vue","webpack://frontend-fairtix/./src/pages/TermsConditionsDE.vue?9058","webpack://frontend-fairtix/./src/pages/TermsConditionsDE.vue?df38","webpack://frontend-fairtix/./src/pages/TermsConditionsES.vue","webpack://frontend-fairtix/src/pages/TermsConditionsES.vue","webpack://frontend-fairtix/./src/pages/TermsConditionsES.vue?005c","webpack://frontend-fairtix/./src/pages/TermsConditionsES.vue?a80f","webpack://frontend-fairtix/./src/pages/TermsConditionsNL.vue","webpack://frontend-fairtix/src/pages/TermsConditionsNL.vue","webpack://frontend-fairtix/./src/pages/TermsConditionsNL.vue?0e00","webpack://frontend-fairtix/./src/pages/TermsConditionsNL.vue?07d6","webpack://frontend-fairtix/src/pages/TermsConditions.vue","webpack://frontend-fairtix/./src/pages/TermsConditions.vue?42e4","webpack://frontend-fairtix/./src/pages/TermsConditions.vue?103c","webpack://frontend-fairtix/./src/pages/TicketChanged.vue","webpack://frontend-fairtix/src/pages/TicketChanged.vue","webpack://frontend-fairtix/./src/pages/TicketChanged.vue?a0f6","webpack://frontend-fairtix/./src/pages/TicketChanged.vue?bcaa","webpack://frontend-fairtix/./src/pages/StockReport.vue","webpack://frontend-fairtix/src/pages/StockReport.vue","webpack://frontend-fairtix/./src/pages/StockReport.vue?0b0f","webpack://frontend-fairtix/./src/pages/StockReport.vue?0338","webpack://frontend-fairtix/./src/pages/ScanOperationProductsConfigure.vue","webpack://frontend-fairtix/src/pages/ScanOperationProductsConfigure.vue","webpack://frontend-fairtix/./src/pages/ScanOperationProductsConfigure.vue?98a1","webpack://frontend-fairtix/./src/pages/ScanOperationProductsConfigure.vue?ebb5","webpack://frontend-fairtix/./src/pages/ScanOperationScannersConfigure.vue","webpack://frontend-fairtix/src/pages/ScanOperationScannersConfigure.vue","webpack://frontend-fairtix/./src/pages/ScanOperationScannersConfigure.vue?4290","webpack://frontend-fairtix/./src/pages/ScanOperationScannersConfigure.vue?1252","webpack://frontend-fairtix/./src/pages/ScanOperationSummary.vue","webpack://frontend-fairtix/src/pages/ScanOperationSummary.vue","webpack://frontend-fairtix/./src/pages/ScanOperationSummary.vue?0622","webpack://frontend-fairtix/./src/pages/ScanOperationSummary.vue?e12f","webpack://frontend-fairtix/./src/pages/BoxOfficeLogin.vue","webpack://frontend-fairtix/./src/api/boxOfficeUser.js","webpack://frontend-fairtix/./src/api/boxOfficeEvent.js","webpack://frontend-fairtix/./src/api/boxOfficePlaceOrder.js","webpack://frontend-fairtix/./src/api/boxOfficeApi.js","webpack://frontend-fairtix/src/pages/BoxOfficeLogin.vue","webpack://frontend-fairtix/./src/pages/BoxOfficeLogin.vue?a979","webpack://frontend-fairtix/./src/pages/BoxOfficeLogin.vue?81b6","webpack://frontend-fairtix/./src/pages/BoxOfficeEvents.vue","webpack://frontend-fairtix/src/pages/BoxOfficeEvents.vue","webpack://frontend-fairtix/./src/pages/BoxOfficeEvents.vue?033c","webpack://frontend-fairtix/./src/pages/BoxOfficeEvents.vue?a8ec","webpack://frontend-fairtix/./src/pages/BoxOfficeEventBoxOffices.vue","webpack://frontend-fairtix/src/pages/BoxOfficeEventBoxOffices.vue","webpack://frontend-fairtix/./src/pages/BoxOfficeEventBoxOffices.vue?2ea7","webpack://frontend-fairtix/./src/pages/BoxOfficeEventBoxOffices.vue?74eb","webpack://frontend-fairtix/./src/pages/BoxOfficePlaceOrder.vue","webpack://frontend-fairtix/src/pages/BoxOfficePlaceOrder.vue","webpack://frontend-fairtix/./src/pages/BoxOfficePlaceOrder.vue?7209","webpack://frontend-fairtix/./src/pages/BoxOfficePlaceOrder.vue?3674","webpack://frontend-fairtix/./src/pages/BoxOfficeOrderHistory.vue","webpack://frontend-fairtix/src/pages/BoxOfficeOrderHistory.vue","webpack://frontend-fairtix/./src/pages/BoxOfficeOrderHistory.vue?8c88","webpack://frontend-fairtix/./src/pages/BoxOfficeOrderHistory.vue?faa9","webpack://frontend-fairtix/./src/pages/CustomerSupportOverview.vue","webpack://frontend-fairtix/src/pages/CustomerSupportOverview.vue","webpack://frontend-fairtix/./src/pages/CustomerSupportOverview.vue?c2c3","webpack://frontend-fairtix/./src/pages/CustomerSupportOverview.vue?5fab","webpack://frontend-fairtix/./src/pages/ScannerTerminalLogin.vue","webpack://frontend-fairtix/./src/api/scannerTerminalUser.js","webpack://frontend-fairtix/./src/api/scannerTerminalScan.js","webpack://frontend-fairtix/./src/api/scannerTerminalApi.js","webpack://frontend-fairtix/src/pages/ScannerTerminalLogin.vue","webpack://frontend-fairtix/./src/pages/ScannerTerminalLogin.vue?ee16","webpack://frontend-fairtix/./src/pages/ScannerTerminalLogin.vue?693e","webpack://frontend-fairtix/./src/pages/ScannerTerminalScan.vue","webpack://frontend-fairtix/src/pages/ScannerTerminalScan.vue","webpack://frontend-fairtix/./src/pages/ScannerTerminalScan.vue?3e19","webpack://frontend-fairtix/./src/pages/ScannerTerminalScan.vue?0799","webpack://frontend-fairtix/./src/pages/GuestListOverview.vue","webpack://frontend-fairtix/./src/components/NumberInput.vue","webpack://frontend-fairtix/src/components/NumberInput.vue","webpack://frontend-fairtix/./src/components/NumberInput.vue?7e21","webpack://frontend-fairtix/./src/components/NumberInput.vue?4037","webpack://frontend-fairtix/src/pages/GuestListOverview.vue","webpack://frontend-fairtix/./src/pages/GuestListOverview.vue?9d3a","webpack://frontend-fairtix/./src/pages/GuestListOverview.vue?21c7","webpack://frontend-fairtix/./src/pages/ReportSalesPerTickettype.vue","webpack://frontend-fairtix/src/pages/ReportSalesPerTickettype.vue","webpack://frontend-fairtix/./src/pages/ReportSalesPerTickettype.vue?1762","webpack://frontend-fairtix/./src/pages/ReportSalesPerTickettype.vue?5dbb","webpack://frontend-fairtix/./src/pages/UserResetPassword.vue","webpack://frontend-fairtix/src/pages/UserResetPassword.vue","webpack://frontend-fairtix/./src/pages/UserResetPassword.vue?11f0","webpack://frontend-fairtix/./src/pages/UserResetPassword.vue?0b1b","webpack://frontend-fairtix/./src/pages/MasterDataOverview.vue","webpack://frontend-fairtix/src/pages/MasterDataOverview.vue","webpack://frontend-fairtix/./src/pages/MasterDataOverview.vue?9f3a","webpack://frontend-fairtix/./src/pages/MasterDataOverview.vue?ffef","webpack://frontend-fairtix/./src/pages/PermissionRoles.vue","webpack://frontend-fairtix/src/pages/PermissionRoles.vue","webpack://frontend-fairtix/./src/pages/PermissionRoles.vue?9385","webpack://frontend-fairtix/./src/pages/PermissionRoles.vue?6a09","webpack://frontend-fairtix/./src/pages/AccessDenied.vue","webpack://frontend-fairtix/src/pages/AccessDenied.vue","webpack://frontend-fairtix/./src/pages/AccessDenied.vue?74ee","webpack://frontend-fairtix/./src/pages/AccessDenied.vue?e506","webpack://frontend-fairtix/./src/pages/AdministrationOverview.vue","webpack://frontend-fairtix/src/pages/AdministrationOverview.vue","webpack://frontend-fairtix/./src/pages/AdministrationOverview.vue?48f7","webpack://frontend-fairtix/./src/pages/AdministrationOverview.vue?e613","webpack://frontend-fairtix/./src/pages/InvoiceOverview.vue","webpack://frontend-fairtix/src/pages/InvoiceOverview.vue","webpack://frontend-fairtix/./src/pages/InvoiceOverview.vue?aed3","webpack://frontend-fairtix/./src/pages/InvoiceOverview.vue?8a50","webpack://frontend-fairtix/./src/pages/InvoiceDetails.vue","webpack://frontend-fairtix/src/pages/InvoiceDetails.vue","webpack://frontend-fairtix/./src/pages/InvoiceDetails.vue?8285","webpack://frontend-fairtix/./src/pages/InvoiceDetails.vue?a3a2","webpack://frontend-fairtix/./src/pages/AdministrationEventFeesOverview.vue","webpack://frontend-fairtix/src/pages/AdministrationEventFeesOverview.vue","webpack://frontend-fairtix/./src/pages/AdministrationEventFeesOverview.vue?3d78","webpack://frontend-fairtix/./src/pages/AdministrationEventFeesOverview.vue?6e08","webpack://frontend-fairtix/./src/pages/ScannerTerminalEvents.vue","webpack://frontend-fairtix/src/pages/ScannerTerminalEvents.vue","webpack://frontend-fairtix/./src/pages/ScannerTerminalEvents.vue?854a","webpack://frontend-fairtix/./src/pages/ScannerTerminalEvents.vue?d5fe","webpack://frontend-fairtix/./src/pages/DefaultCompanySettings.vue","webpack://frontend-fairtix/src/pages/DefaultCompanySettings.vue","webpack://frontend-fairtix/./src/pages/DefaultCompanySettings.vue?4ad4","webpack://frontend-fairtix/./src/pages/DefaultCompanySettings.vue?a567","webpack://frontend-fairtix/./src/pages/DefaultCompanyLayout.vue","webpack://frontend-fairtix/src/pages/DefaultCompanyLayout.vue","webpack://frontend-fairtix/./src/pages/DefaultCompanyLayout.vue?a7cc","webpack://frontend-fairtix/./src/pages/DefaultCompanyLayout.vue?025b","webpack://frontend-fairtix/./src/pages/DefaultCompanyFees.vue","webpack://frontend-fairtix/src/pages/DefaultCompanyFees.vue","webpack://frontend-fairtix/./src/pages/DefaultCompanyFees.vue?1c9d","webpack://frontend-fairtix/./src/pages/DefaultCompanyFees.vue?cfa7","webpack://frontend-fairtix/./src/pages/DefaultCompanyPermissions.vue","webpack://frontend-fairtix/src/pages/DefaultCompanyPermissions.vue","webpack://frontend-fairtix/./src/pages/DefaultCompanyPermissions.vue?cf7e","webpack://frontend-fairtix/./src/pages/DefaultCompanyPermissions.vue?e30f","webpack://frontend-fairtix/./src/pages/DefaultCompanyTicketTemplate.vue","webpack://frontend-fairtix/src/pages/DefaultCompanyTicketTemplate.vue","webpack://frontend-fairtix/./src/pages/DefaultCompanyTicketTemplate.vue?4bcd","webpack://frontend-fairtix/./src/pages/DefaultCompanyTicketTemplate.vue?bd8b","webpack://frontend-fairtix/./src/pages/EventMarketing.vue","webpack://frontend-fairtix/src/pages/EventMarketing.vue","webpack://frontend-fairtix/./src/pages/EventMarketing.vue?b6c6","webpack://frontend-fairtix/./src/pages/EventMarketing.vue?9480","webpack://frontend-fairtix/./src/pages/BatchesOverview.vue","webpack://frontend-fairtix/src/pages/BatchesOverview.vue","webpack://frontend-fairtix/./src/pages/BatchesOverview.vue?de05","webpack://frontend-fairtix/./src/pages/BatchesOverview.vue?d3a2","webpack://frontend-fairtix/./src/pages/BatchDetails.vue","webpack://frontend-fairtix/src/pages/BatchDetails.vue","webpack://frontend-fairtix/./src/pages/BatchDetails.vue?99c0","webpack://frontend-fairtix/./src/pages/BatchDetails.vue?948a","webpack://frontend-fairtix/./src/pages/SignupConfirmation.vue","webpack://frontend-fairtix/src/pages/SignupConfirmation.vue","webpack://frontend-fairtix/./src/pages/SignupConfirmation.vue?2c75","webpack://frontend-fairtix/./src/pages/SignupConfirmation.vue?dd05","webpack://frontend-fairtix/./src/pages/AutoInvoiceSettings.vue","webpack://frontend-fairtix/src/pages/AutoInvoiceSettings.vue","webpack://frontend-fairtix/./src/pages/AutoInvoiceSettings.vue?4357","webpack://frontend-fairtix/./src/pages/AutoInvoiceSettings.vue?af50","webpack://frontend-fairtix/./src/pages/CompanyInvoiceOverview.vue","webpack://frontend-fairtix/src/pages/CompanyInvoiceOverview.vue","webpack://frontend-fairtix/./src/pages/CompanyInvoiceOverview.vue?473e","webpack://frontend-fairtix/./src/pages/CompanyInvoiceOverview.vue?b94f","webpack://frontend-fairtix/./src/pages/ExtensionsOverview.vue","webpack://frontend-fairtix/src/pages/ExtensionsOverview.vue","webpack://frontend-fairtix/./src/pages/ExtensionsOverview.vue?2425","webpack://frontend-fairtix/./src/pages/ExtensionsOverview.vue?f9b3","webpack://frontend-fairtix/./src/pages/MailchimpSettings.vue","webpack://frontend-fairtix/src/pages/MailchimpSettings.vue","webpack://frontend-fairtix/./src/pages/MailchimpSettings.vue?f661","webpack://frontend-fairtix/./src/pages/MailchimpSettings.vue?7024","webpack://frontend-fairtix/./src/pages/VenuesOverview.vue","webpack://frontend-fairtix/./src/components/VenueForm.vue","webpack://frontend-fairtix/src/components/VenueForm.vue","webpack://frontend-fairtix/./src/components/VenueForm.vue?7e17","webpack://frontend-fairtix/./src/components/VenueForm.vue?45c3","webpack://frontend-fairtix/src/pages/VenuesOverview.vue","webpack://frontend-fairtix/./src/pages/VenuesOverview.vue?fbd1","webpack://frontend-fairtix/./src/pages/VenuesOverview.vue?a898","webpack://frontend-fairtix/./src/pages/CompanyLinksOverview.vue","webpack://frontend-fairtix/src/pages/CompanyLinksOverview.vue","webpack://frontend-fairtix/./src/pages/CompanyLinksOverview.vue?bcaa","webpack://frontend-fairtix/./src/pages/CompanyLinksOverview.vue?f71b","webpack://frontend-fairtix/./src/pages/TicketLost.vue","webpack://frontend-fairtix/src/pages/TicketLost.vue","webpack://frontend-fairtix/./src/pages/TicketLost.vue?e1ab","webpack://frontend-fairtix/./src/pages/TicketLost.vue?7ebe","webpack://frontend-fairtix/./src/router/index.js","webpack://frontend-fairtix/./src/i18n.js","webpack://frontend-fairtix/./src/store/index.js","webpack://frontend-fairtix/./src/api/company.js","webpack://frontend-fairtix/./src/api/event.js","webpack://frontend-fairtix/./src/api/pos.js","webpack://frontend-fairtix/./src/api/product.js","webpack://frontend-fairtix/./src/api/timeslot.js","webpack://frontend-fairtix/./src/api/order.js","webpack://frontend-fairtix/./src/api/customerInformation.js","webpack://frontend-fairtix/./src/api/discountcode.js","webpack://frontend-fairtix/./src/api/scanner.js","webpack://frontend-fairtix/./src/api/scanOperation.js","webpack://frontend-fairtix/./src/api/scanOperationSession.js","webpack://frontend-fairtix/./src/api/ticket.js","webpack://frontend-fairtix/./src/api/audit.js","webpack://frontend-fairtix/./src/api/report.js","webpack://frontend-fairtix/./src/api/cdn.js","webpack://frontend-fairtix/./src/api/mail.js","webpack://frontend-fairtix/./src/api/openingHour.js","webpack://frontend-fairtix/./src/api/scanOperationPrivileges.js","webpack://frontend-fairtix/./src/api/customerSupport.js","webpack://frontend-fairtix/./src/api/guestList.js","webpack://frontend-fairtix/./src/api/permission.js","webpack://frontend-fairtix/./src/api/invoice.js","webpack://frontend-fairtix/./src/api/administration.js","webpack://frontend-fairtix/./src/api/defaultValues.js","webpack://frontend-fairtix/./src/api/campaign.js","webpack://frontend-fairtix/./src/api/batch.js","webpack://frontend-fairtix/./src/api/setting.js","webpack://frontend-fairtix/./src/api/extension.js","webpack://frontend-fairtix/./src/api/venues.js","webpack://frontend-fairtix/./src/api/companyLinks.js","webpack://frontend-fairtix/./src/api/index.js","webpack://frontend-fairtix/./src/components/CookieBanner.vue","webpack://frontend-fairtix/src/components/CookieBanner.vue","webpack://frontend-fairtix/./src/components/CookieBanner.vue?e865","webpack://frontend-fairtix/./src/components/CookieBanner.vue?68f2","webpack://frontend-fairtix/./src/components/CalenderDay.vue","webpack://frontend-fairtix/src/components/CalenderDay.vue","webpack://frontend-fairtix/./src/components/CalenderDay.vue?a7a3","webpack://frontend-fairtix/./src/components/CalenderDay.vue?ef71","webpack://frontend-fairtix/src/layouts/Shop.vue","webpack://frontend-fairtix/./src/layouts/Shop.vue?f623","webpack://frontend-fairtix/./src/layouts/Shop.vue?79db","webpack://frontend-fairtix/./src/layouts/Login.vue","webpack://frontend-fairtix/src/layouts/Login.vue","webpack://frontend-fairtix/./src/layouts/Login.vue?10a0","webpack://frontend-fairtix/./src/layouts/Login.vue?45f7","webpack://frontend-fairtix/./src/layouts/BoxOfficeDefault.vue","webpack://frontend-fairtix/src/layouts/BoxOfficeDefault.vue","webpack://frontend-fairtix/./src/layouts/BoxOfficeDefault.vue?fa19","webpack://frontend-fairtix/./src/layouts/BoxOfficeDefault.vue?cf0d","webpack://frontend-fairtix/./src/layouts/ScannerTerminalDefault.vue","webpack://frontend-fairtix/src/layouts/ScannerTerminalDefault.vue","webpack://frontend-fairtix/./src/layouts/ScannerTerminalDefault.vue?076d","webpack://frontend-fairtix/./src/layouts/ScannerTerminalDefault.vue?5f2b","webpack://frontend-fairtix/./src/layouts/Static.vue","webpack://frontend-fairtix/src/layouts/Static.vue","webpack://frontend-fairtix/./src/layouts/Static.vue?308f","webpack://frontend-fairtix/./src/layouts/Static.vue?f6ab","webpack://frontend-fairtix/src/App.vue","webpack://frontend-fairtix/./src/App.vue?c036","webpack://frontend-fairtix/./src/App.vue?0e40","webpack://frontend-fairtix/./src/main.js","webpack://frontend-fairtix/./node_modules/i18n-iso-countries/langs/ ./node_modules/i18n-iso-countries/langs/ sync ^\\.\\/.*\\.json$","webpack://frontend-fairtix/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://frontend-fairtix/./src/assets/icons/ sync ^\\.\\/.*\\.png$","webpack://frontend-fairtix/./src/assets/payment-methods/ sync ^\\.\\/.*$","webpack://frontend-fairtix/./src/locales/ sync [A-Za-z0-9-_,\\s]+\\.json$/","webpack://frontend-fairtix/webpack/bootstrap","webpack://frontend-fairtix/webpack/runtime/chunk loaded","webpack://frontend-fairtix/webpack/runtime/compat get default export","webpack://frontend-fairtix/webpack/runtime/define property getters","webpack://frontend-fairtix/webpack/runtime/global","webpack://frontend-fairtix/webpack/runtime/hasOwnProperty shorthand","webpack://frontend-fairtix/webpack/runtime/make namespace object","webpack://frontend-fairtix/webpack/runtime/node module decorator","webpack://frontend-fairtix/webpack/runtime/publicPath","webpack://frontend-fairtix/webpack/runtime/jsonp chunk loading","webpack://frontend-fairtix/webpack/startup"],"sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"app\"}},[(_vm.layout === 'Shop')?_c('shop'):_vm._e(),(_vm.layout === 'Login')?_c('login'):_vm._e(),(_vm.layout === 'Default')?_c('default'):_vm._e(),(_vm.layout === 'BoxOfficeDefault')?_c('BoxOfficeDefault'):_vm._e(),(_vm.layout === 'ScannerTerminalDefault')?_c('ScannerTerminalDefault'):_vm._e(),(_vm.layout === 'Static')?_c('Static'):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{class:_vm.whitelabel_layout,attrs:{\"fluid\":\"\",\"id\":\"app\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[(_vm.user)?_c('b-col',{staticClass:\"col-auto\",attrs:{\"id\":\"nav-wrap\"}},[_c('sidebar-menu',{attrs:{\"disableHover\":true,\"collapsed\":_vm.innerWidth > 700 ? false:true,\"menu\":_vm.menu},on:{\"item-click\":_vm.onItemClick}},[_c('div',{attrs:{\"slot\":\"toggle-icon\",\"id\":\"btn-toggle\"},slot:\"toggle-icon\"},[_c('div',{staticClass:\"innerSpans\"},[_c('b-img',{staticClass:\"img-burger-white\",attrs:{\"src\":require('./../assets/icons/hamburger-white.png')}}),_c('b-img',{staticClass:\"img-burger-blue\",attrs:{\"src\":require('./../assets/icons/hamburger.png')}})],1)])])],1):_vm._e(),_c('b-col',{attrs:{\"id\":\"content\"}},[(_vm.user && _vm.impersonating)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('app_impersonating', _vm.user))+\" \")]):_vm._e(),_c('b-container',{staticClass:\"default-container-layout\",attrs:{\"fluid\":\"\",\"id\":\"app-top-bar\"}},[_c('b-row',{attrs:{\"align-v\":\"center \"}},[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"12\",\"lg\":\"4\"}},[_c('span',{attrs:{\"id\":\"app-welcome-message\"}},[_vm._v(_vm._s(_vm.$t('content_top_welcome_message', this)))])]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"8\",\"md\":\"6\",\"lg\":\"6\",\"id\":\"app-top-bar-right-col\"}},[(_vm.user)?_c('span',{attrs:{\"id\":\"app-username\",\"align-v\":\"center\"}},[_vm._v(_vm._s(_vm.user.name))]):_vm._e(),_c('b-img',{staticClass:\"ml-2\",attrs:{\"fluid\":\"\",\"src\":require('./../assets/icons/icon-logout-blue.png')},on:{\"click\":function($event){return _vm.logout()}}})],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"4\",\"md\":\"6\",\"lg\":\"2\"}},[_c('b-dropdown',{staticClass:\"m-md-2\",attrs:{\"id\":\"dropdown-right\",\"variant\":\"primary\",\"text\":_vm.languageLabel},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('b-img',{staticClass:\"selected-lang\",attrs:{\"src\":require('./../assets/icons/'+_vm.language+'.png')}})]},proxy:true}])},[_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('nl')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/nl.png')}})],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('de')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/de.png')}})],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('en')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/en.png')}})],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('es')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/es.png')}})],1)],1)],1)],1)],1),_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid id=\"app\" :class=\"whitelabel_layout\">\n <b-row no-gutters>\n <b-col id=\"nav-wrap\" v-if=\"user\" class=\"col-auto\" >\n <sidebar-menu @item-click=\"onItemClick\" :disableHover=\"true\" :collapsed=\"innerWidth > 700 ? false:true\" :menu=\"menu\">\n <div slot=\"toggle-icon\" id=\"btn-toggle\">\n <div class=\"innerSpans\">\n <b-img class=\"img-burger-white\" :src=\"require('./../assets/icons/hamburger-white.png')\"/>\n <b-img class=\"img-burger-blue\" :src=\"require('./../assets/icons/hamburger.png')\"/>\n </div>\n </div>\n </sidebar-menu>\n </b-col>\n <b-col id=\"content\" >\n <b-alert v-if=\"user && impersonating\" variant=\"warning\" show class=\"text-center\">\n {{ $t('app_impersonating', user) }}\n </b-alert>\n <b-container fluid id=\"app-top-bar\" class=\"default-container-layout\">\n <b-row align-v=\"center \">\n <b-col cols=\"12\" md=\"12\" lg=\"4\">\n <span id=\"app-welcome-message\">{{ $t('content_top_welcome_message', this) }}</span>\n </b-col>\n <b-col cols=\"8\" md=\"6\" lg=\"6\" class=\"text-right\" id=\"app-top-bar-right-col\">\n <span id=\"app-username\" align-v=\"center\" v-if=\"user\">{{ user.name }}</span>\n <b-img class=\"ml-2\" fluid :src=\"require('./../assets/icons/icon-logout-blue.png')\" @click=\"logout()\"/>\n </b-col>\n <b-col cols=\"4\" md=\"6\" lg=\"2\" class=\"text-right\">\n\n <b-dropdown id=\"dropdown-right\" variant=\"primary\" :text=\"languageLabel\" class=\"m-md-2\">\n <template v-slot:button-content>\n <b-img class=\"selected-lang\" :src=\"require('./../assets/icons/'+language+'.png')\"/>\n </template>\n <b-dropdown-item @click=\"changeLanguage('nl')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/nl.png')\"/></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('de')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/de.png')\"/></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('en')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/en.png')\"/></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('es')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/es.png')\"/></b-dropdown-item>\n </b-dropdown>\n </b-col>\n </b-row>\n </b-container>\n <router-view></router-view>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport {mapState, mapActions} from 'vuex'\nexport default {\n name: 'App',\n data(){\n return{\n innerWidth : window.innerWidth,\n whitelabel_layout: 'fairtix',\n whitelabel_layout_name: 'Fairtix'\n }\n },\n methods: {\n onItemClick(){\n const btnToggle = document.getElementById(\"btn-toggle\");\n if (btnToggle != null && window.innerWidth < 700) {\n btnToggle.click();\n }\n },\n logout() {\n this.$store.commit('logout')\n },\n dismissSuccess() {\n this.$store.commit('success', false)\n },\n changeLanguage(lang) {\n this.$store.commit('setLanguage', lang)\n },\n ...mapActions(['loadUser'])\n },\n watch: {\n user(user){\n if(user){\n this.whitelabel_layout = user.company.whitelabel_layout\n if(user.company.whitelabel_layout == 'baron'){\n this.whitelabel_layout_name = 'BARON Fairtix'\n }\n }\n }\n },\n computed: {\n languageLabel(){\n return this.$t('language_' + this.language)\n },\n menu() {\n let menu = [];\n menu.push({\n title: '',\n icon: {element: 'span', class: 'logo'},\n href: {name: 'Dashboard'}\n })\n menu.push({\n title: this.$t('nav_dashboard'),\n icon: {element: 'span', class: 'dashboard'},\n href: {name: 'Dashboard'},\n })\n if(this.$can('order_overview_view')) {\n menu.push({\n title: this.$t('nav_orders'),\n icon: {element: 'span', class: 'orders'},\n href: {name: 'OrderOverview'}\n })\n }\n if(this.$can('add_attendees_view')) {\n menu.push({\n title: this.$t('add_attendees'),\n icon: {element: 'span', class: 'users'},\n href: {name: 'GuestListOverview'}\n })\n }\n if(this.$can('event_overview_view')) {\n menu.push({\n title: this.$t('nav_events'),\n icon: {element: 'span', class: 'events'},\n href: {name: 'Events'}\n })\n }\n if(this.$can('reports_view')) {\n menu.push({\n title: this.$t('nav_reports'),\n icon: {element: 'span', class: 'reports'},\n href: {name: 'ReportsOverview'}\n })\n }\n if(this.$can('discountcode_view')) {\n menu.push({\n title: this.$t('nav_discountcodes'),\n icon: {element: 'span', class: 'discountcodes'},\n href: {name: 'Discountcodes'}\n })\n }\n if(this.$can('scan_operation_view')) {\n menu.push({\n title: this.$t('nav_scan_operations'),\n icon: {element: 'span', class: 'scanners'},\n href: {name: 'ScanOperationOverview'}\n })\n }\n if(this.$can('ticket_template_view')) {\n menu.push({\n title: this.$t('nav_ticket_templates'),\n icon: {element: 'span', class: 'layouts'},\n href: {name: 'TicketTemplates'}\n })\n }\n if(this.$can('campaigns_view')) {\n menu.push({\n title: this.$t('nav_campaigns'),\n icon: {element: 'span', class: 'campaigns'},\n href: {\n name: 'CampaignsOverview'\n }\n })\n }\n if(this.$can('customer_support_view')) {\n menu.push({\n title: this.$t('customer_support_center'),\n icon: {element: 'span', class: 'orders'},\n href: {name: 'CustomerSupportOverview'}\n })\n }\n if(this.$can('batch_overview_view')) {\n menu.push({\n title: this.$t('nav_batches'),\n icon: {element: 'span', class: 'batches'},\n href: {\n name: 'BatchesOverview'\n }\n })\n }\n if(this.$can('admin_company_overview_view')) {\n menu.push({\n title: this.$t('nav_companies'),\n icon: {element: 'span', class: 'companies'},\n href: {name: 'Companies'}\n })\n }\n if(this.$can('stock_report_view')) {\n menu.push({\n title: this.$t('nav_stock_report'),\n icon: {element: 'span', class: 'companies'},\n href: {name: 'StockReport'}\n })\n }\n if(this.$can('extensions_overview_view')) {\n menu.push({\n title: this.$t('nav_extensions'),\n icon: {element: 'span', class: 'extensions'},\n href: {name: 'ExtensionsOverview'}\n })\n }\n if(this.$can('my_company_view')) {\n menu.push({\n title: this.$t('nav_company'),\n icon: {element: 'span', class: 'company'},\n href: {\n name: 'ManageCompany',\n params: {id: this.user.company.unique_id}\n }\n })\n }\n if(this.$can('master_data_view')) {\n menu.push({\n title: this.$t('nav_master_data'),\n icon: {element: 'span', class: 'company'},\n href: {\n name: 'MasterDataOverview'\n }\n })\n }\n if(this.$can('admin_administration_view')) {\n menu.push({\n title: this.$t('nav_administration'),\n icon: {element: 'span', class: 'company'},\n href: {\n name: 'AdministrationOverview'\n }\n })\n }\n return menu\n },\n ...mapState(['user', 'impersonating', 'success', 'errors', 'language'])\n },\n created() {\n this.loadUser()\n }\n}\n</script>\n\n<style lang=\"scss\">\n\n$shadow-color: #52575D19;\n$blue-color: #193E58;\n$blue-active-color: #295f84;\n$orange-color: #F0B52D;\n$text-color: #808080;\n$element-height: 50px;\n$container-distance: 2rem;\n$default-border-radius: 6px;\n$button-border-radius: 6px;\n$element-border-color: #F5F5F5;\n$row-hover-color: rgba(240, 181, 45, 0.06);\n$label-text-color: #4D4D4D;\n$label-text-size: 16px;\n$label-font-weight: 400;\n$field-border-radius: 4px;\n$field-height: 50px;\n$field-border-thickness: 2px;\n$field-border-color: #EEEEEE;\n$field-text-color: #808080;\n$field-text-size: 13px;\n$placeholder-text-color: #a4a4a4;\n\np, h1, h2, h3, h4, div, span {\n color: $text-color;\n}\n\n#app {\n padding: 0;\n}\n\n#content {\n height: auto;\n min-height: 100vh;\n padding: $container-distance;\n background-color: #F5F5F5;\n overflow: hidden;\n}\n\n#logo {\n margin: 25px 0 25px 15px\n}\n\nul.pagination{\n justify-content: center;\n margin-top:30px\n}\nul.pagination .page-item.active .page-link{\n background-color:$blue-color;\n border-color:$blue-color\n}\nul.pagination .page-link{\n color:#808080\n}\n\ninput::placeholder{\n color: $placeholder-text-color !important;\n}\n\n.container-distance {\n margin-bottom: $container-distance !important;\n}\n\n.btn.btn-save {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $button-border-radius;\n padding: 5px 40px;\n font-weight: bold\n}\n\n.btn.btn-new {\n background-color: #193E58;\n border-radius: $button-border-radius;\n color: #FFF;\n padding: 12px 18px;\n font-weight: bold\n}\n\n.btn.btn-orange{\n background-color:$orange-color;\n border-radius: $button-border-radius;\n color:#FFF;\n border:0px\n}\n.btn.btn-orange-border{\n background-color:#FFF;\n padding:5px 20px;\n font-size:13px;\n font-weight:bold;\n border:2px solid $orange-color;\n border-radius: $button-border-radius;\n color:#808080\n}\n\n.btn.btn-row-edit {\n background-color: #FFF;\n border-radius: $button-border-radius;\n border: 2px solid #F5F5F5;\n color: #808080;\n padding: 5px 20px;\n font-size: 13px;\n font-weight: bold\n}\n\n.btn.btn-row-edit:hover {\n border-color: $orange-color;\n background-color: $orange-color;\n color: #FFF\n}\n\n.modal-header {\n background-color: $blue-color;\n\n .modal-title, .close {\n color: #FFF\n }\n}\n\n.button-row-included {\n margin-top: 73px\n}\n\n.table th, .table td {\n vertical-align: middle !important;\n}\n\n.col-form-label {\n font-size: $label-text-size;\n color: $label-text-color;\n font-weight: $label-font-weight;\n}\n\ninput.form-control, select.form-control, select.custom-select {\n border-radius: $field-border-radius;\n border: $field-border-thickness solid $field-border-color;\n height: $field-height;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\ntextarea.form-control {\n border: $field-border-thickness solid $field-border-color;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\n// Menu layout\n.v-sidebar-menu {\n background-color: $blue-color !important;\n position: inherit !important;\n position: relative;\n}\n.vsm_expanded .vsm--toggle-btn{\n position: relative !important;\n order: 3;\n width: 100% !important;\n height: 60px !important;\n transition: 0.3s width ease;\n left:0px!important\n}\n.vsm_expanded .vsm--toggle-btn, .v-sidebar-menu .vsm--toggle-btn{\n background-color: #132939!important;\n}\n.v-sidebar-menu .vsm--toggle-btn img.img-burger-blue{\n display: none;\n}\n.vsm_expanded .vsm--toggle-btn img.img-burger-white{\n display: inline;\n}\n.v-sidebar-menu .vsm--link {\n height: 40px;\n line-height: 40px;\n padding:0 15px 0 25px;\n margin: 5px 20px !important;\n}\n.v-sidebar-menu .vsm--title {\n color: #FFF\n}\n.v-sidebar-menu .vsm--icon {\n margin-top: 8px;\n}\n\n.v-sidebar-menu .vsm--item{\n margin-bottom:10px\n}\n.v-sidebar-menu .vsm--item:hover .vsm--title {\n color: #FFFFFF;\n}\n.v-sidebar-menu .vsm--item:first-of-type {\n margin: 25px 0 ;\n border-bottom: 0px\n}\n.v-sidebar-menu .vsm--item:first-of-type a {\n padding: 0 10px !important;\n width: 80%;\n margin: auto;\n}\n.v-sidebar-menu .vsm--item:first-of-type a:hover {\n background-color: $blue-color !important\n}\n.v-sidebar-menu .vsm--item:first-of-type a span.vsm--icon {\n margin: 0px;\n height: 85%;\n background-color: $blue-color !important\n}\n.v-sidebar-menu .vsm--icon.logo {\n background-color: $blue-color;\n background: url('../assets/logo-light.png') no-repeat;\n background-size: contain;\n width: 100% !important;\n}\ndiv#app.baron .v-sidebar-menu .vsm--icon.logo {\n background-color: $blue-color;\n background: url('../assets/logo-baron-fairtix.png') no-repeat;\n background-size: contain;\n width: 100% !important;\n}\n.v-sidebar-menu .vsm--item:first-of-type:hover {\n background-color: $blue-color !important\n}\n.v-sidebar-menu.vsm_collapsed .vsm--link {\n padding: 0 15px !important;\n margin: 0 !important;\n}\n.v-sidebar-menu .vsm--link:hover, .v-sidebar-menu .vsm--item a.router-link-active {\n background-color: $blue-active-color !important;\n box-shadow: none;\n border-radius: 5px;\n}\n.v-sidebar-menu .vsm--list .vsm--item:first-child a.router-link-active{\n background-color: unset !important;\n}\n.v-sidebar-menu .vsm--item a.router-link-active span.vsm--title {\n color: #FFFFFF !important\n}\n.v-sidebar-menu .vsm--scroll-wrapper {\n margin-right: 0px !important\n}\n.v-sidebar-menu .vsm--item:first-of-type a.router-link-active {\n box-shadow: none !important;\n background-color: $blue-active-color !important;\n}\n.v-sidebar-menu.vsm_collapsed .vsm--item:hover {\n background-color: $blue-active-color !important;\n color: #FFFFFF !important;\n border-radius: 10px;\n}\n.v-sidebar-menu.vsm_collapsed .vsm--item .vsm--icon:hover, .v-sidebar-menu.vsm_collapsed .vsm--item:hover .vsm--icon {\n background-color: unset !important;\n}\n.v-sidebar-menu span.vsm--icon.dashboard {\n background: url('../assets/icons/svg/dashboard.svg') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.extensions {\n background: url('../assets/icons/icon-extension.png') no-repeat;\n background-position:50% 1px\n}\n.v-sidebar-menu span.vsm--icon.orders {\n background: url('../assets/icons/svg/list-details.svg') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.events {\n background: url('../assets/icons/svg/calendar-month.svg') no-repeat;\n background-position:50% 2px\n}\n.v-sidebar-menu span.vsm--icon.discountcodes {\n background: url('../assets/icons/svg/percentage.svg') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.reports {\n background: url('../assets/icons/svg/chart-histogram.svg') no-repeat;\n background-position:50% 2px\n}\n.v-sidebar-menu span.vsm--icon.layouts {\n background: url('../assets/icons/svg/palette.svg') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.scanners {\n background: url('../assets/icons/svg/barcode.svg') no-repeat;\n background-position:50% 2px\n}\n.v-sidebar-menu span.vsm--icon.companies {\n background: url('../assets/icons/icon-settings.png') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.company {\n background: url('../assets/icons/svg/user-cog.svg') no-repeat;\n background-position:50% -2px\n}\n.v-sidebar-menu span.vsm--icon.users {\n background: url('../assets/icons/svg/user-group-solid.svg') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.campaigns {\n background: url('../assets/icons/svg/chart-bar.svg') no-repeat;\n background-position:50% 2px\n}\n.v-sidebar-menu span.vsm--icon.logout {\n background: url('../assets/icons/icon-logout-blue.png') no-repeat;\n background-position:50% 3px\n}\n.v-sidebar-menu span.vsm--icon.batches {\n background: url('../assets/icons/svg/scan.svg') no-repeat;\n background-position:50% 1px\n}\n.v-sidebar-menu.vsm_collapsed{\n\n span.vsm--icon.dashboard {\n background-position:20% 3px;\n }\n span.vsm--icon.extensions {\n background-position:20% 1px;\n }\n span.vsm--icon.orders {\n background-position:20% 3px;\n }\n span.vsm--icon.events {\n background-position:20% 2px;\n }\n span.vsm--icon.discountcodes {\n background-position:20% 3px;\n }\n span.vsm--icon.reports {\n background-position:20% 2px;\n }\n span.vsm--icon.layouts {\n background-position:20% 3px;\n }\n span.vsm--icon.scanners {\n background-position:20% 2px;\n }\n span.vsm--icon.companies {\n background-position:20% 3px;\n }\n span.vsm--icon.company {\n background-position:20% -2px;\n }\n span.vsm--icon.users {\n background-position:20% 3px;\n }\n span.vsm--icon.campaigns {\n background-position:20% 2px;\n }\n span.vsm--icon.logout {\n background-position:20% 3px;\n }\n span.vsm--icon.batches {\n background-position:20% 1px;\n }\n\n}\n\n\n\n.v-sidebar-menu .vsm--link_hover{\n background-color: #193E58!important;\n}\n#dropdown-right {\n background-color: #fff;\n}\n#dropdown-right .dropdown-toggle {\n background-color: #fff;\n}\n#dropdown-right ul {\n min-width: 36px;\n}\n.lang-flag, .selected-lang {\n border-radius: 50%;\n width: 36px;\n}\n.lang-flag {\n border: 3px solid #fff;\n}\n.selected-lang {\n border: 3px solid #193E58;\n}\n#dropdown-right a {\n padding: 0.25rem 0.9rem;\n}\n\n.v-sidebar-menu .vsm--link_exact-active, .v-sidebar-menu .vsm--link_active{\n font-weight:300 !important\n}\n\n.content-main-container {\n\n .title-container {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $default-border-radius $default-border-radius 0 0;\n padding: 10.5px 25px;\n font-weight: bold\n }\n\n .content-container {\n background-color: #FFF;\n padding: 25px;\n border-radius: 0 0 $default-border-radius $default-border-radius\n }\n\n}\n\n.card {\n border: none !important;\n\n .card-body {\n padding: 0 !important;\n }\n\n .card-title {\n background-color: $blue-color;\n color: white;\n font-weight: bold;\n padding: 10px;\n font-size: 1rem;\n border-top-right-radius: $default-border-radius;\n border-top-left-radius: $default-border-radius;\n }\n\n .card-text {\n padding: 10px;\n }\n\n}\n\n\ntable.b-table {\n\n thead {\n background-color: $blue-color;\n\n th {\n border-bottom: 0px;\n padding: 10px 0.75rem\n }\n\n tr th:first-of-type {\n padding-left: 25px\n }\n\n tr th:first-child {\n border-top-left-radius: $default-border-radius;\n }\n\n tr th:last-child {\n border-top-right-radius: $default-border-radius;\n }\n\n tr th div {\n color: #FFF\n }\n }\n\n thead.full-rounded{\n tr th:first-child {\n border-bottom-left-radius: $default-border-radius;\n }\n\n tr th:last-child {\n border-bottom-right-radius: $default-border-radius;\n }\n }\n\n tbody.body-multi-groups{\n border-top:0\n }\n\n tbody {\n tr {\n background-color: #FFF;\n border-bottom: 1px solid $element-border-color;\n }\n\n tr:hover {\n background-color: $row-hover-color;\n\n .btn.btn-row-edit {\n background-color: $orange-color;\n color: #FFF;\n border-color: $orange-color\n }\n }\n\n tr td:first-of-type {\n padding-left: 25px\n }\n\n tr:last-of-type {\n border-bottom: 0\n }\n\n tr td:first-child {\n border-bottom-left-radius: $default-border-radius;\n }\n\n tr.group-header td:first-child {\n border-top-left-radius: $default-border-radius;\n border-bottom-left-radius: 0\n }\n\n tr td:last-child {\n border-bottom-right-radius: $default-border-radius;\n }\n\n tr.group-header td:last-child {\n border-top-right-radius: $default-border-radius;\n border-bottom-right-radius: 0;\n }\n\n }\n\n}\n\n#app-top-bar {\n padding: 5px 30px;\n margin-bottom: $container-distance;\n\n #app-welcome-message {\n font-size: 18px;\n }\n\n #app-top-bar-right-col {\n display: flex;\n justify-content: flex-end;\n\n\n #app-username {\n align-self: center\n }\n\n #app-user-nav a:focus, #app-user-nav li:focus {\n border: 0\n }\n }\n}\n\n.default-container-layout {\n background-color: #FFF;\n border-radius: 6px;\n box-shadow: 0px 3px 6px $shadow-color;\n\n}\n\n#nav-wrap {\n background: #193E58;\n\n .nav-item {\n display: block;\n width: 100%;\n border-bottom: 1px solid #567184\n }\n table{\n overflow-x: auto!important;\n }\n .nav-link {\n color: white;\n display: block;\n width: 100%;\n height: 70px;\n line-height: 70px;\n padding: 0 20px\n }\n\n .nav-link img {\n margin-top: -5px;\n margin-right: 15px\n }\n\n .active {\n background: white;\n color: #193E58;\n }\n}\n\n$theme-colors: (\n \"primary\": #F0B52D\n);\n// Bootstrap and its default variables\n@import '../../node_modules/bootstrap/scss/bootstrap';\n// BootstrapVue and its default variables\n@import '../../node_modules/bootstrap-vue/src/index.scss';\n\n* {\n font-family: Roboto, sans-serif;\n}\n\n\n@media (max-width:1000px) {\n .v-sidebar-menu .vsm--item:first-of-type a {\n width: 95%;\n}\n table.b-table thead tr th:first-child,table.b-table tbody tr td:first-of-type{\n padding-left: 0.75rem;\n }\n .tableBig .table{\n margin-bottom: 40px;\n }\n .tableBig .table th, .tableBig .table td, .tableBig .table, .tableBig .table thead, .tableBig .table tbody, .tableBig .table tr{\n display: block;\n }\n .tableBig .table th{\n margin-bottom: 5px;\n }\n\t.tableBig .table tr {\n border: 1px solid #ccc;\n margin: 5px 0;\n border-radius: 14px;\n\n }\n table.b-table thead{\n border-radius: 14px;\n }\n\t.tableBig .table td, .tableBig .table th {\n\t\tborder: none;\n\t\tborder-bottom: 1px solid #eee;\n\t\tposition: relative;\n\t\twhite-space: normal;\n\t\ttext-align:center;\n width: 100% !important;\n }\n .tableBig .table th:last-of-type{\n border-bottom:0px\n }\n}\n\n\n\n@media (max-width:700px) {\n #nav-wrap{\n position:fixed;\n z-index:100\n }\n #nav-wrap div.v-sidebar-menu.vsm_expanded{\n max-width:250px !important\n }\n #nav-wrap div.v-sidebar-menu.vsm_collapsed div.vsm--scroll-wrapper{\n display:none\n }\n #nav-wrap div.v-sidebar-menu.vsm_collapsed{\n background-color:transparent !important\n }\n .v-sidebar-menu.vsm_collapsed .vsm--toggle-btn{\n margin:10px 0 0 10px\n }\n}\n\n@media only screen and (max-width: 992px) {\n #content{\n width: 100%;\n }\n .container-fluid{\n position: relative;\n }\n #app-top-bar #app-top-bar-right-col{\n justify-content: center;\n margin: 10px 0;\n }\n\n #app-top-bar{text-align:center}\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Default.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Default.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Default.vue?vue&type=template&id=8de264c6\"\nimport script from \"./Default.vue?vue&type=script&lang=js\"\nexport * from \"./Default.vue?vue&type=script&lang=js\"\nimport style0 from \"./Default.vue?vue&type=style&index=0&id=8de264c6&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"company-page pos-wrapper\"}},[(_vm.company)?_c('div',[_c('div',{attrs:{\"id\":\"company-wrapper\"}},[_c('div',{attrs:{\"id\":\"company-header\"}},[_c('b-container',[_c('b-row',[_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"8\",\"cols\":\"5\",\"id\":\"logo-container\"}},[(_vm.company.layout.logo && _vm.company.layout.logo_url)?_c('a',{attrs:{\"href\":_vm.company.layout.logo_url,\"target\":\"_blank\"}},[_c('b-img',{attrs:{\"src\":_vm.company.layout.logo,\"alt\":_vm.company.name,\"fluid\":\"\"}})],1):(_vm.company.layout.logo)?_c('b-img',{attrs:{\"src\":_vm.company.layout.logo,\"alt\":_vm.company.name,\"fluid\":\"\"}}):_c('b-img',{attrs:{\"src\":require('./../assets/logo-light.png'),\"alt\":_vm.company.name,\"fluid\":\"\"}})],1),_c('b-col',{staticClass:\"d-flex justify-content-end align-items-center\",attrs:{\"lg\":\"9\",\"sm\":\"4\",\"cols\":\"7\"}},[_c('b-dropdown',{staticClass:\"languages\",attrs:{\"id\":\"dropdown-right \",\"text\":_vm.languageLabel},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('div',[_c('b-img',{staticClass:\"selected-lang\",attrs:{\"src\":require('./../assets/icons/'+_vm.language+'.png')}}),_c('p',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.language.toUpperCase()))]),_c('b-icon',{staticClass:\"ml-3\",attrs:{\"icon\":\"chevron-down\",\"width\":\"14\"}})],1)]},proxy:true}],null,false,3112918707)},[_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('nl')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/nl.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_nl')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('de')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/de.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_de')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('en')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/en.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_en')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('es')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/es.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_es')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('fr')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/fr.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_fr')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('pt')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/pt.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_pt')))])],1)],1)],1)],1)],1)],1),(_vm.event)?_c('div',{class:{'company-nav-pages': _vm.$route.name !== 'ViewPointOfSale'},attrs:{\"id\":\"company-nav\"}},[_c('b-container',{staticClass:\"px-0\"},[(this.pos && this.pos.status === 'test')?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('pos_in_test_mode'))+\" \")]):_vm._e(),(_vm.event.banner_url)?_c('div',{staticClass:\"text-center position-relative banner-container\"},[_c('div',{staticClass:\"banner-background\",style:(`background-image: url(\"${_vm.event.banner_url}\");`)}),_c('img',{staticClass:\"pos-banner\",attrs:{\"src\":_vm.event.banner_url,\"alt\":\"\"}})]):_vm._e(),_c('b-row',{staticClass:\"event-top-header mx-0\",class:{'with-banner': _vm.event.banner_url}},[_c('b-col',{staticClass:\"pl-0 d-flex align-items-center mb-4 mb-lg-0\",attrs:{\"sm\":\"12\",\"lg\":\"7\"}},[(_vm.event && _vm.event.starts_at && _vm.event.ends_at)?_c('div',{staticClass:\"mr-3 mr-md-4\"},[_c('CalenderDay',{attrs:{\"starts-at\":_vm.event.starts_at,\"ends-at\":_vm.event.ends_at}})],1):_vm._e(),_c('div',[_c('h1',{staticClass:\"event-title\"},[_vm._v(_vm._s(_vm.event.name))]),(_vm.event.starts_at)?_c('p',{staticClass:\"event-date event-date-web mb-0\"},[_vm._v(_vm._s(_vm.getDateFormat(_vm.event.starts_at))+\" - \"+_vm._s(_vm.getDateFormat(_vm.event.ends_at)))]):_vm._e(),(_vm.event.starts_at)?_c('p',{staticClass:\"event-date event-date-mobile mb-0\"},[_vm._v(_vm._s(_vm.getDateFormatMobile(_vm.event.starts_at))+\" - \"+_vm._s(_vm.getDateFormatMobile(_vm.event.ends_at)))]):_vm._e(),(_vm.event.venue_id && _vm.event.venue)?_c('p',{staticClass:\"event-venue mb-0\"},[_vm._v(_vm._s(_vm.event.venue.name)+\", \"+_vm._s(_vm.event.venue.address)+\", \"+_vm._s(_vm.event.venue.city)+\", \"+_vm._s(_vm.event.venue.zip)+\", \"+_vm._s(_vm.event.venue.country_code))]):_vm._e()])]),(!_vm.countdown)?_c('b-col',{staticClass:\"stepper-wrapper pr-lg-0\",attrs:{\"sm\":\"12\",\"lg\":\"5\"}},[_c('b-row',{staticClass:\"stepper\",attrs:{\"align-h\":\"end\"}},_vm._l((_vm.steps),function(step,i){return _c('b-col',{key:step.route+i,staticClass:\"step\",class:step.done && _vm.$route.name !== step.route ? 'step-done' : (_vm.$route.name === step.route ? 'step-current' :'step-todo'),attrs:{\"cols\":_vm.stepperCols,\"lg\":\"auto\"}},[_c('div',{staticClass:\"w-100\"},[_c('div',{staticClass:\"ball-wrapper\"},[_c('div',{staticClass:\"ball pos-bg-secondary-color\"},[(step.done && _vm.$route.name !== step.route)?_c('b-icon',{attrs:{\"icon\":\"check-lg\",\"width\":\"16\",\"height\":\"14\"}}):_vm._e()],1)]),_c('div',{staticClass:\"label pos-accent-color\"},[_vm._v(_vm._s(step.label))])])])}),1)],1):_vm._e()],1)],1)],1):_vm._e(),_c('div',{attrs:{\"id\":\"company-content\"}},[_c('b-row',[(_vm.countdown)?_c('b-col',{staticClass:\"mt-5\"},[_c('FlipCountdown',{attrs:{\"deadline\":_vm.countdown}})],1):_c('b-col',[_c('router-view')],1)],1)],1)]),_c('div',{attrs:{\"id\":\"company-wrapper-2\"}},[_c('div',{staticClass:\"company-content\"},[(!_vm.countdown)?_c('b-container',{staticClass:\"footer-info-blocks\"},[_c('b-row',{attrs:{\"lg\":\"6\"}},[_c('b-col',{staticClass:\"info-card\"},[_c('h3',[_c('svg',{staticClass:\"mr-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"19\",\"width\":\"19\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm169.8-90.7c7.9-22.3 29.1-37.3 52.8-37.3l58.3 0c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24l0-13.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1l-58.3 0c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"}})]),_vm._v(\" \"+_vm._s(_vm.$t('shop_questions_event'))+\" \")]),_c('p',{staticClass:\"footer-description\"},[_vm._v(\" \"+_vm._s(_vm.$t('shop_questions_event_hint'))+\" \")]),_c('div',{staticClass:\"mb-0\"},[_c('tr',[_c('td',{staticClass:\"text-center\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"10.792\",\"height\":\"16.958\",\"viewBox\":\"0 0 10.792 16.958\"}},[_c('path',{attrs:{\"id\":\"Path_143\",\"data-name\":\"Path 143\",\"d\":\"M1.542,16.958a1.485,1.485,0,0,1-1.089-.453A1.485,1.485,0,0,1,0,15.417V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H9.25a1.485,1.485,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089V15.417A1.546,1.546,0,0,1,9.25,16.958Zm0-3.854v2.313H9.25V13.1ZM5.4,15.031a.757.757,0,1,0-.549-.222A.746.746,0,0,0,5.4,15.031ZM1.542,11.563H9.25V3.854H1.542Zm0-9.25H9.25V1.542H1.542Z\",\"fill\":\"#0a2337\"}})])]),_c('td',[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.company.phone))])])]),_c('tr',[_c('td',{staticClass:\"text-center\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"15.417\",\"height\":\"12.333\",\"viewBox\":\"0 0 15.417 12.333\"}},[_c('path',{attrs:{\"id\":\"Path_144\",\"data-name\":\"Path 144\",\"d\":\"M1.542,12.333A1.485,1.485,0,0,1,.453,11.88,1.485,1.485,0,0,1,0,10.792V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H13.875a1.484,1.484,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089v9.25a1.546,1.546,0,0,1-1.542,1.542Zm6.167-5.4L1.542,3.083v7.708H13.875V3.083Zm0-1.542,6.167-3.854H1.542ZM1.542,3.083v0Z\",\"fill\":\"#0a2337\"}})])]),_c('td',[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.company.email_customer_questions))])])]),(_vm.company.show_kvk_on_pos)?_c('tr',[_c('td',{staticClass:\"text-center\"},[_c('svg',{staticClass:\"mr-2\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"14\",\"width\":\"10.5\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"d\":\"M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l160 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm56 256c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0z\"}})])]),_c('td',[_c('p',{staticClass:\"m-0\"},[_vm._v(_vm._s(_vm.$t('shop_chamber_of_commerce_number'))+\": \"+_vm._s(_vm.company.kvk))])])]):_vm._e()])]),_c('b-col',{staticClass:\"footer-info-blocks-border\",attrs:{\"cols\":\"12\"}},[_c('div')]),_c('b-col',{staticClass:\"info-card info-block\",attrs:{\"lg\":\"6\"}},[_c('h3',[_c('svg',{staticClass:\"mr-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"19\",\"width\":\"19\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm169.8-90.7c7.9-22.3 29.1-37.3 52.8-37.3l58.3 0c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24l0-13.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1l-58.3 0c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"}})]),_vm._v(\" \"+_vm._s(_vm.$t('shop_questions_tickets'))+\" \")]),_c('p',{staticClass:\"footer-description\"},[_vm._v(\" \"+_vm._s(_vm.$t('shop_questions_tickets_hint'))+\" \")]),_c('div',[_c('tr',[_c('td',{staticClass:\"text-center\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"10.792\",\"height\":\"16.958\",\"viewBox\":\"0 0 10.792 16.958\"}},[_c('path',{attrs:{\"id\":\"Path_143\",\"data-name\":\"Path 143\",\"d\":\"M1.542,16.958a1.485,1.485,0,0,1-1.089-.453A1.485,1.485,0,0,1,0,15.417V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H9.25a1.485,1.485,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089V15.417A1.546,1.546,0,0,1,9.25,16.958Zm0-3.854v2.313H9.25V13.1ZM5.4,15.031a.757.757,0,1,0-.549-.222A.746.746,0,0,0,5.4,15.031ZM1.542,11.563H9.25V3.854H1.542Zm0-9.25H9.25V1.542H1.542Z\",\"fill\":\"#0a2337\"}})])]),_c('td',[_c('p',{staticClass:\"m-0\"},[_vm._v(\"+31 (0) 85 0603 589\")])])]),_c('tr',[_c('td',{staticClass:\"text-center\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"15.417\",\"height\":\"12.333\",\"viewBox\":\"0 0 15.417 12.333\"}},[_c('path',{attrs:{\"id\":\"Path_144\",\"data-name\":\"Path 144\",\"d\":\"M1.542,12.333A1.485,1.485,0,0,1,.453,11.88,1.485,1.485,0,0,1,0,10.792V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H13.875a1.484,1.484,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089v9.25a1.546,1.546,0,0,1-1.542,1.542Zm6.167-5.4L1.542,3.083v7.708H13.875V3.083Zm0-1.542,6.167-3.854H1.542ZM1.542,3.083v0Z\",\"fill\":\"#0a2337\"}})])]),_c('td',[_c('p',{staticClass:\"m-0\"},[_vm._v(\"support@fairtix.io\")])])])])])],1)],1):_vm._e()],1)]),_c('div',{attrs:{\"id\":\"company-footer\"}},[_c('b-container',{staticClass:\"company-footer px-0\"},[_c('b-row',[_c('b-col',{staticClass:\"first\"},[_c('img',{staticStyle:{\"max-width\":\"174px\"},attrs:{\"src\":\"https://prod-ft-frontend.s3.eu-west-1.amazonaws.com/img/logo-fairtix.png\",\"alt\":\"Fairtix\"}})]),_c('b-col',{staticClass:\"footer-fairtix-border\",attrs:{\"cols\":\"12\"}},[_c('div')]),_c('b-col',{staticClass:\"footer-fairtix\"},[_c('p',{staticClass:\"footer-strong\"},[_vm._v(\"Fairtix\")]),_c('p',[_vm._v(_vm._s(_vm.$t('shop_chamber_of_commerce_number'))+\": \"+_vm._s(_vm.$t('fairtix_location_coc')))]),_c('p',[_vm._v(_vm._s(_vm.$t('shop_vat'))+\": \"+_vm._s(_vm.$t('fairtix_location_vat')))])]),_c('b-col',{staticClass:\"footer-fairtix-border\",attrs:{\"cols\":\"12\"}},[_c('div')]),_c('b-col',{staticClass:\"footer-address\"},[_c('p',{staticClass:\"footer-strong\"},[_vm._v(_vm._s(_vm.$t('address')))]),_c('p',[_vm._v(_vm._s(_vm.$t('fairtix_location_street')))]),_c('p',[_vm._v(_vm._s(_vm.$t('fairtix_location_zip'))+\" \"+_vm._s(_vm.$t('fairtix_location_city')))]),_c('p',[_vm._v(_vm._s(_vm.$t('country_nl')))])])],1)],1)],1)]):_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1),_c('CookieBanner')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class userApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n login(email, password) {\n return this.axios.post('/user/login', {email, password})\n }\n\n me() {\n return this.axios.get('/user/me')\n }\n\n adminUpdate(user) {\n return this.axios.post('/user/' + user.id, user)\n }\n\n update(companyId, user) {\n return this.axios.post('/company/' + companyId + '/user/' + user.id, user)\n }\n\n loginAs(id) {\n return this.axios.post('/user/impersonate/' + id)\n }\n\n delete(companyId, userId) {\n return this.axios.delete('/company/' + companyId + '/user/' + userId)\n }\n\n updateLanguage(language) {\n return this.axios.post('/user/change-language', {language})\n }\n\n resetPassword(password, passwordConfirmation) {\n return this.axios.post('/user/reset-password', {\n password,\n password_confirmation: passwordConfirmation\n })\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"login\"}},[_c('b-row',{attrs:{\"align-v\":\"center\"}},[_c('div',{attrs:{\"id\":\"login-wrap\"}},[_c('div',{staticClass:\"p-3\"},[(_vm.whitelabel == 'fairtix')?_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/logo-light.png')}}):(_vm.whitelabel == 'baron')?_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/logo-baron-fairtix.png')}}):_vm._e()],1),_c('b-alert',{attrs:{\"variant\":\"danger\",\"show\":_vm.error}},[_vm._v(\" \"+_vm._s(_vm.$t('login_error'))+\" \")]),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_email'),\"type\":\"email\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_password'),\"type\":\"password\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.login()}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('b-form-group',[(!_vm.loading)?_c('b-button',{staticClass:\"float-right\",attrs:{\"block\":\"\",\"variant\":\"primary\"},on:{\"click\":_vm.login}},[_vm._v(_vm._s(_vm.$t('login_button')))]):_c('b-spinner')],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"login\">\n <b-row align-v=\"center\">\n <div id=\"login-wrap\">\n <div class=\"p-3\">\n <b-img v-if=\"whitelabel == 'fairtix'\" class=\"logo\" :src=\"require('../assets/logo-light.png')\"></b-img>\n <b-img v-else-if=\"whitelabel == 'baron'\" class=\"logo\" :src=\"require('../assets/logo-baron-fairtix.png')\"></b-img>\n </div>\n <b-alert variant=\"danger\" :show=\"error\">\n {{ $t('login_error') }}\n </b-alert>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_email')\" type=\"email\" v-model=\"email\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_password')\" type=\"password\" @keyup.enter=\"login()\" v-model=\"password\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-button block class=\"float-right\" variant=\"primary\" @click=\"login\" v-if=\"!loading\">{{ $t('login_button') }}</b-button>\n <b-spinner v-else></b-spinner>\n </b-form-group>\n </div>\n </b-row>\n </div>\n</template>\n<script>\nimport api from '../api'\nimport {mapState, mapActions} from 'vuex'\n\nexport default {\n name: 'Login',\n data() {\n return {\n email: '',\n password: '',\n loading: false,\n error: false,\n whitelabel: 'fairtix'\n }\n },\n computed: {\n ...mapState(['user'])\n },\n created() {\n\n let curr_url = window.location.href\n if(curr_url && curr_url.indexOf('baron.') >= 1){\n this.whitelabel = 'baron'\n }\n\n document.title = this.$t('backend_title_login')\n if (this.user) {\n if(this.user.role === 'customer_support') {\n this.$router.push({name: 'CustomerSupportDashboard'})\n }\n else {\n this.$router.push({name: 'Dashboard'})\n }\n }\n },\n methods: {\n login() {\n this.loading = true\n this.error = false\n api.user().login(this.email, this.password).then(async (token) => {\n this.$store.commit('login', token)\n await this.loadUser()\n if(this.$store.state.user && this.$store.state.user.company.signup_agreed_metadata === null) {\n this.$router.push({name: 'SignupConfirmation'})\n return;\n }\n this.$router.push({name: 'Dashboard'})\n }).catch(() => {\n this.error = true\n }).finally(() => {\n this.loading = false\n })\n },\n ...mapActions(['loadUser'])\n }\n}\n</script>\n<style @scoped lang=\"scss\">\n #login, #login > .row {\n height: 100%;\n }\n #login-wrap {\n background: #193E58;\n padding: 50px;\n legend {\n color:white;\n }\n img {\n max-width: 100%;\n }\n }\n\n#login-wrap {\n margin: auto;\n}\n\n@media only screen and (max-width: 700px) {\n #login-wrap {\n width: 90%;\n }\n}\n\n@media only screen and (min-width: 701px) {\n #login-wrap {\n width: 450px;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=40cd4f15\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=40cd4f15&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"signup\"},[_c('b-row',[(_vm.loading)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"1\",\"order-lg\":\"1\"}},[_c('div',{staticClass:\"loading-logo text-center d-block\"},[_c('b-img',{attrs:{\"src\":require('./../assets/fairtix.gif')}}),_c('ul',{staticClass:\"list-unstyled d-block mt-2\"},_vm._l((_vm.loadingList),function(ll,index){return _c('li',{key:index},[_vm._v(_vm._s(ll))])}),0)],1)]):_c('b-col',{staticClass:\"signup-form\",attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"1\",\"order-lg\":\"1\"}},[_c('div',[(_vm.step === 1)?_c('div',{staticClass:\"step\"},[_c('div',{staticClass:\"create-account-wrapper row\"},[_c('b-col',[_c('h1',{staticClass:\"create-account-header\"},[_vm._v(_vm._s(_vm.$t('signup_create_account')))])]),_c('b-col',{staticClass:\"d-flex justify-content-end align-items-center\",attrs:{\"lg\":\"4\",\"sm\":\"4\",\"cols\":\"7\"}},[_c('b-dropdown',{staticClass:\"languages\",attrs:{\"id\":\"dropdown-right \",\"text\":_vm.languageLabel},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('div',[_c('b-img',{staticClass:\"selected-lang\",attrs:{\"src\":require('./../assets/icons/'+_vm.language+'.png')}}),_c('p',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.language.toUpperCase()))]),_c('b-icon',{staticClass:\"ml-3\",attrs:{\"icon\":\"chevron-down\",\"width\":\"14\"}})],1)]},proxy:true}],null,false,3112918707)},[_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('nl')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/nl.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_nl')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('de')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/de.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_de')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('en')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/en.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_en')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('es')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/es.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_es')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('fr')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/fr.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_fr')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('pt')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/pt.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_pt')))])],1)],1)],1)],1),_c('p',{staticClass:\"signup-details mb-4\"},[_vm._v(_vm._s(_vm.$t('signup_enter_details')))]),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{staticClass:\"mr-0 mr-md-4\",attrs:{\"placeholder\":_vm.$t('customer_first_name'),\"type\":\"text\",\"state\":_vm.state.first_name,\"aria-describedby\":\"input-f-name-feedback\"},on:{\"input\":function($event){_vm.state.first_name = null}},model:{value:(_vm.first_name),callback:function ($$v) {_vm.first_name=$$v},expression:\"first_name\"}}),(_vm.state.first_name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-f-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e()],1),_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('customer_last_name'),\"type\":\"text\",\"state\":_vm.state.last_name,\"aria-describedby\":\"input-l-name-feedback\"},on:{\"input\":function($event){_vm.state.last_name = null}},model:{value:(_vm.last_name),callback:function ($$v) {_vm.last_name=$$v},expression:\"last_name\"}}),(_vm.state.last_name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-l-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e()],1)],1),_c('div',{staticClass:\"d-block d-md-flex\"}),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_email'),\"type\":\"email\",\"state\":_vm.state.email,\"aria-describedby\":\"input-f-name-feedback\"},on:{\"input\":function($event){return _vm.validateEmail($event)}},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),(_vm.state.email === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-email-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e()],1):(_vm.step === 2)?_c('div',{staticClass:\"step\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('signup_step_2_title')))]),_c('p',{staticClass:\"signup-details mb-4\"},[_vm._v(_vm._s(_vm.$t('signup_step_2_enter_details')))]),_c('b-form-input',{attrs:{\"state\":_vm.state.name,\"placeholder\":_vm.$t('customer_company_name'),\"type\":\"text\"},on:{\"input\":function($event){_vm.state.name = null}},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),(_vm.state.name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-select',{attrs:{\"options\":_vm.countries,\"text-field\":\"name\",\"value-field\":\"code\",\"state\":_vm.state.country,\"aria-describedby\":\"input-country-feedback\"},on:{\"change\":function($event){_vm.state.country = null}},model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}}),(_vm.state.country === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-country-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"state\":_vm.state.kvk,\"placeholder\":_vm.$t('signup_chamber_of_commerce'),\"type\":\"text\"},on:{\"input\":function($event){_vm.state.kvk = null}},model:{value:(_vm.kvk),callback:function ($$v) {_vm.kvk=$$v},expression:\"kvk\"}}),(_vm.state.kvk === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-chamber-of-commerce-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('company_phone'),\"type\":\"tel\"},model:{value:(_vm.phone),callback:function ($$v) {_vm.phone=$$v},expression:\"phone\"}}),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('signup_iban'),\"type\":\"text\",\"state\":_vm.state.payout_iban,\"aria-describedby\":\"input-iban-feedback\"},on:{\"input\":function($event){_vm.state.payout_iban = null}},model:{value:(_vm.payout_iban),callback:function ($$v) {_vm.payout_iban=$$v},expression:\"payout_iban\"}}),(_vm.state.payout_iban === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-iban-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('signup_iban_holder_name'),\"type\":\"text\",\"state\":_vm.state.ibanHolder,\"aria-describedby\":\"input-iban-holder-feedback\"},on:{\"input\":function($event){_vm.state.ibanHolder = null}},model:{value:(_vm.ibanHolder),callback:function ($$v) {_vm.ibanHolder=$$v},expression:\"ibanHolder\"}}),(_vm.state.ibanHolder === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-iban-holder-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('hr'),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_password'),\"type\":\"password\",\"state\":_vm.state.password,\"aria-describedby\":\"input-password-feedback\"},on:{\"input\":function($event){_vm.state.password = null; _vm.validatePassword($event)}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}),(_vm.state.passwordValidation.length)?_c('div',_vm._l((_vm.state.passwordValidation),function(er){return _c('span',{key:er,staticClass:\"d-block text-danger small\"},[_vm._v(_vm._s(_vm.$t(er)))])}),0):_vm._e(),(_vm.state.passwordValidation === false)?_c('b-form-invalid-feedback',{attrs:{\"aria-invalid\":\"true\"}},[_vm._v(_vm._s(_vm.$t('signup_password_strength')))]):_vm._e(),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('signup_confirm_password'),\"type\":\"password\",\"state\":_vm.state.passwordConfirmation,\"aria-describedby\":\"input-password-c-feedback\"},on:{\"input\":function($event){_vm.state.passwordConfirmation = null}},model:{value:(_vm.passwordConfirmation),callback:function ($$v) {_vm.passwordConfirmation=$$v},expression:\"passwordConfirmation\"}}),(_vm.state.passwordConfirmation === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-password-c-feedback\"}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.password !== _vm.passwordConfirmation ? 'password_mismatch' : 'field_is_required'))+\" \")]):_vm._e(),_c('b-form-checkbox',{staticClass:\"mt-2\",attrs:{\"id\":\"terms\",\"name\":\"terms\"},model:{value:(_vm.terms),callback:function ($$v) {_vm.terms=$$v},expression:\"terms\"}},[_c('span',{staticClass:\"terms-conditions-text\",domProps:{\"innerHTML\":_vm._s(_vm.$t('signup_terms'))}})])],1):_vm._e(),_c('div',{staticClass:\"signup-footer mt-2\"},[_c('b-form-group',[(!_vm.loading && _vm.step===2)?_c('b-button',{staticClass:\"w-20\",attrs:{\"id\":\"back-button\",\"disabled\":_vm.loading},on:{\"click\":function($event){_vm.step--}}},[_c('b-icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back'))+\" \")],1):_vm._e(),_c('b-button',{staticClass:\"float-right\",class:{'w-100': _vm.step === 1, 'w-75': _vm.step === 2, 'mt-4': _vm.step === 1},attrs:{\"id\":\"submit-button\",\"disabled\":_vm.loading || (_vm.step === 2 && !_vm.terms)},on:{\"click\":_vm.next}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t(_vm.step === 1 ? 'next' : 'submit'))+\" \")],1)],1),_c('p',{staticClass:\"text-center mt-4\"},[_vm._v(_vm._s(_vm.$t('signup_already_user'))+\" \"),_c('router-link',{attrs:{\"to\":\"/login\"}},[_vm._v(_vm._s(_vm.$t('login_button')))])],1)],1)])]),_c('b-col',{staticClass:\"signup-img\",attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"2\",\"order-lg\":\"2\"}},[_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/signup-img.jpg')}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export function groupBy(collection, iteratee) {\n return reduce(collection, (result, value, key) => {\n key = iteratee(value)\n if (Object.prototype.hasOwnProperty.call(result, key)) {\n result[key].push(value)\n } else {\n baseAssignValue(result, key, [value])\n }\n return result\n }, {})\n}\n\nexport function getCookie(name) {\n let nameEQ = name + \"=\";\n let ca = document.cookie.split(\";\");\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) === \" \") c = c.substring(1, c.length);\n if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);\n }\n return null;\n}\n\nexport function setCookie(name, value, days) {\n let expires = \"\";\n if (days) {\n let date = new Date();\n date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);\n expires = \"; expires=\" + date.toUTCString();\n }\n document.cookie = name + \"=\" + (value || \"\") + expires + \"; path=/\";\n}\n\nexport function setLocalStorage(key, value) {\n localStorage.setItem( key, value )\n}\n\nexport function getLocalStorage(key) {\n return localStorage.getItem( key )\n}\n\nexport function getEnvironment(){\n let isLocalhost = window.location.href.includes('localhost:8080');\n return isLocalhost ? 'local' : 'prod';\n}\n\nexport function validateSlug( value ){\n return /^[a-z0-9-$-: _@&.+!*'()]+$/i.test(value) && !/\\s/.test(value);\n}\n\nexport function validateUrl(value) {\n return /^(?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:[/?#]\\S*)?$/i.test(value);\n}\n\nexport function validateEmail( email ){\n if(email == null){ return null }\n return email.toLowerCase().match(/^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/)\n}\n\nexport function getOrderStatusPageUrl(orderId, orderSecret){\n let url = '';\n if(getEnvironment() === 'local'){\n url = 'http://localhost:8080/';\n }else{\n url = 'https://order.fairtix.io/';\n }\n return url + 'order/' + orderId + '/' + orderSecret + '/status';\n}\n\nexport function baseAssignValue(object, key, value) {\n if (key === '__proto__') {\n Object.defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n })\n } else {\n object[key] = value\n }\n}\n\nexport function reduce(collection, iteratee, accumulator) {\n const initAccum = arguments.length < 3\n return arrayReduce(collection, iteratee, accumulator, initAccum, baseEach)\n}\n\nexport function arrayReduce(array, iteratee, accumulator, initAccum) {\n let index = -1\n const length = array == null ? 0 : array.length\n\n if (initAccum && length) {\n accumulator = array[++index]\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array)\n }\n return accumulator\n}\n\nexport function baseEach(collection, iteratee) {\n if (collection == null) {\n return collection\n }\n\n const length = collection.length\n const iterable = Object(collection)\n let index = -1\n\n while (++index < length) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break\n }\n }\n return collection\n}\n\nexport function deepClone(obj) {\n return JSON.parse(JSON.stringify(obj));\n}\n\nexport function applyCampaignRule(campaign, name, price) {\n if(campaign) {\n price = parseFloat(price);\n for(const r of campaign.rules) {\n let apply = true;\n for (const set of r.sets) {\n if(set.field === 'price') {\n if(set.operation === 'less') {\n if(!(price < parseFloat(set.value))) {\n apply = false;\n break;\n }\n }\n else if(set.operation === 'greater') {\n if(!(price > parseFloat(set.value))) {\n apply = false;\n break;\n }\n }\n else if(set.operation === 'equal') {\n if(price !== parseFloat(set.value)) {\n apply = false;\n break;\n }\n }\n else {\n apply = false;\n break;\n }\n }\n else if(set.field === 'name') {\n if(set.operation === 'equal') {\n if(name.toLowerCase() !== set.value.toLowerCase()) {\n apply = false;\n break;\n }\n }\n else if(set.operation === 'contains') {\n if(!name.toLowerCase().includes(set.value.toLowerCase())) {\n apply = false;\n break;\n }\n }\n else {\n apply = false;\n break;\n }\n }\n }\n if(apply) {\n if(r.discount_type === 'percentage') {\n price = price - (price * (parseFloat(r.discount_value)/100));\n }\n else if(r.discount_type === 'fixed') {\n price = price - parseFloat(r.discount_value);\n }\n price = parseFloat( price.toFixed(2))\n }\n }\n }\n return price;\n}\nexport function applyCampaignHideRule(campaign, name, price) {\n if(campaign && campaign.hiderules.length) {\n price = parseFloat(price);\n for (const set of campaign.hiderules) {\n if(set.field === 'price') {\n if(set.operation === 'less') {\n if(price < parseFloat(set.value)) {\n return true;\n }\n }\n else if(set.operation === 'greater') {\n if(price > parseFloat(set.value)) {\n return true;\n }\n }\n else if(set.operation === 'equal') {\n if(price === parseFloat(set.value)) {\n return true;\n }\n }\n else {\n return false;\n }\n }\n else if(set.field === 'name') {\n if(set.operation === 'equal') {\n if(name.toLowerCase() === set.value.toLowerCase()) {\n return true;\n }\n }\n else if(set.operation === 'contains') {\n if(name.toLowerCase().includes(set.value.toLowerCase())) {\n return true;\n }\n }\n else {\n return false;\n }\n }\n }\n }\n return false;\n}\n\nexport function randomStr(length = 10) {\n let result = '';\n const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n const charactersLength = characters.length;\n let counter = 0;\n while (counter < length) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n counter += 1;\n }\n return result;\n}\n\nexport function validatePassword(value, isEdit = false) {\n const passwordValidation = [];\n if(isEdit && value.length === 0) {\n return [];\n }\n if(value.length < 8) {\n passwordValidation.push('password_validation_8_chars');\n }\n if(!/[a-z]/.test(value)) {\n passwordValidation.push('password_validation_lowercase');\n }\n if(!/[A-Z]/.test(value)) {\n passwordValidation.push('password_validation_capital');\n }\n if(!/\\d/.test(value)) {\n passwordValidation.push('password_validation_number');\n }\n if(!/[!@#$%^&*(),.?\":{}|<>=+_-]/.test(value)) {\n passwordValidation.push('password_validation_special_char');\n }\n\n return passwordValidation;\n}","<template>\n <div class=\"signup\">\n <b-row>\n <b-col v-if=\"loading\" cols=\"12\" lg=\"6\" order=\"1\" order-lg=\"1\">\n <div class=\"loading-logo text-center d-block\">\n <b-img :src=\"require('./../assets/fairtix.gif')\"/>\n\n <ul class=\"list-unstyled d-block mt-2\">\n <li v-for=\"(ll, index) in loadingList\" :key=\"index\">{{ ll }}</li>\n </ul>\n </div>\n </b-col>\n <!-- signup form -->\n <b-col v-else cols=\"12\" lg=\"6\" class=\"signup-form\" order=\"1\" order-lg=\"1\">\n <div>\n <div class=\"step\" v-if=\"step === 1\">\n <div class=\"create-account-wrapper row\">\n <b-col>\n <h1 class=\"create-account-header\">{{ $t('signup_create_account') }}</h1>\n </b-col>\n <b-col lg=\"4\" sm=\"4\" cols=\"7\" class=\"d-flex justify-content-end align-items-center\">\n <b-dropdown id=\"dropdown-right \" :text=\"languageLabel\" class=\"languages\">\n <template v-slot:button-content>\n <div>\n <b-img class=\"selected-lang\" :src=\"require('./../assets/icons/'+language+'.png')\"/>\n <p class=\"mb-0\">{{language.toUpperCase()}}</p>\n <b-icon icon=\"chevron-down\" width=\"14\" class=\"ml-3\"></b-icon>\n </div>\n </template>\n <b-dropdown-item @click=\"changeLanguage('nl')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/nl.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_nl') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('de')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/de.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_de') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('en')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/en.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_en') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('es')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/es.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_es') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('fr')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/fr.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_fr') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('pt')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/pt.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_pt') }}</p></b-dropdown-item>\n </b-dropdown>\n </b-col>\n </div>\n <p class=\"signup-details mb-4\">{{ $t('signup_enter_details') }}</p>\n <b-row>\n <b-col sm=\"12\" md=\"6\">\n <b-form-input\n class=\"mr-0 mr-md-4\"\n :placeholder=\"$t('customer_first_name')\"\n type=\"text\"\n v-model=\"first_name\"\n :state=\"state.first_name\"\n @input=\"state.first_name = null\"\n aria-describedby=\"input-f-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.first_name === false\" id=\"input-f-name-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n </b-col>\n <b-col sm=\"12\" md=\"6\">\n <b-form-input\n :placeholder=\"$t('customer_last_name')\"\n type=\"text\"\n v-model=\"last_name\"\n :state=\"state.last_name\"\n @input=\"state.last_name = null\"\n aria-describedby=\"input-l-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.last_name === false\" id=\"input-l-name-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n </b-col>\n </b-row>\n <div class=\"d-block d-md-flex\">\n\n </div>\n <b-form-input\n :placeholder=\"$t('login_email')\"\n type=\"email\"\n v-model=\"email\"\n :state=\"state.email\"\n @input=\"validateEmail($event)\"\n aria-describedby=\"input-f-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.email === false\" id=\"input-email-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n </div>\n <div class=\"step\" v-else-if=\"step === 2\">\n\n <h2>{{ $t('signup_step_2_title') }}</h2>\n <p class=\"signup-details mb-4\">{{ $t('signup_step_2_enter_details') }}</p>\n\n <b-form-input v-model=\"name\" :state=\"state.name\" @input=\"state.name = null\" :placeholder=\"$t('customer_company_name')\" type=\"text\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.name === false\" id=\"input-name-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-select\n v-model=\"country\"\n :options=\"countries\"\n text-field=\"name\"\n value-field=\"code\"\n :state=\"state.country\"\n @change=\"state.country = null\"\n aria-describedby=\"input-country-feedback\"></b-select>\n <b-form-invalid-feedback v-if=\"state.country === false\" id=\"input-country-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input v-model=\"kvk\" @input=\"state.kvk = null\" :state=\"state.kvk\" :placeholder=\"$t('signup_chamber_of_commerce')\" type=\"text\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.kvk === false\" id=\"input-chamber-of-commerce-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input v-model=\"phone\" :placeholder=\"$t('company_phone')\" type=\"tel\"></b-form-input>\n <b-form-input\n v-model=\"payout_iban\"\n :placeholder=\"$t('signup_iban')\"\n type=\"text\"\n :state=\"state.payout_iban\"\n @input=\"state.payout_iban = null\"\n aria-describedby=\"input-iban-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.payout_iban === false\" id=\"input-iban-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input\n v-model=\"ibanHolder\"\n :placeholder=\"$t('signup_iban_holder_name')\"\n type=\"text\"\n :state=\"state.ibanHolder\"\n @input=\"state.ibanHolder = null\"\n aria-describedby=\"input-iban-holder-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.ibanHolder === false\" id=\"input-iban-holder-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n <hr>\n\n <b-form-input\n v-model=\"password\"\n :placeholder=\"$t('login_password')\"\n type=\"password\"\n :state=\"state.password\"\n @input=\"state.password = null; validatePassword($event)\"\n aria-describedby=\"input-password-feedback\"></b-form-input>\n\n <div v-if=\"state.passwordValidation.length\">\n <span class=\"d-block text-danger small\" v-for=\"er in state.passwordValidation\" :key=\"er\">{{ $t(er) }}</span>\n </div>\n <b-form-invalid-feedback v-if=\"state.passwordValidation === false\" aria-invalid=\"true\">{{$t('signup_password_strength') }}</b-form-invalid-feedback>\n\n <b-form-input\n v-model=\"passwordConfirmation\"\n :placeholder=\"$t('signup_confirm_password')\"\n type=\"password\"\n @input=\"state.passwordConfirmation = null\"\n :state=\"state.passwordConfirmation\"\n aria-describedby=\"input-password-c-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.passwordConfirmation === false\" id=\"input-password-c-feedback\">\n {{ $t(password !== passwordConfirmation ? 'password_mismatch' : 'field_is_required') }}\n </b-form-invalid-feedback>\n <b-form-checkbox\n class=\"mt-2\"\n id=\"terms\"\n v-model=\"terms\"\n name=\"terms\"\n >\n <span v-html=\"$t('signup_terms')\" class=\"terms-conditions-text\"></span>\n </b-form-checkbox>\n </div>\n <div class=\"signup-footer mt-2\">\n <b-form-group>\n <b-button id=\"back-button\" class=\"w-20\" v-if=\"!loading && step===2\" @click=\"step--\" :disabled=\"loading\">\n <b-icon icon=\"arrow-left\" class=\"mr-1\"/> {{ $t('back') }}\n </b-button>\n <b-button id=\"submit-button\" class=\"float-right\" :class=\"{'w-100': step === 1, 'w-75': step === 2, 'mt-4': step === 1}\" @click=\"next\" :disabled=\"loading || (step === 2 && !terms)\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon>\n {{ $t(step === 1 ? 'next' : 'submit') }}\n </b-button>\n </b-form-group>\n <p class=\"text-center mt-4\">{{ $t('signup_already_user') }}\n <router-link to=\"/login\">{{ $t('login_button') }}</router-link>\n </p>\n </div>\n </div>\n </b-col>\n\n <!-- signup img -->\n <b-col cols=\"12\" lg=\"6\" class=\"signup-img\" order=\"2\" order-lg=\"2\">\n <b-img class=\"logo\" :src=\"require('../assets/signup-img.jpg')\"></b-img>\n </b-col>\n </b-row>\n </div>\n</template>\n<script>\n\nimport api from \"@/api\";\nimport {validateEmail, validatePassword} from \"@/functions\";\nimport { mapActions, mapMutations, mapState } from \"vuex\";\n\nexport default {\n name: 'Signup',\n data() {\n return {\n state: {\n first_name: null,\n last_name: null,\n email: null,\n country: null,\n payout_iban: null,\n ibanHolder: null,\n password: null,\n passwordValidation: [],\n passwordConfirmation: null,\n kvk: null\n },\n email: '',\n first_name: '',\n last_name: '',\n company: '',\n terms: false,\n loading: false,\n error: false,\n step: 1,\n country: null,\n countries: [],\n payout_iban: null,\n ibanHolder: null,\n password: null,\n passwordConfirmation: null,\n name: null,\n kvk: null,\n phone: null,\n\n loadingList: []\n }\n },\n created() {\n api.company().countries().then(countries => {\n this.countries = [{code: null, name: this.$t('company_country'), disabled: true}].concat(countries)\n });\n },\n methods: {\n next() {\n this.state = {\n first_name: null,\n last_name: null,\n email: null,\n country: null,\n payout_iban: null,\n ibanHolder: null,\n password: null,\n passwordValidation: [],\n passwordConfirmation: null,\n name: null\n }\n let valid = true;\n if (this.step === 1) {\n if (!this.first_name) {\n valid = false;\n this.state.first_name = false;\n }\n if (!this.last_name) {\n valid = false;\n this.state.last_name = false;\n }\n if (!this.email) {\n valid = false;\n this.state.email = false;\n }\n if (!validateEmail(this.email)) {\n valid = false;\n this.state.email = false;\n }\n if (!valid) {\n return;\n }\n\n this.step++;\n return;\n }\n\n if (this.step === 2) {\n if (!this.name) {\n valid = false;\n this.state.name = false;\n }\n if (!this.kvk) {\n valid = false;\n this.state.kvk = false;\n }\n if (!this.country) {\n valid = false;\n this.state.country = false;\n }\n if (!this.payout_iban) {\n valid = false;\n this.state.payout_iban = false;\n }\n if (!this.ibanHolder) {\n valid = false;\n this.state.ibanHolder = false;\n }\n if (!this.password) {\n valid = false;\n this.state.password = false;\n }\n if (this.state.passwordValidation.length) {\n valid = false;\n this.state.password = false;\n }\n if (!this.passwordConfirmation) {\n valid = false;\n this.state.passwordConfirmation = false;\n }\n if (this.password && this.passwordConfirmation && this.password !== this.passwordConfirmation) {\n valid = false;\n this.state.password = false;\n this.state.passwordConfirmation = false;\n }\n\n if (!valid) {\n return;\n }\n }\n\n this.loading = true;\n\n let finished = false;\n\n this.loadingList.push(this.$t('signup_loading_creating_account'));\n const t1 = setTimeout(() => {\n this.loadingList.push(this.$t('signup_loading_configuring_the_layout'));\n }, 2000);\n const t2 = setTimeout(() => {\n this.loadingList.push(this.$t('signup_loading_almost_done'));\n }, 4000);\n\n const t3 = setTimeout(() => {\n this.loadingList.push(this.$t('signup_loading_go_to_dashboard'));\n finished = true;\n }, 5500)\n\n api.company().signup({\n name: this.name,\n phone: this.phone,\n country: this.country,\n payout_iban: this.payout_iban,\n iban_holder: this.ibanHolder,\n kvk: this.kvk,\n first_name: this.first_name,\n last_name: this.last_name,\n email: this.email,\n password: this.password,\n password_confirmation: this.passwordConfirmation,\n }).then((token) => {\n if(finished) {\n this.$store.commit('login', token)\n this.loadUser()\n this.$router.push({name: 'Events'})\n }\n else {\n const int = setInterval(() => {\n if(finished) {\n clearInterval(int);\n this.$store.commit('login', token)\n this.loadUser()\n this.$router.push({name: 'Events'})\n }\n }, 100)\n }\n }).catch(() => {\n this.loading = false;\n finished = false;\n this.loadingList = [];\n clearTimeout(t1);\n clearTimeout(t2);\n clearTimeout(t3);\n });\n },\n validateEmail(email) {\n this.state.email = null\n if(!validateEmail(email)) {\n this.state.email = false\n }\n },\n validatePassword(password) {\n this.state.passwordValidation = validatePassword(password);\n },\n changeLanguage(lang) {\n this.$store.commit('setLanguage', lang)\n },\n ...mapActions(['loadUser']),\n ...mapMutations(['setUser', 'setLanguage'])\n },\n computed: {\n ...mapState(['language']),\n languageLabel(){\n return this.$t('language_' + this.language)\n },\n }\n}\n</script>\n<style scoped lang=\"scss\">\n\n$main-color: #193E5B; \n$placeholder-color: #b1c6ca;\n\nh1, h2{\n color: $main-color;\n font-weight:bold\n}\n\np.signup-details{\n color: $main-color\n}\n\n#back-button{\n padding:15px 0px\n}\n\n#submit-button{\n background-color: $main-color;\n color:#FFF;\n padding:15px 0px\n}\n\n.terms-conditions-text{\n font-size:10pt\n}\n\n.signup, .signup > .row {\n min-height: 100vh;\n overflow: hidden;\n}\n\n.signup-form {\n padding: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100%;\n\n & > div {\n width: 80%;\n }\n}\n\n.step {\n width: 80%;\n\n input, select {\n margin-top: 1rem;\n display: block;\n border: none;\n border-radius: .3rem;\n box-shadow: 2px 3px 5px #eee, -1px -2px 4px #eee;\n }\n\n input::placeholder, select::placeholder{\n color:$placeholder-color\n }\n\n .custom-control {\n margin-bottom: 2rem;\n }\n\n button {\n padding: .7rem;\n color: #fff;\n background-color: #1E4167;\n border-radius: .4rem;\n }\n}\n\n.signup-footer {\n width: 80%;\n display: block;\n}\n\n.signup-img {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #F7FAFF;\n\n & > img {\n width: 70%;\n }\n}\n\n// responsive for laptop screen\n@media (max-width: 1550px) {\n .signup-form {\n padding: 10px;\n\n p {\n font-size: .9rem;\n }\n }\n .step {\n input {\n border-radius: .2rem;\n font-size: .9rem;\n box-shadow: 1px 2px 4px #eee, -1px -1px 3px #eee;\n }\n\n button {\n padding: .6rem;\n border-radius: .3rem;\n font-size: .9rem;\n }\n\n .custom-control {\n font-size: .9rem;\n }\n h1.create-account-header {\n font-size: 27px;\n }\n }\n}\n@media (max-width: 1045px) {\n h1.create-account-header {\n font-size: 30px;\n }\n}\n// responsive for ipad screen\n@media (max-width: 992px) {\n .step{\n width:100%\n }\n .signup-footer{\n width:100%\n }\n .signup-img {\n min-height: 30vh;\n\n & > img {\n width: 40%;\n }\n }\n}\n\n// responsive for phone screen\n@media (max-width: 576px) {\n .signup-form {\n padding: 2rem 1.5rem;\n\n & > div {\n width: 100%;\n }\n }\n .signup-img {\n & > img {\n width: 60%;\n }\n }\n h1.create-account-header {\n font-size: 25px;\n }\n .create-account-wrapper {\n margin-bottom: 10px;\n }\n}\n\n.loading-logo {\n margin-top: 200px;\n}\n\n.loading-logo img {\n height: 200px;\n}\n\n.w-20 {\n width: 20%;\n}\n</style>\n<style lang=\"scss\">\n.signup {\n .dropdown.languages button {\n background-color: #f8fafe !important;\n }\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Signup.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Signup.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Signup.vue?vue&type=template&id=79d034a7&scoped=true\"\nimport script from \"./Signup.vue?vue&type=script&lang=js\"\nexport * from \"./Signup.vue?vue&type=script&lang=js\"\nimport style0 from \"./Signup.vue?vue&type=style&index=0&id=79d034a7&prod&scoped=true&lang=scss\"\nimport style1 from \"./Signup.vue?vue&type=style&index=1&id=79d034a7&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"79d034a7\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.user && _vm.$can('dashboard_view'))?_c('div',[(_vm.user.role === 'customer_support')?_c('customer-support-dashboard'):_c('normal-dashboard')],1):_c('div',[_c('h3',[_vm._v(\"Hello\")])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"dashboard\"}},[_c('b-row',[_vm._l((_vm.currentEvents),function(event){return _c('b-col',{key:'c' + event.id,attrs:{\"cols\":\"12\",\"lg\":\"6\",\"sm\":\"12\",\"xl\":\"4\"}},[_c('div',{staticClass:\"event-statistics\"},[_c('div',{staticClass:\"event-statistics-title px-4 py-3 bg-blue\"},[_c('b-row',[_c('b-col',{staticClass:\"text-white event-name\",attrs:{\"title\":event.name}},[_vm._v(\" \"+_vm._s(_vm.$t('dashboard_events_scans'))+\" \"+_vm._s(event.name)+\" \")]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"2\"}},[(_vm.$can('dashboard_view'))?_c('b-icon',{staticClass:\"cursor-pointer text-white\",attrs:{\"icon\":\"pie-chart-fill\"},on:{\"click\":function($event){return _vm.getEventSoldTickets(event)}}}):_vm._e()],1)],1)],1),_c('div',{staticClass:\"event-statistics-content active-event text-center\"},[_c('vue-ellipse-progress',{attrs:{\"progress\":event.percentage,\"color\":(event.percentage === 100 ? '#4FD166' : '#1B3E58'),\"fontColor\":(event.percentage === 100 ? '#4FD166' : '#1B3E58'),\"size\":130,\"thickness\":\"3%\",\"emptyThickness\":\"3%\"}},[_c('span',{staticClass:\"spinner-body\",style:('color:' + (event.percentage === 100 ? '#4FD166' : '#1B3E58'))},[_vm._v(_vm._s(event.scanned + event.box_offices))])]),_c('span',{staticClass:\"d-block mt-2 tickets-sold\"},[_vm._v(_vm._s(_vm.$t('dashboard_total_visitors_inside')))])],1),_c('div',{staticClass:\"event-statistics-stats scans pb-3\"},[_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.scanned))]),_c('span',{staticClass:\"d-block\"},[_vm._v(_vm._s(_vm.$t('dashboard_scanned')))])]),_c('b-col',{staticClass:\"text-center\"},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.total_tickets - event.scanned))]),_c('span',{staticClass:\"d-block\"},[_vm._v(_vm._s(_vm.$t('dashboard_left_to_scan')))])]),_c('b-col',{staticClass:\"text-center\"},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.box_offices))]),_c('span',{staticClass:\"d-block\"},[_vm._v(_vm._s(_vm.$t('dashboard_box_office_entries')))])])],1)],1)])])}),_vm._l((_vm.events),function(event){return _c('b-col',{key:event.id,attrs:{\"cols\":\"12\",\"xl\":\"4\",\"lg\":\"6\",\"sm\":\"12\"}},[_c('div',{staticClass:\"event-statistics\"},[_c('div',{staticClass:\"event-statistics-title\"},[_c('b-row',[_c('b-col',{staticClass:\"event-name\",attrs:{\"title\":event.name}},[(_vm.$store.state.user.company_id === 1)?_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.company.name))]):_vm._e(),_vm._v(\" \"+_vm._s(event.name)+\" \")]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"2\"}},[(_vm.$can('dashboard_view'))?_c('b-icon',{staticClass:\"cursor-pointer\",attrs:{\"icon\":\"pie-chart-fill\"},on:{\"click\":function($event){return _vm.getEventSoldTickets(event)}}}):_vm._e()],1)],1)],1),_c('div',{staticClass:\"event-statistics-content text-center\"},[_c('vue-ellipse-progress',{attrs:{\"progress\":event.percentage,\"color\":(event.percentage === 100 ? '#4FD166' : '#1B3E58'),\"fontColor\":(event.percentage === 100 ? '#4FD166' : '#1B3E58'),\"size\":130,\"thickness\":\"3%\",\"emptyThickness\":\"3%\"}},[_c('span',{staticClass:\"spinner-body\",style:('color:' + (event.percentage === 100 ? '#4FD166' : '#1B3E58'))},[_vm._v(_vm._s(event.total_sold))])]),_c('span',{staticClass:\"d-block mt-2 tickets-sold\"},[_vm._v(_vm._s(_vm.$t('dashboard_events_tickets_sold', {'guest_list_number': event.total_guest_list})))]),_c('span',{staticClass:\"d-block total-revenue\"},[_vm._v(\" \"+_vm._s(_vm.$t('dashboard_events_total_revenue'))+\" \"+_vm._s(_vm._f(\"currency\")(event.total_revenue)))])],1),_c('div',{staticClass:\"event-statistics-stats sales pb-3\"},[_c('b-row',[_c('b-col',{staticClass:\"text-center\",attrs:{\"cols\":\"3\"}},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.sold_today.toLocaleString()))]),_c('span',{staticClass:\"d-block font-secondary\"},[_vm._v(_vm._s(_vm.$t('dashboard_events_today'))),_c('br'),_vm._v(_vm._s(_vm.$t('dashboard_events_ticket_sold')))])]),_c('b-col',{staticClass:\"text-center last-today\",attrs:{\"cols\":\"3\"}},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.guest_list_today.toLocaleString()))]),_c('span',{staticClass:\"d-block font-secondary\"},[_vm._v(_vm._s(_vm.$t('dashboard_events_ticket_guest_list')))])]),_c('b-col',{staticClass:\"text-center\",attrs:{\"cols\":\"3\"}},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.sold_yesterday.toLocaleString()))]),_c('span',{staticClass:\"d-block font-secondary\"},[_vm._v(_vm._s(_vm.$t('dashboard_events_yesterday'))),_c('br'),_vm._v(_vm._s(_vm.$t('dashboard_events_ticket_sold')))])]),_c('b-col',{staticClass:\"text-center\",attrs:{\"cols\":\"3\"}},[_c('span',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(event.guest_list_yesterday.toLocaleString()))]),_c('span',{staticClass:\"d-block font-secondary\"},[_vm._v(_vm._s(_vm.$t('dashboard_events_ticket_guest_list')))])])],1)],1)])])})],2),_c('b-modal',{attrs:{\"id\":\"dashboard-stat-modal\",\"title\":_vm.$t('dashboard_sold_tickets', {event: _vm.selectedEvent ? _vm.selectedEvent.name : ''}),\"ok-only\":\"\"},on:{\"hidden\":_vm.closeModal}},[_c('b-row',{staticClass:\"d-flex justify-content-start\"},[_c('b-col',{staticClass:\"d-flex justify-content-end\",attrs:{\"cols\":\"2\"}},[_c('BounceLoader',{attrs:{\"color\":\"#f0b52d\",\"size\":60,\"sizeUnit\":\"px\"}})],1),_c('b-col',{attrs:{\"cols\":\"10\"}},[_c('span',{staticClass:\"d-block\",staticStyle:{\"font-size\":\"12pt\"}},[_vm._v(_vm._s(_vm.$t('dashboard_modal_active_carts')))]),_c('span',{staticClass:\"d-block\",staticStyle:{\"font-size\":\"22pt\"}},[_vm._v(_vm._s(_vm.activeCarts))])])],1),_c('hr'),(_vm.sold_tickets)?_c('div',_vm._l((_vm.sold_tickets),function(tickets,group){return _c('div',{key:group,staticClass:\"mb-3\"},[_c('div',{class:{'bg-light':true,'p-3':group !== 'event_default_group'}},[_vm._v(_vm._s(group !== 'event_default_group' ? group : ''))]),_vm._l((tickets),function(ticket){return _c('b-row',{key:ticket.name,staticClass:\"border-bottom py-3 w-100 m-0 ticket-row\"},[_c('b-col',{staticClass:\"mb-3 mb-md-0\",attrs:{\"cols\":\"12\",\"sm\":\"12\",\"lg\":\"5\"}},[_vm._v(_vm._s(ticket.name))]),_c('b-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\",\"lg\":\"3\"}},[_c('b-progress',{attrs:{\"value\":Math.ceil((ticket.sold/ticket.stock) * 100)}})],1),(ticket.stock === -1)?_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.sold))]):_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.stock ? (Math.ceil((ticket.sold / ticket.stock) * 100)) : 0)+\"%\")]),(_vm.$can('reports_sales_by_tickettype_view'))?_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_c('router-link',{attrs:{\"to\":{name: 'ReportSalesPerTickettype', query: {event: _vm.selectedEvent.id, ticket: ticket.product_id}}}},[_vm._v(_vm._s(ticket.sold)+\"/\"+_vm._s(ticket.stock >=0 ? ticket.stock : '∞'))])],1):_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.sold)+\"/\"+_vm._s(ticket.stock >=0 ? ticket.stock : '∞'))])],1)})],2)}),0):_c('div',{staticClass:\"text-center\"},[_c('b-spinner',{staticStyle:{\"width\":\"3rem\",\"height\":\"3rem\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"dashboard\">\n <b-row>\n <b-col v-for=\"event in currentEvents\" cols=\"12\" lg=\"6\" sm=\"12\" xl=\"4\" :key=\"'c' + event.id\">\n <div class=\"event-statistics\">\n <div class=\"event-statistics-title px-4 py-3 bg-blue\">\n <b-row>\n <b-col class=\"text-white event-name\" :title=\"event.name\">\n {{ $t('dashboard_events_scans') }} {{ event.name }}\n </b-col>\n <b-col cols=\"2\" class=\"text-right\">\n <b-icon v-if=\"$can('dashboard_view')\" @click=\"getEventSoldTickets(event)\" icon=\"pie-chart-fill\" class=\"cursor-pointer text-white\"></b-icon>\n </b-col>\n </b-row>\n </div>\n <div class=\"event-statistics-content active-event text-center\">\n <vue-ellipse-progress\n :progress=\"event.percentage\"\n :color=\"(event.percentage === 100 ? '#4FD166' : '#1B3E58')\"\n :fontColor=\"(event.percentage === 100 ? '#4FD166' : '#1B3E58')\"\n :size=\"130\"\n thickness=\"3%\"\n emptyThickness=\"3%\"\n >\n <span class=\"spinner-body\" :style=\"'color:' + (event.percentage === 100 ? '#4FD166' : '#1B3E58')\">{{ event.scanned + event.box_offices }}</span>\n </vue-ellipse-progress>\n <span class=\"d-block mt-2 tickets-sold\">{{ $t('dashboard_total_visitors_inside') }}</span>\n </div>\n <div class=\"event-statistics-stats scans pb-3\">\n <b-row>\n <b-col class=\"text-center\">\n <span class=\"d-block font-weight-bold\">{{ event.scanned }}</span>\n <span class=\"d-block\">{{ $t('dashboard_scanned') }}</span>\n </b-col>\n <b-col class=\"text-center\">\n <span class=\"d-block font-weight-bold\">{{ event.total_tickets - event.scanned }}</span>\n <span class=\"d-block\">{{ $t('dashboard_left_to_scan') }}</span>\n </b-col>\n <b-col class=\"text-center\">\n <span class=\"d-block font-weight-bold\">{{ event.box_offices }}</span>\n <span class=\"d-block\">{{ $t('dashboard_box_office_entries') }}</span>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n <b-col v-for=\"event in events\" cols=\"12\" xl=\"4\" lg=\"6\" sm=\"12\" :key=\"event.id\">\n <div class=\"event-statistics\">\n <div class=\"event-statistics-title\">\n <b-row>\n <b-col class=\"event-name\" :title=\"event.name\">\n <span v-if=\"$store.state.user.company_id === 1\" class=\"d-block font-weight-bold\">{{ event.company.name }}</span>\n {{ event.name }}\n </b-col>\n <b-col cols=\"2\" class=\"text-right\">\n <b-icon v-if=\"$can('dashboard_view')\" @click=\"getEventSoldTickets(event)\" icon=\"pie-chart-fill\" class=\"cursor-pointer\"></b-icon>\n </b-col>\n </b-row>\n </div>\n <div class=\"event-statistics-content text-center\">\n <vue-ellipse-progress\n :progress=\"event.percentage\"\n :color=\"(event.percentage === 100 ? '#4FD166' : '#1B3E58')\"\n :fontColor=\"(event.percentage === 100 ? '#4FD166' : '#1B3E58')\"\n :size=\"130\"\n thickness=\"3%\"\n emptyThickness=\"3%\"\n >\n <span class=\"spinner-body\" :style=\"'color:' + (event.percentage === 100 ? '#4FD166' : '#1B3E58')\">{{ event.total_sold }}</span>\n </vue-ellipse-progress>\n <span class=\"d-block mt-2 tickets-sold\">{{ $t('dashboard_events_tickets_sold', {'guest_list_number': event.total_guest_list}) }}</span>\n <span class=\"d-block total-revenue\"> {{ $t('dashboard_events_total_revenue') }} {{ event.total_revenue | currency }}</span>\n </div>\n <div class=\"event-statistics-stats sales pb-3\">\n <b-row>\n <b-col class=\"text-center\" cols=\"3\">\n <span class=\"d-block font-weight-bold\">{{ event.sold_today.toLocaleString() }}</span>\n <span class=\"d-block font-secondary\">{{ $t('dashboard_events_today') }}<br>{{ $t('dashboard_events_ticket_sold') }}</span>\n </b-col>\n <b-col class=\"text-center last-today\" cols=\"3\">\n <span class=\"d-block font-weight-bold\">{{ event.guest_list_today.toLocaleString() }}</span>\n <span class=\"d-block font-secondary\">{{ $t('dashboard_events_ticket_guest_list') }}</span>\n </b-col>\n <b-col class=\"text-center\" cols=\"3\">\n <span class=\"d-block font-weight-bold\">{{ event.sold_yesterday.toLocaleString() }}</span>\n <span class=\"d-block font-secondary\">{{ $t('dashboard_events_yesterday') }}<br>{{ $t('dashboard_events_ticket_sold') }}</span>\n </b-col>\n <b-col class=\"text-center\" cols=\"3\">\n <span class=\"d-block font-weight-bold\">{{ event.guest_list_yesterday.toLocaleString() }}</span>\n <span class=\"d-block font-secondary\">{{ $t('dashboard_events_ticket_guest_list') }}</span>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n </b-row>\n\n <b-modal @hidden=\"closeModal\" id=\"dashboard-stat-modal\" :title=\"$t('dashboard_sold_tickets', {event: selectedEvent ? selectedEvent.name : ''})\" ok-only>\n <b-row class=\"d-flex justify-content-start\">\n <b-col cols=\"2\" class=\"d-flex justify-content-end\">\n <BounceLoader color=\"#f0b52d\" :size=\"60\" sizeUnit=\"px\"></BounceLoader>\n </b-col>\n <b-col cols=\"10\">\n <span class=\"d-block\" style=\"font-size:12pt\">{{ $t('dashboard_modal_active_carts') }}</span>\n <span class=\"d-block\" style=\"font-size:22pt\">{{ activeCarts }}</span>\n </b-col>\n </b-row>\n \n <hr>\n \n <div v-if=\"sold_tickets\">\n <div v-for=\"(tickets, group) in sold_tickets\" :key=\"group\" class=\"mb-3\">\n <div :class=\"{'bg-light':true,'p-3':group !== 'event_default_group'}\">{{ group !== 'event_default_group' ? group : '' }}</div>\n <b-row v-for=\"ticket in tickets\" :key=\"ticket.name\" class=\"border-bottom py-3 w-100 m-0 ticket-row\">\n <b-col cols=\"12\" sm=\"12\" lg=\"5\" class=\"mb-3 mb-md-0\">{{ ticket.name }}</b-col>\n <b-col cols=\"6\" sm=\"6\" lg=\"3\" >\n <b-progress :value=\"Math.ceil((ticket.sold/ticket.stock) * 100)\"></b-progress>\n </b-col>\n <b-col v-if=\"ticket.stock === -1\" cols=\"3\" sm=\"3\" lg=\"2\" >{{ ticket.sold }}</b-col>\n <b-col v-else cols=\"3\" sm=\"3\" lg=\"2\" >{{ ticket.stock ? (Math.ceil((ticket.sold / ticket.stock) * 100)) : 0 }}%</b-col>\n <b-col v-if=\"$can('reports_sales_by_tickettype_view')\" cols=\"3\" sm=\"3\" lg=\"2\" class=\"text-right\"><router-link :to=\"{name: 'ReportSalesPerTickettype', query: {event: selectedEvent.id, ticket: ticket.product_id}}\">{{ ticket.sold }}/{{ ticket.stock >=0 ? ticket.stock : '∞' }}</router-link></b-col>\n <b-col v-else cols=\"3\" sm=\"3\" lg=\"2\" class=\"text-right\">{{ ticket.sold }}/{{ ticket.stock >=0 ? ticket.stock : '∞' }}</b-col>\n </b-row>\n </div>\n </div>\n <div v-else class=\"text-center\">\n <b-spinner style=\"width: 3rem; height: 3rem;\"></b-spinner>\n </div>\n </b-modal>\n </div>\n</template>\n<script>\nimport api from \"@/api\";\nimport moment from \"moment\";\nimport { VueEllipseProgress } from \"vue-ellipse-progress\";\nimport { BounceLoader } from '@saeris/vue-spinners'\nexport default {\n name: 'Dashboard',\n data() {\n return {\n events: [],\n currentEvents: [],\n sold_tickets: null,\n selectedEvent: null,\n activeCarts: 0,\n activeCartInterval: null\n }\n },\n created(){\n document.title = this.$t('backend_title_dashboard')\n },\n mounted() {\n api.event().getDashboardStatistics({\n timezone: moment.tz.guess()\n }).then(response => {\n this.events = response.map(event => {\n return Object.assign(event, {\n percentage: event.total_stocks ? Math.round((event.total_sold/event.total_stocks)*100) : 0,\n })\n });\n })\n api.event().getDashboardCurrentEventStatistics({\n timezone: moment.tz.guess()\n }).then(response => {\n this.currentEvents = response.map(event => {\n return Object.assign(event, {\n percentage: event.total_tickets ? Math.round(((event.scanned)/event.total_tickets)*100) : 0,\n })\n });\n })\n },\n methods: {\n closeModal(){\n clearInterval(this.activeCartInterval)\n },\n getEventActiveCarts(event){\n api.event().getActiveCarts(event.id).then(response => {\n this.activeCarts = response\n }) \n },\n getEventSoldTickets(event) {\n this.getEventActiveCarts(event)\n this.activeCartInterval = setInterval(() => {\n this.getEventActiveCarts(event)\n }, 10000)\n this.selectedEvent = event;\n this.sold_tickets = null;\n this.$bvModal.show('dashboard-stat-modal')\n api.event().getEventSoldTickets(event.id).then(response => {\n this.sold_tickets = response\n })\n }\n },\n components: {\n VueEllipseProgress,\n BounceLoader\n }\n}\n</script>\n<style @scoped lang=\"scss\">\n.bg-blue {\n background-color: #1B3E58 !important;\n}\n.event-statistics {\n border: solid 1px #efefef;\n background: #fff;\n box-shadow: 0 3px 6px #52575d19;\n border-radius: 6px;\n margin-bottom: 2em;\n\n .spinner-body {\n font-size: 2rem\n }\n\n .event-statistics-title{\n border-bottom:2px solid #F5F5F5;\n padding:1em;\n color:#666666;\n font-size:13pt;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-radius:6px 6px 0 0;\n }\n\n .event-statistics-content{\n padding:2em;\n\n .tickets-sold, .total-revenue{\n color:#B3B3B3;\n font-size:11pt\n }\n }\n\n .event-statistics-content.active-event{\n padding:3em 2em\n }\n\n .last-today{\n border-right:2px solid rgb(243, 242, 242);\n }\n\n .event-statistics-stats{\n padding:15px 1em 0;\n border-top:2px solid rgb(243, 242, 242);\n\n .row{\n div.col span:first-of-type{\n color:#808080;\n font-size: 15px;\n }\n div.col span:last-of-type{\n color:#B3B3B3;\n font-size:10pt\n }\n div{\n color:#b3b3b3;\n font-size:13px\n }\n\n div.indicator{\n width:20%;\n text-align:left\n }\n div.today{\n width:40%;\n color:#808080;\n font-size:15px;\n font-weight: bold;\n }\n div.today.title{\n font-size:13px\n }\n div.yesterday{\n width:40%;\n }\n }\n }\n}\n#dashboard-stat-modal .row div{\n font-size: 14px;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.modal-footer button{\n font-size: 14px;\n padding: 6px 30px;\n}\n.ticket-row:last-child {\n border-bottom: none !important;\n}\n.progress-bar {\n background-image: linear-gradient(0.25turn, #d2ecff, #008ffb) !important;\n border-radius: 50px;\n height: 6px !important;\n}\n.progress {\n background-color: unset;\n margin-top: 7px;\n}\n\n.event-name {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.period-badge {\n background-color: #4b667c;\n color: #FFFFFF !important;\n border-radius: 10px;\n padding: 5px 2px;\n display: block;\n text-align: center;\n}\n\n.row-border div.row {\n border-bottom: 2px solid #F5F5F5;\n padding: 10px 0;\n text-align: center;\n\n &:last-child {\n border-bottom: 0;\n }\n\n & span {\n padding: 3px;\n }\n}\n\n.table-title {\n font-size: 11px !important;\n}\n.font-secondary {\n color: #B3B3B3;\n}\n@media screen and (max-width: 420px) {\n .event-statistics {\n .event-statistics-stats.sales div.row div.col.last-today {\n border-right:0px;\n }\n .event-statistics-stats.sales div.row div.col{\n flex: 0 0 50%;\n max-width: 50%;\n }\n .event-statistics-stats.sales div.row div.col:nth-of-type(3n),.event-statistics-stats.sales div.row div.col:nth-of-type(4n){\n padding-top:10px\n }\n .font-secondary {\n font-size: 10px;\n }\n }\n}\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NormalDashboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NormalDashboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./NormalDashboard.vue?vue&type=template&id=fc09da68\"\nimport script from \"./NormalDashboard.vue?vue&type=script&lang=js\"\nexport * from \"./NormalDashboard.vue?vue&type=script&lang=js\"\nimport style0 from \"./NormalDashboard.vue?vue&type=style&index=0&id=fc09da68&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"cs-dashboard\"}},[_c('h1',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.$t('dashboard_title')))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"cs-dashboard\">\n <h1 class=\"text-center\">{{ $t('dashboard_title') }}</h1>\n </div>\n</template>\n<script>\nexport default {\n name: 'CustomerSupportDashboard',\n created(){\n document.title = this.$t('backend_title_dashboard')\n }\n}\n</script>\n<style @scoped>\n#cs-dashboard {\n padding-top: 50vh;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerSupportDashboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerSupportDashboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerSupportDashboard.vue?vue&type=template&id=5d8a7703\"\nimport script from \"./CustomerSupportDashboard.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerSupportDashboard.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerSupportDashboard.vue?vue&type=style&index=0&id=5d8a7703&prod&%40scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div>\n <div v-if=\"user && $can('dashboard_view')\">\n <customer-support-dashboard v-if=\"user.role === 'customer_support'\"/>\n <normal-dashboard v-else/>\n </div>\n <div v-else>\n <h3>Hello</h3>\n </div>\n </div>\n</template>\n<script>\n\nimport NormalDashboard from \"@/pages/NormalDashboard\";\nimport CustomerSupportDashboard from \"@/pages/CustomerSupportDashboard\";\nimport {mapState} from \"vuex\";\nexport default {\n name: 'Dashboard',\n created(){\n document.title = this.$t('backend_title_dashboard')\n },\n computed: {\n ...mapState(['user'])\n },\n components: {\n NormalDashboard,\n CustomerSupportDashboard\n }\n}\n</script>\n<style @scoped lang=\"scss\">\n.bg-blue {\n background-color: #1B3E58 !important;\n}\n.event-statistics {\n border: solid 1px #efefef;\n background: #fff;\n box-shadow: 0 3px 6px #52575d19;\n border-radius: 6px;\n margin-bottom: 2em;\n\n .spinner-body {\n font-size: 2rem\n }\n\n .event-statistics-title{\n border-bottom:2px solid #F5F5F5;\n padding:1em;\n color:#666666;\n font-size:13pt;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n border-radius:6px 6px 0 0;\n }\n\n .event-statistics-content{\n padding:2em;\n\n .tickets-sold{\n color:#B3B3B3;\n font-size:11pt\n }\n }\n\n .event-statistics-stats{\n padding:15px 1em 0;\n\n .row{\n div.col span:first-of-type{\n color:#808080;\n margin-bottom: 5px;\n }\n div.col span:last-of-type{\n color:#B3B3B3;\n font-size:13px\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Dashboard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Dashboard.vue?vue&type=template&id=6214c3e2\"\nimport script from \"./Dashboard.vue?vue&type=script&lang=js\"\nexport * from \"./Dashboard.vue?vue&type=script&lang=js\"\nimport style0 from \"./Dashboard.vue?vue&type=style&index=0&id=6214c3e2&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h1',[_vm._v(_vm._s(_vm.$t('companies_title')))]),_c('b-form-group',[(_vm.$can('admin_company_add_company'))?_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.add-company\",modifiers:{\"add-company\":true}}],attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t('companies_create')))]):_vm._e()],1),_c('b-modal',{attrs:{\"id\":\"add-company\",\"title\":\"Add new company\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{on:{\"click\":function($event){return _vm.createCompany()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_name')}},[_c('b-form-input',{attrs:{\"state\":_vm.state.name,\"aria-describedby\":\"company-name-feedback\"},model:{value:(_vm.company.name),callback:function ($$v) {_vm.$set(_vm.company, \"name\", $$v)},expression:\"company.name\"}}),_c('b-form-invalid-feedback',{attrs:{\"id\":\"company-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('company_name_is_required')))])],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_subdomain')}},[_c('b-form-input',{attrs:{\"state\":_vm.state.domain,\"aria-describedby\":\"company-domain-feedback\"},model:{value:(_vm.company.domain),callback:function ($$v) {_vm.$set(_vm.company, \"domain\", $$v)},expression:\"company.domain\"}}),_c('b-form-invalid-feedback',{attrs:{\"id\":\"company-domain-feedback\"}},[_vm._v(_vm._s(_vm.$t('company_domain_is_required')))])],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_contact')}},[_c('b-form-input',{attrs:{\"state\":_vm.state.contact,\"aria-describedby\":\"company-contact-feedback\"},model:{value:(_vm.company.contact),callback:function ($$v) {_vm.$set(_vm.company, \"contact\", $$v)},expression:\"company.contact\"}}),_c('b-form-invalid-feedback',{attrs:{\"id\":\"company-contact-feedback\"}},[_vm._v(_vm._s(_vm.$t('company_contact_is_required')))])],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_phone')}},[_c('b-form-input',{model:{value:(_vm.company.phone),callback:function ($$v) {_vm.$set(_vm.company, \"phone\", $$v)},expression:\"company.phone\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_address')}},[_c('b-form-input',{model:{value:(_vm.company.address),callback:function ($$v) {_vm.$set(_vm.company, \"address\", $$v)},expression:\"company.address\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_zip')}},[_c('b-form-input',{model:{value:(_vm.company.zip),callback:function ($$v) {_vm.$set(_vm.company, \"zip\", $$v)},expression:\"company.zip\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_city')}},[_c('b-form-input',{model:{value:(_vm.company.city),callback:function ($$v) {_vm.$set(_vm.company, \"city\", $$v)},expression:\"company.city\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_country')}},[_c('b-select',{attrs:{\"state\":_vm.state.country,\"text-field\":\"name\",\"value-field\":\"code\",\"options\":_vm.countries},model:{value:(_vm.company.country),callback:function ($$v) {_vm.$set(_vm.company, \"country\", $$v)},expression:\"company.country\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_kvk')}},[_c('b-form-input',{model:{value:(_vm.company.kvk),callback:function ($$v) {_vm.$set(_vm.company, \"kvk\", $$v)},expression:\"company.kvk\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_vat')}},[_c('b-form-input',{model:{value:(_vm.company.vat),callback:function ($$v) {_vm.$set(_vm.company, \"vat\", $$v)},expression:\"company.vat\"}})],1)],1)],1)],1),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{attrs:{\"items\":_vm.companies,\"fields\":['id',{key: 'name', label: _vm.$t('company_name')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function({item}){return [(_vm.adding)?_c('b-spinner'):(_vm.$can('admin_company_details_page_view'))?_c('b-button',{attrs:{\"variant\":\"primary\",\"to\":{name:'ManageCompany', params:{id: item.unique_id}}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e()]}}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h1>{{ $t('companies_title') }}</h1>\n <b-form-group>\n <b-button v-if=\"$can('admin_company_add_company')\" variant=\"primary\" v-b-modal.add-company>{{ $t('companies_create') }}</b-button>\n </b-form-group>\n\n <b-modal id=\"add-company\" title=\"Add new company\">\n <b-form-group :label=\"$t('company_name')\">\n <b-form-input v-model=\"company.name\" :state=\"state.name\" aria-describedby=\"company-name-feedback\"></b-form-input>\n <b-form-invalid-feedback id=\"company-name-feedback\">{{ $t('company_name_is_required') }}</b-form-invalid-feedback>\n </b-form-group>\n <b-form-group :label=\"$t('company_subdomain')\">\n <b-form-input v-model=\"company.domain\" :state=\"state.domain\" aria-describedby=\"company-domain-feedback\"></b-form-input>\n <b-form-invalid-feedback id=\"company-domain-feedback\">{{ $t('company_domain_is_required') }}</b-form-invalid-feedback>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_contact')\">\n <b-form-input v-model=\"company.contact\" :state=\"state.contact\" aria-describedby=\"company-contact-feedback\"></b-form-input>\n <b-form-invalid-feedback id=\"company-contact-feedback\">{{ $t('company_contact_is_required') }}</b-form-invalid-feedback>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('company_phone')\">\n <b-form-input v-model=\"company.phone\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group :label=\"$t('company_address')\">\n <b-form-input v-model=\"company.address\"></b-form-input>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_zip')\">\n <b-form-input v-model=\"company.zip\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('company_city')\">\n <b-form-input v-model=\"company.city\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_country')\">\n <b-select v-model=\"company.country\" :state=\"state.country\" text-field=\"name\" value-field=\"code\" :options=\"countries\"></b-select>\n </b-form-group>\n </b-col> \n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_kvk')\">\n <b-form-input v-model=\"company.kvk\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('company_vat')\">\n <b-form-input v-model=\"company.vat\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <template #modal-footer>\n <b-button @click=\"createCompany()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n <div class=\"tableBig\">\n <b-table :items=\"companies\" :fields=\"['id',{key: 'name', label: $t('company_name')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(actions)=\"{item}\">\n <b-spinner v-if=\"adding\"></b-spinner>\n <b-button v-else-if=\"$can('admin_company_details_page_view')\" variant=\"primary\" :to=\"{name:'ManageCompany', params:{id: item.unique_id}}\">{{ $t('manage') }}</b-button>\n </template>\n </b-table>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState} from 'vuex'\n\nexport default {\n name: 'Login',\n data() {\n return {\n companies: null,\n company: {},\n adding: false,\n logo: null,\n state: {\n name: null,\n domain: null,\n contact: null,\n },\n countries: []\n }\n },\n computed: {\n ...mapState(['user'])\n },\n created() {\n if(this.$store.state.user) {\n if(!this.$can('admin_company_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.company().all().then(companies => {\n this.companies = companies\n })\n api.company().countries().then(countries => {\n this.countries = [{code: null, name: this.$t('company_country'), disabled: true}].concat(countries)\n })\n },\n methods: {\n createCompany() {\n this.state.name = null;\n this.state.domain = null;\n this.state.contact = null;\n this.state.country = null;\n\n let valid = true;\n\n if(!this.company.name) {\n this.state.name = false;\n valid = false;\n }\n\n if(!this.company.domain) {\n this.state.domain = false;\n valid = false;\n }\n if(!this.company.contact) {\n this.state.contact = false;\n valid = false;\n }\n if(!this.company.country) {\n this.state.country = false;\n valid = false;\n }\n\n if(!valid) {\n return;\n }\n this.adding = true\n \n api.company().create(this.company).then((company) => {\n this.$router.push({\n name: 'ManageCompany',\n params: {\n id: company.unique_id\n }\n })\n }).catch((errors) => {\n console.error(errors)\n this.adding = false\n })\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('admin_company_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n@media (max-width:500px) {\n h1{\n font-size: 35px!important;\n }\n\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Companies.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Companies.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Companies.vue?vue&type=template&id=a46e5324&scoped=true\"\nimport script from \"./Companies.vue?vue&type=script&lang=js\"\nexport * from \"./Companies.vue?vue&type=script&lang=js\"\nimport style0 from \"./Companies.vue?vue&type=style&index=0&id=a46e5324&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a46e5324\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"login\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"12\"}},[_c('b-row',{staticClass:\"flexing\"},[_c('b-col',{staticClass:\"ml-0\",attrs:{\"cols\":\"12\",\"md\":\"6\"}},[(_vm.$can('my_company_layout_view') && _vm.isUserCompany)?_c('b-button',{staticClass:\"py-3 mb-3 mr-3\",attrs:{\"variant\":\"new\",\"to\":{name: 'ManageCompanyLayout'}}},[_vm._v(_vm._s(_vm.$t('company_layout')))]):_vm._e(),(_vm.$can('company_invoice_view') && _vm.isUserCompany)?_c('b-button',{staticClass:\"py-3 mb-3\",attrs:{\"variant\":\"new\",\"to\":{name: 'CompanyInvoiceOverview'}}},[_vm._v(_vm._s(_vm.$t('company_invoice_overview')))]):_vm._e()],1)],1),_c('b-row',[(_vm.user && _vm.$can('admin_company_payment_costs_view') || _vm.$can('admin_company_payment_costs_create'))?_c('b-col',[_c('b-col',{staticClass:\"ml-0 pl-0\",attrs:{\"cols\":\"12\",\"md\":\"12\"}},[(_vm.$can('admin_company_payment_costs_create'))?_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddPaymentCostsModal}},[_vm._v(_vm._s(_vm.$t('admin_company_add_payment_method')))]):_vm._e()],1),(_vm.user && _vm.$can('admin_company_payment_costs_view'))?_c('span',[_vm._v(_vm._s(_vm.$t('manage_company_without_vat')))]):_vm._e(),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.paymentMethodHistory,\"fields\":[{key: 'payment_method', label: _vm.$t('admin_company_payment_method')},{key: 'payment_method_fees.fee_percentage', label: _vm.$t('admin_company_payment_method_fee_percentage')},{key: 'payment_method_fees.fee_fixed_amount', label: _vm.$t('admin_company_payment_method_fee_fixed')},{key: 'starts_at', label: _vm.$t('event_starts_at')}]},scopedSlots:_vm._u([{key:\"cell(payment_method_fees.fee_percentage)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.fee_percentage)+\"% \")]}},{key:\"cell(payment_method_fees.fee_fixed_amount)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.fee_fixed_amount))+\" \")]}},{key:\"cell(starts_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.starts_at))+\" \")]}}],null,false,3298777999)})],1)],1):_vm._e(),(_vm.user && _vm.$can('admin_company_fee_view'))?_c('b-col',[(_vm.$can('admin_company_fee_add'))?_c('b-button',{staticClass:\"mb-4\",attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddCompanyFeeModal}},[_vm._v(_vm._s(_vm.$t('admin_company_add_company_fee')))]):_c('div',{staticClass:\"mb-4\",staticStyle:{\"height\":\"48px\"}}),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.company.fees,\"fields\":[{key: 'fee_type', label: _vm.$t('admin_company_fee_type')},{key: 'fee', label: _vm.$t('admin_company_fee')},{key: 'starts_at', label: _vm.$t('admin_company_fee_start_at')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(starts_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.starts_at))+\" \")]}},{key:\"cell(fee)\",fn:function({item}){return [(item.fee_type === 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(item.fee + '%'))]):_vm._e(),(item.fee_type !== 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(item.fee)))]):_vm._e()]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('admin_company_fee_edit'))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.showEditCompanyFeeModal(item)}}},[_vm._v(_vm._s(_vm.$t('edit')))]):_vm._e()]}}],null,false,2791541462)})],1)],1):_vm._e()],1),_c('div',{staticClass:\"tableBig\"},[_c('b-row',[((_vm.$can('my_company_settings_view') && _vm.isUserCompany) || _vm.$can('my_company_settings_edit') || _vm.$can('admin_company_details_view'))?_c('b-col',{attrs:{\"xs\":\"12\",\"sm\":\"12\",\"xl\":\"4\"}},[((_vm.$can('my_company_user_create') && _vm.isUserCompany) || _vm.$can('admin_company_details_edit'))?_c('div',{staticClass:\"mb-3 px-4 py-3\",staticStyle:{\"height\":\"60px\"}}):_vm._e(),(_vm.$can('admin_company_details_view'))?_c('div',{staticClass:\"content-main-container mt-0 container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('company_details')))]),_c('div',{staticClass:\"content-container\"},[(_vm.user)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_name')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.name),callback:function ($$v) {_vm.$set(_vm.company, \"name\", $$v)},expression:\"company.name\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_subdomain')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.domain),callback:function ($$v) {_vm.$set(_vm.company, \"domain\", $$v)},expression:\"company.domain\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_contact')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.contact),callback:function ($$v) {_vm.$set(_vm.company, \"contact\", $$v)},expression:\"company.contact\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_phone')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.phone),callback:function ($$v) {_vm.$set(_vm.company, \"phone\", $$v)},expression:\"company.phone\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_address')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.address),callback:function ($$v) {_vm.$set(_vm.company, \"address\", $$v)},expression:\"company.address\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_zip')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.zip),callback:function ($$v) {_vm.$set(_vm.company, \"zip\", $$v)},expression:\"company.zip\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_city')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.city),callback:function ($$v) {_vm.$set(_vm.company, \"city\", $$v)},expression:\"company.city\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_kvk')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.kvk),callback:function ($$v) {_vm.$set(_vm.company, \"kvk\", $$v)},expression:\"company.kvk\"}})],1),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.show_kvk_on_pos),callback:function ($$v) {_vm.$set(_vm.company, \"show_kvk_on_pos\", $$v)},expression:\"company.show_kvk_on_pos\"}},[_vm._v(\" \"+_vm._s(_vm.$t('company_show_kvk_on_pos'))+\" \")])],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_vat')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.vat),callback:function ($$v) {_vm.$set(_vm.company, \"vat\", $$v)},expression:\"company.vat\"}})],1)],1)],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_invoice_prefix')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.invoice_prefix),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_prefix\", $$v)},expression:\"company.invoice_prefix\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_vat_percentage')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"1\",\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.vat_percentage),callback:function ($$v) {_vm.$set(_vm.company, \"vat_percentage\", $$v)},expression:\"company.vat_percentage\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_paynl_merchant_id')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.paynl_merchant_id),callback:function ($$v) {_vm.$set(_vm.company, \"paynl_merchant_id\", $$v)},expression:\"company.paynl_merchant_id\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_paynl_token_code')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.paynl_token_code),callback:function ($$v) {_vm.$set(_vm.company, \"paynl_token_code\", $$v)},expression:\"company.paynl_token_code\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_paynl_api_token')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.paynl_api_token),callback:function ($$v) {_vm.$set(_vm.company, \"paynl_api_token\", $$v)},expression:\"company.paynl_api_token\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_paynl_service_id')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.paynl_service_id),callback:function ($$v) {_vm.$set(_vm.company, \"paynl_service_id\", $$v)},expression:\"company.paynl_service_id\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_country')}},[_c('b-select',{attrs:{\"options\":['nl', 'es', 'de', 'en', 'be'],\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.country),callback:function ($$v) {_vm.$set(_vm.company, \"country\", $$v)},expression:\"company.country\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_email_customer_questions')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.email_customer_questions),callback:function ($$v) {_vm.$set(_vm.company, \"email_customer_questions\", $$v)},expression:\"company.email_customer_questions\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_email_invoice')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.email_invoice),callback:function ($$v) {_vm.$set(_vm.company, \"email_invoice\", $$v)},expression:\"company.email_invoice\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_paynl_account_type')}},[_c('b-select',{attrs:{\"options\":['not-chosen', 'submerchant', 'payout-merchant'],\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.paynl_account_type),callback:function ($$v) {_vm.$set(_vm.company, \"paynl_account_type\", $$v)},expression:\"company.paynl_account_type\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_payout_iban')}},[_c('b-form-input',{attrs:{\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.payout_iban),callback:function ($$v) {_vm.$set(_vm.company, \"payout_iban\", $$v)},expression:\"company.payout_iban\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_whitelabel_layout')}},[_c('b-select',{attrs:{\"options\":['fairtix', 'baron'],\"disabled\":!_vm.$can('admin_company_details_edit')},model:{value:(_vm.company.whitelabel_layout),callback:function ($$v) {_vm.$set(_vm.company, \"whitelabel_layout\", $$v)},expression:\"company.whitelabel_layout\"}})],1)],1):_vm._e(),(_vm.user && _vm.$can('admin_company_details_edit'))?_c('b-form-group',[_c('b-button',{on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))])],1):_vm._e()],1)]):_vm._e(),(_vm.isUserCompany && (_vm.$can('my_company_settings_view') || _vm.$can('my_company_settings_edit')))?_c('div',{staticClass:\"content-main-container mt-0 container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('company_settings')))]),_c('div',{staticClass:\"content-container\"},[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.show_calendar),callback:function ($$v) {_vm.$set(_vm.company, \"show_calendar\", $$v)},expression:\"company.show_calendar\"}},[_vm._v(_vm._s(_vm.$t('company_show_calendar')))])],1),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.calendar_sold_ratio),callback:function ($$v) {_vm.$set(_vm.company, \"calendar_sold_ratio\", $$v)},expression:\"company.calendar_sold_ratio\"}},[_vm._v(_vm._s(_vm.$t('company_calendar_sold_ratio')))])],1),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.order_notification_enabled),callback:function ($$v) {_vm.$set(_vm.company, \"order_notification_enabled\", $$v)},expression:\"company.order_notification_enabled\"}},[_vm._v(_vm._s(_vm.$t('company_send_order_notifications')))])],1),(_vm.company.order_notification_enabled)?_c('b-form-group',{attrs:{\"label\":_vm.$t('company_send_order_notifications_email')}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.order_notification_email),callback:function ($$v) {_vm.$set(_vm.company, \"order_notification_email\", $$v)},expression:\"company.order_notification_email\"}})],1):_vm._e(),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.tickets_sold_out_notification_enabled),callback:function ($$v) {_vm.$set(_vm.company, \"tickets_sold_out_notification_enabled\", $$v)},expression:\"company.tickets_sold_out_notification_enabled\"}},[_vm._v(_vm._s(_vm.$t('company_tickets_sold_out_notification')))])],1),(_vm.company.tickets_sold_out_notification_enabled)?_c('b-form-group',{attrs:{\"label\":_vm.$t('company_send_order_notifications_email')}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.tickets_sold_out_notification_email),callback:function ($$v) {_vm.$set(_vm.company, \"tickets_sold_out_notification_email\", $$v)},expression:\"company.tickets_sold_out_notification_email\"}})],1):_vm._e(),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_settings_edit')},model:{value:(_vm.company.order_thank_you_show_events),callback:function ($$v) {_vm.$set(_vm.company, \"order_thank_you_show_events\", $$v)},expression:\"company.order_thank_you_show_events\"}},[_vm._v(_vm._s(_vm.$t('company_order_thank_you_show_events')))])],1),(_vm.user && _vm.$can('my_company_settings_edit'))?_c('b-form-group',[_c('b-button',{on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))])],1):_vm._e()],1)]):_vm._e()]):_vm._e(),_c('b-col',[((_vm.$can('my_company_user_create') && _vm.isUserCompany) || _vm.$can('admin_company_details_edit'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddUserModal}},[_vm._v(_vm._s(_vm.$t('user_create')))])],1):_c('div',{staticClass:\"mb-3 float-right px-4 py-3\",staticStyle:{\"height\":\"56px\"}}),(_vm.$can('admin_company_users_view') || (_vm.$can('my_company_users_view') && _vm.isUserCompany))?_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.company.users,\"fields\":[{key: 'name', label: _vm.$t('user_name')},{key: 'email', label: _vm.$t('user_email')},{key: 'role', label: _vm.$t('user_role')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(role)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.$t( 'user_role_' + item.role))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [((_vm.user.role === 'admin' || _vm.user.role === 'company_admin' || (_vm.user.role === 'user' && item.role === 'user')) && (_vm.user.id === 1 && item.id === 1 || (_vm.user.id !== item.id && item.id !== 1)) && ((_vm.$can('my_company_user_edit') && _vm.isUserCompany) || _vm.$can('admin_company_users_edit')))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.showEditModal(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),((_vm.user.role === 'admin' || _vm.user.role === 'company_admin' || (_vm.user.role === 'user' && item.role === 'user')) && (_vm.user.id !== item.id && item.id !== 1) && ((_vm.$can('my_company_user_delete') && _vm.isUserCompany) || _vm.$can('admin_company_users_delete')))?_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}},[_vm._v(_vm._s(_vm.$t('delete')))]):_vm._e(),((_vm.user.id !== item.id && item.id !== 1) && _vm.$can('admin_company_user_impersonate'))?_c('b-button',{attrs:{\"variant\":\"info\"},on:{\"click\":function($event){return _vm.impersonate(item.id)}}},[_vm._v(\" \"+_vm._s(_vm.$t('company_user_impersonate'))+\" \")]):_vm._e()]}}],null,false,562926837)}):_vm._e(),(_vm.user && _vm.$can('admin_automatic_invoicing_view'))?_c('div',{staticClass:\"content-main-container mt-0 container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('my_company_invoice_title')))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.automatic_invoicing),callback:function ($$v) {_vm.$set(_vm.company, \"automatic_invoicing\", $$v)},expression:\"company.automatic_invoicing\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_automatic_invoicing'))+\" \")])],1)],1),_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.automatic_invoicing_test_mode),callback:function ($$v) {_vm.$set(_vm.company, \"automatic_invoicing_test_mode\", $$v)},expression:\"company.automatic_invoicing_test_mode\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_automatic_invoicing_test_mode'))+\" \")])],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_anti_dating),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_anti_dating\", $$v)},expression:\"company.invoice_anti_dating\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_anti_dating'))+\" \")])],1)],1),_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_vat_shifted),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_vat_shifted\", $$v)},expression:\"company.invoice_vat_shifted\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_vat_shifted'))+\" \")])],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_generate_payout_summary),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_generate_payout_summary\", $$v)},expression:\"company.invoice_generate_payout_summary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_generate_payout_summary'))+\" \")])],1)],1),_c('b-col',[(_vm.company.invoice_generate_payout_summary)?_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_include_payout_summary),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_include_payout_summary\", $$v)},expression:\"company.invoice_include_payout_summary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_include_payout_summary'))+\" \")])],1):_vm._e()],1)],1),(_vm.company.invoice_generate_payout_summary)?_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_generate_detailed_explanation),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_generate_detailed_explanation\", $$v)},expression:\"company.invoice_generate_detailed_explanation\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_generate_detailed_explanation'))+\" \")])],1)],1),_c('b-col',[(_vm.company.invoice_generate_detailed_explanation)?_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_include_detailed_explanation),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_include_detailed_explanation\", $$v)},expression:\"company.invoice_include_detailed_explanation\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_include_detailed_explanation'))+\" \")])],1):_vm._e()],1)],1):_vm._e(),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_generate_fairtix_invoice),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_generate_fairtix_invoice\", $$v)},expression:\"company.invoice_generate_fairtix_invoice\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_generate_fairtix_invoice'))+\" \")])],1)],1),_c('b-col',[(_vm.company.invoice_generate_fairtix_invoice)?_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_include_fairtix_invoice),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_include_fairtix_invoice\", $$v)},expression:\"company.invoice_include_fairtix_invoice\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_include_fairtix_invoice'))+\" \")])],1):_vm._e()],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_set_off_invoices),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_set_off_invoices\", $$v)},expression:\"company.invoice_set_off_invoices\"}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_invoice_set_off_invoices'))+\" \")])],1)],1),_c('b-col')],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_invoice_language')}},[_c('b-select',{attrs:{\"options\":['nl', 'en', 'es', 'de'],\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_language),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_language\", $$v)},expression:\"company.invoice_language\"}})],1)],1),_c('b-col')],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_invoice_payout_frequency')}},[_c('b-select',{attrs:{\"options\":['daily', 'weekly', 'monthly', 'after-event'],\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_payout_frequency),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_payout_frequency\", $$v)},expression:\"company.invoice_payout_frequency\"}})],1)],1),_c('b-col',[(_vm.company.invoice_payout_frequency === 'after-event')?_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_invoice_payout_delay')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_payout_delay),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_payout_delay\", $$v)},expression:\"company.invoice_payout_delay\"}})],1):_vm._e()],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_invoice_max_payment_period')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_max_payment_period),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_max_payment_period\", $$v)},expression:\"company.invoice_max_payment_period\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_invoice_receive_method')}},[_c('b-select',{attrs:{\"options\":['mail'],\"disabled\":!_vm.$can('admin_company_automatic_invoicing_edit')},model:{value:(_vm.company.invoice_receive_method),callback:function ($$v) {_vm.$set(_vm.company, \"invoice_receive_method\", $$v)},expression:\"company.invoice_receive_method\"}})],1)],1)],1),(_vm.user && _vm.$can('admin_company_automatic_invoicing_edit'))?_c('b-form-group',[_c('b-button',{on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))])],1):_vm._e()],1)]):_vm._e(),(_vm.user && _vm.$can('admin_company_permission_view'))?_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('company_permissions')))]),_c('div',{staticClass:\"content-container\"},[_vm._l((_vm.companyPermissions),function(group,index){return _c('div',{key:index},[_c('label',{staticClass:\"group-label px-2 d-block mb-3 mb-1\"},[_c('b-form-checkbox',{staticClass:\"font-weight-bold py-1\",attrs:{\"disabled\":!_vm.$can('admin_company_permission_edit')},on:{\"change\":function($event){return _vm.changePermissionsCheckbox(group, $event)}}},[_vm._v(_vm._s(index))])],1),_c('b-row',_vm._l((group),function(permission){return _c('b-col',{key:permission.id,attrs:{\"cols\":\"6\"}},[_c('b-form-group',{staticClass:\"px-3\"},[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('admin_company_permission_edit')},model:{value:(permission.selected),callback:function ($$v) {_vm.$set(permission, \"selected\", $$v)},expression:\"permission.selected\"}},[_vm._v(_vm._s(_vm.$t('permission_' + permission.slug)))])],1)],1)}),1)],1)}),(_vm.$can('admin_company_permission_edit'))?_c('b-button',{on:{\"click\":function($event){return _vm.savePermissions()}}},[_vm._v(_vm._s(_vm.$t('save')))]):_vm._e()],2)]):_vm._e()],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"add-user\",\"title\":_vm.$t('user_create_modal_title', _vm.company),\"size\":\"lg\"},on:{\"close\":function($event){_vm.editUser = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.passwordValidation.length > 0 || _vm.state.email === false || (_vm.editUser && !_vm.editUser.email)},on:{\"click\":function($event){return _vm.addUser()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[(_vm.editUser)?_c('div',[_c('b-tabs',{attrs:{\"content-class\":\"mt-3\"}},[_c('b-tab',{attrs:{\"title\":_vm.$t('company_user_settings_tab'),\"active\":\"\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_name')}},[_c('b-form-input',{model:{value:(_vm.editUser.name),callback:function ($$v) {_vm.$set(_vm.editUser, \"name\", $$v)},expression:\"editUser.name\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('user_email')}},[_c('b-form-input',{attrs:{\"state\":_vm.state.email,\"aria-describedby\":\"user-email\"},on:{\"input\":function($event){return _vm.validateEmail($event)}},model:{value:(_vm.editUser.email),callback:function ($$v) {_vm.$set(_vm.editUser, \"email\", $$v)},expression:\"editUser.email\"}}),(_vm.state.email === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"user-email\"}},[_vm._v(\" \"+_vm._s(_vm.$t('email_is_required'))+\" \")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('user_password')}},[_c('b-form-input',{on:{\"input\":function($event){return _vm.validatePassword($event)}},model:{value:(_vm.editUser.password),callback:function ($$v) {_vm.$set(_vm.editUser, \"password\", $$v)},expression:\"editUser.password\"}}),(_vm.passwordValidation.length)?_c('div',_vm._l((_vm.passwordValidation),function(er){return _c('span',{key:er,staticClass:\"d-block text-danger small\"},[_vm._v(_vm._s(_vm.$t(er)))])}),0):_vm._e()],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_language')}},[_c('b-select',{attrs:{\"options\":['nl', 'es', 'de', 'en']},model:{value:(_vm.editUser.language),callback:function ($$v) {_vm.$set(_vm.editUser, \"language\", $$v)},expression:\"editUser.language\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_app_login_duration')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":\"1\"},model:{value:(_vm.editUser.app_login_duration),callback:function ($$v) {_vm.$set(_vm.editUser, \"app_login_duration\", $$v)},expression:\"editUser.app_login_duration\"}}),(_vm.editUser.app_login_duration < 1)?_c('div',[_c('span',{staticClass:\"d-block text-danger small\"},[_vm._v(_vm._s(_vm.$t('edit_user_modal_app_login_duration_error')))])]):_vm._e()],1)],1)],1),(_vm.$can('my_company_user_box_office_edit'))?_c('b-form-group',{attrs:{\"label\":_vm.$t('user_box_office')}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.editUser.box_office_user),callback:function ($$v) {_vm.$set(_vm.editUser, \"box_office_user\", $$v)},expression:\"editUser.box_office_user\"}})],1):_vm._e(),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_user_reset_password_checkbox')}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.editUser.to_reset_password),callback:function ($$v) {_vm.$set(_vm.editUser, \"to_reset_password\", $$v)},expression:\"editUser.to_reset_password\"}})],1)],1),(_vm.$can('my_company_user_permissions_view'))?_c('b-tab',{attrs:{\"title\":_vm.$t('company_permissions_tab')}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_allowed_events')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.editUser.allowed_events.length ? (_vm.editUser.allowed_events.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox',{staticClass:\"my-2\",attrs:{\"switch\":\"\"},model:{value:(_vm.userPermissionsShowArchivedEvents),callback:function ($$v) {_vm.userPermissionsShowArchivedEvents=$$v},expression:\"userPermissionsShowArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('event_show_archived')))]),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.editUser.allowed_events),callback:function ($$v) {_vm.$set(_vm.editUser, \"allowed_events\", $$v)},expression:\"editUser.allowed_events\"}},_vm._l((_vm.events.filter(e => _vm.userPermissionsShowArchivedEvents ? true : e.status !== 'archived').filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id,\"disabled\":!_vm.$can('my_company_user_permissions_edit')}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1),_c('hr'),_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_allowed_events_days')}},[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.days},model:{value:(_vm.editUser.events_days),callback:function ($$v) {_vm.$set(_vm.editUser, \"events_days\", $$v)},expression:\"editUser.events_days\"}})],1),(_vm.editUser.permissions && Object.keys(_vm.editUser.permissions).length)?_c('div',[(_vm.$can('my_company_user_permissions_edit') && _vm.roles.length)?_c('b-form-group',{attrs:{\"label\":_vm.$t('permission_role_templates')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles,\"value-field\":\"id\",\"text-field\":\"name\"},on:{\"input\":function($event){return _vm.roleSelected($event)}}})],1):_vm._e(),_c('hr'),_vm._l((_vm.editUser.permissions),function(group,index){return _c('div',{key:index},[_c('label',{staticClass:\"group-label px-2 d-block mt-3 mb-1 mb-0\"},[_c('b-form-checkbox',{staticClass:\"font-weight-bold py-1\",attrs:{\"disabled\":!_vm.$can('my_company_user_permissions_edit')},on:{\"change\":function($event){return _vm.changePermissionsCheckbox(group, $event)}}},[_vm._v(_vm._s(index))])],1),_c('b-row',_vm._l((group),function(permission){return _c('b-col',{key:permission.id,attrs:{\"cols\":\"6\"}},[_c('b-form-group',{staticClass:\"px-3\"},[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_user_permissions_edit')},model:{value:(permission.selected),callback:function ($$v) {_vm.$set(permission, \"selected\", $$v)},expression:\"permission.selected\"}},[_vm._v(_vm._s(_vm.$t('permission_' + permission.slug)))])],1)],1)}),1)],1)})],2):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.$t('permission_no_company_privileges')))])],1):_vm._e()],1)],1):_vm._e()]),(_vm.$can('admin_company_payment_costs_create'))?_c('b-modal',{attrs:{\"id\":\"add-company-payment-method\",\"title\":_vm.$t('admin_company_add_payment_method', _vm.company),\"size\":\"lg\"},on:{\"close\":function($event){_vm.editPaymentFees = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{on:{\"click\":function($event){return _vm.addPaymentMethodFees()}}},[_vm._v(_vm._s(_vm.$t('add')))])]},proxy:true}],null,false,4194907065)},[_c('b-form-group',{attrs:{\"label\":_vm.$t('admin_company_payment_method')}},[_c('b-select',{attrs:{\"options\":_vm.payment_methods,\"value-field\":\"id\",\"text-field\":\"name\"},model:{value:(_vm.newPaymentFee.payment_method),callback:function ($$v) {_vm.$set(_vm.newPaymentFee, \"payment_method\", $$v)},expression:\"newPaymentFee.payment_method\"}})],1),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_payment_method_fee_percentage'))+\" \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(\"%\")])]},proxy:true}],null,false,1569811129)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.newPaymentFee.fee_percentage),callback:function ($$v) {_vm.$set(_vm.newPaymentFee, \"fee_percentage\", $$v)},expression:\"newPaymentFee.fee_percentage\"}})],1),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_payment_method_fee_fixed'))+\" ( \"+_vm._s(_vm.$t('manage_company_without_vat'))+\" ) \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.$t('currency')))])]},proxy:true}],null,false,83482215)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.newPaymentFee.fee_fixed_amount),callback:function ($$v) {_vm.$set(_vm.newPaymentFee, \"fee_fixed_amount\", $$v)},expression:\"newPaymentFee.fee_fixed_amount\"}})],1),_c('br'),_c('date-time-picker',{attrs:{\"label\":_vm.$t('admin_company_payment_method_start_at')},model:{value:(_vm.newPaymentFee.starts_at),callback:function ($$v) {_vm.$set(_vm.newPaymentFee, \"starts_at\", $$v)},expression:\"newPaymentFee.starts_at\"}})],1):_vm._e(),_c('b-modal',{attrs:{\"id\":\"add-company-fee-modal\",\"title\":_vm.$t('admin_company_add_company_fee')},on:{\"close\":function($event){_vm.companyFee = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.addingLoading || !_vm.companyFee || !_vm.companyFee.fee_type || !_vm.companyFee.fee || !_vm.companyFee.starts_at},on:{\"click\":_vm.saveCompanyFee}},[(_vm.addingLoading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s((_vm.companyFee && _vm.companyFee.id) ? _vm.$t('update') : _vm.$t('add'))+\" \")],1)]},proxy:true}])},[(_vm.companyFee)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('admin_company_fee_type')}},[_c('b-select',{attrs:{\"options\":_vm.companyFees},model:{value:(_vm.companyFee.fee_type),callback:function ($$v) {_vm.$set(_vm.companyFee, \"fee_type\", $$v)},expression:\"companyFee.fee_type\"}})],1),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_fee'))+\" \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.companyFee.fee_type === 'free-tickets-free-percentage' ? '%' : _vm.$t('currency')))])]},proxy:true}],null,false,516784470)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.companyFee.fee),callback:function ($$v) {_vm.$set(_vm.companyFee, \"fee\", $$v)},expression:\"companyFee.fee\"}})],1),_c('br'),_c('date-time-picker',{attrs:{\"label\":_vm.$t('admin_company_fee_start_at')},model:{value:(_vm.companyFee.starts_at),callback:function ($$v) {_vm.$set(_vm.companyFee, \"starts_at\", $$v)},expression:\"companyFee.starts_at\"}})],1):_vm._e()]),_c('b-modal',{attrs:{\"id\":\"edit-user\",\"title\":_vm.$t('edit_user_modal_title'),\"size\":\"lg\"},on:{\"hide\":function($event){_vm.editUser = null},\"close\":function($event){_vm.editUser = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.passwordValidation.length > 0 || _vm.state.email === false || (_vm.editUser && !_vm.editUser.email)},on:{\"click\":function($event){return _vm.updateUser()}}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}])},[(_vm.editUser)?_c('div',[_c('b-tabs',{attrs:{\"content-class\":\"mt-3\"}},[_c('b-tab',{attrs:{\"title\":_vm.$t('company_user_settings_tab'),\"active\":\"\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_name')}},[_c('b-form-input',{model:{value:(_vm.editUser.name),callback:function ($$v) {_vm.$set(_vm.editUser, \"name\", $$v)},expression:\"editUser.name\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('user_email')}},[_c('b-form-input',{attrs:{\"state\":_vm.state.email,\"aria-describedby\":\"user-email\"},on:{\"input\":function($event){return _vm.validateEmail($event)}},model:{value:(_vm.editUser.email),callback:function ($$v) {_vm.$set(_vm.editUser, \"email\", $$v)},expression:\"editUser.email\"}}),(_vm.state.email === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"user-email\"}},[_vm._v(\" \"+_vm._s(_vm.$t('email_is_required'))+\" \")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('user_password'),\"description\":_vm.$t('user_password_hint')}},[_c('b-form-input',{on:{\"input\":function($event){return _vm.validatePassword($event, true)}},model:{value:(_vm.editUser.password),callback:function ($$v) {_vm.$set(_vm.editUser, \"password\", $$v)},expression:\"editUser.password\"}}),(_vm.passwordValidation.length)?_c('div',_vm._l((_vm.passwordValidation),function(er){return _c('span',{key:er,staticClass:\"d-block text-danger small\"},[_vm._v(_vm._s(_vm.$t(er)))])}),0):_vm._e()],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_language')}},[_c('b-select',{attrs:{\"options\":['nl', 'es', 'de', 'en']},model:{value:(_vm.editUser.language),callback:function ($$v) {_vm.$set(_vm.editUser, \"language\", $$v)},expression:\"editUser.language\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_app_login_duration')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":\"1\"},model:{value:(_vm.editUser.app_login_duration),callback:function ($$v) {_vm.$set(_vm.editUser, \"app_login_duration\", $$v)},expression:\"editUser.app_login_duration\"}}),(_vm.editUser.app_login_duration < 1)?_c('div',[_c('span',{staticClass:\"d-block text-danger small\"},[_vm._v(_vm._s(_vm.$t('edit_user_modal_app_login_duration_error')))])]):_vm._e()],1)],1)],1),(_vm.$can('my_company_user_box_office_edit'))?_c('b-form-group',{attrs:{\"label\":_vm.$t('user_box_office')}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.editUser.box_office_user),callback:function ($$v) {_vm.$set(_vm.editUser, \"box_office_user\", $$v)},expression:\"editUser.box_office_user\"}})],1):_vm._e(),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_user_reset_password_checkbox')}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.editUser.to_reset_password),callback:function ($$v) {_vm.$set(_vm.editUser, \"to_reset_password\", $$v)},expression:\"editUser.to_reset_password\"}})],1)],1),(_vm.$can('my_company_user_permissions_view'))?_c('b-tab',{attrs:{\"title\":_vm.$t('company_permissions_tab')}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('user_allowed_events')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.editUser.allowed_events.length ? (_vm.editUser.allowed_events.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox',{staticClass:\"my-2\",attrs:{\"switch\":\"\"},model:{value:(_vm.userPermissionsShowArchivedEvents),callback:function ($$v) {_vm.userPermissionsShowArchivedEvents=$$v},expression:\"userPermissionsShowArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('event_show_archived')))]),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.editUser.allowed_events),callback:function ($$v) {_vm.$set(_vm.editUser, \"allowed_events\", $$v)},expression:\"editUser.allowed_events\"}},_vm._l((_vm.events.filter(e => _vm.userPermissionsShowArchivedEvents ? true : e.status !== 'archived').filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id,\"disabled\":!_vm.$can('my_company_user_permissions_edit')}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1),_c('hr'),_c('b-form-group',{attrs:{\"label\":_vm.$t('my_company_allowed_events_days')}},[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.days},model:{value:(_vm.editUser.events_days),callback:function ($$v) {_vm.$set(_vm.editUser, \"events_days\", $$v)},expression:\"editUser.events_days\"}})],1),(_vm.editUser.permissions && Object.keys(_vm.editUser.permissions).length)?_c('div',[(_vm.$can('my_company_user_permissions_edit') && _vm.roles.length)?_c('b-form-group',{attrs:{\"label\":_vm.$t('permission_role_templates')}},[_c('b-form-select',{attrs:{\"options\":_vm.roles,\"value-field\":\"id\",\"text-field\":\"name\"},on:{\"input\":function($event){return _vm.roleSelected($event)}}})],1):_vm._e(),_c('hr'),_vm._l((_vm.editUser.permissions),function(group,index){return _c('div',{key:index},[_c('label',{staticClass:\"group-label px-2 d-block mt-3 mb-1 mb-0\"},[_c('b-form-checkbox',{staticClass:\"font-weight-bold py-1\",attrs:{\"disabled\":!_vm.$can('my_company_user_permissions_edit')},on:{\"change\":function($event){return _vm.changePermissionsCheckbox(group, $event)}}},[_vm._v(_vm._s(index))])],1),_c('b-row',_vm._l((group),function(permission){return _c('b-col',{key:permission.id,attrs:{\"cols\":\"6\"}},[_c('b-form-group',{staticClass:\"px-3\"},[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.$can('my_company_user_permissions_edit')},model:{value:(permission.selected),callback:function ($$v) {_vm.$set(permission, \"selected\", $$v)},expression:\"permission.selected\"}},[_vm._v(_vm._s(_vm.$t('permission_' + permission.slug)))])],1)],1)}),1)],1)})],2):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.$t('permission_no_company_privileges')))])],1):_vm._e()],1)],1):_vm._e()])],1)],1),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-user\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteUser}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.label ? (_vm.label + ` date`) : null}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"type\":\"text\",\"placeholder\":_vm.datePlaceholder ? _vm.datePlaceholder : 'YYYY-MM-DD',\"autocomplete\":\"off\",\"state\":_vm.valid,\"disabled\":!!_vm.disabled},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}}),_c('b-input-group-append',[_c('b-form-datepicker',{attrs:{\"button-only\":\"\",\"right\":\"\",\"locale\":\"nl\",\"min\":_vm.min,\"start-weekday\":\"1\",\"disabled\":!!_vm.disabled},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}})],1)],1)],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.label ? (_vm.label + ` time`) : null}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"type\":\"text\",\"placeholder\":_vm.timePlaceholder ? _vm.timePlaceholder : 'UU:MM',\"state\":_vm.valid,\"disabled\":!!_vm.disabled},model:{value:(_vm.time),callback:function ($$v) {_vm.time=$$v},expression:\"time\"}}),_c('b-input-group-append',[_c('b-form-timepicker',{attrs:{\"button-only\":\"\",\"show-seconds\":false,\"right\":\"\",\"locale\":\"nl\",\"disabled\":!!_vm.disabled},model:{value:(_vm.time),callback:function ($$v) {_vm.time=$$v},expression:\"time\"}})],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-row>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"label ? (label + ` date`) : null\">\n <b-input-group>\n <b-form-input\n v-model=\"date\"\n type=\"text\"\n :placeholder=\"datePlaceholder ? datePlaceholder : 'YYYY-MM-DD'\"\n autocomplete=\"off\"\n :state=\"valid\"\n :disabled=\"!!disabled\"\n ></b-form-input>\n <b-input-group-append>\n <b-form-datepicker\n v-model=\"date\"\n button-only\n right\n locale=\"nl\"\n :min=\"min\"\n start-weekday=\"1\"\n :disabled=\"!!disabled\"\n ></b-form-datepicker>\n </b-input-group-append>\n </b-input-group>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"label ? (label + ` time`) : null\">\n <b-input-group>\n <b-form-input\n v-model=\"time\"\n type=\"text\"\n :placeholder=\"timePlaceholder ? timePlaceholder : 'UU:MM'\"\n :state=\"valid\"\n :disabled=\"!!disabled\"\n ></b-form-input>\n <b-input-group-append>\n <b-form-timepicker\n v-model=\"time\"\n button-only\n :show-seconds=\"false\"\n right\n locale=\"nl\"\n :disabled=\"!!disabled\"\n ></b-form-timepicker>\n </b-input-group-append>\n </b-input-group>\n </b-form-group>\n </b-col>\n </b-row>\n</template>\n<script>\nimport moment from 'moment-timezone'\n\nmoment.tz.setDefault('Europe/Amsterdam');\nexport default {\n props: ['label', 'value', 'min', 'disabled', 'optional', 'datePlaceholder', 'timePlaceholder'],\n data() {\n return {\n date: '',\n time: '',\n dateTime: null,\n debounceTimeout: null,\n loaded: false,\n valid: null\n }\n },\n methods: {\n updateValue(){\n if (this.value === null) {\n this.date = '';\n this.time = '';\n this.dateTime = null;\n this.debounceTimeout = null;\n this.valid = false;\n this.loaded = false;\n if(this.optional) {\n this.valid = null;\n }\n return\n }\n\n this.dateTime = moment(new Date(this.value))\n\n if (!this.loaded && this.dateTime.isValid()) {\n this.date = this.dateTime.format('YYYY-MM-DD')\n this.time = this.dateTime.format('HH:mm')\n this.loaded = true\n return\n }\n\n if (this.debounceTimeout) {\n clearTimeout(this.debounceTimeout)\n }\n\n this.debounceTimeout = setTimeout(() => {\n if (this.dateTime.isValid()) {\n this.valid = null\n this.date = this.dateTime.format('YYYY-MM-DD')\n this.time = this.dateTime.format('HH:mm')\n } else {\n this.valid = false\n }\n if(this.optional) {\n this.valid = null;\n }\n }, 1000)\n }\n },\n mounted() {\n this.updateValue()\n },\n watch: {\n date(value) {\n if(value) {\n if(!this.time) {\n this.time = '00:00';\n }\n this.$emit('input', moment(this.date + ' ' + this.time).tz('UTC').format())\n this.updateValue()\n }\n },\n time(value) {\n if(value) {\n this.$emit('input', moment(this.date + ' ' + this.time).tz('UTC').format())\n this.updateValue()\n }\n },\n value() {\n this.updateValue()\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DateTimePicker.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DateTimePicker.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DateTimePicker.vue?vue&type=template&id=72f73e9a\"\nimport script from \"./DateTimePicker.vue?vue&type=script&lang=js\"\nexport * from \"./DateTimePicker.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div class=\"login\">\n <b-row>\n <b-col cols=\"12\" lg=\"12\">\n <b-row class=\"flexing\">\n <b-col cols=\"12\" md=\"6\" class=\"ml-0\">\n <b-button v-if=\"$can('my_company_layout_view') && isUserCompany\" variant=\"new\" :to=\"{name: 'ManageCompanyLayout'}\" class=\"py-3 mb-3 mr-3\">{{ $t('company_layout') }}</b-button>\n <b-button variant=\"new\" v-if=\"$can('company_invoice_view') && isUserCompany\" :to=\"{name: 'CompanyInvoiceOverview'}\" class=\"py-3 mb-3\">{{ $t('company_invoice_overview') }}</b-button>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col v-if=\"user && $can('admin_company_payment_costs_view') || $can('admin_company_payment_costs_create')\">\n <b-col cols=\"12\" md=\"12\" class=\"ml-0 pl-0\">\n <b-button v-if=\"$can('admin_company_payment_costs_create')\" variant=\"new\" @click=\"showAddPaymentCostsModal\">{{ $t('admin_company_add_payment_method') }}</b-button>\n </b-col>\n\n <span v-if=\"user && $can('admin_company_payment_costs_view')\">{{ $t('manage_company_without_vat') }}</span>\n\n <div class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"paymentMethodHistory\" :fields=\"[{key: 'payment_method', label: $t('admin_company_payment_method')},{key: 'payment_method_fees.fee_percentage', label: $t('admin_company_payment_method_fee_percentage')},{key: 'payment_method_fees.fee_fixed_amount', label: $t('admin_company_payment_method_fee_fixed')},{key: 'starts_at', label: $t('event_starts_at')}]\">\n <template v-slot:cell(payment_method_fees.fee_percentage)=\"{item}\">\n {{ item.fee_percentage }}%\n </template>\n <template v-slot:cell(payment_method_fees.fee_fixed_amount)=\"{item}\">\n {{ item.fee_fixed_amount | currency }}\n </template>\n <template v-slot:cell(starts_at)=\"{item}\">\n {{ item.starts_at | date_time }}\n </template>\n </b-table>\n </div>\n </b-col>\n <b-col v-if=\"user && $can('admin_company_fee_view')\">\n <b-button v-if=\"$can('admin_company_fee_add')\" variant=\"new\" @click=\"showAddCompanyFeeModal\" class=\"mb-4\">{{ $t('admin_company_add_company_fee') }}</b-button>\n <div v-else style=\"height: 48px;\" class=\"mb-4\"></div>\n <div class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"company.fees\" :fields=\"[{key: 'fee_type', label: $t('admin_company_fee_type')},{key: 'fee', label: $t('admin_company_fee')},{key: 'starts_at', label: $t('admin_company_fee_start_at')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(starts_at)=\"{item}\">\n {{ item.starts_at | date_time }}\n </template>\n <template v-slot:cell(fee)=\"{item}\">\n <span v-if=\"item.fee_type === 'free-tickets-free-percentage'\">{{ item.fee + '%' }}</span>\n <span v-if=\"item.fee_type !== 'free-tickets-free-percentage'\">{{ item.fee | currency }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button variant=\"primary\" v-if=\"$can('admin_company_fee_edit')\" @click=\"showEditCompanyFeeModal(item)\" class=\"mr-2\">{{ $t('edit') }}</b-button>\n </template>\n </b-table>\n </div>\n </b-col>\n </b-row>\n <div class=\"tableBig\">\n <b-row>\n <b-col v-if=\"($can('my_company_settings_view') && isUserCompany) || $can('my_company_settings_edit') || $can('admin_company_details_view')\" xs=\"12\" sm=\"12\" xl=\"4\">\n <div v-if=\"($can('my_company_user_create') && isUserCompany) || $can('admin_company_details_edit')\" class=\"mb-3 px-4 py-3\" style=\"height: 60px;\"></div>\n <div v-if=\"$can('admin_company_details_view')\" class=\"content-main-container mt-0 container-distance\">\n <div class=\"title-container\">{{ $t('company_details') }}</div>\n <div class=\"content-container\">\n\n <div v-if=\"user\">\n <b-form-group :label=\"$t('company_name')\">\n <b-form-input v-model=\"company.name\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_subdomain')\">\n <b-form-input v-model=\"company.domain\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_contact')\">\n <b-form-input v-model=\"company.contact\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_phone')\">\n <b-form-input v-model=\"company.phone\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_address')\">\n <b-form-input v-model=\"company.address\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_zip')\">\n <b-form-input v-model=\"company.zip\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('company_city')\">\n <b-form-input v-model=\"company.city\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_kvk')\">\n <b-form-input v-model=\"company.kvk\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-checkbox v-model=\"company.show_kvk_on_pos\" :disabled=\"!$can('admin_company_details_edit')\">\n {{ $t('company_show_kvk_on_pos') }}\n </b-form-checkbox>\n </b-form-group> \n </b-col>\n <b-col>\n <b-form-group :label=\"$t('company_vat')\">\n <b-form-input v-model=\"company.vat\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group :label=\"$t('company_invoice_prefix')\">\n <b-form-input v-model=\"company.invoice_prefix\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_vat_percentage')\">\n <b-form-input v-model=\"company.vat_percentage\" type=\"number\" step=\"1\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_paynl_merchant_id')\">\n <b-form-input v-model=\"company.paynl_merchant_id\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_paynl_token_code')\">\n <b-form-input v-model=\"company.paynl_token_code\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_paynl_api_token')\">\n <b-form-input v-model=\"company.paynl_api_token\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_paynl_service_id')\">\n <b-form-input v-model=\"company.paynl_service_id\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_country')\">\n <b-select v-model=\"company.country\" :options=\"['nl', 'es', 'de', 'en', 'be']\" :disabled=\"!$can('admin_company_details_edit')\"></b-select>\n </b-form-group>\n <b-form-group :label=\"$t('company_email_customer_questions')\">\n <b-form-input v-model=\"company.email_customer_questions\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_email_invoice')\">\n <b-form-input v-model=\"company.email_invoice\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_paynl_account_type')\">\n <b-select v-model=\"company.paynl_account_type\" :options=\"['not-chosen', 'submerchant', 'payout-merchant']\" :disabled=\"!$can('admin_company_details_edit')\"></b-select>\n </b-form-group>\n <b-form-group :label=\"$t('company_payout_iban')\">\n <b-form-input v-model=\"company.payout_iban\" :disabled=\"!$can('admin_company_details_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('company_whitelabel_layout')\">\n <b-select v-model=\"company.whitelabel_layout\" :options=\"['fairtix', 'baron']\" :disabled=\"!$can('admin_company_details_edit')\"></b-select>\n </b-form-group>\n </div>\n\n <b-form-group v-if=\"user && $can('admin_company_details_edit')\">\n <b-button @click=\"save()\">{{ $t('save') }}</b-button>\n </b-form-group>\n </div>\n </div>\n\n <div v-if=\"isUserCompany && ($can('my_company_settings_view') || $can('my_company_settings_edit'))\" class=\"content-main-container mt-0 container-distance\">\n <div class=\"title-container\">{{ $t('company_settings') }}</div>\n <div class=\"content-container\">\n <b-form-group>\n <b-form-checkbox v-model=\"company.show_calendar\" :disabled=\"!$can('my_company_settings_edit')\">{{ $t('company_show_calendar') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group>\n <b-form-checkbox v-model=\"company.calendar_sold_ratio\" :disabled=\"!$can('my_company_settings_edit')\">{{ $t('company_calendar_sold_ratio') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group>\n <b-form-checkbox v-model=\"company.order_notification_enabled\" :disabled=\"!$can('my_company_settings_edit')\">{{ $t('company_send_order_notifications') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group v-if=\"company.order_notification_enabled\" :label=\"$t('company_send_order_notifications_email')\">\n <b-form-input v-model=\"company.order_notification_email\" type=\"email\" :disabled=\"!$can('my_company_settings_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-checkbox v-model=\"company.tickets_sold_out_notification_enabled\" :disabled=\"!$can('my_company_settings_edit')\">{{ $t('company_tickets_sold_out_notification') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group v-if=\"company.tickets_sold_out_notification_enabled\" :label=\"$t('company_send_order_notifications_email')\">\n <b-form-input v-model=\"company.tickets_sold_out_notification_email\" type=\"email\" :disabled=\"!$can('my_company_settings_edit')\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-checkbox v-model=\"company.order_thank_you_show_events\" :disabled=\"!$can('my_company_settings_edit')\">{{ $t('company_order_thank_you_show_events') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group v-if=\"user && $can('my_company_settings_edit')\">\n <b-button @click=\"save()\">{{ $t('save') }}</b-button>\n </b-form-group>\n </div>\n </div>\n </b-col>\n <b-col>\n <b-form-group v-if=\"($can('my_company_user_create') && isUserCompany) || $can('admin_company_details_edit')\" class=\"text-right container-distance\">\n <b-button variant=\"new\" @click=\"showAddUserModal\">{{ $t('user_create') }}</b-button>\n </b-form-group>\n <div v-else class=\"mb-3 float-right px-4 py-3\" style=\"height: 56px;\"></div>\n <b-table v-if=\"$can('admin_company_users_view') || ($can('my_company_users_view') && isUserCompany)\" class=\"table-container\" :items=\"company.users\" :fields=\"[{key: 'name', label: $t('user_name')},{key: 'email', label: $t('user_email')},{key: 'role', label: $t('user_role')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(role)=\"{item}\">\n {{ $t( 'user_role_' + item.role) }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <!-- <b-button-group v-if=\"user.id !== item.id\"> -->\n <b-button variant=\"primary\" v-if=\"(user.role === 'admin' || user.role === 'company_admin' || (user.role === 'user' && item.role === 'user')) && (user.id === 1 && item.id === 1 || (user.id !== item.id && item.id !== 1)) && (($can('my_company_user_edit') && isUserCompany) || $can('admin_company_users_edit'))\" @click=\"showEditModal(item)\" class=\"mr-2\">{{ $t('manage') }}</b-button>\n <b-button variant=\"danger\" v-if=\"(user.role === 'admin' || user.role === 'company_admin' || (user.role === 'user' && item.role === 'user')) && (user.id !== item.id && item.id !== 1) && (($can('my_company_user_delete') && isUserCompany) || $can('admin_company_users_delete'))\" @click=\"showDeleteModal(item)\">{{ $t('delete') }}</b-button>\n <b-button variant=\"info\" v-if=\"(user.id !== item.id && item.id !== 1) && $can('admin_company_user_impersonate')\" @click=\"impersonate(item.id)\">\n {{ $t('company_user_impersonate') }}\n </b-button>\n <!-- </b-button-group> -->\n </template>\n </b-table>\n\n <div class=\"content-main-container mt-0 container-distance\" v-if=\"user && $can('admin_automatic_invoicing_view')\">\n <div class=\"title-container\">{{ $t('my_company_invoice_title') }}</div>\n <div class=\"content-container\"> \n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.automatic_invoicing\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_automatic_invoicing') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.automatic_invoicing_test_mode\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_automatic_invoicing_test_mode') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_anti_dating\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_anti_dating') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_vat_shifted\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_vat_shifted') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_generate_payout_summary\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_generate_payout_summary') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group v-if=\"company.invoice_generate_payout_summary\">\n <b-form-checkbox v-model=\"company.invoice_include_payout_summary\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_include_payout_summary') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"company.invoice_generate_payout_summary\">\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_generate_detailed_explanation\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_generate_detailed_explanation') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group v-if=\"company.invoice_generate_detailed_explanation\">\n <b-form-checkbox v-model=\"company.invoice_include_detailed_explanation\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_include_detailed_explanation') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_generate_fairtix_invoice\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_generate_fairtix_invoice') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group v-if=\"company.invoice_generate_fairtix_invoice\">\n <b-form-checkbox v-model=\"company.invoice_include_fairtix_invoice\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_include_fairtix_invoice') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"company.invoice_set_off_invoices\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\">\n {{ $t('my_company_invoice_set_off_invoices') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('my_company_invoice_language')\">\n <b-select v-model=\"company.invoice_language\" :options=\"['nl', 'en', 'es', 'de']\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('my_company_invoice_payout_frequency')\">\n <b-select v-model=\"company.invoice_payout_frequency\" :options=\"['daily', 'weekly', 'monthly', 'after-event']\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('my_company_invoice_payout_delay')\" v-if=\"company.invoice_payout_frequency === 'after-event'\">\n <b-form-input type=\"number\" v-model=\"company.invoice_payout_delay\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('my_company_invoice_max_payment_period')\">\n <b-form-input type=\"number\" v-model=\"company.invoice_max_payment_period\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('my_company_invoice_receive_method')\">\n <b-select v-model=\"company.invoice_receive_method\" :options=\"['mail']\" :disabled=\"!$can('admin_company_automatic_invoicing_edit')\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-form-group v-if=\"user && $can('admin_company_automatic_invoicing_edit')\">\n <b-button @click=\"save()\">{{ $t('save') }}</b-button>\n </b-form-group>\n </div>\n </div>\n <div class=\"content-main-container container-distance\" v-if=\"user && $can('admin_company_permission_view')\">\n <div class=\"title-container\">{{ $t('company_permissions') }}</div>\n <div class=\"content-container\">\n <div v-for=\"(group, index) in companyPermissions\" :key=\"index\">\n <label class=\"group-label px-2 d-block mb-3 mb-1\">\n <b-form-checkbox @change=\"changePermissionsCheckbox(group, $event)\" class=\"font-weight-bold py-1\" :disabled=\"!$can('admin_company_permission_edit')\">{{ index }}</b-form-checkbox>\n </label>\n <b-row>\n <b-col cols=\"6\" v-for=\"permission in group\" :key=\"permission.id\">\n <b-form-group class=\"px-3\">\n <b-form-checkbox v-model=\"permission.selected\" :disabled=\"!$can('admin_company_permission_edit')\">{{ $t('permission_' + permission.slug) }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n\n <b-button v-if=\"$can('admin_company_permission_edit')\" @click=\"savePermissions()\">{{ $t('save') }}</b-button>\n </div>\n </div>\n </b-col>\n </b-row>\n \n </div>\n <b-modal id=\"add-user\" @close=\"editUser = null\" :title=\"$t('user_create_modal_title', company)\" size=\"lg\">\n <div v-if=\"editUser\">\n <b-tabs content-class=\"mt-3\">\n <b-tab :title=\"$t('company_user_settings_tab')\" active>\n <b-form-group :label=\"$t('user_name')\">\n <b-form-input v-model=\"editUser.name\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('user_email')\">\n <b-form-input v-model=\"editUser.email\" :state=\"state.email\" aria-describedby=\"user-email\" @input=\"validateEmail($event)\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.email === false\" id=\"user-email\">\n {{ $t('email_is_required') }}\n </b-form-invalid-feedback>\n </b-form-group>\n <b-form-group :label=\"$t('user_password')\">\n <b-form-input @input=\"validatePassword($event)\" v-model=\"editUser.password\"></b-form-input>\n <div v-if=\"passwordValidation.length\">\n <span class=\"d-block text-danger small\" v-for=\"er in passwordValidation\" :key=\"er\">{{ $t(er) }}</span>\n </div>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('user_language')\">\n <b-select v-model=\"editUser.language\" :options=\"['nl', 'es', 'de', 'en']\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('user_app_login_duration')\">\n <b-form-input v-model=\"editUser.app_login_duration\" type=\"number\" min=\"1\"></b-form-input>\n <div v-if=\"editUser.app_login_duration < 1\">\n <span class=\"d-block text-danger small\">{{ $t('edit_user_modal_app_login_duration_error') }}</span>\n </div>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group :label=\"$t('user_box_office')\" v-if=\"$can('my_company_user_box_office_edit')\">\n <b-form-checkbox switch v-model=\"editUser.box_office_user\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox>\n </b-form-group>\n <b-form-group :label=\"$t('company_user_reset_password_checkbox')\">\n <b-form-checkbox switch v-model=\"editUser.to_reset_password\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox>\n </b-form-group>\n </b-tab>\n <b-tab :title=\"$t('company_permissions_tab')\" v-if=\"$can('my_company_user_permissions_view')\">\n <b-form-group :label=\"$t('user_allowed_events')\">\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"editUser.allowed_events.length ? (editUser.allowed_events.length + ' ' + $t('permission_events_selected')) : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox class=\"my-2\" v-model=\"userPermissionsShowArchivedEvents\" switch>{{ $t('event_show_archived') }}</b-form-checkbox>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"editUser.allowed_events\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => userPermissionsShowArchivedEvents ? true : e.status !== 'archived').filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" :disabled=\"!$can('my_company_user_permissions_edit')\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n <hr>\n <b-form-group :label=\"$t('my_company_allowed_events_days')\">\n <b-form-checkbox-group\n v-model=\"editUser.events_days\"\n :options=\"days\"\n ></b-form-checkbox-group>\n </b-form-group>\n <div v-if=\"editUser.permissions && Object.keys(editUser.permissions).length\">\n <b-form-group v-if=\"$can('my_company_user_permissions_edit') && roles.length\" :label=\"$t('permission_role_templates')\">\n <b-form-select @input=\"roleSelected($event)\" :options=\"roles\" value-field=\"id\" text-field=\"name\"></b-form-select>\n </b-form-group>\n <hr>\n <div v-for=\"(group, index) in editUser.permissions\" :key=\"index\">\n <label class=\"group-label px-2 d-block mt-3 mb-1 mb-0\">\n <b-form-checkbox @change=\"changePermissionsCheckbox(group, $event)\" class=\"font-weight-bold py-1\" :disabled=\"!$can('my_company_user_permissions_edit')\">{{ index }}</b-form-checkbox>\n </label>\n <b-row>\n <b-col cols=\"6\" v-for=\"permission in group\" :key=\"permission.id\">\n <b-form-group class=\"px-3\">\n <b-form-checkbox v-model=\"permission.selected\" :disabled=\"!$can('my_company_user_permissions_edit')\">{{ $t('permission_' + permission.slug) }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n </div>\n <b-alert v-else show variant=\"warning\">{{ $t('permission_no_company_privileges') }}</b-alert>\n </b-tab>\n </b-tabs>\n </div>\n\n <template #modal-footer>\n <b-button @click=\"addUser()\" :disabled=\"passwordValidation.length > 0 || state.email === false || (editUser && !editUser.email)\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"add-company-payment-method\" v-if=\"$can('admin_company_payment_costs_create')\" @close=\"editPaymentFees = null\" :title=\"$t('admin_company_add_payment_method', company)\" size=\"lg\">\n \n <b-form-group :label=\"$t('admin_company_payment_method')\">\n <b-select v-model=\"newPaymentFee.payment_method\" :options=\"payment_methods\" value-field=\"id\" text-field=\"name\"></b-select>\n </b-form-group>\n {{ $t('admin_company_payment_method_fee_percentage') }}\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">%</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"newPaymentFee.fee_percentage\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n {{ $t('admin_company_payment_method_fee_fixed') }} ( {{ $t('manage_company_without_vat') }} )\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"newPaymentFee.fee_fixed_amount\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n <date-time-picker v-model=\"newPaymentFee.starts_at\" :label=\"$t('admin_company_payment_method_start_at')\"></date-time-picker>\n\n <template #modal-footer>\n <b-button @click=\"addPaymentMethodFees()\">{{ $t('add') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"add-company-fee-modal\" @close=\"companyFee = null\" :title=\"$t('admin_company_add_company_fee')\">\n\n <div v-if=\"companyFee\">\n <b-form-group :label=\"$t('admin_company_fee_type')\">\n <b-select v-model=\"companyFee.fee_type\" :options=\"companyFees\"></b-select>\n </b-form-group>\n\n {{ $t('admin_company_fee') }}\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ companyFee.fee_type === 'free-tickets-free-percentage' ? '%' : $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"companyFee.fee\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n <date-time-picker v-model=\"companyFee.starts_at\" :label=\"$t('admin_company_fee_start_at')\"></date-time-picker>\n </div>\n\n <template #modal-footer>\n <b-button :disabled=\"addingLoading || !companyFee || !companyFee.fee_type || !companyFee.fee || !companyFee.starts_at\" @click=\"saveCompanyFee\">\n <b-icon v-if=\"addingLoading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ (companyFee && companyFee.id) ? $t('update') : $t('add') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"edit-user\" @hide=\"editUser = null\" @close=\"editUser = null\" :title=\"$t('edit_user_modal_title')\" size=\"lg\">\n <div v-if=\"editUser\">\n <b-tabs content-class=\"mt-3\">\n <b-tab :title=\"$t('company_user_settings_tab')\" active>\n <b-form-group :label=\"$t('user_name')\">\n <b-form-input v-model=\"editUser.name\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('user_email')\">\n <b-form-input v-model=\"editUser.email\" :state=\"state.email\" aria-describedby=\"user-email\" @input=\"validateEmail($event)\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.email === false\" id=\"user-email\">\n {{ $t('email_is_required') }}\n </b-form-invalid-feedback>\n </b-form-group>\n <b-form-group :label=\"$t('user_password')\"\n :description=\"$t('user_password_hint')\">\n <b-form-input @input=\"validatePassword($event, true)\" v-model=\"editUser.password\"></b-form-input>\n <div v-if=\"passwordValidation.length\">\n <span class=\"d-block text-danger small\" v-for=\"er in passwordValidation\" :key=\"er\">{{ $t(er) }}</span>\n </div>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('user_language')\">\n <b-select v-model=\"editUser.language\" :options=\"['nl', 'es', 'de', 'en']\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('user_app_login_duration')\">\n <b-form-input v-model=\"editUser.app_login_duration\" type=\"number\" min=\"1\"></b-form-input>\n <div v-if=\"editUser.app_login_duration < 1\">\n <span class=\"d-block text-danger small\">{{ $t('edit_user_modal_app_login_duration_error') }}</span>\n </div>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group v-if=\"$can('my_company_user_box_office_edit')\" :label=\"$t('user_box_office')\">\n <b-form-checkbox switch v-model=\"editUser.box_office_user\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox>\n </b-form-group>\n <b-form-group :label=\"$t('company_user_reset_password_checkbox')\">\n <b-form-checkbox switch v-model=\"editUser.to_reset_password\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox>\n </b-form-group>\n </b-tab>\n <b-tab :title=\"$t('company_permissions_tab')\" v-if=\"$can('my_company_user_permissions_view')\">\n <b-form-group :label=\"$t('user_allowed_events')\">\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"editUser.allowed_events.length ? (editUser.allowed_events.length + ' ' + $t('permission_events_selected')) : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox class=\"my-2\" v-model=\"userPermissionsShowArchivedEvents\" switch>{{ $t('event_show_archived') }}</b-form-checkbox>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"editUser.allowed_events\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => userPermissionsShowArchivedEvents ? true : e.status !== 'archived').filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" :disabled=\"!$can('my_company_user_permissions_edit')\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n <hr>\n <b-form-group :label=\"$t('my_company_allowed_events_days')\">\n <b-form-checkbox-group\n v-model=\"editUser.events_days\"\n :options=\"days\"\n ></b-form-checkbox-group>\n </b-form-group>\n <div v-if=\"editUser.permissions && Object.keys(editUser.permissions).length\">\n <b-form-group :label=\"$t('permission_role_templates')\" v-if=\"$can('my_company_user_permissions_edit') && roles.length\">\n <b-form-select @input=\"roleSelected($event)\" :options=\"roles\" value-field=\"id\" text-field=\"name\"></b-form-select>\n </b-form-group>\n <hr>\n <div v-for=\"(group, index) in editUser.permissions\" :key=\"index\">\n <label class=\"group-label px-2 d-block mt-3 mb-1 mb-0\">\n <b-form-checkbox @change=\"changePermissionsCheckbox(group, $event)\" class=\"font-weight-bold py-1\" :disabled=\"!$can('my_company_user_permissions_edit')\">{{ index }}</b-form-checkbox>\n </label>\n <b-row>\n <b-col cols=\"6\" v-for=\"permission in group\" :key=\"permission.id\">\n <b-form-group class=\"px-3\">\n <b-form-checkbox v-model=\"permission.selected\" :disabled=\"!$can('my_company_user_permissions_edit')\">{{ $t('permission_' + permission.slug) }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n </div>\n <b-alert v-else show variant=\"warning\">{{ $t('permission_no_company_privileges') }}</b-alert>\n </b-tab>\n </b-tabs>\n </div>\n <template #modal-footer>\n <b-button @click=\"updateUser()\" :disabled=\"passwordValidation.length > 0 || state.email === false || (editUser && !editUser.email)\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n\n </b-col>\n </b-row>\n <b-modal :title=\"$t('delete')\" id=\"delete-user\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteUser\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState} from 'vuex'\nimport {groupBy, validateEmail, validatePassword} from \"@/functions\";\nimport DateTimePicker from \"@/components/DateTimePicker\";\n\nexport default {\n name: 'ManageCompany',\n components: {\n DateTimePicker\n },\n data() {\n return {\n working: false,\n company: {},\n logo: null,\n editUser: null,\n paymentMethods: [],\n loading: false,\n selectedUser: null,\n permissions: [],\n companyPermissions: [],\n roles: [],\n role: null,\n events: [],\n searchEvents: null,\n payment_method_fees: null,\n newPaymentFee: {\n payment_method: null,\n fee_percentage: 0,\n fee_fixed_amount: 0,\n starts_at: null\n },\n payment_methods: [],\n paymentMethodHistory: [],\n companyFees: [\n {value: 'ticket-fee', text: this.$t('admin_company_company_fee_ticket_fee')},\n {value: 'box-office-ticket-fee', text: this.$t('admin_company_company_fee_box_office_ticket_fee')},\n {value: 'refund-fee', text: this.$t('admin_company_company_fee_refund_fee')},\n {value: 'free-tickets-free-percentage', text: this.$t('admin_company_company_fee_free_tickets_free_percentage')},\n {value: 'free-ticketfee', text: this.$t('admin_company_company_fee_free_ticketfee')},\n ],\n companyFee: null,\n addingLoading: false,\n days: [\n this.$t('day_mon'),\n this.$t('day_tue'),\n this.$t('day_wed'),\n this.$t('day_thu'),\n this.$t('day_fri'),\n this.$t('day_sat'),\n this.$t('day_sun')\n ],\n passwordValidation: [],\n state: {\n email: null\n },\n userPermissionsShowArchivedEvents: false,\n }\n },\n created() {\n document.title = this.$t('backend_title_manage_company')\n if(this.$store.state.user) {\n if(!this.$can('my_company_view') && !this.$can('admin_company_details_page_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.loadCompany()\n api.permission().getRoles().then(response => {\n this.roles = response.filter(r => {\n if(this.companyId !== 'fairtix') {\n return !r.admin_only && r.online;\n }\n return r.online;\n });\n })\n },\n methods: {\n loadCompany() {\n if (!this.user) {\n setTimeout(this.loadCompany, 100)\n return\n }\n api.company().get(this.companyId).then(company => {\n company.show_kvk_on_pos = (company.show_kvk_on_pos === 1) ? true : false\n company.automatic_invoicing = (company.automatic_invoicing === 1) ? true : false\n company.automatic_invoicing_test_mode = (company.automatic_invoicing_test_mode === 1) ? true : false\n company.invoice_anti_dating = (company.invoice_anti_dating === 1) ? true : false\n company.invoice_vat_shifted = (company.invoice_vat_shifted === 1) ? true : false\n company.invoice_generate_payout_summary = (company.invoice_generate_payout_summary === 1) ? true : false\n company.invoice_include_payout_summary = (company.invoice_include_payout_summary === 1) ? true : false\n company.invoice_generate_detailed_explanation = (company.invoice_generate_detailed_explanation === 1) ? true : false\n company.invoice_include_detailed_explanation = (company.invoice_include_detailed_explanation === 1) ? true : false\n company.invoice_generate_fairtix_invoice = (company.invoice_generate_fairtix_invoice === 1) ? true : false\n company.invoice_include_fairtix_invoice = (company.invoice_include_fairtix_invoice === 1) ? true : false\n company.invoice_set_off_invoices = (company.invoice_set_off_invoices === 1) ? true : false\n company.users = company.users.map(user => {\n user.allowed_events = user.allowed_events.map(ae => ae.id);\n return user;\n })\n this.company = company\n this.permissions = JSON.parse(JSON.stringify(company.permissions));\n if(this.companyId !== 'mine') {\n api.permission().getPermissions().then(permissions => {\n const tmpArray = permissions.filter(p => {\n if(this.companyId !== 'fairtix') {\n return !p.admin_only;\n }\n return true;\n }).map(permission => {\n const isSelected = !!company.permissions.filter(rp => rp.id === permission.id).length;\n return Object.assign(permission, {selected: isSelected})\n });\n\n this.companyPermissions = this.getSortedPermissions(tmpArray)\n })\n }\n this.getPaymentMethodFees()\n api.company().events(company.id, true).then(response => {\n this.events = response;\n })\n })\n },\n getPaymentMethodFees(){\n api.order().paymentMethods(this.company.id).then(paymentMethods => {\n this.paymentMethodHistory = []\n paymentMethods.forEach(el => {\n if(el.payment_method_fees){\n el.payment_method_fees.forEach(element => {\n let tmpObject = {\n starts_at: element.starts_at,\n payment_method: el.name,\n fee_percentage: element.fee_percentage,\n fee_fixed_amount: element.fee_fixed_amount\n }\n this.paymentMethodHistory.push(tmpObject)\n })\n }\n })\n })\n },\n getSortedPermissions(permissions) {\n const tempPermissions = groupBy(permissions, p => p.category);\n for (const group in tempPermissions) {\n tempPermissions[group] = tempPermissions[group].sort((a, b)=>{\n return a.sort - b.sort;\n })\n }\n\n return tempPermissions;\n },\n showEditModal(user) {\n this.passwordValidation = [];\n this.state.email = null;\n const tmpArray = JSON.parse(JSON.stringify(this.permissions)).map(permission => {\n const isSelected = !!user.permissions.filter(rp => rp.id === permission.id).length;\n return Object.assign(permission, {selected: isSelected})\n });\n\n this.editUser = JSON.parse(JSON.stringify(user));\n this.editUser.permissions = this.getSortedPermissions(tmpArray);\n this.searchEvents = null;\n this.userPermissionsShowArchivedEvents = false;\n this.$bvModal.show('edit-user')\n },\n addPaymentMethodFees(){\n if( this.$can('admin_company_payment_costs_create') ){\n api.company().addNewPaymentMetodFees(this.company.id, this.newPaymentFee).then(() => {\n this.getPaymentMethodFees()\n this.$store.commit('success', 'admin_company_payment_method_added');\n this.$bvModal.hide('add-company-payment-method')\n })\n }\n },\n updateUser() {\n const permissions = [];\n if(this.$can('my_company_user_permissions_edit')) {\n for (const group in this.editUser.permissions) {\n for (const permission of this.editUser.permissions[group]) {\n if (permission.selected) {\n permissions.push(permission.id);\n }\n }\n }\n }\n const user = JSON.parse(JSON.stringify(this.editUser));\n user.permissions = permissions;\n if (this.$can('admin_company_details_edit')) {\n api.user().adminUpdate(user).then(() => {\n this.$store.commit('success', 'user_updated');\n this.$bvModal.hide('edit-user')\n this.editUser = null\n this.loadCompany()\n })\n return\n }\n\n api.user().update(this.companyId === 'mine' ? 'mine' : this.company.id, user).then(() => {\n this.$store.commit('success', 'user_updated');\n this.$bvModal.hide('edit-user')\n this.editUser = null\n this.loadCompany()\n })\n },\n showDeleteModal(user) {\n this.selectedUser = user;\n this.$bvModal.show('delete-user')\n },\n deleteUser() {\n this.loading = true;\n api.user().delete(this.company.id, this.selectedUser.id).then(() => {\n let index = this.company.users.indexOf(this.selectedUser)\n this.company.users.splice(index, 1)\n this.$bvModal.hide('delete-user')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n impersonate(id) {\n api.user().loginAs(id).then((token) => {\n this.$store.commit('loginAs', token)\n this.$router.push({\n name: 'Dashboard'\n })\n })\n },\n showAddUserModal() {\n const tmpArray = JSON.parse(JSON.stringify(this.permissions)).map(permission => {\n return Object.assign(permission, {selected: true})\n });\n this.passwordValidation = [];\n this.state.email = null;\n this.editUser = {\n name: null,\n email: null,\n password: null,\n language: null,\n role: null,\n box_office_user: false,\n to_reset_password: false,\n permissions: this.getSortedPermissions(tmpArray),\n allowed_events: [],\n events_days: []\n }\n this.searchEvents = null;\n this.userPermissionsShowArchivedEvents = false;\n this.$bvModal.show('add-user')\n },\n showAddPaymentCostsModal() {\n api.company().getAllPaymentMethods().then((paymentMethods) => {\n this.payment_methods = paymentMethods\n })\n this.$bvModal.show('add-company-payment-method')\n },\n addUser() {\n const permissions = [];\n if(this.$can('my_company_user_permissions_edit')) {\n for (const group in this.editUser.permissions) {\n for (const permission of this.editUser.permissions[group]) {\n if (permission.selected) {\n permissions.push(permission.id);\n }\n }\n }\n }\n const user = JSON.parse(JSON.stringify(this.editUser));\n user.permissions = permissions;\n api.company().addUser(this.companyId === 'mine' ? 'mine' : this.company.id, user).then((user) => {\n user.allowed_events = user.allowed_events.map(ae => ae.id);\n this.company.users.push(user)\n this.$store.commit('success', 'user_added');\n this.$bvModal.hide('add-user')\n this.editUser = null\n })\n },\n save() {\n api.company().update(this.company.id, this.company).then(() => {\n this.loadCompany()\n this.$store.commit('success', 'company_updated');\n })\n },\n savePermissions() {\n const permissions = [];\n\n for (const group in this.companyPermissions) {\n for (const permission of this.companyPermissions[group]) {\n if (permission.selected) {\n permissions.push(permission.id);\n }\n }\n }\n this.loading = true;\n api.permission().syncCompanyPermissions(this.company.id, permissions).then(() => {\n this.loading = false;\n this.$store.commit('success', 'company_updated');\n this.loadCompany();\n }).catch(() => {\n this.loading = false;\n })\n },\n roleSelected(role) {\n if(!role) {\n return;\n }\n role = this.roles.find(r => r.id === parseInt(role))\n for (const group in this.editUser.permissions) {\n for (const permission of this.editUser.permissions[group]) {\n permission.selected = !!role.permissions.filter(rp => rp.id === permission.id).length\n }\n }\n },\n changePermissionsCheckbox(permissions, event) {\n for(const permission of permissions) {\n permission.selected = event;\n }\n },\n showAddCompanyFeeModal() {\n this.companyFee = {\n fee_type: null,\n starts_at: null,\n fee: null\n };\n this.$bvModal.show('add-company-fee-modal')\n },\n showEditCompanyFeeModal(companyFee) {\n this.companyFee = JSON.parse(JSON.stringify(companyFee));\n this.$bvModal.show('add-company-fee-modal')\n },\n saveCompanyFee() {\n const request = this.companyFee.id ?\n api.company().updateCompanyFee(this.company.id, this.companyFee.id, this.companyFee) :\n api.company().addCompanyFee(this.company.id, this.companyFee);\n\n this.addingLoading = true;\n request.then(() => {\n this.$bvModal.hide('add-company-fee-modal');\n this.$store.commit('success', this.companyFee.id ? 'admin_company_company_fee_updated' : 'admin_company_company_fee_added');\n this.addingLoading = false;\n this.loadCompany();\n }).catch(() => {\n this.addingLoading = false;\n })\n },\n validatePassword(value, isEdit = false) {\n this.passwordValidation = validatePassword(value, isEdit)\n },\n validateEmail(email) {\n this.state.email = null\n if(!validateEmail(email)) {\n this.state.email = false\n }\n },\n },\n computed: {\n companyId() {\n return this.$can('admin_company_overview_view') ? this.$route.params.id : 'mine'\n },\n isUserCompany() {\n return this.user.company.unique_id === this.$route.params.id;\n },\n ...mapState(['user'])\n },\n watch:{\n '$store.state.user': {\n handler() {\n if(!this.$can('my_company_view') && !this.$can('admin_company_details_page_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n@media (max-width:992px) {\n .flexing{\n align-items: center;\n margin-bottom: 20px;\n }\n .flexing > div{\n display: flex;\n justify-content: center;\n width: 90%;\n margin-left: 5%;\n margin-bottom: 10px;\n }\n .flexing .container-distance{\n margin-bottom: 0px!important;\n }\n .flexing >div a,.flexing >div fieldset ,.flexing >div fieldset div button{\n width: 100%;\n }\n}\n.group-label {\n background-color: #EEEEEE !important;\n color: #000!important;\n font-size: 15px!important;\n padding-top: 12px ;\n padding-bottom: 12px ;\n}\n.group-label span {\n background-color: #EEEEEE;\n color: #4E4D4D;\n}\n.allowed-events-container {\n overflow-y: scroll;\n overflow-x: hidden;\n max-height:250px;\n \n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageCompany.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageCompany.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ManageCompany.vue?vue&type=template&id=fb63f1f6&scoped=true\"\nimport script from \"./ManageCompany.vue?vue&type=script&lang=js\"\nexport * from \"./ManageCompany.vue?vue&type=script&lang=js\"\nimport style0 from \"./ManageCompany.vue?vue&type=style&index=0&id=fb63f1f6&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fb63f1f6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"9\"}},[_c('h1',{staticClass:\"title text-left\"},[_vm._v(_vm._s(_vm.$t('layout_settings')))])]),_c('b-col',{staticClass:\"text-left text-sm-right\",attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_c('b-form-group',[(_vm.$can('my_company_layout_edit'))?_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))]):_vm._e()],1)],1)],1),_c('b-row',{staticClass:\"pb-3\"},[_c('b-col',{staticClass:\"mb-4 mb-lg-0\",attrs:{\"cols\":\"12\",\"md\":\"\",\"lg\":\"4\"}},[_c('b-card',{attrs:{\"title\":_vm.$t('layout_header')}},[_c('b-card-text',[_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_logo')}},[_c('input',{ref:\"logo\",attrs:{\"type\":\"file\",\"id\":\"file\",\"accept\":\"image/*\",\"disabled\":!_vm.$can('my_company_layout_edit')},on:{\"change\":function($event){return _vm.onLogoChange()}}})]),(_vm.layout.logo)?_c('b-form-group',{attrs:{\"label\":_vm.$t('company_layout_logo_url')}},[_c('b-form-input',{model:{value:(_vm.layout.logo_url),callback:function ($$v) {_vm.$set(_vm.layout, \"logo_url\", $$v)},expression:\"layout.logo_url\"}})],1):_vm._e(),_c('div',{staticClass:\"p-3\",style:(_vm.layout.header)},[(_vm.layout.logo)?_c('b-img',{attrs:{\"fluid\":\"\",\"src\":_vm.layout.logo}}):_vm._e(),(_vm.layout.logo && _vm.$can('my_company_layout_edit'))?_c('a',{staticClass:\"d-block font-14\",attrs:{\"href\":\"javascript:\"},on:{\"click\":function($event){_vm.layout.logo = null}}},[_vm._v(\" \"+_vm._s(_vm.$t('my_company_layout_remove_image'))+\" \")]):_vm._e()],1)],1)],1)],1),_c('b-col',{staticClass:\"mb-4 mb-lg-0\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',{attrs:{\"title\":_vm.$t('layout_colors')}},[_c('b-card-text',[_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_primary_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.primary_color),callback:function ($$v) {_vm.$set(_vm.layout, \"primary_color\", $$v)},expression:\"layout.primary_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.primary_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_secondary_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.secondary_color),callback:function ($$v) {_vm.$set(_vm.layout, \"secondary_color\", $$v)},expression:\"layout.secondary_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.secondary_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_accent_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.accent_color),callback:function ($$v) {_vm.$set(_vm.layout, \"accent_color\", $$v)},expression:\"layout.accent_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.accent_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_description_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.description_color),callback:function ($$v) {_vm.$set(_vm.layout, \"description_color\", $$v)},expression:\"layout.description_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.description_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_buttons_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.button_color),callback:function ($$v) {_vm.$set(_vm.layout, \"button_color\", $$v)},expression:\"layout.button_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.buttons_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_button_text_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.button_text_color),callback:function ($$v) {_vm.$set(_vm.layout, \"button_text_color\", $$v)},expression:\"layout.button_text_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.button_text_color)})],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\" sm=\"9\">\n <h1 class=\"title text-left\">{{ $t('layout_settings') }}</h1>\n </b-col>\n <b-col cols=\"12\" sm=\"3\" class=\" text-left text-sm-right\">\n <b-form-group>\n <b-button v-if=\"$can('my_company_layout_edit')\" variant=\"primary\" @click=\"save()\">{{ $t('save') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"pb-3\">\n <b-col cols=\"12\" md=\"\" lg=\"4\" class=\"mb-4 mb-lg-0\">\n <b-card :title=\"$t('layout_header')\" >\n <b-card-text>\n <b-form-group :label=\"$t('layout_logo')\">\n <input type=\"file\" id=\"file\" accept=\"image/*\" ref=\"logo\" v-on:change=\"onLogoChange()\" :disabled=\"!$can('my_company_layout_edit')\"/>\n </b-form-group>\n <b-form-group v-if=\"layout.logo\" :label=\"$t('company_layout_logo_url')\">\n <b-form-input v-model=\"layout.logo_url\"></b-form-input>\n </b-form-group>\n <div class=\"p-3\" :style=\"layout.header\">\n <b-img fluid :src=\"layout.logo\" v-if=\"layout.logo\" />\n <a v-if=\"layout.logo && $can('my_company_layout_edit')\" href=\"javascript:\" @click=\"layout.logo = null\" class=\"d-block font-14\">\n {{ $t('my_company_layout_remove_image') }}\n </a>\n </div>\n </b-card-text>\n </b-card>\n </b-col>\n <b-col cols=\"12\" lg=\"4\" class=\"mb-4 mb-lg-0\">\n <b-card :title=\"$t('layout_colors')\">\n <b-card-text>\n <b-form-group :label=\"$t('layout_primary_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.primary_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.primary_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_secondary_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.secondary_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.secondary_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_accent_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.accent_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.accent_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_description_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.description_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.description_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_buttons_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.button_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.buttons_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_button_text_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.button_text_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.button_text_color\"></div>\n </b-form-group>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState} from 'vuex'\nimport axios from 'axios'\nimport {validateUrl} from \"@/functions\";\n\nexport default {\n data() {\n return {\n working: false,\n company: {},\n editUser: {},\n layout: {\n logo: null,\n primary_color: null,\n secondary_color: null,\n accent_color: null,\n description_color: null,\n button_color: null,\n button_text_color: null,\n }\n }\n },\n created() {\n if(this.$store.state.user) {\n if(!this.$can('my_company_layout_view') && !this.$can('admin_company_details_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.loadCompany()\n },\n methods: {\n onLogoChange() {\n api.company().signLogoUpload(this.companyId, this.$refs['logo'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['logo'].files[0], {\n headers: {\n 'Content-Type': this.$refs['logo'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n }).then(() => {\n // upload done, create the video in the database\n this.layout.logo = response.target_url\n })\n })\n },\n loadCompany() {\n if (!this.user) {\n setTimeout(this.loadCompany, 100)\n return\n }\n api.company().get(this.companyId).then(company => {\n this.company = company\n if (this.company.layout) {\n this.layout = Object.assign(this.layout, this.company.layout)\n }\n })\n },\n save() {\n if (this.layout.logo_url) {\n if (!validateUrl(this.layout.logo_url)) {\n this.$store.commit('errors', [this.$t('pos_invalid_url')]);\n return;\n }\n }\n api.company().updateLayout(this.companyId, this.layout).then(() => {\n this.loadCompany()\n this.$store.commit('success', 'layout_updated');\n })\n }\n },\n computed: {\n companyId() {\n return this.user.role === 'admin' ? this.$route.params.id : 'mine'\n },\n ...mapState(['user'])\n },\n watch:{\n '$store.state.user': {\n handler() {\n if(!this.$can('my_company_layout_view') && !this.$can('admin_company_details_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.last-bar{\n margin-bottom:190px !important\n}\n.one-colorpicker {\n border: solid 1px silver;\n}\n@media (max-width:992px) {\n .title{\n font-size: 25px;\n text-align: center;\n}\n.card-text{\n display: flex;\n flex-wrap: wrap;\n position: relative;\n width: 100%;\n}\n.card-text > fieldset{\n width: 50%;\n margin-bottom: 20px;\n}\n}\n@media (max-width:576px) {\n.card-text{\n display: block;\n}\n.card-text > fieldset{\n width: 100%;\n margin-bottom: 20px;\n}\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageCompanyLayout.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageCompanyLayout.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ManageCompanyLayout.vue?vue&type=template&id=28bd0551&scoped=true\"\nimport script from \"./ManageCompanyLayout.vue?vue&type=script&lang=js\"\nexport * from \"./ManageCompanyLayout.vue?vue&type=script&lang=js\"\nimport style0 from \"./ManageCompanyLayout.vue?vue&type=style&index=0&id=28bd0551&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28bd0551\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',[_c('label',{staticClass:\"d-inline-block\"},[_vm._v(_vm._s(_vm.$t('event_show_archived')))]),_c('b-form-checkbox',{staticClass:\"d-inline-block ml-3\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},on:{\"change\":function($event){return _vm.getEvents()}},model:{value:(_vm.show_archived),callback:function ($$v) {_vm.show_archived=$$v},expression:\"show_archived\"}})],1),_c('b-col',[(_vm.$can('event_create'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.add-event\",modifiers:{\"add-event\":true}}],attrs:{\"variant\":\"new\"}},[_vm._v(_vm._s(_vm.$t('new')))])],1):_vm._e()],1)],1),_c('b-modal',{attrs:{\"id\":\"add-event\",\"title\":_vm.$t('event_new_modal_title'),\"size\":\"lg\",\"hide-footer\":\"\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_name')}},[_c('b-form-input',{attrs:{\"state\":_vm.event.name && (_vm.event.name.length < 4 || _vm.event.name.length > 64) ? false : null,\"placeholder\":_vm.$t('event_name') + '*',\"aria-describedby\":\"event-input-feedback\"},model:{value:(_vm.event.name),callback:function ($$v) {_vm.$set(_vm.event, \"name\", $$v)},expression:\"event.name\"}}),_c('b-form-invalid-feedback',{staticClass:\"mt-2\",attrs:{\"id\":\"input-live-feedback\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_name_64_char'))+\" \")])],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('date_and_time')}},[_c('b-row',[_c('b-col',{staticClass:\"col-md-6 col-12\"},[_c('date-time-picker',{attrs:{\"date-placeholder\":_vm.$t('start_date'),\"time-placeholder\":\"00:00\"},model:{value:(_vm.event.starts_at),callback:function ($$v) {_vm.$set(_vm.event, \"starts_at\", $$v)},expression:\"event.starts_at\"}})],1),_c('b-col',{staticClass:\"col-md-6 col-12\"},[_c('date-time-picker',{attrs:{\"date-placeholder\":_vm.$t('end_date'),\"time-placeholder\":\"00:00\"},model:{value:(_vm.event.ends_at),callback:function ($$v) {_vm.$set(_vm.event, \"ends_at\", $$v)},expression:\"event.ends_at\"}})],1)],1),(_vm.event.starts_at && _vm.event.ends_at && _vm.event.starts_at >= _vm.event.ends_at)?_c('span',{staticClass:\"d-block text-danger\"},[_vm._v(_vm._s(_vm.$t('end_before_start_date')))]):_vm._e()],1),_c('p',{staticClass:\"mt-3\"},[_vm._v(_vm._s(_vm.$t('event_create_hint')))]),_c('b-button',{staticClass:\"mt-3 text-white\",attrs:{\"variant\":\"primary\",\"disabled\":!_vm.event.name || !_vm.event.starts_at || !_vm.event.ends_at || (_vm.event.name && (_vm.event.name.length < 4 || _vm.event.name.length > 64))},on:{\"click\":function($event){return _vm.createEvent()}}},[_vm._v(_vm._s(_vm.$t('event_modal_create')))])],1),(_vm.events.length)?_c('b-row',[_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.events,\"fields\":_vm.fields},scopedSlots:_vm._u([{key:\"cell(status)\",fn:function({item}){return [_c('status-label',{attrs:{\"status\":item.status}})]}},{key:\"cell(starts_at)\",fn:function({item}){return [(item.starts_at)?_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.starts_at))+\" \")]):_vm._e()]}},{key:\"cell(ends_at)\",fn:function({item}){return [(item.starts_at)?_c('span',[_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.ends_at))+\" \")]):_vm._e()]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('event_details_view'))?_c('b-button',{staticClass:\"mr-2 btnEvent\",attrs:{\"variant\":\"row-edit\",\"to\":{name:'ManageEvent', params:{id: item.id}}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(_vm.$can('event_duplicate'))?_c('b-button',{staticClass:\"btnEventDuplicate\",attrs:{\"variant\":\"row-edit\"},on:{\"click\":function($event){return _vm.showDuplicateModal(item)}}},[_vm._v(_vm._s(_vm.$t('duplicate')))]):_vm._e(),_c('span',{staticClass:\"btnPosUrlContainer ml-2\",attrs:{\"id\":'popoverTarget' + item.id}},[_c('b-icon',{staticClass:\"btnPosUrl\",attrs:{\"font-scale\":\"1\",\"icon\":\"link45deg\"}})],1),_c('b-popover',{ref:'popoverTarget' + item.id,attrs:{\"custom-class\":\"posPopover\",\"target\":'popoverTarget' + item.id,\"triggers\":\"hover\",\"placement\":\"bottom\",\"title\":_vm.$t('event_duplicate_point_of_sales')}},_vm._l((item.display_points_of_sale),function(pos){return _c('div',{key:'pos-' + pos.id,staticClass:\"popoverPosRow\",on:{\"click\":function($event){_vm.copyToClipboard('https://'+ item.company.domain + '/p/' + pos.url);_vm.closePopover('popoverTarget' + item.id)}}},[_vm._v(\" https://\"+_vm._s(item.company.domain)+\"/p/\"+_vm._s(pos.url)+\" \")])}),0),(_vm.$can('event_delete'))?_c('b-icon',{staticClass:\"ml-3 text-secondary btnEventDelete\",class:{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count},attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,1595622751)})],1)],1):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),(_vm.showCopiedSpan)?_c('span',{staticClass:\"copiedToClipboard\"},[_vm._v(\"Copied to clipboard!\")]):_vm._e(),_c('b-modal',{attrs:{\"title\":_vm.$t('event_duplicate_event'),\"id\":\"duplicate-event\",\"size\":\"large\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":!_vm.event.name || _vm.event.name === _vm.originalEventName || _vm.loading,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.duplicateEvent()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('duplicate'))+\" \")],1)]},proxy:true}])},[_c('div',[_c('b-row',[_c('b-col',[_c('date-time-picker',{attrs:{\"min\":new Date(),\"label\":_vm.$t('event_starts_at')},on:{\"input\":_vm.startDateUpdated},model:{value:(_vm.event.starts_at),callback:function ($$v) {_vm.$set(_vm.event, \"starts_at\", $$v)},expression:\"event.starts_at\"}}),_c('date-time-picker',{attrs:{\"min\":_vm.event.starts_at ? _vm.event.starts_at : new Date(),\"label\":_vm.$t('event_ends_at')},model:{value:(_vm.event.ends_at),callback:function ($$v) {_vm.$set(_vm.event, \"ends_at\", $$v)},expression:\"event.ends_at\"}})],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_new_name'),\"description\":_vm.event.name === _vm.originalEventName ? _vm.$t('event_name_has_to_be_changed') : ''}},[_c('b-form-input',{model:{value:(_vm.event.name),callback:function ($$v) {_vm.$set(_vm.event, \"name\", $$v)},expression:\"event.name\"}})],1)],1)],1),_c('b-row',{staticClass:\"my-3\"},[_c('b-col',[_vm._v(_vm._s(_vm.$t('event_duplicate_choose_products_to_copy')))]),_c('b-col',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"warning\",\"size\":\"sm\"},on:{\"click\":function($event){_vm.allProductsSelected = !_vm.allProductsSelected; _vm.changeSelectValue(_vm.allProductsSelected)}}},[(_vm.allProductsSelected)?_c('span',{staticClass:\"text-white\"},[_vm._v(_vm._s(_vm.$t('unselect_all')))]):_c('span',{staticClass:\"text-white\"},[_vm._v(_vm._s(_vm.$t('select_all')))])])],1)],1),_vm._l((_vm.event.groups),function(group){return _c('div',{key:group.id,staticClass:\"mb-2\"},[(group.name !== 'event_default_group')?_c('span',{staticClass:\"group-title d-block p-2 mb-2\"},[_vm._v(_vm._s(group.name))]):_vm._e(),_vm._l((group.products),function(product){return _c('div',{key:product.id,staticClass:\"p-2\"},[_c('b-form-checkbox',{model:{value:(product.selected),callback:function ($$v) {_vm.$set(product, \"selected\", $$v)},expression:\"product.selected\"}},[_vm._v(_vm._s(product.name))]),(product.allowed_events && product.allowed_events.length)?_c('span',{staticClass:\"text-danger small\"},[_vm._v(_vm._s(_vm.$t('event_duplicate_product_allowed_events_note')))]):_vm._e()],1)})],2)}),(_vm.event.scan_operation && _vm.event.scan_operation.sessions_count > 1)?_c('span',[_vm._v(_vm._s(_vm.$t('event_scan_operation_session_date_to_change')))]):_vm._e(),_c('b-row',{staticClass:\"mt-3 mb-2\"},[_c('b-col',[_c('h4',[_vm._v(_vm._s(_vm.$t('event_duplicate_point_of_sales')))])])],1),_c('b-row',[_c('b-col',_vm._l((_vm.event.pos),function(pos){return _c('b-form-group',{key:pos.id,attrs:{\"label\":pos.name}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',[_vm._v(_vm._s('https://' + pos.company.domain + '/p/'))])]},proxy:true}],null,true)},[_c('b-form-input',{attrs:{\"type\":\"url\"},model:{value:(pos.url),callback:function ($$v) {_vm.$set(pos, \"url\", $$v)},expression:\"pos.url\"}})],1)],1)}),1)],1)],2)]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-event\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteEvent}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span',{staticStyle:{\"font-size\":\"18px\"}},[(_vm.status === 'test')?_c('b-badge',{attrs:{\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'draft')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'live')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'box-office')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'sold-out')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'archived')?_c('b-badge',[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'online')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'api')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'paid')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'pending')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'batch-ticket')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e(),(_vm.status === 'payment-link')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.status))]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span style=\"font-size: 18px\">\n <b-badge v-if=\"status === 'test'\" variant=\"secondary\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'draft'\" variant=\"warning\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'live'\" variant=\"success\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'box-office'\" variant=\"success\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'sold-out'\" variant=\"warning\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'archived'\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'online'\" variant=\"success\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'api'\" variant=\"success\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'paid'\" variant=\"success\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'pending'\" variant=\"warning\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'batch-ticket'\" variant=\"warning\">{{ status }}</b-badge>\n <b-badge v-if=\"status === 'payment-link'\" variant=\"warning\">{{ status }}</b-badge>\n </span>\n</template>\n<script>\nexport default {\n props: ['status']\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusLabel.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StatusLabel.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./StatusLabel.vue?vue&type=template&id=1a7de0e6\"\nimport script from \"./StatusLabel.vue?vue&type=script&lang=js\"\nexport * from \"./StatusLabel.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div>\n\n <b-row>\n <b-col>\n <label class=\"d-inline-block\">{{ $t('event_show_archived') }}</label>\n <b-form-checkbox class=\"d-inline-block ml-3\" switch v-model=\"show_archived\" :value=\"true\" :unchecked-value=\"false\" @change=\"getEvents()\"></b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group v-if=\"$can('event_create')\" class=\"text-right container-distance\">\n <b-button variant=\"new\" v-b-modal.add-event>{{ $t('new') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-modal id=\"add-event\" :title=\"$t('event_new_modal_title')\" size=\"lg\" hide-footer>\n <b-form-group :label=\"$t('event_name')\">\n <b-form-input v-model=\"event.name\" :state=\"event.name && (event.name.length < 4 || event.name.length > 64) ? false : null\" :placeholder=\"$t('event_name') + '*'\" aria-describedby=\"event-input-feedback\"></b-form-input>\n <b-form-invalid-feedback class=\"mt-2\" id=\"input-live-feedback\">\n {{ $t('event_name_64_char') }}\n </b-form-invalid-feedback>\n </b-form-group>\n <b-form-group :label=\"$t('date_and_time')\">\n <b-row>\n <b-col class=\"col-md-6 col-12\">\n <date-time-picker v-model=\"event.starts_at\" :date-placeholder=\"$t('start_date')\" time-placeholder=\"00:00\"/>\n </b-col>\n <b-col class=\"col-md-6 col-12\">\n <date-time-picker v-model=\"event.ends_at\" :date-placeholder=\"$t('end_date')\" time-placeholder=\"00:00\"/>\n </b-col>\n </b-row>\n <span v-if=\"event.starts_at && event.ends_at && event.starts_at >= event.ends_at\" class=\"d-block text-danger\">{{ $t('end_before_start_date') }}</span>\n </b-form-group>\n <p class=\"mt-3\">{{ $t('event_create_hint') }}</p>\n <b-button class=\"mt-3 text-white\" variant=\"primary\" :disabled=\"!event.name || !event.starts_at || !event.ends_at || (event.name && (event.name.length < 4 || event.name.length > 64))\" @click=\"createEvent()\">{{ $t('event_modal_create') }}</b-button>\n </b-modal>\n\n <b-row v-if=\"events.length\">\n <b-col class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"events\" :fields=\"fields\">\n <template v-slot:cell(status)=\"{item}\">\n <status-label :status=\"item.status\"></status-label>\n </template>\n <template v-slot:cell(starts_at)=\"{item}\">\n <span v-if=\"item.starts_at\">\n {{ item.starts_at | date_time}}\n </span>\n </template>\n <template v-slot:cell(ends_at)=\"{item}\">\n <span v-if=\"item.starts_at\">\n {{ item.ends_at | date_time}}\n </span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('event_details_view')\" class=\"mr-2 btnEvent\" variant=\"row-edit\" :to=\"{name:'ManageEvent', params:{id: item.id}}\">{{ $t('manage') }}</b-button>\n <b-button v-if=\"$can('event_duplicate')\" class=\"btnEventDuplicate\" variant=\"row-edit\" @click=\"showDuplicateModal(item)\">{{ $t('duplicate') }}</b-button>\n <span class=\"btnPosUrlContainer ml-2\" :id=\"'popoverTarget' + item.id\">\n <b-icon class=\"btnPosUrl\" font-scale=\"1\" icon=\"link45deg\"></b-icon>\n </span>\n <b-popover custom-class=\"posPopover\" :ref=\"'popoverTarget' + item.id\" :target=\"'popoverTarget' + item.id\" triggers=\"hover\" placement=\"bottom\" :title=\"$t('event_duplicate_point_of_sales')\">\n <div class=\"popoverPosRow\" v-for=\"pos in item.display_points_of_sale\" :key=\"'pos-' + pos.id\" @click=\"copyToClipboard('https://'+ item.company.domain + '/p/' + pos.url);closePopover('popoverTarget' + item.id)\">\n https://{{ item.company.domain }}/p/{{pos.url}}\n </div>\n </b-popover>\n <b-icon v-if=\"$can('event_delete')\" @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\" class=\"ml-3 text-secondary btnEventDelete\" :class=\"{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count}\"></b-icon>\n </template>\n </b-table>\n </b-col>\n </b-row>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <span v-if=\"showCopiedSpan\" class=\"copiedToClipboard\">Copied to clipboard!</span>\n\n <b-modal :title=\"$t('event_duplicate_event')\" id=\"duplicate-event\" size=\"large\">\n <div>\n <b-row>\n <b-col>\n <date-time-picker v-model=\"event.starts_at\" :min=\"new Date()\" :label=\"$t('event_starts_at')\" @input=\"startDateUpdated\"></date-time-picker>\n\n <date-time-picker v-model=\"event.ends_at\" :min=\"event.starts_at ? event.starts_at : new Date()\" :label=\"$t('event_ends_at')\"></date-time-picker>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('event_new_name')\" :description=\"event.name === originalEventName ? $t('event_name_has_to_be_changed') : ''\">\n <b-form-input v-model=\"event.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"my-3\">\n <b-col>{{ $t('event_duplicate_choose_products_to_copy') }}</b-col>\n <b-col class=\"text-right\">\n <b-button @click=\"allProductsSelected = !allProductsSelected; changeSelectValue(allProductsSelected)\" variant=\"warning\" size=\"sm\">\n <span v-if=\"allProductsSelected\" class=\"text-white\">{{ $t('unselect_all') }}</span>\n <span v-else class=\"text-white\">{{ $t('select_all') }}</span>\n </b-button>\n </b-col>\n </b-row>\n <div v-for=\"group in event.groups\" :key=\"group.id\" class=\"mb-2\">\n <span v-if=\"group.name !== 'event_default_group'\" class=\"group-title d-block p-2 mb-2\">{{ group.name }}</span>\n <div class=\"p-2\" v-for=\"product in group.products\" :key=\"product.id\">\n <b-form-checkbox v-model=\"product.selected\">{{ product.name }}</b-form-checkbox>\n <span v-if=\"product.allowed_events && product.allowed_events.length\" class=\"text-danger small\">{{ $t('event_duplicate_product_allowed_events_note') }}</span>\n </div>\n </div>\n <span v-if=\"event.scan_operation && event.scan_operation.sessions_count > 1\">{{ $t('event_scan_operation_session_date_to_change') }}</span>\n <b-row class=\"mt-3 mb-2\">\n <b-col><h4>{{ $t('event_duplicate_point_of_sales') }}</h4></b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group v-for=\"pos in event.pos\" :key=\"pos.id\" :label=\"pos.name\">\n <b-input-group>\n <template #prepend>\n <b-input-group-text>{{ 'https://' + pos.company.domain + '/p/' }}</b-input-group-text>\n </template>\n <b-form-input type=\"url\" v-model=\"pos.url\"></b-form-input>\n </b-input-group>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n\n <template #modal-footer>\n <b-button :disabled=\"!event.name || event.name === originalEventName || loading\" variant=\"primary\" @click=\"duplicateEvent()\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('duplicate') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-event\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteEvent\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport StatusLabel from \"@/components/StatusLabel\";\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport moment from \"moment\";\nimport axios from \"axios\";\n\nexport default {\n components: {\n StatusLabel,\n DateTimePicker\n },\n name: 'Events',\n data() {\n return {\n event: {\n name: null,\n starts_at: '',\n ends_at: '',\n },\n originalEventName: null,\n originalStartDate: null,\n events: [],\n show_archived: false,\n allProductsSelected: true,\n loading: false,\n showCopiedSpan: false,\n fields: [\n {key: 'status', label: this.$t('event_status')},\n {key: 'name', label: this.$t('event_name')},\n {key: 'starts_at', label: this.$t('event_starts_at')},\n {key: 'ends_at', label: this.$t('event_ends_at')},\n {key: 'actions', label: this.$t('order_actions')},\n ]\n }\n },\n created() {\n document.title = this.$t('backend_title_events_overview')\n if(this.$store.state.user) {\n if(!this.$can('event_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getEvents();\n },\n methods: {\n startDateUpdated() {\n let orgStartDate = moment(this.originalStartDate).format('YYYY-MM-DD')\n let startDate = moment(this.event.starts_at).format('YYYY-MM-DD');\n this.event.name = this.originalEventName.replace(' ' + orgStartDate, '') + \" \" + startDate;\n let index = 1;\n this.event.pos.forEach((pos) => {\n pos.url = startDate + \"-\" + this.sanitizeUrlString(this.originalEventName.replace(' ' + orgStartDate, '')) + (index > 1 ? `-${index}` : '');\n index++;\n });\n },\n getEvents() {\n api.event().all(this.show_archived).then(events => {\n this.events = events\n })\n },\n createEvent() {\n this.adding = true\n api.event().create(this.event).then((event) => {\n this.$bvModal.hide('add-event');\n if(this.$can('event_details_view') || this.$can('event_details_edit')) {\n this.$router.push({\n name: 'EventProducts',\n params: {\n id: event.id\n }\n })\n }\n else {\n this.event = {\n name: null,\n starts_at: '',\n ends_at: '',\n };\n this.getEvents();\n this.$store.commit('success', this.$t('event_created'));\n }\n })\n },\n copyToClipboard(textToCopy){\n const el = document.createElement('textarea');\n el.value = textToCopy;\n el.setAttribute('readonly', '');\n el.style.position = 'absolute';\n el.style.left = '-9999px';\n document.body.appendChild(el);\n el.select();\n document.execCommand('copy');\n document.body.removeChild(el);\n\n this.showCopiedSpan = true\n setTimeout(function(){\n this.showCopiedSpan = false\n }.bind(this), 2000)\n },\n closePopover(el){\n this.$refs[el].$emit('close')\n },\n showDuplicateModal(event) {\n this.event = { ...event };\n if (!this.event.starts_at) {\n this.event.starts_at = new Date();\n }\n if (!this.event.ends_at) {\n this.event.ends_at = new Date();\n }\n this.originalEventName = event.name;\n this.originalStartDate = event.starts_at;\n\n const productGroups = api.product().getGroups(event.id);\n const eventPos = api.pos().get(event.id);\n\n axios.all([productGroups, eventPos]).then(axios.spread((...responses) => {\n const productResponse = responses[0]\n const posResponse = responses[1]\n\n this.event.groups = productResponse.map(group => {\n group.products = group.products.map(product => {\n return Object.assign(product, {selected: true})\n });\n return group;\n });\n\n this.event.pos = posResponse.filter(pos => pos.status !== 'box-office');\n\n this.$bvModal.show('duplicate-event');\n }))\n },\n duplicateEvent() {\n // Sanitize URL of poses once more\n if(this.event.pos){\n this.event.pos.map(pos => {\n pos.url = this.sanitizeUrlString(pos.url)\n return pos\n })\n }\n const selectedProducts = [];\n this.event.groups.forEach(group => {\n group.products.forEach(product => {\n if(product.selected) {\n selectedProducts.push(product.id);\n }\n })\n })\n this.loading = true;\n\n api.event().duplicate(this.event.id, {\n products: selectedProducts,\n point_of_sale: this.event.pos,\n name: this.event.name,\n starts_at: this.event.starts_at,\n ends_at: this.event.ends_at,\n }).then((event) => {\n this.loading = false;\n if(this.$can('event_details_view') || this.$can('event_details_edit')) {\n this.$router.push({\n name: 'ManageEvent',\n params: {\n id: event.id\n }\n })\n }\n else {\n this.event = {};\n this.getEvents();\n this.$store.commit('success', this.$t('event_duplicated'));\n }\n }).catch(() => {\n this.loading = false;\n })\n },\n changeSelectValue(value) {\n for(let group of this.event.groups) {\n for(let product of group.products) {\n product.selected = value;\n }\n }\n },\n sanitizeUrlString(title) {\n let slug = \"\";\n // Change to lower case\n let titleLower = title.toLowerCase();\n // Letter \"e\"\n slug = titleLower.replace(/e|é|è|ẽ|ẻ|ẹ|ê|ế|á»|á»…|ể|ệ/gi, 'e');\n // Letter \"a\"\n slug = slug.replace(/a|á|à |ã|ả|ạ|ă|ắ|ằ|ẵ|ẳ|ặ|â|ấ|ầ|ẫ|ẩ|áº/gi, 'a');\n // Letter \"o\"\n slug = slug.replace(/o|ó|ò|õ|á»|á»|ô|ố|ồ|á»—|ổ|á»™|Æ¡|á»›|á»|ỡ|ở|ợ/gi, 'o');\n // Letter \"u\"\n slug = slug.replace(/u|ú|ù|Å©|ủ|ụ|Æ°|ứ|ừ|ữ|á»|á»±/gi, 'u');\n // Letter \"d\"\n slug = slug.replace(/Ä‘/gi, 'd');\n // Trim the last whitespace\n slug = slug.replace(/\\s*$/g, '');\n // Change whitespace to \"-\"\n slug = slug.replace(/\\s+/g, '-');\n // Change space to -\n slug = slug.replace('/ /g', '-');\n // Remove strange characters\n slug = slug.replace('@', '');\n slug = slug.replace('!', '');\n slug = slug.replace('$', '');\n slug = slug.replace('^', '');\n slug = slug.replace('*', '');\n slug = slug.replace('(', '');\n slug = slug.replace(')', '');\n\n return slug;\n },\n deleteEvent() {\n this.loading = true;\n api.event().delete(this.event.id).then(() => {\n this.$store.commit('success', 'event_deleted');\n this.$bvModal.hide('delete-event')\n this.event = {};\n this.getEvents();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n\n showDeleteModal(event) {\n if(event.orders_count) {\n return;\n }\n this.event = event;\n this.$bvModal.show('delete-event')\n },\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('event_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n {key: 'status', label: this.$t('event_status')},\n {key: 'name', label: this.$t('event_name')},\n {key: 'starts_at', label: this.$t('event_starts_at')},\n {key: 'ends_at', label: this.$t('event_ends_at')},\n {key: 'actions', label: this.$t('order_actions')},\n ];\n }\n }\n }\n}\n</script>\n\n<style>\n.posPopover.b-popover .popover-header{\n display:block !important;\n font-size:15px;\n padding:6px 7px\n}\n.posPopover .popover-body{\n padding:0px !important\n}\n.text-primary-new {\n color: #193E58 !important;\n}\n\n.no-products-hint {\n max-width: 400px;\n margin: auto;\n}\n</style>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.cursor_pointer {\n cursor: pointer;\n}\n.disabled_danger {\n opacity: .4;\n}\n.group-title {\n background-color: #EEEEEE;\n color: #676666;\n}\ntable.b-table tbody tr:hover .btn.btn-row-edit{\n border-color: #f5f5f5 !important;\n}\n.btnEvent{\n background-color: transparent!important;\n color: #808090!important;\n}\n.btnEvent:hover{\n background-color: #F0B52D!important;\n border-color: #F0B52D!important;\n color:white!important;\n}\n.btnEventDuplicate{\n background-color: transparent!important;\n color: #808090!important;\n}\n.btnEventDuplicate:hover{\n background-color: #F0B52D!important;\n border-color: #F0B52D!important;\n color:white!important;\n}\n.btnPosUrlContainer{\n width:33px;\n height:33px;\n border:2px solid #f5f5f5;\n border-radius:6px;\n display:inline-block;\n text-align: center;\n vertical-align: middle;\n}\n.btnPosUrl{\n font-size:25px;\n margin-top:3px\n}\n.popoverPosRow{\n cursor:pointer;\n padding:5px 7px;\n border-bottom:2px solid #f5f5f5\n}\n.popoverPosRow:last-of-type{\n border-bottom:0px\n}\n.popoverPosRow:hover{\n background-color:#f5f5f5\n}\n.copiedToClipboard{\n position:fixed;\n left:50%;\n bottom:15%;\n border-radius:40px;\n padding:5px 10px;\n background-color:#193e58;\n color:#FFF;\n font-size:10pt\n}\n.btnEventDelete {\n vertical-align:middle;\n}\n.invalid-feedback {\n font-size: 16px!important;\n}\n.small {\n font-size: 12px;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Events.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Events.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Events.vue?vue&type=template&id=337b6b66&scoped=true\"\nimport script from \"./Events.vue?vue&type=script&lang=js\"\nexport * from \"./Events.vue?vue&type=script&lang=js\"\nimport style0 from \"./Events.vue?vue&type=style&index=0&id=337b6b66&prod&lang=css\"\nimport style1 from \"./Events.vue?vue&type=style&index=1&id=337b6b66&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"337b6b66\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',[_c('div',[(this.event && this.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),(_vm.event)?_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\"},[_c('div',{staticClass:\"margB content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('event_manage_title', _vm.event)))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"8\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_name')}},[_c('b-form-input',{attrs:{\"state\":_vm.event.name && _vm.event.name.length > 64 ? false : null,\"aria-describedby\":\"event-input-feedback\",\"disabled\":_vm.isDisabled},model:{value:(_vm.event.name),callback:function ($$v) {_vm.$set(_vm.event, \"name\", $$v)},expression:\"event.name\"}}),_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-live-feedback\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_name_64_char'))+\" \")])],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_event_type')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.eventTypes,\"disabled\":_vm.isDisabled},model:{value:(_vm.event.event_type_id),callback:function ($$v) {_vm.$set(_vm.event, \"event_type_id\", $$v)},expression:\"event.event_type_id\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"xl\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_status')}},[_c('b-select',{attrs:{\"options\":['draft', 'live', 'sold-out', 'archived'],\"disabled\":_vm.isDisabled},model:{value:(_vm.event.status),callback:function ($$v) {_vm.$set(_vm.event, \"status\", $$v)},expression:\"event.status\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"xl\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_ticket_template')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.templates,\"disabled\":_vm.isDisabled},model:{value:(_vm.event.ticket_template_id),callback:function ($$v) {_vm.$set(_vm.event, \"ticket_template_id\", $$v)},expression:\"event.ticket_template_id\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"xl\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_minimum_age')}},[_c('b-form-input',{attrs:{\"disabled\":_vm.isDisabled},model:{value:(_vm.event.minimum_age),callback:function ($$v) {_vm.$set(_vm.event, \"minimum_age\", $$v)},expression:\"event.minimum_age\"}})],1),(_vm.event.minimum_age && _vm.event.minimum_age > 0 && _vm.$can('event_show_minimum_age_checkbox'))?_c('b-form-group',[_c('b-checkbox',{attrs:{\"disabled\":_vm.isDisabled},model:{value:(_vm.event.age_confirmation_checkbox),callback:function ($$v) {_vm.$set(_vm.event, \"age_confirmation_checkbox\", $$v)},expression:\"event.age_confirmation_checkbox\"}},[_vm._v(_vm._s(_vm.$t('event_age_confirmation_form', {age: _vm.event.minimum_age})))])],1):_vm._e()],1)],1),_c('b-row',[_c('b-col',{staticClass:\"mb-1 mb-md-0\",attrs:{\"cols\":\"12\"}},[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":_vm.isDisabled},model:{value:(_vm.event.continuous),callback:function ($$v) {_vm.$set(_vm.event, \"continuous\", $$v)},expression:\"event.continuous\"}},[_vm._v(_vm._s(_vm.$t('event_continuous')))])],1)],1)],1),(!_vm.event.continuous)?[_c('date-time-picker',{attrs:{\"label\":_vm.$t('event_starts_at'),\"disabled\":_vm.isDisabled},model:{value:(_vm.event.starts_at),callback:function ($$v) {_vm.$set(_vm.event, \"starts_at\", $$v)},expression:\"event.starts_at\"}}),_c('date-time-picker',{attrs:{\"label\":_vm.$t('event_ends_at'),\"disabled\":_vm.isDisabled},model:{value:(_vm.event.ends_at),callback:function ($$v) {_vm.$set(_vm.event, \"ends_at\", $$v)},expression:\"event.ends_at\"}})]:_vm._e(),_c('b-form-group',[_c('label',{staticClass:\"col-form-label pt-0 mb-2\"},[_vm._v(_vm._s(_vm.$t('event_description')))]),_vm._v(\" \"),_c('b-button',{attrs:{\"size\":\"sm\"},on:{\"click\":function($event){_vm.editingDescription = true}}},[_c('b-icon',{attrs:{\"icon\":\"pencil-square\"}}),_vm._v(\" \"+_vm._s(_vm.$t('edit')))],1),(!_vm.editingDescription)?_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.event.description)}}):_vm._e(),(_vm.editingDescription)?_c('editor',{attrs:{\"api-key\":\"yhb5vrai2v53htowrumua3m9xlqk16dkgrnb937iuobfwstr\",\"init\":_vm.editorData,\"disabled\":_vm.isDisabled},model:{value:(_vm.event.description),callback:function ($$v) {_vm.$set(_vm.event, \"description\", $$v)},expression:\"event.description\"}}):_vm._e()],1),_c('b-row',[_c('b-col',[(_vm.event.description)?_c('b-form-group',[_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('event_description_location')))]),_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"disabled\":_vm.isDisabled},model:{value:(_vm.event.description_location),callback:function ($$v) {_vm.$set(_vm.event, \"description_location\", $$v)},expression:\"event.description_location\"}},_vm._l((_vm.description_location_options),function(option){return _c('option',{key:option.value,domProps:{\"value\":option.value}},[_vm._v(\" \"+_vm._s(option.text)+\" \")])}),0)],1):_vm._e()],1),_c('b-col',[(_vm.event.description && _vm.event.description.length)?_c('b-form-group',[_c('b-tooltip',{attrs:{\"target\":\"event-descipriton-show-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"event_manage_event_description_show_tooltip\"))+\" \")]),_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('event_description_open_status')))]),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"event-descipriton-show-tooltip\",\"icon\":\"info-circle-fill\"}}),_c('b-select',{attrs:{\"disabled\":_vm.isDisabled},model:{value:(_vm.event.description_open_status),callback:function ($$v) {_vm.$set(_vm.event, \"description_open_status\", $$v)},expression:\"event.description_open_status\"}},[_c('option',{attrs:{\"value\":\"closed\"}},[_vm._v(_vm._s(_vm.$t('no')))]),_c('option',{attrs:{\"value\":\"open\"}},[_vm._v(_vm._s(_vm.$t('yes')))])])],1):_vm._e()],1)],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[(_vm.$can('add_location_event_details'))?_c('b-form-group',{attrs:{\"label\":_vm.$t('event_location')}},[_c('v-select',{ref:\"venuesdropdownlist\",attrs:{\"label\":\"name\",\"id\":\"venues-dropdownlist\",\"options\":_vm.venuesData,\"disabled\":_vm.isDisabled},on:{\"input\":_vm.handleVenuesOptionChange},model:{value:(_vm.venueObj),callback:function ($$v) {_vm.venueObj=$$v},expression:\"venueObj\"}},[(_vm.$can('venue_create'))?_c('li',{attrs:{\"slot\":\"list-footer\"},slot:\"list-footer\"},[_c('b-button',{staticClass:\"new-venue-button\",class:_vm.venuesData.length ? 'text-left':'text-center',on:{\"click\":_vm.handleVenuesOptionChange}},[_vm._v(_vm._s(_vm.$t('new_venue')))])],1):_vm._e()])],1):_vm._e()],1)],1),_c('b-row',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showNewVenuePanel),expression:\"showNewVenuePanel\"}]},[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_name')}},[_c('b-form-input',{model:{value:(_vm.venue.name),callback:function ($$v) {_vm.$set(_vm.venue, \"name\", $$v)},expression:\"venue.name\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_address')}},[_c('b-form-input',{model:{value:(_vm.venue.address),callback:function ($$v) {_vm.$set(_vm.venue, \"address\", $$v)},expression:\"venue.address\"}})],1)],1)],1),_c('b-row',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showNewVenuePanel),expression:\"showNewVenuePanel\"}]},[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_zip')}},[_c('b-form-input',{model:{value:(_vm.venue.zip),callback:function ($$v) {_vm.$set(_vm.venue, \"zip\", $$v)},expression:\"venue.zip\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_city')}},[_c('b-form-input',{model:{value:(_vm.venue.city),callback:function ($$v) {_vm.$set(_vm.venue, \"city\", $$v)},expression:\"venue.city\"}})],1)],1)],1),_c('b-row',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showNewVenuePanel),expression:\"showNewVenuePanel\"}]},[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_country')}},[_c('CountrySelection',{model:{value:(_vm.venue.country_code),callback:function ($$v) {_vm.$set(_vm.venue, \"country_code\", $$v)},expression:\"venue.country_code\"}})],1)],1),_c('b-col')],1),_c('b-row',[_c('b-col',[_c('b-tooltip',{attrs:{\"target\":\"is-multi-day-ticket-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"manage_event_image_tooltip\"))+\" \")]),_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('manage_event_image')))]),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"is-multi-day-ticket-tooltip\",\"icon\":\"info-circle-fill\"}}),_c('br'),(_vm.event.image)?_c('b-img',{staticClass:\"event-image\",attrs:{\"fluid\":\"\",\"src\":_vm.event.image_url}}):_vm._e(),_c('br'),_c('br'),_c('b-form-group',[_c('input',{ref:\"image\",attrs:{\"type\":\"file\",\"id\":\"image\",\"accept\":\"image/*\",\"disabled\":_vm.isDisabled},on:{\"change\":function($event){return _vm.onImageChange()}}})]),(_vm.event.image)?_c('b-form-group',[_c('b-checkbox',{attrs:{\"disabled\":_vm.isDisabled},model:{value:(_vm.event.show_image_in_pos),callback:function ($$v) {_vm.$set(_vm.event, \"show_image_in_pos\", $$v)},expression:\"event.show_image_in_pos\"}},[_vm._v(_vm._s(_vm.$t('event_show_image_in_pos')))])],1):_vm._e(),(_vm.event.image && !_vm.isDisabled)?_c('a',{staticClass:\"d-block font-14\",attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.removeProductImage}},[_vm._v(\" \"+_vm._s(_vm.$t('manage_event_remove_image'))+\" \")]):_vm._e()],1),_c('b-col',[_c('b-tooltip',{attrs:{\"target\":\"pos-banner-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"event_banner_tooltip\"))+\" \")]),_c('label',{staticClass:\"col-form-label\"},[_vm._v(_vm._s(_vm.$t('event_banner_image')))]),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"pos-banner-tooltip\",\"icon\":\"info-circle-fill\"}}),_c('br'),(_vm.event.banner)?_c('b-img',{staticClass:\"event-image\",attrs:{\"fluid\":\"\",\"src\":_vm.event.banner_url}}):_vm._e(),_c('br'),_c('br'),_c('b-form-group',[_c('input',{ref:\"banner\",attrs:{\"type\":\"file\",\"id\":\"banner\",\"accept\":\"image/*\",\"disabled\":_vm.isDisabled},on:{\"change\":function($event){return _vm.onBannerChange()}}})]),(_vm.bannerError)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.bannerError)))]):_vm._e(),(_vm.event.banner && !_vm.isDisabled)?_c('a',{staticClass:\"d-block font-14\",attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.removeBanner}},[_vm._v(\" \"+_vm._s(_vm.$t('manage_event_remove_banner'))+\" \")]):_vm._e()],1)],1)],2)]),(_vm.saving)?_c('b-spinner',{staticClass:\"text-right\",attrs:{\"show\":\"\",\"variant\":\"primary\"}}):_c('b-form-group',{staticClass:\"text-right\"},[(_vm.$can('event_details_edit'))?_c('b-button',{attrs:{\"variant\":\"save\",\"disabled\":_vm.event.isArchived || (_vm.event.name && _vm.event.name.length > 64)},on:{\"click\":function($event){return _vm.saveEvent()}}},[_vm._v(_vm._s(_vm.$t('save')))]):_vm._e()],1)],1),_c('div',{staticClass:\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-1 mb-lg-1 marginTop0\"},[(_vm.event && _vm.event.name)?_c('event-nav',{attrs:{\"event\":_vm.event}}):_vm._e()],1)]):_c('b-row',[_c('b-spinner')],1)],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',{staticClass:\"content-main-container p-0\",attrs:{\"id\":\"event-nav-container\"}},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('event_nav_title')))]),(_vm.event)?_c('div',{staticClass:\"content-container\"},_vm._l((_vm.modules),function(mod,i){return _c('div',{key:mod.text},[_c('div',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:('accordion-' + i),expression:\"'accordion-' + i\"}],staticClass:\"module-row\"},[_vm._v(\" \"+_vm._s((i + 1))+\": \"+_vm._s(_vm.$t(mod.text))+\" \")]),_c('b-collapse',{staticClass:\"module-inner-container\",attrs:{\"visible\":\"\",\"id\":'accordion-' + i}},_vm._l((mod.inner_modules),function(sub_mods){return _c('b-nav-item',{key:sub_mods.routeName,attrs:{\"to\":{name: sub_mods.routeName, params: {id: _vm.$route.params.id}}}},[_c('div',{attrs:{\"completed\":sub_mods.completed,\"active\":_vm.$route.name === sub_mods.routeName}},[(sub_mods.completed)?_c('div',{staticClass:\"checkmark_container\"},[_c('div',{staticClass:\"checkmark_stem\"}),_c('div',{staticClass:\"checkmark_kick\"})]):_vm._e()]),_c('span',[_vm._v(_vm._s(_vm.$t(sub_mods.text)))])])}),1)],1)}),0):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"event-nav-container\" class=\"content-main-container p-0\" v-if=\"event\">\n <div class=\"title-container\" >{{ $t('event_nav_title') }}</div>\n <div class=\"content-container\" v-if=\"event\" >\n <div v-for=\"(mod, i) in modules\" :key=\"mod.text\">\n <div class=\"module-row\" v-b-toggle=\"'accordion-' + i\">\n {{ (i + 1) }}: {{ $t(mod.text) }}\n </div>\n <b-collapse visible class=\"module-inner-container\" :id=\"'accordion-' + i\">\n <b-nav-item v-for=\"sub_mods in mod.inner_modules\" :key=\"sub_mods.routeName\"\n :to=\"{name: sub_mods.routeName, params: {id: $route.params.id}}\">\n <div :completed=\"sub_mods.completed\" :active=\"$route.name === sub_mods.routeName\">\n <div v-if=\"sub_mods.completed\" class=\"checkmark_container\">\n <div class=\"checkmark_stem\"></div>\n <div class=\"checkmark_kick\"></div>\n </div>\n </div>\n <span>{{ $t(sub_mods.text) }}</span>\n </b-nav-item>\n </b-collapse>\n </div>\n </div>\n </div>\n</template>\n<script>\nexport default {\n props: ['event'],\n data(){\n return {\n hasProducts: false,\n hasTimeslots: false,\n hasCustomerInformation: true,\n hasPointsOfSale: false,\n modules: []\n }\n },\n created() {\n this.hasProducts = this.event.products_count > 0;\n this.hasTimeslots = this.event.timeslots_count > 0;\n this.hasPointsOfSale = this.event.points_of_sale_count > 0;\n this.initModules();\n },\n methods: {\n initModules() {\n this.modules = [];\n // Basic\n const event_module_name_basic = [];\n event_module_name_basic.push({routeName: 'ManageEvent', text: 'event_nav_manage', completed: this.event.status !== null});\n if(this.$can('event_products_view')) {\n event_module_name_basic.push({routeName: 'EventProducts', text: 'event_nav_products', completed: this.hasProducts})\n }\n if(this.$can('event_timeslot_view')) {\n event_module_name_basic.push({routeName: 'EventTimeslots', text: 'event_nav_timeslots', completed: this.hasTimeslots})\n }\n if(this.$can('event_customer_information_view')) {\n event_module_name_basic.push({routeName: 'EventCustomerInformation', text: 'event_nav_customer_information', completed: this.hasCustomerInformation})\n }\n this.modules.push({\n text: \"event_module_name_basic\",\n inner_modules: event_module_name_basic\n })\n\n // Sales\n if(this.$can('event_point_of_sale_view')) {\n this.modules.push({\n text: \"event_module_name_sales\",\n inner_modules: [\n {routeName: 'EventPointsOfSale', text: 'event_nav_pos', completed: this.hasPointsOfSale},\n ]\n });\n }\n\n // Marketing\n if(this.$can('event_marketing_view')) {\n this.modules.push({\n text: \"event_module_name_marketing\",\n inner_modules: [\n {routeName: 'EventMarketing', text: 'event_module_name_marketing'},\n ]\n });\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n this.initModules();\n }\n }\n }\n}\n</script>\n<style lang=\"scss\">\n.content-main-container#event-nav-container {\n\n div.content-container {\n padding: 0\n }\n\n .module-row {\n background-color: #193E58;\n border-top: 1px solid #F5F5F5;\n color: #FFF;\n padding: 6px 25px;\n font-size: 16px\n }\n\n .module-row:last-of-type {\n border-radius: 0 0 6px 6px\n }\n\n .module-inner-container {\n\n li.nav-item {\n list-style-type: none;\n\n a {\n font-size: 14px;\n color: #4D4D4D;\n display: flex;\n\n div {\n width: 25px;\n height: 25px;\n border-radius: 100px;\n border: 2px solid #EEEEEE\n }\n\n div[active=true] {\n border-color: #F0B52D;\n }\n\n div[completed=true] {\n background: #F0B52D;\n border-color:#F0B52D;\n position:relative\n }\n\n .checkmark_container{\n display:inline-block;\n -ms-transform: rotate(45deg); /* IE 9 */\n -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */\n transform: rotate(45deg);\n border:0px\n }\n\n .checkmark_stem {\n position: absolute;\n width:2px;\n height:10px;\n background-color:#fff;\n left:10px;\n top:5px;\n }\n\n .checkmark_kick {\n position: absolute;\n width:8px;\n height:2px;\n background-color:#fff;\n left:6px;\n top:14px;\n }\n\n span {\n align-self: center;\n padding-left: 15px\n }\n }\n }\n }\n\n}\n.content-main-container{\n margin-top: 4.5rem;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventNav.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventNav.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventNav.vue?vue&type=template&id=39fb51d1\"\nimport script from \"./EventNav.vue?vue&type=script&lang=js\"\nexport * from \"./EventNav.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventNav.vue?vue&type=style&index=0&id=39fb51d1&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-select',{attrs:{\"text-field\":\"label\",\"value-field\":\"value\",\"options\":_vm.countries},model:{value:(_vm.model),callback:function ($$v) {_vm.model=$$v},expression:\"model\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-select v-model=\"model\" text-field=\"label\" value-field=\"value\" :options=\"countries\"></b-select>\n</template>\n\n<script>\nimport countries from 'i18n-iso-countries'\n\nexport default {\n name: 'CountrySelection',\n props: {\n value: String\n },\n computed: {\n countries () {\n countries.registerLocale(require('i18n-iso-countries/langs/'+this.lang+'.json'))\n\n const list = countries.getNames(this.lang, { select: 'official' })\n return Object.keys(list).map((key) => ({ value: key, label: list[key] }))\n },\n model: {\n get() { return this.value },\n set(value) { this.$emit('input', value) }\n }\n },\n data () {\n return {\n lang: this.$store.state.language\n }\n }\n}\n</script>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CountrySelection.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CountrySelection.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CountrySelection.vue?vue&type=template&id=747defe0\"\nimport script from \"./CountrySelection.vue?vue&type=script&lang=js\"\nexport * from \"./CountrySelection.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div v-if=\"event\">\n <div >\n <b-alert v-if=\"this.event && this.event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n <div class=\"d-flex flex-wrap\" v-if=\"event\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\">\n <div class=\"margB content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('event_manage_title', event) }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col cols=\"12\" lg=\"8\">\n <b-form-group :label=\"$t('event_name')\">\n <b-form-input v-model=\"event.name\" :state=\"event.name && event.name.length > 64 ? false : null\" aria-describedby=\"event-input-feedback\" :disabled=\"isDisabled\"></b-form-input>\n <b-form-invalid-feedback id=\"input-live-feedback\">\n {{ $t('event_name_64_char') }}\n </b-form-invalid-feedback>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-group :label=\"$t('event_event_type')\">\n <b-select v-model=\"event.event_type_id\" text-field=\"name\" value-field=\"id\" :options=\"eventTypes\" :disabled=\"isDisabled\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"6\" xl=\"4\">\n <b-form-group :label=\"$t('event_status')\">\n <b-select v-model=\"event.status\" :options=\"['draft', 'live', 'sold-out', 'archived']\" :disabled=\"isDisabled\"></b-select>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\" xl=\"4\">\n <b-form-group :label=\"$t('event_ticket_template')\">\n <b-select v-model=\"event.ticket_template_id\" text-field=\"name\" value-field=\"id\" :options=\"templates\" :disabled=\"isDisabled\"></b-select>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\" xl=\"4\">\n <b-form-group :label=\"$t('event_minimum_age')\">\n <b-form-input v-model=\"event.minimum_age\" :disabled=\"isDisabled\"></b-form-input>\n </b-form-group>\n <b-form-group v-if=\"event.minimum_age && event.minimum_age > 0 && $can('event_show_minimum_age_checkbox')\">\n <b-checkbox v-model=\"event.age_confirmation_checkbox\" :disabled=\"isDisabled\">{{ $t('event_age_confirmation_form', {age: event.minimum_age}) }}</b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col class=\"mb-1 mb-md-0\" cols=\"12\">\n <b-form-group>\n <b-form-checkbox v-model=\"event.continuous\" :disabled=\"isDisabled\">{{ $t('event_continuous') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n\n <template v-if=\"!event.continuous\">\n <date-time-picker v-model=\"event.starts_at\" :label=\"$t('event_starts_at')\" :disabled=\"isDisabled\"></date-time-picker>\n <date-time-picker v-model=\"event.ends_at\" :label=\"$t('event_ends_at')\" :disabled=\"isDisabled\"></date-time-picker>\n </template>\n <b-form-group>\n <label class=\"col-form-label pt-0 mb-2\">{{ $t('event_description') }}</label> <b-button @click=\"editingDescription = true\" size=\"sm\"><b-icon icon=\"pencil-square\"/> {{ $t('edit') }}</b-button>\n <p v-if=\"!editingDescription\" v-html=\"event.description\"></p>\n <!-- <b-textarea v-model=\"event.description\" rows=\"6\"></b-textarea> -->\n <editor v-if=\"editingDescription\" v-model=\"event.description\" api-key='yhb5vrai2v53htowrumua3m9xlqk16dkgrnb937iuobfwstr' :init=\"editorData\" :disabled=\"isDisabled\"></editor>\n </b-form-group>\n\n <b-row>\n <b-col>\n <b-form-group v-if=\"event.description\">\n <label class=\"col-form-label\">{{ $t('event_description_location') }}</label>\n <b-select v-model=\"event.description_location\" text-field=\"name\" value-field=\"id\" :disabled=\"isDisabled\">\n <option\n v-for=\"option in description_location_options\"\n :value=\"option.value\"\n :key=\"option.value\">\n {{ option.text }}\n </option>\n </b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group v-if=\"event.description && event.description.length\">\n <b-tooltip target=\"event-descipriton-show-tooltip\" triggers=\"hover\">\n {{ $t(\"event_manage_event_description_show_tooltip\") }}\n </b-tooltip>\n <label class=\"col-form-label\">{{ $t('event_description_open_status') }}</label>\n <b-icon id=\"event-descipriton-show-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n <b-select v-model=\"event.description_open_status\" :disabled=\"isDisabled\">\n <option value=\"closed\">{{ $t('no')}}</option>\n <option value=\"open\">{{ $t('yes')}}</option>\n </b-select>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col sm=\"12\" md=\"6\">\n <b-form-group v-if=\"$can('add_location_event_details')\" :label=\"$t('event_location')\">\n <v-select ref=\"venuesdropdownlist\" v-model=\"venueObj\" label=\"name\" id=\"venues-dropdownlist\" :options=\"venuesData\" :disabled=\"isDisabled\" @input=\"handleVenuesOptionChange\">\n <li v-if=\"$can('venue_create')\" slot=\"list-footer\">\n <b-button class=\"new-venue-button\" :class=\"venuesData.length ? 'text-left':'text-center' \" @click=\"handleVenuesOptionChange\">{{ $t('new_venue') }}</b-button>\n </li>\n </v-select>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row v-show=\"showNewVenuePanel\">\n <b-col>\n <b-form-group :label=\"$t('venue_name')\">\n <b-form-input v-model=\"venue.name\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('venue_address')\">\n <b-form-input v-model=\"venue.address\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-show=\"showNewVenuePanel\">\n <b-col>\n <b-form-group :label=\"$t('venue_zip')\">\n <b-form-input v-model=\"venue.zip\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('venue_city')\">\n <b-form-input v-model=\"venue.city\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-show=\"showNewVenuePanel\">\n <b-col>\n <b-form-group :label=\"$t('venue_country')\">\n <CountrySelection v-model=\"venue.country_code\"></CountrySelection>\n </b-form-group>\n </b-col>\n <b-col></b-col>\n\n </b-row>\n\n <b-row>\n <b-col>\n <b-tooltip target=\"is-multi-day-ticket-tooltip\" triggers=\"hover\">\n {{ $t(\"manage_event_image_tooltip\") }}\n </b-tooltip>\n\n <label class=\"col-form-label\">{{ $t('manage_event_image') }}</label>\n <b-icon id=\"is-multi-day-ticket-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n <br/>\n <b-img class=\"event-image\" v-if=\"event.image\" fluid :src=\"event.image_url\"></b-img><br/><br/>\n <b-form-group>\n <input type=\"file\" id=\"image\" accept=\"image/*\" ref=\"image\" v-on:change=\"onImageChange()\" :disabled=\"isDisabled\"/>\n </b-form-group>\n <b-form-group v-if=\"event.image\">\n <b-checkbox v-model=\"event.show_image_in_pos\" :disabled=\"isDisabled\">{{ $t('event_show_image_in_pos') }}</b-checkbox>\n </b-form-group>\n <a v-if=\"event.image && !isDisabled\" @click=\"removeProductImage\" href=\"javascript:\" class=\"d-block font-14\">\n {{ $t('manage_event_remove_image') }}\n </a>\n </b-col>\n <b-col>\n <b-tooltip target=\"pos-banner-tooltip\" triggers=\"hover\">\n {{ $t(\"event_banner_tooltip\") }}\n </b-tooltip>\n\n <label class=\"col-form-label\">{{ $t('event_banner_image') }}</label>\n <b-icon id=\"pos-banner-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n <br/>\n <b-img class=\"event-image\" v-if=\"event.banner\" fluid :src=\"event.banner_url\"></b-img><br/><br/>\n <b-form-group>\n <input type=\"file\" id=\"banner\" accept=\"image/*\" ref=\"banner\" v-on:change=\"onBannerChange()\" :disabled=\"isDisabled\"/>\n </b-form-group>\n <span v-if=\"bannerError\" class=\"text-danger d-block\">{{ $t(bannerError) }}</span>\n <a v-if=\"event.banner && !isDisabled\" @click=\"removeBanner\" href=\"javascript:\" class=\"d-block font-14\">\n {{ $t('manage_event_remove_banner') }}\n </a>\n </b-col>\n </b-row>\n </div>\n </div>\n <b-spinner v-if=\"saving\" show variant=\"primary\" class=\"text-right\"></b-spinner>\n <b-form-group v-else class=\"text-right\">\n <b-button v-if=\"$can('event_details_edit')\" variant=\"save\" @click=\"saveEvent()\" :disabled=\"event.isArchived || (event.name && event.name.length > 64)\">{{ $t('save') }}</b-button>\n </b-form-group>\n </div>\n <div class=\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-1 mb-lg-1 marginTop0\">\n <event-nav v-if=\"event && event.name\" :event=\"event\"></event-nav>\n </div>\n </div>\n\n <b-row v-else>\n <b-spinner></b-spinner>\n </b-row>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport EventNav from \"@/components/EventNav\";\nimport moment from \"moment\";\nimport Editor from '@tinymce/tinymce-vue'\nimport axios from 'axios'\nimport CountrySelection from \"../components/CountrySelection.vue\";\n\nexport default {\n components: {\n CountrySelection,\n DateTimePicker,\n EventNav,\n Editor\n },\n name: 'ManageEvent',\n data() {\n return {\n saving: false,\n event: {},\n venue: {},\n venueObj: {\n id: null,\n name: null\n },\n templates: [],\n eventTypes: [],\n venuesData: [],\n showNewVenuePanel: false,\n editorData: {\n plugins: 'lists link image table code help wordcount',\n toolbar: 'bold italic underline | forecolor fontsizeselect | numlist bullist | undo redo | alignleft aligncenter alignright',\n menubar: false \n },\n description_location_options: [\n {value: 'top', text: this.$t('manage_event_desc_location_top')},\n {value: 'bottom', text: this.$t('manage_event_desc_location_bot')}\n ],\n bannerError: null,\n editingDescription: false,\n }\n },\n created() {\n document.title = this.$t('backend_title_events_manage')\n if(this.$store.state.user) {\n if(!this.$can('event_details_view') && !this.$can('event_details_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.refreshVenuesList()\n api.event().get(this.$route.params.id).then(event => {\n const description_open_status = event.is_description_open ? 'open' : 'closed'\n this.event = {...event,isArchived :( moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\", description_open_status}\n this.venueObj = this.venuesData.filter((item) => {\n return (item.id === this.event.venue_id)\n })\n })\n api.ticket().getTemplates().then((templates) => {\n this.templates = templates\n })\n api.event().getEventTypes().then((eventTypes) => {\n this.eventTypes = eventTypes\n })\n },\n methods: {\n handleVenuesOptionChange(val) {\n if (val.id === undefined) {\n this.showNewVenuePanel = true\n this.event.venue_id = 'new'\n this.venueObj = {\n id: null,\n name: null\n }\n const searchEl = this.$refs.venuesdropdownlist.searchEl\n if (searchEl) {\n searchEl.blur()\n }\n } else {\n this.showNewVenuePanel = false\n }\n },\n refreshVenuesList() {\n api.venues().getVenuesNames().then((venues) => {\n this.venuesData = venues\n })\n },\n saveEvent() {\n this.event.venue_id = (this.venueObj === null || this.venueObj.id === undefined || this.venueObj.id === null) ? this.event.venue_id : this.venueObj.id\n this.saving = true\n this.event.venue = this.venue\n api.event().save(this.event).then((event) => {\n const description_open_status = event.is_description_open ? 'open' : 'closed'\n this.event = {...event, description_open_status}\n this.showNewVenuePanel = false\n this.$store.commit('success', 'event_updated')\n\n if (this.venue.name !== undefined) {\n this.venuesData.push({\n id: this.event.venue_id,\n name: this.venue.name\n })\n }\n this.venue = {}\n this.venueObj = this.venuesData.filter((item) => {\n return (item.id === this.event.venue_id)\n })\n this.refreshVenuesList()\n }).finally(() => {\n this.saving = false\n })\n },\n onImageChange() {\n this.saving = true;\n api.cdn().signUpload(this.$refs['image'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['image'].files[0], {\n headers: {\n 'Content-Type': this.$refs['image'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n this.saving = false;\n }).then(() => {\n // upload done, create the video in the database\n this.event.image = response.path\n this.event.image_url = response.target_url\n this.saving = false;\n })\n })\n },\n onBannerChange() {\n this.bannerError = null;\n const img = document.createElement('img');\n\n const selectedImage = this.$refs['banner'].files[0];\n\n const objectURL = URL.createObjectURL(selectedImage);\n\n if(selectedImage.size > (1024 * 1024)) {\n this.bannerError = 'manage_event_banner_error_size';\n return;\n }\n\n img.onload = () => {\n // 1180x174\n if (img.width !== 1180 || img.height !== 174) {\n this.bannerError = 'manage_event_banner_error_res';\n return;\n }\n\n URL.revokeObjectURL(objectURL);\n\n this.saving = true;\n api.cdn().signUpload(this.$refs['banner'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['banner'].files[0], {\n headers: {\n 'Content-Type': this.$refs['banner'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n this.saving = false;\n }).then(() => {\n // upload done, create the video in the database\n this.event.banner = response.path\n this.event.banner_url = response.target_url\n this.saving = false;\n })\n })\n\n };\n\n img.src = objectURL;\n },\n removeProductImage() {\n this.saving = true;\n api.cdn().deleteUpload(this.event.image).then(() => {\n this.event.image = null;\n this.event.image_url = null;\n this.saving = false;\n this.saveEvent();\n }).catch(() => {\n this.saving = false;\n });\n },\n removeBanner() {\n this.saving = true;\n api.cdn().deleteUpload(this.event.banner).then(() => {\n this.event.banner = null;\n this.event.banner_url = null;\n this.saving = false;\n this.saveEvent();\n }).catch(() => {\n this.saving = false;\n });\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('event_details_view') && !this.$can('event_details_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n },\n computed: {\n isDisabled() {\n if(!this.$store.state.user) {\n return false;\n }\n return !this.$can('event_details_edit') ;\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n\n .container-distance,.marginTop0 >div{\n margin-top: 0!important;\n }\nimg.event-image{\n max-width:100%;\n width:350px;\n}\n\n@media (max-width:992px) {\n .margB{\n margin-top: 1.5rem!important;\n }\n}\n@media (max-width:576px) {\n \nimg.event-image{\n min-width:100%;\n}\n}\n .new-venue-button {\n margin-top: 5px;\n width: 100%;\n border-radius: 0;\n }\n</style>\n<style>\n\n.text-muted{\n font-size: 12px;\n}\n#venues-dropdownlist .vs__dropdown-menu {\n max-height: 250px!important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageEvent.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ManageEvent.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ManageEvent.vue?vue&type=template&id=79256ba9&scoped=true\"\nimport script from \"./ManageEvent.vue?vue&type=script&lang=js\"\nexport * from \"./ManageEvent.vue?vue&type=script&lang=js\"\nimport style0 from \"./ManageEvent.vue?vue&type=style&index=0&id=79256ba9&prod&scoped=true&lang=css\"\nimport style1 from \"./ManageEvent.vue?vue&type=style&index=1&id=79256ba9&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"79256ba9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',{staticClass:\"manage-event-products\"},[_c('div',[(this.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\"},[_c('div',{staticClass:\"d-flex flex-wrap w-100 mb-3\",class:(_vm.selectedProductsForEdit && _vm.selectedProductsForEdit.length) ? 'justify-content-between':'justify-content-end'},[(_vm.selectedProductsForEdit && _vm.selectedProductsForEdit.length)?_c('div',{staticClass:\"products-selection-btn mr-3 cursor-pointer\",on:{\"click\":_vm.showMassUpdateModal}},[_c('b-icon',{staticClass:\"ml-2\",attrs:{\"icon\":\"pencil-fill\"}}),_vm._v(\" \"+_vm._s(_vm.$t('edit'))+\" \"),_c('span',[_vm._v(_vm._s(_vm.selectedProductsForEdit.length)+\" \"+_vm._s(_vm.$t('event_selected_products')))])],1):_vm._e(),(_vm.$can('event_products_create') && (_vm.productGroups && _vm.productGroups.length))?_c('b-button',{staticClass:\"mb-0 float-right px-4 py-3\",attrs:{\"variant\":\"new\",\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.newProduct()}}},[_vm._v(\" \"+_vm._s(_vm.$t('event_product_add'))+\" \")]):_c('div',{staticClass:\"mb-3 float-right px-4 py-3\",staticStyle:{\"height\":\"56px\"}})],1),(!_vm.productGroups || !_vm.productGroups.length)?_c('div',{staticClass:\"d-block\"},[_c('div',{staticClass:\"text-center\"},[_c('b-img',{attrs:{\"width\":\"250\",\"src\":require('../assets/fairtix-no-products.svg')}}),_c('h3',{staticClass:\"text-primary-new font-weight-bold my-4\"},[_vm._v(_vm._s(_vm.$t('event_products_create_first_ticket')))]),_c('p',{staticClass:\"no-products-hint my-4\"},[_vm._v(_vm._s(_vm.$t('event_products_create_ticket_hint')))]),(_vm.$can('event_products_create'))?_c('b-button',{staticClass:\"px-5\",attrs:{\"variant\":\"new\",\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.newProduct()}}},[_vm._v(\" \"+_vm._s(_vm.$t('event_products_create_ticket_btn'))+\" \")]):_vm._e()],1)]):_c('div',{staticClass:\"d-block\"},[_c('div',[_c('div',{staticClass:\"tableBig\"},[_c('table',{staticClass:\"table b-table\",staticStyle:{\"width\":\"100%\"}},[_c('thead',{class:{'full-rounded': _vm.hasMultiGroups}},[_c('tr',{staticClass:\"responsive\"},[_c('th',[_c('b-form-checkbox',{ref:\"checkAll\",attrs:{\"value\":\"all\"},on:{\"change\":function($event){return _vm.groupToggle($event, 'all')}}})],1),_c('th',[_vm._v(_vm._s(_vm.$t('product_status')))]),_c('th',[_vm._v(_vm._s(_vm.$t('product_name')))]),_c('th',[_vm._v(_vm._s(_vm.$t('product_price')))]),_c('th',[_vm._v(_vm._s(_vm.$t('product_stock')))]),_c('th',[_vm._v(_vm._s(_vm.$t('actions')))])])]),_vm._l((_vm.productGroups),function(productGroup){return _c('tbody',{key:productGroup.name,class:{'body-multi-groups': _vm.hasMultiGroups}},[(_vm.hasMultiGroups)?_c('tr',{staticClass:\"bg-transparent border-0\"},[_c('td'),_c('td',{attrs:{\"colspan\":\"6\"}})]):_vm._e(),(_vm.hasMultiGroups)?_c('tr',{staticClass:\"group-header\"},[_c('td',[_c('b-form-checkbox',{ref:'groupCheckbox-' + productGroup.id,refInFor:true,on:{\"change\":function($event){return _vm.groupToggle($event, productGroup.id)}}})],1),_c('td',{staticClass:\"td-group-name\",attrs:{\"colspan\":\"5\"}},[_vm._v(_vm._s(productGroup.type === 'default' ? _vm.$t('no_product_group') : productGroup.name))])]):_vm._e(),_vm._l((productGroup.products),function(product){return _c('tr',{key:`product` + product.id},[_c('td',[_c('b-form-checkbox',{attrs:{\"value\":product.id,\"name\":\"products\"},model:{value:(_vm.selectedProductsForEdit),callback:function ($$v) {_vm.selectedProductsForEdit=$$v},expression:\"selectedProductsForEdit\"}})],1),_c('td',[_c('status-label',{attrs:{\"status\":product.status}})],1),_c('td',[_vm._v(_vm._s(product.name))]),_c('td',[_vm._v(_vm._s(_vm._f(\"currency\")(product.price)))]),_c('td',[_vm._v(_vm._s(parseInt(product.stock) === -1 ? _vm.$t('product_stock_unlimited_text') : product.stock))]),_c('td',{staticClass:\"flexing\"},[(_vm.$can('event_products_edit'))?_c('b-button',{staticClass:\"manage-btn\",attrs:{\"variant\":\"row-edit\"},on:{\"click\":function($event){return _vm.editProduct(product)}}},[_vm._v(_vm._s(_vm.$t('manage'))+\" \")]):_vm._e(),(_vm.$can('event_products_delete'))?_c('a',{staticClass:\"delete-btn\",on:{\"click\":function($event){return _vm.showDeleteModal(product.id)}}},[_c('b-img',{attrs:{\"src\":require('./../assets/icons/trash.png')}})],1):_vm._e()],1)])})],2)})],2)])])])]),_c('div',{staticClass:\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\"},[(_vm.event && _vm.event.name)?_c('event-nav',{attrs:{\"event\":_vm.event}}):_vm._e()],1)])],1),_c('b-modal',{attrs:{\"title\":_vm.$t('product_modal_edit'),\"id\":\"edit-product\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.event.isArchived || _vm.state.image !== null || _vm.state.email !== null,\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveProduct()}}},[_vm._v(_vm._s(_vm.$t('save'))+\" \")])]}}],null,false,3662661612)},[(_vm.product)?_c('div',[_c('div',{staticClass:\"text-right\"},[_c('span',{staticClass:\"cursor-pointer\",attrs:{\"id\":\"gear-popover\"}},[_c('b-icon',{attrs:{\"icon\":\"gear-fill\",\"scale\":\"1.3\"}}),_vm._v(\" \"),_c('span',{staticClass:\"font-14\"},[_vm._v(_vm._s(_vm.$t('product_more_items')))])],1),_c('b-tooltip',{attrs:{\"target\":\"gear-popover\",\"triggers\":\"hover\",\"delay\":{ show: 300, hide: 50 }}},[_vm._v(\" \"+_vm._s(_vm.$t('product_show_hide_input_fields'))+\" \")]),_c('b-popover',{attrs:{\"target\":\"gear-popover\",\"placement\":\"bottomleft\",\"triggers\":\"click\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_show_hide_input_fields')}},[_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.generateETicket),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"generateETicket\", $$v)},expression:\"inputVisibilitySettings.generateETicket\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_create_eticket'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.ticketTemplate),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"ticketTemplate\", $$v)},expression:\"inputVisibilitySettings.ticketTemplate\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_ticket_template'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.scanColor),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"scanColor\", $$v)},expression:\"inputVisibilitySettings.scanColor\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_scan_color'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.productImage),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"productImage\", $$v)},expression:\"inputVisibilitySettings.productImage\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_image'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.minMaxPerOrder),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"minMaxPerOrder\", $$v)},expression:\"inputVisibilitySettings.minMaxPerOrder\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_min_max_buy_per_product'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.belongToProduct),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"belongToProduct\", $$v)},expression:\"inputVisibilitySettings.belongToProduct\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_show_when_product_chosen'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.salesSets),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"salesSets\", $$v)},expression:\"inputVisibilitySettings.salesSets\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_sell_product_sets'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.sendAdditionalTicket),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"sendAdditionalTicket\", $$v)},expression:\"inputVisibilitySettings.sendAdditionalTicket\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_send_additional_ticket'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.scanTillDateTime),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"scanTillDateTime\", $$v)},expression:\"inputVisibilitySettings.scanTillDateTime\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_scan_till_date_time'))+\" \")]),(_vm.$can('product_ordered_email_confirmation'))?_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.sendConfirmationEmail),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"sendConfirmationEmail\", $$v)},expression:\"inputVisibilitySettings.sendConfirmationEmail\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_product_send_email'))+\" \")]):_vm._e(),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.limitAmountToMaximumTickets),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"limitAmountToMaximumTickets\", $$v)},expression:\"inputVisibilitySettings.limitAmountToMaximumTickets\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_limit_amount_to_maximum_tickets'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.allowMultipleEvents),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"allowMultipleEvents\", $$v)},expression:\"inputVisibilitySettings.allowMultipleEvents\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_product_allow_for_multiple_events'))+\" \")]),_c('b-form-checkbox',{model:{value:(_vm.inputVisibilitySettings.persons),callback:function ($$v) {_vm.$set(_vm.inputVisibilitySettings, \"persons\", $$v)},expression:\"inputVisibilitySettings.persons\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_product_persons'))+\" \")])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_name')}},[_c('b-form-input',{model:{value:(_vm.product.name),callback:function ($$v) {_vm.$set(_vm.product, \"name\", $$v)},expression:\"product.name\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_group')}},[_c('b-form-input',{attrs:{\"list\":\"groups\"},model:{value:(_vm.product.group_name),callback:function ($$v) {_vm.$set(_vm.product, \"group_name\", $$v)},expression:\"product.group_name\"}}),_c('datalist',{attrs:{\"id\":\"groups\"}},_vm._l((_vm.productGroups),function(group){return _c('option',{key:`grp` + group.id,domProps:{\"value\":group.name}})}),0)],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_type')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.productTypes},on:{\"change\":_vm.handleProductTypeChange},model:{value:(_vm.product.product_type_id),callback:function ($$v) {_vm.$set(_vm.product, \"product_type_id\", $$v)},expression:\"product.product_type_id\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_status')}},[_c('b-select',{attrs:{\"options\":['draft', 'live', 'sold-out', 'archived']},model:{value:(_vm.product.status),callback:function ($$v) {_vm.$set(_vm.product, \"status\", $$v)},expression:\"product.status\"}})],1)],1)],1),(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{on:{\"change\":_vm.onSpecificSale},model:{value:(_vm.product.specific_sales_time),callback:function ($$v) {_vm.$set(_vm.product, \"specific_sales_time\", $$v)},expression:\"product.specific_sales_time\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_specific_sale_times'))+\" \")])],1)],1),(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.is_multi_day_ticket),callback:function ($$v) {_vm.$set(_vm.product, \"is_multi_day_ticket\", $$v)},expression:\"product.is_multi_day_ticket\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_multi_day_ticket'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"is-multi-day-ticket-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-tooltip',{attrs:{\"target\":\"is-multi-day-ticket-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"product_multi_day_ticket_tooltip\"))+\" \")])],1)],1):_vm._e()],1):_vm._e(),_c('b-row',[(_vm.inputVisibilitySettings.generateETicket)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.create_eticket),callback:function ($$v) {_vm.$set(_vm.product, \"create_eticket\", $$v)},expression:\"product.create_eticket\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_create_eticket'))+\" \")])],1)],1):_vm._e()],1),_c('b-row',[(_vm.product.specific_sales_time)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.sale_show_after_expire),callback:function ($$v) {_vm.$set(_vm.product, \"sale_show_after_expire\", $$v)},expression:\"product.sale_show_after_expire\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_show_after_expire'))+\" \")])],1)],1):_vm._e()],1),(_vm.product.specific_sales_time)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('date-time-picker',{attrs:{\"label\":_vm.$t('product_sale_starts_at')},model:{value:(_vm.product.sale_starts_at),callback:function ($$v) {_vm.$set(_vm.product, \"sale_starts_at\", $$v)},expression:\"product.sale_starts_at\"}}),_c('date-time-picker',{attrs:{\"label\":_vm.$t('product_sale_ends_at')},model:{value:(_vm.product.sale_ends_at),callback:function ($$v) {_vm.$set(_vm.product, \"sale_ends_at\", $$v)},expression:\"product.sale_ends_at\"}})],1)],1):_vm._e(),(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.is_cross_sell),callback:function ($$v) {_vm.$set(_vm.product, \"is_cross_sell\", $$v)},expression:\"product.is_cross_sell\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_is_cross_sell'))+\" \")])],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.calculate_service_fee),callback:function ($$v) {_vm.$set(_vm.product, \"calculate_service_fee\", $$v)},expression:\"product.calculate_service_fee\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_calculate_service_fee'))+\" \")]),(_vm.product.calculate_service_fee)?_c('b-input-group',{staticClass:\"mt-2\",scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',[_vm._v(_vm._s(_vm.$t('currency')))])]},proxy:true}],null,false,2027693106)},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.product.service_fee),callback:function ($$v) {_vm.$set(_vm.product, \"service_fee\", $$v)},expression:\"product.service_fee\"}})],1):_vm._e(),(_vm.product.calculate_service_fee && _vm.ticket_fee_incl > 0)?_c('i',{staticClass:\"hint-text mt-2\"},[_vm._v(_vm._s(_vm.$t('product_companies_ticket_fee', {ticket_fee_incl: this.ticket_fee_incl})))]):_vm._e()],1)],1)],1):_vm._e(),(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_stock')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',[_c('b-form-checkbox',{attrs:{\"value\":\"-1\",\"unchecked-value\":\"0\"},model:{value:(_vm.product.stock),callback:function ($$v) {_vm.$set(_vm.product, \"stock\", $$v)},expression:\"product.stock\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_stock_unlimited_text'))+\" \")])],1)]},proxy:true}],null,false,1747433586)},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":parseInt(_vm.product.stock) === -1},model:{value:(_vm.product.stock),callback:function ($$v) {_vm.$set(_vm.product, \"stock\", $$v)},expression:\"product.stock\"}})],1)],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-row',[(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_price_inclusive_vat')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"0.01\"},model:{value:(_vm.product.price),callback:function ($$v) {_vm.$set(_vm.product, \"price\", $$v)},expression:\"product.price\"}})],1)],1):_vm._e(),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_vat_percentage')}},[_c('b-form-select',{attrs:{\"options\":_vm.vats},model:{value:(_vm.product.vat_percentage),callback:function ($$v) {_vm.$set(_vm.product, \"vat_percentage\", $$v)},expression:\"product.vat_percentage\"}}),(_vm.product.vat_percentage === 'different')?_c('b-form-input',{staticClass:\"mt-1\",attrs:{\"type\":\"number\",\"step\":\"0.01\",\"max\":100,\"min\":0,\"state\":_vm.state.vat,\"aria-describedby\":\"event-vat\",\"placeholder\":_vm.$t('product_vat_percentage')},on:{\"input\":_vm.validateVat,\"change\":_vm.validateVat},model:{value:(_vm.vat),callback:function ($$v) {_vm.vat=$$v},expression:\"vat\"}}):_vm._e(),(_vm.state.vat === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"event-vat-\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_vat_is_required'))+\" \")]):_vm._e()],1)],1)],1)],1)],1):_vm._e(),_c('b-row',[(_vm.inputVisibilitySettings.ticketTemplate)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('label',{staticClass:\"text-black\"},[_vm._v(_vm._s(_vm.$t('event_ticket_template'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"event-ticket-template-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.templates},model:{value:(_vm.product.ticket_template_id),callback:function ($$v) {_vm.$set(_vm.product, \"ticket_template_id\", $$v)},expression:\"product.ticket_template_id\"}}),_c('b-tooltip',{attrs:{\"target\":\"event-ticket-template-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"event_ticket_template_product_tooltip\"))+\" \")])],1)],1):_vm._e(),(_vm.inputVisibilitySettings.minMaxPerOrder)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_min_buy')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"max\":_vm.product.max_buy},model:{value:(_vm.product.min_buy),callback:function ($$v) {_vm.$set(_vm.product, \"min_buy\", $$v)},expression:\"product.min_buy\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_max_buy')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":_vm.product.min_buy},model:{value:(_vm.product.max_buy),callback:function ($$v) {_vm.$set(_vm.product, \"max_buy\", $$v)},expression:\"product.max_buy\"}})],1)],1)],1)],1):_vm._e()],1),(_vm.inputVisibilitySettings.scanTillDateTime)?_c('b-row',{attrs:{\"md\":\"12\",\"sm\":\"12\"}},[_c('b-col',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('product_scan_till_date_time')},model:{value:(_vm.product.scan_till_date_time),callback:function ($$v) {_vm.$set(_vm.product, \"scan_till_date_time\", $$v)},expression:\"product.scan_till_date_time\"}})],1)],1):_vm._e(),_c('b-row',[(_vm.inputVisibilitySettings.sendAdditionalTicket)?_c('b-col',{attrs:{\"md\":\"6\",\"sm\":\"12\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.isSendAdditionalTicket),callback:function ($$v) {_vm.isSendAdditionalTicket=$$v},expression:\"isSendAdditionalTicket\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_send_additional_ticket_ordered'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"addition-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-tooltip',{attrs:{\"target\":\"addition-tooltip\",\"triggers\":\"hover\",\"delay\":{ show: 300, hide: 50 }}},[_vm._v(\" \"+_vm._s(_vm.$t('product_additional_ticket_description'))+\" \")])],1),(_vm.isSendAdditionalTicket && _vm.product)?_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":_vm.$t('event_manage_products')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.additionalTicketsSelectedProducts.length ? (_vm.additionalTicketsSelectedProducts.length + ' ' + _vm.$t('event_products_selected')) : _vm.$t('event_products_no_selected')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.additionalTicketsSelectedProducts),callback:function ($$v) {_vm.additionalTicketsSelectedProducts=$$v},expression:\"additionalTicketsSelectedProducts\"}},_vm._l((_vm.products.filter(p => p.id !== _vm.product.id)),function(pr){return _c('b-form-checkbox',{key:pr.id,staticClass:\"w-100\",attrs:{\"value\":pr.id}},[_vm._v(_vm._s(pr.name)+\" \")])}),1)],1)],1)],1):_vm._e()],1):_vm._e()],1),_c('b-row',[(_vm.inputVisibilitySettings.salesSets)?_c('b-col',{attrs:{\"sm\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_sell_product_sets')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":_vm.product.min_buy ? _vm.product.min_buy : 0,\"max\":_vm.product.max_buy ? _vm.product.max_buy : 9999},model:{value:(_vm.product.sale_sets),callback:function ($$v) {_vm.$set(_vm.product, \"sale_sets\", $$v)},expression:\"product.sale_sets\"}})],1)],1):_vm._e(),(_vm.$can('product_ordered_email_confirmation') && _vm.inputVisibilitySettings.sendConfirmationEmail)?_c('b-col',{attrs:{\"sm\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_product_send_email')}},[_c('b-form-input',{attrs:{\"type\":\"email\",\"state\":_vm.state.email,\"aria-describedby\":\"input-f-name-feedback\"},on:{\"input\":function($event){return _vm.validateEmail($event)}},model:{value:(_vm.product.confirmation_email),callback:function ($$v) {_vm.$set(_vm.product, \"confirmation_email\", $$v)},expression:\"product.confirmation_email\"}}),(_vm.state.email === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-email-feedback\"}},[_vm._v(_vm._s(_vm.$t('email_is_invalid'))+\" \")]):_vm._e()],1)],1):_vm._e()],1),(_vm.inputVisibilitySettings.allowMultipleEvents)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_product_allow_for_multiple_events')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.product.allowed_events.length ? (_vm.product.allowed_events.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('select_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.eventsSearch),callback:function ($$v) {_vm.eventsSearch=$$v},expression:\"eventsSearch\"}}),_c('b-form-checkbox',{staticClass:\"mt-2 report-switch-small\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.eventsShowArchived),callback:function ($$v) {_vm.eventsShowArchived=$$v},expression:\"eventsShowArchived\"}},[_vm._v(_vm._s(_vm.$t('reports_include_archived_events'))+\" \")]),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.product.allowed_events),callback:function ($$v) {_vm.$set(_vm.product, \"allowed_events\", $$v)},expression:\"product.allowed_events\"}},_vm._l((_vm.eventsList),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name)+\" \")])}),1)],1)],1)],1)],1)],1):_vm._e(),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_description')}},[_c('b-textarea',{attrs:{\"rows\":\"6\"},model:{value:(_vm.product.description),callback:function ($$v) {_vm.$set(_vm.product, \"description\", $$v)},expression:\"product.description\"}})],1)],1)],1),_c('b-row',[(_vm.inputVisibilitySettings.scanColor)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-tooltip',{attrs:{\"target\":\"product-scan-color-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"product_scan_color_explenation\"))+\" \")]),_c('b-form-group',[_c('label',{staticClass:\"text-black\"},[_vm._v(_vm._s(_vm.$t('product_scan_color'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"product-scan-color-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('br'),_c('color-picker',{model:{value:(_vm.product.scan_color),callback:function ($$v) {_vm.$set(_vm.product, \"scan_color\", $$v)},expression:\"product.scan_color\"}}),_c('a',{staticClass:\"d-block font-16 mt-3\",attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.removeScanColor}},[_vm._v(\" \"+_vm._s(_vm.$t('product_remove_scan_color'))+\" \")])],1)],1):_vm._e(),(_vm.inputVisibilitySettings.belongToProduct)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.isBelongToProduct),callback:function ($$v) {_vm.isBelongToProduct=$$v},expression:\"isBelongToProduct\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_show_when_product_chosen'))+\" \")])],1),(_vm.isBelongToProduct && _vm.product)?_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":_vm.$t('event_manage_products')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.selectedProducts.length ? (_vm.selectedProducts.length + ' ' + _vm.$t('event_products_selected')) : _vm.$t('event_products_no_selected')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.selectedProducts),callback:function ($$v) {_vm.selectedProducts=$$v},expression:\"selectedProducts\"}},_vm._l((_vm.products.filter(p => p.id !== _vm.product.id)),function(pr){return _c('b-form-checkbox',{key:pr.id,staticClass:\"w-100\",attrs:{\"value\":pr.id}},[_vm._v(_vm._s(pr.name)+\" \")])}),1)],1)],1)],1):_vm._e()],1):_vm._e(),(_vm.inputVisibilitySettings.limitAmountToMaximumTickets)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.product.limit_max_amount),callback:function ($$v) {_vm.$set(_vm.product, \"limit_max_amount\", $$v)},expression:\"product.limit_max_amount\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_limit_amount_to_maximum_tickets'))+\" \")])],1)],1):_vm._e()],1),_c('b-row',[(_vm.inputVisibilitySettings.persons)?_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_product_persons')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"aria-describedby\":\"input-f-name-feedback\"},model:{value:(_vm.product.persons),callback:function ($$v) {_vm.$set(_vm.product, \"persons\", $$v)},expression:\"product.persons\"}})],1)],1):_vm._e()],1),(_vm.inputVisibilitySettings.productImage)?_c('b-row',[(_vm.product.image)?_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-img',{staticClass:\"Myimg\",attrs:{\"fluid\":\"\",\"src\":_vm.product.image_url}}),_c('a',{staticClass:\"d-block font-16 mt-3\",attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.removeProductImage}},[_vm._v(\" \"+_vm._s(_vm.$t('product_remove_image'))+\" \")])],1):_c('b-col',[_c('b-form-group',[_c('label',{staticClass:\"col-form-label d-block\"},[_vm._v(_vm._s(_vm.$t('product_image'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"product-image\",\"icon\":\"info-circle-fill\"}})],1),_c('b-tooltip',{attrs:{\"target\":\"product-image\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"product_image_tooltip\"))+\" \")]),_c('input',{ref:\"image\",attrs:{\"type\":\"file\",\"id\":\"image\",\"accept\":\"image/png, image/jpeg, image/jpg\"},on:{\"change\":function($event){return _vm.onImageChange()}}}),(_vm.state.image)?_c('span',{staticClass:\"text-danger small d-block mt-2\"},[_vm._v(_vm._s(_vm.$t(_vm.state.image)))]):_vm._e()],1)],1),(_vm.saving)?_c('b-col',[_c('b-icon',{attrs:{\"icon\":\"arrow-clockwise\",\"animation\":\"spin\",\"font-scale\":\"2\"}})],1):_vm._e()],1):_vm._e(),(_vm.errors.length)?_c('div',{staticClass:\"mt-2\"},_vm._l((_vm.errors),function(error){return _c('div',{key:error.message,staticClass:\"text-danger small\"},[_vm._v(_vm._s(_vm.$t(error.message, error.params))+\" \")])}),0):_vm._e()],1):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('product_modal_create'),\"id\":\"new-product\",\"size\":\"lg\",\"hide-footer\":\"\"}},[(_vm.product)?_c('div',[_c('b-row',[_c('b-col',{attrs:{\"md\":\"8\",\"sm\":\"12\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_name')}},[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('product_name') + ' *',\"state\":_vm.validations.name.state},model:{value:(_vm.product.name),callback:function ($$v) {_vm.$set(_vm.product, \"name\", $$v)},expression:\"product.name\"}}),(_vm.validations.name.message)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.validations.name.message)))]):_vm._e()],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_type')}},[_c('b-select',{attrs:{\"state\":_vm.validations.product_type.state},model:{value:(_vm.product.product_type_id),callback:function ($$v) {_vm.$set(_vm.product, \"product_type_id\", $$v)},expression:\"product.product_type_id\"}},_vm._l((_vm.productTypes),function(t){return _c('b-form-select-option',{key:t.id,attrs:{\"value\":t.id}},[_vm._v(\" \"+_vm._s(_vm.$t('event_product_type_' + t.name.toLowerCase()))+\" \")])}),1),(_vm.validations.product_type.message)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.validations.product_type.message)))]):_vm._e()],1)],1)],1),(_vm.product.product_type_id !== _vm.donation_product_id)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"5\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('event_product_available_amount')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',[_c('b-form-checkbox',{attrs:{\"value\":\"-1\",\"unchecked-value\":\"0\"},model:{value:(_vm.product.stock),callback:function ($$v) {_vm.$set(_vm.product, \"stock\", $$v)},expression:\"product.stock\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_stock_unlimited_text'))+\" \")])],1)]},proxy:true}],null,false,1747433586)},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":parseInt(_vm.product.stock) === -1,\"placeholder\":\"10000 *\",\"state\":_vm.validations.stock.state},model:{value:(_vm.product.stock),callback:function ($$v) {_vm.$set(_vm.product, \"stock\", $$v)},expression:\"product.stock\"}})],1),(_vm.validations.stock.message)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.validations.stock.message)))]):_vm._e()],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"3\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_price_inclusive_vat')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"0.01\",\"placeholder\":\"€ 10,- *\",\"state\":_vm.validations.price.state},model:{value:(_vm.product.price),callback:function ($$v) {_vm.$set(_vm.product, \"price\", $$v)},expression:\"product.price\"}}),(_vm.validations.price.message)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.validations.price.message)))]):_vm._e()],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('product_vat_percentage')}},[_c('b-form-select',{attrs:{\"options\":_vm.vats,\"placeholder\":\"9% *\",\"state\":_vm.validations.vat_percentage.state},model:{value:(_vm.product.vat_percentage),callback:function ($$v) {_vm.$set(_vm.product, \"vat_percentage\", $$v)},expression:\"product.vat_percentage\"}}),(_vm.product.vat_percentage === 'different')?_c('b-form-input',{staticClass:\"mt-1\",attrs:{\"type\":\"number\",\"step\":\"0.01\",\"max\":100,\"min\":0,\"placeholder\":_vm.$t('product_vat_percentage'),\"state\":_vm.validations.vat_percentage.state},on:{\"input\":_vm.validateVat,\"change\":_vm.validateVat},model:{value:(_vm.vat),callback:function ($$v) {_vm.vat=$$v},expression:\"vat\"}}):_vm._e(),(_vm.validations.vat_percentage.message)?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t(_vm.validations.vat_percentage.message)))]):_vm._e()],1)],1)],1):_vm._e(),_c('span',{staticClass:\"d-block\"},[_vm._v(_vm._s(_vm.$t('event_product_create_hint')))]),_c('b-button',{staticClass:\"my-3 text-white\",attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createProduct()}}},[_vm._v(\" \"+_vm._s(_vm.$t('product_modal_create'))+\" \")])],1):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('product_modal_delete'),\"id\":\"delete-product\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteProduct()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}],null,false,1080628340)},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('product_delete_confirmation')))])],1)],1)]),_c('b-modal',{attrs:{\"id\":\"product-create-success\",\"hide-footer\":\"\",\"hide-header\":\"\",\"size\":\"size-l\"}},[_c('div',{staticClass:\"py-5\"},[_c('div',{staticClass:\"py-4 text-center\"},[_c('b-icon',{staticStyle:{\"color\":\"#529a47\"},attrs:{\"icon\":\"check-circle\",\"font-scale\":\"10\"}})],1),_c('div',{staticClass:\"text-center px-5\"},[_c('h3',{staticClass:\"my-3 font-weight-bold text-black\"},[_vm._v(_vm._s(_vm.$t('event_product_create_success')))])])])]),_c('b-modal',{attrs:{\"title\":_vm.$t('event_products_mass_update'),\"id\":\"mass-update-products\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":!_vm.massProductsFilled || _vm.saving,\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveMassProduct()}}},[_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \"),(_vm.saving)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e()],1)]}}],null,false,544660109)},[_c('div',{staticClass:\"mass-update-body\"},[_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.group_name),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"group_name\", $$v)},expression:\"massUpdateEnables.group_name\"}},[_vm._v(_vm._s(_vm.$t('event_products_group_name')))])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-form-input',{attrs:{\"list\":\"groups\",\"disabled\":!_vm.massUpdateEnables.group_name},model:{value:(_vm.massProduct.group_name),callback:function ($$v) {_vm.$set(_vm.massProduct, \"group_name\", $$v)},expression:\"massProduct.group_name\"}}),_c('datalist',{attrs:{\"id\":\"groups\"}},_vm._l((_vm.productGroups),function(group){return _c('option',{key:`grp` + group.id,domProps:{\"value\":group.name}})}),0)],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.product_type_id),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"product_type_id\", $$v)},expression:\"massUpdateEnables.product_type_id\"}},[_vm._v(_vm._s(_vm.$t('product_type')))])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.productTypes,\"disabled\":!_vm.massUpdateEnables.product_type_id},on:{\"change\":_vm.handleMassProductTypeChange},model:{value:(_vm.massProduct.product_type_id),callback:function ($$v) {_vm.$set(_vm.massProduct, \"product_type_id\", $$v)},expression:\"massProduct.product_type_id\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.status),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"status\", $$v)},expression:\"massUpdateEnables.status\"}},[_vm._v(_vm._s(_vm.$t('product_status')))])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-select',{attrs:{\"disabled\":!_vm.massUpdateEnables.status,\"options\":['draft', 'live', 'sold-out', 'archived']},model:{value:(_vm.massProduct.status),callback:function ($$v) {_vm.$set(_vm.massProduct, \"status\", $$v)},expression:\"massProduct.status\"}})],1)],1)],1),_c('b-row',[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.stock),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"stock\", $$v)},expression:\"massUpdateEnables.stock\"}},[_vm._v(_vm._s(_vm.$t('event_products_capacity')))])],1),_c('b-col',[_c('b-form-group',[_c('b-input-group',{scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',[_c('b-form-checkbox',{attrs:{\"value\":\"-1\",\"unchecked-value\":\"0\",\"disabled\":!_vm.massUpdateEnables.stock},model:{value:(_vm.massProduct.stock),callback:function ($$v) {_vm.$set(_vm.massProduct, \"stock\", $$v)},expression:\"massProduct.stock\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_stock_unlimited_text'))+\" \")])],1)]},proxy:true}],null,false,3549487672)},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":parseInt(_vm.massProduct.stock) === -1 || !_vm.massUpdateEnables.stock,\"placeholder\":\"10000 *\"},model:{value:(_vm.massProduct.stock),callback:function ($$v) {_vm.$set(_vm.massProduct, \"stock\", $$v)},expression:\"massProduct.stock\"}})],1)],1)],1)],1),_c('b-row',[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.specific_sales_time),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"specific_sales_time\", $$v)},expression:\"massUpdateEnables.specific_sales_time\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_specific_sale_times'))+\" \")])],1)],1),_c('b-col',{staticClass:\"d-flex align-items-center mh-50\"},[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.massUpdateEnables.specific_sales_time},model:{value:(_vm.massProduct.specific_sales_time),callback:function ($$v) {_vm.$set(_vm.massProduct, \"specific_sales_time\", $$v)},expression:\"massProduct.specific_sales_time\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_specific_sale_times'))+\" \")])],1)],1)],1),(_vm.massUpdateEnables.specific_sales_time && _vm.massProduct.specific_sales_time)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_vm._v(_vm._s(_vm.$t('product_sale_starts_at')))]),_c('b-col',[_c('date-time-picker',{model:{value:(_vm.massProduct.sale_starts_at),callback:function ($$v) {_vm.$set(_vm.massProduct, \"sale_starts_at\", $$v)},expression:\"massProduct.sale_starts_at\"}})],1)],1):_vm._e(),(_vm.massUpdateEnables.specific_sales_time && _vm.massProduct.specific_sales_time)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_vm._v(_vm._s(_vm.$t('product_sale_ends_at')))]),_c('b-col',[_c('date-time-picker',{model:{value:(_vm.massProduct.sale_ends_at),callback:function ($$v) {_vm.$set(_vm.massProduct, \"sale_ends_at\", $$v)},expression:\"massProduct.sale_ends_at\"}}),(_vm.massProduct.sale_ends_at < _vm.massProduct.sale_starts_at)?_c('span',{staticClass:\"text-danger d-block mb-4\"},[_vm._v(_vm._s(_vm.$t('end_before_start_date')))]):_vm._e()],1)],1):_vm._e(),_c('b-row',[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.is_cross_sell),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"is_cross_sell\", $$v)},expression:\"massUpdateEnables.is_cross_sell\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_is_cross_sell'))+\" \")])],1)],1),_c('b-col',{staticClass:\"d-flex align-items-center mh-50\"},[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":!_vm.massUpdateEnables.is_cross_sell},model:{value:(_vm.massProduct.is_cross_sell),callback:function ($$v) {_vm.$set(_vm.massProduct, \"is_cross_sell\", $$v)},expression:\"massProduct.is_cross_sell\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_is_cross_sell'))+\" \")])],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.service_fee),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"service_fee\", $$v)},expression:\"massUpdateEnables.service_fee\"}},[_vm._v(_vm._s(_vm.$t('product_calculate_service_fee')))])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mh-50\"},[_c('b-input-group',{staticClass:\"mt-2\",scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',[_vm._v(_vm._s(_vm.$t('currency')))])]},proxy:true}],null,false,2027693106)},[_c('b-form-input',{attrs:{\"disabled\":!_vm.massUpdateEnables.service_fee,\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.massProduct.service_fee),callback:function ($$v) {_vm.$set(_vm.massProduct, \"service_fee\", $$v)},expression:\"massProduct.service_fee\"}})],1),(_vm.massProduct.service_fee && _vm.ticket_fee_incl > 0)?_c('i',{staticClass:\"hint-text mt-2\"},[_vm._v(_vm._s(_vm.$t('product_companies_ticket_fee', {ticket_fee_incl: this.ticket_fee_incl})))]):_vm._e()],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.ticket_template_id),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"ticket_template_id\", $$v)},expression:\"massUpdateEnables.ticket_template_id\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_ticket_template'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"event-ticket-template-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-tooltip',{attrs:{\"target\":\"event-ticket-template-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"event_ticket_template_product_tooltip\"))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"disabled\":!_vm.massUpdateEnables.ticket_template_id,\"options\":_vm.templates},model:{value:(_vm.massProduct.ticket_template_id),callback:function ($$v) {_vm.$set(_vm.massProduct, \"ticket_template_id\", $$v)},expression:\"massProduct.ticket_template_id\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.vat_percentage),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"vat_percentage\", $$v)},expression:\"massUpdateEnables.vat_percentage\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_vat_percentage'))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-form-select',{attrs:{\"options\":_vm.vats,\"disabled\":!_vm.massUpdateEnables.vat_percentage},model:{value:(_vm.massProduct.vat_percentage),callback:function ($$v) {_vm.$set(_vm.massProduct, \"vat_percentage\", $$v)},expression:\"massProduct.vat_percentage\"}}),(_vm.massProduct.vat_percentage === 'different')?_c('b-form-input',{staticClass:\"mt-1\",attrs:{\"type\":\"number\",\"step\":\"0.01\",\"max\":100,\"min\":0,\"state\":_vm.state.vat,\"aria-describedby\":\"event-vat\",\"placeholder\":_vm.$t('product_vat_percentage')},on:{\"input\":_vm.validateVat,\"change\":_vm.validateVat},model:{value:(_vm.vat),callback:function ($$v) {_vm.vat=$$v},expression:\"vat\"}}):_vm._e(),(_vm.state.vat === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"event-vat-\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_vat_is_required'))+\" \")]):_vm._e()],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.min_buy),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"min_buy\", $$v)},expression:\"massUpdateEnables.min_buy\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_min_buy'))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":!_vm.massUpdateEnables.min_buy},model:{value:(_vm.massProduct.min_buy),callback:function ($$v) {_vm.$set(_vm.massProduct, \"min_buy\", $$v)},expression:\"massProduct.min_buy\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.max_buy),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"max_buy\", $$v)},expression:\"massUpdateEnables.max_buy\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_max_buy'))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":!_vm.massUpdateEnables.max_buy},model:{value:(_vm.massProduct.max_buy),callback:function ($$v) {_vm.$set(_vm.massProduct, \"max_buy\", $$v)},expression:\"massProduct.max_buy\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.scan_till_date_time),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"scan_till_date_time\", $$v)},expression:\"massUpdateEnables.scan_till_date_time\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_scan_till_date_time'))+\" \")])],1),_c('b-col',[_c('date-time-picker',{staticClass:\"mb-0\",attrs:{\"disabled\":!_vm.massUpdateEnables.scan_till_date_time,\"state\":null},model:{value:(_vm.massProduct.scan_till_date_time),callback:function ($$v) {_vm.$set(_vm.massProduct, \"scan_till_date_time\", $$v)},expression:\"massProduct.scan_till_date_time\"}})],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.sale_sets),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"sale_sets\", $$v)},expression:\"massUpdateEnables.sale_sets\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_sell_product_sets'))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-form-input',{attrs:{\"type\":\"number\",\"disabled\":!_vm.massUpdateEnables.sale_sets,\"min\":_vm.massProduct.min_buy ? _vm.massProduct.min_buy : 0,\"max\":_vm.massProduct.max_buy ? _vm.massProduct.max_buy : 9999},model:{value:(_vm.massProduct.sale_sets),callback:function ($$v) {_vm.$set(_vm.massProduct, \"sale_sets\", $$v)},expression:\"massProduct.sale_sets\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.description),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"description\", $$v)},expression:\"massUpdateEnables.description\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_description'))+\" \")])],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\"},[_c('b-textarea',{attrs:{\"disabled\":!_vm.massUpdateEnables.description,\"rows\":\"6\"},model:{value:(_vm.massProduct.description),callback:function ($$v) {_vm.$set(_vm.massProduct, \"description\", $$v)},expression:\"massProduct.description\"}})],1)],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-checkbox',{model:{value:(_vm.massUpdateEnables.scan_color),callback:function ($$v) {_vm.$set(_vm.massUpdateEnables, \"scan_color\", $$v)},expression:\"massUpdateEnables.scan_color\"}},[_vm._v(\" \"+_vm._s(_vm.$t('product_scan_color'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"product-scan-color-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-tooltip',{attrs:{\"target\":\"product-scan-color-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t(\"product_scan_color_explenation\"))+\" \")])],1),_c('b-col',[(_vm.massUpdateEnables.scan_color)?_c('color-picker',{staticClass:\"mb-0\",model:{value:(_vm.massProduct.scan_color),callback:function ($$v) {_vm.$set(_vm.massProduct, \"scan_color\", $$v)},expression:\"massProduct.scan_color\"}}):_vm._e(),(_vm.massUpdateEnables.scan_color && _vm.massProduct.scan_color)?_c('a',{staticClass:\"d-block font-16 mt-3\",attrs:{\"href\":\"javascript:\"},on:{\"click\":function($event){_vm.massProduct.scan_color = null}}},[_vm._v(\" \"+_vm._s(_vm.$t('product_remove_scan_color'))+\" \")]):_vm._e()],1)],1),(_vm.errors.length)?_c('div',{staticClass:\"mt-2\"},_vm._l((_vm.errors),function(error){return _c('div',{key:error.message,staticClass:\"text-danger small\"},[_vm._v(_vm._s(_vm.$t(error.message, error.params))+\" \")])}),0):_vm._e()],1)]),_c('b-modal',{attrs:{\"id\":\"product-mass-update-success\",\"hide-footer\":\"\",\"hide-header\":\"\",\"size\":\"size-l\"}},[_c('div',{staticClass:\"py-5\"},[_c('div',{staticClass:\"py-4 text-center\"},[_c('b-icon',{staticStyle:{\"color\":\"#529a47\"},attrs:{\"icon\":\"check-circle\",\"font-scale\":\"10\"}})],1),_c('div',{staticClass:\"text-center px-5\"},[_c('h3',{staticClass:\"my-3 font-weight-bold text-black\"},[_vm._v(_vm._s(_vm.$t('event_product_mass_update_success')))])])])])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"event\" class=\"manage-event-products\">\n <div>\n <b-alert v-if=\"this.event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n\n <div class=\"d-flex flex-wrap\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\">\n <div class=\"d-flex flex-wrap w-100 mb-3\" :class=\"(selectedProductsForEdit && selectedProductsForEdit.length) ? 'justify-content-between':'justify-content-end'\">\n <div v-if=\"selectedProductsForEdit && selectedProductsForEdit.length\" @click=\"showMassUpdateModal\" class=\"products-selection-btn mr-3 cursor-pointer\">\n <b-icon icon=\"pencil-fill\" class=\"ml-2\"/> {{ $t('edit') }} <span>{{ selectedProductsForEdit.length }} {{ $t('event_selected_products') }}</span>\n </div>\n <b-button v-if=\"$can('event_products_create') && (productGroups && productGroups.length)\" class=\"mb-0 float-right px-4 py-3 \" variant=\"new\" :disabled=\"event.isArchived\" @click=\"newProduct()\">\n {{ $t('event_product_add') }}\n </b-button>\n <div v-else class=\"mb-3 float-right px-4 py-3\" style=\"height: 56px;\"></div>\n </div>\n <div class=\"d-block\" v-if=\"!productGroups || !productGroups.length\">\n <div class=\"text-center\">\n <b-img width=\"250\" :src=\"require('../assets/fairtix-no-products.svg')\"/>\n\n <h3 class=\"text-primary-new font-weight-bold my-4\">{{ $t('event_products_create_first_ticket') }}</h3>\n\n <p class=\"no-products-hint my-4\">{{ $t('event_products_create_ticket_hint') }}</p>\n\n <b-button v-if=\"$can('event_products_create')\" variant=\"new\" class=\"px-5\" :disabled=\"event.isArchived\" @click=\"newProduct()\">\n {{ $t('event_products_create_ticket_btn') }}\n </b-button>\n </div>\n </div>\n\n <div v-else class=\"d-block\">\n <div>\n <div class=\"tableBig\">\n\n <table class=\"table b-table\" style=\"width:100%;\">\n <thead :class=\"{'full-rounded': hasMultiGroups}\">\n <tr class=\"responsive\">\n <th><b-form-checkbox ref=\"checkAll\" @change=\"groupToggle($event, 'all')\" value=\"all\"/></th>\n <th>{{ $t('product_status') }}</th>\n <th>{{ $t('product_name') }}</th>\n <th>{{ $t('product_price') }}</th>\n <th>{{ $t('product_stock') }}</th>\n <th>{{ $t('actions') }}</th>\n </tr>\n </thead>\n <tbody v-for=\"productGroup in productGroups\" :key=\"productGroup.name\" :class=\"{'body-multi-groups': hasMultiGroups}\">\n <tr v-if=\"hasMultiGroups\" class=\"bg-transparent border-0\">\n <td></td>\n <td colspan=\"6\"></td>\n </tr>\n <tr v-if=\"hasMultiGroups\" class=\"group-header\">\n <td><b-form-checkbox :ref=\"'groupCheckbox-' + productGroup.id\" @change=\"groupToggle($event, productGroup.id)\"/></td>\n <td colspan=\"5\" class=\"td-group-name\">{{ productGroup.type === 'default' ? $t('no_product_group') : productGroup.name }}</td>\n </tr>\n <tr v-for=\"product in productGroup.products\" :key=\"`product` + product.id\">\n <td><b-form-checkbox v-model=\"selectedProductsForEdit\" :value=\"product.id\" name=\"products\"/></td>\n <td>\n <status-label :status=\"product.status\"></status-label>\n </td>\n <td>{{ product.name }}</td>\n <td>{{ product.price | currency }}</td>\n <td>{{ parseInt(product.stock) === -1 ? $t('product_stock_unlimited_text') : product.stock }}</td>\n <td class=\"flexing\">\n <b-button v-if=\"$can('event_products_edit')\" class=\"manage-btn\" variant=\"row-edit\" @click=\"editProduct(product)\">{{ $t('manage') }}\n </b-button>\n <a v-if=\"$can('event_products_delete')\" class=\"delete-btn\" @click=\"showDeleteModal(product.id)\">\n <b-img :src=\"require('./../assets/icons/trash.png')\"/>\n </a>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n </div>\n <div class=\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\">\n <event-nav v-if=\"event && event.name\" :event=\"event\"></event-nav>\n </div>\n </div>\n </div>\n <b-modal :title=\"$t('product_modal_edit')\" id=\"edit-product\" size=\"lg\">\n <div v-if=\"product\">\n <div class=\"text-right\">\n <span id=\"gear-popover\" class=\"cursor-pointer\">\n <b-icon icon=\"gear-fill\" scale=\"1.3\"></b-icon> <span class=\"font-14\">{{ $t('product_more_items') }}</span>\n </span>\n <b-tooltip target=\"gear-popover\" triggers=\"hover\" :delay=\"{ show: 300, hide: 50 }\">\n {{ $t('product_show_hide_input_fields') }}\n </b-tooltip>\n <b-popover\n target=\"gear-popover\"\n placement=\"bottomleft\"\n triggers=\"click\"\n >\n <b-form-group :label=\"$t('product_show_hide_input_fields')\">\n <b-form-checkbox v-model=\"inputVisibilitySettings.generateETicket\">\n {{ $t('product_create_eticket') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.ticketTemplate\">\n {{ $t('event_ticket_template') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.scanColor\">\n {{ $t('product_scan_color') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.productImage\">\n {{ $t('product_image') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.minMaxPerOrder\">\n {{ $t('product_min_max_buy_per_product') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.belongToProduct\">\n {{ $t('product_show_when_product_chosen') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.salesSets\">\n {{ $t('product_sell_product_sets') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.sendAdditionalTicket\">\n {{ $t('product_send_additional_ticket') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.scanTillDateTime\">\n {{ $t('product_scan_till_date_time') }}\n </b-form-checkbox>\n <b-form-checkbox v-if=\"$can('product_ordered_email_confirmation')\" v-model=\"inputVisibilitySettings.sendConfirmationEmail\">\n {{ $t('event_product_send_email') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.limitAmountToMaximumTickets\">\n {{ $t('product_limit_amount_to_maximum_tickets') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.allowMultipleEvents\">\n {{ $t('event_product_allow_for_multiple_events') }}\n </b-form-checkbox>\n <b-form-checkbox v-model=\"inputVisibilitySettings.persons\">\n {{ $t('event_product_persons') }}\n </b-form-checkbox>\n </b-form-group>\n </b-popover>\n </div>\n <b-row>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_name')\">\n <b-form-input v-model=\"product.name\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_group')\">\n <b-form-input list=\"groups\" v-model=\"product.group_name\"></b-form-input>\n <datalist id=\"groups\">\n <option v-for=\"group in productGroups\" :key=\"`grp` + group.id\" :value=\"group.name\"></option>\n </datalist>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_type')\">\n <b-select\n v-model=\"product.product_type_id\"\n text-field=\"name\"\n v-on:change=\"handleProductTypeChange\"\n value-field=\"id\"\n :options=\"productTypes\"\n />\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_status')\">\n <b-select v-model=\"product.status\" :options=\"['draft', 'live', 'sold-out', 'archived']\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"product.product_type_id !== donation_product_id\">\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-on:change=\"onSpecificSale\" v-model=\"product.specific_sales_time\">\n {{ $t('product_specific_sale_times') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\" v-if=\"product.product_type_id !== donation_product_id\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.is_multi_day_ticket\">\n {{ $t('product_multi_day_ticket') }}\n <b-icon id=\"is-multi-day-ticket-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </b-form-checkbox>\n <b-tooltip target=\"is-multi-day-ticket-tooltip\" triggers=\"hover\">\n {{ $t(\"product_multi_day_ticket_tooltip\") }}\n </b-tooltip>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"6\" v-if=\"inputVisibilitySettings.generateETicket\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.create_eticket\">\n {{ $t('product_create_eticket') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"product.specific_sales_time\" cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.sale_show_after_expire\">\n {{ $t('product_show_after_expire') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"product.specific_sales_time\">\n <b-col cols=\"12\">\n <date-time-picker v-model=\"product.sale_starts_at\" :label=\"$t('product_sale_starts_at')\"></date-time-picker>\n <date-time-picker v-model=\"product.sale_ends_at\" :label=\"$t('product_sale_ends_at')\"></date-time-picker>\n </b-col>\n </b-row>\n <b-row v-if=\"product.product_type_id !== donation_product_id\">\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.is_cross_sell\">\n {{ $t('product_is_cross_sell') }}\n </b-form-checkbox>\n </b-form-group>\n\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.calculate_service_fee\">\n {{ $t('product_calculate_service_fee') }}\n </b-form-checkbox>\n <b-input-group v-if=\"product.calculate_service_fee\" class=\"mt-2\">\n <template #prepend>\n <b-input-group-text>{{ $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input type=\"number\" v-model=\"product.service_fee\" :step=\"0.01\" :min=\"0\"></b-form-input>\n </b-input-group>\n <i class=\"hint-text mt-2\"\n v-if=\"product.calculate_service_fee && ticket_fee_incl > 0\">{{ $t('product_companies_ticket_fee', {ticket_fee_incl: this.ticket_fee_incl}) }}</i>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"product.product_type_id !== donation_product_id\">\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_stock')\">\n <b-input-group>\n <b-form-input type=\"number\" v-model=\"product.stock\"\n :disabled=\"parseInt(product.stock) === -1\"></b-form-input>\n <template #append>\n <b-input-group-text>\n <b-form-checkbox v-model=\"product.stock\" value=\"-1\" unchecked-value=\"0\">\n {{ $t('product_stock_unlimited_text') }}\n </b-form-checkbox>\n </b-input-group-text>\n </template>\n </b-input-group>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-row>\n <b-col cols=\"12\" lg=\"6\" v-if=\"product.product_type_id !== donation_product_id\">\n <b-form-group :label=\"$t('product_price_inclusive_vat')\">\n <b-form-input type=\"number\" v-model=\"product.price\" step=\"0.01\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_vat_percentage')\">\n <b-form-select v-model=\"product.vat_percentage\" :options=\"vats\"></b-form-select>\n <b-form-input v-if=\"product.vat_percentage === 'different'\"\n type=\"number\"\n v-model=\"vat\"\n step=\"0.01\"\n :max=\"100\"\n :min=\"0\"\n class=\"mt-1\"\n @input=\"validateVat\"\n @change=\"validateVat\"\n :state=\"state.vat\"\n aria-describedby=\"event-vat\"\n :placeholder=\"$t('product_vat_percentage')\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.vat === false\" id=\"event-vat-\">\n {{ $t('event_vat_is_required') }}\n </b-form-invalid-feedback>\n </b-form-group>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"inputVisibilitySettings.ticketTemplate\" cols=\"12\" lg=\"6\">\n <b-form-group>\n <label class=\"text-black\">{{ $t('event_ticket_template') }}\n <b-icon id=\"event-ticket-template-tooltip\" v-b-tooltip.hover class=\"ml-2\"\n icon=\"info-circle-fill\"></b-icon>\n </label>\n <b-select v-model=\"product.ticket_template_id\" text-field=\"name\" value-field=\"id\"\n :options=\"templates\"></b-select>\n <b-tooltip target=\"event-ticket-template-tooltip\" triggers=\"hover\">\n {{ $t(\"event_ticket_template_product_tooltip\") }}\n </b-tooltip>\n </b-form-group>\n </b-col>\n <b-col v-if=\"inputVisibilitySettings.minMaxPerOrder\" cols=\"12\" lg=\"6\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('product_min_buy')\">\n <b-form-input type=\"number\" :max=\"product.max_buy\" v-model=\"product.min_buy\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('product_max_buy')\">\n <b-form-input type=\"number\" :min=\"product.min_buy\" v-model=\"product.max_buy\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n <b-row v-if=\"inputVisibilitySettings.scanTillDateTime\" md=\"12\" sm=\"12\">\n <b-col>\n <date-time-picker v-model=\"product.scan_till_date_time\"\n :label=\"$t('product_scan_till_date_time')\"></date-time-picker>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"inputVisibilitySettings.sendAdditionalTicket\" md=\"6\" sm=\"12\">\n <b-form-group>\n <b-form-checkbox v-model=\"isSendAdditionalTicket\">\n {{ $t('product_send_additional_ticket_ordered') }}\n <b-icon id=\"addition-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </b-form-checkbox>\n <b-tooltip target=\"addition-tooltip\" triggers=\"hover\" :delay=\"{ show: 300, hide: 50 }\">\n {{ $t('product_additional_ticket_description') }}\n </b-tooltip>\n </b-form-group>\n <b-form-group v-if=\"isSendAdditionalTicket && product\" :label=\"$t('event_manage_products')\" class=\"mt-4\">\n <b-dropdown id=\"dropdown-Checkbox\" ref=\"dropdown\" class=\"w-100\"\n :text=\"additionalTicketsSelectedProducts.length ? (additionalTicketsSelectedProducts.length + ' ' + $t('event_products_selected')) : $t('event_products_no_selected')\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-checkbox-group v-model=\"additionalTicketsSelectedProducts\" id=\"checkbox-group-2\"\n name=\"flavour-2\">\n <b-form-checkbox\n v-for=\"pr in products.filter(p => p.id !== product.id)\"\n :key=\"pr.id\"\n :value=\"pr.id\" class=\"w-100\">{{ pr.name }}\n </b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"inputVisibilitySettings.salesSets\" sm=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('product_sell_product_sets')\">\n <b-form-input type=\"number\" :min=\"product.min_buy ? product.min_buy : 0\"\n :max=\"product.max_buy ? product.max_buy : 9999\" v-model=\"product.sale_sets\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col v-if=\"$can('product_ordered_email_confirmation') && inputVisibilitySettings.sendConfirmationEmail\"\n sm=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('event_product_send_email')\">\n <b-form-input\n type=\"email\"\n :state=\"state.email\"\n @input=\"validateEmail($event)\"\n aria-describedby=\"input-f-name-feedback\"\n v-model=\"product.confirmation_email\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.email === false\" id=\"input-email-feedback\">{{\n $t('email_is_invalid')\n }}\n </b-form-invalid-feedback>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"inputVisibilitySettings.allowMultipleEvents\">\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('event_product_allow_for_multiple_events')\">\n <b-dropdown id=\"dropdown-Checkbox\"\n :text=\"product.allowed_events.length ? (product.allowed_events.length + ' ' + $t('permission_events_selected')) : $t('select_events')\"\n ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"eventsSearch\" :placeholder=\"$t('search')\" size=\"sm\"\n class=\"mb-2\"></b-form-input>\n <b-form-checkbox class=\"mt-2 report-switch-small\" switch v-model=\"eventsShowArchived\" :value=\"true\"\n :unchecked-value=\"false\">{{ $t('reports_include_archived_events') }}\n </b-form-checkbox>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"product.allowed_events\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"ev in eventsList\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}\n </b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('product_description')\">\n <b-textarea v-model=\"product.description\" rows=\"6\"></b-textarea>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"inputVisibilitySettings.scanColor\" cols=\"12\" lg=\"6\">\n <b-tooltip target=\"product-scan-color-tooltip\" triggers=\"hover\">\n {{ $t(\"product_scan_color_explenation\") }}\n </b-tooltip>\n <b-form-group>\n <label class=\"text-black\">{{ $t('product_scan_color') }}\n <b-icon id=\"product-scan-color-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </label>\n <br>\n <color-picker v-model=\"product.scan_color\"></color-picker>\n <a @click=\"removeScanColor\" href=\"javascript:\" class=\"d-block font-16 mt-3\">\n {{ $t('product_remove_scan_color') }}\n </a>\n </b-form-group>\n </b-col>\n <b-col v-if=\"inputVisibilitySettings.belongToProduct\" cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-model=\"isBelongToProduct\">\n {{ $t('product_show_when_product_chosen') }}\n </b-form-checkbox>\n </b-form-group>\n <b-form-group v-if=\"isBelongToProduct && product\" :label=\"$t('event_manage_products')\" class=\"mt-4\">\n <b-dropdown id=\"dropdown-Checkbox\" ref=\"dropdown\" class=\"w-100\"\n :text=\"selectedProducts.length ? (selectedProducts.length + ' ' + $t('event_products_selected')) : $t('event_products_no_selected')\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-checkbox-group v-model=\"selectedProducts\" id=\"checkbox-group-2\" name=\"flavour-2\">\n <b-form-checkbox\n v-for=\"pr in products.filter(p => p.id !== product.id)\"\n :key=\"pr.id\"\n :value=\"pr.id\" class=\"w-100\">{{ pr.name }}\n </b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n </b-col>\n <b-col v-if=\"inputVisibilitySettings.limitAmountToMaximumTickets\" cols=\"12\" lg=\"6\">\n <b-form-group>\n <b-form-checkbox v-model=\"product.limit_max_amount\">\n {{ $t('product_limit_amount_to_maximum_tickets') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"inputVisibilitySettings.persons\" cols=\"12\" md=\"6\">\n <b-form-group :label=\"$t('event_product_persons')\">\n <b-form-input\n type=\"number\"\n aria-describedby=\"input-f-name-feedback\"\n v-model=\"product.persons\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"inputVisibilitySettings.productImage\">\n <b-col v-if=\"product.image\" cols=\"12\">\n <b-img fluid :src=\"product.image_url\" class=\"Myimg\"></b-img>\n <a @click=\"removeProductImage\" href=\"javascript:\" class=\"d-block font-16 mt-3\">\n {{ $t('product_remove_image') }}\n </a>\n </b-col>\n <b-col v-else>\n <b-form-group>\n <label class=\"col-form-label d-block\">{{ $t('product_image') }}\n <b-icon id=\"product-image\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </label>\n <b-tooltip target=\"product-image\" triggers=\"hover\">\n {{ $t(\"product_image_tooltip\") }}\n </b-tooltip>\n\n <input type=\"file\" id=\"image\" accept=\"image/png, image/jpeg, image/jpg\" ref=\"image\"\n v-on:change=\"onImageChange()\"/>\n\n <span v-if=\"state.image\" class=\"text-danger small d-block mt-2\">{{ $t(state.image) }}</span>\n </b-form-group>\n </b-col>\n <b-col v-if=\"saving\">\n <b-icon icon=\"arrow-clockwise\" animation=\"spin\" font-scale=\"2\"></b-icon>\n </b-col>\n </b-row>\n <div v-if=\"errors.length\" class=\"mt-2\">\n <div v-for=\"error in errors\" :key=\"error.message\" class=\"text-danger small\">{{\n $t(error.message, error.params)\n }}\n </div>\n </div>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveProduct()\" :disabled=\"event.isArchived || state.image !== null || state.email !== null\"\n variant=\"success\">{{ $t('save') }}\n </b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('product_modal_create')\" id=\"new-product\" size=\"lg\" hide-footer>\n <div v-if=\"product\">\n <b-row>\n <b-col md=\"8\" sm=\"12\">\n <b-form-group :label=\"$t('product_name')\">\n <b-form-input v-model=\"product.name\" :placeholder=\"$t('product_name') + ' *'\"\n :state=\"validations.name.state\"></b-form-input>\n <span v-if=\"validations.name.message\" class=\"text-danger d-block\">{{\n $t(validations.name.message)\n }}</span>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('product_type')\">\n <b-select\n v-model=\"product.product_type_id\"\n :state=\"validations.product_type.state\"\n >\n <b-form-select-option v-for=\"t in productTypes\" :value=\"t.id\" :key=\"t.id\">\n {{ $t('event_product_type_' + t.name.toLowerCase()) }}\n </b-form-select-option>\n </b-select>\n <span v-if=\"validations.product_type.message\"\n class=\"text-danger d-block\">{{ $t(validations.product_type.message) }}</span>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row v-if=\"product.product_type_id !== donation_product_id\">\n <b-col cols=\"12\" lg=\"5\">\n <b-form-group :label=\"$t('event_product_available_amount')\">\n <b-input-group>\n <b-form-input type=\"number\" v-model=\"product.stock\" :disabled=\"parseInt(product.stock) === -1\"\n placeholder=\"10000 *\" :state=\"validations.stock.state\"></b-form-input>\n <template #append>\n <b-input-group-text>\n <b-form-checkbox v-model=\"product.stock\" value=\"-1\" unchecked-value=\"0\">\n {{ $t('product_stock_unlimited_text') }}\n </b-form-checkbox>\n </b-input-group-text>\n </template>\n </b-input-group>\n <span v-if=\"validations.stock.message\" class=\"text-danger d-block\">{{\n $t(validations.stock.message)\n }}</span>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"3\">\n <b-form-group :label=\"$t('product_price_inclusive_vat')\">\n <b-form-input type=\"number\" v-model=\"product.price\" step=\"0.01\" placeholder=\"€ 10,- *\"\n :state=\"validations.price.state\"></b-form-input>\n <span v-if=\"validations.price.message\" class=\"text-danger d-block\">{{\n $t(validations.price.message)\n }}</span>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-group :label=\"$t('product_vat_percentage')\">\n <b-form-select v-model=\"product.vat_percentage\" :options=\"vats\" placeholder=\"9% *\"\n :state=\"validations.vat_percentage.state\"></b-form-select>\n <b-form-input v-if=\"product.vat_percentage === 'different'\"\n type=\"number\"\n v-model=\"vat\"\n step=\"0.01\"\n :max=\"100\"\n :min=\"0\"\n class=\"mt-1\"\n @input=\"validateVat\"\n @change=\"validateVat\"\n :placeholder=\"$t('product_vat_percentage')\"\n :state=\"validations.vat_percentage.state\"></b-form-input>\n <span v-if=\"validations.vat_percentage.message\"\n class=\"text-danger d-block\">{{ $t(validations.vat_percentage.message) }}</span>\n </b-form-group>\n </b-col>\n </b-row>\n\n <span class=\"d-block\">{{ $t('event_product_create_hint') }}</span>\n\n <b-button @click=\"createProduct()\" :disabled=\"event.isArchived\" variant=\"primary\" class=\"my-3 text-white\">\n {{ $t('product_modal_create') }}\n </b-button>\n </div>\n </b-modal>\n <b-modal :title=\"$t('product_modal_delete')\" id=\"delete-product\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('product_delete_confirmation') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"deleteProduct()\" :disabled=\"event.isArchived\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"product-create-success\" hide-footer hide-header size=\"size-l\">\n <div class=\"py-5\">\n <div class=\"py-4 text-center\">\n <b-icon icon=\"check-circle\" font-scale=\"10\" style=\"color:#529a47\"></b-icon>\n </div>\n <div class=\"text-center px-5\">\n <h3 class=\"my-3 font-weight-bold text-black\">{{ $t('event_product_create_success') }}</h3>\n </div>\n </div>\n </b-modal>\n\n <b-modal :title=\"$t('event_products_mass_update')\" id=\"mass-update-products\" size=\"lg\">\n <div class=\"mass-update-body\">\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.group_name\">{{ $t('event_products_group_name') }}</b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-form-input list=\"groups\" v-model=\"massProduct.group_name\" :disabled=\"!massUpdateEnables.group_name\"></b-form-input>\n <datalist id=\"groups\">\n <option v-for=\"group in productGroups\" :key=\"`grp` + group.id\" :value=\"group.name\"></option>\n </datalist>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.product_type_id\">{{ $t('product_type') }}</b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-select\n v-model=\"massProduct.product_type_id\"\n text-field=\"name\"\n v-on:change=\"handleMassProductTypeChange\"\n value-field=\"id\"\n :options=\"productTypes\"\n :disabled=\"!massUpdateEnables.product_type_id\"\n />\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.status\">{{ $t('product_status') }}</b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-select :disabled=\"!massUpdateEnables.status\" v-model=\"massProduct.status\" :options=\"['draft', 'live', 'sold-out', 'archived']\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.stock\">{{ $t('event_products_capacity') }}</b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group>\n <b-input-group>\n <b-form-input type=\"number\" v-model=\"massProduct.stock\" :disabled=\"parseInt(massProduct.stock) === -1 || !massUpdateEnables.stock\"\n placeholder=\"10000 *\"></b-form-input>\n <template #append>\n <b-input-group-text>\n <b-form-checkbox v-model=\"massProduct.stock\" value=\"-1\" unchecked-value=\"0\" :disabled=\"!massUpdateEnables.stock\">\n {{ $t('product_stock_unlimited_text') }}\n </b-form-checkbox>\n </b-input-group-text>\n </template>\n </b-input-group>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-group>\n <b-form-checkbox v-model=\"massUpdateEnables.specific_sales_time\">\n {{ $t('product_specific_sale_times') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col class=\"d-flex align-items-center mh-50\">\n <b-form-group>\n <b-form-checkbox :disabled=\"!massUpdateEnables.specific_sales_time\" v-model=\"massProduct.specific_sales_time\">\n {{ $t('product_specific_sale_times') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row v-if=\"massUpdateEnables.specific_sales_time && massProduct.specific_sales_time\">\n <b-col cols=\"12\" lg=\"4\">{{ $t('product_sale_starts_at') }}</b-col>\n <b-col>\n <date-time-picker v-model=\"massProduct.sale_starts_at\"></date-time-picker>\n </b-col>\n </b-row>\n\n <b-row v-if=\"massUpdateEnables.specific_sales_time && massProduct.specific_sales_time\">\n <b-col cols=\"12\" lg=\"4\">{{ $t('product_sale_ends_at') }}</b-col>\n <b-col>\n <date-time-picker v-model=\"massProduct.sale_ends_at\"></date-time-picker>\n\n <span v-if=\"massProduct.sale_ends_at < massProduct.sale_starts_at\" class=\"text-danger d-block mb-4\">{{ $t('end_before_start_date') }}</span>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-group>\n <b-form-checkbox v-model=\"massUpdateEnables.is_cross_sell\">\n {{ $t('product_is_cross_sell') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col class=\"d-flex align-items-center mh-50\">\n <b-form-group>\n <b-form-checkbox :disabled=\"!massUpdateEnables.is_cross_sell\" v-model=\"massProduct.is_cross_sell\">\n {{ $t('product_is_cross_sell') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-checkbox v-model=\"massUpdateEnables.service_fee\">{{ $t('product_calculate_service_fee') }}</b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mh-50\">\n <b-input-group class=\"mt-2\">\n <template #prepend>\n <b-input-group-text>{{ $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input :disabled=\"!massUpdateEnables.service_fee\" type=\"number\" v-model=\"massProduct.service_fee\" :step=\"0.01\" :min=\"0\"></b-form-input>\n </b-input-group>\n <i class=\"hint-text mt-2\"\n v-if=\"massProduct.service_fee && ticket_fee_incl > 0\">{{ $t('product_companies_ticket_fee', {ticket_fee_incl: this.ticket_fee_incl}) }}</i>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.ticket_template_id\">\n {{ $t('event_ticket_template') }} <b-icon id=\"event-ticket-template-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </b-form-checkbox>\n <b-tooltip target=\"event-ticket-template-tooltip\" triggers=\"hover\">\n {{ $t(\"event_ticket_template_product_tooltip\") }}\n </b-tooltip>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-select\n v-model=\"massProduct.ticket_template_id\"\n text-field=\"name\"\n value-field=\"id\"\n :disabled=\"!massUpdateEnables.ticket_template_id\"\n :options=\"templates\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.vat_percentage\">\n {{ $t('product_vat_percentage') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-form-select v-model=\"massProduct.vat_percentage\" :options=\"vats\" :disabled=\"!massUpdateEnables.vat_percentage\"></b-form-select>\n <b-form-input v-if=\"massProduct.vat_percentage === 'different'\"\n type=\"number\"\n v-model=\"vat\"\n step=\"0.01\"\n :max=\"100\"\n :min=\"0\"\n class=\"mt-1\"\n @input=\"validateVat\"\n @change=\"validateVat\"\n :state=\"state.vat\"\n aria-describedby=\"event-vat\"\n :placeholder=\"$t('product_vat_percentage')\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.vat === false\" id=\"event-vat-\">\n {{ $t('event_vat_is_required') }}\n </b-form-invalid-feedback>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.min_buy\">\n {{ $t('product_min_buy') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-form-input type=\"number\" v-model=\"massProduct.min_buy\" :disabled=\"!massUpdateEnables.min_buy\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.max_buy\">\n {{ $t('product_max_buy') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-form-input type=\"number\" v-model=\"massProduct.max_buy\" :disabled=\"!massUpdateEnables.max_buy\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.scan_till_date_time\">\n {{ $t('product_scan_till_date_time') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <date-time-picker v-model=\"massProduct.scan_till_date_time\" :disabled=\"!massUpdateEnables.scan_till_date_time\" class=\"mb-0\" :state=\"null\"></date-time-picker>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.sale_sets\">\n {{ $t('product_sell_product_sets') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-form-input\n type=\"number\"\n :disabled=\"!massUpdateEnables.sale_sets\"\n :min=\"massProduct.min_buy ? massProduct.min_buy : 0\"\n :max=\"massProduct.max_buy ? massProduct.max_buy : 9999\"\n v-model=\"massProduct.sale_sets\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.description\">\n {{ $t('product_description') }}\n </b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"mb-0\">\n <b-textarea v-model=\"massProduct.description\" :disabled=\"!massUpdateEnables.description\" rows=\"6\"></b-textarea>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"d-flex align-items-center\">\n <b-form-checkbox v-model=\"massUpdateEnables.scan_color\">\n {{ $t('product_scan_color') }} <b-icon id=\"product-scan-color-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon>\n </b-form-checkbox>\n <b-tooltip target=\"product-scan-color-tooltip\" triggers=\"hover\">\n {{ $t(\"product_scan_color_explenation\") }}\n </b-tooltip>\n </b-col>\n <b-col>\n <color-picker class=\"mb-0\" v-if=\"massUpdateEnables.scan_color\" v-model=\"massProduct.scan_color\"></color-picker>\n <a v-if=\"massUpdateEnables.scan_color && massProduct.scan_color\" @click=\"massProduct.scan_color = null\" href=\"javascript:\" class=\"d-block font-16 mt-3\">\n {{ $t('product_remove_scan_color') }}\n </a>\n </b-col>\n </b-row>\n\n\n <div v-if=\"errors.length\" class=\"mt-2\">\n <div v-for=\"error in errors\" :key=\"error.message\" class=\"text-danger small\">{{\n $t(error.message, error.params)\n }}\n </div>\n </div>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveMassProduct()\" :disabled=\"!massProductsFilled || saving\" variant=\"success\">\n {{ $t('save') }} <b-icon v-if=\"saving\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n </b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"product-mass-update-success\" hide-footer hide-header size=\"size-l\">\n <div class=\"py-5\">\n <div class=\"py-4 text-center\">\n <b-icon icon=\"check-circle\" font-scale=\"10\" style=\"color:#529a47\"></b-icon>\n </div>\n <div class=\"text-center px-5\">\n <h3 class=\"my-3 font-weight-bold text-black\">{{ $t('event_product_mass_update_success') }}</h3>\n </div>\n </div>\n </b-modal>\n </div>\n</template>\n\n\n<script>\nimport api from '../api'\nimport StatusLabel from \"@/components/StatusLabel\";\nimport EventNav from \"@/components/EventNav\";\nimport axios from 'axios'\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport moment from 'moment'\nimport { mapActions, mapState } from \"vuex\";\nimport { deepClone, validateEmail } from \"@/functions\";\n\nexport default {\n components: {\n DateTimePicker,\n StatusLabel,\n EventNav\n },\n name: 'EventProducts',\n data () {\n return {\n saving: false,\n event: null,\n product: null,\n productGroups: null,\n no_products: true,\n selected_product_id: null,\n productTypes: [],\n ticket_fee_incl: 0,\n templates: [],\n vat: null,\n vats: [\n {value: '0', text: '0%'},\n {value: '6', text: '6%'},\n {value: '9', text: '9%'},\n {value: '19', text: '19%'},\n {value: '21', text: '21%'},\n {value: 'different', text: this.$t('different')}\n ],\n state: {\n vat: null,\n image: null,\n email: null\n },\n isBelongToProduct: false,\n selectedProducts: [],\n inputVisibilitySettings: {\n generateETicket: false,\n ticketTemplate: false,\n scanColor: false,\n productImage: false,\n minMaxPerOrder: false,\n belongToProduct: false,\n salesSets: false,\n sendAdditionalTicket: false,\n sendConfirmationEmail: false,\n scanTillDateTime: false,\n limitAmountToMaximumTickets: false,\n allowMultipleEvents: false,\n persons: false\n },\n isSendAdditionalTicket: false,\n additionalTicketsSelectedProducts: [],\n errors: [],\n events: [],\n eventsSearch: null,\n eventsShowArchived: false,\n validations: {\n name: {\n state: null,\n message: null,\n },\n product_type: {\n state: null,\n message: null,\n },\n stock: {\n state: null,\n message: null,\n },\n price: {\n state: null,\n message: null,\n },\n vat_percentage: {\n state: null,\n message: null,\n }\n },\n selectedProductsForEdit: [],\n massUpdateEnables: {\n group_name: false,\n product_type_id: false,\n status: false,\n stock: false,\n specific_sales_time: false,\n sale_starts_at: false,\n sale_ends_at: false,\n is_cross_sell: false,\n service_fee: false,\n ticket_template_id: false,\n vat_percentage: false,\n max_buy: false,\n min_buy: false,\n scan_till_date_time: false,\n sale_sets: false,\n description: false,\n scan_color: false,\n },\n massProduct: {\n group_name: null,\n product_type_id: null,\n status: null,\n stock: null,\n specific_sales_time: false,\n sale_starts_at: null,\n sale_ends_at: null,\n is_cross_sell: false,\n service_fee: null,\n ticket_template_id: null,\n vat_percentage: null,\n max_buy: null,\n min_buy: null,\n scan_till_date_time: null,\n sale_sets: null,\n description: null,\n scan_color: null,\n },\n }\n },\n created () {\n document.title = this.$t('backend_title_events_products')\n if (this.$store.state.user) {\n if (!this.$can('event_products_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().productsDependencies(this.$route.params.id).then(response => {\n if (this.user && this.user.company && this.user.company.country === 'nl') {\n this.ticket_fee_incl = Number(response.ticket_fee + (response.ticket_fee * (response.vat_percentage / 100))).toFixed(2)\n } else {\n this.ticket_fee_incl = Number(response.ticket_fee).toFixed(2)\n }\n })\n api.event().get(this.$route.params.id).then(event => {\n this.event = {\n ...event,\n isArchived: (moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\"\n }\n })\n api.ticket().getTemplates().then((templates) => {\n this.templates = [{id: null, name: 'Inherent from event'}].concat(templates)\n })\n api.event().all(true).then(events => {\n this.events = events;\n })\n this.getProducts()\n this.getProductTypes();\n this.loadProductTypeDonation()\n },\n methods: {\n trim (str) {\n return str.replace(/^\\s+|\\s+$/gm, '');\n },\n rgbaToHex (rgba) {\n var inParts = rgba.substring(rgba.indexOf(\"(\")).split(\",\"),\n r = parseInt(this.trim(inParts[0].substring(1)), 10),\n g = parseInt(this.trim(inParts[1]), 10),\n b = parseInt(this.trim(inParts[2]), 10),\n a = parseFloat(this.trim(inParts[3].substring(0, inParts[3].length - 1))).toFixed(2);\n var outParts = [\n r.toString(16),\n g.toString(16),\n b.toString(16),\n Math.round(a * 255).toString(16).substring(0, 2)\n ];\n\n // Pad single-digit output values\n outParts.forEach(function (part, i) {\n if (part.length === 1) {\n outParts[i] = '0' + part;\n }\n })\n\n return ('#' + outParts.join(''));\n },\n newProduct () {\n this.inputVisibilitySettings.generateETicket = false;\n this.inputVisibilitySettings.ticketTemplate = false;\n this.inputVisibilitySettings.productImage = false;\n this.inputVisibilitySettings.scanColor = false;\n this.inputVisibilitySettings.belongToProduct = false;\n this.inputVisibilitySettings.salesSets = false;\n this.inputVisibilitySettings.sendAdditionalTicket = false;\n this.inputVisibilitySettings.sendConfirmationEmail = false;\n this.inputVisibilitySettings.scanTillDateTime = false;\n this.inputVisibilitySettings.limitAmountToMaximumTickets = false;\n\n this.product = {\n name: null,\n product_type_id: this.productTypes[0].id,\n stock: null,\n price: null,\n vat_percentage: null,\n }\n this.$bvModal.show('new-product')\n },\n getProducts () {\n api.product().getGroups(this.$route.params.id).then(groups => {\n this.productGroups = groups.filter((group) => {\n this.no_products = false\n return group.products.length > 0\n })\n\n let no_product_group = this.$t('no_product_group')\n this.productGroups.forEach(function (part, index, groups) {\n if (part.type == 'default') {\n groups[index].name = no_product_group\n }\n });\n })\n },\n async onImageChange () {\n this.state.image = null;\n const validation = await this.validateImage(this.$refs['image'].files[0]);\n if (validation.size > 4e+6) { // 4e+6 is 4 MB\n this.state.image = 'product_image_validate_size';\n return;\n }\n if (validation.width > 120 || validation.height > 120) {\n this.state.image = 'product_image_validate_resolution';\n return;\n }\n this.saving = true;\n\n api.cdn().signUpload(this.$refs['image'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['image'].files[0], {\n headers: {\n 'Content-Type': this.$refs['image'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n this.saving = false;\n }).then(() => {\n // upload done, create the video in the database\n this.product.image = response.path\n this.product.image_url = response.target_url\n this.saving = false;\n })\n })\n },\n onSpecificSale () {\n this.product.sale_show_after_expire = true;\n },\n removeScanColor () {\n this.product.scan_color = null\n },\n removeProductImage () {\n this.saving = true;\n api.cdn().deleteUpload(this.product.image).then(() => {\n this.product.image = null;\n this.product.image_url = null;\n this.saving = false;\n this.saveProduct(true);\n }).catch(() => {\n this.saving = false;\n });\n },\n getProductTypes () {\n api.product().getProductTypes().then(productTypes => {\n this.productTypes = productTypes\n })\n },\n editProduct (p) {\n this.inputVisibilitySettings.generateETicket = false;\n this.inputVisibilitySettings.ticketTemplate = false;\n this.inputVisibilitySettings.productImage = false;\n this.inputVisibilitySettings.scanColor = false;\n this.inputVisibilitySettings.belongToProduct = false;\n this.inputVisibilitySettings.salesSets = false;\n this.inputVisibilitySettings.sendAdditionalTicket = false;\n this.inputVisibilitySettings.sendConfirmationEmail = false;\n this.inputVisibilitySettings.scanTillDateTime = false;\n this.inputVisibilitySettings.limitAmountToMaximumTickets = false;\n this.inputVisibilitySettings.allowMultipleEvents = false;\n\n this.state.image = null;\n\n const product = deepClone(p);\n this.selectedProducts = product.parents.map(p => p.parent_id);\n this.isBelongToProduct = !!this.selectedProducts.length;\n this.inputVisibilitySettings.belongToProduct = !!this.selectedProducts.length;\n this.additionalTicketsSelectedProducts = product.additions.map(p => p.child_id);\n this.isSendAdditionalTicket = !!this.additionalTicketsSelectedProducts.length;\n this.inputVisibilitySettings.sendAdditionalTicket = !!this.additionalTicketsSelectedProducts.length;\n this.inputVisibilitySettings.scanTillDateTime = !!product.scan_till_date_time;\n this.inputVisibilitySettings.limitAmountToMaximumTickets = !!product.limit_max_amount;\n\n this.inputVisibilitySettings.minMaxPerOrder = product.min_buy !== 0 || product.max_buy !== 20;\n\n this.inputVisibilitySettings.persons = !!product.persons;\n\n if (product.group_id) {\n let group = this.productGroups.find(group => {\n return group.id === product.group_id\n })\n if (group) {\n product.group_name = group.name\n }\n }\n product.calculate_service_fee = false;\n if (product.service_fee) {\n product.calculate_service_fee = true;\n }\n if (product.sale_starts_at) {\n product.specific_sales_time = true\n }\n if (product.sale_ends_at) {\n product.specific_sales_time = true\n }\n if (product.create_eticket === null) {\n product.create_eticket = true;\n }\n if (product.max_buy === null) {\n product.max_buy = 20;\n }\n\n if (product.ticket_template_id) {\n this.inputVisibilitySettings.ticketTemplate = true;\n }\n if (product.scan_color) {\n this.inputVisibilitySettings.scanColor = true;\n }\n if (product.image_url) {\n this.inputVisibilitySettings.productImage = true;\n }\n if (product.sale_sets) {\n this.inputVisibilitySettings.salesSets = true;\n }\n if (this.isBelongToProduct) {\n this.belongToProduct = true;\n }\n if (product.confirmation_email) {\n this.inputVisibilitySettings.sendConfirmationEmail = true;\n }\n\n if (product.allowed_events === null) {\n product.allowed_events = [];\n }\n\n if (product.allowed_events.length) {\n this.inputVisibilitySettings.allowMultipleEvents = true;\n }\n\n\n this.vat = null;\n if (![parseFloat('0'), parseFloat('6'), parseFloat('9'), parseFloat('19'), parseFloat('21')].includes(parseFloat(product.vat_percentage))) {\n this.vat = deepClone(product).vat_percentage;\n product.vat_percentage = 'different';\n }\n this.product = Object.assign({}, product)\n this.$bvModal.show('edit-product')\n },\n saveProduct (keep = false) {\n this.errors = [];\n if (this.product.group_name === this.$t('no_product_group')) {\n this.product.group_name = '';\n }\n if (!this.product.calculate_service_fee) {\n this.product.service_fee = 0\n }\n if (this.product.vat_percentage === 'different') {\n if (!this.vat) {\n this.state.vat = false;\n return;\n }\n this.product.vat_percentage = this.vat ?? 0;\n }\n if (!this.isBelongToProduct) {\n this.selectedProducts = [];\n }\n this.product = Object.assign(this.product, {\n dependency_products: this.selectedProducts,\n products_additions: this.additionalTicketsSelectedProducts\n });\n api.product().save(this.$route.params.id, this.product).then((response) => {\n if (response.errors && response.errors.length > 0) {\n this.errors = response.errors;\n return;\n }\n if (keep === false) {\n this.getProducts()\n this.$bvModal.hide('edit-product')\n this.product = null\n }\n this.$store.commit('success', 'product_saved')\n })\n },\n createProduct () {\n let valid = true;\n this.validations.name.state = null;\n this.validations.name.message = null;\n this.validations.product_type.state = null;\n this.validations.product_type.message = null;\n this.validations.stock.state = null;\n this.validations.stock.message = null;\n this.validations.price.state = null;\n this.validations.price.message = null;\n this.validations.vat_percentage.state = null;\n this.validations.vat_percentage.message = null;\n\n if (!this.product.name || !this.product.name.length) {\n this.validations.name.state = false;\n this.validations.name.message = 'field_is_required';\n valid = false;\n }\n if (!this.product.product_type_id) {\n this.validations.product_type.state = false;\n this.validations.product_type.message = 'field_is_required';\n valid = false;\n }\n if (this.product.product_type_id !== this.donation_product_id) {\n if (this.product.stock === null) {\n this.validations.stock.state = false;\n this.validations.stock.message = 'field_is_required';\n valid = false;\n }\n if (this.product.price === null) {\n this.validations.price.state = false;\n this.validations.price.message = 'field_is_required';\n valid = false;\n }\n if (this.product.vat_percentage === null) {\n this.validations.vat_percentage.state = false;\n this.validations.vat_percentage.message = 'field_is_required';\n valid = false;\n }\n }\n\n if (!valid) {\n return;\n }\n api.product().create(this.$route.params.id, this.product).then(() => {\n this.getProducts()\n this.$bvModal.hide('new-product')\n this.$bvModal.show('product-create-success')\n setTimeout(() => {\n this.$bvModal.hide('product-create-success')\n }, 3000)\n })\n },\n showDeleteModal (product_id) {\n this.$bvModal.show('delete-product')\n this.selected_product_id = product_id\n },\n deleteProduct () {\n this.$bvModal.hide('delete-product')\n\n api.product().delete(this.$route.params.id, this.selected_product_id).then(() => {\n this.selected_product_id = null\n this.getProducts()\n this.$store.commit('success', 'product_has_been_deleted')\n })\n },\n handleProductTypeChange (selectedType) {\n if (selectedType === this.donation_product_id) {\n this.product = Object.assign(this.product, {\n specific_sales_time: false,\n sale_starts_at: null,\n sale_ends_at: null,\n scan_till_date_time: null,\n stock: -1,\n max_buy: 1,\n min_buy: 0,\n price: 0,\n })\n }\n },\n handleMassProductTypeChange (selectedType) {\n if (selectedType === this.donation_product_id) {\n this.massProduct = Object.assign(this.massProduct, {\n specific_sales_time: false,\n sale_starts_at: null,\n sale_ends_at: null,\n scan_till_date_time: null,\n max_buy: 1,\n min_buy: 0,\n })\n }\n },\n validateVat (value) {\n this.state.vat = null;\n if (parseFloat(value) > 100) {\n this.vat = 100;\n value = 100;\n } else if (parseFloat(value) < 0) {\n this.vat = 0;\n value = 0;\n }\n },\n validateImage (file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n\n // When the file has been loaded\n reader.onload = (event) => {\n const img = new Image();\n\n // When the image has been loaded\n img.onload = () => {\n resolve({size: file.size, width: img.width, height: img.height});\n };\n\n // Set the source of the image\n img.src = event.target.result;\n };\n\n reader.onerror = (event) => {\n // Reject the Promise with the error\n reject(event.target.error);\n };\n\n\n // Read the file as a data URL\n reader.readAsDataURL(file);\n });\n },\n validateEmail (email) {\n this.state.email = null;\n if (!email) {\n return;\n }\n if (!validateEmail(email)) {\n this.state.email = false;\n }\n },\n groupToggle(event, groupId) {\n if(!event && groupId === 'all') {\n this.selectedProductsForEdit = [];\n return;\n }\n if(event) {\n if(groupId === 'all') {\n this.productGroups.forEach(group => {\n group.products.forEach(p => {\n this.selectedProductsForEdit.push(p.id)\n })\n })\n }\n else {\n this.productGroups.forEach(group => {\n if(group.id === groupId) {\n group.products.forEach(p => {\n // push if not exists\n if(!this.selectedProductsForEdit.includes(p.id)) {\n this.selectedProductsForEdit.push(p.id)\n }\n })\n }\n })\n }\n }\n else {\n const toRemove = [];\n this.productGroups.forEach(group => {\n if(group.id === groupId) {\n group.products.forEach(p => {\n toRemove.push(p.id)\n })\n }\n })\n this.selectedProductsForEdit = this.selectedProductsForEdit.filter(p => !toRemove.includes(p))\n }\n },\n saveMassProduct() {\n const payload = {};\n this.errors = [];\n\n for(const key in this.massUpdateEnables) {\n if(this.massUpdateEnables[key]) {\n payload[key] = this.massProduct[key];\n if(key === 'specific_sales_time') {\n if(this.massProduct.specific_sales_time) {\n if(!this.massProduct.sale_starts_at || !this.massProduct.sale_ends_at) {\n this.errors.push({message: 'product_specific_sale_times_required'})\n }\n if(this.massProduct.sale_starts_at && this.massProduct.sale_ends_at && this.massProduct.sale_starts_at >= this.massProduct.sale_ends_at) {\n this.errors.push({message: 'end_before_start_date'})\n }\n payload.sale_starts_at = this.massProduct.sale_starts_at;\n payload.sale_ends_at = this.massProduct.sale_ends_at;\n }\n else {\n payload.sale_starts_at = null;\n payload.sale_ends_at = null;\n }\n }\n }\n }\n\n if(this.errors.length) {\n return;\n }\n payload.ids = this.selectedProductsForEdit;\n\n this.saving = true;\n api.product().bulkUpdate(this.event.id, payload).then(() => {\n this.selectedProductsForEdit = [];\n this.$refs.checkAll.checked = false;\n for(const ref in this.$refs) {\n if(ref.includes('groupCheckbox')) {\n this.$refs[ref].checked = false;\n }\n }\n this.$bvModal.hide('mass-update-products')\n this.$bvModal.show('product-mass-update-success')\n setTimeout(() => {\n this.$bvModal.hide('product-mass-update-success')\n }, 3000)\n this.getProducts();\n }).finally(() => {\n this.saving = false;\n })\n },\n showMassUpdateModal() {\n this.massProduct = {\n group_name: null,\n product_type_id: null,\n status: null,\n specific_sales_time: false,\n sale_starts_at: null,\n sale_ends_at: null,\n is_cross_sell: false,\n service_fee: null,\n ticket_template_id: null,\n vat_percentage: null,\n max_buy: null,\n min_buy: null,\n scan_till_date_time: null,\n sale_sets: null,\n description: null,\n scan_color: null,\n };\n this.massUpdateEnables = {\n group_name: false,\n product_type_id: false,\n status: false,\n stock: false,\n specific_sales_time: false,\n sale_starts_at: false,\n sale_ends_at: false,\n is_cross_sell: false,\n service_fee: false,\n ticket_template_id: false,\n vat_percentage: false,\n max_buy: false,\n min_buy: false,\n scan_till_date_time: false,\n sale_sets: false,\n description: false,\n scan_color: false,\n }\n this.$bvModal.show('mass-update-products')\n },\n ...mapActions(['loadProductTypeDonation'])\n },\n computed: {\n products () {\n let products = [];\n this.productGroups.forEach(group => {\n products = products.concat(group.products);\n })\n return products;\n },\n eventsList () {\n if (!this.events.length) {\n return [];\n }\n return this.events.filter(event => {\n return event.id !== parseInt(this.$route.params.id) &&\n (this.eventsSearch ? event.name.toLowerCase().includes(this.eventsSearch.toLowerCase()) : true) &&\n (this.eventsShowArchived ? ['live', 'archived'].includes(event.status) : event.status === 'live')\n })\n },\n hasMultiGroups () {\n return this.productGroups.length > 1 || (this.productGroups.length === 1 && this.productGroups[0].type !== 'default');\n },\n massProductsFilled () {\n let isEmpty = true;\n for(const key in this.massUpdateEnables) {\n if(this.massUpdateEnables[key]) {\n isEmpty = false;\n if (this.massProduct[key] === null) {\n return false;\n }\n }\n }\n if (isEmpty) {\n return false;\n }\n return true;\n },\n ...mapState(['donation_product_id', 'user']),\n },\n watch: {\n '$store.state.user': {\n handler () {\n if (!this.$can('event_products_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n<style lang=\"scss\">\n#edit-product {\n padding-left: 0px !important;\n}\n</style>\n<style scoped>\ndiv.one-colorpicker div.one-colorpanel div.one-color-value div.one-type-hex {\n display: block !important\n}\n\ndiv.one-colorpicker div.one-colorpanel div.one-color-value div.one-type-rgb {\n display: none !important\n}\n\n/deep/ .one-color-stash-wrap ul li.transparent, /deep/ .one-opacity {\n display: none !important\n}\n\n/deep/ .one-color-toggle {\n display: none !important;\n width: 0;\n height: 0;\n}\n\n.responsive th:nth-of-type(1) {\n width: 30px;\n color: white;\n}\n.responsive th:nth-of-type(2) {\n width: 15%;\n color: white;\n}\n\n.responsive th:nth-of-type(3) {\n width: 35%;\n color: white;\n}\n\n.responsive th:nth-of-type(4) {\n width: 15%;\n color: white;\n}\n\n.responsive th:nth-of-type(5) {\n width: 15%;\n color: white;\n}\n\n.responsive th:nth-of-type(6) {\n width: 15%;\n color: white;\n}\n\n.table thead th {\n vertical-align: bottom;\n border-bottom: 1px solid transparent !important;\n}\n\n.table tr {\n border-bottom: 1px solid #DEE2E6;\n}\n\n.table td {\n border-top: 0;\n}\n\n.flexing {\n display: flex;\n\n}\n\n.text-black {\n color: #4D4D4D;\n}\n\n.input-group-text {\n border: 0\n}\n\n.manage-btn {\n float: left;\n margin-right: 10px !important;\n}\n\n.delete-btn {\n float: left;\n cursor: pointer;\n}\n\ni.hint-text {\n font-size: 9pt\n}\n\n.font-14 {\n font-size: 14px;\n}\n\ntbody:hover button {\n background-color: unset !important;\n color: unset !important;\n border-color: #ddd !important;\n}\n\ntbody button:hover {\n background-color: #F0B52D !important;\n color: #fff !important;\n border-color: #F0B52D !important;\n}\n\n.Myimg {\n max-width: 100%;\n width: auto;\n}\n\n@media (max-width: 1550px) {\n h2 {\n font-size: 2rem;\n }\n\n .responsive th:nth-of-type(5) {\n width: 25%;\n }\n}\n\n@media (max-width: 1000px) {\n table.b-table thead tr th:first-child, table.b-table tbody tr td:first-of-type {\n padding-left: 0.75rem;\n display: flex;\n justify-content: center;\n }\n\n table.b-table tbody tr td:last-child {\n padding: 15px;\n }\n\n .manage-btn, .delete-btn {\n float: unset;\n }\n\n h2 {\n margin-bottom: 2rem;\n }\n}\n\n\n\n.allowed-events-container {\n overflow-y: scroll;\n overflow-x: hidden;\n max-height: 250px;\n}\n\n@media (min-width: 992px) {\n .modal-size-l {\n max-width: 660px !important;\n }\n}\n.td-group-name {\n font-weight: bold;\n font-size: 17px;\n color: #000000 !important;\n}\n\n.products-selection-btn {\n color: #1a3e58;\n border: 1px solid #1a3e58;\n border-radius: 10px;\n padding: 6px 8px;\n display:flex;\n align-items:center;\n gap:8px;\n border-radius: 5px;\n}\n.products-selection-btn span {\n padding: 7px;\n background-color: #1a3e58;\n color: #ffffff;\n border-radius: 5px;\n}\n@media (max-width: 576px) {\n .products-selection-btn {\n width:100%;\n margin-bottom:1rem;\n justify-content: space-between;\n }\n .btn.btn-new{\n width:100%\n }\n img.event-image, .Myimg {\n min-width: 100%;\n }\n}\n.mh-50 {\n min-height: 50px !important;\n}\n.mass-update-body {\n max-height: 600px;\n overflow-y: auto;\n overflow-x: hidden;\n padding: 10px;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventProducts.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventProducts.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventProducts.vue?vue&type=template&id=3fbd8188&scoped=true\"\nimport script from \"./EventProducts.vue?vue&type=script&lang=js\"\nexport * from \"./EventProducts.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventProducts.vue?vue&type=style&index=0&id=3fbd8188&prod&lang=scss\"\nimport style1 from \"./EventProducts.vue?vue&type=style&index=1&id=3fbd8188&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3fbd8188\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.company)?_c('b-container',[_c('section',{staticClass:\"event-section\"},[_c('div',{},[(_vm.company.show_calendar)?_c('div',{staticClass:\"main-wrapper mb-5\"},[_c('div',{staticClass:\"calender-header\"},[_c('button',{staticClass:\"button arrow-left\",on:{\"click\":function($event){return _vm.handleDown()}}}),_c('div',{staticClass:\"month-name-wrap\"},[_c('p',{staticStyle:{\"font-weight\":\"700\",\"text-align\":\"center\",\"margin-bottom\":\"0px\"}},[_vm._v(_vm._s(_vm.months[_vm.SELECTED_MONTH].fullname)+\" - \"+_vm._s(_vm.SELECTED_YEAR))])]),_c('button',{staticClass:\"button arrow-right\",on:{\"click\":function($event){return _vm.handleUp()}}})]),_c('div',{staticClass:\"calendar-wrap\"},[_vm._l((_vm.weekdays),function(w){return _c('div',{key:JSON.stringify(w) + Math.random(),staticClass:\"week-days\"},[_c('span',{staticClass:\"mobile\"},[_vm._v(_vm._s(w.name))]),_c('span',{staticClass:\"desktop\"},[_vm._v(_vm._s(w.fullname))])])}),_vm._l((_vm.monthStartingDays),function(i){return _c('div',{key:JSON.stringify(i) + Math.random(),staticClass:\"next-month-day-item\"},[_c('div',{staticClass:\"prev-date-text-wrap\"},[_c('p',{staticClass:\"prev-date-text\"},[_vm._v(\" \"+_vm._s(_vm.prevMonthTotalDays-(_vm.monthStartingDays-i)))])]),(_vm.events(i).length>0)?_c('div',{staticClass:\"events-wrapper\"},_vm._l((_vm.events(i,_vm.SELECTED_MONTH>0?_vm.SELECTED_MONTH-1:11)),function(e){return _c('div',{key:JSON.stringify(e) + Math.random(),class:(e.imgURL) ? 'event-wrap with-image' : 'event-wrap',style:({\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n })},[(e.day===i && _vm.company.calendar_sold_ratio)?_c('div',{staticClass:\"event-status\",style:({backgroundColor: _vm.statusColor(e.status)})}):_vm._e(),(e.day===i)?_c('a',{staticClass:\"event-text\",attrs:{\"href\":`/p/` + e.url + (_vm.$route.query.ft_campaign_name ? ('/?ft_campaign_name='+_vm.$route.query.ft_campaign_name) : ''),\"target\":\"_blank\"}},[_vm._v(_vm._s(e.text))]):_vm._e()])}),0):_vm._e()])}),_vm._l((_vm.monthTotalDays),function(i){return _c('div',{key:JSON.stringify(i) + Math.random(),staticClass:\"curr-month-day-item\"},[_c('div',{staticClass:\"curr-date-text-wrap\"},[_c('p',{staticClass:\"curr-date-text\"},[_vm._v(_vm._s(i))])]),(_vm.events(i,_vm.SELECTED_MONTH).length > 0)?_c('div',{staticClass:\"events-wrapper\"},_vm._l((_vm.events(i,_vm.SELECTED_MONTH)),function(e){return _c('div',{key:JSON.stringify(e) + Math.random(),class:(e.imgURL) ? 'event-wrap with-image' : 'event-wrap',style:({\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n })},[(e.day===i && _vm.company.calendar_sold_ratio)?_c('div',{staticClass:\"event-status\",style:({backgroundColor: _vm.statusColor(e.status)})}):_vm._e(),(e.day===i)?_c('a',{staticClass:\"event-text\",attrs:{\"href\":`/p/` + e.url + (_vm.$route.query.ft_campaign_name ? ('/?ft_campaign_name='+_vm.$route.query.ft_campaign_name) : ''),\"target\":\"_blank\"}},[_vm._v(\" \"+_vm._s(e.text)+\" \")]):_vm._e()])}),0):_vm._e()])}),_vm._l((7-(_vm.monthStartingDays+_vm.monthTotalDays)%7),function(i){return _c('div',{key:JSON.stringify(i) + Math.random(),staticClass:\"next-month-day-item\",class:(_vm.monthStartingDays+_vm.monthTotalDays)%7>0?'':'hidden'},[_c('div',{staticClass:\"prev-date-text-wrap\"},[_c('p',{staticClass:\"prev-date-text\"},[_vm._v(_vm._s(i))])]),(_vm.events(i,_vm.SELECTED_MONTH<11?_vm.SELECTED_MONTH+1:0).length>0 && i===1)?_c('div',{staticClass:\"events-wrapper\"},_vm._l((_vm.events(i, _vm.SELECTED_MONTH<11?_vm.SELECTED_MONTH+1:0)),function(e){return _c('div',{key:JSON.stringify(e) + Math.random(),class:(e.imgURL) ? 'event-wrap with-image' : 'event-wrap',style:({\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n })},[(e.day===i && _vm.company.calendar_sold_ratio)?_c('div',{staticClass:\"event-status\",style:({backgroundColor: _vm.statusColor(e.status)})}):_vm._e(),(e.day===i)?_c('a',{staticClass:\"event-text\",attrs:{\"href\":`/p/` + e.url + (_vm.$route.query.ft_campaign_name ? ('/?ft_campaign_name='+_vm.$route.query.ft_campaign_name) : ''),\"target\":\"_blank\"}},[_vm._v(_vm._s(e.text))]):_vm._e()])}),0):_vm._e()])})],2)]):_vm._e(),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},_vm._l((_vm.pointsOfSale),function(pos){return _c('pos',{key:pos.id,attrs:{\"pos\":pos}})}),1)])])])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"event-card\",class:[_vm.pos.event.image == null || _vm.pos.event.image == '' ? 'n-img' : '']},[(_vm.pos.event.image)?_c('div',{staticClass:\"img-container\"},[_c('img',{staticClass:\"cover-img\",attrs:{\"src\":_vm.pos.event.image_url,\"alt\":_vm.pos.event.name}})]):_vm._e(),_c('div',{staticClass:\"info-block\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('h3',{staticClass:\"event-lbl\"},[_vm._v(_vm._s(_vm.pos.event.name))]),_c('div',{staticClass:\"date-block\"},[_c('div',{staticClass:\"icon\"},[_c('span',[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"18\",\"height\":\"18\",\"viewBox\":\"0 0 18 18\"}},[_c('g',{attrs:{\"transform\":\"translate(0.25 0.25)\"}},[_c('g',{attrs:{\"transform\":\"translate(7.217 3.63)\"}},[_c('path',{attrs:{\"d\":\"M239.563,124.354l-2.182-1.636v-3.333a.606.606,0,0,0-1.212,0v3.636a.6.6,0,0,0,.242.485l2.424,1.818a.606.606,0,0,0,.727-.97Z\",\"transform\":\"translate(-236.169 -118.779)\",\"fill\":_vm.company.layout.secondary_color,\"stroke\":_vm.company.layout.primary_color,\"stroke-width\":\"0.5\"}})]),_c('g',[_c('path',{attrs:{\"d\":\"M7.823,0a7.823,7.823,0,1,0,7.823,7.823A7.832,7.832,0,0,0,7.823,0Zm0,14.435a6.611,6.611,0,1,1,6.611-6.611A6.62,6.62,0,0,1,7.823,14.435Z\",\"fill\":_vm.company.layout.primary_color,\"stroke\":_vm.company.layout.primary_color,\"stroke-width\":\"0.5\"}})])])])])]),(!_vm.pos.event.continuous)?_c('div',{staticClass:\"date-text\"},[_vm._v(_vm._s(_vm.getDateFormat(_vm.pos.event.starts_at))+\" - \"+_vm._s(_vm.getDateFormat(_vm.pos.event.ends_at)))]):_vm._e()]),(_vm.pos.event.venue)?_c('div',{staticClass:\"date-block\"},[_c('div',{staticClass:\"icon\"},[_c('span',[_c('svg',{attrs:{\"width\":\"18\",\"viewBox\":\"0 0 8.4666669 8.4666669\",\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:cc\":\"http://creativecommons.org/ns#\",\"xmlns:dc\":\"http://purl.org/dc/elements/1.1/\",\"xmlns:inkscape\":\"http://www.inkscape.org/namespaces/inkscape\",\"xmlns:rdf\":\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\"xmlns:sodipodi\":\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\",\"xmlns:svg\":\"http://www.w3.org/2000/svg\"}},[_c('defs',{attrs:{\"id\":\"defs2\"}}),_c('g',{attrs:{\"id\":\"layer1\",\"transform\":\"translate(0,-288.53332)\"}},[_c('path',{staticStyle:{\"color\":\"#000000\",\"font-style\":\"normal\",\"font-variant\":\"normal\",\"font-weight\":\"normal\",\"font-stretch\":\"normal\",\"font-size\":\"medium\",\"line-height\":\"normal\",\"font-family\":\"sans-serif\",\"font-variant-ligatures\":\"normal\",\"font-variant-position\":\"normal\",\"font-variant-caps\":\"normal\",\"font-variant-numeric\":\"normal\",\"font-variant-alternates\":\"normal\",\"font-feature-settings\":\"normal\",\"text-indent\":\"0\",\"text-align\":\"start\",\"text-decoration\":\"none\",\"text-decoration-line\":\"none\",\"text-decoration-style\":\"solid\",\"text-decoration-color\":\"#000000\",\"letter-spacing\":\"normal\",\"word-spacing\":\"normal\",\"text-transform\":\"none\",\"writing-mode\":\"lr-tb\",\"direction\":\"ltr\",\"text-orientation\":\"mixed\",\"dominant-baseline\":\"auto\",\"baseline-shift\":\"baseline\",\"text-anchor\":\"start\",\"white-space\":\"normal\",\"shape-padding\":\"0\",\"clip-rule\":\"nonzero\",\"display\":\"inline\",\"overflow\":\"visible\",\"visibility\":\"visible\",\"opacity\":\"1\",\"isolation\":\"auto\",\"mix-blend-mode\":\"normal\",\"color-interpolation\":\"sRGB\",\"color-interpolation-filters\":\"linearRGB\",\"solid-color\":\"#000000\",\"solid-opacity\":\"1\",\"vector-effect\":\"none\",\"fill\":\"#000000\",\"fill-opacity\":\"1\",\"fill-rule\":\"nonzero\",\"stroke\":\"none\",\"stroke-width\":\"0.52916664\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-miterlimit\":\"4\",\"stroke-dasharray\":\"none\",\"stroke-dashoffset\":\"0\",\"stroke-opacity\":\"1\",\"paint-order\":\"stroke fill markers\",\"color-rendering\":\"auto\",\"image-rendering\":\"auto\",\"shape-rendering\":\"auto\",\"text-rendering\":\"auto\",\"enable-background\":\"accumulate\"},attrs:{\"d\":\"m 4.2324219,288.79688 c -1.6042437,0 -2.9101556,1.30591 -2.9101563,2.91015 -10e-7,2.82277 2.7460938,4.96875 2.7460938,4.96875 a 0.26460978,0.26460978 0 0 0 0.3300781,0 c 0,0 2.7460996,-2.14598 2.7460937,-4.96875 -3.4e-6,-1.60424 -1.3078657,-2.91015 -2.9121093,-2.91015 z m 0,0.52929 c 1.3182605,0 2.3828097,1.0626 2.3828125,2.38086 4.8e-6,2.30926 -2.0910618,4.13374 -2.3808594,4.38086 -0.2884142,-0.24588 -2.3828134,-2.0707 -2.3828125,-4.38086 5e-7,-1.31826 1.0625988,-2.38086 2.3808594,-2.38086 z\",\"id\":\"path929\"}}),_c('path',{staticStyle:{\"color\":\"#000000\",\"font-style\":\"normal\",\"font-variant\":\"normal\",\"font-weight\":\"normal\",\"font-stretch\":\"normal\",\"font-size\":\"medium\",\"line-height\":\"normal\",\"font-family\":\"sans-serif\",\"font-variant-ligatures\":\"normal\",\"font-variant-position\":\"normal\",\"font-variant-caps\":\"normal\",\"font-variant-numeric\":\"normal\",\"font-variant-alternates\":\"normal\",\"font-feature-settings\":\"normal\",\"text-indent\":\"0\",\"text-align\":\"start\",\"text-decoration\":\"none\",\"text-decoration-line\":\"none\",\"text-decoration-style\":\"solid\",\"text-decoration-color\":\"#000000\",\"letter-spacing\":\"normal\",\"word-spacing\":\"normal\",\"text-transform\":\"none\",\"writing-mode\":\"lr-tb\",\"direction\":\"ltr\",\"text-orientation\":\"mixed\",\"dominant-baseline\":\"auto\",\"baseline-shift\":\"baseline\",\"text-anchor\":\"start\",\"white-space\":\"normal\",\"shape-padding\":\"0\",\"clip-rule\":\"nonzero\",\"display\":\"inline\",\"overflow\":\"visible\",\"visibility\":\"visible\",\"opacity\":\"1\",\"isolation\":\"auto\",\"mix-blend-mode\":\"normal\",\"color-interpolation\":\"sRGB\",\"color-interpolation-filters\":\"linearRGB\",\"solid-color\":\"#000000\",\"solid-opacity\":\"1\",\"vector-effect\":\"none\",\"fill\":\"#000000\",\"fill-opacity\":\"1\",\"fill-rule\":\"nonzero\",\"stroke\":\"none\",\"stroke-width\":\"0.52916664\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-miterlimit\":\"4\",\"stroke-dasharray\":\"none\",\"stroke-dashoffset\":\"0\",\"stroke-opacity\":\"1\",\"paint-order\":\"stroke fill markers\",\"color-rendering\":\"auto\",\"image-rendering\":\"auto\",\"shape-rendering\":\"auto\",\"text-rendering\":\"auto\",\"enable-background\":\"accumulate\"},attrs:{\"d\":\"m 4.2324219,290.38477 c -0.7274912,0 -1.3222633,0.59477 -1.3222657,1.32226 -4.5e-6,0.7275 0.5947697,1.32422 1.3222657,1.32422 0.727496,0 1.3242233,-0.59672 1.3242187,-1.32422 -2.3e-6,-0.72749 -0.5967275,-1.32226 -1.3242187,-1.32226 z m 0,0.52929 c 0.4415089,0 0.7949204,0.35146 0.7949219,0.79297 2.7e-6,0.44151 -0.35341,0.79492 -0.7949219,0.79492 -0.441512,0 -0.7929715,-0.35341 -0.7929688,-0.79492 1.4e-6,-0.44151 0.3514598,-0.79297 0.7929688,-0.79297 z\",\"id\":\"circle931\"}})])])])]),_c('div',{staticClass:\"date-text\"},[_vm._v(_vm._s(_vm.getVenueAddress(_vm.pos.event.venue)))])]):_vm._e()]),_c('b-col',{staticClass:\"pos-btn-div mt-3 mt-md-0 text-right d-flex justify-content-start justify-content-md-end align-items-center\",attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('div',{staticClass:\"btn-container\"},[_c('a',{staticClass:\"btn pos-btn-order\",attrs:{\"href\":`/p/` + _vm.pos.url + (_vm.$route.query.ft_campaign_name ? ('/?ft_campaign_name='+_vm.$route.query.ft_campaign_name) : '')}},[_vm._v(_vm._s(_vm.$t('pos_open')))])])])],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div\n class=\"event-card\"\n :class=\"[pos.event.image == null || pos.event.image == '' ? 'n-img' : '']\"\n >\n <div class=\"img-container\" v-if=\"pos.event.image\">\n <img :src=\"pos.event.image_url\" class=\"cover-img\" :alt=\"pos.event.name\" /> \n </div>\n\n <div class=\"info-block\">\n <b-row>\n <b-col cols=\"12\" md=\"6\">\n <h3 class=\"event-lbl\">{{ pos.event.name }}</h3>\n\n <div class=\"date-block\">\n <div class=\"icon\">\n <span>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"18\"\n height=\"18\"\n viewBox=\"0 0 18 18\"\n >\n <g transform=\"translate(0.25 0.25)\">\n <g transform=\"translate(7.217 3.63)\">\n <path\n d=\"M239.563,124.354l-2.182-1.636v-3.333a.606.606,0,0,0-1.212,0v3.636a.6.6,0,0,0,.242.485l2.424,1.818a.606.606,0,0,0,.727-.97Z\"\n transform=\"translate(-236.169 -118.779)\"\n :fill=\"company.layout.secondary_color\"\n :stroke=\"company.layout.primary_color\"\n stroke-width=\"0.5\"\n />\n </g>\n <g>\n <path\n d=\"M7.823,0a7.823,7.823,0,1,0,7.823,7.823A7.832,7.832,0,0,0,7.823,0Zm0,14.435a6.611,6.611,0,1,1,6.611-6.611A6.62,6.62,0,0,1,7.823,14.435Z\"\n :fill=\"company.layout.primary_color\"\n :stroke=\"company.layout.primary_color\"\n stroke-width=\"0.5\"\n />\n </g>\n </g>\n </svg>\n </span>\n </div>\n\n <div class=\"date-text\" v-if=\"!pos.event.continuous\">{{ getDateFormat(pos.event.starts_at) }} - {{ getDateFormat(pos.event.ends_at) }}</div>\n </div>\n\n <div v-if=\"pos.event.venue\" class=\"date-block\">\n <div class=\"icon\">\n <span>\n <svg width=\"18\" viewBox=\"0 0 8.4666669 8.4666669\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\" xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\" xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\" xmlns:sodipodi=\"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\" xmlns:svg=\"http://www.w3.org/2000/svg\">\n <defs id=\"defs2\"/>\n <g id=\"layer1\" transform=\"translate(0,-288.53332)\">\n <path d=\"m 4.2324219,288.79688 c -1.6042437,0 -2.9101556,1.30591 -2.9101563,2.91015 -10e-7,2.82277 2.7460938,4.96875 2.7460938,4.96875 a 0.26460978,0.26460978 0 0 0 0.3300781,0 c 0,0 2.7460996,-2.14598 2.7460937,-4.96875 -3.4e-6,-1.60424 -1.3078657,-2.91015 -2.9121093,-2.91015 z m 0,0.52929 c 1.3182605,0 2.3828097,1.0626 2.3828125,2.38086 4.8e-6,2.30926 -2.0910618,4.13374 -2.3808594,4.38086 -0.2884142,-0.24588 -2.3828134,-2.0707 -2.3828125,-4.38086 5e-7,-1.31826 1.0625988,-2.38086 2.3808594,-2.38086 z\" id=\"path929\" style=\"color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916664;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke fill markers;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate\"/>\n <path d=\"m 4.2324219,290.38477 c -0.7274912,0 -1.3222633,0.59477 -1.3222657,1.32226 -4.5e-6,0.7275 0.5947697,1.32422 1.3222657,1.32422 0.727496,0 1.3242233,-0.59672 1.3242187,-1.32422 -2.3e-6,-0.72749 -0.5967275,-1.32226 -1.3242187,-1.32226 z m 0,0.52929 c 0.4415089,0 0.7949204,0.35146 0.7949219,0.79297 2.7e-6,0.44151 -0.35341,0.79492 -0.7949219,0.79492 -0.441512,0 -0.7929715,-0.35341 -0.7929688,-0.79492 1.4e-6,-0.44151 0.3514598,-0.79297 0.7929688,-0.79297 z\" id=\"circle931\" style=\"color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52916664;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:stroke fill markers;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate\"/>\n </g>\n </svg>\n </span>\n </div>\n <div class=\"date-text\">{{ getVenueAddress(pos.event.venue) }}</div>\n </div>\n </b-col>\n <b-col cols=\"12\" md=\"6\" class=\"pos-btn-div mt-3 mt-md-0 text-right d-flex justify-content-start justify-content-md-end align-items-center\">\n <div class=\"btn-container\">\n <a :href=\"`/p/` + pos.url + ($route.query.ft_campaign_name ? ('/?ft_campaign_name='+$route.query.ft_campaign_name) : '')\" class=\"btn pos-btn-order\">{{ $t('pos_open') }}</a>\n </div>\n </b-col>\n </b-row>\n\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment'\nimport { mapState } from 'vuex';\nexport default {\n props: {\n pos: {\n type: Object,\n default: null,\n },\n },\n\n data() {\n return {\n readMoreId: null,\n };\n },\n\n methods: {\n readMore(id) {\n if (this.readMoreId) {\n this.readMoreId = null;\n } else {\n this.readMoreId = id;\n }\n },\n getDateFormat(date) {\n return moment(date).format('D MMM YYYY HH:mm');\n },\n getVenueAddress(venue) {\n let location = '';\n if(venue.name) {\n location = venue.name;\n }\n if(venue.address) {\n location = location + (location.length ? ' | ' : '') + venue.address;\n }\n if(venue.zip) {\n location = location + (location.length ? ', ' : '') + venue.zip;\n }\n if(venue.city) {\n location = location + (location.length ? ', ' : '') + venue.city;\n }\n if(venue.country_code) {\n location = location + (location.length ? ', ' : '') + venue.country_code;\n }\n return location;\n }\n },\n\n computed: {\n ...mapState(['company'])\n }\n};\n</script>\n\n<style lang=\"scss\" scoped>\n\n// color\n$white: #fff;\n$black: #303030;\n$black2: #4e4e4e;\n$red: #9b0000;\n$primary: #40cd8a;\n$dark: $black;\n\n// Body\n$body-bg: #fcfdff;\n\n// Typography\n$font-family-sans-serif: \"Poppins\", sans-serif;\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px,\n xxl: 1166px,\n);\n\n\n.event-card {\n width: 100%;\n max-width: 1166px;\n margin-left: auto;\n margin-right: auto;\n background: $white 0% 0% no-repeat padding-box;\n box-shadow: 0px 0px 10px #00000017;\n border-radius: 6px;\n display: grid;\n padding:0 35px;\n margin-bottom: 1px;\n min-height:147px;\n \n .cover-img {\n object-fit: cover;\n object-position: center;\n }\n\n .img-container img{\n width:150px;\n height:147px;\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n }\n\n .info-block {\n\n .event-lbl {\n font-weight: 600;\n font-size: 24px;\n }\n\n .date-block {\n display: flex;\n gap: 9px;\n align-items: baseline;\n &:not(:last-of-type){\n margin-bottom:3px\n }\n .date-text {\n font-size: 16px;\n color: #909090;\n }\n }\n\n .about-block {\n padding-top: 26px;\n width: 100%;\n\n .text {\n font-size: 15px;\n margin-bottom: 0px;\n line-height: 1.75;\n overflow: hidden;\n max-height: 80px;\n text-overflow: ellipsis;\n transition: max-height 0.35s ease-in-out;\n\n &.show {\n max-height: 700px !important;\n }\n }\n\n .read-more {\n padding-top: 5px;\n\n .btn {\n font-size: 15px;\n font-weight: 500;\n padding: 0;\n\n &:hover {\n color: lighten($color: $red, $amount: 5%);\n }\n }\n }\n }\n }\n\n .btn-container {\n .btn {\n box-shadow: 0px 3px 8px #00000029;\n border-radius: 6px;\n font-size: 18px;\n font-weight: 500;\n color: $white;\n padding: 10.5px 28px;\n white-space: nowrap;\n }\n .btn.btn-success{\n background-color:#2AA937\n }\n .btn.btn-success:hover{\n background-color:darken($color:#2AA937, $amount: 10%)\n }\n }\n\n .content-block {\n display: flex;\n gap: 20px;\n justify-content: space-between;\n align-items: flex-end;\n padding:0;\n box-shadow:none;\n margin-top:auto\n }\n\n .info-block{\n padding: 16px 0;\n display:flex;\n flex-direction:column;\n justify-content: center;\n }\n\n &:not(.n-img) {\n grid-template-columns: 180px 1fr;\n padding: 0;\n padding-right:35px;\n .info-block {\n .about-block {\n max-width: 506px;\n }\n }\n }\n\n &:is(.n-img) {\n grid-template-columns: 1fr;\n padding-top: 10px;\n padding-bottom: 10px;\n\n .info-block {\n .about-block {\n max-width: 870px;\n }\n }\n }\n \n}\n\n@media (max-width: 991px) {\n .event-card {\n padding-inline-start: 20px;\n .cover-img {\n width: 100%;\n height: 100%;\n }\n\n .content-block {\n flex-direction: column;\n gap: 10px;\n align-items: flex-start;\n }\n .info-block {\n padding-top: 10px;\n .event-lbl {\n font-size: 20px;\n margin-bottom: 4px;\n }\n\n .date-block {\n .date-text {\n font-size: 12px;\n }\n }\n\n .about-block {\n padding-top: 10px;\n\n .text {\n font-size: 12px;\n line-height: 1.5;\n max-height: 62px;\n }\n\n .read-more {\n padding-top: 0;\n\n .btn {\n font-size: 12px;\n }\n }\n }\n }\n\n .btn-container {\n .btn {\n font-size: 12px;\n padding: 6.5px 22px;\n }\n }\n }\n}\n\n@media (max-width: 767px) {\n .event-card {\n display: flex;\n flex-direction: column;\n min-height:unset;\n &:not(.n-img) {\n grid-template-columns: minmax(180px, 260px) 1fr;\n gap: 0px;\n padding-right:0\n }\n \n &:is(.n-img) {\n padding:0\n }\n \n .img-container {\n max-width: 100%;\n width: 100%;\n max-height: 100%;\n margin: auto;\n height: 100%;\n padding: 17px 20px 0 20px;\n img{\n border-radius: 6px!important;\n width: 100%;\n height: 100%;\n max-width: 100%;\n max-height: 100%;\n }\n\n }\n\n .info-block {\n padding:17px 20px;\n\n .event-lbl {\n font-size: 16px;\n }\n }\n\n .date-block {\n margin-bottom:0!important;\n .icon {\n svg {\n width: 12px;\n height: 12px;\n }\n }\n }\n }\n}\n\n@media (max-width: 415px) {\n .img-container{\n width:100%!important;\n max-width:100%!important;\n max-height:unset!important;\n img{\n max-width:100% !important;\n }\n }\n\n}\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosCard.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosCard.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PosCard.vue?vue&type=template&id=43226771&scoped=true\"\nimport script from \"./PosCard.vue?vue&type=script&lang=js\"\nexport * from \"./PosCard.vue?vue&type=script&lang=js\"\nimport style0 from \"./PosCard.vue?vue&type=style&index=0&id=43226771&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"43226771\",\n null\n \n)\n\nexport default component.exports","<template>\n <b-container v-if=\"company\">\n <section class=\"event-section\">\n <div class=\"\">\n \n <div class=\"main-wrapper mb-5\" v-if=\"company.show_calendar\">\n <div class=\"calender-header\">\n <button @click=\"handleDown()\" class=\"button arrow-left\">\n </button>\n <div class=\"month-name-wrap\">\n <p style=\"font-weight: 700; text-align: center;margin-bottom:0px\">{{ months[SELECTED_MONTH].fullname }} - {{ SELECTED_YEAR }}</p>\n </div>\n <button @click=\"handleUp()\" class=\"button arrow-right\">\n </button>\n </div>\n <div class=\"calendar-wrap\">\n \n <!-- Week Days -->\n <div class=\"week-days\" v-for=\"w in weekdays\" :key=\"JSON.stringify(w) + Math.random()\">\n <span class=\"mobile\">{{ w.name }}</span>\n <span class=\"desktop\">{{ w.fullname }}</span>\n </div>\n \n <!-- Previous Month Days -->\n <div class=\"next-month-day-item\" \n v-for=\"i in monthStartingDays\" :key=\"JSON.stringify(i) + Math.random()\">\n <div class=\"prev-date-text-wrap\">\n <p class=\"prev-date-text\" > {{ prevMonthTotalDays-(monthStartingDays-i) }}</p>\n </div>\n <div class=\"events-wrapper\" v-if=\"events(i).length>0\" >\n <div :class=\" (e.imgURL) ? 'event-wrap with-image' : 'event-wrap'\"\n :style=\"{\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n }\" \n v-for=\"e in events(i,SELECTED_MONTH>0?SELECTED_MONTH-1:11)\" :key=\"JSON.stringify(e) + Math.random()\"\n >\n <div v-if=\"e.day===i && company.calendar_sold_ratio\" class=\"event-status\" :style=\"{backgroundColor: statusColor(e.status)}\"></div>\n <a v-if=\"e.day===i\" :href=\"`/p/` + e.url + ($route.query.ft_campaign_name ? ('/?ft_campaign_name='+$route.query.ft_campaign_name) : '')\" class=\"event-text\" target=\"_blank\">{{ e.text }}</a>\n </div>\n </div>\n </div>\n\n <!-- Current Month Days -->\n <div class=\"curr-month-day-item\" \n v-for=\"i in monthTotalDays\" :key=\"JSON.stringify(i) + Math.random()\">\n <div class=\"curr-date-text-wrap\">\n <p class=\"curr-date-text\" >{{ i }}</p>\n </div>\n \n <div class=\"events-wrapper\" v-if=\"events(i,SELECTED_MONTH).length > 0\">\n <div :class=\" (e.imgURL) ? 'event-wrap with-image' : 'event-wrap'\"\n v-for=\"e in events(i,SELECTED_MONTH)\" :key=\"JSON.stringify(e) + Math.random()\"\n :style=\"{\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n }\" \n >\n <div v-if=\"e.day===i && company.calendar_sold_ratio\" class=\"event-status\" :style=\"{backgroundColor: statusColor(e.status)}\"></div>\n <a v-if=\"e.day===i\" :href=\"`/p/` + e.url + ($route.query.ft_campaign_name ? ('/?ft_campaign_name='+$route.query.ft_campaign_name) : '')\" class=\"event-text\" target=\"_blank\">\n {{ e.text }}\n </a>\n </div>\n </div>\n </div> \n\n <!-- Next Month Days -->\n <div class=\"next-month-day-item\" :class=\"(monthStartingDays+monthTotalDays)%7>0?'':'hidden'\"\n v-for=\"i in 7-(monthStartingDays+monthTotalDays)%7 \" :key=\"JSON.stringify(i) + Math.random()\">\n <div class=\"prev-date-text-wrap\">\n <p class=\"prev-date-text\" >{{ i }}</p>\n </div>\n <div class=\"events-wrapper\" v-if=\"events(i,SELECTED_MONTH<11?SELECTED_MONTH+1:0).length>0 && i===1\" >\n <div :class=\" (e.imgURL) ? 'event-wrap with-image' : 'event-wrap'\"\n :style=\"{\n backgroundImage: (e.imgURL) ? 'url(\\'https://cdn.fairtix.io' + e.imgURL + '\\')' : 'none',\n backgroundColor: (!e.imgUrl) ? '#585c60' : 'transparent',\n textShadow: '0 0 5px #000'\n }\" \n v-for=\"e in events(i, SELECTED_MONTH<11?SELECTED_MONTH+1:0)\" :key=\"JSON.stringify(e) + Math.random()\"\n >\n <div v-if=\"e.day===i && company.calendar_sold_ratio\" class=\"event-status\" :style=\"{backgroundColor: statusColor(e.status)}\"></div>\n <a v-if=\"e.day===i\" :href=\"`/p/` + e.url + ($route.query.ft_campaign_name ? ('/?ft_campaign_name='+$route.query.ft_campaign_name) : '')\" class=\"event-text\" target=\"_blank\">{{ e.text }}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n\n\n <!-- pos -->\n <div class=\"row\">\n <div class=\"col\">\n <pos v-for=\"pos in pointsOfSale\" :key=\"pos.id\" :pos=\"pos\"></pos>\n </div>\n </div>\n </div>\n </section>\n </b-container>\n</template>\n\n<script>\nimport api from '@/api'\nimport {mapState} from 'vuex'\n\nimport pos from \"@/components/PosCard\";\n\nexport default {\n components: {\n pos,\n },\n\n data() {\n return {\n pointsOfSale: [],\n calendarData: {},\n SELECTED_YEAR: new Date().getFullYear(),\n SELECTED_MONTH: new Date().getMonth() ,\n FIRST_YEAR: 1900,\n FIRST_SKIP_DAYS: 4,\n eventData: {}\n }\n },\n methods:{\n loadEvents(){ \n api.pos().getLive(this.company.id).then(pointsOfSale => {\n if(pointsOfSale.length === 1) {\n document.location = '/p/' + pointsOfSale[0].url + (this.$route.query.ft_campaign_name ? ('/?ft_campaign_name='+this.$route.query.ft_campaign_name) : '')\n }\n this.pointsOfSale = pointsOfSale\n\n pointsOfSale.forEach((pos) => {\n let tmpDate = new Date(pos.event.starts_at)\n let starts_at = tmpDate.getFullYear() + '-' + (String(tmpDate.getMonth() + 1)).padStart(2, '0') + '-' + String(tmpDate.getDate()).padStart(2, '0')\n tmpDate = new Date(pos.event.ends_at)\n let ends_at = tmpDate.getFullYear() + '-' + (String(tmpDate.getMonth() + 1)).padStart(2, '0') + '-' + String(tmpDate.getDate()).padStart(2, '0')\n\n if(this.company.show_calendar){\n if(this.eventData[starts_at] === undefined){\n this.eventData[starts_at] = {}\n }\n this.eventData[starts_at][pos.event.id] = {\n starts_at: starts_at,\n ends_at: ends_at,\n image: pos.event.image,\n event_name: pos.event.name,\n sold_status: pos.ratio,\n url: pos.url,\n unique_id: pos.event.id\n }\n }\n });\n })\n },\n getLang() {\n const lang = window.navigator.language.toLowerCase();\n if (lang.includes('de')) {\n return 'de';\n }\n if (lang.includes('nl')) {\n return 'nl';\n }\n if (lang.includes('es')) {\n return 'es';\n }\n\n return 'en';\n },\n isLeapYear(y){\n if(y%100===0){\n return y%400===0\n }else{\n return y%4===0\n }\n },\n events(day, month) {\n const prevMonthEvents = [];\n const currentMonthEvents = [];\n const nextMonthEvents = [];\n\n for (let date in this.eventData) {\n let eventDate = new Date(date);\n let eventDay = eventDate.getDate();\n let eventMonth = eventDate.getMonth();\n let eventYear = eventDate.getFullYear();\n\n if (this.SELECTED_YEAR === eventYear) {\n if (this.SELECTED_MONTH - 1 === eventMonth) {\n for (let eventId in this.eventData[date]) {\n let event = this.eventData[date][eventId];\n let status = getStatus(event.sold_status);\n\n prevMonthEvents.push({\n day: eventDay,\n status: status,\n imgURL: event.image,\n text: event.event_name,\n url: event.url\n });\n }\n } else if (this.SELECTED_MONTH === eventMonth) {\n for (let eventId in this.eventData[date]) {\n let event = this.eventData[date][eventId];\n let status = getStatus(event.sold_status);\n\n currentMonthEvents.push({\n day: eventDay,\n status: status,\n imgURL: event.image,\n text: event.event_name,\n url: event.url\n });\n }\n } else if (this.SELECTED_MONTH + 1 === eventMonth) {\n for (let eventId in this.eventData[date]) {\n let event = this.eventData[date][eventId];\n let status = getStatus(event.sold_status);\n\n nextMonthEvents.push({\n day: eventDay,\n status: status,\n imgURL: event.image,\n text: event.event_name,\n url: event.url\n });\n }\n }\n }\n }\n\n function getStatus(soldStatus) {\n if (soldStatus < 0.01) {\n return 'not busy';\n } else if (soldStatus < 80) {\n return 'medium';\n } else {\n return 'very busy';\n }\n }\n\n if (month === this.SELECTED_MONTH) {\n return currentMonthEvents.filter(event => {\n return event.day === day;\n });\n } else if (month === this.SELECTED_MONTH - 1) {\n return prevMonthEvents.filter(event => {\n return event.day === day;\n });\n } else if (month === this.SELECTED_MONTH + 1) {\n return nextMonthEvents.filter(event => {\n return event.day === day;\n });\n } else {\n return [];\n }\n },\n handleDown(){\n if(this.SELECTED_MONTH==0){\n this.SELECTED_YEAR--\n }\n this.SELECTED_MONTH = this.SELECTED_MONTH>0?this.SELECTED_MONTH-1:11\n },\n handleUp(){\n if(this.SELECTED_MONTH==11){\n this.SELECTED_YEAR = this.SELECTED_YEAR+1\n }\n this.SELECTED_MONTH = this.SELECTED_MONTH<11?this.SELECTED_MONTH+1:0\n },\n statusColor(status){\n return status==='not busy'?'#00cf03': status==='medium'?'#ff861c': status==='very busy'?'#ff1e00':''\n }\n },\n computed: {\n\n months(){\n return [\n { name:'Jan', fullname:this.$t('january'), full: true },\n { name:'Feb', fullname:this.$t('february'), feb: true },\n { name:'Mar', fullname:this.$t('march'), full: true },\n { name:'Apr', fullname:this.$t('april'), full: false },\n { name:'May', fullname:this.$t('nay'), full: true },\n { name:'Jun', fullname:this.$t('june'), full: false },\n { name:'Jul', fullname:this.$t('july'), full: true },\n { name:'Aug', fullname:this.$t('august'), full: true },\n { name:'Sept', fullname:this.$t('september'), full: false},\n { name:'Oct', fullname:this.$t('october'), full: true },\n { name:'Nov', fullname:this.$t('november'), full: false },\n { name:'Dec', fullname:this.$t('december'), full: true },\n ]\n },\n weekdays(){\n return [\n {name:'Mon', fullname:this.$t('monday')},\n {name:'Tue', fullname:this.$t('tuesday')},\n {name:'Wed', fullname:this.$t('wednesday')},\n {name:'Thu', fullname:this.$t('thursday')},\n {name:'Fri', fullname:this.$t('friday')},\n {name:'Sat', fullname:this.$t('saturday')},\n {name:'Sun', fullname:this.$t('sunday')},\n ]\n },\n prevMonthTotalDays(){\n let m = this.months[this.SELECTED_MONTH>0?this.SELECTED_MONTH-1:11]\n if(m.feb){\n return this.isLeapYear(this.SELECTED_YEAR)? 29 : 28\n }\n return m.full? 31 : 30\n },\n nextMonthTotalDays(){\n let m = this.months[this.SELECTED_MONTH<11?this.SELECTED_MONTH+1:0]\n if(m.feb){\n return this.isLeapYear(this.SELECTED_YEAR)? 29 : 28\n }\n return m.full? 31 : 30\n },\n monthTotalDays(){\n let m = this.months[this.SELECTED_MONTH]\n if(m.feb){\n return this.isLeapYear(this.SELECTED_YEAR)? 29 : 28\n }\n return m.full? 31 : 30\n },\n monthStartingDays(){\n\n let skipDays = this.FIRST_SKIP_DAYS;\n let month = 0;\n for(let year = this.FIRST_YEAR; year<=this.SELECTED_YEAR; year++){\n if(year < this.SELECTED_YEAR){\n for(month=0; month<12; month++){\n let m = this.months[month>0?month-1:11]\n let days = -1\n if(m.feb){\n days = this.isLeapYear(year)? 29 : 28\n }else{\n days = m.full? 31 : 30\n }\n days += skipDays;\n skipDays = days%7\n } \n }else{\n for( month=0; month<=this.SELECTED_MONTH; month++){\n let m = this.months[month>0?month-1:11]\n let days = -1\n if(m.feb){\n days = this.isLeapYear(year)? 29 : 28\n }else{\n days = m.full? 31 : 30\n }\n days += skipDays;\n skipDays = days%7\n }\n }\n }\n return skipDays\n\n\n\n\n },\n nextMonthStartingDays(){\n\n let skipDays = this.FIRST_SKIP_DAYS;\n let month = 0;\n for(let year = this.FIRST_YEAR; year<=this.SELECTED_YEAR; year++){\n if(year < this.SELECTED_YEAR){\n for(month=0; month<12; month++){\n let m = this.months[month]\n let days = -1\n if(m.feb){\n days = this.isLeapYear(year)? 29 : 28\n }else{\n days = m.full? 31 : 30\n }\n days += skipDays;\n skipDays = days%7\n } \n }else{\n for( month=0; month<=this.SELECTED_MONTH; month++){\n let m = this.months[month]\n let days = -1\n if(m.feb){\n days = this.isLeapYear(year)? 29 : 28\n }else{\n days = m.full? 31 : 30\n }\n days += skipDays;\n skipDays = days%7\n }\n }\n }\n return skipDays\n\n\n\n\n },\n\n years(){\n let y = []\n for(let i=0; i<=100; i++){\n y.push(2000+i)\n }\n return y;\n },\n\n ...mapState(['company'])\n },\n watch: {\n company() {\n this.loadEvents()\n }\n },\n created(){\n this.loadEvents()\n this.$store.commit('setLanguage', this.getLang())\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style lang=\"scss\" scoped>\n\n// color\n$white: #fff;\n$black: #303030;\n$black2: #4e4e4e;\n$red: #9b0000;\n$primary: #40cd8a;\n$dark: $black;\n\n// Body\n$body-bg: #fcfdff;\n\n// Typography\n$font-family-sans-serif: \"Poppins\", sans-serif;\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px,\n xxl: 1166px,\n);\n\n.container{\n padding:0px\n}\n\na {\n color: inherit;\n text-decoration: none;\n\n &:hover {\n text-decoration: none;\n color: inherit;\n }\n}\n\n.without-focus {\n &:focus {\n outline: 0;\n box-shadow: none;\n }\n}\n\n.img-container {\n width: 100%;\n img {\n max-width: 100%;\n }\n}\n\n/**\n*\n* event page\n*\n*/\n.event-section {\n\n .title {\n font-size: 36px;\n font-weight: 600;\n line-height: 1.5;\n margin-bottom: 25px;\n }\n}\n\n\nbody{\n background: #000;\n}\n.main-wrapper{\n padding: 40px 20px;\n border-radius:11px;\n box-shadow: 0px 0px 10px #00000017;\n}\n.calender-header{\n width: 100%;\n max-width: 1163px;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 24px;\n margin: 20px auto;\n}\n.month-name-wrap{\n display: flex;\n align-items: center;\n justify-content: center;\n padding-left: 1.25rem/* 20px */;\n padding-right: 1.25rem/* 20px */;\n color: rgb(51,51,51);\n width:50%;\n}\n.button{\n font-weight: 700;\n color: rgb(232,232,232);\n border-radius: 0.125rem;\n padding-left: 1rem/* 16px */;\n padding-right: 1rem/* 16px */;\n font-size: 1.875rem/* 30px */;\n line-height:1;\n transition: all .15s;\n background: none;\n border: none;\n cursor: pointer;\n}\n.button:hover{\n cursor:pointer; \n color: black;\n}\n.material-symbols-rounded {\n font-variation-settings:\n 'FILL' 0,\n 'wght' 400,\n 'GRAD' 0,\n 'opsz' 24\n}\n.curr-date-text-wrap,\n.prev-date-text-wrap{\n width: 100%;\n height: 40px;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n}\n\n.prev-date-text{\n font-size: 16px;\n color: rgb(153,153,153) !important;\n padding-left: 0.75rem/* 12px */;\n padding-right: 0.75rem/* 12px */;\n padding-top: 0.25rem/* 4px */;\n padding-bottom: 0.25rem/* 4px */;\n transition: all .15s;\n border-radius: 3px;\n}\n.curr-date-text:hover,\n.prev-date-text:hover{\n background: rgba(204,51,102,0.886);\n color: rgb(232,232,232) !important;\n transition: all .15s;\n}\n.curr-date-text{\n font-size: 16px;\n color: rgb(51,51,51);\n padding-left: 0.75rem/* 12px */;\n padding-right: 0.75rem/* 12px */;\n padding-top: 0.25rem/* 4px */;\n padding-bottom: 0.25rem/* 4px */;\n transition: all .15s;\n border-radius: 3px;\n}\n\n\n.events-wrapper{\n width: 100%;\n min-height: 32px;\n display: grid;\n grid-template-columns: 1;\n grid-gap: 4px;\n}\n.event-wrap{\n width: 100%;\n height: 32px;\n background-position: right;\n background-size: cover;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n margin-top: 12px;\n border-radius: 6px;\n}\n.event-wrap.with-image::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: rgba(0, 0, 0, 0.5); /* Black with 50% opacity */\n}\n.event-status{\n width: 8px;\n height: 8px;\n border-radius: 50%;\n position: absolute;\n right: 4px;\n top: -10px;\n}\n.event-text{\n width: 100%;\n text-align: center;\n font-weight: 700;\n font-size: 14px;\n text-transform: uppercase;\n color: #fff;\n cursor:pointer;\n max-width:152px;\n white-space:nowrap;\n overflow:hidden;\n text-overflow:ellipsis;\n padding:0 8px;\n z-index:299\n}\n\n.next-month-day-item{\n width: 100%;\n min-height: 40px;\n color: rgb(232,232,232); \n}\n.next-month-day-item{\n width: 100%;\n min-height: 40px;\n color: rgb(51,51,51); \n}\n.calendar-wrap{\n width: 100%;\n max-width: 1163px;\n margin: 0 auto;\n display: grid;\n grid-template-columns: repeat(7, minmax(0, 1fr));\n grid-gap: 8px;\n}\n.mobile{\n text-transform: uppercase;\n display: none;\n}\n.desktop{\n display: block;\n}\n\n@media only screen and (max-width: 1230px) {\n .event-text{\n width:110px\n }\n}\n\n@media only screen and (max-width: 990px) {\n .event-text{\n width:90px\n }\n}\n\n@media only screen and (max-width: 840px) {\n .mobile{\n display: block;\n }\n .desktop{\n display: none;\n }\n .calendar-wrap{\n grid-gap: 4px;\n }\n .month-name-wrap{\n width:70%\n }\n}\n\n@media only screen and (max-width: 768px) {\n .event-text{\n width:65px\n }\n}\n\n@media only screen and (max-width: 600px) {\n p.curr-date-text, p.prev-date-text{\n margin-bottom:0px\n }\n .event-wrap{\n margin-top:0;\n margin-bottom:8px\n }\n}\n\n@media only screen and (max-width: 580px) {\n .event-text{\n width:45px\n }\n}\n\n.week-days{\n text-align: right; \n padding: 20px 0;\n font-weight: 900;\n font-size: 12px;\n color: rgb(55,66,74);\n}\n\n\n.arrow-left {\n position: relative;\n width: 0;\n height: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n border-right: 15px solid #FFF; /* Adjust color as needed */\n}\n\n.arrow-right {\n position: relative;\n width: 0;\n height: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n border-left: 15px solid #FFF; /* Adjust color as needed */\n}\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventsOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventsOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventsOverview.vue?vue&type=template&id=e41e1932&scoped=true\"\nimport script from \"./EventsOverview.vue?vue&type=script&lang=js\"\nexport * from \"./EventsOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventsOverview.vue?vue&type=style&index=0&id=e41e1932&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e41e1932\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"p-0\"},[(_vm.errors[0] !== undefined && _vm.errors[0] === 'event_not_live')?_c('b-row',[_c('b-col',{staticClass:\"content-block text-center\"},[_c('svg',{staticClass:\"mt-4 mb-4\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"shape-rendering\":\"geometricPrecision\",\"text-rendering\":\"geometricPrecision\",\"image-rendering\":\"optimizeQuality\",\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"viewBox\":\"0 0 512 463.43\"}},[_c('path',{attrs:{\"d\":\"M189.46 44.02c34.26-58.66 99.16-58.77 133.24.12l.97 1.81 175.27 304.4c33.71 56.4-1.2 113.76-66.17 112.96v.12H73.53c-.9 0-1.78-.04-2.66-.11-58.34-.79-86.64-54.22-61.9-106.84.39-.85.82-1.67 1.28-2.46l-.04-.03 179.3-309.94-.05-.03zm50.32 302.4c4.26-4.13 9.35-6.19 14.45-6.56 3.4-.24 6.8.29 9.94 1.48 3.13 1.19 6.01 3.03 8.39 5.41 6.92 6.91 8.72 17.38 4.64 26.16-2.69 5.8-7.08 9.7-12.11 11.78-3.03 1.27-6.3 1.84-9.56 1.76-3.27-.08-6.49-.82-9.41-2.18-5.02-2.33-9.3-6.43-11.7-12.2-2.65-6.36-2.27-12.96.63-19.15 1.15-2.46 2.75-4.81 4.73-6.5zm33.86-47.07c-.8 19.91-34.51 19.93-35.28-.01-3.41-34.1-12.13-110.53-11.85-142.58.28-9.87 8.47-15.72 18.94-17.95 3.23-.69 6.78-1.03 10.35-1.02 3.6.01 7.16.36 10.39 1.05 10.82 2.3 19.31 8.39 19.31 18.45l-.05 1-11.81 141.06z\",\"fill\":\"#FFA500\"}})]),_c('h1',[_vm._v(_vm._s(_vm.$t('event_passed')))]),_c('p',[_vm._v(_vm._s(_vm.$t('pos_will_automatically_redirect', {seconds: _vm.passedRedirectTimer})))]),_c('b-button',{staticClass:\"mt-2 mb-4\",attrs:{\"id\":\"btn-pos-redirect\",\"variant\":\"success\"},on:{\"click\":function($event){return _vm.$router.push({name: 'Index'})}}},[_vm._v(_vm._s(_vm.$t('pos_redirect_now')))])],1)],1):_vm._e(),(_vm.pos)?_c('b-row',[(_vm.event && _vm.event.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.event.gmt_id}}):_vm._e(),(_vm.show)?_c('b-col',[(_vm.event.description && _vm.event.description.length && _vm.event.description_location && _vm.event.description_location === 'top')?_c('div',{staticClass:\"content-block cart-container header-padding information-toggle border-radius margin-bottom-custom\"},[_c('h3',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.event-description\",modifiers:{\"event-description\":true}}],staticClass:\"pos-primary-color cursor-pointer font-weight-bold information-header mb-0\",on:{\"click\":function($event){_vm.isEventDescriptionOpened = !_vm.isEventDescriptionOpened}}},[_c('svg',{staticClass:\"mr-2\",attrs:{\"height\":\"20\",\"viewBox\":\"0 0 48 48\",\"width\":\"20\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M0 0h48v48h-48z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M22 34h4v-12h-4v12zm2-30c-11.05 0-20 8.95-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20zm0 36c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm-2-22h4v-4h-4v4z\"}})]),_vm._v(\" \"+_vm._s(_vm.$t('pos_important_information'))+\" \"),_c('b-icon',{staticClass:\"ml-2\",attrs:{\"icon\":_vm.isEventDescriptionOpened ? 'chevron-up' : 'chevron-down',\"width\":\"10\",\"height\":\"10\"}})],1),_c('b-collapse',{attrs:{\"id\":\"event-description\",\"accordion\":\"my-accordion\",\"role\":\"tabpanel\",\"visible\":_vm.event.is_description_open}},[_c('b-card-body',{staticClass:\"pt-2 p-0\"},[_c('b-card-text',[_c('div',{staticClass:\"desc-info pos-primary-color\",domProps:{\"innerHTML\":_vm._s(_vm.event.description)}})])],1)],1)],1):_vm._e(),_c('div',{staticClass:\"content-block cart-container border-radius header-padding\",class:{'group-name-is-default': _vm.$store.state.posFirstGroupIsDefault}},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"9\"}},[_c('h1',{staticClass:\"pos-primary-color mb-1\"},[_vm._v(_vm._s(_vm.$t('view_pos_cart_title')))]),_c('p',{staticClass:\"pos-description-color font-weight-bold mb-0 pb-0\"},[_vm._v(_vm._s(_vm.$t('pos_buy_your_tickets')))])]),(_vm.event.minimum_age)?_c('b-col',{staticClass:\"d-flex align-items-center justify-content-end\",attrs:{\"cols\":\"3\"}},[_c('span',{staticClass:\"minimum-age pos-primary-color pos-primary-color-border\"},[_vm._v(\" \"+_vm._s(_vm.event.minimum_age)+\"+ \")])]):_vm._e()],1)],1),_c('product-list'),_c('PosCartPlaceOrder',{attrs:{\"disabled\":!this.cart.products || this.cart.products.length === 0 || ( _vm.event.minimum_age !== '' && _vm.event.age_confirmation_checkbox && !_vm.age_confirmation_checkbox)},on:{\"placeOrder\":function($event){return _vm.order()},\"continue\":function($event){return _vm.order()}}}),(_vm.event.minimum_age && _vm.event.age_confirmation_checkbox)?_c('div',{staticClass:\"content-block cart-container border-radius margin-top-custom\"},[_c('b-form-group',{staticClass:\"mb-0\",attrs:{\"align\":\"end\"}},[_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"12\"}},[_c('div',[_c('b-checkbox',{staticClass:\"pos-age-confirmation\",model:{value:(_vm.age_confirmation_checkbox),callback:function ($$v) {_vm.age_confirmation_checkbox=$$v},expression:\"age_confirmation_checkbox\"}},[_vm._v(_vm._s(_vm.$t('pos_age_confirmation', _vm.event)))])],1)])],1)],1)],1):_vm._e(),(_vm.event.description && _vm.event.description.length && _vm.event.description_location && _vm.event.description_location === 'bottom')?_c('div',{staticClass:\"content-block information-toggle cart-container header-padding border-radius margin-top-custom\"},[_c('h3',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle.event-description\",modifiers:{\"event-description\":true}}],staticClass:\"pos-primary-color cursor-pointer font-weight-bold information-header mb-0\",on:{\"click\":function($event){_vm.isEventDescriptionOpened = !_vm.isEventDescriptionOpened}}},[_c('svg',{staticClass:\"mr-2\",attrs:{\"height\":\"25\",\"viewBox\":\"0 0 48 48\",\"width\":\"25\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M0 0h48v48h-48z\",\"fill\":\"none\"}}),_c('path',{attrs:{\"d\":\"M22 34h4v-12h-4v12zm2-30c-11.05 0-20 8.95-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20zm0 36c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm-2-22h4v-4h-4v4z\"}})]),_vm._v(\" \"+_vm._s(_vm.$t('pos_important_information'))+\" \"),_c('b-icon',{staticClass:\"ml-2\",attrs:{\"icon\":_vm.isEventDescriptionOpened ? 'chevron-up' : 'chevron-down',\"width\":\"13\",\"height\":\"13\"}})],1),_c('b-collapse',{attrs:{\"id\":\"event-description\",\"accordion\":\"my-accordion\",\"role\":\"tabpanel\",\"visible\":_vm.event.is_description_open}},[_c('b-card-body',{staticClass:\"pt-2 p-0\"},[_c('b-card-text',[_c('div',{staticClass:\"desc-info pos-primary-color\",domProps:{\"innerHTML\":_vm._s(_vm.event.description)}})])],1)],1)],1):_vm._e()],1):_c('b-col',[_c('div',{staticClass:\"content-block cart-container border-radius\"},[_c('div',{staticClass:\"loading-logo text-center\"},[_c('b-img',{attrs:{\"src\":require('./../assets/fairtix.gif')}})],1)])])],1):(_vm.errors.length === 0)?_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('b-spinner')],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"pos-products-list\"},_vm._l((_vm.groups),function(group,index){return _c('div',{key:group.name,staticClass:\"product-group pos-bg-secondary-color\",class:{'group-name-is-default': _vm.$store.state.posFirstGroupIsDefault && index === 0}},[(group.type != 'default')?_c('h2',{staticClass:\"group-title\"},[_vm._v(_vm._s(group.name))]):_vm._e(),_vm._l((group.products.filter(p => p.show && p.showDependency)),function(product,prodIndex){return _c('b-row',{key:`product` + product.id,staticClass:\"product-row pos-primary-color-border\",class:{'product-row-campaign': product.price !== product.discount_price}},[(product.product_type_id !== _vm.donation_product_id)?[_c('b-col',{staticClass:\"product-desc-col p-0\",attrs:{\"lg\":\"10\",\"md\":\"8\",\"sm\":\"7\"}},[_c('b-row',{staticClass:\"h-100 align-content-between\"},[_c('b-col',{staticClass:\"product-details\",attrs:{\"lg\":\"10\",\"sm\":\"12\"}},[(product.image_url)?_c('div',{staticClass:\"d-none d-lg-block\",staticStyle:{\"margin-right\":\"30px\"}},[_c('b-img',{staticClass:\"border-radius product-image\",attrs:{\"src\":product.image_url}})],1):_vm._e(),_c('div',[(!product.description || !product.description.length || product.description.length < 50)?_c('h4',{staticClass:\"font-weight-bold mb-1\"},[_vm._v(\" \"+_vm._s(product.name)+\" \"),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-web pos-bg-primary-color ml-1\"},[_c('svg',{staticClass:\"mr-1\",staticStyle:{\"enable-background\":\"new 0 0 32 32\"},attrs:{\"fill\":\"#fff\",\"width\":\"11\",\"height\":\"11\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0\",\"y\":\"0\",\"viewBox\":\"0 0 32 32\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"d\":\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"}})]),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons'))+\" \")]):_vm._e()]):(product.description && product.description.length)?_c('h4',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:(`product-description-${index}-${prodIndex}`),expression:\"`product-description-${index}-${prodIndex}`\"}],staticClass:\"font-weight-bold mb-1\",on:{\"click\":function($event){return _vm.toggleDescription(product)}}},[_vm._v(_vm._s(product.name)+\" \"),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-web pos-bg-primary-color ml-1\"},[_c('svg',{staticClass:\"mr-1\",staticStyle:{\"enable-background\":\"new 0 0 32 32\"},attrs:{\"fill\":\"#fff\",\"width\":\"11\",\"height\":\"11\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0\",\"y\":\"0\",\"viewBox\":\"0 0 32 32\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"d\":\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"}})]),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons'))+\" \")]):_vm._e(),_c('b-icon',{staticClass:\"chevron-down ml-1\",attrs:{\"icon\":_vm.openedProducts.includes(product.id) ? 'chevron-down' : 'chevron-up'}})],1):_vm._e(),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-mobile pos-bg-primary-color\"},[_c('svg',{staticClass:\"mr-1\",staticStyle:{\"enable-background\":\"new 0 0 32 32\"},attrs:{\"fill\":\"#fff\",\"width\":\"11\",\"height\":\"11\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0\",\"y\":\"0\",\"viewBox\":\"0 0 32 32\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"d\":\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"}})]),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons'))+\" \")]):_vm._e(),(product.description && product.description.length < 50)?_c('p',{staticClass:\"pos-description-color mb-0\",staticStyle:{\"white-space\":\"normal\",\"font-size\":\"12px\"}},[_vm._v(_vm._s(product.description))]):(product.description && product.description.length)?_c('b-collapse',{attrs:{\"visible\":\"\",\"id\":`product-description-${index}-${prodIndex}`,\"role\":\"tabpanel\"}},[_c('p',{staticClass:\"pos-description-color mb-0\",staticStyle:{\"white-space\":\"pre-wrap\",\"font-size\":\"12px\"}},[_vm._v(\" \"+_vm._s(product.isExpanded ? product.description : product.description.substring(0, 100) + (product.description.length > 100 ? '...' : ''))+\" \")]),(product.description.length > 100)?_c('button',{staticClass:\"read-desc-btn btn btn-link p-0 pos-primary-color\",on:{\"click\":function($event){return _vm.toggleExpandDescription(group,product)}}},[_vm._v(\" \"+_vm._s(product.isExpanded ? _vm.$t('read_less') : _vm.$t('read_more'))+\" \")]):_vm._e()]):_vm._e(),(product.sale_ends_at)?_c('p',{staticClass:\"pos-description-color mb-0 mt-1 d-flex align-items-center\",staticStyle:{\"font-style\":\"italic\",\"white-space\":\"normal\",\"font-size\":\"12px\"}},[_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"clock\",\"color\":\"#0A2336\",\"width\":\"15\",\"height\":\"15\"}}),_vm._v(\" \"+_vm._s(_vm.getSaleText(product)))],1):_vm._e()],1)]),_c('b-col',{staticClass:\"pricing-col\",attrs:{\"sm\":\"12\",\"lg\":\"2\"}},[(!product.out_of_stock)?_c('div',[(product.price === product.discount_price)?_c('p',{staticClass:\"price pos-primary-color font-weight-bold\"},[_vm._v(_vm._s(_vm._f(\"currency\")(product.price)))]):_c('p',{staticClass:\"price\"},[_c('span',{staticClass:\"d-block old-price\"},[_vm._v(_vm._s(_vm._f(\"currency\")(product.price)))]),_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(product.discount_price))+\" \")])]):_vm._e()])],1)],1),_c('b-col',{staticClass:\"px-0 d-flex justify-content-start justify-content-sm-end align-items-start align-items-lg-center\",attrs:{\"lg\":\"2\",\"md\":\"4\",\"sm\":\"5\"}},[_c('b-row',{staticClass:\"w-100\"},[(product.image_url)?_c('b-col',{staticClass:\"d-flex justify-content-end mb-2 d-lg-none\",attrs:{\"cols\":\"12\"}},[_c('b-img',{staticClass:\"border-radius product-image\",attrs:{\"fluid\":\"\",\"src\":product.image_url,\"width\":\"100\"}})],1):_vm._e(),(!product.is_disabled)?_c('b-col',{staticClass:\"d-flex justify-content-start justify-content-sm-end align-items-center\"},[(!product.out_of_stock)?_c('PosNumberInput',{attrs:{\"min\":Math.min(...product.options),\"max\":Math.max(...product.options),\"step\":product.sale_sets !== null && product.sale_sets !== 0 ? product.sale_sets : 1},on:{\"change\":function($event){return _vm.updateCart()}},model:{value:(_vm.amounts[product.id]),callback:function ($$v) {_vm.$set(_vm.amounts, product.id, $$v)},expression:\"amounts[product.id]\"}}):_c('div',{staticClass:\"text-danger text-center font-weight-bold solid-out\"},[_vm._v(_vm._s(_vm.$t('pos_product_sold_out')))])],1):_c('b-col',{staticClass:\"text-right\"},[_c('div',{staticClass:\"text-danger text-right font-weight-bold\"},[_vm._v(_vm._s(_vm.$t('pos_product_sold_out')))])])],1)],1)]:[_c('div',{staticClass:\"donation px-0 py-4\"},[_c('b-col',{staticClass:\"product-details flex-vertical\",attrs:{\"lg\":\"3\"}},[(!product.description || !product.description.length || product.description.length < 50)?_c('h4',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(product.name)+\" \"),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-web pos-bg-primary-color ml-3\"},[_c('b-icon',{attrs:{\"icon\":\"person-fill\"}}),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons')))],1):_vm._e()]):(product.description && product.description.length)?_c('h4',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:(`product-description-${index}-${prodIndex}`),expression:\"`product-description-${index}-${prodIndex}`\"}],staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(product.name)+\" \"),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-web pos-bg-primary-color ml-3\"},[_c('b-icon',{attrs:{\"icon\":\"person-fill\"}}),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons')))],1):_vm._e(),_vm._v(\" \"),_c('b-icon',{staticClass:\"chevron-down\",attrs:{\"icon\":\"chevron-down\"}})],1):_vm._e(),(product.persons)?_c('span',{staticClass:\"product-persons product-persons-mobile pos-bg-primary-color\"},[_c('b-icon',{attrs:{\"icon\":\"person-fill\"}}),_vm._v(\" \"+_vm._s(product.persons)+\" \"+_vm._s(_vm.$t('persons')))],1):_vm._e(),(product.description && product.description.length < 50)?_c('p',{staticClass:\"pos-description-color\",staticStyle:{\"white-space\":\"normal\",\"font-size\":\"12px\"}},[_vm._v(_vm._s(product.description))]):(product.description && product.description.length)?_c('b-collapse',{attrs:{\"visible\":\"\",\"id\":`product-description-${index}-${prodIndex}`,\"role\":\"tabpanel\"}},[_c('p',{staticClass:\"pos-description-color\",staticStyle:{\"white-space\":\"normal\",\"font-size\":\"12px\"}},[_vm._v(_vm._s(product.description))])]):_vm._e()],1),_c('b-col',{staticClass:\"flex-horizontal donation-buttons text-right\",attrs:{\"lg\":\"6\",\"md\":\"6\"}},[_c('b-button',{staticClass:\"ml-2\",attrs:{\"pill\":\"\",\"variant\":\"primary\",\"disabled\":_vm.amounts[product.id] === 5},on:{\"click\":function($event){_vm.amounts[product.id] = 5;_vm.updateCart()}}},[_vm._v(_vm._s(_vm._f(\"currency\")(5)))]),_c('b-button',{staticClass:\"ml-2\",attrs:{\"pill\":\"\",\"variant\":\"primary\",\"disabled\":_vm.amounts[product.id] === 10},on:{\"click\":function($event){_vm.amounts[product.id] = 10;_vm.updateCart()}}},[_vm._v(_vm._s(_vm._f(\"currency\")(10)))]),_c('b-button',{staticClass:\"ml-2\",attrs:{\"pill\":\"\",\"variant\":\"primary\",\"disabled\":_vm.amounts[product.id] === 15},on:{\"click\":function($event){_vm.amounts[product.id] = 15;_vm.updateCart()}}},[_vm._v(_vm._s(_vm._f(\"currency\")(15)))])],1),_c('b-col',{staticClass:\"flex-horizontal\",attrs:{\"lg\":\"3\",\"md\":\"3\"}},[_c('PosNumberInput',{attrs:{\"min\":0},on:{\"change\":function($event){return _vm.updateCart()}},model:{value:(_vm.amounts[product.id]),callback:function ($$v) {_vm.$set(_vm.amounts, product.id, $$v)},expression:\"amounts[product.id]\"}})],1)],1)]],2)})],2)}),0)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"pos-number-input\"},[_c('span',{staticClass:\"btn-subtract\",on:{\"click\":_vm.subtract}},[_vm._v(\"-\")]),_c('span',{staticClass:\"value\"},[_vm._v(_vm._s(_vm.value))]),_c('span',{staticClass:\"btn-plus\",on:{\"click\":_vm.add}},[_vm._v(\"+\")])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n<div class=\"pos-number-input\">\n <span @click=\"subtract\" class=\"btn-subtract\">-</span>\n <span class=\"value\">{{ value }}</span>\n <span @click=\"add\" class=\"btn-plus\">+</span>\n</div>\n</template>\n\n<script>\nexport default {\n name: \"PosNumberInput\",\n props: {\n min: {\n type: Number,\n default: 0\n },\n max: {\n type: Number,\n default: null\n },\n value: {\n type: Number,\n default: 0\n },\n step: {\n type: Number,\n default: 1\n }\n },\n methods: {\n add() {\n if(this.max !== null && (this.value + this.step) > this.max) {\n return;\n }\n let value = this.value + this.step;\n if(this.min && this.value < this.min) {\n value = this.min;\n }\n\n this.$emit('input', value)\n this.$emit('change', value)\n },\n subtract() {\n let value = 0;\n if((this.value - this.step) >= this.min) {\n value = this.value - this.step;\n }\n this.$emit('input', value)\n this.$emit('change', value)\n }\n },\n mounted () {\n if(this.value === null || this.value === undefined) {\n this.$emit('input', 0)\n this.$emit('change', 0)\n }\n },\n watch: {\n value(val) {\n if(val === null || val === undefined) {\n this.$emit('input', 0)\n this.$emit('change', 0)\n }\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.pos-number-input {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 15px;\n .btn-plus, .btn-subtract {\n width: 27px;\n height: 27px;\n border-radius: 15px;\n color: #fff;\n display: inline-block;\n text-align: center;\n line-height: 27px;\n font-size: 16px;\n font-weight: bold;\n cursor: pointer;\n user-select: none;\n transition: all .2s linear;\n }\n .value {\n text-align: center;\n line-height: 27px;\n font-size: 18px;\n font-weight: bold;\n color: #0A2336;\n width: 27px;\n height: 27px;\n display: inline-block;\n }\n\n .btn-plus {\n background-color: #2AA937;\n }\n\n .btn-subtract {\n background-color: #909090;\n }\n\n input {\n -webkit-appearance: none !important;\n border: 1px solid #ebebeb;\n float: left;\n font-size: 16px;\n height: 40px;\n margin: 0;\n outline: none;\n text-align: center;\n width: calc(100% - 80px);\n overflow: visible;\n }\n\n input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {\n -webkit-appearance: none !important;\n margin: 0;\n }\n\n @media only screen and (max-width: 992px) {\n .btn-plus, .btn-subtract {\n width: 22px;\n height: 22px;\n line-height: 22px;\n font-size: 14px;\n }\n \n .value {\n line-height: 22px;\n font-size: 14px;\n width: 22px;\n height: 22px;\n display: inline-block;\n }\n }\n}\n@media only screen and (max-width: 768px) {\n .pos-number-input{\n gap:10px;\n margin-left:10px\n }\n }\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosNumberInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosNumberInput.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PosNumberInput.vue?vue&type=template&id=d5f1297c&scoped=true\"\nimport script from \"./PosNumberInput.vue?vue&type=script&lang=js\"\nexport * from \"./PosNumberInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./PosNumberInput.vue?vue&type=style&index=0&id=d5f1297c&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d5f1297c\",\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"pos-products-list\">\n <div v-for=\"(group, index) in groups\" :key=\"group.name\" class=\"product-group pos-bg-secondary-color\" :class=\"{'group-name-is-default': $store.state.posFirstGroupIsDefault && index === 0}\">\n <h2 class=\"group-title\" v-if=\"group.type != 'default'\">{{ group.name }}</h2>\n <b-row v-for=\"(product, prodIndex) in group.products.filter(p => p.show && p.showDependency)\" :key=\"`product` + product.id\" class=\"product-row pos-primary-color-border\" :class=\"{'product-row-campaign': product.price !== product.discount_price}\">\n <template v-if=\"product.product_type_id !== donation_product_id\">\n <b-col lg=\"10\" md=\"8\" sm=\"7\" class=\"product-desc-col p-0\">\n <b-row class=\"h-100 align-content-between\">\n <b-col class=\"product-details\" lg=\"10\" sm=\"12\">\n <div v-if=\"product.image_url\" class=\"d-none d-lg-block\" style=\"margin-right:30px\">\n <b-img :src=\"product.image_url\" class=\"border-radius product-image\"></b-img>\n </div>\n <div>\n <h4 v-if=\"!product.description || !product.description.length || product.description.length < 50\" class=\"font-weight-bold mb-1\">\n {{ product.name }} \n <span v-if=\"product.persons\" class=\"product-persons product-persons-web pos-bg-primary-color ml-1\">\n <svg class=\"mr-1\" fill=\"#fff\" width=\"11\" height=\"11\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0\" y=\"0\" viewBox=\"0 0 32 32\" style=\"enable-background:new 0 0 32 32\" xml:space=\"preserve\"><path d=\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"/></svg>\n {{ product.persons }} \n {{ $t('persons') }}\n </span>\n </h4>\n <h4 v-else-if=\"product.description && product.description.length\" @click=\"toggleDescription(product)\" v-b-toggle=\"`product-description-${index}-${prodIndex}`\" class=\"font-weight-bold mb-1\">{{ product.name }} \n <span v-if=\"product.persons\" class=\"product-persons product-persons-web pos-bg-primary-color ml-1\">\n <svg class=\"mr-1\" fill=\"#fff\" width=\"11\" height=\"11\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0\" y=\"0\" viewBox=\"0 0 32 32\" style=\"enable-background:new 0 0 32 32\" xml:space=\"preserve\"><path d=\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"/></svg>\n {{ product.persons }} \n {{ $t('persons') }}\n </span> \n <b-icon class=\"chevron-down ml-1\" :icon=\"openedProducts.includes(product.id) ? 'chevron-down' : 'chevron-up'\"></b-icon>\n </h4>\n <span v-if=\"product.persons\" class=\"product-persons product-persons-mobile pos-bg-primary-color\">\n <svg class=\"mr-1\" fill=\"#fff\" width=\"11\" height=\"11\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0\" y=\"0\" viewBox=\"0 0 32 32\" style=\"enable-background:new 0 0 32 32\" xml:space=\"preserve\"><path d=\"M25.838 31H6.162a3.957 3.957 0 0 1-3.245-1.661 3.956 3.956 0 0 1-.549-3.604l.704-2.113a6.034 6.034 0 0 1 4.966-4.059C10.131 19.307 13.211 19 16 19c2.788 0 5.869.307 7.963.563a6.032 6.032 0 0 1 4.965 4.059l.704 2.113a3.954 3.954 0 0 1-.55 3.604A3.955 3.955 0 0 1 25.838 31zM16 21c-2.688 0-5.681.298-7.718.549a4.02 4.02 0 0 0-3.312 2.706l-.704 2.112c-.206.618-.106 1.274.274 1.802S5.511 29 6.162 29h19.676a1.98 1.98 0 0 0 1.622-.83c.381-.528.48-1.185.275-1.803l-.704-2.112a4.02 4.02 0 0 0-3.312-2.706C21.681 21.298 18.687 21 16 21zM16 18c-4.687 0-8.5-3.813-8.5-8.5S11.313 1 16 1c4.687 0 8.5 3.813 8.5 8.5S20.687 18 16 18zm0-15c-3.584 0-6.5 2.916-6.5 6.5S12.416 16 16 16s6.5-2.916 6.5-6.5S19.584 3 16 3z\"/></svg>\n {{ product.persons }} \n {{ $t('persons') }}\n </span>\n <p v-if=\"product.description && product.description.length < 50\" class=\"pos-description-color mb-0\" style=\"white-space: pre;white-space: normal;font-size: 12px;\" >{{ product.description }}</p>\n <b-collapse visible v-else-if=\"product.description && product.description.length\" :id=\"`product-description-${index}-${prodIndex}`\" role=\"tabpanel\">\n <p class=\"pos-description-color mb-0\" style=\"white-space: pre-wrap; font-size: 12px;\">\n {{ product.isExpanded ? product.description : product.description.substring(0, 100) + (product.description.length > 100 ? '...' : '') }}\n </p>\n\n <button class=\"read-desc-btn btn btn-link p-0 pos-primary-color\" v-if=\"product.description.length > 100\" @click=\"toggleExpandDescription(group,product)\">\n {{ product.isExpanded ? $t('read_less') : $t('read_more') }}\n </button>\n </b-collapse>\n <p v-if=\"product.sale_ends_at\" class=\"pos-description-color mb-0 mt-1 d-flex align-items-center\" style=\"font-style:italic;white-space: pre;white-space: normal;font-size: 12px;\" ><b-icon class=\"mr-2\" icon=\"clock\" color=\"#0A2336\" width=\"15\" height=\"15\"></b-icon> {{ getSaleText(product) }}</p>\n </div>\n </b-col>\n <b-col sm=\"12\" lg=\"2\" class=\"pricing-col\">\n <div v-if=\"!product.out_of_stock\">\n <p v-if=\"product.price === product.discount_price\" class=\"price pos-primary-color font-weight-bold\">{{ product.price | currency }}</p>\n <p v-else class=\"price\">\n <span class=\"d-block old-price\">{{ product.price | currency }}</span>\n {{ product.discount_price | currency }}\n </p>\n </div>\n </b-col>\n </b-row>\n </b-col>\n <b-col lg=\"2\" md=\"4\" sm=\"5\" class=\"px-0 d-flex justify-content-start justify-content-sm-end align-items-start align-items-lg-center\">\n <b-row class=\"w-100\">\n <!-- just for small screen -->\n <b-col v-if=\"product.image_url\" cols=\"12\" class=\"d-flex justify-content-end mb-2 d-lg-none\">\n <b-img fluid :src=\"product.image_url\" class=\"border-radius product-image\" width=\"100\"></b-img>\n </b-col>\n <b-col v-if=\"!product.is_disabled\" class=\"d-flex justify-content-start justify-content-sm-end align-items-center\">\n <PosNumberInput\n v-if=\"!product.out_of_stock\"\n @change=\"updateCart()\"\n :min=\"Math.min(...product.options)\"\n :max=\"Math.max(...product.options)\"\n :step=\"product.sale_sets !== null && product.sale_sets !== 0 ? product.sale_sets : 1\"\n v-model=\"amounts[product.id]\"/>\n <div v-else class=\"text-danger text-center font-weight-bold solid-out\">{{ $t('pos_product_sold_out') }}</div>\n </b-col>\n <b-col class=\"text-right\" v-else>\n <div class=\"text-danger text-right font-weight-bold\">{{ $t('pos_product_sold_out') }}</div>\n </b-col>\n </b-row>\n </b-col>\n </template>\n <template v-else >\n <div class=\"donation px-0 py-4\">\n <b-col lg=\"3\" class=\"product-details flex-vertical\">\n <h4 v-if=\"!product.description || !product.description.length || product.description.length < 50\" class=\"font-weight-bold\">{{ product.name }} <span v-if=\"product.persons\" class=\"product-persons product-persons-web pos-bg-primary-color ml-3\"><b-icon icon=\"person-fill\"></b-icon> {{ product.persons }} {{ $t('persons') }}</span></h4>\n <h4 v-else-if=\"product.description && product.description.length\" v-b-toggle=\"`product-description-${index}-${prodIndex}`\" class=\"font-weight-bold\">{{ product.name }} <span v-if=\"product.persons\" class=\"product-persons product-persons-web pos-bg-primary-color ml-3\"><b-icon icon=\"person-fill\"></b-icon> {{ product.persons }} {{ $t('persons') }}</span> <b-icon class=\"chevron-down\" icon=\"chevron-down\"></b-icon></h4>\n <span v-if=\"product.persons\" class=\"product-persons product-persons-mobile pos-bg-primary-color\"><b-icon icon=\"person-fill\"></b-icon> {{ product.persons }} {{ $t('persons') }}</span>\n <p v-if=\"product.description && product.description.length < 50\" class=\"pos-description-color\" style=\"white-space: pre;white-space: normal;font-size: 12px;\" >{{ product.description }}</p>\n <b-collapse visible v-else-if=\"product.description && product.description.length\" :id=\"`product-description-${index}-${prodIndex}`\" role=\"tabpanel\">\n <p class=\"pos-description-color\" style=\"white-space: pre;white-space: normal;font-size: 12px;\" >{{ product.description }}</p>\n </b-collapse>\n </b-col>\n <b-col lg=\"6\" md=\"6\" class=\"flex-horizontal donation-buttons text-right\">\n <b-button pill variant=\"primary\" :disabled=\"amounts[product.id] === 5\" @click=\"amounts[product.id] = 5;updateCart()\" class=\"ml-2\" >{{5 | currency }}</b-button>\n <b-button pill variant=\"primary\" :disabled=\"amounts[product.id] === 10\" @click=\"amounts[product.id] = 10;updateCart()\" class=\"ml-2\" >{{10 | currency }}</b-button>\n <b-button pill variant=\"primary\" :disabled=\"amounts[product.id] === 15\" @click=\"amounts[product.id] = 15;updateCart()\" class=\"ml-2\" >{{15 | currency }}</b-button>\n </b-col>\n <b-col lg=\"3\" md=\"3\" class=\"flex-horizontal\">\n <PosNumberInput\n @change=\"updateCart()\"\n :min=\"0\"\n v-model=\"amounts[product.id]\"/>\n </b-col>\n </div>\n </template>\n </b-row>\n </div>\n </div>\n</template>\n<script>\nimport { mapMutations, mapState } from 'vuex'\nimport moment from \"moment\";\nimport {applyCampaignHideRule, applyCampaignRule, deepClone} from \"@/functions\";\nimport PosNumberInput from './PosNumberInput.vue';\nexport default {\n components: {PosNumberInput},\n props: ['cross_sell'],\n data() {\n return {\n amounts: {},\n refreshGroups: 0,\n groups:[],\n openedProducts: [],\n }\n },\n watch: {\n cart(){\n console.log('Cart changed')\n this.syncCart()\n },\n groups(groups) {\n if(groups.length) {\n this.setPosFirstGroupIsDefault(groups[0].name === 'event_default_group')\n }\n }\n },\n methods: {\n toggleExpandDescription(group,product) {\n const groupToUpdate = this.groups.find(g => g.name === group.name);\n if (groupToUpdate) {\n // Find the product in the group's products array\n const productToUpdate = groupToUpdate.products.find(p => p.id === product.id);\n if (productToUpdate) {\n // Toggle the isExpanded property\n productToUpdate.isExpanded = !productToUpdate.isExpanded;\n \n // Force Vue to re-render by creating a new array\n this.groups = [...this.groups];\n }\n }\n },\n updateGroups() {\n // Flatten the data from the pos response\n console.log(this.refreshGroups); // this for force update groups when product selected\n this.groups= this.pos.pos_product_groups.filter(posProductGroup => {\n return posProductGroup.product_group\n }).map((posProductGroup) => {\n return posProductGroup.product_group\n }).map(productGroup => {\n // Filter out the additional products\n productGroup.products = productGroup.products.filter((product) => {\n if (this.cross_sell) {\n return product.is_cross_sell\n }\n return !product.is_cross_sell\n }).map((product) => {\n // Initialize isExpanded to false for each product\n product.isExpanded = false;\n return product;\n });\n return productGroup\n }).map((productGroup) => {\n //filter out non enabled pos\n let exists = productGroup.products.filter((product)=>{\n let x = this.pos.products.filter((posProduct)=> {\n return product.id === posProduct.product_id && !posProduct.product.is_disabled\n })\n return x.length > 0\n }).map(this.setProductStock);\n const expired = productGroup.products.filter((product)=>{\n let x = this.pos.products.filter((posProduct)=> {\n return product.id === posProduct.product_id && posProduct.product.is_disabled && (posProduct.product.sale_ends_at !== null || posProduct.product.out_of_stock)\n })\n return x.length > 0\n }).map(this.setProductStock);\n // Set the stock details for the grouped products\n productGroup.products = exists.sort((a,b) => a.sort - b.sort).concat(expired)\n return productGroup\n })\n .filter((productGroup) => {\n // Filter out empty categories\n return productGroup.products.length > 0\n })\n\n if(!this.cross_sell) {\n const products = JSON.parse(JSON.stringify(this.cart.products));\n this.cart.products.forEach(product => {\n const exists = this.groups.find(group => {\n return group.products.find(p => p.id === product.id)\n })\n if(!exists) {\n products.splice(products.findIndex(p => p.id === product.id), 1);\n this.amounts[product.id] = 0\n }\n })\n this.setCartProducts(products.filter(p => this.amounts[p.id]))\n if( !products || products.length === 0) {\n this.$store.commit('clearCart')\n }\n }\n },\n setProductStock(product) {\n let showDependency = true;\n if(product.parents.length) {\n showDependency = false;\n product.parents.forEach(pp => {\n if(this.amounts[pp.parent_id] && this.amounts[pp.parent_id] > 0) {\n showDependency = true;\n }\n })\n }\n\n if(!showDependency) {\n this.amounts[product.id] = 0;\n this.$forceUpdate();\n }\n\n product = Object.assign(product, {\n discount_price: applyCampaignRule(this.campaign, product.name, deepClone(product).price),\n show: !applyCampaignHideRule(this.campaign, product.name, deepClone(product).price),\n showDependency\n })\n\n this.pos.pos_product_groups.filter(posProductGroup => {\n return posProductGroup.product_group\n }).forEach(posProductGroup => {\n posProductGroup.product_group.products.forEach(ppp => {\n ppp.additions.forEach(ad => {\n if(ad.child_id === product.id) {\n if(this.amounts[ad.parent_id] && this.amounts[ad.parent_id] > 0) {\n product.show = true;\n }\n else {\n product.show = false;\n this.amounts[product.id] = 0;\n }\n }\n })\n })\n })\n\n let posProduct = this.pos.products.find(p => {\n return p.product_id === product.id\n })\n\n if (!posProduct || posProduct.out_of_stock) {\n console.error('Unable to get stock for product', product.id)\n product.out_of_stock = true\n return product\n }\n\n if (posProduct) {\n product.current_stock = posProduct.current_stock\n product.sort = posProduct.sort\n\n let max = 0\n if (product.max_buy && product.max_buy > 0) {\n max = product.max_buy\n }\n\n if (product.current_stock < max) {\n max = product.current_stock\n }\n\n if (max === 0) {\n product.out_of_stock = true\n return product\n }\n\n product.options = []\n\n let limit = product.current_stock < product.max_buy ? product.current_stock : product.max_buy;\n let step = 1;\n if(product.sale_sets) {\n step = product.sale_sets;\n }\n\n if(product.limit_max_amount) {\n let maxAmount = 0;\n this.pos.products.forEach(p => {\n const pp =this.amounts[ p.product.id];\n if (p.product.id !== product.id && pp > maxAmount && !p.product.limit_max_amount) {\n maxAmount = pp;\n }\n })\n limit = maxAmount;\n\n if(this.amounts[product.id] !== undefined || !this.amounts[product.id]) {\n if(this.amounts[product.id] > limit) {\n this.amounts[product.id] = limit;\n }\n }\n }\n\n for (let i = product.min_buy; i <= limit; i = i + step) {\n product.options.push(i)\n }\n }\n let canSell = true;\n\n if(product.sale_starts_at) {\n canSell = moment().isAfter(moment(product.sale_starts_at));\n }\n\n if(product.sale_ends_at) {\n canSell = canSell && moment().isBefore(moment(product.sale_ends_at));\n }\n product.is_disabled = false;\n if(!canSell && product.sale_show_after_expire) {\n if( moment().isAfter(moment(product.sale_ends_at)) ) {\n product.is_disabled = true;\n product.amount = 0;\n }\n }\n return product\n },\n getProduct(id) {\n let posProduct = this.pos.products.find(posProduct => {\n return posProduct.product_id === parseInt(id)\n })\n if (!posProduct) {\n console.error('Unable to find pos product')\n return null\n }\n\n return posProduct.product\n },\n updateCart() {\n this.refreshGroups++;\n this.$forceUpdate();\n setTimeout(() => {\n Object.keys(this.amounts).filter(id => {\n // filter out the products that have 0 selected\n return this.amounts[id] > 0\n }).forEach(id => {\n let product = this.getProduct(id)\n\n if (!product) {\n console.error('Unable to find product from cart in POS')\n return {amount: 0}\n }\n\n if(product.additions.length) {\n product.additions.forEach(pp => {\n if(this.amounts[pp.parent_id] !== undefined && this.amounts[pp.parent_id] !== null) {\n this.amounts[pp.child_id] = this.amounts[product.id];\n this.$forceUpdate()\n }\n })\n }\n })\n let products = Object.keys(this.amounts).filter(id => {\n // filter out the products that have 0 selected\n return this.amounts[id] > 0\n }).map(id => {\n let product = this.getProduct(id)\n\n if (!product) {\n console.error('Unable to find product from cart in POS')\n return {amount: 0}\n }\n if (product.product_type_id === this.donation_product_id){\n product.price = this.amounts[id]\n product.amount = 1\n }else{\n product.amount = this.amounts[id]\n }\n if(product.min_buy > this.amounts[id]) {\n setTimeout(() => {\n this.amounts[id] = product.min_buy;\n this.$forceUpdate();\n }, 500)\n product.amount = product.min_buy;\n }\n\n return product\n })\n this.$store.commit('setCartProducts', products)\n if( !products || products.length === 0) {\n this.$store.commit('clearCart')\n }\n this.updateGroups();\n this.$forceUpdate()\n }, 200)\n },\n syncCart() {\n if(this.cart.products.length === 0) {\n this.amounts = {}\n return\n }\n this.cart.products.forEach(product => {\n if (product.product_type_id === this.donation_product_id){\n this.amounts[product.id] = product.price\n }else{\n this.amounts[product.id] = product.amount\n }\n })\n },\n getSaleText(product) {\n if(!product.sale_ends_at) {\n return '';\n }\n\n const ends = moment(product.sale_ends_at);\n\n if(!product.sale_starts_at && moment().isBefore(ends)) {\n const duration = moment.duration(ends.diff(moment()));\n if(duration.months()) {\n if(duration.days()) {\n if(duration.hours()) {\n return this.$t('pos_sale_ends_in_months_days_and_hours', {\n months: duration.months(),\n days: duration.days(),\n hours: duration.hours()\n });\n }\n else {\n return this.$t('pos_sale_ends_in_months_days', {\n months: duration.months(),\n days: duration.days()\n });\n }\n }\n else {\n return this.$('pos_sale_ends_in_months', {months: duration.months()})\n }\n }\n if(duration.days() === 0 && duration.hours() === 0) {\n if(duration.minutes()) {\n return this.$t('pos_sale_ends_in_minutes', {minutes: duration.minutes()});\n }\n }\n if(duration.days() === 0) {\n return this.$t('pos_sale_ends_in_hours', {hours: duration.hours()});\n }\n return this.$t('pos_sale_ends_in_days_and_hours', {days: duration.days(), hours: duration.hours()});\n }\n\n const starts = moment(product.sale_starts_at);\n\n if(moment().isBefore(starts)) {\n return this.$t('product_sale_starts_at') + ' ' + starts.format('DD-MM-YYYY HH:mm');\n }\n\n if(moment().isAfter(starts) && moment().isBefore(ends)) {\n const duration = moment.duration(ends.diff(moment()));\n if(duration.months()) {\n if(duration.days()) {\n if(duration.hours()) {\n return this.$t('pos_sale_ends_in_months_days_and_hours', {\n months: duration.months(),\n days: duration.days(),\n hours: duration.hours()\n });\n }\n else {\n return this.$t('pos_sale_ends_in_months_days', {\n months: duration.months(),\n days: duration.days()\n });\n }\n }\n else {\n return this.$t('pos_sale_ends_in_months', {months: duration.months()})\n }\n }\n if(duration.days() === 0 && duration.hours() === 0) {\n if(duration.minutes()) {\n return this.$t('pos_sale_ends_in_minutes', {minutes: duration.minutes()});\n }\n }\n if(duration.days() === 0) {\n return this.$t('pos_sale_ends_in_hours', {hours: duration.hours()});\n }\n return this.$t('pos_sale_ends_in_days_and_hours', {days: duration.days(), hours: duration.hours()});\n }\n\n if(moment().isAfter(ends)) {\n return this.$t('pos_sale_ended_at') + ' ' + ends.format('DD-MM-YYYY HH:mm');\n }\n },\n toggleDescription(product) {\n if(this.openedProducts.includes(product.id)) {\n this.openedProducts.splice(this.openedProducts.indexOf(product.id), 1);\n }\n else {\n this.openedProducts.push(product.id);\n }\n },\n ...mapMutations(['setPosFirstGroupIsDefault', 'setCartProducts'])\n },\n computed: {\n ...mapState(['pos', 'cart','donation_product_id', 'campaign'])\n },\n created() {\n this.syncCart()\n this.updateGroups();\n if(this.campaign && this.campaign.highlight_discount && this.campaign.highlight_style) {\n let css = '';\n if(this.campaign.highlight_style.border_color) {\n css += 'box-shadow: 2px 2px 10px -9px ' + this.campaign.highlight_style.border_color + ';';\n }\n if(this.campaign.highlight_style.background_color) {\n css += 'background: linear-gradient(217deg, ' + this.campaign.highlight_style.background_color + ', #FFF);';\n }\n css += 'margin: 0;'\n const style = '.pos-products-list .product-row-campaign {' + css + '}'\n document.querySelector('head').innerHTML += '<style id=\"product-row-campaign\">' + style + '</style>'\n }\n },\n}\n</script>\n<style scoped>\n.pos-products-list .product-row-campaign{\n padding: 25px 47px;\n}\n.pos-products-list .product-row-campaign:last-of-type{\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.content-block.cart-container .product-details p{\n font-size:0.8rem\n}\n.product-row {\n padding: 25px 47px;\n width: 100%;\n margin: 0;\n}\n.wrapText{\n white-space: normal!important;\n}\n.price {\n font-size: 16px;\n margin: 0;\n}\n.read-desc-btn{\n color:#0A2336;\n font-style: italic;\n font-size:12px;\n box-shadow:none\n}\n.group-title {\n font-size: 24px;\n font-weight: bold;\n text-transform: uppercase;\n padding: 25px 47px 25px 47px;\n margin:0\n}\n\n.product-details {\n display: flex;\n align-items: center;\n}\n.product-details h4 {\n font-size: 16px;\n margin-bottom:2px;\n display:flex;\n align-items:center;\n gap:.6rem\n}\n.product-group{\n margin-top:35px\n}\n.product-details p, .content-block.cart-container .product-details p{\n white-space: normal!important;\n }\n.donation{\n border: 1px solid lightgrey;\n border-radius: 4px;\n background-color: white;\n width: 100%;\n display:flex;\n margin:0 2%;\n}\n\n.donation-buttons{\n justify-content: end;\n align-items: center;\n}\n\n.flex-vertical{\n display:flex;\n flex-direction: column;\n align-items: flex-start;\n}\n\n.flex-horizontal{\n display:flex;\n flex-direction: row;\n align-items: center;\n}\n.pricing-col div.row div.alert{\n text-align:center\n}\n\n.pricing-col {\n display: flex;\n align-items: center;\n justify-content: end;\n}\n.product-persons {\n padding: 4px 7px;\n color: #FFFFFF !important;\n font-size: 10px !important;\n font-weight: normal !important;\n border-radius: 6px;\n text-transform: lowercase;\n}\n.product-persons-mobile {\n display: none;\n}\n.product-image {\n width: 84px;\n}\n@media screen and (max-width: 994px) {\n .product-row{\n padding: 13px 17px;\n }\n .product-row p.price{\n margin-bottom:0;\n margin-top:1rem;\n }\n .price-select{\n width:120px\n }\n .pricing-col {\n justify-content: start;\n }\n .product-persons-web {\n display: none;\n }\n .product-persons-mobile {\n display: inline-block;\n }\n .group-title {\n padding: 17px 17px 13px 17px;\n }\n .product-group:not(:first-of-type){\n margin-top:15px\n }\n}\n\n@media screen and (max-width: 768px) {\n .donation{\n flex-direction: column;\n }\n .donation-buttons{\n margin-bottom:15px\n }\n .pricing-col {\n text-align: left !important;\n }\n .product-details h4 {\n font-size: 12px;\n margin-bottom:2px;\n }\n .product-row p.price,.solid-out{\n font-size:12px\n }\n .product-row p.price{\n margin-top:.5rem;\n }\n .product-details p{\n font-size:10px!important\n }\n .product-details p svg{\n width:10px!important;\n height:10px!important;\n }\n .product-image{\n width:79px!important;\n }\n .pos-products-list .product-row-campaign{\n padding: 13px 17px;\n }\n}\n\n@media screen and (max-width: 480px) {\n h2.group-title{\n font-size:13pt\n }\n}\n\n@media screen and (max-width: 360px) {\n .product-row div.product-desc-col, .product-row div.pricing-col, .price-select{\n width:100%;\n max-width:100%\n }\n .product-row div.pricing-col div.row{\n flex-direction: row-reverse;\n }\n .product-details p{\n margin-bottom:10px\n }\n}\n.old-price {\n text-decoration: line-through;\n padding: 0;\n margin: 0;\n line-height: initial;\n}\n\n.product-row {\n border-top: 1px solid;\n padding-top: 20px;\n}\n.product-row:first-child {\n border-top: 0 !important;\n}\n\n.product-group {\n border-radius: 6px;\n}\n\n.group-name-is-default {\n margin-top: 0 !important;\n border-top-right-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n\n.justify-content-sm-end {\n justify-content: flex-end !important;\n}\n\n.chevron-down {\n font-size: 12px !important;\n}\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProductList.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ProductList.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ProductList.vue?vue&type=template&id=01c981a2&scoped=true\"\nimport script from \"./ProductList.vue?vue&type=script&lang=js\"\nexport * from \"./ProductList.vue?vue&type=script&lang=js\"\nimport style0 from \"./ProductList.vue?vue&type=style&index=0&id=01c981a2&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"01c981a2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span></span>\n</template>\n<script>\nexport default {\n props: ['gtm_id'],\n data() {\n return {\n }\n },\n mounted() {\n const dataLayer = window.dataLayer || [];\n dataLayer.push({\n 'gtm.start': new Date().getTime(),\n event: 'gtm.js',\n });\n\n dataLayer.push({\n 'gtm.id': this.gtm_id,\n event: 'gtm.js',\n });\n\n dataLayer.push({\n event: 'virtualPageView',\n virtualPagePath : window.location.pathname,\n virtualPageTitle: document.title\n });\n }\n}\n</script>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GtmPageView.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GtmPageView.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./GtmPageView.vue?vue&type=template&id=3e817872\"\nimport script from \"./GtmPageView.vue?vue&type=script&lang=js\"\nexport * from \"./GtmPageView.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"pos-cart-place-order\"},[_c('div',{staticClass:\"get-code-input-mobile pos-bg-accent-color\"},[(!_vm.showDiscountCodeInput)?_c('div',{staticClass:\"get-code-input d-block\",on:{\"click\":function($event){$event.preventDefault(); _vm.showDiscountCodeInput = true}}},[_c('div',{staticClass:\"d-inline-block cursor-pointer get-code-input\"},[_c('svg',{staticClass:\"get-code-input\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"16\",\"width\":\"16\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{staticClass:\"get-code-input\",attrs:{\"d\":\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"}})])])]):_vm._e(),(_vm.showDiscountCodeInput)?_c('div',[_c('div',{staticClass:\"d-flex discount-input get-code-input\"},[(!_vm.cart.discountCode)?_c('div',[_c('b-button',{staticClass:\"input-button-percentage get-code-input\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"16\",\"width\":\"16\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"d\":\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"}})])]),_c('b-form-input',{staticClass:\"discount-form-input get-code-input\",attrs:{\"placeholder\":\"Discountcode\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.claimDiscountcode()}},model:{value:(_vm.discountCode),callback:function ($$v) {_vm.discountCode=$$v},expression:\"discountCode\"}}),_c('b-button',{staticClass:\"input-button get-code-input\",on:{\"click\":function($event){return _vm.claimDiscountcode()}}},[_vm._v(\"+\")])],1):_vm._e(),(_vm.cart.discountCode)?_c('div',{staticClass:\"d-inline-block ml-3 get-code-input\"},[_c('span',{staticClass:\"cart-discountcode get-code-input\"},[_c('span',{staticClass:\"pos-primary-color get-code-input\"},[_vm._v(_vm._s(_vm.cart.discountCode.code)+\" (\"+_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.discount))+\")\")]),_c('span',{staticClass:\"ml-3 cursor-pointer pos-primary-color get-code-input\",on:{\"click\":function($event){_vm.setCartDiscountCode(null); _vm.discountCode = null}}},[_vm._v(\"X\")])])]):_vm._e(),_c('button',{staticClass:\"arrow-down-icon\"},[_c('b-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)])]):_vm._e()]),_c('div',{staticClass:\"w-100 pos-bg-accent-color rounded-small-screen\"},[_c('div',{staticClass:\"container border-radius\"},[_c('b-row',{staticClass:\"align-items-center\"},[_c('b-col',{staticClass:\"d-flex justify-content-between justify-content-lg-start align-items-center get-code-input-web\",attrs:{\"cols\":\"12\",\"lg\":\"5\"}},[_c('div',{staticClass:\"d-inline-block cursor-pointer get-code-input\",on:{\"click\":function($event){$event.preventDefault(); _vm.showDiscountCodeInput = !_vm.showDiscountCodeInput}}},[_c('svg',{staticClass:\"get-code-input\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"16\",\"width\":\"16\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"d\":\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"}})]),_c('span',{staticClass:\"ml-3 get-code-input pos-primary-color\"},[_vm._v(_vm._s(_vm.$t('pos_place_order_got_a_code')))])]),(_vm.showDiscountCodeInput && !_vm.cart.discountCode)?_c('div',{staticClass:\"d-flex discount-input ml-3 get-code-input\"},[_c('b-button',{staticClass:\"input-button-percentage get-code-input\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"11\",\"width\":\"11\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"d\":\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"}})])]),_c('b-form-input',{staticClass:\"get-code-input\",attrs:{\"placeholder\":\"Discountcode\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.claimDiscountcode()}},model:{value:(_vm.discountCode),callback:function ($$v) {_vm.discountCode=$$v},expression:\"discountCode\"}}),_c('b-button',{staticClass:\"input-button get-code-input\",on:{\"click\":function($event){return _vm.claimDiscountcode()}}},[_vm._v(\"+\")])],1):_vm._e(),(_vm.cart.discountCode)?_c('div',{staticClass:\"d-inline-block ml-3\"},[_c('span',{staticClass:\"cart-discountcode\"},[_c('span',{staticClass:\"pos-primary-color\"},[_vm._v(_vm._s(_vm.cart.discountCode.code)+\" (\"+_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.discount))+\")\")]),_c('span',{staticClass:\"ml-3 cursor-pointer pos-primary-color\",on:{\"click\":function($event){_vm.setCartDiscountCode(null); _vm.discountCode = null}}},[_vm._v(\"X\")])])]):_vm._e()]),_c('b-col',{staticClass:\"px-md-0\",attrs:{\"lg\":\"4\",\"md\":\"4\",\"sm\":\"6\"}},[_c('span',{staticClass:\"d-flex align-items-center\"},[_c('svg',{staticClass:\"cart-shop-icon\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\",\"height\":\"21\",\"width\":\"21\"}},[_c('polygon',{staticClass:\"ci-primary\",attrs:{\"fill\":\"#000\",\"points\":\"160 96.039 160 128.039 464 128.039 464 191.384 428.5 304.039 149.932 304.039 109.932 16 16 16 16 48 82.068 48 122.068 336.039 451.968 336.039 496 196.306 496 96.039 160 96.039\"}}),_c('path',{staticClass:\"ci-primary\",attrs:{\"fill\":\"#000\",\"d\":\"M176.984,368.344a64.073,64.073,0,0,0-64,64h0a64,64,0,0,0,128,0h0A64.072,64.072,0,0,0,176.984,368.344Zm0,96a32,32,0,1,1,32-32A32.038,32.038,0,0,1,176.984,464.344Z\"}}),_c('path',{staticClass:\"ci-primary\",attrs:{\"fill\":\"#000\",\"d\":\"M400.984,368.344a64.073,64.073,0,0,0-64,64h0a64,64,0,0,0,128,0h0A64.072,64.072,0,0,0,400.984,368.344Zm0,96a32,32,0,1,1,32-32A32.038,32.038,0,0,1,400.984,464.344Z\"}})]),_c('span',{staticClass:\"ml-2 pos-primary-color\"},[_vm._v(_vm._s(_vm.$t('pos_place_order_total', {total: _vm.parseCurrency(_vm.calculatedCart.processingFee + _vm.calculatedCart.paymentFee)})))])])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-between pl-1\",attrs:{\"lg\":\"3\",\"md\":\"8\",\"sm\":\"6\"}},[_c('div',{staticClass:\"total-price mr-1\"},[_c('span',{staticClass:\"pos-primary-color\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.total.toFixed(2))))])]),_c('div',{staticStyle:{\"padding-left\":\"5px\"}},[(this.$store.state.order)?_c('b-button',{staticClass:\"btn pos-btn-order\",attrs:{\"variant\":_vm.disabled ? 'secondary' : 'success',\"disabled\":_vm.disabled},on:{\"click\":function($event){return _vm.$emit('continue')}}},[_vm._v(_vm._s(_vm.$t('cart_order')))]):_c('b-button',{staticClass:\"btn pos-btn-order\",attrs:{\"variant\":_vm.disabled ? 'secondary' : 'success',\"disabled\":_vm.disabled},on:{\"click\":function($event){return _vm.$emit('placeOrder')}}},[_vm._v(_vm._s(_vm.$t('order_continue')))])],1)])],1)],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"pos-cart-place-order\">\n <div class=\"get-code-input-mobile pos-bg-accent-color\">\n <div @click=\"$event.preventDefault(); showDiscountCodeInput = true\" v-if=\"!showDiscountCodeInput\" class=\"get-code-input d-block\">\n <div class=\"d-inline-block cursor-pointer get-code-input\">\n <svg class=\"get-code-input\" xmlns=\"http://www.w3.org/2000/svg\" height=\"16\" width=\"16\" viewBox=\"0 0 384 512\"><path class=\"get-code-input\" d=\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"/></svg>\n </div>\n </div>\n <div v-if=\"showDiscountCodeInput\">\n <div class=\"d-flex discount-input get-code-input\">\n <div v-if=\"!cart.discountCode\">\n <b-button class=\"input-button-percentage get-code-input\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"16\" width=\"16\" viewBox=\"0 0 384 512\"><path d=\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"/></svg>\n </b-button>\n <b-form-input placeholder=\"Discountcode\" @keyup.enter=\"claimDiscountcode()\" v-model=\"discountCode\" class=\"discount-form-input get-code-input\"></b-form-input>\n <b-button @click=\"claimDiscountcode()\" class=\"input-button get-code-input\">+</b-button>\n </div>\n <div v-if=\"cart.discountCode\" class=\"d-inline-block ml-3 get-code-input\">\n <span class=\"cart-discountcode get-code-input\">\n <span class=\"pos-primary-color get-code-input\">{{ cart.discountCode.code }} ({{ calculatedCart.discount | currency }})</span>\n <span @click=\"setCartDiscountCode(null); discountCode = null\" class=\"ml-3 cursor-pointer pos-primary-color get-code-input\">X</span>\n </span>\n </div>\n <button class=\"arrow-down-icon\"><b-icon icon=\"chevron-down\"/></button>\n </div>\n </div>\n </div>\n <div class=\"w-100 pos-bg-accent-color rounded-small-screen\">\n <div class=\"container border-radius\">\n <b-row class=\"align-items-center\">\n <b-col cols=\"12\" lg=\"5\" class=\"d-flex justify-content-between justify-content-lg-start align-items-center get-code-input-web\">\n <div @click=\"$event.preventDefault(); showDiscountCodeInput = !showDiscountCodeInput\" class=\"d-inline-block cursor-pointer get-code-input\">\n <svg class=\"get-code-input\" xmlns=\"http://www.w3.org/2000/svg\" height=\"16\" width=\"16\" viewBox=\"0 0 384 512\"><path d=\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"/></svg>\n <span class=\"ml-3 get-code-input pos-primary-color\">{{ $t('pos_place_order_got_a_code') }}</span>\n </div>\n\n <div v-if=\"showDiscountCodeInput && !cart.discountCode\" class=\"d-flex discount-input ml-3 get-code-input\">\n <b-button class=\"input-button-percentage get-code-input\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"11\" width=\"11\" viewBox=\"0 0 384 512\"><path d=\"M374.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-320 320c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l320-320zM128 128A64 64 0 1 0 0 128a64 64 0 1 0 128 0zM384 384a64 64 0 1 0 -128 0 64 64 0 1 0 128 0z\"/></svg>\n </b-button>\n <b-form-input placeholder=\"Discountcode\" @keyup.enter=\"claimDiscountcode()\" v-model=\"discountCode\" class=\"get-code-input\"></b-form-input>\n <b-button @click=\"claimDiscountcode()\" class=\"input-button get-code-input\">+</b-button>\n </div>\n <div v-if=\"cart.discountCode\" class=\"d-inline-block ml-3\">\n <span class=\"cart-discountcode\">\n <span class=\"pos-primary-color\">{{ cart.discountCode.code }} ({{ calculatedCart.discount | currency }})</span>\n <span @click=\"setCartDiscountCode(null); discountCode = null\" class=\"ml-3 cursor-pointer pos-primary-color\">X</span>\n </span>\n </div>\n </b-col>\n <b-col lg=\"4\" md=\"4\" sm=\"6\" class=\"px-md-0\">\n <span class=\"d-flex align-items-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\" height=\"21\" width=\"21\" class=\"cart-shop-icon\">\n <polygon fill=\"#000\" points=\"160 96.039 160 128.039 464 128.039 464 191.384 428.5 304.039 149.932 304.039 109.932 16 16 16 16 48 82.068 48 122.068 336.039 451.968 336.039 496 196.306 496 96.039 160 96.039\" class=\"ci-primary\"/>\n <path fill=\"#000\" d=\"M176.984,368.344a64.073,64.073,0,0,0-64,64h0a64,64,0,0,0,128,0h0A64.072,64.072,0,0,0,176.984,368.344Zm0,96a32,32,0,1,1,32-32A32.038,32.038,0,0,1,176.984,464.344Z\" class=\"ci-primary\"/>\n <path fill=\"#000\" d=\"M400.984,368.344a64.073,64.073,0,0,0-64,64h0a64,64,0,0,0,128,0h0A64.072,64.072,0,0,0,400.984,368.344Zm0,96a32,32,0,1,1,32-32A32.038,32.038,0,0,1,400.984,464.344Z\" class=\"ci-primary\"/>\n </svg>\n <span class=\"ml-2 pos-primary-color\">{{ $t('pos_place_order_total', {total: parseCurrency(calculatedCart.processingFee + calculatedCart.paymentFee)}) }}</span>\n </span>\n </b-col>\n <b-col lg=\"3\" md=\"8\" sm=\"6\" class=\"d-flex align-items-center justify-content-between pl-1\">\n <div class=\"total-price mr-1\">\n <span class=\"pos-primary-color\">{{ calculatedCart.total.toFixed(2) | currency }}</span>\n </div>\n <div style=\"padding-left:5px\">\n <b-button v-if=\"this.$store.state.order\" @click=\"$emit('continue')\" class=\"btn pos-btn-order\" :variant=\"disabled ? 'secondary' : 'success'\" :disabled=\"disabled\">{{ $t('cart_order') }}</b-button>\n <b-button v-else @click=\"$emit('placeOrder')\" class=\"btn pos-btn-order\" :variant=\"disabled ? 'secondary' : 'success'\" :disabled=\"disabled\">{{ $t('order_continue') }}</b-button>\n </div>\n </b-col>\n </b-row>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport {mapState, mapActions, mapMutations} from 'vuex'\nimport api from \"@/api\";\nexport default {\n name: \"PosCartPlaceOrder\",\n props: {\n disabled: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n discountCode: null,\n discountCodeError: null,\n showDiscountCodeInput: false,\n timeslot: null,\n eventListener: null,\n }\n },\n methods: {\n calculateVatFromEx(price, percentage){\n let vat = price * (percentage / 100)\n return vat\n },\n calculateVat(price, percentage) {\n let excl = price / (1 + percentage / 100)\n let vat = price - excl\n return vat\n },\n claimDiscountcode() {\n this.discountCodeError = null\n if(!this.discountCode){\n this.discountCodeError = false\n return\n }\n if(this.$route.params.id) {\n api.discountcode().getByOrder(this.$route.params.id, this.$route.params.secret, this.discountCode).then(discountCode => {\n this.setCartDiscountCode(discountCode);\n this.$forceUpdate();\n })\n }\n else {\n api.discountcode().getByPOS(this.pos.id, this.discountCode).then(discountCode => {\n this.setCartDiscountCode(discountCode)\n this.$forceUpdate();\n })\n }\n },\n parseCurrency(value) {\n return parseFloat(value).toLocaleString('nl-NL', {minimumFractionDigits: 2})\n },\n ...mapActions(['loadCompany']),\n ...mapMutations(['setCartTotal', 'setCartDiscountCode', 'setCartTotalWithoutPM'])\n },\n computed: {\n calculatedCart() {\n\n if (!this.event) {\n console.log('Event not in state!')\n return null\n }\n if (!this.company) {\n console.warn('Company not in state, maybe still loading!')\n return null\n }\n\n if (!this.cart) {\n console.warn('Cart not in state!')\n return null\n }\n\n let productTotal = 0\n let paymentFee = 0\n let processingFee = 0\n let totalProductCount = 0\n let campaignDiscount = 0;\n\n this.cart.products.forEach(p => {\n productTotal += p.amount * p.price\n totalProductCount += p.amount\n })\n\n this.cart.products.forEach( product => {\n if(product.service_fee){\n processingFee += (product.service_fee * product.amount)\n }\n })\n\n this.cart.products.forEach( product => {\n campaignDiscount += ((product.price - product.discount_price) * product.amount)\n })\n this.$store.commit('setCartCampaignDiscount', campaignDiscount)\n\n // let total = productTotal + paymentFee + processingFee\n let total = productTotal\n\n let discount = 0\n if(this.cart.discountCode) {\n // if type is per order\n if (this.cart.discountCode.apply_type === 'order') {\n let productsTotal = 0;\n this.cart.products.forEach(p => {\n if (this.cart.discountCode.products && this.cart.discountCode.products.length) {\n if (this.cart.discountCode.products.includes(p.id)) {\n productsTotal += p.amount * p.discount_price\n }\n }\n else {\n productsTotal += p.amount * p.discount_price\n }\n })\n if (this.cart.discountCode.type === 'percentage') {\n discount = 0 - Math.round(((productsTotal * this.cart.discountCode.amount / 100) + Number.EPSILON) * 100) / 100\n }\n else if (this.cart.discountCode.type === 'value') {\n discount = 0 - this.cart.discountCode.amount\n }\n } else { // if type is per ticket\n for (const p of this.cart.products) {\n if (this.cart.discountCode.products && this.cart.discountCode.products.length) {\n if(!this.cart.discountCode.products.includes(p.id)) {\n continue;\n }\n }\n if (this.cart.discountCode.type === 'percentage') {\n discount -= ((Math.round(((p.discount_price * this.cart.discountCode.amount / 100) + Number.EPSILON) * 100) / 100) * p.amount)\n }\n else if (this.cart.discountCode.type === 'value') {\n discount -= (this.cart.discountCode.amount * p.amount)\n }\n }\n }\n }\n\n if(campaignDiscount) {\n total -= campaignDiscount;\n }\n\n total += discount\n\n if (total < 0) {\n total = 0\n }\n \n let paymentFeeVat = 0\n\n /**\n * Payment method calculation:\n * Payment fee fixed is already inclusive VAT\n * Payment fee percentage is without VAT\n *\n * Calculation:\n * 1) Add the payment fee fixed\n * 2) Calculate fee percentage = (total products + total ticket fee + fixed fee) * percentage\n * 3) Add VAT for the company to the total\n * 4) Round the total payment fee\n */\n if (this.cart.paymentMethod) {\n\n // Payment Fee fixed is inclusive VAT\n paymentFee = this.cart.paymentMethod.fee_fixed\n\n // Calculate the fee that is needed for the percentage\n let feePercentage = 0\n if (this.cart.paymentMethod.fee_percentage > 0) {\n feePercentage = (processingFee + total + this.cart.paymentMethod.fee_fixed) * (this.cart.paymentMethod.fee_percentage / 100)\n paymentFee += feePercentage\n }\n\n // Add the VAT to the payment fee (only from the percentage)\n if(this.company.vat_percentage && paymentFee){\n paymentFeeVat = parseFloat( this.calculateVatFromEx(feePercentage, this.company.vat_percentage) )\n if(paymentFeeVat){\n paymentFee += paymentFeeVat\n }\n }\n\n // Rounds to two decimals\n if(paymentFee){\n paymentFee = Math.round((paymentFee + Number.EPSILON) * 100) / 100\n }\n\n }\n\n this.setCartTotalWithoutPM(parseFloat((total + processingFee).toString()))\n total += (paymentFee + processingFee)\n this.setCartTotal(total);\n return {\n total,\n productTotal,\n paymentFee,\n paymentFeeVat: paymentFeeVat,\n paymentFeeVatPerc: this.company.vat_percentage,\n processingFee,\n processingFeeVat: this.calculateVat(processingFee, this.company.vat_percentage),\n processingFeeVatPerc: this.company.vat_percentage,\n discount,\n discountVat: this.calculateVat(discount, this.company.vat_percentage),\n discountVatPerc: this.company.vat_percentage,\n totalProductCount,\n products: this.cart.products.map((p) => {\n return {\n id: p.id,\n amount: p.amount,\n total: p.amount * p.price,\n name: p.name,\n vat: p.vat * p.amount,\n vat_percentage: p.vat_percentage\n }\n })\n }\n },\n ...mapState(['cart', 'event', 'company', 'order', 'campaign', 'pos'])\n },\n created() {\n this.loadCompany();\n document.addEventListener('click', (e) => {\n if(!e.target.classList.contains('get-code-input')) {\n this.showDiscountCodeInput = false\n }\n })\n },\n beforeDestroy () {\n document.removeEventListener('click', (e) => {\n if(!e.target.classList.contains('get-code-input')) {\n this.showDiscountCodeInput = false\n }\n })\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.pos-cart-place-order {\n position: fixed;\n right: 0;\n bottom: 0;\n width: 100%;\n z-index: 1000;\n\n .get-code-input-web {\n display: block;\n padding-left: 20px !important;\n }\n\n span {\n font-size: 14px;\n font-weight: 600;\n word-wrap: break-word; \n white-space: nowrap;\n }\n .rounded-small-screen{\n padding-top:15px;\n padding-bottom:15px;\n }\n .discount-input {\n border:none;\n input {\n height: 35px;\n width: 130px;\n display: inline-block;\n border-radius: 0;\n border-width:1px 0;\n box-shadow:none!important\n }\n display: inline-block;\n\n .input-button-percentage {\n background-color: #FFFFFF;\n border-radius: 6px 0 0 6px;\n height: 35px;\n padding:0 0 0 10px\n }\n\n .input-button {\n color: #FFFFFF;\n border-radius: 0 6px 6px 0;\n height: 35px;\n }\n }\n .btn.pos-btn-order {\n box-shadow: 0 3px 6px #00000029 !important;\n border-radius: 6px !important;\n font-weight:bold;\n padding:14px 12px !important;\n font-size: 16px !important;\n word-wrap: break-word; \n white-space: nowrap;\n }\n .cart-discountcode {\n border-radius: 6px;\n padding: 5px;\n span {\n font-size: 14px;\n font-weight: bold;\n }\n }\n .get-code-input-mobile {\n display: none;\n }\n \n .total-price{\n padding:0;\n text-align: right;\n padding-right: 10px;\n }\n\n @media (max-width: 992px) {\n .btn.pos-btn-order {\n font-size: 12px!important;\n white-space: normal;\n padding:9px !important\n }\n span{\n font-size:12px\n }\n .total-price{\n padding-right: 0px;\n }\n .rounded-small-screen{\n border-top-left-radius:.4rem;\n border-top-right-radius:.4rem;\n padding-top:14px;\n padding-bottom:14px;\n }\n .get-code-input-web {\n display: none !important;\n }\n .get-code-input-mobile {\n margin-left: 30px;\n display: inline-block;\n border-radius: 6px 6px 0 0;\n div {\n padding:.1rem .6rem;\n }\n .arrow-down-icon{\n border:none;\n background: transparent;\n color: black;\n padding: 0 .5rem 0 .8rem;\n }\n .discount-input{\n padding:.4rem 0;\n }\n input,button{\n height:35px!important;\n box-shadow: none;\n box-sizing: border-box;\n outline: none;\n }\n }\n }\n @media (max-width: 576px) {\n \n .cart-discountcode {\n span {\n font-size: 10px;\n }\n }\n .get-code-input-mobile {\n .arrow-down-icon{\n padding: 0 .5rem 0 .8rem;\n }\n .discount-input{\n padding:.2rem 0;\n }\n input,button{\n height:30px!important;\n }\n input{\n font-size:11px!important;\n width:110px\n }\n button{\n padding: 0 10px;\n }\n }\n .cart-shop-icon{\n width:14px!important;\n height:14px!important;\n }\n \n span {\n font-size: 10px;\n }\n span.ml-2 {\n white-space:normal !important;\n }\n .get-code-input svg{\n width: 11px !important;\n height:11px!important\n }\n .pos-cart-place-order .get-code-input-mobile div{\n padding:0.1rem 0.5rem 0\n }\n .ml-3.pos-primary-color{\n margin-left:5px!important\n }\n }\n @media (max-width: 370px) {\n .btn.pos-btn-order {\n padding:7px 6px!important\n }\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosCartPlaceOrder.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosCartPlaceOrder.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PosCartPlaceOrder.vue?vue&type=template&id=35acaf2e&scoped=true\"\nimport script from \"./PosCartPlaceOrder.vue?vue&type=script&lang=js\"\nexport * from \"./PosCartPlaceOrder.vue?vue&type=script&lang=js\"\nimport style0 from \"./PosCartPlaceOrder.vue?vue&type=style&index=0&id=35acaf2e&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35acaf2e\",\n null\n \n)\n\nexport default component.exports","<template>\n <b-container class=\"p-0\">\n\n <b-row v-if=\"errors[0] !== undefined && errors[0] === 'event_not_live'\">\n <b-col class=\"content-block text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" shape-rendering=\"geometricPrecision\" text-rendering=\"geometricPrecision\" image-rendering=\"optimizeQuality\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" viewBox=\"0 0 512 463.43\" style=\"max-width: 100px\" class=\"mt-4 mb-4\">\n <path d=\"M189.46 44.02c34.26-58.66 99.16-58.77 133.24.12l.97 1.81 175.27 304.4c33.71 56.4-1.2 113.76-66.17 112.96v.12H73.53c-.9 0-1.78-.04-2.66-.11-58.34-.79-86.64-54.22-61.9-106.84.39-.85.82-1.67 1.28-2.46l-.04-.03 179.3-309.94-.05-.03zm50.32 302.4c4.26-4.13 9.35-6.19 14.45-6.56 3.4-.24 6.8.29 9.94 1.48 3.13 1.19 6.01 3.03 8.39 5.41 6.92 6.91 8.72 17.38 4.64 26.16-2.69 5.8-7.08 9.7-12.11 11.78-3.03 1.27-6.3 1.84-9.56 1.76-3.27-.08-6.49-.82-9.41-2.18-5.02-2.33-9.3-6.43-11.7-12.2-2.65-6.36-2.27-12.96.63-19.15 1.15-2.46 2.75-4.81 4.73-6.5zm33.86-47.07c-.8 19.91-34.51 19.93-35.28-.01-3.41-34.1-12.13-110.53-11.85-142.58.28-9.87 8.47-15.72 18.94-17.95 3.23-.69 6.78-1.03 10.35-1.02 3.6.01 7.16.36 10.39 1.05 10.82 2.3 19.31 8.39 19.31 18.45l-.05 1-11.81 141.06z\" fill=\"#FFA500\"/>\n </svg>\n \n <h1>{{ $t('event_passed') }}</h1>\n <p>{{ $t('pos_will_automatically_redirect', {seconds: passedRedirectTimer}) }}</p>\n <b-button id=\"btn-pos-redirect\" class=\"mt-2 mb-4\" variant=\"success\" @click=\"$router.push({name: 'Index'})\">{{ $t('pos_redirect_now') }}</b-button>\n </b-col>\n </b-row>\n\n <b-row v-if=\"pos\">\n \n <gtm-page-view v-if=\"event && event.gtm_id\" :gtm_id=\"event.gmt_id\"></gtm-page-view>\n\n <b-col v-if=\"show\">\n <div v-if=\"event.description && event.description.length && event.description_location && event.description_location === 'top'\" class=\"content-block cart-container header-padding information-toggle border-radius margin-bottom-custom\">\n <h3 class=\"pos-primary-color cursor-pointer font-weight-bold information-header mb-0\" @click=\"isEventDescriptionOpened = !isEventDescriptionOpened\" v-b-toggle.event-description>\n <svg height=\"20\" viewBox=\"0 0 48 48\" class=\"mr-2\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 0h48v48h-48z\" fill=\"none\"/><path d=\"M22 34h4v-12h-4v12zm2-30c-11.05 0-20 8.95-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20zm0 36c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm-2-22h4v-4h-4v4z\"/></svg> \n {{ $t('pos_important_information') }}\n <b-icon :icon=\"isEventDescriptionOpened ? 'chevron-up' : 'chevron-down'\" class=\"ml-2\" width=\"10\" height=\"10\"></b-icon>\n </h3>\n\n <b-collapse id=\"event-description\" accordion=\"my-accordion\" role=\"tabpanel\" :visible=\"event.is_description_open\">\n <b-card-body class=\"pt-2 p-0\">\n <b-card-text><div v-html=\"event.description\" class=\"desc-info pos-primary-color\"></div></b-card-text>\n </b-card-body>\n </b-collapse>\n </div>\n <div class=\"content-block cart-container border-radius header-padding\" :class=\"{'group-name-is-default': $store.state.posFirstGroupIsDefault}\">\n <b-row>\n <b-col cols=\"9\">\n <h1 class=\"pos-primary-color mb-1\">{{ $t('view_pos_cart_title') }}</h1>\n <p class=\"pos-description-color font-weight-bold mb-0 pb-0\">{{ $t('pos_buy_your_tickets') }}</p>\n </b-col>\n <b-col class=\"d-flex align-items-center justify-content-end\" cols=\"3\" v-if=\"event.minimum_age\">\n <span class=\"minimum-age pos-primary-color pos-primary-color-border\">\n {{ event.minimum_age }}+\n </span>\n </b-col>\n </b-row>\n </div>\n <product-list></product-list>\n <PosCartPlaceOrder @placeOrder=\"order()\" @continue=\"order()\" :disabled=\"!this.cart.products || this.cart.products.length === 0 || ( event.minimum_age !== '' && event.age_confirmation_checkbox && !age_confirmation_checkbox)\" />\n <div v-if=\"event.minimum_age && event.age_confirmation_checkbox\" class=\"content-block cart-container border-radius margin-top-custom\">\n <b-form-group align=\"end\" class=\"mb-0\">\n <b-row>\n <b-col sm=\"12\" md=\"12\">\n <div>\n <b-checkbox v-model=\"age_confirmation_checkbox\" class=\"pos-age-confirmation\">{{ $t('pos_age_confirmation', event) }}</b-checkbox>\n </div>\n </b-col>\n </b-row>\n </b-form-group>\n </div>\n <div v-if=\"event.description && event.description.length && event.description_location && event.description_location === 'bottom'\" class=\"content-block information-toggle cart-container header-padding border-radius margin-top-custom\">\n <h3 class=\"pos-primary-color cursor-pointer font-weight-bold information-header mb-0\" @click=\"isEventDescriptionOpened = !isEventDescriptionOpened\" v-b-toggle.event-description>\n <svg height=\"25\" viewBox=\"0 0 48 48\" class=\"mr-2\" width=\"25\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 0h48v48h-48z\" fill=\"none\"/><path d=\"M22 34h4v-12h-4v12zm2-30c-11.05 0-20 8.95-20 20s8.95 20 20 20 20-8.95 20-20-8.95-20-20-20zm0 36c-8.82 0-16-7.18-16-16s7.18-16 16-16 16 7.18 16 16-7.18 16-16 16zm-2-22h4v-4h-4v4z\"/></svg>\n {{ $t('pos_important_information') }}\n <b-icon :icon=\"isEventDescriptionOpened ? 'chevron-up' : 'chevron-down'\" class=\"ml-2\" width=\"13\" height=\"13\"></b-icon>\n </h3>\n\n <b-collapse id=\"event-description\" accordion=\"my-accordion\" role=\"tabpanel\" :visible=\"event.is_description_open\">\n <b-card-body class=\"pt-2 p-0\">\n <b-card-text><div v-html=\"event.description\" class=\"desc-info pos-primary-color\"></div></b-card-text>\n </b-card-body>\n </b-collapse>\n </div>\n </b-col>\n <b-col v-else>\n <div class=\"content-block cart-container border-radius\">\n <div class=\"loading-logo text-center\">\n <b-img :src=\"require('./../assets/fairtix.gif')\"/>\n </div>\n </div>\n </b-col>\n </b-row>\n <b-row v-else-if=\"errors.length === 0\">\n <b-col class=\"text-center\">\n <b-spinner></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState} from 'vuex'\nimport ProductList from '@/components/ProductList'\nimport GtmPageView from '@/components/GtmPageView'\nimport PosCartPlaceOrder from '@/components/PosCartPlaceOrder'\n\nexport default {\n name: 'ViewPointOfSale',\n components: {\n ProductList,\n GtmPageView,\n PosCartPlaceOrder\n },\n data() {\n return {\n amounts: {},\n processing: false,\n error: null,\n passedRedirectTimer: 4,\n show: false,\n age_confirmation_checkbox: false,\n gtm_id: null,\n redirectInterval: null,\n isEventDescriptionOpened: false\n }\n },\n methods: {\n order() {\n const products = this.cart.products.map((product) => {\n let manual_price = false\n if(product.product_type_id === this.donation_product_id){\n manual_price = true\n }\n return {\n product_id: product.id,\n amount: product.amount,\n price: product.price,\n manual_price: manual_price,\n is_disabled: product.is_disabled,\n }\n }).filter(p => !p.is_disabled);\n\n if(products.length === 0) {\n this.$store.commit('errors', ['shop_no_products_selected'])\n return\n }\n\n if(this.$route.query.back !== undefined && this.$store.state.order) {\n this.processing = true;\n api.order().updateProducts(this.$store.state.order,products).then(order => {\n this.redirectAfterCreate(order);\n })\n return;\n }\n this.processing = true\n const campaign = this.$route.query.ft_campaign_name\n let source = this.$route.query.utm_campaign\n api.order().create(this.pos.id, products, campaign, this.cart.campaignDiscount, source, this.cart.discountCode).then((order) => {\n this.redirectAfterCreate(order);\n }).catch(() => {\n this.processing = false\n // this.$store.commit('errors', [error.response.error.error])\n })\n },\n redirectAfterCreate(order) {\n const route = this.hasTimeslots ? 'OrderSelectTimeslot' : 'OrderEnterPersonalDetails';\n if(this.campaign) {\n this.$router.push({name: route, params: {id: order.id, secret: order.secret}, query: {ft_campaign_name: this.campaign.slug}})\n }\n else {\n this.$router.push({name: route, params: {id: order.id, secret: order.secret}})\n }\n }\n },\n computed: {\n hasTimeslots() {\n if (!this.event) {\n return false\n }\n return this.event.timeslots.length > 0 || (this.event.opening_hours && this.event.opening_hours.length > 0)\n },\n ...mapState(['cart', 'errors', 'pos', 'event', 'donation_product_id', 'campaign'])\n },\n created() {\n if(this.$route.query.back !== undefined && this.$store.state.order) {\n this.show = true;\n return;\n }\n setTimeout(() => {\n this.show = true;\n }, 1300)\n api.pos().getByUrl(this.$route.params.url).then((pos) => {\n if(this.$route.query.ft_campaign_name) {\n api.campaign().findByDomain(this.$route.query.ft_campaign_name, pos.event.id).then(response => {\n if(response.campaign) {\n this.$store.commit('setCampaign', response.campaign);\n }\n })\n }\n this.$store.commit('setPos', pos)\n this.$store.commit('setLanguage', pos.language)\n\n document.title = this.$t('view_pos_title', {'event_name':this.pos.event.name});\n document.querySelector('head').innerHTML += '<meta name=\"robots\" content=\"noindex\">'\n\n // And we can check against the current stock in the backend\n this.cart.products.forEach(product => {\n this.amounts[product.id] = product.amount\n })\n\n // apply custom styling\n let customCss = document.getElementById('custom-css')\n if (customCss) {\n customCss.remove()\n }\n document.querySelector('head').innerHTML += '<style id=\"custom-css\">' + pos.custom_css + '</style>'\n }).catch((error) => {\n if (error.response.data.length > 0 && error.response.data[0] === 'pos_not_found') {\n this.$router.push({\n name: 'NotFound'\n })\n return\n }\n if(error.response.data.length && error.response.data[0].code === 'event_not_live') {\n this.redirectInterval = setInterval(() => {\n if(this.passedRedirectTimer) {\n this.passedRedirectTimer--;\n }\n }, 1000)\n setTimeout(() => {\n this.$router.push({name: 'Index'})\n }, 4000)\n }\n else {\n this.$store.commit('errors', error.response.data)\n }\n })\n }\n}\n</script>\n<style>\n.desc-info > p{\n margin-bottom:0;\n font-size:.8rem;\n}\n</style>\n<style scoped>\n#pos-image{\n width:100%;\n max-height:250px;\n object-fit:cover\n}\n\n.loading-logo {\n height: 100%;\n min-height: 200px;\n position: relative;\n}\n.loading-logo img {\n height: 200px;\n margin: 0;\n position: absolute;\n top: 50%;\n left: 50%;\n -ms-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n.content-block.cart-container p{\n font-size:16px;\n}\n.content-block.cart-container h2{\n font-weight:bold;\n font-size:1.5rem\n}\n\n.price {\n font-size: 1.5em;\n line-height: 50px;\n}\n\n.group-title {\n background: #efefef;\n color: gray;\n padding: 0.5em;\n font-size: 1.2em;\n text-transform: uppercase;\n}\n\n.product-details {\n padding: 0.5em;\n}\n\n.product-details h3 {\n font-size: 1em;\n}\n\n.hint-container {\n text-align: center;\n}\n\n.hint {\n font-size: 0.8em\n}\n\n.content-block.cart-container /deep/ select.custom-select{\n font-size:16px !important\n}\n\n#btn-pos-redirect{\n font-size: 1.4em;\n border-radius:50px;\n padding:12px 35px\n}\n\n.nopadding{\n padding:0px\n}\n\n.clickable-text{\n cursor:pointer;\n text-decoration:underline;\n font-size:14px\n}\n\n.sidebar-order-button{\n display:block\n}\n\n.margin-top-custom{\n margin-top:35px\n}\n.margin-bottom-custom{\n margin-bottom:35px\n}\n\n@media only screen and (max-width: 990px) {\n .sidebar-order-button{\n display:none\n }\n .sidebar-container{\n padding-left:0px\n }\n #pos-image{\n max-height:none\n }\n .margin-top-custom{\n margin-top:15px\n }\n .margin-bottom-custom{\n margin-bottom:15px\n }\n}\n\n.group-name-is-default {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n margin-bottom: 1px !important;\n padding:42px 47px!important\n}\n\n.minimum-age {\n font-size: 16px !important;\n border: 1px solid;\n border-radius: 6px;\n padding: 11px 8px !important;\n font-weight: bold;\n}\n.information-header {\n font-weight:600;\n font-size: 16px !important;\n}\n.information-toggle {\n padding-top: 22px !important;\n padding-bottom: 22px !important;\n}\n@media only screen and (max-width: 770px) {\n .minimum-age {\n font-size: 14px !important;\n padding: 8px 6px !important;\n }\n .information-header {\n font-size: 12px !important;\n }\n .information-header svg:first-of-type{\n width:15px;\n height:15px;\n }\n .information-header svg:last-of-type{\n width:10px;\n height:10px;\n }\n .group-name-is-default {\n padding:17px!important\n }\n}\n</style>\n\n<style>\n.pos-age-confirmation .custom-control-label {\n font-size: 14px !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewPointOfSale.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewPointOfSale.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ViewPointOfSale.vue?vue&type=template&id=3bcb376a&scoped=true\"\nimport script from \"./ViewPointOfSale.vue?vue&type=script&lang=js\"\nexport * from \"./ViewPointOfSale.vue?vue&type=script&lang=js\"\nimport style0 from \"./ViewPointOfSale.vue?vue&type=style&index=0&id=3bcb376a&prod&lang=css\"\nimport style1 from \"./ViewPointOfSale.vue?vue&type=style&index=1&id=3bcb376a&prod&scoped=true&lang=css\"\nimport style2 from \"./ViewPointOfSale.vue?vue&type=style&index=2&id=3bcb376a&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3bcb376a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',[_c('div',[(_vm.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-wrap event-poses\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-2 order-2 order-lg-1 mb-3\"},[_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{attrs:{\"cols\":\"9\"}}),_c('b-col',{attrs:{\"cols\":\"3\"}},[(_vm.$can('event_point_of_sale_create') && _vm.pointsOfSale.length)?_c('b-button',{staticClass:\"btn-new float-right px-3 py-3\",attrs:{\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.newPos()}}},[_vm._v(_vm._s(_vm.$t('event_pos_create')))]):_c('div',{staticClass:\"float-right px-3 py-3\",staticStyle:{\"height\":\"56px\"}})],1)],1),(!_vm.pointsOfSale.length)?_c('div',[_c('div',{staticClass:\"text-center\"},[_c('b-img',{attrs:{\"width\":\"250\",\"src\":require('../assets/fairtix-no-pos.svg')}}),_c('h3',{staticClass:\"text-primary-new font-weight-bold my-4\"},[_vm._v(_vm._s(_vm.$t('event_products_create_pos')))]),_c('p',{staticClass:\"no-products-hint my-4\"},[_vm._v(_vm._s(_vm.$t('event_products_create_pos_hint')))]),(_vm.$can('event_point_of_sale_create'))?_c('b-button',{staticClass:\"px-5\",attrs:{\"variant\":\"new\",\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.newPos()}}},[_vm._v(\" \"+_vm._s(_vm.$t('event_products_create_pos_btn'))+\" \")]):_vm._e()],1)]):_c('div',[_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container TimeSlot pos-table\",attrs:{\"items\":_vm.pointsOfSale,\"fields\":[{key: 's', label: ''},'status', 'name', 'actions']},scopedSlots:_vm._u([{key:\"cell(s)\",fn:function({item}){return [(!item.products.length && !item.payment_methods.some(pm => pm.online))?_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"icon\":\"exclamation-circle-fill\",\"variant\":\"danger\",\"title\":_vm.$t('pos_no_products_and_pm_are_configured')}}):(!item.products.length)?_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"icon\":\"exclamation-circle-fill\",\"variant\":\"danger\",\"title\":_vm.$t('pos_no_products_are_configured')}}):(!item.payment_methods.some(pm => pm.online))?_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],attrs:{\"icon\":\"exclamation-circle-fill\",\"variant\":\"danger\",\"title\":_vm.$t('pos_no_pm_are_configured')}}):_vm._e()]}},{key:\"cell(status)\",fn:function({item}){return [_c('status-label',{attrs:{\"status\":item.status}})]}},{key:\"cell(actions)\",fn:function({item}){return [_c('b-button',{staticClass:\"btn btn-orange-border mr-3\",on:{\"click\":function($event){return _vm.open(item)}}},[_vm._v(_vm._s(_vm.$t('pos_event_open')))]),(_vm.$can('event_point_of_sale_edit'))?_c('b-button',{staticClass:\"btn btn-row-edit mr-3\",on:{\"click\":function($event){return _vm.edit(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),_c('b-dropdown',{staticClass:\"qr-show\",attrs:{\"text\":_vm.$t('qr_code')}},[_c('b-dropdown-text',{staticClass:\"qr-show-container\"},[_c('qr-code',{attrs:{\"text\":'https:'+_vm.getPosUrl(item),\"description\":_vm.$t('pos_qr_description')}})],1)],1),(_vm.$can('event_point_of_sale_delete'))?_c('a',{staticClass:\"delete-btn ml-3\",on:{\"click\":function($event){return _vm.showDeleteModal(item.id)}}},[_c('b-img',{attrs:{\"src\":require('./../assets/icons/trash.png')}})],1):_vm._e()]}}],null,false,3444291879)})],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('pos_modal_edit'),\"id\":\"edit-pos\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.btn_save_disabled == 1 || _vm.event.isArchived || (_vm.pos && _vm.pos.status === 'live' && (!_vm.posHasProducts || !_vm.posHasPaymentMethods)) || (_vm.pos && _vm.pos.url.includes(' ')),\"variant\":\"success\"},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))])]}}],null,false,545640900)},[(_vm.pos)?[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_name')}},[_c('b-form-input',{model:{value:(_vm.pos.name),callback:function ($$v) {_vm.$set(_vm.pos, \"name\", $$v)},expression:\"pos.name\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_status')}},[_c('b-select',{attrs:{\"options\":['draft', 'live', 'sold-out', 'archived', 'test', 'box-office']},on:{\"change\":function($event){return _vm.posStatusChange(_vm.pos)}},model:{value:(_vm.pos.status),callback:function ($$v) {_vm.$set(_vm.pos, \"status\", $$v)},expression:\"pos.status\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_language')}},[_c('b-select',{attrs:{\"options\":_vm.languages,\"text-field\":\"label\",\"value-field\":\"language\"},model:{value:(_vm.pos.language),callback:function ($$v) {_vm.$set(_vm.pos, \"language\", $$v)},expression:\"pos.language\"}})],1)],1)],1),(_vm.pos.status === 'box-office')?_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',[_c('b-form-checkbox',{staticClass:\"my-auto\",model:{value:(_vm.pos.use_all_stock),callback:function ($$v) {_vm.$set(_vm.pos, \"use_all_stock\", $$v)},expression:\"pos.use_all_stock\"}},[_vm._v(_vm._s(_vm.$t('event_box_office_use_all_stock')))])],1)],1):_vm._e(),(_vm.pos.status !== 'box-office')?_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_url')}},[_c('b-input-group',{scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',[_vm._v(_vm._s('http://' + _vm.company.domain + '/p/'))])]},proxy:true}],null,false,1703214431)},[_c('b-form-input',{attrs:{\"type\":\"url\"},model:{value:(_vm.pos.url),callback:function ($$v) {_vm.$set(_vm.pos, \"url\", $$v)},expression:\"pos.url\"}})],1),(_vm.pos && _vm.pos.url && _vm.pos.url.includes(' '))?_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t('url_cannot_spaces')))]):_vm._e()],1):_vm._e(),_c('b-row',{staticClass:\"mt-4\"},[(_vm.pos.status === 'live')?_c('b-col',[_c('b-form-group',[_c('b-checkbox',{staticClass:\"name-checkbox\",model:{value:(_vm.pos.show_in_overview),callback:function ($$v) {_vm.$set(_vm.pos, \"show_in_overview\", $$v)},expression:\"pos.show_in_overview\"}},[_vm._v(\" \"+_vm._s(_vm.$t('pos_show_in_overview'))+\" \")])],1)],1):_vm._e()],1),_c('h3',{staticClass:\"mt-3\"},[_vm._v(_vm._s(_vm.$t('pos_modal_edit_products')))]),_c('p',{staticClass:\"desc mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_products_hint')))]),_c('div',{staticClass:\"pos-product-groups\"},[_c('vue-draggable',{attrs:{\"handle\":\".handle\"},model:{value:(_vm.productGroups),callback:function ($$v) {_vm.productGroups=$$v},expression:\"productGroups\"}},_vm._l((_vm.productGroups),function(group){return _c('div',{key:`group` + group.name},[_c('b-row',{staticClass:\"product-group-row\",on:{\"click\":function($event){group.open ? group.open = false : group.open = true}}},[_c('b-col',[_c('h5',[_vm._v(_vm._s(group.type == 'default' ? _vm.$t('no_product_group') : group.name))])]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"6\"}},[_c('b-button',{staticClass:\"handle\",attrs:{\"variant\":\"link\"}},[_c('b-icon',{attrs:{\"icon\":\"arrows-move\"}})],1),(!group.open)?_c('b-button',{attrs:{\"variant\":\"link\"}},[_c('b-icon',{attrs:{\"icon\":\"chevron-right\"}})],1):_c('b-button',{attrs:{\"variant\":\"link\"}},[_c('b-icon',{attrs:{\"icon\":\"chevron-down\"}})],1)],1)],1),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(group.open),expression:\"group.open\"}],staticClass:\"product-group-products mb-4\"},[_c('vue-draggable',{attrs:{\"handle\":\".product-handle\"},model:{value:(group.products),callback:function ($$v) {_vm.$set(group, \"products\", $$v)},expression:\"group.products\"}},_vm._l((group.products),function(product,p){return _c('div',{key:`prod` + product.id},[(product.product_type_id !== _vm.donation_product_id)?_c('pos-product',{attrs:{\"sortable\":true},on:{\"input\":_vm.checkPosCanSave},model:{value:(group.products[p]),callback:function ($$v) {_vm.$set(group.products, p, $$v)},expression:\"group.products[p]\"}}):_vm._e()],1)}),0)],1)],1)}),0)],1),_c('h3',{staticClass:\"mt-4\"},[_vm._v(_vm._s(_vm.$t('pos_payment_methods')))]),_c('b-row',{staticClass:\"Rowhead\"},[_c('b-col',{staticClass:\"mb-2 mb-md-3 mt-3\",attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_vm._v(_vm._s(_vm.$t('payment_method')))]),_c('b-col',{staticClass:\"mb-2 mt-1 mt-md-3\",attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_vm._v(_vm._s(_vm.$t('pos_payment_method_fee_fixed')))]),_c('b-col',{staticClass:\"mb-2 mt-1 mt-md-3\",attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_vm._v(_vm._s(_vm.$t('pos_payment_method_fee_percentage')))])],1),_c('vue-draggable',{staticClass:\"mb-2\",attrs:{\"handle\":\".handle\"},model:{value:(_vm.paymentMethods),callback:function ($$v) {_vm.paymentMethods=$$v},expression:\"paymentMethods\"}},_vm._l((_vm.paymentMethods),function(paymentMethod){return _c('b-row',{key:'paymentMethod' + paymentMethod.id,staticClass:\"mb-2 Rowbody\",class:[\n paymentMethod.psd2_calc_to_customer == 'fairtix-fee' ? 'fee-row':'',\n (( _vm.pos.status === 'box-office' && paymentMethod.show_pos) || (_vm.pos.status !== 'box-office' && paymentMethod.show_box) ) ? 'hidden' : ''\n ],attrs:{\"align-v\":\"center\"}},[_c('b-col',{staticClass:\"mb-2 order-1 order-md-1\",attrs:{\"cols\":\"7\",\"md\":\"3\"}},[_c('b-form-group',{staticClass:\"mt-2 mb-0 namePayment\"},[_c('b-checkbox',{staticClass:\"name-checkbox\",on:{\"input\":_vm.checkPosCanSave},model:{value:(paymentMethod.online),callback:function ($$v) {_vm.$set(paymentMethod, \"online\", $$v)},expression:\"paymentMethod.online\"}},[_vm._v(_vm._s(paymentMethod.name))])],1)],1),_c('b-col',{staticClass:\"order-3 order-md-2\",attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('b-form-group',{directives:[{name:\"show\",rawName:\"v-show\",value:(paymentMethod.psd2_calc_to_customer != 'no'),expression:\"paymentMethod.psd2_calc_to_customer != 'no'\"}],staticClass:\"mb-2 mb-md-0\"},[_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.$t('currency')))])]},proxy:true}],null,true)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0,\"id\":'paymentMethodErrorFixed' + paymentMethod.id},on:{\"keyup\":function($event){return _vm.validatePaymentInput()}},model:{value:(paymentMethod.fee_fixed),callback:function ($$v) {_vm.$set(paymentMethod, \"fee_fixed\", $$v)},expression:\"paymentMethod.fee_fixed\"}})],1),(paymentMethod.psd2_calc_to_customer == 'fairtix-fee')?_c('span',{staticClass:\"notice-message\"},[_vm._v(\" \"+_vm._s(_vm.$t('max'))+\": \"+_vm._s(_vm._f(\"currency\")(paymentMethod.payment_method_fees[0].fee_fixed_amount))+\" \")]):_vm._e()],1)],1),_c('b-col',{staticClass:\"order-4 order-md-3\",attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('b-form-group',{directives:[{name:\"show\",rawName:\"v-show\",value:(paymentMethod.psd2_calc_to_customer != 'no'),expression:\"paymentMethod.psd2_calc_to_customer != 'no'\"}],staticClass:\"mb-3 mb-md-0\"},[_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',[_vm._v(_vm._s(_vm.$t('perc')))])]},proxy:true}],null,true)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0,\"id\":'paymentMethodErrorPercentage' + paymentMethod.id},on:{\"keyup\":function($event){return _vm.validatePaymentInput()}},model:{value:(paymentMethod.fee_percentage),callback:function ($$v) {_vm.$set(paymentMethod, \"fee_percentage\", $$v)},expression:\"paymentMethod.fee_percentage\"}})],1),(paymentMethod.psd2_calc_to_customer == 'fairtix-fee')?_c('span',{staticClass:\"notice-message\"},[_vm._v(\" \"+_vm._s(_vm.$t('max'))+\": \"+_vm._s(paymentMethod.payment_method_fees[0].fee_percentage)+\"% \")]):_vm._e()],1)],1),_c('b-col',{staticClass:\"mb-2 text-right order-2 order-md-4\",attrs:{\"cols\":\"5\",\"md\":\"1\"}},[_c('b-button',{staticClass:\"handle px-0\",attrs:{\"variant\":\"link\"}},[_c('b-icon',{attrs:{\"icon\":\"arrows-move\"}})],1)],1)],1)}),1),(_vm.has_donation_product)?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_allow_donation_question'),\"label-cols\":\"6\"}},[_c('b-input-group',{staticClass:\"mt-2\"},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.pos.has_donation),callback:function ($$v) {_vm.$set(_vm.pos, \"has_donation\", $$v)},expression:\"pos.has_donation\"}})],1)],1)],1)],1):_vm._e(),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"value\":true,\"unchecked-value\":false},model:{value:(_vm.showCountdown),callback:function ($$v) {_vm.showCountdown=$$v},expression:\"showCountdown\"}},[_vm._v(_vm._s(_vm.$t('pos_countdown')))])],1),(_vm.showCountdown)?_c('b-form-group',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('pos_countdown_datetime')},model:{value:(_vm.pos.countdown),callback:function ($$v) {_vm.$set(_vm.pos, \"countdown\", $$v)},expression:\"pos.countdown\"}})],1):_vm._e()],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_terms_conditions_url')}},[_c('b-form-input',{model:{value:(_vm.pos.terms_conditions_url),callback:function ($$v) {_vm.$set(_vm.pos, \"terms_conditions_url\", $$v)},expression:\"pos.terms_conditions_url\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_custom_css')}},[_c('b-textarea',{attrs:{\"rows\":\"8\"},model:{value:(_vm.pos.custom_css),callback:function ($$v) {_vm.$set(_vm.pos, \"custom_css\", $$v)},expression:\"pos.custom_css\"}})],1)],1)],1),(_vm.pos && _vm.pos.status === 'live' && !_vm.posHasProducts && !_vm.posHasPaymentMethods)?_c('span',{staticClass:\"text-danger d-block float-right form-control-sm p-0 m-0\"},[_vm._v(_vm._s(_vm.$t('pos_no_products_and_pm_are_configured')))]):(_vm.pos && _vm.pos.status === 'live' && !_vm.posHasProducts)?_c('span',{staticClass:\"text-danger d-block float-right form-control-sm p-0 m-0\"},[_vm._v(_vm._s(_vm.$t('pos_no_products_are_configured')))]):(_vm.pos && _vm.pos.status === 'live' && !_vm.posHasPaymentMethods)?_c('span',{staticClass:\"text-danger d-block float-right form-control-sm p-0 m-0\"},[_vm._v(_vm._s(_vm.$t('pos_no_pm_are_configured')))]):_vm._e()]:_vm._e()],2),_c('b-modal',{attrs:{\"title\":_vm.$t('pos_modal_create'),\"id\":\"new-pos\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.create()}}},[_vm._v(_vm._s(_vm.$t('create')))])]}}],null,false,1794092575)},[(_vm.pos)?[_c('b-form-group',{attrs:{\"label\":_vm.$t('pos_name')}},[_c('b-form-input',{model:{value:(_vm.pos.name),callback:function ($$v) {_vm.$set(_vm.pos, \"name\", $$v)},expression:\"pos.name\"}})],1)]:_vm._e()],2)],1),_c('div',{staticClass:\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\"},[(_vm.event && _vm.event.name)?_c('event-nav',{attrs:{\"event\":_vm.event}}):_vm._e()],1)])],1),_c('b-modal',{attrs:{\"title\":_vm.$t('point_of_sale_modal_delete'),\"id\":\"delete-point-of-sale\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deletePointOfSale()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}],null,false,2542166465)},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('point_of_sale_delete_confirmation')))])],1)],1)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-row',{staticClass:\"flexing PosProduct Myyelement mb-3\"},[_c('b-col',{staticClass:\"myelement\",attrs:{\"cols\":\"12\"}},[_c('b-form-checkbox',{ref:'p' + _vm.product.id + 'check-box',staticClass:\"mySwitch\",attrs:{\"switch\":\"\"},on:{\"input\":function($event){return _vm.$emit('input', _vm.product)}},model:{value:(_vm.product.is_enabled),callback:function ($$v) {_vm.$set(_vm.product, \"is_enabled\", $$v)},expression:\"product.is_enabled\"}},[_vm._v(_vm._s(_vm.product.name))]),_c('b-form-group',{staticClass:\"myInput\",attrs:{\"label-cols\":\"2\"}},[_c('b-input-group',{staticClass:\"inputt\",staticStyle:{\"height\":\"45px\"}},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"min\":0,\"step\":1,\"max\":parseInt(_vm.product.stock) === -1 ? 100000000000 :_vm.product.stock},on:{\"input\":_vm.enableProduct},model:{value:(_vm.product.pos_stock),callback:function ($$v) {_vm.$set(_vm.product, \"pos_stock\", _vm._n($$v))},expression:\"product.pos_stock\"}}),_c('b-input-group-append',[_c('b-input-group-text',[_vm._v(_vm._s('/' + (parseInt(_vm.product.stock) === -1 ? _vm.$t('product_stock_unlimited_icon') : _vm.product.stock)))]),_c('b-form-checkbox',{staticClass:\"my-auto ml-2\",attrs:{\"disabled\":_vm.product.stock !== -1,\"value\":\"-1\",\"unchecked-value\":1},on:{\"change\":_vm.handleUnlimitedClicked},model:{value:(_vm.product.pos_stock),callback:function ($$v) {_vm.$set(_vm.product, \"pos_stock\", $$v)},expression:\"product.pos_stock\"}},[_vm._v(_vm._s(_vm.$t('product_stock_unlimited_text')))])],1)],1)],1),(_vm.sortable)?_c('div',{staticClass:\"flexTop\"},[_c('b-button',{staticClass:\"product-handle\",attrs:{\"variant\":\"link\"}},[_c('b-icon',{attrs:{\"icon\":\"arrows-move\"}})],1)],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-row class=\"flexing PosProduct Myyelement mb-3\">\n <b-col cols=\"12\" class=\"myelement\">\n <b-form-checkbox switch v-model=\"product.is_enabled\" :ref=\"'p' + product.id + 'check-box'\" class=\"mySwitch\" @input=\"$emit('input', product)\">{{product.name}}</b-form-checkbox>\n <!-- <b-form-group :label=\"product.name\" label-cols=\"6\" style=\"width: 100%;\"> -->\n <b-form-group label-cols=\"2\" class=\"myInput\">\n <b-input-group style=\"height: 45px;\" class=\"inputt\">\n <b-form-input type=\"number\" style=\"height: 45px; \"\n @input=\"enableProduct\"\n :min=\"0\"\n :step=\"1\"\n :max=\"parseInt(product.stock) === -1 ? 100000000000 :product.stock\"\n v-model.number=\"product.pos_stock\" />\n <b-input-group-append>\n <b-input-group-text>{{ '/' + (parseInt(product.stock) === -1 ? $t('product_stock_unlimited_icon') : product.stock) }}</b-input-group-text>\n <b-form-checkbox class=\"my-auto ml-2\" v-on:change=\"handleUnlimitedClicked\" :disabled=\"product.stock !== -1\" v-model=\"product.pos_stock\" value=\"-1\" :unchecked-value=\"1\">{{$t('product_stock_unlimited_text')}}</b-form-checkbox>\n </b-input-group-append>\n </b-input-group>\n </b-form-group>\n <div class=\"flexTop\" v-if=\"sortable\">\n <b-button variant=\"link\" class=\"product-handle\">\n <b-icon icon=\"arrows-move\"></b-icon>\n </b-button>\n </div>\n </b-col>\n <!-- <b-col cols=\"2\" lg=\"1\" class=\"flexTop\" v-if=\"sortable\">\n <b-button variant=\"link\" class=\"product-handle\">\n <b-icon icon=\"arrows-move\"></b-icon>\n </b-button>\n </b-col> -->\n </b-row>\n</template>\n<script>\nexport default {\n props: ['value', 'sortable'],\n data() {\n return {\n product: {}\n }\n },\n watch: {\n value() {\n this.product = this.value\n },\n product() {\n this.$emit('input', this.product)\n }\n },\n mounted() {\n this.product = this.value\n },\n methods:{\n handleUnlimitedClicked(value){\n this.product = Object.assign({}, this.product, {\n pos_stock: value\n })\n this.product.is_enabled = true;\n },\n enableProduct() {\n if(this.product.pos_stock !== 0){\n this.product.is_enabled = true;\n this.$refs['p' + this.product.id + 'check-box'].localChecked = true;\n this.$forceUpdate();\n }\n this.$emit('input', this.product)\n }\n }\n}\n</script>\n<style scoped>\n \n .mySwitch{\n width: 55%;\n }\n .myInput{\n width: 45%;\n }\n .myelement{\n display: flex;\n align-items: center;\n }\n.flexing{\n align-items: center;\n}\n.form-group{\n margin-bottom: 0px;\n}\n.input-group-text{\n font-size: 15px;\n}\n\n@media (max-width:992px) {\n.inputt{\n margin: 0;\n}\n .mySwitch{\n width: 100%;\n margin-bottom: 1rem;\n margin-top: .5rem;\n }\n .myInput{\n width: 100%;\n }\n .myelement{\n display: block;\n position: relative;\n }\n .myelement .flexTop{\n position: absolute;\n top: 0;\n right: 0;\n z-index: 3;\n }\n .Myyelement{\n padding: 10px 0px;\n width: 100%;\n border: 1px solid #ddd;\n margin: auto;\n background: #F5F5F5;\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n margin-bottom: 10px;\n}\n.Myyelement div{\n font-size: 13px;\n}\n}\n</style>\n<style>\n .myelement .col-form-label{\n display: none!important;\n }\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosProduct.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PosProduct.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PosProduct.vue?vue&type=template&id=43fea3cf&scoped=true\"\nimport script from \"./PosProduct.vue?vue&type=script&lang=js\"\nexport * from \"./PosProduct.vue?vue&type=script&lang=js\"\nimport style0 from \"./PosProduct.vue?vue&type=style&index=0&id=43fea3cf&prod&scoped=true&lang=css\"\nimport style1 from \"./PosProduct.vue?vue&type=style&index=1&id=43fea3cf&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"43fea3cf\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{attrs:{\"id\":_vm.id}}),_c('div',{staticClass:\"d-none\",attrs:{\"id\":_vm.id+'iv'}}),(_vm.description)?_c('p',{staticClass:\"mt-2\"},[_vm._v(_vm._s(_vm.description))]):_vm._e(),_c('b-button',{staticClass:\"btn btn-orange-border mt-2\",on:{\"click\":_vm.downloadQr}},[_vm._v(_vm._s(_vm.$t('download')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <div :id=\"id\"></div>\n <div class=\"d-none\" :id=\"id+'iv'\"></div>\n <p v-if=\"description\" class=\"mt-2\">{{ description }}</p>\n <b-button class=\"btn btn-orange-border mt-2\" @click=\"downloadQr\">{{ $t('download') }}</b-button>\n </div>\n</template>\n\n<script>\nimport QRCode from 'davidshimjs-qrcodejs'\nimport {randomStr} from \"@/functions\";\n\nexport default {\n name: \"QrCode\",\n props: ['text', 'width', 'height', 'colorDark', 'colorLight', 'description'],\n mounted() {\n this.generateQR();\n },\n methods: {\n generateQR() {\n document.getElementById(this.id).innerHTML = '';\n document.getElementById(this.id+'iv').innerHTML = '';\n new QRCode(document.getElementById(this.id), {\n text: this.text,\n width: this.width ?? 128,\n height: this.height ?? 128,\n colorDark: this.colorDark ?? \"#000000\",\n colorLight: this.colorLight ?? \"#ffffff\",\n correctLevel: QRCode.CorrectLevel.H\n });\n new QRCode(document.getElementById(this.id+'iv'), {\n text: this.text,\n width: 400,\n height: 400,\n colorDark: this.colorDark ?? \"#000000\",\n colorLight: this.colorLight ?? \"#ffffff\",\n correctLevel: QRCode.CorrectLevel.H\n });\n },\n downloadQr() {\n let img = document.querySelector('#' + this.id + 'iv img').src;\n const a = document.createElement('a');\n a.href = img;\n a.download = `${this.id}.png`;\n\n a.click();\n }\n },\n computed: {\n id() {\n return 'qr-' + randomStr();\n }\n },\n watch: {\n text() {\n this.generateQR();\n }\n }\n}\n</script>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./QrCode.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./QrCode.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./QrCode.vue?vue&type=template&id=e44f6402\"\nimport script from \"./QrCode.vue?vue&type=script&lang=js\"\nexport * from \"./QrCode.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n\n <div v-if=\"event\">\n <div>\n <b-alert v-if=\"event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n <div class=\"d-flex flex-wrap event-poses\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-2 order-2 order-lg-1 mb-3\">\n <b-row class=\"mb-3 \">\n <b-col cols=\"9\"></b-col>\n <b-col cols=\"3\">\n <b-button v-if=\"$can('event_point_of_sale_create') && pointsOfSale.length\" class=\"btn-new float-right px-3 py-3\" @click=\"newPos()\" :disabled=\"event.isArchived\">{{ $t('event_pos_create') }}</b-button>\n <div v-else class=\"float-right px-3 py-3\" style=\"height: 56px;\"></div>\n </b-col>\n </b-row>\n <div v-if=\"!pointsOfSale.length\">\n <div class=\"text-center\">\n <b-img width=\"250\" :src=\"require('../assets/fairtix-no-pos.svg')\"/>\n\n <h3 class=\"text-primary-new font-weight-bold my-4\">{{ $t('event_products_create_pos') }}</h3>\n\n <p class=\"no-products-hint my-4\">{{ $t('event_products_create_pos_hint') }}</p>\n\n <b-button v-if=\"$can('event_point_of_sale_create')\" variant=\"new\" class=\"px-5\" :disabled=\"event.isArchived\" @click=\"newPos()\">\n {{ $t('event_products_create_pos_btn') }}\n </b-button>\n </div>\n </div>\n <div v-else>\n <div class=\"tableBig\">\n <b-table class=\"table-container TimeSlot pos-table\" :items=\"pointsOfSale\" :fields=\"[{key: 's', label: ''},'status', 'name', 'actions']\">\n <template v-slot:cell(s)=\"{item}\">\n <b-icon v-if=\"!item.products.length && !item.payment_methods.some(pm => pm.online)\" icon=\"exclamation-circle-fill\" variant=\"danger\" v-b-tooltip.hover :title=\"$t('pos_no_products_and_pm_are_configured')\"></b-icon>\n <b-icon v-else-if=\"!item.products.length\" icon=\"exclamation-circle-fill\" variant=\"danger\" v-b-tooltip.hover :title=\"$t('pos_no_products_are_configured')\"></b-icon>\n <b-icon v-else-if=\"!item.payment_methods.some(pm => pm.online)\" icon=\"exclamation-circle-fill\" variant=\"danger\" v-b-tooltip.hover :title=\"$t('pos_no_pm_are_configured')\"></b-icon>\n </template>\n <template v-slot:cell(status)=\"{item}\">\n <status-label :status=\"item.status\"></status-label>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button class=\"btn btn-orange-border mr-3\" @click=\"open(item)\">{{ $t('pos_event_open') }}</b-button>\n <b-button v-if=\"$can('event_point_of_sale_edit')\" class=\"btn btn-row-edit mr-3\" @click=\"edit(item)\">{{ $t('manage') }}</b-button>\n <b-dropdown :text=\"$t('qr_code')\" class=\"qr-show\">\n <b-dropdown-text class=\"qr-show-container\">\n <qr-code\n :text=\"'https:'+getPosUrl(item)\"\n :description=\"$t('pos_qr_description')\"\n ></qr-code>\n </b-dropdown-text>\n </b-dropdown>\n <a v-if=\"$can('event_point_of_sale_delete')\" class=\"delete-btn ml-3\" @click=\"showDeleteModal(item.id)\">\n <b-img :src=\"require('./../assets/icons/trash.png')\"/>\n </a>\n </template>\n </b-table>\n </div>\n </div>\n <b-modal :title=\"$t('pos_modal_edit')\" id=\"edit-pos\" size=\"lg\">\n <template v-if=\"pos\">\n <b-form-group :label=\"$t('pos_name')\">\n <b-form-input v-model=\"pos.name\"></b-form-input>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('pos_status')\">\n <b-select @change=\"posStatusChange(pos)\" v-model=\"pos.status\" :options=\"['draft', 'live', 'sold-out', 'archived', 'test', 'box-office']\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('pos_language')\">\n <b-select :options=\"languages\" v-model=\"pos.language\" text-field=\"label\" value-field=\"language\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mb-3\" v-if=\"pos.status === 'box-office'\">\n <b-col>\n <b-form-checkbox class=\"my-auto\" v-model=\"pos.use_all_stock\">{{$t('event_box_office_use_all_stock')}}</b-form-checkbox>\n </b-col>\n </b-row>\n <b-form-group :label=\"$t('pos_url')\" v-if=\"pos.status !== 'box-office'\">\n <b-input-group>\n <template #prepend>\n <b-input-group-text>{{ 'http://' + company.domain + '/p/' }}</b-input-group-text>\n </template>\n <b-form-input type=\"url\" v-model=\"pos.url\"></b-form-input>\n </b-input-group>\n <span v-if=\"pos && pos.url && pos.url.includes(' ')\" class=\"text-danger d-block\">{{ $t('url_cannot_spaces') }}</span>\n </b-form-group>\n \n <b-row class=\"mt-4\">\n <b-col v-if=\"pos.status === 'live'\">\n <b-form-group>\n <b-checkbox class=\"name-checkbox\" v-model=\"pos.show_in_overview\">\n {{ $t('pos_show_in_overview') }}\n </b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n\n <h3 class=\"mt-3\">{{ $t('pos_modal_edit_products') }}</h3>\n <p class=\"desc mb-0\">{{ $t('pos_products_hint') }}</p>\n <div class=\"pos-product-groups\">\n <vue-draggable v-model=\"productGroups\" handle=\".handle\">\n <div v-for=\"group in productGroups\" :key=\"`group` + group.name\">\n <b-row class=\"product-group-row \" @click=\"group.open ? group.open = false : group.open = true\">\n <b-col>\n <h5>{{ group.type == 'default' ? $t('no_product_group') : group.name }}</h5>\n </b-col>\n <b-col cols=\"6\" class=\"text-right\">\n <b-button variant=\"link\" class=\"handle\">\n <b-icon icon=\"arrows-move\"></b-icon>\n </b-button>\n <b-button v-if=\"!group.open\" variant=\"link\">\n <b-icon icon=\"chevron-right\"></b-icon>\n </b-button>\n <b-button v-else variant=\"link\">\n <b-icon icon=\"chevron-down\"></b-icon>\n </b-button>\n </b-col>\n </b-row>\n <div v-show=\"group.open\" class=\"product-group-products mb-4\">\n <vue-draggable v-model=\"group.products\" handle=\".product-handle\">\n <div v-for=\"(product, p) in group.products\" :key=\"`prod` + product.id\">\n <pos-product\n v-if=\"product.product_type_id !== donation_product_id\"\n v-model=\"group.products[p]\"\n :sortable=\"true\"\n @input=\"checkPosCanSave\"\n ></pos-product>\n </div>\n </vue-draggable>\n </div>\n </div>\n </vue-draggable>\n </div>\n <h3 class=\"mt-4\">{{ $t('pos_payment_methods') }}</h3>\n <b-row class=\"Rowhead\">\n <b-col cols=\"12\" md=\"4\" class=\"mb-2 mb-md-3 mt-3\">{{ $t('payment_method') }}</b-col>\n <b-col cols=\"12\" md=\"4\" class=\"mb-2 mt-1 mt-md-3\">{{ $t('pos_payment_method_fee_fixed') }}</b-col>\n <b-col cols=\"12\" md=\"4\" class=\"mb-2 mt-1 mt-md-3\">{{ $t('pos_payment_method_fee_percentage') }}</b-col>\n </b-row>\n <vue-draggable v-model=\"paymentMethods\" handle=\".handle\" class=\"mb-2\">\n\n <b-row\n v-for=\"(paymentMethod) in paymentMethods\"\n :key=\"'paymentMethod' + paymentMethod.id\"\n align-v=\"center\"\n :class=\"[\n paymentMethod.psd2_calc_to_customer == 'fairtix-fee' ? 'fee-row':'',\n (( pos.status === 'box-office' && paymentMethod.show_pos) || (pos.status !== 'box-office' && paymentMethod.show_box) ) ? 'hidden' : ''\n ]\"\n class=\"mb-2 Rowbody\"\n >\n <b-col cols=\"7\" md=\"3\" class=\"mb-2 order-1 order-md-1\">\n <b-form-group class=\"mt-2 mb-0 namePayment\">\n <b-checkbox class=\"name-checkbox\" @input=\"checkPosCanSave\" v-model=\"paymentMethod.online\">{{ paymentMethod.name }}</b-checkbox>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" md=\"4\" class=\"order-3 order-md-2\">\n <b-form-group v-show=\"paymentMethod.psd2_calc_to_customer != 'no'\" class=\"mb-2 mb-md-0 \">\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"paymentMethod.fee_fixed\"\n :step=\"0.01\"\n :min=\"0\"\n :id=\"'paymentMethodErrorFixed' + paymentMethod.id\"\n @keyup=\"validatePaymentInput()\"\n ></b-form-input>\n </b-input-group >\n <span class=\"notice-message\" v-if=\"paymentMethod.psd2_calc_to_customer == 'fairtix-fee'\">\n {{ $t('max') }}: {{ paymentMethod.payment_method_fees[0].fee_fixed_amount | currency}}\n </span>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" md=\"4\" class=\"order-4 order-md-3\">\n <b-form-group v-show=\"paymentMethod.psd2_calc_to_customer != 'no'\" class=\"mb-3 mb-md-0 \" >\n <b-input-group style=\"height:45px\">\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"paymentMethod.fee_percentage\"\n :step=\"0.01\"\n :min=\"0\"\n :id=\"'paymentMethodErrorPercentage' + paymentMethod.id\"\n @keyup=\"validatePaymentInput()\"\n ></b-form-input>\n <template #append>\n <b-input-group-text>{{ $t('perc') }}</b-input-group-text>\n </template>\n </b-input-group>\n <span class=\"notice-message\" v-if=\"paymentMethod.psd2_calc_to_customer == 'fairtix-fee'\">\n {{ $t('max') }}: {{paymentMethod.payment_method_fees[0].fee_percentage}}%\n </span>\n </b-form-group>\n </b-col>\n <b-col cols=\"5\" md=\"1\" class=\"mb-2 text-right order-2 order-md-4\">\n <b-button variant=\"link\" class=\"handle px-0\">\n <b-icon icon=\"arrows-move\"></b-icon>\n </b-button>\n </b-col>\n </b-row>\n </vue-draggable>\n <b-row v-if=\"has_donation_product\">\n <b-col cols=\"6\">\n <b-form-group :label=\"$t('pos_allow_donation_question')\" label-cols=\"6\">\n <b-input-group class=\"mt-2\">\n <b-form-checkbox switch v-model=\"pos.has_donation\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox>\n </b-input-group>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\">\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"showCountdown\" :value=\"true\" :unchecked-value=\"false\">{{ $t('pos_countdown') }}</b-form-checkbox>\n </b-form-group>\n <b-form-group v-if=\"showCountdown\">\n <date-time-picker v-model=\"pos.countdown\" :label=\"$t('pos_countdown_datetime')\"></date-time-picker>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('pos_terms_conditions_url')\">\n <b-form-input v-model=\"pos.terms_conditions_url\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('pos_custom_css')\">\n <b-textarea v-model=\"pos.custom_css\" rows=\"8\"></b-textarea>\n </b-form-group>\n </b-col>\n </b-row>\n <span v-if=\"pos && pos.status === 'live' && !posHasProducts && !posHasPaymentMethods\" class=\"text-danger d-block float-right form-control-sm p-0 m-0\">{{ $t('pos_no_products_and_pm_are_configured') }}</span>\n <span v-else-if=\"pos && pos.status === 'live' && !posHasProducts\" class=\"text-danger d-block float-right form-control-sm p-0 m-0\">{{ $t('pos_no_products_are_configured') }}</span>\n <span v-else-if=\"pos && pos.status === 'live' && !posHasPaymentMethods\" class=\"text-danger d-block float-right form-control-sm p-0 m-0\">{{ $t('pos_no_pm_are_configured') }}</span>\n </template>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"btn_save_disabled == 1 || event.isArchived || (pos && pos.status === 'live' && (!posHasProducts || !posHasPaymentMethods)) || (pos && pos.url.includes(' '))\" @click=\"save()\" variant=\"success\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('pos_modal_create')\" id=\"new-pos\" size=\"lg\">\n <template v-if=\"pos\">\n <b-form-group :label=\"$t('pos_name')\">\n <b-form-input v-model=\"pos.name\"></b-form-input>\n </b-form-group>\n </template>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"create()\" variant=\"success\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n </div>\n <div class=\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1 \">\n <event-nav v-if=\"event && event.name\" :event=\"event\"></event-nav>\n </div>\n </div>\n </div>\n <b-modal :title=\"$t('point_of_sale_modal_delete')\" id=\"delete-point-of-sale\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('point_of_sale_delete_confirmation') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"deletePointOfSale()\" :disabled=\"event.isArchived\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport EventNav from \"@/components/EventNav\";\nimport VueDraggable from 'vuedraggable'\nimport PosProduct from \"@/components/PosProduct\";\nimport StatusLabel from \"@/components/StatusLabel\";\nimport moment from \"moment\";\nimport {mapActions, mapState} from \"vuex\";\nimport {deepClone, validateUrl, validateSlug} from \"@/functions\";\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport QrCode from \"@/components/QrCode.vue\";\n\nexport default {\n components: {\n EventNav,\n VueDraggable,\n PosProduct,\n StatusLabel,\n DateTimePicker,\n QrCode\n },\n name: 'EventPointsOfSale',\n data() {\n return {\n has_donation_product: false,\n newPosProduct: {},\n saving: false,\n event: null,\n pointsOfSale: [],\n pos: null,\n company: null,\n products: [],\n deletes: [],\n selected_product_id: null,\n originalProducts: [],\n paymentMethods: [],\n productGroups: [],\n orgProductGroups: [],\n btn_save_disabled: false,\n originalPaymentMethods: [],\n languages: [{\n label: this.$t('lang_nl'),\n language: 'nl'\n }, {\n label: this.$t('lang_en'),\n language: 'en'\n }, {\n label: this.$t('lang_de'),\n language: 'de'\n }, {\n label: this.$t('lang_es'),\n language: 'es'\n }, {\n label: this.$t('lang_fr'),\n language: 'fr'\n }\n ],\n posHasProducts: false,\n posHasPaymentMethods: false,\n showCountdown: false,\n }\n },\n created() {\n document.title = this.$t('backend_title_events_pos')\n if(this.$store.state.user) {\n if(!this.$can('event_point_of_sale_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().get(this.$route.params.id).then(event => {\n this.event = {...event,isArchived :( moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\"}\n })\n api.event().posDependencies().then(response => {\n this.company = response.company\n this.originalPaymentMethods = response.payment_methods.filter((paymentMethod) => {\n // Add the VAT percentage of where the company is based if applicable\n if(response.company.vat_percentage && paymentMethod.payment_method_fees && paymentMethod.payment_method_fees[0].fee_fixed_amount){\n paymentMethod.payment_method_fees[0].fee_fixed_amount += (response.company.vat_percentage/100) * paymentMethod.payment_method_fees[0].fee_fixed_amount\n paymentMethod.payment_method_fees[0].fee_fixed_amount = Number(paymentMethod.payment_method_fees[0].fee_fixed_amount).toFixed(2)\n }\n return paymentMethod\n })\n })\n \n api.product().get(this.$route.params.id).then(products => {\n this.originalProducts = products\n })\n\n api.product().getGroups(this.$route.params.id).then((productGroups => {\n this.productGroups = productGroups.filter((group) => {\n return group.products.length > 0\n }).map((group) => {\n group.open = true\n return group\n })\n this.orgProductGroups = deepClone(this.productGroups);\n }))\n\n this.get()\n\n this.loadProductTypeDonation()\n },\n methods: {\n newPos() {\n this.pos = {}\n this.$bvModal.show('new-pos')\n },\n get() {\n api.pos().get(this.$route.params.id).then(pointsOfSale => {\n this.pointsOfSale = pointsOfSale\n })\n },\n showDeleteModal(point_of_sale_id) {\n this.$bvModal.show('delete-point-of-sale')\n this.selected_point_of_sale_id = point_of_sale_id\n },\n deletePointOfSale() {\n this.$bvModal.hide('delete-point-of-sale')\n api.pos().delete(this.$route.params.id, this.selected_point_of_sale_id).then(() => {\n this.selected_point_of_sale_id = null\n this.get()\n this.$store.commit('success', 'point_of_sale_has_been_deleted')\n })\n },\n posStatusChange(pos){\n this.paymentMethods = this.paymentMethods.map(paymentMethod => {\n if(pos.status === 'box-office' && paymentMethod.show_pos){\n paymentMethod.online = false\n }\n if(pos.status !== 'box-office' && paymentMethod.show_box){\n paymentMethod.online = false\n }\n if(pos.status === 'box-office' && paymentMethod.show_box){\n paymentMethod.online = true\n }\n return paymentMethod\n })\n },\n edit(pos) {\n pos.use_all_stock = (pos.use_all_stock) ? true : false\n pos.show_in_overview = (pos.show_in_overview) ? true : false\n \n this.pos = Object.assign({}, pos)\n this.showCountdown = false;\n if(pos.countdown) {\n this.showCountdown = true;\n }\n\n this.productGroups = deepClone(this.orgProductGroups);\n\n // Load the pos stock for all the grouped products.\n this.productGroups = this.productGroups.map(productGroup => {\n\n // Map all the products and try to find their stock in the POS.\n productGroup.products = productGroup.products.map(product => {\n //check if pos has donation product this controls the visibility of the toggle btn\n if (product.product_type_id === this.donation_product_id) {\n this.has_donation_product = true;\n }\n if (!this.pos.products) {\n // New pos\n return product\n }\n let posProduct = this.pos.products.find(posProduct => {\n return posProduct.product_id === product.id\n })\n if (posProduct) {\n product.pos_stock = posProduct.stock\n product.sort = posProduct.sort\n product.is_enabled = true\n\n //toggle allow donation btn based on products in the pos\n if (product.product_type_id === this.donation_product_id) {\n this.pos.has_donation = this.has_donation_product;\n }\n } else {\n //no point of sale .. set default values\n product.pos_stock = 0;\n product.sort = 0;\n product.is_enabled = false;\n\n }\n return product\n })\n\n // Sort the products in the group\n productGroup.products.sort((a, b) => {\n return a.sort - b.sort\n })\n\n // Check if the product group has a sort within the point of sale\n if (!this.pos.pos_product_groups) {\n return productGroup\n }\n\n let posProductGroup = this.pos.pos_product_groups.find(posProductGroup => {\n return posProductGroup.product_group_id === productGroup.id\n })\n if (posProductGroup) {\n productGroup.sort = posProductGroup.sort\n }\n\n if(productGroup.sort === undefined){\n productGroup.sort = 999\n }\n\n return productGroup\n }).sort((a, b) => {\n // Sort all the product groups\n return a.sort - b.sort\n })\n\n this.paymentMethods = deepClone(this.originalPaymentMethods).map(paymentMethod => {\n\n // If there are not any payment methods yet, return the default\n if (!this.pos.payment_methods) {\n return paymentMethod\n }\n\n let posPayment = this.pos.payment_methods.find(posPaymentMethod => {\n return (posPaymentMethod.payment_method_id === paymentMethod.id && posPaymentMethod.online)\n })\n\n if (posPayment) {\n paymentMethod.online = true\n paymentMethod.fee_fixed = posPayment.fee_fixed\n paymentMethod.fee_percentage = posPayment.fee_percentage\n paymentMethod.sort = posPayment.sort\n } else {\n paymentMethod.sort = 1000\n paymentMethod.fee_fixed = 0\n paymentMethod.fee_percentage = 0\n }\n paymentMethod.err_fee_fixed = false\n paymentMethod.err_fee_percentage = false\n\n return paymentMethod\n }).sort((a, b) => {\n return a.sort - b.sort\n })\n\n setTimeout(() => {\n this.checkPosCanSave();\n }, 100)\n\n this.$bvModal.show('edit-pos')\n },\n save() {\n\n // Make te language mandatory\n if (!this.pos.language || (this.pos.language && this.pos.language == '')) {\n this.$store.commit('errors', [this.$t('pos_no_language')]);\n return;\n }\n\n if (this.pos.terms_conditions_url) {\n if (!validateUrl(this.pos.terms_conditions_url)) {\n this.$store.commit('errors', [this.$t('pos_invalid_url')]);\n return;\n }\n }\n\n if (this.pos.url) {\n if (!validateSlug(this.pos.url)) {\n this.$store.commit('errors', [this.$t('pos_invalid_url')]);\n return;\n }\n }\n\n this.pos.payment_methods = this.paymentMethods.map((paymentMethod) => {\n return {\n payment_method_id: paymentMethod.id,\n fee_percentage: paymentMethod.fee_percentage,\n fee_fixed: paymentMethod.fee_fixed,\n online: paymentMethod.online\n }\n })\n\n this.pos.groups = this.productGroups.map((productGroup) => {\n productGroup.products = productGroup.products.map((product) => {\n //check if donation is enabled, remove the donation product if disabled\n if (product.product_type_id === this.donation_product_id) {\n product.is_enabled = !(this.has_donation_product && !this.pos.has_donation);\n product.pos_stock = -1;\n }\n\n if (!product.is_enabled) {\n //set stock to zero , removes it from db\n product.pos_stock = 0;\n }\n return product;\n })\n return productGroup;\n })\n\n // Empty the countdown fields when the checkbox is unset\n if(!this.showCountdown){\n this.pos.countdown = null\n }\n\n // Disable show in overview when the POS is not live\n if(this.pos.status !== 'live'){\n this.pos.show_in_overview = false\n }\n \n api.pos().save(this.$route.params.id, this.pos).then(() => {\n this.get()\n this.$bvModal.hide('edit-pos')\n this.pos = null\n this.$store.commit('success', 'pos_updated')\n })\n },\n open(pos) {\n window.open(this.getPosUrl(pos), '_blank')\n },\n getPosUrl(pos) {\n let fullUrl = '';\n if(pos.status === 'box-office'){\n let routeData = this.$router.resolve({name: 'BoxOfficeLogin'});\n fullUrl = '//' + this.company.domain + routeData.href\n } else {\n fullUrl = '//' + this.company.domain + '/p/' + pos.url\n }\n return fullUrl;\n },\n create() {\n api.pos().create(this.$route.params.id, this.pos).then((pos) => {\n this.pointsOfSale.push(pos)\n if(this.$can('event_point_of_sale_edit')) {\n this.edit(pos);\n }\n this.$bvModal.hide('new-pos')\n })\n },\n validatePaymentInput() {\n this.btn_save_disabled = false\n\n for (let i = 0; i < this.paymentMethods.length; i++) {\n\n if (this.paymentMethods[i].psd2_calc_to_customer == 'no') {\n this.paymentMethods[i].fee_fixed = 0\n this.paymentMethods[i].fee_percentage = 0\n } else if (this.paymentMethods[i].psd2_calc_to_customer == 'fairtix-fee') {\n let el = document.getElementById(\"paymentMethodErrorFixed\" + this.paymentMethods[i].id);\n if (this.paymentMethods[i].fee_fixed > this.paymentMethods[i].payment_method_fees[0].fee_fixed_amount) {\n el.classList.add('is-invalid')\n this.btn_save_disabled = true\n } else {\n el.classList.remove('is-invalid')\n }\n\n el = document.getElementById(\"paymentMethodErrorPercentage\" + this.paymentMethods[i].id);\n if (this.paymentMethods[i].fee_percentage > this.paymentMethods[i].payment_method_fees[0].fee_percentage) {\n el.classList.add('is-invalid')\n this.btn_save_disabled = true\n } else {\n el.classList.remove('is-invalid')\n }\n }\n\n }\n },\n checkPosCanSave() {\n this.posHasProducts = this.productGroups.some(pg => {\n return pg.products.some(p => p.is_enabled && p.pos_stock !== 0 && p.pos_stock !== null && p.pos_stock !== '')\n })\n this.posHasPaymentMethods = this.paymentMethods.some(pm => pm.online);\n },\n ...mapActions(['loadProductTypeDonation'])\n },\n computed: {\n ...mapState(['donation_product_id']),\n },\n watch: {\n paymentMethods() {\n this.checkPosCanSave();\n },\n '$store.state.user': {\n handler() {\n if(!this.$can('event_point_of_sale_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped lang=\"scss\">\n\n.notice-message {\n font-size: 9pt\n}\n\n.hidden{\n display:none !important\n}\n\n.product-group-products .input-group-append > .input-group-text {\n min-width: 100px;\n}\n\n.product-group-row {\n align-items: center;\n padding: 20px 0 3px;\n border-bottom: solid 1px silver;\n h5{\n margin: 0;\n }\n}\n\n.product-group-products {\n padding-top: .7em;\n}\n\n.pos-product-groups {\n margin-bottom: 1em;\n}\n\n.handle {\n cursor: grab !important;\n margin-top: 0px\n}\n\n\n\n\ntbody button{\n border-color: #ddd!important;\n}\ntbody:hover button{\n background-color: unset !important;\n color: unset!important;\n border-color: #ddd!important;\n}\ntbody button:hover{\n background-color: #F0B52D !important;\n color: #fff!important;\n border-color: #F0B52D!important;\n}\n.desc{\n font-size: 13px;\n}\n@media (max-width: 1550px){\nh1{\n font-size: 2.2rem;\n}\n}\n@media (max-width:576px) {\n .Rowhead{\n width: 100%;\n background-color: #193E58;\n margin:10px auto;\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n}\n.Rowhead div{\n color: #fff!important;\n font-size: 13px;\n}\n.Rowbody{\n padding: 10px 0px;\n width: 100%;\n border: 1px solid #ddd;\n margin: auto;\n background: #F5F5F5;\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n \n}\n.Rowbody div{\n font-size: 13px;\n}\n.custom-control-label::before,.custom-control-label::after{\n top: 0rem;\n}\n.product-group-row {\n h5{\n font-size: 18px;\n }\n}\n}\n</style>\n<style scoped>\n/deep/ .pos-table td:first-child {\n text-align: center;\n width: 60px;\n}\n</style>\n<style>\n@media (max-width:576px) {\n#edit-pos .Rowbody .custom-control-label::before,#edit-pos .Rowbody .custom-control-label::after{\n top: 0rem!important;\n}\n#edit-pos{\n padding: 0!important;\n}\n}\n\n.event-poses .qr-show .btn.dropdown-toggle {\n background-color: #FFF;\n border-radius: 6px;\n border: 2px solid #ddd;\n color: #808080;\n padding: 5px 20px;\n font-size: 13px;\n font-weight: bold;\n}\n\n.event-poses .qr-show .btn.dropdown-toggle::after {\n margin-bottom: -2px !important;\n}\n\n.event-poses tbody:hover button {\n background-color: unset !important;\n color: unset !important;\n border-color: #ddd !important;\n}\n\n.event-poses tbody button:hover {\n background-color: #F0B52D !important;\n color: #fff !important;\n border-color: #F0B52D !important;\n}\n\n.event-poses .qr-show-container .b-dropdown-text {\n text-align: center;\n padding: 0.5rem !important;\n width: 300px;\n}\n\n.event-poses .qr-show-container .b-dropdown-text img {\n margin: auto;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventPointsOfSale.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventPointsOfSale.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventPointsOfSale.vue?vue&type=template&id=bb97ae60&scoped=true\"\nimport script from \"./EventPointsOfSale.vue?vue&type=script&lang=js\"\nexport * from \"./EventPointsOfSale.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventPointsOfSale.vue?vue&type=style&index=0&id=bb97ae60&prod&scoped=true&lang=scss\"\nimport style1 from \"./EventPointsOfSale.vue?vue&type=style&index=1&id=bb97ae60&prod&scoped=true&lang=css\"\nimport style2 from \"./EventPointsOfSale.vue?vue&type=style&index=2&id=bb97ae60&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bb97ae60\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',[_c('div',[(_vm.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\"},[_c('h3',{staticClass:\"mb-3\",domProps:{\"textContent\":_vm._s(_vm.$t('event_timeslot_title', _vm.event))}}),_c('b-row',[(_vm.event.continuous)?_c('b-col',[_c('b-table',{attrs:{\"items\":_vm.openingHoursParsed,\"fields\":_vm.fields},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function({item}){return [_c('b-button',{attrs:{\"variant\":\"danger\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.remove(item)}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}},{key:\"cell(spots)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.spots)+\" \"),(item.interval === 'hourly')?_c('span',[_vm._v(_vm._s(_vm.$t('opening_hours_hourly')))]):_c('span',[_vm._v(_vm._s(_vm.$t('opening_hours_all_day')))])]}}],null,false,1062059351)}),_c('b-modal',{attrs:{\"title\":_vm.$t('opening_hours_create'),\"id\":\"new-opening-hour\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.cancelCreateOpeningHour()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.createOpeningHour()}}},[_vm._v(_vm._s(_vm.$t('create')))])]}}],null,false,1673573021)},[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_day_of_week')}},[_c('b-form-select',{attrs:{\"options\":_vm.daysOfWeek,\"value-field\":\"id\"},model:{value:(_vm.openingHour.day_of_week),callback:function ($$v) {_vm.$set(_vm.openingHour, \"day_of_week\", $$v)},expression:\"openingHour.day_of_week\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_opens_at')}},[_c('b-form-input',{attrs:{\"type\":\"time\"},model:{value:(_vm.openingHour.opens_at),callback:function ($$v) {_vm.$set(_vm.openingHour, \"opens_at\", $$v)},expression:\"openingHour.opens_at\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_closes_at')}},[_c('b-form-input',{attrs:{\"type\":\"time\"},model:{value:(_vm.openingHour.closes_at),callback:function ($$v) {_vm.$set(_vm.openingHour, \"closes_at\", $$v)},expression:\"openingHour.closes_at\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_spots')}},[_c('b-form-input',{model:{value:(_vm.openingHour.spots),callback:function ($$v) {_vm.$set(_vm.openingHour, \"spots\", $$v)},expression:\"openingHour.spots\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hour_interval')}},[_c('b-form-select',{attrs:{\"options\":_vm.intervals,\"value-field\":\"id\"},model:{value:(_vm.openingHour.interval),callback:function ($$v) {_vm.$set(_vm.openingHour, \"interval\", $$v)},expression:\"openingHour.interval\"}})],1)],1)],1)],1),_c('b-button',{attrs:{\"size\":\"sm\"},on:{\"click\":function($event){return _vm.$bvModal.show('new-opening-hour')}}},[_vm._v(\" \"+_vm._s(_vm.$t('opening_hour_create'))+\" \")])],1):_vm._e(),_c('b-col',[_c('b-calendar',{attrs:{\"block\":\"\",\"start-weekday\":1,\"hide-header\":true,\"date-info-fn\":_vm.dateInfo,\"date-disabled-fn\":_vm.dateDisabled},on:{\"context\":_vm.getNewHours,\"selected\":_vm.calendarClicked},model:{value:(_vm.pickedDate),callback:function ($$v) {_vm.pickedDate=$$v},expression:\"pickedDate\"}})],1)],1),_c('b-modal',{attrs:{\"title\":_vm.dayModalTitle,\"id\":\"day-timeslots\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{on:{\"click\":function($event){return _vm.$bvModal.hide('day-timeslots')}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.adjust()}}},[_vm._v(_vm._s(_vm.$t('opening_hours_adjust')))])]},proxy:true}],null,false,2539743523)},[_vm._l((_vm.dayTimeslots),function(timeslot,i){return _c('b-row',{key:'ts' + i,staticClass:\"mb-3 mb-sm-2\"},[_c('b-col',{staticClass:\"align-middle\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_vm._v(_vm._s(_vm._f(\"time_format\")(timeslot.day + ' ' + timeslot.opens_at))+\" - \"+_vm._s(_vm._f(\"time_format\")(timeslot.day + ' ' + timeslot.closes_at)))]),_c('b-col',{attrs:{\"cols\":\"10\",\"lg\":\"7\"}},[_c('b-form-input',{model:{value:(timeslot.spots),callback:function ($$v) {_vm.$set(timeslot, \"spots\", $$v)},expression:\"timeslot.spots\"}})],1),_c('b-col',{staticClass:\"align-middle pl-0 pl-sm-2 pl-md-1\",attrs:{\"cols\":\"2\",\"lg\":\"1\"}},[(timeslot.timeslot_id)?_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteTimeslot(timeslot)}}},[_vm._v(\"x\")]):_vm._e()],1)],1)}),_c('hr'),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_opens_at')}},[_c('b-form-input',{attrs:{\"type\":\"time\"},model:{value:(_vm.timeslot.opens_at),callback:function ($$v) {_vm.$set(_vm.timeslot, \"opens_at\", $$v)},expression:\"timeslot.opens_at\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_closes_at')}},[_c('b-form-input',{attrs:{\"type\":\"time\"},model:{value:(_vm.timeslot.closes_at),callback:function ($$v) {_vm.$set(_vm.timeslot, \"closes_at\", $$v)},expression:\"timeslot.closes_at\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('opening_hours_spots')}},[_c('b-form-input',{model:{value:(_vm.timeslot.spots),callback:function ($$v) {_vm.$set(_vm.timeslot, \"spots\", $$v)},expression:\"timeslot.spots\"}})],1)],1)],1),_c('b-button',{staticClass:\"px-4\",on:{\"click\":function($event){return _vm.addTimeslot()}}},[_vm._v(_vm._s(_vm.$t('add')))])],2)],1),_c('div',{staticClass:\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 mt-0 mt-md-1 order-lg-2 mb-4 mb-lg-1 button-row-included\"},[(_vm.event && _vm.event.name)?_c('event-nav',{attrs:{\"event\":_vm.event}}):_vm._e()],1)])],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"event\">\n <div>\n <b-alert v-if=\"event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n <div class=\"d-flex flex-wrap\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\">\n <h3 v-text=\"$t('event_timeslot_title', event)\" class=\" mb-3\"></h3>\n <b-row>\n <b-col v-if=\"event.continuous\">\n <b-table :items=\"openingHoursParsed\" :fields=\"fields\">\n <template v-slot:cell(actions)=\"{item}\">\n <b-button variant=\"danger\" size=\"sm\" @click=\"remove(item)\">{{ $t('delete') }}</b-button>\n </template>\n <template v-slot:cell(spots)=\"{item}\">\n {{ item.spots }}\n <span v-if=\"item.interval === 'hourly'\">{{ $t('opening_hours_hourly') }}</span>\n <span v-else>{{ $t('opening_hours_all_day') }}</span>\n </template>\n </b-table>\n\n <b-modal :title=\"$t('opening_hours_create')\" id=\"new-opening-hour\" size=\"lg\">\n <b-form-group :label=\"$t('opening_hours_day_of_week')\">\n <b-form-select\n v-model=\"openingHour.day_of_week\"\n :options=\"daysOfWeek\"\n value-field=\"id\"\n ></b-form-select>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('opening_hours_opens_at')\">\n <b-form-input type=\"time\" v-model=\"openingHour.opens_at\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('opening_hours_closes_at')\">\n <b-form-input type=\"time\" v-model=\"openingHour.closes_at\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('opening_hours_spots')\">\n <b-form-input v-model=\"openingHour.spots\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('opening_hour_interval')\">\n <b-form-select\n v-model=\"openingHour.interval\"\n :options=\"intervals\"\n value-field=\"id\"\n ></b-form-select>\n </b-form-group>\n </b-col>\n </b-row>\n <template #modal-footer=\"{}\">\n <b-button @click=\"cancelCreateOpeningHour()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createOpeningHour()\" variant=\"success\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-button size=\"sm\" @click=\"$bvModal.show('new-opening-hour')\">\n {{ $t('opening_hour_create') }}\n </b-button>\n </b-col>\n <b-col>\n <b-calendar block\n :start-weekday=\"1\"\n :hide-header=\"true\"\n :date-info-fn=\"dateInfo\"\n :date-disabled-fn=\"dateDisabled\"\n @context=\"getNewHours\"\n v-model=\"pickedDate\"\n @selected=\"calendarClicked\"\n ></b-calendar>\n </b-col>\n </b-row>\n <b-modal :title=\"dayModalTitle\" id=\"day-timeslots\" size=\"lg\">\n <b-row v-for=\"(timeslot, i) in dayTimeslots\" :key=\"'ts' + i\" class=\"mb-3 mb-sm-2\">\n <b-col cols=\"12\" lg=\"4\" class=\"align-middle\">{{ timeslot.day + ' ' + timeslot.opens_at | time_format }} - {{ timeslot.day + ' ' + timeslot.closes_at | time_format }}</b-col>\n <b-col cols=\"10\" lg=\"7\"><b-form-input v-model=\"timeslot.spots\"></b-form-input></b-col>\n <b-col cols=\"2\" lg=\"1\" class=\"align-middle pl-0 pl-sm-2 pl-md-1\">\n <b-button v-if=\"timeslot.timeslot_id\" variant=\"danger\" @click=\"deleteTimeslot(timeslot)\">x</b-button>\n </b-col>\n </b-row>\n \n <hr>\n\n <b-row>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-group :label=\"$t('opening_hours_opens_at')\">\n <b-form-input type=\"time\" v-model=\"timeslot.opens_at\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-group :label=\"$t('opening_hours_closes_at')\">\n <b-form-input type=\"time\" v-model=\"timeslot.closes_at\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"4\">\n <b-form-group :label=\"$t('opening_hours_spots')\">\n <b-form-input v-model=\"timeslot.spots\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-button @click=\"addTimeslot()\" class=\"px-4\">{{ $t('add') }}</b-button>\n\n <template #modal-footer>\n <b-button @click=\"$bvModal.hide('day-timeslots')\">{{ $t('cancel') }}</b-button>\n <b-button variant=\"success\" @click=\"adjust()\">{{ $t('opening_hours_adjust') }}</b-button>\n </template>\n </b-modal>\n </div>\n <div class=\"SmallDiv px-0 pl-lg-3 pr-lg-0 order-1 mt-0 mt-md-1 order-lg-2 mb-4 mb-lg-1 button-row-included \">\n <event-nav v-if=\"event && event.name\" :event=\"event\"></event-nav>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport EventNav from \"@/components/EventNav\";\nimport api from \"@/api\";\nimport moment from \"moment\";\n\nexport default {\n components:{\n EventNav\n },\n data(){\n return {\n event: null,\n intervals: [\n {id: 'none', text: 'Daily / whole slot'},\n {id: 'hourly', text: 'Hourly'}\n ],\n daysOfWeek: [\n {id: 1, text: 'Mon'},\n {id: 2, text: 'Tue'},\n {id: 3, text: 'Wed'},\n {id: 4, text: 'Thu'},\n {id: 5, text: 'Fri'},\n {id: 6, text: 'Sat'},\n {id: 7, text: 'Sun'}\n ],\n openingHours: [],\n openingHour: {},\n generatedOpeningHours: [],\n pickedDate: null,\n dayTimeslots: [],\n timeslot: {},\n fields: [\n {key: 'day_text', label: this.$t('opening_hours_day_of_week')},\n {key: 'spots', label: this.$t('opening_hours_spots')},\n {key: 'opens_at', label: this.$t('opening_hours_opens_at')},\n {key: 'closes_at', label: this.$t('opening_hours_closes_at')},\n {key: 'actions', label: this.$t('event_timeslots_actions')}\n ]\n }\n },\n methods: {\n adjust() {\n let promises = []\n\n this.dayTimeslots.forEach(dayTimeslot => {\n let original = this.generatedOpeningHours.find(openingHour => {\n return openingHour.day === this.pickedDate\n && openingHour.opens_at === dayTimeslot.opens_at\n && openingHour.closes_at === dayTimeslot.closes_at\n })\n\n if (original.spots !== dayTimeslot.spots) {\n\n let starts_at = this.pickedDate + ' ' + dayTimeslot.opens_at;\n let ends_at = this.pickedDate + ' ' + dayTimeslot.closes_at;\n \n // Convert times to UTC+0 times\n let tmp_starts_at = moment(moment(starts_at).format()).utc()\n starts_at = tmp_starts_at.format('YYYY-MM-DD HH:mm:ss')\n\n let tmp_ends_at = moment(moment(ends_at).format()).utc()\n ends_at = tmp_ends_at.format('YYYY-MM-DD HH:mm:ss')\n\n if (dayTimeslot.timeslot_id) {\n // Update an existing timeslot\n promises.push(api.timeslot().save(this.event.id, {\n id: dayTimeslot.timeslot_id,\n starts_at: starts_at,\n ends_at: ends_at,\n amount: dayTimeslot.spots\n }))\n } else {\n // Create a new timeslot for the customisation\n promises.push(api.timeslot().create(this.event.id, {\n starts_at: starts_at,\n ends_at: ends_at,\n amount: dayTimeslot.spots\n }))\n }\n }\n })\n\n // Reset the input fields\n this.timeslot = {}\n this.get()\n\n if (promises.length === 0) {\n // no changes\n this.$bvModal.hide('day-timeslots')\n return\n }\n\n Promise.all(promises).then(() => {\n this.$bvModal.hide('day-timeslots')\n this.$store.commit('success', 'day_adjusted')\n })\n },\n dateDisabled(ymd) {\n if(this.event.continuous){return false}\n let tm_event_start = new Date(this.event.starts_at.split('T')[0]).getTime()\n let tm_event_end = new Date(this.event.ends_at.split('T')[0]).getTime()\n let tm_curr_date = new Date(ymd).getTime()\n if( tm_event_start <= tm_curr_date && tm_event_end >= tm_curr_date ){\n return false\n }\n return true\n },\n calendarClicked(ymd) {\n this.dayTimeslots = this.generatedOpeningHours.filter(openingHour => {\n return openingHour.day === ymd\n })\n this.$bvModal.show('day-timeslots')\n },\n dateInfo(ymd) {\n let open = this.generatedOpeningHours.filter(openingHour => {\n return openingHour.day === ymd\n }).length > 0\n\n return open ? 'table-success' : ''\n },\n cancelCreateOpeningHour() {\n this.openingHour = {}\n this.$bvModal.hide('new-opening-hour')\n },\n createOpeningHour() {\n api.openingHour().create(this.event.id, this.openingHour).then(() => {\n this.$bvModal.hide('new-opening-hour')\n this.openingHour = {}\n this.get()\n })\n },\n getNewHours(context) {\n let start = moment(context.activeYMD).startOf('month').format('YYYY-MM-DD')\n let end = moment(context.activeYMD).endOf('month').format('YYYY-MM-DD')\n api.openingHour().getGenerated(\n this.event.id,\n start,\n end\n ).then(generated => {\n this.generatedOpeningHours = generated\n })\n },\n remove(openingHour) {\n api.openingHour().delete(this.event.id, openingHour).then(() => {\n this.get()\n })\n },\n get() {\n api.openingHour().get(this.event.id).then(openingHours => {\n this.openingHours = openingHours\n })\n api.openingHour().getGenerated(\n this.event.id,\n moment().startOf('month').format('YYYY-MM-DD'),\n moment().endOf('month').format('YYYY-MM-DD')\n ).then(generated => {\n this.generatedOpeningHours = generated\n if (this.pickedDate) {\n this.dayTimeslots = this.generatedOpeningHours.filter(openingHour => {\n return openingHour.day === this.pickedDate\n })\n }\n })\n },\n addTimeslot() {\n api.timeslot().create(this.event.id, {\n starts_at: moment(new Date(this.pickedDate + ' ' + this.timeslot.opens_at)),\n ends_at: moment(new Date(this.pickedDate + ' ' + this.timeslot.closes_at)),\n amount: this.timeslot.spots\n }).then(() => {\n this.get()\n this.timeslot = {}\n })\n },\n deleteTimeslot(timeslot){\n if(timeslot.timeslot_id){\n api.timeslot().delete(this.event.id, timeslot.timeslot_id).then(() => {\n this.get()\n })\n }\n }\n },\n computed: {\n dayModalTitle() {\n return this.$t('edit_opening_hours_day') + ' ' + this.pickedDate\n },\n openingHoursParsed() {\n let hours = []\n this.daysOfWeek.forEach((dayOfWeek) => {\n hours = hours.concat(this.openingHours.filter(openingHour => {\n return openingHour.day_of_week === dayOfWeek.id\n }).map((openingHour) => {\n openingHour.day_text = dayOfWeek.text\n return openingHour\n }))\n })\n return hours\n }\n },\n created() {\n document.title = this.$t('backend_title_events_timeslots')\n if(this.$store.state.user) {\n if(!this.$can('event_timeslot_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().get(this.$route.params.id).then(event => {\n this.event = {...event,isArchived :( moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\"}\n }).then(() => {\n this.get()\n })\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('event_timeslot_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.align-middle{\n align-self: center\n}\n</style>\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventTimeslots.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventTimeslots.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventTimeslots.vue?vue&type=template&id=414e998a&scoped=true\"\nimport script from \"./EventTimeslots.vue?vue&type=script&lang=js\"\nexport * from \"./EventTimeslots.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventTimeslots.vue?vue&type=style&index=0&id=414e998a&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"414e998a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',[_c('div',[(_vm.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\"},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('event_customerinformation_title', _vm.event)))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',{staticClass:\"customer-information-container\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"xl\":\"6\"}},[_c('div',{staticClass:\"title mt-2 mt-md-0\"},[_vm._v(_vm._s(_vm.$t('customer_information_title_general_questions')))]),_c('div',{staticClass:\"scrollTable\"},[_c('b-table',{staticClass:\"question-table\",attrs:{\"items\":_vm.customerFields,\"fields\":_vm.questionTableFields},scopedSlots:_vm._u([{key:\"cell(field)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.$t(item.field))+\" \")]}},{key:\"cell(ticket_ask)\",fn:function({item}){return [_c('b-form-checkbox',{attrs:{\"disabled\":_vm.event.isArchived || !_vm.$can('event_customer_information_edit') || (item.field === 'email_confirmation' && !_vm.isTicketEmailAsked)},on:{\"change\":function($event){return _vm.markTicketAsk(item)}},model:{value:(item.ticket_ask),callback:function ($$v) {_vm.$set(item, \"ticket_ask\", $$v)},expression:\"item.ticket_ask\"}})]}},{key:\"cell(order_ask)\",fn:function({item}){return [_c('b-form-checkbox',{attrs:{\"disabled\":item.field === 'email' || item.field === 'first_name' || item.field === 'last_name' || _vm.event.isArchived || !_vm.$can('event_customer_information_edit')},on:{\"change\":function($event){return _vm.markOrderAsk(item)}},model:{value:(item.order_ask),callback:function ($$v) {_vm.$set(item, \"order_ask\", $$v)},expression:\"item.order_ask\"}})]}},{key:\"cell(order_mandatory)\",fn:function({item}){return [(item.field !== 'optin')?_c('b-form-checkbox',{attrs:{\"disabled\":item.field === 'email'|| item.field === 'email_confirmation' || item.field === 'first_name' || item.field === 'last_name' || _vm.event.isArchived || !item.order_ask || !_vm.$can('event_customer_information_edit')},on:{\"change\":function($event){return _vm.markOrderMandatory(item)}},model:{value:(item.order_mandatory),callback:function ($$v) {_vm.$set(item, \"order_mandatory\", $$v)},expression:\"item.order_mandatory\"}}):_vm._e()]}},{key:\"cell(ticket_mandatory)\",fn:function({item}){return [(item.field !== 'optin')?_c('b-form-checkbox',{attrs:{\"disabled\":_vm.event.isArchived || !item.ticket_ask || item.field === 'email_confirmation' || item.field === 'email' || !_vm.$can('event_customer_information_edit')},on:{\"change\":function($event){return _vm.markTicketMandatory(item)}},model:{value:(item.ticket_mandatory),callback:function ($$v) {_vm.$set(item, \"ticket_mandatory\", $$v)},expression:\"item.ticket_mandatory\"}}):_vm._e()]}}],null,false,1510866450)})],1)]),_c('b-col',{attrs:{\"cols\":\"12\",\"xl\":\"6\"}},[_c('div',{staticClass:\"title mt-2 mt-md-0\"},[_vm._v(_vm._s(_vm.$t('customer_information_title_specific_questions')))]),_c('div',{staticClass:\"scrollTable\"},[_c('b-table',{staticClass:\"question-table\",attrs:{\"items\":_vm.questions,\"fields\":_vm.specificQuestionsFields},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function({item}){return [_c('div',{staticClass:\"question-button-container\"},[(_vm.$can('event_customer_information_edit'))?_c('b-button',{staticClass:\"btn btn-row-edit mr-2\",on:{\"click\":function($event){return _vm.editQuestion(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(_vm.$can('event_customer_information_edit'))?_c('b-button',{staticClass:\"btn btn-danger\",attrs:{\"size\":\"sm\",\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.showDeleteQuestionModal(item)}}},[_vm._v(_vm._s(_vm.$t('delete')))]):_vm._e()],1)]}}],null,false,2473136984)})],1),(_vm.$can('event_customer_information_edit'))?_c('div',{staticClass:\"text-right\"},[_c('b-button',{staticClass:\"mt-2 btn btn-orange\",attrs:{\"disabled\":_vm.event.isArchived},on:{\"click\":function($event){return _vm.newQuestion()}}},[_vm._v(\" \"+_vm._s(_vm.$t('question_add'))+\" \")])],1):_vm._e()])],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('customer_information_modal_edit', _vm.question),\"id\":\"edit-question\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveQuestion(_vm.question.new_answer)}}},[_vm._v(_vm._s(_vm.$t('save')))])]}}],null,false,916937526)},[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_information_question')}},[(_vm.question)?_c('b-form-input',{model:{value:(_vm.question.question),callback:function ($$v) {_vm.$set(_vm.question, \"question\", $$v)},expression:\"question.question\"}}):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_information_question_type')}},[(_vm.question)?_c('b-select',{attrs:{\"options\":[\n {value:'input', text: _vm.$t('textfield')},\n {value:'select', text: _vm.$t('select_box')},\n {value:'radio-buttons', text: _vm.$t('radio_buttons')},\n {value:'checkboxes', text: _vm.$t('checkboxes')}]},model:{value:(_vm.question.question_type),callback:function ($$v) {_vm.$set(_vm.question, \"question_type\", $$v)},expression:\"question.question_type\"}}):_vm._e()],1),(_vm.question && _vm.question.question_type && _vm.question.question_type !== 'input')?_c('div',{staticClass:\"mb-4\",attrs:{\"label\":_vm.$t('customer_information_question')}},[_vm._l((_vm.question.answers),function(answer){return _c('b-row',{key:answer.id,staticClass:\"mb-2\"},[_c('b-col',[(_vm.question)?_c('b-form-input',{model:{value:(answer.answer),callback:function ($$v) {_vm.$set(answer, \"answer\", $$v)},expression:\"answer.answer\"}}):_vm._e()],1),_c('b-col',{attrs:{\"cols\":\"1\"}},[_c('b-button',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteAnswer(answer.id)}}},[_vm._v(\"x\")])],1)],1)}),_c('b-row',{staticClass:\"mb-2\"},[_c('b-col',[(_vm.question)?_c('b-form-input',{model:{value:(_vm.question.new_answer),callback:function ($$v) {_vm.$set(_vm.question, \"new_answer\", $$v)},expression:\"question.new_answer\"}}):_vm._e()],1),_c('b-col',{attrs:{\"cols\":\"1\"}},[(_vm.question.new_answer !== '')?_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.addAnswer(_vm.question.new_answer)}}},[_vm._v(\"+ \")]):_vm._e()],1)],1)],2):_vm._e(),_c('b-form-group',[(_vm.question)?_c('b-form-checkbox',{model:{value:(_vm.question.mandatory),callback:function ($$v) {_vm.$set(_vm.question, \"mandatory\", $$v)},expression:\"question.mandatory\"}},[_vm._v(_vm._s(_vm.$t('customer_information_mandatory'))+\" \")]):_vm._e()],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_information_where_to_show')}},[(_vm.question)?_c('b-select',{attrs:{\"options\":[\n {value:'order', text: _vm.$t('customer_information_show_order')},\n {value:'products', text: _vm.$t('customer_information_show_products')}\n ]},model:{value:(_vm.question.where_to_show),callback:function ($$v) {_vm.$set(_vm.question, \"where_to_show\", $$v)},expression:\"question.where_to_show\"}}):_vm._e()],1),(_vm.question && _vm.question.where_to_show === 'products')?_c('div',[_c('label',[_vm._v(_vm._s(_vm.$t('customer_information_which_products')))]),_vm._l((_vm.products),function(product){return _c('b-row',{key:'product' + product.id},[_c('b-col',[_c('b-form-group',[_c('b-checkbox',{model:{value:(product.target),callback:function ($$v) {_vm.$set(product, \"target\", $$v)},expression:\"product.target\"}},[_vm._v(_vm._s(product.name))])],1)],1)],1)})],2):_vm._e(),(_vm.question && _vm.question.where_to_show === 'order')?_c('div',[_c('b-form-group',[_c('b-checkbox',{model:{value:(_vm.question.show_at_specific_prod),callback:function ($$v) {_vm.$set(_vm.question, \"show_at_specific_prod\", $$v)},expression:\"question.show_at_specific_prod\"}},[_vm._v(_vm._s(_vm.$t('customer_information_specific_tickets')))])],1)],1):_vm._e(),(_vm.question && _vm.question.where_to_show === 'order' && _vm.question.show_at_specific_prod)?_c('div',[_c('label',[_vm._v(_vm._s(_vm.$t('customer_information_which_products')))]),_vm._l((_vm.products),function(product){return _c('b-row',{key:'product' + product.id},[_c('b-col',[_c('b-form-group',[_c('b-checkbox',{model:{value:(product.target),callback:function ($$v) {_vm.$set(product, \"target\", $$v)},expression:\"product.target\"}},[_vm._v(_vm._s(product.name))])],1)],1)],1)})],2):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('customer_information_modal_create'),\"id\":\"new-question\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"success\"},on:{\"click\":function($event){return _vm.createQuestion()}}},[_vm._v(_vm._s(_vm.$t('create')))])]}}],null,false,3616336585)},[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_information_question')}},[(_vm.question)?_c('b-form-input',{model:{value:(_vm.question.question),callback:function ($$v) {_vm.$set(_vm.question, \"question\", $$v)},expression:\"question.question\"}}):_vm._e()],1)],1),(_vm.$can('event_customer_information_edit'))?_c('b-button',{staticClass:\"float-right\",attrs:{\"disabled\":_vm.event.isArchived,\"variant\":\"save\"},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))]):_vm._e()],1),(_vm.event && _vm.event.name)?_c('div',{staticClass:\"SmallDiv marginTop0 px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\"},[_c('event-nav',{attrs:{\"event\":_vm.event}})],1):_vm._e()])],1),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-question\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.saving,\"variant\":\"danger\"},on:{\"click\":_vm.deleteQuestion}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}],null,false,105862989)},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"event\">\n <div>\n <b-alert v-if=\"event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n <div class=\"d-flex flex-wrap\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\">\n\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('event_customerinformation_title', event) }}</div>\n <div class=\"content-container\">\n\n <b-row class=\"customer-information-container\">\n <b-col cols=\"12\" xl=\"6\">\n <div class=\"title mt-2 mt-md-0\">{{ $t('customer_information_title_general_questions') }}</div>\n <div class=\"scrollTable\">\n \n <b-table class=\"question-table\" :items=\"customerFields\"\n :fields=\"questionTableFields\">\n <template v-slot:cell(field)=\"{item}\">\n {{ $t(item.field) }}\n </template>\n <template v-slot:cell(ticket_ask)=\"{item}\">\n <b-form-checkbox v-model=\"item.ticket_ask\"\n :disabled=\"event.isArchived || !$can('event_customer_information_edit') || (item.field === 'email_confirmation' && !isTicketEmailAsked) \"\n @change=\"markTicketAsk(item)\"></b-form-checkbox>\n </template>\n <template v-slot:cell(order_ask)=\"{item}\">\n <b-form-checkbox v-model=\"item.order_ask\"\n :disabled=\"item.field === 'email' || item.field === 'first_name' || item.field === 'last_name' || event.isArchived || !$can('event_customer_information_edit')\"\n @change=\"markOrderAsk(item)\"></b-form-checkbox>\n </template>\n <template v-slot:cell(order_mandatory)=\"{item}\">\n <b-form-checkbox v-if=\"item.field !== 'optin'\"\n v-model=\"item.order_mandatory\"\n :disabled=\"item.field === 'email'|| item.field === 'email_confirmation' || item.field === 'first_name' || item.field === 'last_name' || event.isArchived || !item.order_ask || !$can('event_customer_information_edit')\"\n @change=\"markOrderMandatory(item)\"></b-form-checkbox>\n </template>\n <template v-slot:cell(ticket_mandatory)=\"{item}\">\n <b-form-checkbox v-if=\"item.field !== 'optin'\"\n v-model=\"item.ticket_mandatory\"\n :disabled=\"event.isArchived || !item.ticket_ask || item.field === 'email_confirmation' || item.field === 'email' || !$can('event_customer_information_edit')\"\n @change=\"markTicketMandatory(item)\"></b-form-checkbox>\n </template>\n </b-table>\n </div>\n </b-col>\n <b-col cols=\"12\" xl=\"6\">\n <div class=\"title mt-2 mt-md-0\">{{ $t('customer_information_title_specific_questions') }}</div>\n <div class=\"scrollTable\">\n <b-table class=\"question-table\" :items=\"questions\" :fields=\"specificQuestionsFields\">\n <template v-slot:cell(actions)=\"{item}\">\n <div class=\"question-button-container\">\n <b-button v-if=\"$can('event_customer_information_edit')\" class=\"btn btn-row-edit mr-2\" @click=\"editQuestion(item)\">{{ $t('manage') }}</b-button>\n <b-button v-if=\"$can('event_customer_information_edit')\" class=\"btn btn-danger\" size=\"sm\" :disabled=\"event.isArchived\" @click=\"showDeleteQuestionModal(item)\">{{ $t('delete') }}</b-button>\n </div>\n </template>\n </b-table>\n </div>\n <div v-if=\"$can('event_customer_information_edit')\" class=\"text-right\">\n <b-button class=\"mt-2 btn btn-orange\" @click=\"newQuestion()\" :disabled=\"event.isArchived\">\n {{ $t('question_add') }}\n </b-button>\n </div>\n </b-col>\n </b-row>\n\n </div>\n </div>\n\n <b-modal :title=\"$t('customer_information_modal_edit', question)\" id=\"edit-question\" size=\"lg\">\n <b-form-group :label=\"$t('customer_information_question')\">\n <b-form-input v-if=\"question\" v-model=\"question.question\"></b-form-input>\n </b-form-group>\n\n <b-form-group :label=\"$t('customer_information_question_type')\">\n <b-select v-if=\"question\" v-model=\"question.question_type\" :options=\"[\n {value:'input', text: $t('textfield')},\n {value:'select', text: $t('select_box')},\n {value:'radio-buttons', text: $t('radio_buttons')},\n {value:'checkboxes', text: $t('checkboxes')}]\"\n ></b-select>\n </b-form-group>\n\n <div class=\"mb-4\" :label=\"$t('customer_information_question')\"\n v-if=\"question && question.question_type && question.question_type !== 'input'\">\n\n <b-row class=\"mb-2\" v-for=\"answer in question.answers\" :key=\"answer.id\">\n <b-col>\n <b-form-input v-if=\"question\" v-model=\"answer.answer\"></b-form-input>\n </b-col>\n <b-col cols=\"1\">\n <b-button variant=\"danger\" @click=\"deleteAnswer(answer.id)\">x</b-button>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-2\">\n <b-col>\n <b-form-input v-if=\"question\" v-model=\"question.new_answer\"></b-form-input>\n </b-col>\n <b-col cols=\"1\">\n <b-button class=\"\" v-if=\"question.new_answer !== ''\" variant=\"primary\"\n @click=\"addAnswer(question.new_answer)\">+\n </b-button>\n </b-col>\n </b-row>\n </div>\n\n <b-form-group>\n <b-form-checkbox v-if=\"question\" v-model=\"question.mandatory\">{{ $t('customer_information_mandatory') }}\n </b-form-checkbox>\n </b-form-group>\n\n <b-form-group :label=\"$t('customer_information_where_to_show')\">\n <b-select v-if=\"question\" v-model=\"question.where_to_show\" :options=\"[\n {value:'order', text: $t('customer_information_show_order')},\n {value:'products', text: $t('customer_information_show_products')}\n ]\"></b-select>\n </b-form-group>\n\n <div v-if=\"question && question.where_to_show === 'products'\">\n <label>{{ $t('customer_information_which_products') }}</label>\n <b-row v-for=\"product in products\" :key=\"'product' + product.id\">\n <b-col>\n <b-form-group>\n <b-checkbox v-model=\"product.target\">{{ product.name }}</b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n\n <div v-if=\"question && question.where_to_show === 'order'\">\n <b-form-group>\n <b-checkbox v-model=\"question.show_at_specific_prod\">{{ $t('customer_information_specific_tickets') }}</b-checkbox>\n </b-form-group>\n </div>\n\n <div v-if=\"question && question.where_to_show === 'order' && question.show_at_specific_prod\">\n <label>{{ $t('customer_information_which_products') }}</label>\n <b-row v-for=\"product in products\" :key=\"'product' + product.id\">\n <b-col>\n <b-form-group>\n <b-checkbox v-model=\"product.target\">{{ product.name }}</b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveQuestion(question.new_answer)\" :disabled=\"event.isArchived\" variant=\"success\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('customer_information_modal_create')\" id=\"new-question\" size=\"lg\">\n\n <b-form-group :label=\"$t('customer_information_question')\">\n <b-form-input v-if=\"question\" v-model=\"question.question\"></b-form-input>\n </b-form-group>\n\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createQuestion()\" :disabled=\"event.isArchived\" variant=\"success\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n <b-button v-if=\"$can('event_customer_information_edit')\" @click=\"save()\" :disabled=\"event.isArchived\" variant=\"save\" class=\"float-right\">{{ $t('save') }}</b-button>\n\n </div>\n <div v-if=\"event && event.name\" class=\"SmallDiv marginTop0 px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1 \">\n <event-nav :event=\"event\"></event-nav>\n </div>\n </div>\n </div>\n <b-modal :title=\"$t('delete')\" id=\"delete-question\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"saving\" @click=\"deleteQuestion\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport EventNav from \"@/components/EventNav\";\nimport moment from \"moment\";\n\nexport default {\n\n components: {\n EventNav\n },\n name: 'EventCustomerInformation',\n data() {\n return {\n saving: false,\n event: null,\n questions: [],\n answers: [],\n products: [],\n originalProducts: [],\n question: null,\n customerFields: [],\n selectedQuestion: null,\n }\n },\n created() {\n document.title = this.$t('backend_title_events_customer_information')\n if(this.$store.state.user) {\n if(!this.$can('event_customer_information_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().get(this.$route.params.id).then(event => {\n this.event = {...event,isArchived :( moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\"}\n })\n this.getQuestions()\n api.product().get(this.$route.params.id).then(products => {\n this.originalProducts = products\n })\n },\n methods: {\n markOrderMandatory(item) {\n if (!item.order_ask && item.order_mandatory) {\n item.order_ask = true\n }\n },\n markTicketMandatory(item) {\n if (!item.ticket_ask && item.ticket_mandatory) {\n item.ticket_ask = true\n }\n },\n markTicketAsk(item) {\n if(!item.ticket_ask) {\n item.ticket_mandatory = false;\n if(item.field === 'email') {\n for(const cf of this.customerFields) {\n if(cf.field === 'email_confirmation') {\n cf.ticket_mandatory = false;\n cf.ticket_ask = false;\n }\n }\n }\n }\n else if(item.field === 'email') {\n item.ticket_mandatory = true;\n }\n else if(item.field === 'email_confirmation') {\n item.ticket_mandatory = item.ticket_ask;\n }\n },\n markOrderAsk(item) {\n if(!item.order_ask) {\n item.order_mandatory = false;\n }\n if(item.field === 'email_confirmation') {\n item.order_mandatory = item.order_ask;\n }\n },\n addAnswer(answer) {\n\n if(!answer || !answer.length) {\n return;\n }\n\n if (!('answers' in this.question)) {\n this.question.answers = []\n }\n\n this.question.answers.push({\"answer\": answer})\n this.question.new_answer = ''\n },\n deleteAnswer(answer_id) {\n this.question.answers = this.question.answers.filter(function (obj) {\n return obj.id !== answer_id;\n });\n },\n newQuestion() {\n this.question = {}\n this.$bvModal.show('new-question')\n },\n getQuestions() {\n api.customerInformation().get(this.$route.params.id).then(questions => {\n this.questions = questions\n })\n api.customerInformation().getCustomerFields(this.$route.params.id).then(fields => {\n this.customerFields = fields\n })\n },\n editQuestion(question) {\n this.question = Object.assign({}, question)\n this.products = this.originalProducts.map(product => {\n\n product.target = false;\n\n // If no products are set, return the default product\n if (!this.question.products) {\n return product\n }\n\n let questionProduct = this.question.products.find(qProduct => {\n return qProduct.product_id === product.id\n })\n\n product.target = !!questionProduct\n return product\n })\n\n this.$bvModal.show('edit-question')\n },\n createQuestion() {\n api.customerInformation().create(this.$route.params.id, this.question).then((question) => {\n this.getQuestions()\n this.$bvModal.hide('new-question')\n this.editQuestion(question)\n })\n },\n showDeleteQuestionModal(question) {\n this.selectedQuestion = question;\n this.$bvModal.show('delete-question')\n },\n deleteQuestion() {\n this.saving = true;\n api.customerInformation().delete(this.$route.params.id, this.selectedQuestion.id).then(() => {\n this.$bvModal.hide('delete-question')\n this.saving = false;\n this.getQuestions()\n }).catch(() => {\n this.saving = false;\n })\n },\n saveQuestion(answer) {\n\n if (answer !== '' && answer !== null && answer !== undefined) {\n this.addAnswer(answer)\n }\n\n // Map the products\n this.question.products = this.products.map((prod) => {\n return {product_id: prod.id, target: prod.target}\n })\n\n api.customerInformation().save(this.$route.params.id, this.question).then(() => {\n this.getQuestions()\n this.$bvModal.hide('edit-question')\n this.question = null\n this.$store.commit('success', 'customer_information_saved')\n })\n },\n save() {\n api.customerInformation().saveCustomerFields(this.$route.params.id, this.customerFields).then((fields) => {\n this.customerFields = fields\n this.$store.commit('success', 'customer_fields_saved')\n })\n }\n },\n computed: {\n isTicketNamesAsked() {\n let firstName = false;\n let lastName = false;\n\n for(const cf of this.customerFields) {\n if(cf.field === 'first_name') {\n firstName = cf.ticket_ask;\n }\n if(cf.field === 'last_name') {\n lastName = cf.ticket_ask;\n }\n }\n\n return firstName && lastName;\n },\n\n isTicketEmailAsked() {\n for(const cf of this.customerFields) {\n if(cf.field === 'email' && cf.ticket_ask) {\n return true;\n }\n }\n return false;\n },\n questionTableFields() {\n return [\n {label: this.$t('customer_information_field'), key: 'field'},\n {label: this.$t('customer_information_order_ask'), key: 'order_ask'},\n {label: this.$t('customer_information_order_mandatory'), key: 'order_mandatory'},\n {label: this.$t('customer_information_ticket_ask'), key: 'ticket_ask'},\n {label: this.$t('customer_information_ticket_mandatory'), key: 'ticket_mandatory'},\n ];\n },\n specificQuestionsFields() {\n return [\n {label: this.$t('customer_information_question'), key: 'question'},\n {label: this.$t('customer_information_question_type'), key: 'question_type'},\n {label: this.$t('actions'), key: 'actions'},\n ];\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('event_customer_information_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n<style scoped>\n\n .container-distance,.marginTop0 >div{\n margin-top: 0!important;\n }\n @media (max-width:1710px) {\n .customer-information-container{\n display: block;\n }\n .customer-information-container > div{\n width: 100%!important;\n max-width: 100%!important;\n margin: 0!important;\n }\n }\n</style>\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style>\ntable.b-table.question-table {\n margin-top: 1.9rem\n}\n\ntable.b-table.question-table thead {\n background-color: #FFF;\n font-weight: bold\n}\n\ntable.b-table.question-table thead th {\n border-top: 0px;\n}\n\ntable.b-table.question-table thead th div {\n color: #4D4D4D\n}\n\n.question-button-container{\n display:flex;\n flex-direction: column;\n}\n.question-button-container .btn{\n width:100%;\n height:25px;\n padding:0px;\n line-height:25px;\n margin-bottom:5px;\n font-size:10pt\n}\n\n\n.scrollTable{\n overflow-x: auto;\n}\n.Rowhead,.Rowbody{\n border-radius: 8px!important;\n}\n@media (max-width:576px) {\n #edit-pos h3{\n font-size: 1.5rem!important;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventCustomerInformation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventCustomerInformation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventCustomerInformation.vue?vue&type=template&id=fadcbb46&scoped=true\"\nimport script from \"./EventCustomerInformation.vue?vue&type=script&lang=js\"\nexport * from \"./EventCustomerInformation.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventCustomerInformation.vue?vue&type=style&index=0&id=fadcbb46&prod&scoped=true&lang=css\"\nimport style1 from \"./EventCustomerInformation.vue?vue&type=style&index=1&id=fadcbb46&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"fadcbb46\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"2\"}},[_c('b-form-group',[_c('b-form-input',{staticClass:\"v-text-field\",attrs:{\"debounce\":\"500\",\"placeholder\":_vm.$t('search')},on:{\"update\":function($event){return _vm.getDiscountcodes(1, $event)}},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1)],1),_c('b-col',[(_vm.$can('discountcode_create'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showDiscountModal}},[_vm._v(_vm._s(_vm.$t('new')))])],1):_vm._e()],1)],1),_c('b-modal',{attrs:{\"id\":\"add-discountcode\",\"title\":_vm.$t('discountcode_new_modal_title')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('p',[_vm._v(_vm._s(_vm.$t('discountcode_create_hint')))]),_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createDiscountcode()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_code')}},[_c('b-form-input',{model:{value:(_vm.discountcode.code),callback:function ($$v) {_vm.$set(_vm.discountcode, \"code\", $$v)},expression:\"discountcode.code\"}})],1)],1),_c('b-modal',{attrs:{\"title\":_vm.$t('discountcode_modal_edit', _vm.discountcode),\"id\":\"edit-discountcode\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveDiscountcode()}}},[_vm._v(_vm._s(_vm.$t('save')))])]}}])},[(_vm.discountcode)?_c('discountcode-form',{model:{value:(_vm.discountcode),callback:function ($$v) {_vm.discountcode=$$v},expression:\"discountcode\"}}):_vm._e()],1),_c('div',{staticClass:\"tableBig\"},[(_vm.discountcodes.length)?_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.discountcodes,\"fields\":_vm.fields},scopedSlots:_vm._u([{key:\"cell(is_active)\",fn:function({item}){return [_c('b-badge',{attrs:{\"variant\":item.is_active ? 'success' : 'warning'}},[_vm._v(_vm._s(item.is_active ? _vm.$t('yes') : _vm.$t('no')))])]}},{key:\"cell(ends_at)\",fn:function({item}){return [(item.ends_at)?_c('span',[_vm._v(_vm._s(_vm._f(\"date_time\")(item.ends_at)))]):_c('span',[_vm._v(_vm._s(_vm.$t('not_set')))])]}},{key:\"cell(starts_at)\",fn:function({item}){return [(item.starts_at)?_c('span',[_vm._v(_vm._s(_vm._f(\"date_time\")(item.starts_at)))]):_c('span',[_vm._v(_vm._s(_vm.$t('not_set')))])]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('discountcode_edit'))?_c('b-button',{staticClass:\"mr-3 mb-1\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.editDiscountcode(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(_vm.$can('discountcode_delete') && item.orders_count === 0)?_c('b-icon',{staticClass:\"text-secondary btnDelete\",class:{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count},attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e(),(item.orders_count > 0)?_c('b-button',{attrs:{\"to\":{name:'OrderOverview', query:{discountcode: item.id}}}},[_vm._v(_vm._s(_vm.$t('discountcode_overview_show_orders')))]):_vm._e()]}}],null,false,653285381)}):_vm._e(),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":function($event){return _vm.getDiscountcodes($event, _vm.search)}}}):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-discountcode\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteDiscountcode}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_code')}},[(_vm.discountcode)?_c('b-form-input',{model:{value:(_vm.discountcode.code),callback:function ($$v) {_vm.$set(_vm.discountcode, \"code\", $$v)},expression:\"discountcode.code\"}}):_vm._e()],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_stock')}},[(_vm.discountcode)?_c('b-form-input',{model:{value:(_vm.discountcode.stock),callback:function ($$v) {_vm.$set(_vm.discountcode, \"stock\", $$v)},expression:\"discountcode.stock\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_type')}},[(_vm.discountcode)?_c('b-select',{attrs:{\"options\":[\n {value:'percentage', text: _vm.$t('discountcode_type_percentage')},\n {value:'value', text: _vm.$t('discountcode_type_value')}\n ]},model:{value:(_vm.discountcode.type),callback:function ($$v) {_vm.$set(_vm.discountcode, \"type\", $$v)},expression:\"discountcode.type\"}}):_vm._e()],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_amount')}},[(_vm.discountcode)?_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":\"0.01\"},model:{value:(_vm.discountcode.amount),callback:function ($$v) {_vm.$set(_vm.discountcode, \"amount\", $$v)},expression:\"discountcode.amount\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[(_vm.discountcode)?_c('b-form-checkbox',{model:{value:(_vm.discountcode.is_active),callback:function ($$v) {_vm.$set(_vm.discountcode, \"is_active\", $$v)},expression:\"discountcode.is_active\"}},[_vm._v(_vm._s(_vm.$t('discountcode_is_active'))+\" \")]):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_apply_type')}},[_c('b-form-select',{attrs:{\"options\":[{text: _vm.$t('discountcode_apply_type_order'), value: 'order'}, {text: _vm.$t('discountcode_apply_type_ticket'), value: 'ticket'}]},model:{value:(_vm.discountcode.apply_type),callback:function ($$v) {_vm.$set(_vm.discountcode, \"apply_type\", $$v)},expression:\"discountcode.apply_type\"}})],1)],1)],1),_c('b-row',[_c('b-col',[(_vm.discountcode)?_c('date-time-picker',{attrs:{\"label\":_vm.$t('discountcode_starts_at'),\"optional\":true},model:{value:(_vm.discountcode.starts_at),callback:function ($$v) {_vm.$set(_vm.discountcode, \"starts_at\", $$v)},expression:\"discountcode.starts_at\"}}):_vm._e(),(_vm.discountcode)?_c('date-time-picker',{attrs:{\"label\":_vm.$t('discountcode_ends_at'),\"optional\":true},model:{value:(_vm.discountcode.ends_at),callback:function ($$v) {_vm.$set(_vm.discountcode, \"ends_at\", $$v)},expression:\"discountcode.ends_at\"}}):_vm._e()],1)],1),(_vm.discountcode)?_c('b-row',[(_vm.discountcode.events)?_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_allowed_events')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.discountcode.events.length ? (_vm.discountcode.events.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},on:{\"change\":_vm.getProducts},model:{value:(_vm.discountcode.events),callback:function ($$v) {_vm.$set(_vm.discountcode, \"events\", $$v)},expression:\"discountcode.events\"}},_vm._l((_vm.events.filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1),(_vm.discountcode.events && _vm.discountcode.events.length > 0)?_c('b-form-group',{attrs:{\"label\":_vm.$t('discountcode_allowed_products')}},_vm._l((_vm.eventProducts),function(eventProduct){return _c('b-form-group',{key:eventProduct.id,attrs:{\"label\":eventProduct.name}},[_c('b-row',[_c('b-col',[_c('b-form-checkbox-group',{attrs:{\"options\":eventProduct.products,\"value-field\":\"id\",\"text-field\":\"name\"},model:{value:(_vm.discountcode.products),callback:function ($$v) {_vm.$set(_vm.discountcode, \"products\", $$v)},expression:\"discountcode.products\"}})],1)],1)],1)}),1):_vm._e()],1):_vm._e()],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('discountcode_code')\">\n <b-form-input v-if=\"discountcode\" v-model=\"discountcode.code\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('discountcode_stock')\">\n <b-form-input v-if=\"discountcode\" v-model=\"discountcode.stock\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('discountcode_type')\">\n <b-select v-if=\"discountcode\" v-model=\"discountcode.type\" :options=\"[\n {value:'percentage', text: $t('discountcode_type_percentage')},\n {value:'value', text: $t('discountcode_type_value')}\n ]\"></b-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('discountcode_amount')\">\n <b-form-input v-if=\"discountcode\" type=\"number\" v-model=\"discountcode.amount\" step=\"0.01\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-if=\"discountcode\" v-model=\"discountcode.is_active\">{{ $t('discountcode_is_active') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('discountcode_apply_type')\">\n <b-form-select v-model=\"discountcode.apply_type\" :options=\"[{text: $t('discountcode_apply_type_order'), value: 'order'}, {text: $t('discountcode_apply_type_ticket'), value: 'ticket'}]\"></b-form-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <date-time-picker v-if=\"discountcode\" v-model=\"discountcode.starts_at\" :label=\"$t('discountcode_starts_at')\" :optional=\"true\"></date-time-picker>\n <date-time-picker v-if=\"discountcode\" v-model=\"discountcode.ends_at\" :label=\"$t('discountcode_ends_at')\" :optional=\"true\"></date-time-picker>\n </b-col>\n </b-row>\n\n <b-row v-if=\"discountcode\">\n <b-col v-if=\"discountcode.events\">\n <b-form-group :label=\"$t('discountcode_allowed_events')\">\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"discountcode.events.length ? (discountcode.events.length + ' ' + $t('permission_events_selected')) : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"discountcode.events\"\n name=\"flavour-2\"\n @change=\"getProducts\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n\n <b-form-group v-if=\"discountcode.events && discountcode.events.length > 0\" :label=\"$t('discountcode_allowed_products')\">\n <b-form-group v-for=\"eventProduct in eventProducts\" :key=\"eventProduct.id\" :label=\"eventProduct.name\">\n <b-row>\n <b-col>\n <b-form-checkbox-group\n v-model=\"discountcode.products\"\n :options=\"eventProduct.products\"\n value-field=\"id\"\n text-field=\"name\"\n ></b-form-checkbox-group>\n </b-col>\n </b-row>\n </b-form-group>\n </b-form-group>\n\n </b-col>\n </b-row>\n\n </div>\n</template>\n\n<script>\nimport DateTimePicker from './DateTimePicker'\nimport api from \"@/api\";\nexport default {\n components: {\n DateTimePicker\n },\n props: ['value'],\n data() {\n return {\n discountcode: {},\n events: [],\n products: [],\n searchEvents: null,\n eventProducts: []\n }\n },\n watch: {\n discountcode() {\n this.$emit('input', this.discountcode)\n },\n value() {\n this.discountcode = this.value\n }\n },\n mounted() {\n this.discountcode = this.value;\n api.event().all(true).then(response => {\n this.events = response;\n this.getProducts();\n });\n },\n methods: {\n getProducts() {\n if(this.discountcode.events.length > 0) {\n\n this.eventProducts = [];\n\n this.discountcode.events.forEach(eventId => {\n api.event().products(eventId).then(response => { \n\n let tmpEvent = {\n id: eventId,\n name: this.events.find(e => e.id === eventId).name,\n products: []\n }\n this.eventProducts.push(tmpEvent);\n\n response.forEach(product => {\n let index = this.eventProducts.findIndex(product => product.id === eventId);\n this.eventProducts[index].products.push(product);\n }); \n\n });\n });\n }\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DiscountcodeForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DiscountcodeForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DiscountcodeForm.vue?vue&type=template&id=86ea9f7e\"\nimport script from \"./DiscountcodeForm.vue?vue&type=script&lang=js\"\nexport * from \"./DiscountcodeForm.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div>\n <b-row>\n <b-col cols=\"12\" lg=\"2\">\n <b-form-group>\n <b-form-input class=\"v-text-field\" v-model=\"search\" debounce=\"500\"\n :placeholder=\"$t('search')\" @update=\"getDiscountcodes(1, $event)\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group v-if=\"$can('discountcode_create')\" class=\" text-right container-distance\">\n <b-button variant=\"new\" @click=\"showDiscountModal\">{{ $t('new') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-modal id=\"add-discountcode\" :title=\"$t('discountcode_new_modal_title')\">\n <b-form-group :label=\"$t('discountcode_code')\">\n <b-form-input v-model=\"discountcode.code\"></b-form-input>\n </b-form-group>\n <template #modal-footer>\n <p>{{ $t('discountcode_create_hint') }}</p>\n <b-button variant=\"primary\" @click=\"createDiscountcode()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('discountcode_modal_edit', discountcode)\" id=\"edit-discountcode\" size=\"lg\">\n <discountcode-form v-if=\"discountcode\" v-model=\"discountcode\"></discountcode-form>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveDiscountcode()\" variant=\"success\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n<div class=\"tableBig\">\n <b-table v-if=\"discountcodes.length\" class=\"table-container\" :items=\"discountcodes\" :fields=\"fields\">\n <template v-slot:cell(is_active)=\"{item}\">\n <b-badge :variant=\"item.is_active ? 'success' : 'warning'\">{{ item.is_active ? $t('yes') : $t('no') }}</b-badge>\n </template>\n <template v-slot:cell(ends_at)=\"{item}\">\n <span v-if=\"item.ends_at\">{{ item.ends_at | date_time }}</span>\n <span v-else>{{ $t('not_set') }}</span>\n </template>\n <template v-slot:cell(starts_at)=\"{item}\">\n <span v-if=\"item.starts_at\">{{ item.starts_at | date_time }}</span>\n <span v-else>{{ $t('not_set') }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button class=\"mr-3 mb-1\" v-if=\"$can('discountcode_edit')\" variant=\"primary\" @click=\"editDiscountcode(item)\">{{ $t('manage') }}</b-button>\n <b-icon v-if=\"$can('discountcode_delete') && item.orders_count === 0\" @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\" class=\"text-secondary btnDelete\" :class=\"{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count}\"></b-icon>\n <b-button v-if=\"item.orders_count > 0\" :to=\"{name:'OrderOverview', query:{discountcode: item.id}}\">{{ $t('discountcode_overview_show_orders') }}</b-button>\n </template>\n </b-table>\n\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getDiscountcodes($event, search)\"></pagination>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-discountcode\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteDiscountcode\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n</div>\n\n\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DiscountcodeForm from '@/components/DiscountcodeForm';\n\nexport default {\n components: {\n DiscountcodeForm\n },\n name: 'Discountcodes',\n data() {\n return {\n discountcode: {},\n discountcodes: [],\n page_data: null,\n loading: false,\n fields: [\n {key: 'is_active', label: this.$t('discountcode_is_active')},\n {key: 'code', label: this.$t('discountcode_code')},\n {key: 'type', label: this.$t('discountcode_type')},\n {key: 'amount', label: this.$t('discountcode_amount')},\n {key: 'stock', label: this.$t('discountcode_stock')},\n {key: 'orders_count', label: this.$t('discountcode_times_used')},\n {key: 'tickets_count', label: this.$t('discountcode_tickets_times_used')},\n {key: 'starts_at', label: this.$t('discountcode_starts_at')},\n {key: 'ends_at', label: this.$t('discountcode_ends_at')},\n {key: 'actions', label: this.$t('order_actions')},\n ],\n search: null,\n }\n },\n created() {\n document.title = this.$t('backend_title_discountcodes')\n if(this.$store.state.user) {\n if(!this.$can('discountcode_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getDiscountcodes()\n },\n methods: {\n showDiscountModal() {\n this.discountcode = {};\n this.$bvModal.show('add-discountcode')\n },\n createDiscountcode() {\n this.adding = true\n\n api.discountcode().create(this.discountcode).then((discountcode) => {\n this.$bvModal.hide('add-discountcode')\n this.getDiscountcodes()\n if(this.$can('discountcode_edit')) {\n this.editDiscountcode(discountcode)\n }\n })\n },\n getDiscountcodes(page = 1, search) {\n api.discountcode().all(page, search).then(discountcodesdata => {\n this.discountcodes = discountcodesdata.data\n discountcodesdata.data.forEach((value) => {\n if (value.is_active == 1) {\n value.is_active = true\n }\n });\n this.page_data = discountcodesdata\n })\n },\n editDiscountcode(discountcode) {\n if(discountcode.events === null) {\n discountcode.events = [];\n }\n if(discountcode.products === null) {\n discountcode.products = [];\n }\n\n this.discountcode = Object.assign({}, discountcode)\n this.$bvModal.show('edit-discountcode')\n },\n saveDiscountcode() {\n api.discountcode().save(this.discountcode).then(() => {\n this.$bvModal.hide('edit-discountcode')\n this.getDiscountcodes()\n this.discountcode = {}\n this.$store.commit('success', 'discountcode_saved')\n })\n },\n showDeleteModal(discountcode) {\n if(discountcode.orders_count) {\n return;\n }\n this.discountcode = discountcode;\n this.$bvModal.show('delete-discountcode')\n },\n deleteDiscountcode() {\n this.loading = true;\n api.discountcode().delete(this.discountcode.id).then(() => {\n this.$store.commit('success', 'discountcode_deleted');\n this.$bvModal.hide('delete-discountcode')\n this.discountcode = {};\n this.getDiscountcodes();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('discountcode_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n {key: 'is_active', label: this.$t('discountcode_is_active')},\n {key: 'code', label: this.$t('discountcode_code')},\n {key: 'type', label: this.$t('discountcode_type')},\n {key: 'amount', label: this.$t('discountcode_amount')},\n {key: 'stock', label: this.$t('discountcode_stock')},\n {key: 'starts_at', label: this.$t('discountcode_starts_at')},\n {key: 'ends_at', label: this.$t('discountcode_ends_at')},\n {key: 'actions', label: this.$t('order_actions')},\n ];\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.tableBig{\n overflow: auto;\n}\n.btnDelete {\n vertical-align:middle;\n}\n.cursor_pointer {\n cursor: pointer;\n}\n.disabled_danger {\n opacity: .4;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Discountcodes.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Discountcodes.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Discountcodes.vue?vue&type=template&id=331c2ee7&scoped=true\"\nimport script from \"./Discountcodes.vue?vue&type=script&lang=js\"\nexport * from \"./Discountcodes.vue?vue&type=script&lang=js\"\nimport style0 from \"./Discountcodes.vue?vue&type=style&index=0&id=331c2ee7&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"331c2ee7\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',{staticClass:\"Parent\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"2\"}},[(_vm.$can('order_overview_search'))?_c('b-form-group',[_c('b-form-input',{staticClass:\"v-text-field\",attrs:{\"debounce\":\"500\",\"placeholder\":_vm.$t('search')},on:{\"update\":function($event){return _vm.getOrders(1, $event)}},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1):_vm._e()],1),_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"lg\":\"3\"}},[_c('b-form-group',{staticClass:\"order-events\"},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.selectedEvents.length ? (_vm.selectedEvents.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"select-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox',{attrs:{\"switch\":\"\"},model:{value:(_vm.showArchivedEvents),callback:function ($$v) {_vm.showArchivedEvents=$$v},expression:\"showArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('event_show_archived')))]),_c('hr'),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},on:{\"change\":function($event){return _vm.getOrders(1, _vm.search)}},model:{value:(_vm.selectedEvents),callback:function ($$v) {_vm.selectedEvents=$$v},expression:\"selectedEvents\"}},_vm._l((_vm.events.filter(e => _vm.showArchivedEvents ? true : e.status !== 'archived').filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"6\",\"lg\":\"3\"}},[_c('div',{staticClass:\"d-inline-block mr-5\"},[_c('div',{staticClass:\"float-left\"},[_vm._v(_vm._s(_vm.$t('order_overview_show_expired')))]),_c('b-form-checkbox',{staticClass:\"float-left ml-1\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},on:{\"change\":function($event){return _vm.getOrders()}},model:{value:(_vm.show_expired),callback:function ($$v) {_vm.show_expired=$$v},expression:\"show_expired\"}})],1),_c('div',{staticClass:\"d-inline-block\"},[_c('div',{staticClass:\"float-left\"},[_vm._v(_vm._s(_vm.$t('order_overview_show_box_office_orders')))]),_c('b-form-checkbox',{staticClass:\"float-left ml-1\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},on:{\"change\":function($event){return _vm.getOrders()}},model:{value:(_vm.show_box_office),callback:function ($$v) {_vm.show_box_office=$$v},expression:\"show_box_office\"}})],1)]),(this.$route.query.discountcode && this.$route.query.discountcode > 0)?_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"4\",\"lg\":\"2\"}},[_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.removeDiscountcodeFilter()}}},[_vm._v(_vm._s(_vm.$t('order_overview_remove_discountcode_filter')))])],1):_vm._e(),_c('b-col',{staticClass:\"elem mt-3\",attrs:{\"cols\":\"12\",\"sm\":\"6\",\"lg\":\"2\"}},[(_vm.$can('order_overview_export'))?_c('b-form-group',{staticClass:\"text-center\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.export-orders\",modifiers:{\"export-orders\":true}}]},[_vm._v(_vm._s(_vm.$t('order_export_generate_export')))])],1):_vm._e()],1)],1),_c('b-modal',{attrs:{\"hide-footer\":\"\",\"id\":\"export-orders\",\"size\":\"export-l\",\"title\":_vm.$t('order_export_export')},on:{\"close\":function($event){_vm.exportSettings = {}}}},[_c('h5',{staticClass:\"export-title mt-3\"},[_vm._v(_vm._s(_vm.$t('order_export_type')))]),_c('div',[_c('b-button',{staticClass:\"mt-2 mr-3\",class:{'btn-outline': _vm.exportSettings.order_type !== 'visitor_list', 'btn-primary': _vm.exportSettings.order_type === 'visitor_list'},on:{\"click\":function($event){return _vm.changeExportType('visitor_list')}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_export_visitor_list'))+\" \")]),_c('b-button',{staticClass:\"mt-2 mr-3\",class:{'btn-outline': _vm.exportSettings.order_type !== 'general', 'btn-primary': _vm.exportSettings.order_type === 'general'},on:{\"click\":function($event){return _vm.changeExportType('general')}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_export_general'))+\" \")])],1),_c('div',{staticClass:\"mt-4\"},[_c('h5',{staticClass:\"export-title\"},[_vm._v(_vm._s(_vm.$t('order_export_which_event')))]),_c('div',[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.exportSettings.events.length ? (_vm.exportSettings.events.length + ' ' + _vm.$t('permission_events_selected')) : (_vm.exportSettings.order_type === 'visitor_list') ? _vm.$t('order_export_select_specific_event') : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.exportSettings.searchEvents),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"searchEvents\", $$v)},expression:\"exportSettings.searchEvents\"}}),_c('b-form-checkbox-group',{staticClass:\"events-dropdown-inner\",attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},on:{\"change\":_vm.eventSelected},model:{value:(_vm.exportSettings.events),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"events\", $$v)},expression:\"exportSettings.events\"}},_vm._l((_vm.events.filter(e => _vm.exportSettings.searchEvents ? e.name.toLowerCase().includes(_vm.exportSettings.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1)]),(_vm.exportSettings.order_type === 'visitor_list' && _vm.productsGroups.length)?_c('div',{staticClass:\"mt-4\"},[_c('h5',{staticClass:\"export-title\"},[_vm._v(_vm._s(_vm.$t('order_export_which_tickets')))]),_c('b-form-group',[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.exportSettings.products.length === 0 ? _vm.$t('order_export_all_tickets') : _vm.$t('order_export_selected_tickets', {count: _vm.exportSettings.products.length})}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.exportSettings.searchProducts),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"searchProducts\", $$v)},expression:\"exportSettings.searchProducts\"}}),_c('b-form-checkbox-group',{staticClass:\"events-dropdown-inner\",attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.exportSettings.products),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"products\", $$v)},expression:\"exportSettings.products\"}},_vm._l((_vm.productsGroups),function(group){return _c('div',{key:group.name},[(group.name !== 'event_default_group')?_c('label',{staticClass:\"group-label d-block mt-3 mb-0\"},[_vm._v(_vm._s(group.name))]):_vm._e(),_vm._l((group.products),function(product){return _c('b-form-checkbox',{key:product.id,staticClass:\"w-100\",class:{'ml-2': group.name !== 'event_default_group'},attrs:{\"value\":product.id}},[_vm._v(_vm._s(product.name))])})],2)}),0)],1)],1)],1)],1):_vm._e(),(_vm.exportSettings.order_type === 'general')?_c('div',{staticClass:\"mt-4\"},[_c('h5',{staticClass:\"export-title\"},[_vm._v(_vm._s(_vm.$t('order_export_period')))]),_c('b-row',[_c('b-col',[_c('date-picker',{attrs:{\"state\":_vm.exportSettings.validations.from.state,\"aria-describedby\":\"date-from\"},model:{value:(_vm.exportSettings.from),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"from\", $$v)},expression:\"exportSettings.from\"}}),(_vm.exportSettings.validations.from.state === false)?_c('b-form-invalid-feedback',{staticClass:\"d-block\",attrs:{\"id\":\"date-from\"}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.exportSettings.validations.from.message))+\" \")]):_vm._e()],1),_c('b-col',[_c('date-picker',{attrs:{\"state\":_vm.exportSettings.validations.to.state,\"aria-describedby\":\"date-to\"},model:{value:(_vm.exportSettings.to),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"to\", $$v)},expression:\"exportSettings.to\"}}),(_vm.exportSettings.validations.to.state === false)?_c('b-form-invalid-feedback',{staticClass:\"d-block\",attrs:{\"id\":\"date-to\"}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.exportSettings.validations.to.message))+\" \")]):_vm._e()],1)],1)],1):_vm._e(),_c('div',{staticClass:\"mt-4\"},[_c('h5',{staticClass:\"export-title\"},[_vm._v(_vm._s(_vm.$t('order_export_which_email')))]),_c('b-form-input',{attrs:{\"debounce\":\"750\",\"state\":_vm.exportSettings.validations.email.state,\"aria-describedby\":\"email\",\"placeholder\":_vm.$t('Email') + '*'},model:{value:(_vm.exportSettings.email),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"email\", $$v)},expression:\"exportSettings.email\"}}),(_vm.exportSettings.validations.email.state === false)?_c('b-form-invalid-feedback',{staticClass:\"d-block\",attrs:{\"id\":\"email\"}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.exportSettings.validations.email.message))+\" \")]):_vm._e()],1),(_vm.exportSettings.order_type === 'general')?_c('div',{staticClass:\"mt-4\"},[_c('div',[_c('h5',{staticClass:\"float-left export-title\"},[_vm._v(_vm._s(_vm.$t('order_export_which_fields')))]),_c('b-button',{staticClass:\"float-right text-white\",attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.exportCheckAll()}}},[_vm._v(_vm._s(_vm.$t('export_settings_check_all')))])],1),_c('b-form-group',[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.exportFields,\"stacked\":true},model:{value:(_vm.exportSettings.fields),callback:function ($$v) {_vm.$set(_vm.exportSettings, \"fields\", $$v)},expression:\"exportSettings.fields\"}})],1)],1):_vm._e(),_c('b-form-group',{staticClass:\"mt-4\"},[_c('b-button',{staticClass:\"btn-primary\",attrs:{\"disabled\":_vm.exportSettings.loading},on:{\"click\":function($event){return _vm.makeExport()}}},[(_vm.exportSettings.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('orders_export_make'))+\" \")],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"export-orders-success\",\"hide-footer\":\"\",\"hide-header\":\"\",\"size\":\"export-l\"}},[_c('div',{staticClass:\"py-5\"},[_c('div',{staticClass:\"py-4 text-center\"},[_c('b-icon',{staticStyle:{\"color\":\"#529a47\"},attrs:{\"icon\":\"check-circle\",\"font-scale\":\"10\"}})],1),_c('div',{staticClass:\"text-center px-5\"},[_c('h3',{staticClass:\"my-3 font-weight-bold text-black\"},[_vm._v(_vm._s(_vm.$t('order_export_success')))]),_c('span',{staticClass:\"mt-4 export-success-description\"},[_vm._v(_vm._s(_vm.$t('order_export_success_message', {email: _vm.exportSettings.email})))])])])]),_c('b-row',[(_vm.orders.length)?_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"orderTable\",attrs:{\"fields\":_vm.fields,\"items\":_vm.orders},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [(item.full_name)?_c('span',[_vm._v(_vm._s(item.full_name))]):_c('span',[_vm._v(_vm._s(_vm.$t('unknown')))])]}},{key:\"cell(created_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.created_at))+\" \")]}},{key:\"cell(event)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.event_name)+\" \")]}},{key:\"cell(number_of_products)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.order_products.length)+\" \")]}},{key:\"cell(products)\",fn:function({item}){return [_c('div',_vm._l((_vm.getOrderProducts(item.order_products)),function(products,name){return _c('span',{key:name,staticClass:\"d-block\"},[_vm._v(\" \"+_vm._s(products.length)+\"x \"+_vm._s(name)+\" \")])}),0)]}},{key:\"cell(order_type)\",fn:function({item}){return [(item.order_type === 'box-office')?_c('b-badge',{attrs:{\"variant\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_box_office'))+\" \")]):(item.order_type === 'api')?_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_api_order'))+\" \")]):(item.order_type === 'free-order')?_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_free_tickets'))+\" \")]):(item.order_type === 'manual-order')?_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_manual_orders'))+\" \")]):(item.order_type === 'batch-ticket')?_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_batch_ticket'))+\" \")]):(item.order_type === 'payment-link')?_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_payment_link'))+\" \")]):_c('b-badge',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_online'))+\" \")])]}},{key:\"cell(is_paid)\",fn:function({item}){return [(item.is_cancelled)?_c('b-badge',{staticClass:\"text-white\",attrs:{\"variant\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_cancelled'))+\" \")]):(item.payment_status === 'test_order_paid')?_c('b-badge',{attrs:{\"variant\":\"secondary\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_test_paid'))+\" \")]):(!item.is_refunded && item.payment_status !== 'test_order_paid')?_c('b-badge',{attrs:{\"variant\":item.is_paid ? 'success' : 'danger'}},[_vm._v(\" \"+_vm._s(item.is_paid ? _vm.$t('order_paid') : _vm.$t('order_not_paid'))+\" \")]):_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_is_refunded'))+\" \")])]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('order_detail_view'))?_c('b-button',{attrs:{\"variant\":\"row-edit\",\"to\":{name: 'OrderDetails', params:{id: item.id, order_number: item.order_number}, query: {back: JSON.stringify(_vm.$route.query)}}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_details'))+\" \")]):_vm._e()]}}],null,false,3509643386)}),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":function($event){return _vm.getOrders($event, _vm.search)}}}):_vm._e()],1):_c('b-col',[_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.label}},[_c('b-input-group',[_c('b-form-input',{attrs:{\"state\":_vm.state,\"type\":\"text\",\"placeholder\":\"YYYY-MM-DD\",\"autocomplete\":\"off\"},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}}),_c('b-input-group-append',[_c('b-form-datepicker',{attrs:{\"button-only\":\"\",\"right\":\"\",\"start-weekday\":\"1\"},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}})],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-row>\n <b-col>\n <b-form-group :label=\"label\">\n <b-input-group>\n <b-form-input\n :state=\"state\"\n v-model=\"date\"\n type=\"text\"\n placeholder=\"YYYY-MM-DD\"\n autocomplete=\"off\"\n ></b-form-input>\n <b-input-group-append>\n <b-form-datepicker\n v-model=\"date\"\n button-only\n right\n start-weekday=\"1\"\n ></b-form-datepicker>\n </b-input-group-append>\n </b-input-group>\n </b-form-group>\n </b-col>\n </b-row>\n</template>\n<script>\nimport moment from 'moment'\nexport default {\n props: ['label', 'value', 'disableTime', 'state'],\n data() {\n return {\n date: '',\n dateTime: null,\n debounceTimeout: null,\n loaded: false,\n valid: null\n }\n },\n watch: {\n date() {\n this.$emit('input', this.date)\n },\n value () {\n\n if(!this.value){\n return;\n }\n\n this.dateTime = moment(this.value)\n if(!this.loaded && this.dateTime.isValid()) {\n this.date = this.dateTime.format('YYYY-MM-DD')\n this.loaded = true\n return\n }\n if(this.debounceTimeout) {\n clearTimeout(this.debounceTimeout)\n }\n\n this.debounceTimeout = setTimeout(() => {\n if(this.dateTime.isValid()){\n this.valid = null\n this.date = this.dateTime.format('YYYY-MM-DD')\n } else {\n this.valid = false\n }\n }, 1000)\n }\n },\n created() {\n if(this.value) {\n this.dateTime = moment(this.value)\n if (!this.loaded && this.dateTime.isValid()) {\n this.date = this.dateTime.format('YYYY-MM-DD')\n this.loaded = true\n }\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DatePicker.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DatePicker.vue?vue&type=template&id=6184d6c6\"\nimport script from \"./DatePicker.vue?vue&type=script&lang=js\"\nexport * from \"./DatePicker.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n\n <div>\n\n <b-row class=\"Parent\">\n <b-col cols=\"12\" lg=\"2\">\n <b-form-group v-if=\"$can('order_overview_search')\">\n <b-form-input class=\"v-text-field\" v-model=\"search\" debounce=\"500\"\n :placeholder=\"$t('search')\" @update=\"getOrders(1, $event)\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" sm=\"6\" lg=\"3\">\n <b-form-group class=\"order-events\">\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"selectedEvents.length ? (selectedEvents.length + ' ' + $t('permission_events_selected')) : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"select-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox v-model=\"showArchivedEvents\" switch>{{ $t('event_show_archived') }}</b-form-checkbox>\n <hr>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"selectedEvents\"\n @change=\"getOrders(1, search)\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => showArchivedEvents ? true : e.status !== 'archived').filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" sm=\"6\" lg=\"3\">\n <div class=\"d-inline-block mr-5\">\n <div class=\"float-left\">{{ $t('order_overview_show_expired') }}</div>\n <b-form-checkbox class=\"float-left ml-1\" switch v-model=\"show_expired\" :value=\"true\" :unchecked-value=\"false\" @change=\"getOrders()\"></b-form-checkbox>\n </div>\n <div class=\"d-inline-block\">\n <div class=\"float-left\">{{ $t('order_overview_show_box_office_orders') }}</div>\n <b-form-checkbox class=\"float-left ml-1\" switch v-model=\"show_box_office\" :value=\"true\" :unchecked-value=\"false\" @change=\"getOrders()\"></b-form-checkbox>\n </div>\n </b-col>\n <b-col cols=\"12\" sm=\"4\" lg=\"2\" v-if=\"this.$route.query.discountcode && this.$route.query.discountcode > 0\">\n <b-button variant=\"warning\" @click=\"removeDiscountcodeFilter()\">{{ $t('order_overview_remove_discountcode_filter') }}</b-button>\n </b-col>\n <b-col cols=\"12\" sm=\"6\" lg=\"2\" class=\"elem mt-3\">\n <b-form-group v-if=\"$can('order_overview_export')\" class=\"text-center \">\n <b-button v-b-modal.export-orders>{{ $t('order_export_generate_export') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n <b-modal hide-footer id=\"export-orders\" @close=\"exportSettings = {}\" size=\"export-l\" :title=\"$t('order_export_export')\">\n <h5 class=\"export-title mt-3\">{{ $t('order_export_type') }}</h5>\n <div>\n <b-button @click=\"changeExportType('visitor_list')\"\n :class=\"{'btn-outline': exportSettings.order_type !== 'visitor_list', 'btn-primary': exportSettings.order_type === 'visitor_list'}\"\n class=\"mt-2 mr-3\">\n {{ $t('order_export_visitor_list') }}\n </b-button>\n\n <b-button @click=\"changeExportType('general')\"\n :class=\"{'btn-outline': exportSettings.order_type !== 'general', 'btn-primary': exportSettings.order_type === 'general'}\"\n class=\"mt-2 mr-3\">\n {{ $t('order_export_general') }}\n </b-button>\n </div>\n\n <div class=\"mt-4\">\n <h5 class=\"export-title\">{{ $t('order_export_which_event') }}</h5>\n <div>\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"exportSettings.events.length ? (exportSettings.events.length + ' ' + $t('permission_events_selected')) : (exportSettings.order_type === 'visitor_list') ? $t('order_export_select_specific_event') : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"exportSettings.searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox-group\n class=\"events-dropdown-inner\"\n id=\"checkbox-group-2\"\n v-model=\"exportSettings.events\"\n name=\"flavour-2\"\n @change=\"eventSelected\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => exportSettings.searchEvents ? e.name.toLowerCase().includes(exportSettings.searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </div>\n </div>\n\n <div class=\"mt-4\" v-if=\"exportSettings.order_type === 'visitor_list' && productsGroups.length\">\n <h5 class=\"export-title\">{{ $t('order_export_which_tickets') }}</h5>\n <b-form-group>\n <b-dropdown id=\"dropdown-Checkbox\" ref=\"dropdown\" :text=\"exportSettings.products.length === 0 ? $t('order_export_all_tickets') : $t('order_export_selected_tickets', {count: exportSettings.products.length})\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"exportSettings.searchProducts\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox-group\n class=\"events-dropdown-inner\"\n id=\"checkbox-group-2\"\n v-model=\"exportSettings.products\"\n name=\"flavour-2\"\n >\n <div v-for=\"group in productsGroups\" :key=\"group.name\">\n <label class=\"group-label d-block mt-3 mb-0\" v-if=\"group.name !== 'event_default_group'\">{{ group.name }}</label>\n <b-form-checkbox v-for=\"product in group.products\"\n :key=\"product.id\"\n :value=\"product.id\"\n :class=\"{'ml-2': group.name !== 'event_default_group'}\"\n class=\"w-100\">{{ product.name }}</b-form-checkbox>\n </div>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n </div>\n\n <div v-if=\"exportSettings.order_type === 'general'\" class=\"mt-4\">\n <h5 class=\"export-title\">{{ $t('order_export_period') }}</h5>\n <b-row>\n <b-col>\n <date-picker v-model=\"exportSettings.from\" :state=\"exportSettings.validations.from.state\" aria-describedby=\"date-from\"></date-picker>\n <b-form-invalid-feedback v-if=\"exportSettings.validations.from.state === false\" id=\"date-from\" class=\"d-block\">\n {{ $t(exportSettings.validations.from.message) }}\n </b-form-invalid-feedback>\n </b-col>\n <b-col>\n <date-picker v-model=\"exportSettings.to\" :state=\"exportSettings.validations.to.state\" aria-describedby=\"date-to\"></date-picker>\n <b-form-invalid-feedback v-if=\"exportSettings.validations.to.state === false\" id=\"date-to\" class=\"d-block\">\n {{ $t(exportSettings.validations.to.message) }}\n </b-form-invalid-feedback>\n </b-col>\n </b-row>\n </div>\n\n <div class=\"mt-4\">\n <h5 class=\"export-title\">{{ $t('order_export_which_email') }}</h5>\n <b-form-input v-model=\"exportSettings.email\" debounce=\"750\" :state=\"exportSettings.validations.email.state\" aria-describedby=\"email\" :placeholder=\"$t('Email') + '*'\"></b-form-input>\n <b-form-invalid-feedback v-if=\"exportSettings.validations.email.state === false\" id=\"email\" class=\"d-block\">\n {{ $t(exportSettings.validations.email.message) }}\n </b-form-invalid-feedback>\n </div>\n\n <div v-if=\"exportSettings.order_type === 'general'\" class=\"mt-4\">\n <div>\n <h5 class=\"float-left export-title\">{{ $t('order_export_which_fields') }}</h5>\n <b-button class=\"float-right text-white\" variant=\"warning\" @click=\"exportCheckAll()\">{{ $t('export_settings_check_all') }}</b-button>\n </div>\n\n <b-form-group>\n <b-form-checkbox-group v-model=\"exportSettings.fields\" :options=\"exportFields\" :stacked=\"true\">\n </b-form-checkbox-group>\n </b-form-group>\n </div>\n <b-form-group class=\"mt-4\">\n <b-button class=\"btn-primary\" :disabled=\"exportSettings.loading\" @click=\"makeExport()\">\n <b-icon v-if=\"exportSettings.loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('orders_export_make') }}\n </b-button>\n </b-form-group>\n </b-modal>\n <b-modal id=\"export-orders-success\" hide-footer hide-header size=\"export-l\">\n <div class=\"py-5\">\n <div class=\"py-4 text-center\">\n <b-icon icon=\"check-circle\" font-scale=\"10\" style=\"color:#529a47\"></b-icon>\n </div>\n <div class=\"text-center px-5\">\n <h3 class=\"my-3 font-weight-bold text-black\">{{ $t('order_export_success') }}</h3>\n <span class=\"mt-4 export-success-description\">{{ $t('order_export_success_message', {email: exportSettings.email}) }}</span>\n </div>\n </div>\n </b-modal>\n <b-row>\n <b-col v-if=\"orders.length\" class=\"tableBig\">\n <b-table class=\"orderTable\" :fields=\"fields\" :items=\"orders\">\n <template v-slot:cell(name)=\"{item}\" >\n <span v-if=\"item.full_name\" >{{ item.full_name }}</span>\n <span v-else>{{ $t('unknown') }}</span>\n </template>\n <template v-slot:cell(created_at)=\"{item}\">\n {{ item.created_at | date_time }}\n </template>\n <template v-slot:cell(event)=\"{item}\">\n {{ item.event_name }}\n </template>\n <template v-slot:cell(number_of_products)=\"{item}\">\n {{ item.order_products.length }}\n </template>\n <template v-slot:cell(products)=\"{item}\">\n <div>\n <span v-for=\"(products, name) in getOrderProducts(item.order_products)\" :key=\"name\" class=\"d-block\">\n {{ products.length }}x {{ name }}\n </span>\n </div>\n </template>\n <template v-slot:cell(order_type)=\"{item}\">\n <b-badge variant=\"secondary\" v-if=\"item.order_type === 'box-office'\">\n {{ $t('order_overview_box_office') }}\n </b-badge>\n <b-badge v-else-if=\"item.order_type === 'api'\">\n {{ $t('order_overview_api_order') }}\n </b-badge>\n <b-badge v-else-if=\"item.order_type === 'free-order'\">\n {{ $t('order_overview_free_tickets') }}\n </b-badge>\n <b-badge v-else-if=\"item.order_type === 'manual-order'\">\n {{ $t('order_overview_manual_orders') }}\n </b-badge>\n <b-badge v-else-if=\"item.order_type === 'batch-ticket'\">\n {{ $t('order_overview_batch_ticket') }}\n </b-badge>\n <b-badge v-else-if=\"item.order_type === 'payment-link'\">\n {{ $t('order_overview_payment_link') }}\n </b-badge>\n <b-badge v-else>\n {{ $t('order_overview_online') }}\n </b-badge>\n </template>\n <template v-slot:cell(is_paid)=\"{item}\">\n <b-badge variant=\"warning\" v-if=\"item.is_cancelled\" class=\"text-white\">\n {{ $t('order_cancelled') }}\n </b-badge>\n <b-badge variant=\"secondary\" v-else-if=\"item.payment_status === 'test_order_paid'\">\n {{ $t('order_test_paid') }}\n </b-badge>\n <b-badge :variant=\"item.is_paid ? 'success' : 'danger'\" v-else-if=\"!item.is_refunded && item.payment_status !== 'test_order_paid'\">\n {{ item.is_paid ? $t('order_paid') : $t('order_not_paid') }}\n </b-badge>\n <b-badge variant=\"warning\" v-else>\n {{ $t('order_is_refunded') }}\n </b-badge>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('order_detail_view')\" variant=\"row-edit\"\n :to=\"{name: 'OrderDetails', params:{id: item.id, order_number: item.order_number}, query: {back: JSON.stringify($route.query)}}\">\n {{ $t('order_details') }}\n </b-button>\n </template>\n </b-table>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getOrders($event, search)\"></pagination>\n </b-col>\n <b-col v-else>\n <b-alert show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DatePicker from \"@/components/DatePicker\";\nimport moment from 'moment'\nimport { deepClone, groupBy, validateEmail } from '@/functions';\nexport default {\n components: {\n DatePicker\n },\n data() {\n return {\n search: '',\n orders: [],\n show_expired: false,\n show_box_office: false,\n page_data: null,\n page: 1,\n timeout: null,\n exportFields: [\n\n // EVENT\n {text: this.$t('export_event_name'), value: 'event_name'},\n\n // ORDER\n {text: this.$t('export_order_number'), value: 'order_number'},\n {text: this.$t('export_total_price'), value: 'total_price'},\n {text: this.$t('export_discount'), value: 'discount'},\n {text: this.$t('export_order_payment_fee'), value: 'order_payment_fee'},\n {text: this.$t('export_order_payment_fee_vat'), value: 'order_payment_fee_vat'},\n {text: this.$t('export_order_payment_fee_vat_perc'), value: 'order_payment_fee_vat_perc'},\n {text: this.$t('export_ticket_fee_total'), value: 'order_ticket_fee'},\n {text: this.$t('export_ticket_fee_vat'), value: 'order_ticket_fee_vat'},\n {text: this.$t('export_ticket_fee_vat_perc'), value: 'order_ticket_fee_vat_perc'},\n\n // PRODUCT\n {text: this.$t('export_product_number'), value: 'order_product_number'},\n {text: this.$t('export_product_price'), value: 'order_product_price'},\n {text: this.$t('export_product_price_vat'), value: 'order_product_vat'},\n {text: this.$t('export_product_price_vat_perc'), value: 'order_product_vat_perc'},\n {text: this.$t('export_product_service_fee'), value: 'order_product_service_fee'},\n {text: this.$t('export_product_service_fee_vat'), value: 'order_product_service_fee_vat'},\n {text: this.$t('export_product_service_fee_vat_perc'), value: 'order_product_service_fee_vat_perc'},\n\n // ORDER\n {text: this.$t('export_order_payment_method'), value: 'payment_method'},\n {text: this.$t('export_order_timeslot'), value: 'timeslot'},\n\n // CUSTOMER\n {text: this.$t('export_customer_first_name'), value: 'customer_first_name'},\n {text: this.$t('export_customer_last_name'), value: 'customer_last_name'},\n {text: this.$t('export_customer_company_name'), value: 'customer_company_name'},\n {text: this.$t('export_customer_email'), value: 'customer_email'},\n {text: this.$t('export_customer_address'), value: 'customer_address'},\n {text: this.$t('export_customer_zip'), value: 'customer_address_zip'},\n {text: this.$t('export_customer_city'), value: 'customer_address_city'},\n {text: this.$t('export_customer_country'), value: 'customer_address_country'},\n {text: this.$t('export_customer_gender'), value: 'customer_gender'},\n {text: this.$t('export_customer_optin'), value: 'customer_optin'},\n {text: this.$t('export_customer_phone'), value: 'customer_phone'},\n {text: this.$t('export_customer_dob'), value: 'customer_dob'},\n\n // PRODUCT\n {text: this.$t('export_product_id'), value: 'order_product_id'},\n {text: this.$t('export_product_group'), value: 'product_group'},\n {text: this.$t('export_product_name'), value: 'product_name'},\n {text: this.$t('export_product_type'), value: 'product_type'},\n\n // TICKET\n {text: this.$t('export_product_ticket_value'), value: 'product_ticket_value'},\n\n ],\n exportSettings: {\n from: moment().subtract(7, 'days').format('YYYY-MM-DD'),\n to: moment().format('YYYY-MM-DD'),\n email: null,\n fields: [],\n selected_events: [],\n order_type: 'visitor_list',\n events: [],\n searchEvents: null,\n event: null,\n groups: [],\n products: [],\n searchProducts: null,\n validations: {\n from: {\n state: null,\n message: null\n },\n event: {\n state: null,\n message: null\n },\n to: {\n state: null,\n message: null\n },\n email: {\n state: null,\n message: null\n }\n },\n loading: false\n },\n fields: [\n {key: 'order_type', label: this.$t('order_type'), sortable: true},\n {key: 'order_number', label: this.$t('order_number'), sortable: true},\n {key: 'name', label: this.$t('order_full_name'), sortable: true},\n {key: 'event', label: this.$t('order_event'), sortable: true},\n {key: 'number_of_products', label: this.$t('order_number_of_products'), sortable: true},\n {key: 'products', label: this.$t('event_manage_products'), sortable: false},\n {key: 'created_at', label: this.$t('order_created_at'), sortable: true},\n {key: 'is_paid', label: this.$t('order_is_paid')},\n {key: 'actions', label: ''},\n ],\n events: [],\n selectedEvents: [],\n searchEvents: '',\n showArchivedEvents: false,\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('order_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n this.exportSettings.email = this.$store.state.user.email;\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n {key: 'order_type', label: this.$t('order_type'), sortable: true},\n {key: 'order_number', label: this.$t('order_number'), sortable: true},\n {key: 'name', label: this.$t('order_full_name'), sortable: true},\n {key: 'event', label: this.$t('order_event'), sortable: true},\n {key: 'created_at', label: this.$t('order_created_at'), sortable: true},\n {key: 'is_paid', label: this.$t('order_is_paid')},\n {key: 'actions', label: ''}\n ];\n }\n }\n },\n methods: {\n removeDiscountcodeFilter(){\n this.$router.replace('?')\n this.getOrders()\n },\n makeExport() {\n this.exportSettings.validations.from.state = null;\n this.exportSettings.validations.from.message = null;\n this.exportSettings.validations.to.state = null;\n this.exportSettings.validations.to.message = null;\n this.exportSettings.validations.email.state = null;\n this.exportSettings.validations.email.message = null;\n this.exportSettings.validations.event.state = null;\n this.exportSettings.validations.event.message = null;\n\n if(this.exportSettings.order_type === 'general') {\n if(!this.exportSettings.from) {\n this.exportSettings.validations.from.state = false;\n this.exportSettings.validations.from.message = 'field_is_required';\n }\n if(!this.exportSettings.to) {\n this.exportSettings.validations.to.state = false;\n this.exportSettings.validations.to.message = 'field_is_required';\n }\n if(!this.exportSettings.from || !this.exportSettings.to) {\n return;\n }\n\n if(this.exportSettings.from > this.exportSettings.to) {\n this.exportSettings.validations.to.state = false;\n this.exportSettings.validations.from.state = false;\n this.exportSettings.validations.to.message = 'end_date_must_be_greater';\n return;\n }\n }\n\n if(!this.exportSettings.email || !this.exportSettings.email.length) {\n this.exportSettings.validations.email.state = false;\n this.exportSettings.validations.email.message = 'field_is_required';\n return;\n }\n\n if(!validateEmail(this.exportSettings.email)) {\n this.exportSettings.validations.email.state = false;\n this.exportSettings.validations.email.message = 'wrong_email';\n return;\n }\n\n this.exportSettings.loading = true;\n\n api.order().makeExport(this.exportSettings).then(() => {\n this.$bvModal.hide('export-orders')\n this.$bvModal.show('export-orders-success');\n }).finally(() => {\n this.exportSettings.loading = false;\n })\n },\n exportCheckAll() {\n this.exportSettings.fields = this.exportFields.map((f) => {\n return f.value\n })\n },\n getOrders(page = 1, search) {\n if (!page) {\n page = 1\n }\n api.order().getAll(page, this.show_expired, this.show_box_office, this.selectedEvents, this.$route.query.discountcode, search).then((orders) => {\n this.page_data = orders\n this.orders = orders.data.map(order => {\n return Object.assign(order, {is_refunded: order.order_products.filter(p => p.refunded_at === null).length === 0})\n })\n const query = {\n page,\n show_expired: this.show_expired,\n show_box_office: this.show_box_office,\n events: this.selectedEvents\n };\n if(search && search.length) {\n query.search = search;\n }\n this.$router.replace({ name: 'OrderOverview', query })\n })\n },\n eventSelected(events) {\n if(!events.length) {\n return;\n }\n if(this.exportSettings.order_type === 'general') {\n if(events.length === 1) {\n const event = this.events.find(e => e.id === events[0]);\n this.exportSettings.from = moment(event.created_at).format('YYYY-MM-DD');\n this.exportSettings.to = moment().format('YYYY-MM-DD');\n }\n else {\n this.exportSettings.from = moment().subtract(7, 'days').format('YYYY-MM-DD');\n this.exportSettings.to = moment().format('YYYY-MM-DD');\n return;\n }\n }\n let event = null;\n if(events.length === 1) {\n event = events[0];\n }\n else {\n event = events[events.length - 1]\n }\n this.exportSettings.events = [event];\n this.exportSettings.groups = [];\n this.exportSettings.products = [];\n if(!event) {\n return;\n }\n\n api.guestList().getProductsByEvent(event).then(response => {\n this.exportSettings.groups = response;\n })\n },\n changeExportType(type) {\n this.exportSettings.events = [];\n this.exportSettings.event = null;\n this.exportSettings.order_type = type;\n },\n getOrderProducts(products) {\n return groupBy(products, (ticket) => {\n const group = ticket.product.product_group.name === 'event_default_group' ? '' : (ticket.product.product_group.name + ' - ');\n return group + ticket.product.name\n })\n }\n },\n created() {\n document.title = this.$t('backend_title_order_overview')\n if(this.$store.state.user) {\n if(!this.$can('order_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n this.exportSettings.email = this.$store.state.user.email;\n }\n api.event().all(true).then(events => {\n this.events = events;\n })\n if(this.$route.query.search) {\n this.search = this.$route.query.search;\n }\n if(this.$route.query.show_expired) {\n this.show_expired = this.$route.query.show_expired;\n }\n if(this.$route.query.show_box_office) {\n this.show_box_office = this.$route.query.show_box_office;\n }\n if(this.$route.query.events) {\n this.selectedEvents = this.$route.query.events;\n }\n if(this.$route.query.page) {\n this.getOrders(this.$route.query.page, this.$route.query.search)\n }\n else {\n this.getOrders()\n }\n },\n computed: {\n productsGroups() {\n if(!this.exportSettings.events.length) {\n return [];\n }\n\n return deepClone(this.exportSettings.groups).map(group => {\n group.products = group.products.filter(p => {\n if(this.exportSettings.searchProducts === null || !this.exportSettings.searchProducts.length) {\n return true;\n }\n return p.name.toLowerCase().includes(this.exportSettings.searchProducts.toLowerCase())\n })\n return group;\n }).filter(group => {\n return group.products.length\n })\n }\n }\n}\n</script>\n<style lang=\"scss\" scoped>\n\n.elem{\n margin: auto;\n}\n.Parent > div{\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 10px 0;\n}\n.Parent{\n margin-bottom: 20px;\n}\n.float-left{\n float:left\n}\nfieldset{\n width: 100%!important;\n margin: 0px;\n}\n.select-events-container {\n overflow-y: scroll;\n overflow-x: hidden;\n max-height:250px;\n}\n.btn-primary, .btn-primary:active, .btn-primary:focus {\n background-color: #193e58;\n border: 0 !important;\n box-shadow: unset !important;\n &:hover {\n background-color: #102636;\n }\n}\n\n.btn-outline {\n background-color: #FFFFFF !important;\n border: 1px solid #6c757d !important;\n color: #6c757d !important;\n\n &:hover {\n background-color: #6c757d !important;\n color: #FFFFFF !important;\n }\n}\n.group-label {\n background-color: #EEEEEE;\n color: #000!important;\n font-size: 15px!important;\n padding: 5px ;\n}\n\n.text-black {\n color: #000000 !important;\n}\n\n.export-success-description {\n font-size: larger;\n}\n\n.export-title {\n color: #9d9d9d !important;\n}\n\ninput::placeholder, select::placeholder {\n color: #b3b3b3;\n}\n\n.events-dropdown-inner {\n max-height: 300px;\n overflow-y: scroll;\n overflow-x: hidden;\n}\n</style>\n\n<style lang=\"scss\">\n@media (min-width: 992px) {\n .modal-export-l {\n max-width: 660px !important;\n }\n}\n.order-events>div {\n height: 50px !important;\n}\n.v-select.invalid .vs__dropdown-toggle{\n border: 2px solid #c2464c !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderOverview.vue?vue&type=template&id=e90798fe&scoped=true\"\nimport script from \"./OrderOverview.vue?vue&type=script&lang=js\"\nexport * from \"./OrderOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderOverview.vue?vue&type=style&index=0&id=e90798fe&prod&lang=scss&scoped=true\"\nimport style1 from \"./OrderOverview.vue?vue&type=style&index=1&id=e90798fe&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e90798fe\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.order)?_c('div',{staticClass:\"orderDetails\",attrs:{\"fluid\":\"\"}},[(_vm.order.is_cancelled)?_c('b-row',[_c('b-col',[_c('b-alert',{attrs:{\"show\":true,\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('order_is_cancelled')))])],1)],1):_vm._e(),(_vm.$route.query.back)?_c('b-button',{staticClass:\"mb-4 text-white\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){_vm.$router.push({name: 'OrderOverview', query: _vm.getBackQuery()})}}},[_c('b-icon',{attrs:{\"icon\":\"chevron-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back'))+\" \")],1):_vm._e(),_c('b-row',[_c('b-col',{staticClass:\"mb-3\",attrs:{\"xl\":\"4\",\"lg\":\"6\"}},[_c('b-card',{attrs:{\"title\":_vm.$t('order_details')}},[_c('b-card-text',[_c('table',{staticClass:\"order-details-table\"},[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_number')))]),_c('td',[_vm._v(_vm._s(_vm.order.order_number))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_created_at')))]),_c('td',[_vm._v(_vm._s(_vm._f(\"date_time\")(_vm.order.created_at)))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_is_paid')))]),_c('td',[(!_vm.isRefunded)?_c('b-badge',{attrs:{\"variant\":_vm.order.is_paid ? 'success' : 'danger'}},[_vm._v(\" \"+_vm._s(_vm.order.is_paid ? _vm.$t('order_paid') : _vm.$t('order_not_paid'))+\" \")]):_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_is_refunded'))+\" \")])],1)]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_detail_payment_method')))]),_c('td',[_vm._v(_vm._s(_vm.order.pos_payment_method ? _vm.order.pos_payment_method.payment_method.name : _vm.$t('order_no_payment_method'))+\" \")])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_event')))]),_c('td',[_vm._v(_vm._s(_vm.order.event.name))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_total')))]),_c('td',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.order.total)))])]),(_vm.order.discountcode)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_discountcode')))]),_c('td',[_vm._v(_vm._s(_vm.order.discountcode.code)+\" ( \"),(_vm.order.discountcode.type == 'value')?_c('span',[_vm._v(\"€\")]):_vm._e(),_vm._v(_vm._s(_vm.order.discountcode.amount)),(_vm.order.discountcode.type == 'percentage')?_c('span',[_vm._v(\"%\")]):_vm._e(),_vm._v(\" )\")])]):_vm._e(),(_vm.order.discount)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_discount')))]),_c('td',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.order.discount)))])]):_vm._e(),(_vm.order.timeslot_id)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_timeslot')))]),_c('td',[_vm._v(_vm._s(_vm._f(\"date_time\")(_vm.order.timeslot.starts_at))+\" - \"+_vm._s(_vm._f(\"date_time\")(_vm.order.timeslot.ends_at)))])]):_vm._e(),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('order_type')))]),_c('td',[(_vm.order.order_type === 'box-office')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_box_office'))+\" \")]):(_vm.order.order_type === 'api')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_api_order'))+\" \")]):(_vm.order.order_type === 'free-order')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_free_tickets'))+\" \")]):(_vm.order.order_type === 'manual-order')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_manual_orders'))+\" \")]):(_vm.order.order_type === 'batch-ticket')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_batch_ticket'))+\" \")]):(_vm.order.order_type === 'payment-link')?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_payment_link'))+\" \")]):_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('order_overview_online'))+\" \")])])]),(_vm.order.campaign)?_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('campaign')))]),_c('td',[_vm._v(_vm._s(_vm.order.campaign.name))])]):_vm._e()])])],1)],1),_c('b-col',{staticClass:\"mb-3\",attrs:{\"xl\":\"4\",\"lg\":\"6\"}},[_c('b-card',[_c('b-card-title',[_c('b-row',{staticClass:\"align-items-center\"},[_c('b-col',{staticClass:\"text-white\"},[_vm._v(_vm._s(_vm.$t('order_customer_details')))]),(_vm.$can('order_detail_change_customer_details'))?_c('b-col',{staticClass:\"text-right\"},[(_vm.order.customer)?_c('button',{staticClass:\"btn btn-primary btn-sm py-0\",staticStyle:{\"font-size\":\"13px\"},attrs:{\"type\":\"button\"},on:{\"click\":_vm.showEditCustomerModal}},[_vm._v(_vm._s(_vm.$t('order_details_edit_customer_data')))]):_vm._e()]):_vm._e()],1)],1),_c('b-card-text',[(_vm.order.customer)?_c('table',{staticClass:\"order-details-table\"},[_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_full_name')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.first_name)+\" \"+_vm._s(_vm.order.customer.last_name))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_address')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.addresses[0] ? (_vm.order.customer.addresses[0].address ? _vm.order.customer.addresses[0].address : '') + ' ' + (_vm.order.customer.addresses[0].house_nr ? _vm.order.customer.addresses[0].house_nr : '') : ''))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_zip')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.addresses[0] ? _vm.order.customer.addresses[0].zip : ''))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_city')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.addresses[0] ? _vm.order.customer.addresses[0].city : ''))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_phone')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.phone))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_email')))]),_c('td',[_vm._v(_vm._s(_vm.order.customer.email))])]),_c('tr',[_c('td',[_vm._v(_vm._s(_vm.$t('customer_dob')))]),_c('td',[_vm._v(_vm._s(_vm.getDate(_vm.order.customer.dob)))])])]):_vm._e()])],1)],1),_c('b-col',{staticClass:\"mb-3\",attrs:{\"xl\":\"4\",\"lg\":\"12\"}},[_c('b-card',{staticClass:\"pb-3\",attrs:{\"title\":_vm.$t('order_actions')}},[_c('b-card-text',[(_vm.$can('order_cancel'))?_c('b-form-group',{staticClass:\"order-action\"},[_c('b-button',{attrs:{\"disabled\":_vm.order.is_cancelled,\"variant\":\"link\"},on:{\"click\":function($event){return _vm.showCancelOrderModal()}}},[_vm._v(_vm._s(_vm.$t('order_cancel')))])],1):_vm._e(),(_vm.$can('order_refund'))?_c('b-form-group',{staticClass:\"order-action\"},[_c('b-button',{attrs:{\"disabled\":_vm.order.payment_status !== 'paid' || _vm.order.order_type === 'free-order',\"variant\":\"link\"},on:{\"click\":function($event){return _vm.showRefundOrderModal()}}},[_vm._v(_vm._s(_vm.$t('order_refund')))])],1):_vm._e(),(_vm.$can('order_order_confirmation'))?_c('b-form-group',{staticClass:\"order-action\"},[_c('b-button',{attrs:{\"variant\":\"link\"},on:{\"click\":function($event){return _vm.showResentTicketsModal()}}},[_vm._v(_vm._s(_vm.$t('order_resend_confirmation')))])],1):_vm._e(),(_vm.$can('order_detail_change_event'))?_c('b-form-group',{staticClass:\"order-action\"},[_c('b-button',{attrs:{\"variant\":\"link\"},on:{\"click\":function($event){return _vm.showChangeOrderEventModal()}}},[_vm._v(_vm._s(_vm.$t('order_details_change_order_event')))])],1):_vm._e(),(_vm.order.point_of_sale.status !== 'box-office')?_c('b-form-group',{staticClass:\"order-action\"},[_c('b-button',{attrs:{\"href\":_vm.getOrderStatusPageUrl(_vm.order.id, _vm.order.secret),\"target\":\"_blank\",\"variant\":\"link\"}},[_vm._v(_vm._s(_vm.$t('order_open_customer_status')))])],1):_vm._e()],1)],1)],1)],1),_c('hr',{staticClass:\"my-4 mb-5\"}),_c('b-row',[_c('b-col',{staticClass:\"mb-3\"},[_c('b-card',{staticClass:\"order_products\",attrs:{\"title\":_vm.$t('order_products')}},[_c('b-card-text',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container productTable\",attrs:{\"items\":_vm.order.order_products,\"fields\":['status', 'claimed', 'product', 'price', 'email', 'actions'],\"thead-class\":\"d-none\"},scopedSlots:_vm._u([{key:\"cell(status)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.url)+\" \"),(!item.product.create_eticket)?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('product_successfully_ordered')))]):(_vm.order.point_of_sale.status === 'box-office')?_c('b-badge',{attrs:{\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('product_successfully_ordered')))]):(!item.ticket)?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('ticket_not_found')))]):(item.refunded_at === null && item.ticket.status == 'cancelled')?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('ticket_cancelled')))]):(item.refunded_at !== null && item.ticket.status == 'cancelled')?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.$t('order_status_refunded')))]):(!item.ticket.url)?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.$t('ticket_not_generated')))]):(item.ticket.scanned)?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('ticked_scanned')))]):(item.ticket.url)?_c('b-badge',{attrs:{\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('ticket_generated')))]):_vm._e()]}},{key:\"cell(claimed)\",fn:function({item}){return [(item.ticket)?_c('div',[(item.ticket.status == 'cancelled')?_c('div',[_vm._v(_vm._s(item.refunded_at === null ? _vm.$t('ticket_cancelled') : _vm.$t('order_status_refunded')))]):(item.ticket.claimed_at)?_c('div',[_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"variant\":\"success\"}}),_vm._v(\" \"+_vm._s(_vm.$t('ticket_claimed_at'))+\" \"+_vm._s(_vm._f(\"date_time\")(item.ticket.claimed_at)))],1):_c('div',[_c('b-icon',{attrs:{\"icon\":\"circle\"}}),_vm._v(\" \"+_vm._s(_vm.$t('ticket_not_claimed'))+\" \"),(item.ticket.reminded_at)?_c('div',[_vm._v(_vm._s(_vm.$t('ticket_reminded_at'))+\" \"+_vm._s(_vm._f(\"date_time\")(item.ticket.reminded_at)))]):_vm._e(),(item.ticket.invited_at)?_c('div',[_vm._v(_vm._s(_vm.$t('ticket_invited_at'))+\" \"+_vm._s(_vm._f(\"date_time\")(item.ticket.invited_at)))]):_vm._e()],1),(item.ticket && item.ticket.claimed_at != null)?_c('div',[(item.ticket.logs && _vm.isScanned(item))?_c('div',[_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"variant\":\"success\"}}),_vm._v(\" \"+_vm._s(_vm.$t('order_ticket_scanned_at'))+\" \"),_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.getScanLogs(item))}})],1):_c('div',[_c('b-icon',{attrs:{\"icon\":\"circle\"}}),_vm._v(\" \"+_vm._s(_vm.$t('order_ticket_not_yet_scanned'))+\" \")],1)]):_vm._e()]):_vm._e()]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.order.is_paid && item.product.create_eticket && _vm.order.point_of_sale.status !== 'box-office')?[(item.refunded_at)?_c('span',[_vm._v(_vm._s(_vm._f(\"date_time\")(item.refunded_at)))]):_vm._e(),(_vm.order.event.status === 'archived')?_c('div',{staticClass:\"product-row-button-container\"},[(item.ticket.url && item.ticket.status == 'active')?_c('b-btn',{attrs:{\"variant\":\"info\",\"target\":\"_blank\",\"href\":item.ticket.url}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_view'))+\" \")]):_vm._e()],1):_c('div',{staticClass:\"product-row-button-container\"},[(!item.ticket && _vm.$can('order_detail_generate_ticket'))?_c('b-btn',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.generateTicket(item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_generate'))+\" \")]):(!item.ticket.url && item.ticket.status == 'active' && _vm.$can('order_detail_generate_ticket'))?_c('b-btn',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.generateTicket(item)}}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_generate'))+\" \")]):(item.ticket.url && item.ticket.status == 'active')?_c('b-btn',{attrs:{\"variant\":\"info\",\"target\":\"_blank\",\"href\":item.ticket.url}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_view'))+\" \")]):_vm._e(),(_vm.$can('order_detail_product_change_owner') && item.ticket && !item.ticket.scanned && item.ticket.status == 'active')?_c('b-button',{attrs:{\"variant\":\"info\",\"href\":'https://' + _vm.order.company.domain + '/ticket/' + item.ticket.id + '/' + item.ticket.secret + '/claim?change=1',\"target\":\"_blank\"}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_change_owner'))+\" \")]):_vm._e(),(item.ticket && item.ticket.status == 'active' && _vm.$can('order_detail_product_cancel'))?_c('b-btn',{attrs:{\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.cancelTicket(item.ticket)}}},[_vm._v(\" \"+_vm._s(_vm.$t('ticket_cancel'))+\" \")]):_vm._e()],1)]:_vm._e()]}},{key:\"cell(product)\",fn:function({item}){return [(item.product.product_group.name !== 'event_default_group')?_c('span',[_vm._v(_vm._s(item.product.product_group.name)),_c('br')]):_vm._e(),_vm._v(\" \"+_vm._s(item.product.name)+\" \")]}},{key:\"cell(price)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.price))+\" \")]}},{key:\"cell(email)\",fn:function({item}){return [(item.ticket && _vm.order.point_of_sale.status !== 'box-office')?_c('div',[(item.ticket.customer)?_c('div',[_vm._v(\" \"+_vm._s(item.ticket.customer.first_name)+\" \"+_vm._s(item.ticket.customer.last_name)+\" \"),((item.ticket.customer.first_name || item.ticket.customer.last_name) && item.ticket.customer.email)?_c('br'):_vm._e(),_vm._v(\" \"+_vm._s(item.ticket.customer.email)+\" \")]):_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('ticket_customer_not_set')))])],1):_vm._e()]}}],null,false,2096279900)})],1)],1),(Object.keys(_vm.specificQuestions).length > 0)?_c('b-card',{staticClass:\"mt-4 mb-3\",attrs:{\"title\":_vm.$t('order_customer_answers')}},[_c('b-card-text',_vm._l((_vm.specificQuestions),function(specificQuestion,i){return _c('div',{key:'specificQuestion-' + i,staticClass:\"specific-question-row\"},[_c('strong',[_vm._v(_vm._s(i))]),_vm._l((specificQuestion),function(specificAnswer,a){return _c('div',{key:'specificAnswer' + a},[_vm._v(\" \"+_vm._s(specificAnswer.amount)+\"x \"+_vm._s(specificAnswer.answer)+\" \")])})],2)}),0)],1):_vm._e()],1),_c('b-col',{staticClass:\"tableBig mb-3\",attrs:{\"xl\":\"4\"}},[(_vm.$can('order_detail_payment_history_view'))?_c('b-table',{attrs:{\"items\":_vm.payment_logs,\"fields\":[{key: 'created_at', label: _vm.$t('order_payment_created_at')}, {key: 'type', label: _vm.$t('order_payment_status')}, {key: 'context', label: _vm.$t('order_payment_amount')} ]},scopedSlots:_vm._u([{key:\"cell(created_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.created_at))+\" \")]}},{key:\"cell(type)\",fn:function({item}){return [_c('b-badge',{attrs:{\"variant\":item.type}},[_vm._v(_vm._s(_vm.$t(item.message)))])]}},{key:\"cell(context)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.context.payment_method)+\" \"+_vm._s(item.context.payment_method ? ' - ' : '')+\" \"+_vm._s(_vm._f(\"currency\")(item.context.amount))+\" \")]}}],null,false,576039719)}):_vm._e(),(_vm.$can('order_detail_notes_view'))?_c('b-table',{staticClass:\"table-container tableEdit\",attrs:{\"items\":_vm.order.notes,\"fields\":[{key: 'message', label: _vm.$t('order_notes')}]},scopedSlots:_vm._u([{key:\"cell(message)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.message)),_c('br'),_c('span',{staticClass:\"small\"},[_vm._v(_vm._s(item.user.name)+\" @ \"+_vm._s(_vm._f(\"date_time\")(item.created_at)))])]}}],null,false,59036458)}):_vm._e(),(_vm.$can('order_detail_notes_create'))?_c('b-card',{attrs:{\"title\":_vm.$t('order_create_note')}},[_c('b-card-text',[_c('b-form-group',[_c('b-textarea',{attrs:{\"disabled\":_vm.addingNote},model:{value:(_vm.message),callback:function ($$v) {_vm.message=$$v},expression:\"message\"}})],1),_c('b-form-group',{staticClass:\"mt-3\"},[_c('b-btn',{staticClass:\"px-4\",attrs:{\"variant\":\"primary\",\"disabled\":_vm.addingNote},on:{\"click\":function($event){return _vm.addNote()}}},[_vm._v(_vm._s(_vm.$t('create')))])],1)],1)],1):_vm._e()],1)],1),(_vm.$can('order_detail_log_view'))?_c('b-row',[_c('b-col',{staticClass:\"mb-3\"},[_c('b-card',{staticClass:\"mt-4\",attrs:{\"title\":_vm.$t('order_log')}},[_c('b-card-text',{staticClass:\"inner\"},_vm._l((_vm.logs),function(log){return _c('b-row',{key:`log` + log.id,staticClass:\"mb-3\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"4\"}},[_c('b-badge',{attrs:{\"variant\":log.type}},[_vm._v(_vm._s(_vm.$t(log.message)))])],1),_c('b-col',[_vm._v(_vm._s(_vm._f(\"date_time\")(log.created_at)))]),_c('b-col',{staticClass:\"text-right\"},[_c('b-btn',{on:{\"click\":function($event){return _vm.showAuditDetails(log)}}},[_vm._v(_vm._s(_vm.$t('audit_show_context')))])],1)],1)}),1)],1)],1)],1):_vm._e(),_c('b-modal',{attrs:{\"id\":\"audit-log\",\"size\":\"lg\"}},[(_vm.auditLog)?_c('div',[(_vm.auditLog.context.email)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$t('email_content')))]),_c('div',{staticClass:\"popUp\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.auditLog.context.email)}})])]):_vm._e(),(_vm.auditLog.context.amount)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$t('amount')))]),_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(_vm.auditLog.context.amount))+\" \")]):_vm._e(),(_vm.auditLog.context.payment_method)?_c('div',[_c('h5',[_vm._v(_vm._s(_vm.$t('payment_method')))]),_vm._v(\" \"+_vm._s(_vm.auditLog.context.payment_method)+\" \")]):_vm._e()]):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('order_detail_modal_cancel_order_title', {order: _vm.order ? _vm.order.order_number : ''}),\"id\":\"cancel-order\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.cancelOrder()}}},[_vm._v(_vm._s(_vm.$t('order_detail_cancel_order')))])]}}],null,false,308474719)},[(_vm.order)?_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('order_detail_cancel_order_confirmation')))])],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-checkbox',{staticClass:\"name-checkbox\",model:{value:(_vm.order_cancel_send_mail),callback:function ($$v) {_vm.order_cancel_send_mail=$$v},expression:\"order_cancel_send_mail\"}},[_vm._v(_vm._s(_vm.$t('order_detail_modal_send_mail')))])],1)],1)],1)],1):_vm._e()]),(_vm.order)?_c('order-details-refund',{ref:\"refundModal\",attrs:{\"order\":_vm.order},on:{\"refunded\":_vm.loadOrder}}):_vm._e(),_c('b-modal',{attrs:{\"title\":_vm.$t('order_detail_modal_resent_tickets_title', {order: _vm.order ? _vm.order.order_number : ''}),\"id\":\"resent-tickets\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.resentTickets()}}},[_vm._v(_vm._s(_vm.$t('order_detail_resent_confirmation_tickets')))])]}}],null,false,693925487)},[(_vm.order)?_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('order_detail_resent_tickets_confirmation')))])],1)],1):_vm._e()]),_c('b-modal',{attrs:{\"id\":\"edit-customer\",\"title\":_vm.$t('order_details_edit_customer_data')},on:{\"hide\":function($event){_vm.editCustomer = {}},\"close\":function($event){_vm.editCustomer = {}}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.updateCustomer}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}],null,false,2389344935)},[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('first_name')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.first_name),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"first_name\", $$v)},expression:\"editCustomer.first_name\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('last_name')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.last_name),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"last_name\", $$v)},expression:\"editCustomer.last_name\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_address')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.address),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"address\", $$v)},expression:\"editCustomer.address\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_house_nr')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.house_nr),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"house_nr\", $$v)},expression:\"editCustomer.house_nr\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_zip')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.zip),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"zip\", $$v)},expression:\"editCustomer.zip\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_city')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.city),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"city\", $$v)},expression:\"editCustomer.city\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_country')}},[_c('b-form-select',{attrs:{\"text-field\":\"label\",\"value-field\":\"id\",\"options\":_vm.countries},model:{value:(_vm.editCustomer.country),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"country\", $$v)},expression:\"editCustomer.country\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_phone')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.phone),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"phone\", $$v)},expression:\"editCustomer.phone\"}})],1)],1)],1),_c('b-form-group',[_c('b-form-checkbox',{attrs:{\"disabled\":_vm.editCustomer.optin ? false : true},model:{value:(_vm.editCustomer.optin),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"optin\", $$v)},expression:\"editCustomer.optin\"}},[_vm._v(_vm._s(_vm.$t('customer_optin'))+\" \")])],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_email')}},[_c('b-form-input',{model:{value:(_vm.editCustomer.email),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"email\", $$v)},expression:\"editCustomer.email\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_gender')}},[_c('b-form-radio-group',{attrs:{\"options\":_vm.genders},model:{value:(_vm.editCustomer.gender),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"gender\", $$v)},expression:\"editCustomer.gender\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_dob')}},[_c('date-picker',{model:{value:(_vm.editCustomer.dob),callback:function ($$v) {_vm.$set(_vm.editCustomer, \"dob\", $$v)},expression:\"editCustomer.dob\"}})],1)],1)],1)],1),_c('b-modal',{attrs:{\"title\":_vm.$t('order_details_change_order_event'),\"id\":\"change-order-event-modal\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.isSwitchEventModalDisabled},on:{\"click\":_vm.saveSwitchOrderEvent}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}],null,false,1089182906)},[(_vm.switchEventLoading && !_vm.switchEventEvents.length)?_c('div',{staticClass:\"text-center\"},[_c('b-spinner',{attrs:{\"label\":\"Loading...\"}})],1):_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('order_details_change_event_modal_event')}},[_c('b-form-select',{attrs:{\"options\":_vm.switchEventEvents,\"text-field\":\"name\",\"value-field\":\"id\"},on:{\"change\":_vm.switchEventChanged}})],1),(_vm.switchEventSelectedEvent)?_c('hr'):_vm._e(),(_vm.switchEventSelectedEvent)?_c('b-form-group',{attrs:{\"label\":_vm.$t('order_details_change_event_modal_pos')}},[_c('b-form-select',{attrs:{\"options\":_vm.switchEventSelectedEvent.points_of_sale,\"text-field\":\"name\",\"value-field\":\"id\",\"disabled\":_vm.switchEventSelectedEvent.points_of_sale.length === 1},on:{\"change\":_vm.setPosProducts},model:{value:(_vm.switchEventSelectedPos),callback:function ($$v) {_vm.switchEventSelectedPos=$$v},expression:\"switchEventSelectedPos\"}})],1):_vm._e(),(_vm.switchEventSelectedEvent)?_c('hr'):_vm._e(),(_vm.switchEventSelectedEvent && _vm.switchEventSelectedPos)?_c('span',[_vm._v(_vm._s(_vm.$t('order_details_change_event_modal_products_title')))]):_vm._e(),_vm._l((_vm.switchEventProducts),function(product){return _c('b-row',{key:product.currentProduct.id,staticClass:\"mt-3 change-order-event-modal-products\"},[_c('b-col',[_vm._v(\" \"+_vm._s((product.currentProduct.product_group_name !== 'event_default_group' ? (product.currentProduct.product_group_name + ' - ') : '') + product.currentProduct.name)+\" \")]),_c('b-col',[_c('b-form-group',[_c('b-form-select',{attrs:{\"options\":product.productsList},model:{value:(product.toProduct),callback:function ($$v) {_vm.$set(product, \"toProduct\", $$v)},expression:\"product.toProduct\"}})],1)],1)],1)}),(_vm.switchEventSelectedEvent)?_c('hr'):_vm._e(),(_vm.switchEventSelectedEvent)?_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.switchEventSendMails),callback:function ($$v) {_vm.switchEventSendMails=$$v},expression:\"switchEventSendMails\"}},[_vm._v(_vm._s(_vm.$t('order_detail_modal_send_mail')))])],1):_vm._e()],2)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-modal',{attrs:{\"title\":_vm.$t('order_detail_modal_refund_order_title', {order: _vm.order ? _vm.order.order_number : ''}),\"id\":\"refund-order\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{staticClass:\"px-4 px-md-5 SmallSize\",attrs:{\"disabled\":_vm.refundTotal <= 0 || (_vm.refundTotal + _vm.refundedTotal) > _vm.order.total || _vm.loading,\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.refundProducts()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('order_detail_refund_order'))+\" \")],1)]},proxy:true}])},[(_vm.order)?_c('div',[_c('b-row',{staticClass:\"mb-2\"},[_c('b-col',{staticClass:\"d-flex align-items-center blackColor mediamSize\",attrs:{\"cols\":\"8\"}},[_vm._v(_vm._s(_vm.$t('order_refund_choose_which_products_to_refund')))]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"4\"}},[_c('b-button',{staticClass:\"SmallSize selectAll px-3 px-md-4 py-1 text-white\",attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.selectAll(!_vm.isSelectAll)}}},[_vm._v(_vm._s(_vm.isSelectAll ? _vm.$t('unselect_all') : _vm.$t('select_all')))])],1)],1),_vm._l((_vm.groups),function(group){return _c('div',{key:group.name,staticClass:\"mt-1\"},[(group.name !== 'event_default_group')?_c('div',{staticClass:\"mt-2 mb-2 title blackColor\"},[_vm._v(_vm._s(group.name))]):_vm._e(),_c('div',{staticClass:\"px-2 px-md-3 SmallSize\"},_vm._l((group.products),function(product){return _c('b-row',{key:product.id,staticClass:\"mb-2\"},[_c('b-col',{attrs:{\"cols\":\"6\"}},[(product.refunded_at === null)?_c('b-form-checkbox',{on:{\"change\":function($event){return _vm.calculateRefundTotal()}},model:{value:(product.checked),callback:function ($$v) {_vm.$set(product, \"checked\", $$v)},expression:\"product.checked\"}},[_c('span',[_vm._v(_vm._s(product.product.name))])]):_c('span',{staticClass:\"pl-1 text-line-through\"},[_vm._v(_vm._s(product.product.name))])],1),_c('b-col',{attrs:{\"cols\":\"3\"}},[(product.ticket && product.ticket.customer)?_c('span',[(product.ticket.customer.first_name)?_c('span',{staticClass:\"mr-1\"},[_vm._v(_vm._s(product.ticket.customer.first_name))]):_vm._e(),(product.ticket.customer.last_name)?_c('span',{staticClass:\"mr-1\"},[_vm._v(_vm._s(product.ticket.customer.last_name))]):_vm._e()]):_vm._e()]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\"}},[(product.refunded_at === null)?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(product.price)))]):_c('span',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('order_status_refunded')))])])],1)}),1)])}),_c('b-row',{staticClass:\"mt-4 mb-2\"},[_c('b-col',[_c('div',{staticClass:\"SmallSize\"},[_c('b-form-checkbox',{on:{\"change\":_vm.calculateRefundTotal},model:{value:(_vm.includeFees),callback:function ($$v) {_vm.includeFees=$$v},expression:\"includeFees\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('order_refund_include_ticket_fees', {total: _vm.$options.filters.currency(_vm.totalFees)})))])])],1)]),_c('b-col',[(_vm.order.payment_fee)?_c('div',{staticClass:\"SmallSize\"},[(_vm.isPaymentFeesRefunded)?_c('span',{staticClass:\"pl-1 text-line-through mr-3\"},[_vm._v(_vm._s(_vm.$t('order_refund_include_payment_fees', {total: _vm.$options.filters.currency(_vm.order.payment_fee)})))]):_vm._e(),(_vm.isPaymentFeesRefunded)?_c('span',{staticClass:\"text-uppercase\"},[_vm._v(_vm._s(_vm.$t('order_status_refunded')))]):_vm._e(),(!_vm.isPaymentFeesRefunded)?_c('b-form-checkbox',{on:{\"change\":_vm.calculateRefundTotal},model:{value:(_vm.includePaymentFees),callback:function ($$v) {_vm.includePaymentFees=$$v},expression:\"includePaymentFees\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('order_refund_include_payment_fees', {total: _vm.$options.filters.currency(_vm.order.payment_fee)})))])]):_vm._e()],1):_vm._e()])],1),_c('b-row',{staticClass:\"mt-4 mb-0 mediamSize\"},[_c('b-col',{staticClass:\"blackColor\"},[_vm._v(_vm._s(_vm.$t('order_refund_total_amount'))+\" \"),_c('span',{staticClass:\"pl-3 blackColor\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.refundTotal)))])])],1),(_vm.refundTotal && ((_vm.refundTotal + _vm.refundedTotal) > _vm.order.total))?_c('b-row',{staticClass:\"mb-2 SmallSize\"},[_c('b-col',{staticClass:\"blackColor text-danger\"},[_vm._v(_vm._s(_vm.$t('order_refund_total_bigger_paid'))+\" (\"+_vm._s(_vm._f(\"currency\")(_vm.order.total))+\")\")])],1):_vm._e(),_c('b-row',[_c('b-col',{staticClass:\"SmallSize mt-4\"},[_c('b-form-group',[_c('b-checkbox',{staticClass:\"name-checkbox\",model:{value:(_vm.orderRefundSendMail),callback:function ($$v) {_vm.orderRefundSendMail=$$v},expression:\"orderRefundSendMail\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('order_detail_modal_send_mail')))])])],1)],1)],1)],2):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-modal :title=\"$t('order_detail_modal_refund_order_title', {order: order ? order.order_number : ''})\"\n id=\"refund-order\" size=\"lg\">\n <div v-if=\"order\">\n <!-- -->\n <b-row class=\"mb-2\">\n <b-col cols=\"8\" class=\"d-flex align-items-center blackColor mediamSize\">{{ $t('order_refund_choose_which_products_to_refund') }}</b-col>\n <b-col cols=\"4\" class=\"text-right\">\n <b-button @click=\"selectAll(!isSelectAll)\" class=\"SmallSize selectAll px-3 px-md-4 py-1 text-white\" variant=\"warning\">{{ isSelectAll ? $t('unselect_all') : $t('select_all')}}</b-button>\n </b-col>\n </b-row>\n <div v-for=\"group in groups\" :key=\"group.name\" class=\"mt-1\">\n <div class=\"mt-2 mb-2 title blackColor\" v-if=\"group.name !== 'event_default_group'\">{{ group.name }}</div>\n <div class=\"px-2 px-md-3 SmallSize\">\n <b-row v-for=\"product in group.products\" :key=\"product.id\" class=\"mb-2\">\n <b-col cols=\"6\">\n <b-form-checkbox v-if=\"product.refunded_at === null\" v-model=\"product.checked\" @change=\"calculateRefundTotal()\">\n <span>{{ product.product.name }}</span>\n </b-form-checkbox>\n <span v-else class=\"pl-1 text-line-through\">{{ product.product.name }}</span>\n </b-col>\n <b-col cols=\"3\">\n <span v-if=\"product.ticket && product.ticket.customer\">\n <span v-if=\"product.ticket.customer.first_name\" class=\"mr-1\">{{ product.ticket.customer.first_name }}</span>\n <span v-if=\"product.ticket.customer.last_name\" class=\"mr-1\">{{ product.ticket.customer.last_name }}</span>\n </span>\n </b-col>\n <b-col cols=\"3\" class=\"text-right\">\n <span v-if=\"product.refunded_at === null\">{{ product.price | currency }}</span>\n <span v-else class=\"text-uppercase\">{{ $t('order_status_refunded') }}</span>\n </b-col>\n </b-row>\n </div>\n </div>\n <b-row class=\"mt-4 mb-2 \">\n <b-col>\n <div class=\"SmallSize\">\n <b-form-checkbox v-model=\"includeFees\" @change=\"calculateRefundTotal\">\n <span>{{ $t('order_refund_include_ticket_fees', {total: $options.filters.currency(totalFees)}) }}</span>\n </b-form-checkbox>\n </div>\n </b-col>\n <b-col>\n <div v-if=\"order.payment_fee\" class=\"SmallSize\">\n <span v-if=\"isPaymentFeesRefunded\" class=\"pl-1 text-line-through mr-3\">{{ $t('order_refund_include_payment_fees', {total: $options.filters.currency(order.payment_fee)}) }}</span>\n <span v-if=\"isPaymentFeesRefunded\" class=\"text-uppercase\">{{ $t('order_status_refunded') }}</span>\n <b-form-checkbox v-if=\"!isPaymentFeesRefunded\" v-model=\"includePaymentFees\" @change=\"calculateRefundTotal\">\n <span>{{ $t('order_refund_include_payment_fees', {total: $options.filters.currency(order.payment_fee)}) }}</span>\n </b-form-checkbox>\n </div>\n </b-col>\n </b-row>\n <b-row class=\"mt-4 mb-0 mediamSize\">\n <b-col class=\"blackColor\">{{ $t('order_refund_total_amount') }} <span class=\"pl-3 blackColor\">{{ refundTotal | currency }}</span></b-col>\n </b-row>\n <b-row v-if=\"refundTotal && ((refundTotal + refundedTotal) > order.total)\" class=\"mb-2 SmallSize\">\n <b-col class=\"blackColor text-danger\">{{ $t('order_refund_total_bigger_paid') }} ({{ order.total | currency }})</b-col>\n </b-row>\n <b-row>\n <b-col class=\"SmallSize mt-4\">\n <b-form-group>\n <b-checkbox class=\"name-checkbox\" v-model=\"orderRefundSendMail\">\n <span>{{\n $t('order_detail_modal_send_mail')\n }}</span>\n </b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer>\n <!-- <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button> -->\n <b-button class=\"px-4 px-md-5 SmallSize\" @click=\"refundProducts()\"\n :disabled=\"refundTotal <= 0 || (refundTotal + refundedTotal) > order.total || loading\" variant=\"warning\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('order_detail_refund_order') }}\n </b-button>\n </template>\n </b-modal>\n</template>\n\n<script>\nimport {groupBy} from \"@/functions\";\nimport api from \"@/api\";\n\nexport default {\n name: \"OrderDetailsRefund\",\n props: ['order'],\n data() {\n return {\n orderRefundSendMail: true,\n groups: [],\n includeFees: false,\n includePaymentFees: false,\n refundTotal: 0,\n refundedTotal: 0,\n totalFees: 0,\n loading: false,\n isPaymentFeesRefunded: false,\n isSelectAll: false\n }\n },\n mounted() {\n this.loadOrder();\n },\n methods: {\n loadOrder() {\n if(this.order) {\n this.refundTotal = 0;\n this.refundedTotal = 0;\n this.totalFees = 0;\n this.orderRefundSendMail = true;\n this.includeFees = false;\n this.includePaymentFees = false;\n this.isPaymentFeesRefunded = false;\n this.isSelectAll = false;\n this.groups = [];\n if(this.order.point_of_sale.pos_product_groups.length) {\n this.groups = this.order.point_of_sale.pos_product_groups.filter(posGroup => posGroup.product_group).map(group => {\n return {\n name: group.product_group.name,\n products: this.order.order_products.filter(orderProduct => {\n return orderProduct.product.group_id === group.product_group_id;\n }).map(product => {\n return Object.assign(product, {checked: false});\n })\n };\n }).filter(group => group.products.length)\n }\n else {\n const groups = groupBy(this.order.order_products, (product) => {\n return product.product.product_group.name;\n });\n for (const group in groups) {\n const g = {\n name: group,\n products: []\n };\n for (const product of groups[group]) {\n g.products.push(Object.assign(product, {checked: false}));\n }\n this.groups.push(g);\n }\n }\n this.isPaymentFeesRefunded = this.order.refunds.filter(refund => refund.type === 'payment-fee').length\n const refunds = this.order.refunds.filter(r => r.type !== 'refund-fee');\n for(const refund of refunds) {\n this.refundedTotal+= refund.amount;\n }\n this.calculateRefundTotal();\n }\n },\n refundProducts() {\n const products = [];\n for (const group of this.groups) {\n for (const product of group.products) {\n if(product.checked && product.refunded_at === null) {\n products.push({\n order_product_id: product.id,\n price: product.price\n });\n }\n }\n }\n const body = {\n total: this.refundTotal,\n products,\n includeFees: this.includeFees,\n includePaymentFees: this.includePaymentFees,\n orderRefundSendMail: this.orderRefundSendMail\n }\n this.loading = true;\n api.order().refund(this.order.id, body).then(() => {\n this.$emit('refunded', true)\n this.$bvModal.hide('refund-order')\n this.loading = false;\n this.$store.commit('success', 'order_detail_order_refunded')\n this.loadOrder();\n }).catch(() => {\n this.$emit('refunded', true)\n this.loading = false;\n })\n },\n selectAll(status) {\n for (let i=0; i< this.groups.length;i++) {\n for(let j=0; j < this.groups[i].products.length; j++ ) {\n if(this.groups[i].products[j].refunded_at === null) {\n this.groups[i].products[j].checked = status;\n this.isSelectAll = status;\n }\n }\n }\n this.includeFees = status;\n if(!this.isPaymentFeesRefunded) {\n this.includePaymentFees = status;\n }\n this.$forceUpdate();\n this.calculateRefundTotal();\n },\n calculateRefundTotal() {\n this.calculateTotalFees();\n let total = 0;\n for (const group of this.groups) {\n for(const product of group.products) {\n if(product.checked && product.refunded_at === null) {\n total += product.price;\n }\n }\n }\n if(this.includeFees) {\n total += this.totalFees;\n }\n if(this.includePaymentFees) {\n total += this.order.payment_fee;\n }\n this.refundTotal = parseFloat(total.toFixed(2));\n },\n calculateTotalFees() {\n let total = 0;\n for (const group of this.groups) {\n for(const product of group.products) {\n if(product.checked && product.refunded_at === null) {\n total += product.service_fee;\n }\n }\n }\n\n this.totalFees = total;\n }\n },\n}\n</script>\n\n<style scoped>\n.text-line-through {\n text-decoration: line-through;\n}\n.title{\n background: rgb(231, 231, 231);\n padding: 10px ;\n border-radius: 2px;\n}\n.blackColor{\n color: rgb(32, 31, 31);\n font-weight: 500;\n}\n.linethrough{\n text-decoration: line-through;\n}\n</style>\n<style>\n\n#refund-order h5{\nfont-size: 20px;\n}\n.SmallSize{\n font-size: 15px;\n}\n@media (max-width:992px) {\n #refund-order h5{\nfont-size: 17px;\n}\n .mediamSize{\n font-size: 14px;\n }\n .SmallSize{\n font-size: 14px;\n}\n.custom-checkbox .custom-control-label::before{\n margin-top: -2px;\n}\n}\n@media (max-width:576px) {\n .selectAll{\n font-size: 13px;\n}\n .SmallSize{\n font-size: 12px;\n}\n}\n@media (max-width:300px) {\n #refund-order h5{\nfont-size: 15px;\n}\n .mediamSize{\n font-size: 12px;\n }\n .selectAll{\n font-size: 12px;\n padding:2px 5px !important;\n}\n .SmallSize{\n font-size: 10px;\n}\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderDetailsRefund.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderDetailsRefund.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderDetailsRefund.vue?vue&type=template&id=533cbaa4&scoped=true\"\nimport script from \"./OrderDetailsRefund.vue?vue&type=script&lang=js\"\nexport * from \"./OrderDetailsRefund.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderDetailsRefund.vue?vue&type=style&index=0&id=533cbaa4&prod&scoped=true&lang=css\"\nimport style1 from \"./OrderDetailsRefund.vue?vue&type=style&index=1&id=533cbaa4&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"533cbaa4\",\n null\n \n)\n\nexport default component.exports","<template>\n <div fluid v-if=\"order\" class=\"orderDetails\">\n <b-row v-if=\"order.is_cancelled\">\n <b-col>\n <b-alert :show=\"true\" variant=\"danger\">{{ $t('order_is_cancelled') }}</b-alert>\n </b-col>\n </b-row>\n\n <b-button\n v-if=\"$route.query.back\"\n variant=\"primary\"\n class=\"mb-4 text-white\"\n @click=\"$router.push({name: 'OrderOverview', query: getBackQuery()})\">\n <b-icon icon=\"chevron-left\" /> {{ $t('back') }}\n </b-button>\n\n <b-row>\n <b-col xl=\"4\" lg=\"6\" class=\"mb-3\">\n <b-card :title=\"$t('order_details')\">\n <b-card-text>\n <table class=\"order-details-table\">\n <tr>\n <td>{{ $t('order_number') }}</td>\n <td>{{ order.order_number }}</td>\n </tr>\n <tr>\n <td>{{ $t('order_created_at') }}</td>\n <td>{{ order.created_at | date_time }}</td>\n </tr>\n <tr>\n <td>{{ $t('order_is_paid') }}</td>\n <td>\n <b-badge :variant=\"order.is_paid ? 'success' : 'danger'\" v-if=\"!isRefunded\">\n {{ order.is_paid ? $t('order_paid') : $t('order_not_paid') }}\n </b-badge>\n <b-badge variant=\"warning\" v-else>\n {{ $t('order_is_refunded') }}\n </b-badge>\n </td>\n </tr>\n <tr>\n <td>{{ $t('order_detail_payment_method') }}</td>\n <td>{{\n order.pos_payment_method ? order.pos_payment_method.payment_method.name : $t('order_no_payment_method')\n }}\n </td>\n </tr>\n <tr>\n <td>{{ $t('order_event') }}</td>\n <td>{{ order.event.name }}</td>\n </tr>\n <tr>\n <td>{{ $t('order_total') }}</td>\n <td>{{ order.total | currency }}</td>\n </tr>\n <tr v-if=\"order.discountcode\">\n <td>{{ $t('order_discountcode') }}</td>\n <td>{{ order.discountcode.code }} ( <span v-if=\"order.discountcode.type == 'value'\">€</span>{{ order.discountcode.amount }}<span v-if=\"order.discountcode.type == 'percentage'\">%</span> )</td>\n </tr>\n <tr v-if=\"order.discount\">\n <td>{{ $t('order_discount') }}</td>\n <td>{{ order.discount | currency }}</td>\n </tr>\n <tr v-if=\"order.timeslot_id\">\n <td>{{ $t('order_timeslot') }}</td>\n <td>{{ order.timeslot.starts_at | date_time }} - {{order.timeslot.ends_at | date_time }}</td>\n </tr>\n <tr>\n <td>{{ $t('order_type') }}</td>\n <td>\n <span v-if=\"order.order_type === 'box-office'\">\n {{ $t('order_overview_box_office') }}\n </span>\n <span v-else-if=\"order.order_type === 'api'\">\n {{ $t('order_overview_api_order') }}\n </span>\n <span v-else-if=\"order.order_type === 'free-order'\">\n {{ $t('order_overview_free_tickets') }}\n </span>\n <span v-else-if=\"order.order_type === 'manual-order'\">\n {{ $t('order_overview_manual_orders') }}\n </span>\n <span v-else-if=\"order.order_type === 'batch-ticket'\">\n {{ $t('order_overview_batch_ticket') }}\n </span>\n <span v-else-if=\"order.order_type === 'payment-link'\">\n {{ $t('order_overview_payment_link') }}\n </span>\n <span v-else>\n {{ $t('order_overview_online') }}\n </span>\n </td>\n </tr>\n <tr v-if=\"order.campaign\">\n <td>{{ $t('campaign') }}</td>\n <td>{{ order.campaign.name }}</td>\n </tr>\n </table>\n </b-card-text>\n </b-card>\n </b-col>\n <b-col xl=\"4\" lg=\"6\" class=\"mb-3\">\n <b-card>\n <b-card-title>\n <b-row class=\"align-items-center\">\n <b-col class=\"text-white\">{{ $t('order_customer_details') }}</b-col>\n <b-col v-if=\"$can('order_detail_change_customer_details')\" class=\"text-right\">\n <button v-if=\"order.customer\" @click=\"showEditCustomerModal\" type=\"button\" class=\"btn btn-primary btn-sm py-0\" style=\"font-size: 13px;\">{{ $t('order_details_edit_customer_data') }}</button>\n </b-col>\n </b-row>\n </b-card-title>\n <b-card-text>\n <table class=\"order-details-table\" v-if=\"order.customer\">\n <tr>\n <td>{{ $t('customer_full_name') }}</td>\n <td>{{ order.customer.first_name }} {{ order.customer.last_name }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_address') }}</td>\n <td>{{ order.customer.addresses[0] ? (order.customer.addresses[0].address ? order.customer.addresses[0].address : '') + ' ' + (order.customer.addresses[0].house_nr ? order.customer.addresses[0].house_nr : '') : '' }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_zip') }}</td>\n <td>{{ order.customer.addresses[0] ? order.customer.addresses[0].zip : '' }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_city') }}</td>\n <td>{{ order.customer.addresses[0] ? order.customer.addresses[0].city : '' }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_phone') }}</td>\n <td>{{ order.customer.phone }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_email') }}</td>\n <td>{{ order.customer.email }}</td>\n </tr>\n <tr>\n <td>{{ $t('customer_dob') }}</td>\n <td>{{ getDate(order.customer.dob) }}</td>\n </tr>\n </table>\n </b-card-text>\n </b-card>\n </b-col>\n <b-col xl=\"4\" lg=\"12\" class=\"mb-3 \">\n <b-card :title=\"$t('order_actions')\" class=\"pb-3\">\n <b-card-text>\n <b-form-group v-if=\"$can('order_cancel')\" class=\"order-action\">\n <b-button :disabled=\"order.is_cancelled\" @click=\"showCancelOrderModal()\" variant=\"link\">{{ $t('order_cancel') }}</b-button>\n </b-form-group>\n <b-form-group v-if=\"$can('order_refund')\" class=\"order-action\">\n <b-button :disabled=\"order.payment_status !== 'paid' || order.order_type === 'free-order'\" @click=\"showRefundOrderModal()\" variant=\"link\">{{ $t('order_refund') }}</b-button>\n </b-form-group>\n <b-form-group v-if=\"$can('order_order_confirmation')\" class=\"order-action\">\n <b-button @click=\"showResentTicketsModal()\" variant=\"link\">{{ $t('order_resend_confirmation') }}</b-button>\n </b-form-group>\n <b-form-group v-if=\"$can('order_detail_change_event')\" class=\"order-action\">\n <b-button @click=\"showChangeOrderEventModal()\" variant=\"link\">{{ $t('order_details_change_order_event') }}</b-button>\n </b-form-group>\n <b-form-group class=\"order-action\" v-if=\"order.point_of_sale.status !== 'box-office'\">\n <b-button :href=\"getOrderStatusPageUrl(order.id, order.secret)\" target=\"_blank\" variant=\"link\">{{ $t('order_open_customer_status') }}</b-button>\n </b-form-group>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n <hr class=\"my-4 mb-5\">\n <b-row>\n <b-col class=\"mb-3\">\n <b-card :title=\"$t('order_products')\" class=\"order_products\">\n <b-card-text class=\"tableBig\">\n <b-table :items=\"order.order_products\" :fields=\"['status', 'claimed', 'product', 'price', 'email', 'actions']\"\n class=\"table-container productTable\" thead-class=\"d-none\">\n <template v-slot:cell(status)=\"{item}\">\n {{ item.url }}\n <b-badge variant=\"success\" v-if=\"!item.product.create_eticket\">{{ $t('product_successfully_ordered') }}</b-badge>\n <b-badge variant=\"info\" v-else-if=\"order.point_of_sale.status === 'box-office'\">{{ $t('product_successfully_ordered') }}</b-badge>\n <b-badge variant=\"danger\" v-else-if=\"!item.ticket\">{{ $t('ticket_not_found') }}</b-badge>\n <b-badge variant=\"danger\" v-else-if=\"item.refunded_at === null && item.ticket.status == 'cancelled'\">{{ $t('ticket_cancelled') }}</b-badge>\n <b-badge variant=\"warning\" v-else-if=\"item.refunded_at !== null && item.ticket.status == 'cancelled'\">{{ $t('order_status_refunded') }}</b-badge>\n <b-badge variant=\"warning\" v-else-if=\"!item.ticket.url\">{{ $t('ticket_not_generated') }}</b-badge>\n <b-badge variant=\"success\" v-else-if=\"item.ticket.scanned\">{{ $t('ticked_scanned') }}</b-badge>\n <b-badge variant=\"info\" v-else-if=\"item.ticket.url\">{{ $t('ticket_generated') }}</b-badge>\n \n </template>\n <template v-slot:cell(claimed)=\"{item}\">\n <div v-if=\"item.ticket\">\n <div v-if=\"item.ticket.status == 'cancelled'\">{{ item.refunded_at === null ? $t('ticket_cancelled') : $t('order_status_refunded') }}</div>\n <div v-else-if=\"item.ticket.claimed_at\"><b-icon icon=\"check-circle-fill\" variant=\"success\"></b-icon> {{ $t('ticket_claimed_at') }} {{ item.ticket.claimed_at | date_time }}</div>\n <div v-else>\n <b-icon icon=\"circle\"></b-icon> {{ $t('ticket_not_claimed') }}\n <div v-if=\"item.ticket.reminded_at\">{{ $t('ticket_reminded_at') }} {{ item.ticket.reminded_at | date_time }}</div>\n <div v-if=\"item.ticket.invited_at\">{{ $t('ticket_invited_at') }} {{ item.ticket.invited_at | date_time }}</div>\n </div>\n\n <div v-if=\"item.ticket && item.ticket.claimed_at != null\">\n <div v-if=\"item.ticket.logs && isScanned(item)\">\n <b-icon icon=\"check-circle-fill\" variant=\"success\"></b-icon>\n {{ $t('order_ticket_scanned_at') }}\n <span v-html=\"getScanLogs(item)\"></span>\n </div>\n <div v-else>\n <b-icon icon=\"circle\"></b-icon> {{ $t('order_ticket_not_yet_scanned') }}\n </div>\n\n </div>\n </div>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n \n <template v-if=\"order.is_paid && item.product.create_eticket && order.point_of_sale.status !== 'box-office'\" >\n <span v-if=\"item.refunded_at\">{{ item.refunded_at | date_time }}</span>\n <div v-if=\"order.event.status === 'archived'\" class=\"product-row-button-container\">\n <b-btn variant=\"info\" target=\"_blank\" :href=\"item.ticket.url\" v-if=\"item.ticket.url && item.ticket.status == 'active'\">\n {{ $t('ticket_view') }}\n </b-btn>\n </div>\n <div v-else class=\"product-row-button-container\">\n <b-btn variant=\"primary\" @click=\"generateTicket(item)\" v-if=\"!item.ticket && $can('order_detail_generate_ticket')\">\n {{ $t('ticket_generate') }}\n </b-btn>\n <b-btn variant=\"primary\" @click=\"generateTicket(item)\" v-else-if=\"!item.ticket.url && item.ticket.status == 'active' && $can('order_detail_generate_ticket')\">\n {{ $t('ticket_generate') }}\n </b-btn>\n <b-btn variant=\"info\" target=\"_blank\" :href=\"item.ticket.url\" v-else-if=\"item.ticket.url && item.ticket.status == 'active'\">\n {{ $t('ticket_view') }}\n </b-btn>\n <b-button variant=\"info\" v-if=\"$can('order_detail_product_change_owner') && item.ticket && !item.ticket.scanned && item.ticket.status == 'active'\" :href=\"'https://' + order.company.domain + '/ticket/' + item.ticket.id + '/' + item.ticket.secret + '/claim?change=1'\" target=\"_blank\">\n {{ $t('ticket_change_owner') }}\n </b-button>\n <b-btn variant=\"danger\" @click=\"cancelTicket(item.ticket)\" v-if=\"item.ticket && item.ticket.status == 'active' && $can('order_detail_product_cancel')\">\n {{ $t('ticket_cancel') }}\n </b-btn>\n </div>\n </template>\n </template>\n <template v-slot:cell(product)=\"{item}\">\n <span v-if=\"item.product.product_group.name !== 'event_default_group'\">{{ item.product.product_group.name }}<br></span>\n {{ item.product.name }}\n </template>\n <template v-slot:cell(price)=\"{item}\">\n {{ item.price | currency }}\n </template>\n <template v-slot:cell(email)=\"{item}\">\n <div v-if=\"item.ticket && order.point_of_sale.status !== 'box-office'\">\n <div v-if=\"item.ticket.customer\">\n {{ item.ticket.customer.first_name }} {{ item.ticket.customer.last_name }}\n <br v-if=\"(item.ticket.customer.first_name || item.ticket.customer.last_name) && item.ticket.customer.email\" />\n {{ item.ticket.customer.email }}\n </div>\n <b-badge v-else variant=\"danger\">{{ $t('ticket_customer_not_set') }}</b-badge>\n </div>\n </template>\n </b-table>\n </b-card-text>\n </b-card>\n\n <b-card class=\"mt-4 mb-3\" :title=\"$t('order_customer_answers')\" v-if=\"Object.keys(specificQuestions).length > 0\">\n <b-card-text>\n <div v-for=\"(specificQuestion, i) in specificQuestions\" :key=\"'specificQuestion-' + i\" class=\"specific-question-row\">\n <strong>{{ i }}</strong>\n <div v-for=\"(specificAnswer, a) in specificQuestion\" :key=\"'specificAnswer' + a\">\n {{ specificAnswer.amount }}x {{ specificAnswer.answer }}\n </div>\n </div>\n </b-card-text>\n </b-card>\n\n </b-col>\n <b-col xl=\"4\" class=\"tableBig mb-3\">\n <b-table v-if=\"$can('order_detail_payment_history_view')\" :items=\"payment_logs\"\n :fields=\"[{key: 'created_at', label: $t('order_payment_created_at')}, {key: 'type', label: $t('order_payment_status')}, {key: 'context', label: $t('order_payment_amount')} ]\">\n <template v-slot:cell(created_at)=\"{item}\">\n {{ item.created_at | date_time }}\n </template>\n <template v-slot:cell(type)=\"{item}\">\n <b-badge :variant=\"item.type\">{{ $t(item.message) }}</b-badge>\n </template>\n <template v-slot:cell(context)=\"{item}\">\n {{ item.context.payment_method }} {{ item.context.payment_method ? ' - ' : '' }} {{ item.context.amount | currency }}\n </template>\n </b-table>\n <b-table v-if=\"$can('order_detail_notes_view')\" :items=\"order.notes\" class=\"table-container tableEdit \" :fields=\"[{key: 'message', label: $t('order_notes')}]\">\n <template v-slot:cell(message)=\"{item}\">\n {{ item.message }}<br>\n <span class=\"small\">{{ item.user.name }} @ {{ item.created_at | date_time }}</span>\n </template>\n </b-table>\n <b-card v-if=\"$can('order_detail_notes_create')\" :title=\"$t('order_create_note')\">\n <b-card-text>\n <b-form-group>\n <b-textarea :disabled=\"addingNote\" v-model=\"message\"></b-textarea>\n </b-form-group>\n <b-form-group class=\"mt-3\">\n <b-btn variant=\"primary\" class=\"px-4\" :disabled=\"addingNote\" @click=\"addNote()\">{{ $t('create') }}</b-btn>\n </b-form-group>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n <b-row v-if=\"$can('order_detail_log_view')\">\n <b-col class=\"mb-3\">\n <b-card :title=\"$t('order_log')\" class=\"mt-4\">\n <b-card-text class=\"inner\">\n <b-row class=\"mb-3\" v-for=\"log in logs\" :key=\"`log` + log.id\">\n <b-col cols=\"12\" md=\"4\">\n <b-badge :variant=\"log.type\">{{ $t(log.message) }}</b-badge>\n </b-col>\n <b-col>{{ log.created_at | date_time }}</b-col>\n <b-col class=\"text-right\">\n <b-btn @click=\"showAuditDetails(log)\">{{ $t('audit_show_context') }}</b-btn>\n </b-col>\n </b-row>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n <b-modal id=\"audit-log\" size=\"lg\" >\n <div v-if=\"auditLog\" >\n <div v-if=\"auditLog.context.email\" >\n <h5>{{ $t('email_content') }}</h5>\n <div class=\"popUp\">\n <div v-html=\"auditLog.context.email\" ></div>\n </div>\n </div>\n <div v-if=\"auditLog.context.amount\">\n <h5>{{ $t('amount') }}</h5>\n {{ auditLog.context.amount | currency }}\n </div>\n <div v-if=\"auditLog.context.payment_method\">\n <h5>{{ $t('payment_method') }}</h5>\n {{ auditLog.context.payment_method }}\n </div>\n </div>\n </b-modal>\n <b-modal :title=\"$t('order_detail_modal_cancel_order_title', {order: order ? order.order_number : ''})\" id=\"cancel-order\" size=\"lg\" >\n <div v-if=\"order\" >\n <b-row>\n <b-col>{{ $t('order_detail_cancel_order_confirmation') }}</b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-checkbox class=\"name-checkbox\" v-model=\"order_cancel_send_mail\">{{ $t('order_detail_modal_send_mail') }}</b-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"cancelOrder()\" variant=\"success\">{{ $t('order_detail_cancel_order') }}</b-button>\n </template>\n </b-modal>\n\n <order-details-refund\n ref=\"refundModal\"\n v-if=\"order\"\n :order=\"order\"\n @refunded=\"loadOrder\">\n </order-details-refund>\n\n <b-modal :title=\"$t('order_detail_modal_resent_tickets_title', {order: order ? order.order_number : ''})\" id=\"resent-tickets\" size=\"lg\">\n <div v-if=\"order\">\n <b-row>\n <b-col>{{ $t('order_detail_resent_tickets_confirmation') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"resentTickets()\" variant=\"success\">{{ $t('order_detail_resent_confirmation_tickets') }}</b-button>\n </template>\n </b-modal>\n <b-modal id=\"edit-customer\" @hide=\"editCustomer = {}\" @close=\"editCustomer = {}\" :title=\"$t('order_details_edit_customer_data')\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('first_name')\">\n <b-form-input v-model=\"editCustomer.first_name\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('last_name')\">\n <b-form-input v-model=\"editCustomer.last_name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('customer_address')\">\n <b-form-input v-model=\"editCustomer.address\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('customer_house_nr')\">\n <b-form-input v-model=\"editCustomer.house_nr\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('customer_zip')\">\n <b-form-input v-model=\"editCustomer.zip\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('customer_city')\">\n <b-form-input v-model=\"editCustomer.city\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('customer_country')\">\n <b-form-select text-field=\"label\" value-field=\"id\" :options=\"countries\"\n v-model=\"editCustomer.country\">\n </b-form-select>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('customer_phone')\">\n <b-form-input v-model=\"editCustomer.phone\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group>\n <b-form-checkbox :disabled=\" editCustomer.optin ? false : true \" v-model=\"editCustomer.optin\">{{ $t('customer_optin') }}\n </b-form-checkbox>\n </b-form-group>\n <b-form-group :label=\"$t('customer_email')\">\n <b-form-input v-model=\"editCustomer.email\"></b-form-input>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('customer_gender')\">\n <b-form-radio-group :options=\"genders\" v-model=\"editCustomer.gender\">\n </b-form-radio-group>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('customer_dob')\">\n <date-picker v-model=\"editCustomer.dob\"></date-picker>\n </b-form-group>\n </b-col>\n </b-row>\n <template #modal-footer>\n <b-button @click=\"updateCustomer\" :disabled=\"loading\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('order_details_change_order_event')\" id=\"change-order-event-modal\" size=\"lg\">\n <div v-if=\"switchEventLoading && !switchEventEvents.length\" class=\"text-center\">\n <b-spinner label=\"Loading...\"></b-spinner>\n </div>\n <div v-else>\n <b-form-group :label=\"$t('order_details_change_event_modal_event')\">\n <b-form-select :options=\"switchEventEvents\" @change=\"switchEventChanged\" text-field=\"name\" value-field=\"id\"></b-form-select>\n </b-form-group>\n <hr v-if=\"switchEventSelectedEvent\">\n <b-form-group v-if=\"switchEventSelectedEvent\" :label=\"$t('order_details_change_event_modal_pos')\">\n <b-form-select v-model=\"switchEventSelectedPos\" :options=\"switchEventSelectedEvent.points_of_sale\" @change=\"setPosProducts\" text-field=\"name\" value-field=\"id\" :disabled=\"switchEventSelectedEvent.points_of_sale.length === 1\"></b-form-select>\n </b-form-group>\n <hr v-if=\"switchEventSelectedEvent\">\n <span v-if=\"switchEventSelectedEvent && switchEventSelectedPos\">{{ $t('order_details_change_event_modal_products_title') }}</span>\n <b-row v-for=\"product in switchEventProducts\" :key=\"product.currentProduct.id\" class=\"mt-3 change-order-event-modal-products\">\n <b-col>\n {{ (product.currentProduct.product_group_name !== 'event_default_group' ? (product.currentProduct.product_group_name + ' - ') : '') + product.currentProduct.name }}\n </b-col>\n <b-col>\n <b-form-group>\n <b-form-select v-model=\"product.toProduct\" :options=\"product.productsList\"></b-form-select>\n </b-form-group>\n </b-col>\n </b-row>\n <hr v-if=\"switchEventSelectedEvent\">\n <b-form-group v-if=\"switchEventSelectedEvent\">\n <b-form-checkbox v-model=\"switchEventSendMails\">{{ $t('order_detail_modal_send_mail') }}</b-form-checkbox>\n </b-form-group>\n </div>\n <template #modal-footer>\n <b-button :disabled=\"isSwitchEventModalDisabled\" @click=\"saveSwitchOrderEvent\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DatePicker from \"@/components/DatePicker\";\nimport moment from \"moment\";\nimport OrderDetailsRefund from '@/components/OrderDetailsRefund'\nimport {deepClone, groupBy, getOrderStatusPageUrl} from \"@/functions\";\nimport { mapMutations } from 'vuex';\n\nexport default {\n methods: {\n getOrderStatusPageUrl() {\n return getOrderStatusPageUrl(this.order.id, this.order.secret);\n },\n showAuditDetails(auditLog) {\n this.auditLog = auditLog\n this.$bvModal.show('audit-log')\n },\n generateTicket(item) {\n api.ticket().generate(item.id).then(() => {\n this.$store.dispatch('success', 'ticket_generation_queued')\n this.loadOrder()\n })\n },\n cancelTicket(item){\n api.ticket().cancel(item.id).then(() => {\n this.$store.dispatch('success', 'order_detail_ticket_cancelled')\n this.loadOrder()\n })\n },\n addNote() {\n this.addingNote = true\n api.order().addNote(this.order.id, this.message).then((note) => {\n this.addingNote = false\n this.message = ''\n if (!this.order.notes) {\n this.order.notes = []\n }\n this.order.notes.push(note)\n })\n },\n showCancelOrderModal(){\n this.$bvModal.show('cancel-order')\n },\n cancelOrder() {\n let body = {sendMail: this.order_cancel_send_mail};\n api.order().cancel(this.order.id, body).then(() => {\n this.loadOrder()\n this.$bvModal.hide('cancel-order')\n this.$store.commit('success', 'order_detail_order_cancelled')\n })\n },\n showResentTicketsModal(){\n this.$bvModal.show('resent-tickets')\n },\n resentTickets() {\n api.order().resentConfirmation(this.order.id).then(() => {\n this.loadOrder()\n this.$bvModal.hide('resent-tickets')\n this.$store.commit('success', 'ticket_confirmation_resent')\n })\n },\n showRefundOrderModal(){\n this.$refs.refundModal.loadOrder();\n this.$bvModal.show('refund-order')\n },\n loadOrder(){\n api.order().details(this.$route.params.order_number).then((order) => {\n this.order = order\n\n this.isRefunded = this.order.order_products.filter(product => product.refunded_at === null).length === 0\n\n if(order.customer_answers){\n order.customer_answers.forEach(answer => {\n if (answer.customer_information){\n this.specificQuestions[answer.customer_information.question] = this.specificQuestions[answer.customer_information.question] || [];\n \n let found = this.specificQuestions[answer.customer_information.question].some(el => el.answer === answer.answer);\n if(!found){\n this.specificQuestions[answer.customer_information.question].push({'answer': answer.answer, 'amount': 1})\n } else {\n let index = this.specificQuestions[answer.customer_information.question].findIndex((el => el.answer === answer.answer));\n this.specificQuestions[answer.customer_information.question][index].amount = 1 + this.specificQuestions[answer.customer_information.question][index].amount\n }\n }\n })\n } else {\n this.specificQuestions = null\n }\n\n api.audit().get('order', this.order.id).then((logs) => {\n this.payment_logs = logs.filter((log) => {\n return log.message.includes('payment_') && !log.message.includes('payment_link')\n })\n\n const refunds = groupBy(this.order.refunds.filter(r => r.type !== 'refund-fee'), (refund) => {\n return moment(refund.datetime).format('YYYY-MM-DD HH:mm:ss')\n });\n\n for(const date in refunds) {\n let amount = 0;\n for(const refund of refunds[date]) {\n amount += refund.amount;\n }\n if(amount) {\n this.payment_logs.push({\n created_at: date,\n type: 'danger',\n message: this.$t('order_detail_refund_order'),\n context: {\n amount: amount,\n payment_method: null\n }\n });\n }\n }\n this.logs = logs.filter((log) => {\n return !log.message.includes('payment_') || log.message.includes('payment_link')\n })\n })\n })\n },\n getScanLogs(item) {\n const logs = item.ticket.logs.filter(l => l.succeeded);\n\n if(logs.length === 1) {\n return moment(logs[0].timestamp).format('DD-MM-YYYY HH:mm:ss');\n }\n let txt = '';\n logs.forEach(log => {\n if(txt !== ''){\n txt += '<br/>'\n }\n txt += moment(log.timestamp).format('DD-MM-YYYY HH:mm:ss');\n })\n\n return txt;\n },\n isScanned(item) {\n return item.ticket.logs.filter(l => l.succeeded).length;\n },\n showEditCustomerModal() {\n this.editCustomer = JSON.parse(JSON.stringify(this.order.customer));\n if(this.order.customer.addresses.length && this.order.customer.addresses[0]) {\n this.editCustomer.address_id = this.order.customer.addresses[0].id;\n this.editCustomer.address = this.order.customer.addresses[0].address;\n this.editCustomer.house_nr = this.order.customer.addresses[0].house_nr;\n this.editCustomer.zip = this.order.customer.addresses[0].zip;\n this.editCustomer.city = this.order.customer.addresses[0].city;\n this.editCustomer.country = this.order.customer.addresses[0].country;\n }\n else {\n this.editCustomer.address = null;\n this.editCustomer.zip = null;\n this.editCustomer.city = null;\n }\n\n this.$bvModal.show('edit-customer')\n },\n updateCustomer() {\n this.loading = true;\n api.order().updateCustomer(this.editCustomer).then(()=>{\n this.loadOrder()\n this.loading = false;\n this.$bvModal.hide('edit-customer')\n this.$store.commit('success', 'order_details_edit_customer_success_message')\n this.editCustomer = {}\n }).catch(() => {\n this.loading = false;\n })\n },\n getDate(date) {\n if(!date) {\n return '';\n }\n return moment(date).format('YYYY-MM-DD')\n },\n showChangeOrderEventModal() {\n this.switchEventEvents = [];\n this.switchEventLoading = false;\n this.switchEventSelectedEvent = null;\n this.switchEventSelectedPos = null;\n this.switchEventProducts = [];\n this.switchEventSendMails = true;\n this.$bvModal.show('change-order-event-modal');\n this.switchEventLoading = true;\n api.event().getLiveEventsWithProducts(this.order.company_id).then(events => {\n this.switchEventEvents = events.filter(event => {\n return event.id !== this.order.event_id\n });\n this.switchEventLoading = false;\n })\n },\n switchEventChanged(event) {\n const selectedEvent = deepClone(this.switchEventEvents.find(e => e.id === parseInt(event)));\n this.switchEventSelectedEvent = selectedEvent;\n if (selectedEvent.points_of_sale.length === 1) {\n this.switchEventSelectedPos = selectedEvent.points_of_sale[0].id;\n this.setPosProducts(selectedEvent.points_of_sale[0].id);\n }\n },\n setPosProducts(posId) {\n const pos = deepClone(this.switchEventSelectedEvent.points_of_sale.find(p => p.id === parseInt(posId)));\n let products = [];\n for (const group of pos.groups) {\n products = products.concat(pos.products.filter(p => p.product.group_id === group.id));\n }\n this.switchEventProducts = deepClone(this.order.order_products).map(orderProduct => {\n return {\n id: orderProduct.product.id,\n currentProduct: {\n id: orderProduct.product.id,\n name: orderProduct.product.name,\n product_group_name: orderProduct.product.product_group.name,\n },\n // orderProductId: orderProduct.id,\n toProduct: null,\n productsList: products.map(p => {\n return {\n text: (p.product.product_group.name !== 'event_default_group' ? (p.product.product_group.name + ' - ') : '') + p.product.name,\n value: p.product.id,\n disabled: p.product.price !== orderProduct.price\n }\n })\n }\n }).filter((v, i, a) => {\n return a.findIndex(l => l.id === v.id) === i\n });\n },\n saveSwitchOrderEvent() {\n this.switchEventLoading = true;\n\n const products = deepClone(this.order.order_products).map(orderProduct => {\n const product = this.switchEventProducts.find(p => p.id === orderProduct.product.id)\n return Object.assign(deepClone(product), {orderProductId: orderProduct.id})\n })\n\n api.order().switchEvent(this.order.id, {\n event_to: this.switchEventSelectedEvent.id,\n products: products,\n pos: this.switchEventSelectedPos,\n send_mail: this.switchEventSendMails\n }).then(() => {\n this.switchEventLoading = false;\n this.switchEventSelectedEvent = null;\n this.switchEventSelectedPos = null;\n this.switchEventProducts = [];\n this.$store.commit('success', this.$t('order_details_event_changed_message'));\n this.$bvModal.hide('change-order-event-modal')\n this.loadOrder();\n }).catch(() => {\n this.switchEventLoading = false;\n })\n },\n getBackQuery() {\n console.log('this.$route.query.back', this.$route.query.back)\n try {\n const url = JSON.parse(this.$route.query.back)\n console.log(url);\n return url;\n }\n catch {\n return {};\n }\n },\n ...mapMutations(['setOrderOverviewQuery'])\n },\n data() {\n return {\n order: null,\n message: '',\n addingNote: false,\n logs: [],\n auditLog: null,\n payment_logs: [],\n order_cancel_send_mail: false,\n order_refund_send_mail: false,\n specificQuestions: {},\n editCustomer: {},\n loading: false,\n countries: [\n {id: 'DE', label: this.$t('country_de')},\n {id: 'NL', label: this.$t('country_nl')},\n {id: 'ES', label: this.$t('country_es')},\n {id: 'BE', label: this.$t('country_be')},\n ],\n genders: [\n {value: 'm', text: this.$t('customer_gender_male')},\n {value: 'f', text: this.$t('customer_gender_female')},\n {value: 'o', text: this.$t('customer_gender_other')}\n ],\n isRefunded: false,\n switchEventEvents: [],\n switchEventLoading: false,\n switchEventSelectedEvent: null,\n switchEventSelectedPos: null,\n switchEventProducts: [],\n switchEventSendMails: true,\n }\n },\n created() {\n document.title = this.$t('backend_title_order_detail', {order_number: this.$route.params.order_number})\n if(this.$store.state.user) {\n if(!this.$can('order_detail_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.loadOrder()\n },\n components: {\n DatePicker,\n OrderDetailsRefund\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('order_detail_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n },\n computed: {\n isSwitchEventModalDisabled() {\n return (this.switchEventLoading && this.switchEventEvents.length) ||\n (this.switchEventProducts.length && this.switchEventProducts.some(p => p.toProduct === null))\n }\n },\n beforeDestroy () {\n this.setOrderOverviewQuery(null)\n }\n}\n</script>\n<style lang=\"scss\" scoped>\n.order-details-table {\n width: 100%;\n}\ntable.b-table tbody tr td:first-of-type{\n padding-left: 10px!important;\n}\n\n.order-details-table > tr > td:first-child {\n font-weight: bold;\n}\n.order-details-table > tr > td:last-child {\n font-size: 16px;\n}\n.order-details-table td {\n padding: 3px;\n}\n.specific-question-row{\n margin-bottom:20px\n}\n.specific-question-row:last-of-type{\n margin-bottom:0\n}\n.product-row-button-container{\n display:flex;\n flex-direction: column;\n}\n.product-row-button-container .btn{\n width:100%;\n height:25px;\n padding:3px 4px;\n margin-bottom:5px;\n font-size:14px\n}\n.btn-link{\n font-size: 16px;\n}\n\n.form-group{\n margin-bottom: 5px;\n}\n.card-title{\n padding: 15px 12px;\n}\n.productTable{\n font-size: 16px;\n}\n \n@media screen and (max-width: 992px) {\n .card-title{\n margin-bottom: 0px;\n}\n.orderDetails .order_products{\n background-color: #F5F5F5!important;\n}\n.orderDetails .order_products .table{\n margin-bottom: 0px;\n}\n.orderDetails .order_products .card-text{\n padding: 0px;\n}\n.orderDetails .order_products .tableBig .table tr{\n margin: 5px 0;\n border-radius: 0px!important;\n}\n}\n</style>\n<style>\n\n.orderDetails table.b-table tbody tr td:first-child,.orderDetails table.b-table thead tr th:first-child{\n padding-left: 13px;\n}\n.orderDetails .productTable td{\n padding-right: 7px;\n padding-left: 7px;\n}\n@media screen and (max-width: 992px) {\n.orderDetails .order_products .tableBig .table tr{\n margin: 0px ;\n border-radius: 0px;\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n}\n}\n@media (max-width: 1000px){\n .product-row-button-container .btn{\n max-width: 250px;\n margin: auto;\n }\n.orderDetails .tableBig .table tr {\n border: 1px solid #ddd;\n margin: 0px 0 1px;\n border-radius: 0px;\n border-bottom-left-radius: 5px;\n border-bottom-right-radius: 5px;\n}\n.orderDetails table.b-table thead {\n border-radius: 0px!important;\n border-bottom-left-radius: 5px!important;\n border-bottom-right-radius: 5px!important;\n}\n}\n\n.change-order-event-modal-products option:disabled {\n text-decoration: line-through !important;\n color: #dadada;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderDetails.vue?vue&type=template&id=3b1430da&scoped=true\"\nimport script from \"./OrderDetails.vue?vue&type=script&lang=js\"\nexport * from \"./OrderDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderDetails.vue?vue&type=style&index=0&id=3b1430da&prod&lang=scss&scoped=true\"\nimport style1 from \"./OrderDetails.vue?vue&type=style&index=1&id=3b1430da&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3b1430da\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(!_vm.scanners || !_vm.entrances)?_c('b-spinner'):_c('b-col',[_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.add-scanner\",modifiers:{\"add-scanner\":true}}],attrs:{\"variant\":\"new\"}},[_vm._v(_vm._s(_vm.$t('new')))])],1),_c('b-modal',{attrs:{\"id\":\"add-scanner\",\"title\":_vm.$t('scanner_add_modal_title')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('p',[_vm._v(_vm._s(_vm.$t('scanner_create_hint')))]),_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createScanner()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_name')}},[_c('b-form-input',{model:{value:(_vm.scanner.name),callback:function ($$v) {_vm.$set(_vm.scanner, \"name\", $$v)},expression:\"scanner.name\"}})],1)],1),_c('b-table',{attrs:{\"items\":_vm.scanners,\"fields\":['name', 'entrance', 'login', 'password', 'actions']},scopedSlots:_vm._u([{key:\"cell(entrance)\",fn:function({item}){return [(item.entrance)?_c('span',[_vm._v(_vm._s(item.entrance.name))]):_c('span',[_vm._v(_vm._s(_vm.$t('scanner_entrances_all')))])]}},{key:\"cell(actions)\",fn:function({item}){return [_c('b-btn',{staticClass:\"mr-3\",attrs:{\"variant\":\"info\"},on:{\"click\":function($event){return _vm.showLoginQR(item)}}},[_vm._v(_vm._s(_vm.$t('scanner_show_login_qr')))]),_c('b-btn',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.editScanner(item)}}},[_vm._v(_vm._s(_vm.$t('scanner_edit')))])]}}])}),_c('b-modal',{attrs:{\"id\":\"scanner-qr\",\"title\":_vm.qrTitle},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.closeQRModal}},[_vm._v(_vm._s(_vm.$t('close')))])]},proxy:true}])},[(_vm.qrCode)?_c('div',{staticClass:\"text-center\"},[_c('h2',[_vm._v(_vm._s(_vm.qrCode.name))]),_c('qrcode-vue',{attrs:{\"size\":300,\"level\":\"H\",\"value\":_vm.qrCode}})],1):_vm._e()]),_c('b-modal',{attrs:{\"id\":\"scanner-edit\",\"title\":_vm.$t('scanner_edit')},on:{\"hidden\":function($event){_vm.scanner = {}}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.saveScanner}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_name')}},[_c('b-form-input',{model:{value:(_vm.scanner.name),callback:function ($$v) {_vm.$set(_vm.scanner, \"name\", $$v)},expression:\"scanner.name\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_entrance')}},[_c('b-select',{attrs:{\"options\":_vm.entrances,\"text-field\":\"name\",\"value-field\":\"id\"},model:{value:(_vm.scanner.entrance_id),callback:function ($$v) {_vm.$set(_vm.scanner, \"entrance_id\", $$v)},expression:\"scanner.entrance_id\"}})],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-spinner v-if=\"!scanners || !entrances\"></b-spinner>\n <b-col v-else>\n <b-form-group class=\"text-right container-distance\">\n <b-button variant=\"new\" v-b-modal.add-scanner>{{ $t('new') }}</b-button>\n </b-form-group>\n <b-modal id=\"add-scanner\" :title=\"$t('scanner_add_modal_title')\">\n <b-form-group :label=\"$t('scanner_name')\">\n <b-form-input v-model=\"scanner.name\"></b-form-input>\n </b-form-group>\n <template #modal-footer>\n <p>{{ $t('scanner_create_hint') }}</p>\n <b-button variant=\"primary\" @click=\"createScanner()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n <b-table :items=\"scanners\" :fields=\"['name', 'entrance', 'login', 'password', 'actions']\">\n <template v-slot:cell(entrance)=\"{item}\">\n <span v-if=\"item.entrance\">{{ item.entrance.name }}</span>\n <span v-else>{{ $t('scanner_entrances_all') }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-btn variant=\"info\" @click=\"showLoginQR(item)\" class=\"mr-3\">{{ $t('scanner_show_login_qr') }}</b-btn>\n <b-btn variant=\"primary\" @click=\"editScanner(item)\">{{ $t('scanner_edit') }}</b-btn>\n </template>\n </b-table>\n <b-modal id=\"scanner-qr\" :title=\"qrTitle\">\n <div class=\"text-center\" v-if=\"qrCode\">\n <h2>{{ qrCode.name }}</h2>\n <qrcode-vue :size=\"300\" level=\"H\" :value=\"qrCode\"></qrcode-vue>\n </div>\n <template #modal-footer>\n <b-button variant=\"primary\" @click=\"closeQRModal\">{{ $t('close') }}</b-button>\n </template>\n </b-modal>\n <b-modal id=\"scanner-edit\" :title=\"$t('scanner_edit')\" @hidden=\"scanner = {}\">\n <b-form-group :label=\"$t('scanner_name')\">\n <b-form-input v-model=\"scanner.name\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('scanner_entrance')\">\n <b-select v-model=\"scanner.entrance_id\" :options=\"entrances\" text-field=\"name\" value-field=\"id\"></b-select>\n </b-form-group>\n <template #modal-footer>\n <b-button variant=\"primary\" @click=\"saveScanner\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport QrcodeVue from 'qrcode.vue'\nexport default {\n components: {\n QrcodeVue\n },\n data() {\n return {\n scanners: null,\n scanner: {},\n qrCode: null,\n qrTitle: '',\n entrances: []\n }\n },\n methods: {\n createScanner(){\n api.scanner().create(this.scanner).then((scanner) => {\n this.scanners.push(scanner)\n this.scanner = {}\n this.$bvModal.hide('add-scanner')\n })\n },\n closeQRModal(){\n this.qrCode = null\n this.$bvModal.hide('scanner-qr')\n },\n showLoginQR(scanner){\n this.qrTitle = scanner.name\n this.qrCode = JSON.stringify({\n name: scanner.name,\n login: scanner.login,\n password: scanner.password\n })\n this.$bvModal.show('scanner-qr')\n },\n editScanner(scanner){\n this.scanner = Object.assign({}, scanner)\n this.$bvModal.show('scanner-edit')\n },\n saveScanner(){\n api.scanner().save(this.scanner).then(() => {\n this.getScanners()\n this.scanner = {}\n this.$store.commit('success', 'scanner_updated')\n this.$bvModal.hide('scanner-edit')\n })\n },\n getScanners(){\n api.scanner().get().then(scanners => {\n this.scanners = scanners\n })\n }\n },\n created() {\n this.getScanners()\n api.entrance().get().then(entrances => {\n this.entrances = [{\n id: 0,\n name: this.$t('scanner_entrances_all')\n }]\n this.entrances = this.entrances.concat(entrances)\n })\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScannerOverview.vue?vue&type=template&id=67403258\"\nimport script from \"./ScannerOverview.vue?vue&type=script&lang=js\"\nexport * from \"./ScannerOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(!_vm.scan_operations)?_c('b-spinner'):_c('b-col',[_c('b-row',[_c('b-col',[_c('label',{staticClass:\"d-inline-block\"},[_vm._v(_vm._s(_vm.$t('scan_operation_show_archived')))]),_c('b-form-checkbox',{staticClass:\"d-inline-block ml-3\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},on:{\"change\":function($event){return _vm.getScanOperations()}},model:{value:(_vm.show_archived),callback:function ($$v) {_vm.show_archived=$$v},expression:\"show_archived\"}})],1),_c('b-col',[_c('b-form-group',{staticClass:\"text-right container-distance\"},[(_vm.$can('scan_terminal_view'))?_c('b-button',{staticClass:\"mr-4\",attrs:{\"variant\":\"new\"},on:{\"click\":_vm.openScannerTerminal}},[_vm._v(_vm._s(_vm.$t('scan_operation_terminal_button')))]):_vm._e(),(_vm.$can('scan_operation_create') && _vm.events)?_c('b-button',{directives:[{name:\"b-modal\",rawName:\"v-b-modal.add-scan-operation\",modifiers:{\"add-scan-operation\":true}}],attrs:{\"variant\":\"new\",\"disabled\":_vm.events.length === 0}},[_vm._v(_vm._s(_vm.$t('new')))]):_vm._e()],1)],1)],1),(_vm.scan_operations.length)?_c('table',{staticClass:\"table b-table\",staticStyle:{\"width\":\"100%\"}},[_c('thead',[_c('tr',[_c('th',{staticStyle:{\"width\":\"25%\",\"color\":\"white\"}},[_vm._v(_vm._s(_vm.$t('scan_operation_event')))]),_c('th',{staticStyle:{\"width\":\"25%\",\"color\":\"white\"}},[_vm._v(_vm._s(_vm.$t('scan_operation_status')))]),_c('th',{staticStyle:{\"width\":\"25%\",\"color\":\"white\"}},[_vm._v(_vm._s(_vm.$t('scan_operation_users')))]),_c('th',{staticStyle:{\"width\":\"25%\",\"color\":\"white\"}},[_vm._v(_vm._s(_vm.$t('scan_operation_actions')))])])]),_c('tbody',_vm._l((_vm.scan_operations),function(scan_operation){return _c('tr',{key:`scan-operation` + scan_operation.name},[_c('td',[_vm._v(_vm._s(scan_operation.name))]),_c('td',[_c('status-label',{attrs:{\"status\":scan_operation.scan_operation.status}})],1),_c('td',[_vm._v(_vm._s(scan_operation.scan_operation.scanners.length))]),_c('td',[(_vm.$can('scan_operation_edit'))?_c('b-btn',{attrs:{\"variant\":\"primary\",\"to\":{name:'ScanOperationManage', params:{id: scan_operation.scan_operation.slug}}}},[_vm._v(_vm._s(_vm.$t('scan_operation_manage')))]):_vm._e()],1)])}),0)]):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)],1),_c('b-modal',{attrs:{\"id\":\"add-scan-operation\",\"title\":_vm.$t('scan_operation_add_modal_title')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.saving,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createScanOperation()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('select_event')}},[_c('v-select',{attrs:{\"options\":_vm.events,\"label\":\"name\",\"reduce\":event => event.id},model:{value:(_vm.scan_operation.event_id),callback:function ($$v) {_vm.$set(_vm.scan_operation, \"event_id\", $$v)},expression:\"scan_operation.event_id\"}})],1),_c('p',[_vm._v(_vm._s(_vm.$t('scan_operation_create_hint')))])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-spinner v-if=\"!scan_operations\"></b-spinner>\n <b-col v-else>\n <b-row>\n <b-col>\n <label class=\"d-inline-block\">{{ $t('scan_operation_show_archived') }}</label>\n <b-form-checkbox class=\"d-inline-block ml-3\" switch v-model=\"show_archived\" :value=\"true\" :unchecked-value=\"false\" @change=\"getScanOperations()\"></b-form-checkbox>\n </b-col>\n <b-col>\n <b-form-group class=\"text-right container-distance\">\n <b-button v-if=\"$can('scan_terminal_view')\" class=\"mr-4\" variant=\"new\" @click=\"openScannerTerminal\">{{ $t('scan_operation_terminal_button') }}</b-button>\n <b-button v-if=\"$can('scan_operation_create') && events\" variant=\"new\" :disabled=\"events.length === 0\" v-b-modal.add-scan-operation>{{ $t('new') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n <table v-if=\"scan_operations.length\" class=\"table b-table\" style=\"width:100%;\">\n <thead>\n <tr>\n <th style=\"width: 25%; color:white;\">{{ $t('scan_operation_event') }}</th>\n <th style=\"width: 25%; color:white;\">{{ $t('scan_operation_status') }}</th>\n <th style=\"width: 25%; color:white;\">{{ $t('scan_operation_users') }}</th>\n <th style=\"width: 25%; color:white;\">{{ $t('scan_operation_actions') }}</th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"scan_operation in scan_operations\" :key=\"`scan-operation` + scan_operation.name\">\n <td>{{ scan_operation.name }}</td>\n <td><status-label :status=\"scan_operation.scan_operation.status\"></status-label></td>\n <td>{{ scan_operation.scan_operation.scanners.length }}</td>\n <td>\n <b-btn v-if=\"$can('scan_operation_edit')\" variant=\"primary\" :to=\"{name:'ScanOperationManage', params:{id: scan_operation.scan_operation.slug}}\">{{$t('scan_operation_manage')}}</b-btn>\n </td>\n </tr>\n </tbody>\n </table>\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n </b-col>\n </b-row>\n <b-modal id=\"add-scan-operation\" :title=\"$t('scan_operation_add_modal_title')\">\n <b-form-group :label=\"$t('select_event')\">\n <v-select v-model=\"scan_operation.event_id\" :options=\"events\" label=\"name\" :reduce=\"event => event.id\"></v-select>\n </b-form-group>\n <p>{{ $t('scan_operation_create_hint') }}</p>\n <template #modal-footer> \n <b-button :disabled=\"saving\" variant=\"primary\" @click=\"createScanOperation()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport StatusLabel from \"@/components/StatusLabel\";\n\nexport default {\n components: {\n StatusLabel\n },\n data() {\n return {\n scan_operations: [],\n scan_operation: {},\n events: null,\n saving: false,\n show_archived: false,\n }\n },\n methods: {\n openScannerTerminal(){\n let routeData = this.$router.resolve({name: 'ScannerTerminalLogin'});\n window.open(routeData.href, '_blank');\n },\n createScanOperation() {\n this.saving = true;\n api.scanOperation().create(this.scan_operation).then(response => {\n this.getScanOperations();\n this.getEvents();\n this.$bvModal.hide('add-scan-operation')\n this.saving = false;\n if(this.$can('scan_operation_edit')) {\n this.$router.push({name: 'ScanOperationManage', params: {id: response.slug}})\n }\n else {\n this.scan_operation = {};\n this.$store.commit('success', this.$t('scan_operation_created'));\n }\n }).catch(() => {\n this.saving = false;\n })\n },\n getScanOperations() {\n api.scanOperation().get(this.show_archived).then(scanOperations => {\n this.scan_operations = scanOperations\n })\n },\n getEvents() {\n api.scanOperation().getAvailableEvents().then((events) => this.events = events);\n },\n },\n created() {\n if(this.$store.state.user) {\n if(!this.$can('scan_operation_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getScanOperations()\n this.getEvents()\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('scan_operation_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScanOperationOverview.vue?vue&type=template&id=16f0cd2c\"\nimport script from \"./ScanOperationOverview.vue?vue&type=script&lang=js\"\nexport * from \"./ScanOperationOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t(\"scanner_manage_title\")))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"6\"}},[_c('b-row',[_c('b-col',[_c('label',{attrs:{\"for\":\"scanner-name\"}},[_vm._v(_vm._s(_vm.$t('scanner_name')))])])],1),_c('b-row',{staticClass:\"align-items-center justify-content-between\"},[_c('b-col',{attrs:{\"cols\":\"10\"}},[_c('b-form-input',{attrs:{\"id\":\"scanner-name\",\"placeholder\":_vm.$t('scanner_name')},model:{value:(_vm.scanner.name),callback:function ($$v) {_vm.$set(_vm.scanner, \"name\", $$v)},expression:\"scanner.name\"}})],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-button',{staticClass:\"float-right\",attrs:{\"disabled\":!_vm.scanner.name || _vm.loading,\"variant\":\"primary\",\"size\":\"lg\"},on:{\"click\":_vm.handleAddScannerClick}},[_c('b-icon',{attrs:{\"icon\":\"plus\"}})],1)],1)],1),(_vm.scanners.length > 0)?_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-table',{attrs:{\"items\":_vm.scanners,\"fields\":['name', 'actions'],\"thead-class\":\"d-none\",\"bordered\":\"\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.name)+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [_c('div',{staticClass:\"d-flex justify-content-end\"},[_c('b-btn',{staticClass:\"mr-4 btn-new p-2\",attrs:{\"variant\":\"secondary\"},on:{\"click\":function($event){return _vm.showQR(item)}}},[_c('b-icon',{attrs:{\"icon\":\"eye\"}})],1),_c('b-btn',{staticClass:\"mr-4\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.handleEditScannerClick(item)}}},[_vm._v(_vm._s(_vm.$t('manage'))+\" \")]),_c('b-btn',{staticClass:\"border-0\",attrs:{\"disabled\":_vm.loading,\"pill\":\"\",\"variant\":\"outline-secondary\"},on:{\"click\":function($event){return _vm.handleDeleteScannerClick(item.id)}}},[_c('b-icon',{attrs:{\"icon\":\"x\"}})],1)],1)]}}],null,false,3548559190)})],1)],1):_vm._e()],1)],1),_c('br'),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"cols\":\"3\"}},[_c('b',[_vm._v(_vm._s(_vm.$t(\"scan_test_mode\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"scan_test_mode_hint\")))])]),_c('b-col',{attrs:{\"cols\":\"1\"}},[_c('b-form-checkbox',{staticClass:\"float-left ml-3\",attrs:{\"switch\":\"\",\"unchecked-value\":false},model:{value:(_vm.status),callback:function ($$v) {_vm.status=$$v},expression:\"status\"}})],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"3\"}},[_c('b',[_vm._v(_vm._s(_vm.$t(\"scan_enable_outgoing\")))]),_c('p',[_vm._v(_vm._s(_vm.$t(\"scan_enable_outgoing_hint\")))])]),_c('b-col',{attrs:{\"cols\":\"1\"}},[_c('b-form-checkbox',{staticClass:\"float-left ml-3\",attrs:{\"switch\":\"\",\"unchecked-value\":false},model:{value:(_vm.outgoing),callback:function ($$v) {_vm.outgoing=$$v},expression:\"outgoing\"}})],1)],1),_c('br'),_c('b-row',{staticClass:\"align-items-center\"},[_c('b-col',{attrs:{\"cols\":\"3\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('scan_sessions')}},[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('session_name')},model:{value:(_vm.session.name),callback:function ($$v) {_vm.$set(_vm.session, \"name\", $$v)},expression:\"session.name\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('date-time-picker',{attrs:{\"label\":_vm.$t('scan_start_date')},model:{value:(_vm.session.starts_at),callback:function ($$v) {_vm.$set(_vm.session, \"starts_at\", $$v)},expression:\"session.starts_at\"}})],1),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('date-time-picker',{attrs:{\"label\":_vm.$t('scan_end_date')},model:{value:(_vm.session.ends_at),callback:function ($$v) {_vm.$set(_vm.session, \"ends_at\", $$v)},expression:\"session.ends_at\"}})],1),_c('b-col',{attrs:{\"cols\":\"1\"}},[_c('b-button',{staticStyle:{\"margin-top\":\"10px\"},attrs:{\"disabled\":!_vm.session.name || !_vm.session.starts_at || !_vm.session.ends_at || _vm.loading,\"variant\":\"primary\",\"size\":\"lg\"},on:{\"click\":_vm.handleAddSessionClick}},[_c('b-icon',{attrs:{\"icon\":\"plus\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-table',{attrs:{\"items\":_vm.sessions,\"fields\":['name', 'starts_at', 'actions'],\"thead-class\":\"d-none\",\"bordered\":\"\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.name)+\" \")]}},{key:\"cell(starts_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.formatSessionDate(item.starts_at, item.ends_at))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [_c('div',{staticClass:\"d-flex justify-content-end\"},[_c('b-btn',{staticClass:\"mr-4\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.handleEditSessionClick(item)}}},[_vm._v(_vm._s(_vm.$t('manage'))+\" \")]),_c('b-btn',{staticClass:\"border-0\",attrs:{\"disabled\":_vm.loading,\"pill\":\"\",\"variant\":\"outline-secondary\"},on:{\"click\":function($event){return _vm.handleDeleteSessionClick(item.id)}}},[_c('b-icon',{attrs:{\"icon\":\"x\"}})],1)],1)]}}])})],1)],1),(_vm.$can('scan_operation_edit') || _vm.$can('scan_operation_create'))?_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-button',{staticClass:\"mb-3 ml-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationProductsConfigure', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t('next')))]),_c('b-button',{staticClass:\"mb-3 bg-success btn-new float-right\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.save}},[_vm._v(_vm._s(_vm.$t('save')))])],1)],1):_vm._e()],1)])])],1),_c('b-modal',{attrs:{\"id\":\"scanner-qr\",\"title\":_vm.qrTitle},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.closeQRModal}},[_vm._v(_vm._s(_vm.$t('close')))])]},proxy:true}])},[(_vm.qrCode)?_c('div',{staticClass:\"text-center\"},[_c('h2',[_vm._v(_vm._s(_vm.qrCode.name))]),_c('qrcode-vue',{attrs:{\"size\":300,\"level\":\"H\",\"value\":_vm.qrCode}})],1):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('scanner_modal_edit'),\"id\":\"edit-scanner\",\"size\":\"md\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"secondary\"},on:{\"click\":_vm.handleSaveScannerClick}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}])},[(_vm.scanner)?_c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_name')}},[_c('b-form-input',{attrs:{\"required\":\"\",\"placeholder\":_vm.$t('session_name')},model:{value:(_vm.scanner.name),callback:function ($$v) {_vm.$set(_vm.scanner, \"name\", $$v)},expression:\"scanner.name\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_username')}},[_c('b-form-input',{attrs:{\"readonly\":\"\"},model:{value:(_vm.scanner.username),callback:function ($$v) {_vm.$set(_vm.scanner, \"username\", $$v)},expression:\"scanner.username\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_password')}},[_c('b-form-input',{attrs:{\"required\":\"\"},model:{value:(_vm.scanner.password),callback:function ($$v) {_vm.$set(_vm.scanner, \"password\", $$v)},expression:\"scanner.password\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('scanner_description')}},[_c('b-form-input',{attrs:{\"required\":\"\"},model:{value:(_vm.scanner.description),callback:function ($$v) {_vm.$set(_vm.scanner, \"description\", $$v)},expression:\"scanner.description\"}})],1)],1)],1)],1):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('scanner_modal_delete'),\"id\":\"delete-scanner\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteScanner()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('scan_operation_session_modal_edit'),\"id\":\"edit-session\",\"size\":\"md\"},on:{\"cancel\":_vm.clearSessionInputs,\"hide\":_vm.clearSessionInputs},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"secondary\"},on:{\"click\":_vm.handleSaveSessionClick}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}])},[(_vm.scanner)?_c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('scan_operation_session_name')}},[_c('b-form-input',{attrs:{\"required\":\"\"},model:{value:(_vm.session.name),callback:function ($$v) {_vm.$set(_vm.session, \"name\", $$v)},expression:\"session.name\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('scan_start_date')},model:{value:(_vm.session.starts_at),callback:function ($$v) {_vm.$set(_vm.session, \"starts_at\", $$v)},expression:\"session.starts_at\"}})],1)],1),_c('b-row',[_c('b-col',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('scan_end_date')},model:{value:(_vm.session.ends_at),callback:function ($$v) {_vm.$set(_vm.session, \"ends_at\", $$v)},expression:\"session.ends_at\"}})],1)],1)],1):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('scan_operation_session_modal_delete'),\"id\":\"delete-session\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.deleteSession()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n\n <b-row>\n <b-col cols=\"12\" >\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t(\"scanner_manage_title\") }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col cols=\"6\">\n <b-row>\n <b-col>\n <label for=\"scanner-name\">{{$t('scanner_name')}}</label>\n </b-col>\n </b-row>\n <b-row class=\"align-items-center justify-content-between\">\n <b-col cols=\"10\">\n <b-form-input id=\"scanner-name\" v-model=\"scanner.name\" :placeholder=\"$t('scanner_name')\"></b-form-input>\n </b-col>\n <b-col cols=\"2\">\n <b-button class=\"float-right\" :disabled=\"!scanner.name || loading\" variant=\"primary\" size=\"lg\" @click=\"handleAddScannerClick\"><b-icon icon=\"plus\"></b-icon></b-button>\n </b-col>\n </b-row>\n\n <b-row class=\"mt-3\" v-if=\"scanners.length > 0\">\n <b-col cols=\"12\">\n <b-table :items=\"scanners\" :fields=\"['name', 'actions']\" thead-class=\"d-none\" bordered borderless>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.name }}\n </template>\n <template v-slot:cell(actions)=\"{item}\" >\n <div class=\"d-flex justify-content-end\" >\n <b-btn class=\"mr-4 btn-new p-2\" variant=\"secondary\" @click=\"showQR(item)\" ><b-icon icon=\"eye\"></b-icon></b-btn>\n <b-btn class=\"mr-4\" variant=\"primary\" @click=\"handleEditScannerClick(item)\">{{$t('manage')}} </b-btn>\n <b-btn :disabled=\"loading\" pill variant=\"outline-secondary\" class=\"border-0\" @click=\"handleDeleteScannerClick(item.id)\"><b-icon icon=\"x\"></b-icon></b-btn>\n </div>\n </template>\n </b-table>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n <br>\n <b-row class=\"mt-3\">\n <b-col cols=\"3\">\n <b>{{ $t(\"scan_test_mode\") }}</b>\n <p>{{ $t(\"scan_test_mode_hint\") }}</p>\n </b-col>\n <b-col cols=\"1\">\n <b-form-checkbox\n class=\"float-left ml-3\"\n switch\n v-model=\"status\"\n :unchecked-value=\"false\"\n \n ></b-form-checkbox>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"3\">\n <b>{{ $t(\"scan_enable_outgoing\") }}</b>\n <p>{{ $t(\"scan_enable_outgoing_hint\") }}</p>\n </b-col>\n <b-col cols=\"1\">\n <b-form-checkbox\n class=\"float-left ml-3\"\n switch\n v-model=\"outgoing\"\n :unchecked-value=\"false\"\n \n ></b-form-checkbox>\n </b-col>\n </b-row>\n <br>\n <b-row class=\"align-items-center\">\n <b-col cols=\"3\">\n <b-form-group :label=\"$t('scan_sessions')\">\n <b-form-input v-model=\"session.name\" :placeholder=\"$t('session_name')\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"4\">\n <date-time-picker v-model=\"session.starts_at\" :label=\"$t('scan_start_date')\"></date-time-picker>\n\n </b-col>\n <b-col cols=\"4\">\n <date-time-picker v-model=\"session.ends_at\" :label=\"$t('scan_end_date')\"></date-time-picker>\n </b-col>\n <b-col cols=\"1\">\n <b-button :disabled=\"!session.name || !session.starts_at || !session.ends_at || loading\" style=\"margin-top:10px\" variant=\"primary\" size=\"lg\" @click=\"handleAddSessionClick\"><b-icon icon=\"plus\"></b-icon></b-button>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col cols=\"12\">\n <b-table :items=\"sessions\" :fields=\"['name', 'starts_at', 'actions']\" thead-class=\"d-none\" bordered borderless>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.name }}\n </template>\n <template v-slot:cell(starts_at)=\"{item}\" >\n {{ formatSessionDate(item.starts_at, item.ends_at) }}\n </template>\n <template v-slot:cell(actions)=\"{item}\" >\n <div class=\"d-flex justify-content-end\" >\n <b-btn class=\"mr-4\" variant=\"primary\" @click=\"handleEditSessionClick(item)\">{{$t('manage')}} </b-btn>\n <b-btn :disabled=\"loading\" pill variant=\"outline-secondary\" class=\"border-0\" @click=\"handleDeleteSessionClick(item.id)\"><b-icon icon=\"x\"></b-icon></b-btn>\n </div>\n </template>\n </b-table>\n </b-col>\n </b-row>\n\n <b-row v-if=\"$can('scan_operation_edit') || $can('scan_operation_create')\">\n <b-col cols=\"12\">\n <b-button @click=\"$router.push({name: 'ScanOperationProductsConfigure', params: {id: $route.params.id}})\" class=\"mb-3 ml-3 btn-new float-right\">{{ $t('next') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"save\" class=\"mb-3 bg-success btn-new float-right\">{{ $t('save') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n </b-row>\n <b-modal id=\"scanner-qr\" :title=\"qrTitle\">\n <div class=\"text-center\" v-if=\"qrCode\">\n <h2>{{ qrCode.name }}</h2>\n <qrcode-vue :size=\"300\" level=\"H\" :value=\"qrCode\"></qrcode-vue>\n </div>\n <template #modal-footer>\n <b-button variant=\"primary\" @click=\"closeQRModal\">{{ $t('close') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('scanner_modal_edit')\" id=\"edit-scanner\" size=\"md\">\n <div v-if=\"scanner\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('scanner_name')\">\n <b-form-input v-model=\"scanner.name\" required :placeholder=\"$t('session_name')\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('scanner_username')\">\n <b-form-input v-model=\"scanner.username\" readonly></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('scanner_password')\">\n <b-form-input v-model=\"scanner.password\" required></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('scanner_description')\">\n <b-form-input v-model=\"scanner.description\" required></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer>\n <b-button :disabled=\"loading\" variant=\"secondary\" @click=\"handleSaveScannerClick\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('scanner_modal_delete')\" id=\"delete-scanner\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteScanner()\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('scan_operation_session_modal_edit')\" id=\"edit-session\" size=\"md\" @cancel=\"clearSessionInputs\" @hide=\"clearSessionInputs\">\n <div v-if=\"scanner\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('scan_operation_session_name')\">\n <b-form-input v-model=\"session.name\" required></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <date-time-picker v-model=\"session.starts_at\" :label=\"$t('scan_start_date')\"></date-time-picker>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <date-time-picker v-model=\"session.ends_at\" :label=\"$t('scan_end_date')\"></date-time-picker>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer>\n <b-button :disabled=\"loading\" variant=\"secondary\" @click=\"handleSaveSessionClick\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n <b-modal :title=\"$t('scan_operation_session_modal_delete')\" id=\"delete-session\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteSession()\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport QrcodeVue from \"qrcode.vue\";\nimport moment from 'moment';\n\nexport default {\n components: {\n DateTimePicker,QrcodeVue\n },\n data() {\n return {\n scanners: [],\n scanner: {\n name:''\n },\n qrCode: null,\n qrTitle: '',\n selected_scanner_id: null,\n selected_session_id: null,\n sessions: [],\n session: {\n name: null,\n starts_at: null,\n ends_at: null,\n },\n status: false,\n outgoing: false,\n loading: false,\n scanOperation: null\n };\n },\n methods: {\n handleAddScannerClick () {\n this.loading = true;\n api.scanner().create(this.$route.params.id,this.scanner).then((response)=>{\n this.scanners.push(Object.assign({},response));\n this.scanner = {name:''}\n this.handleEditScannerClick(response)\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n handleDeleteScannerClick(scannerId){\n this.$bvModal.show('delete-scanner')\n this.selected_scanner_id = scannerId\n },\n deleteScanner() {\n this.$bvModal.hide('delete-scanner')\n this.loading = true;\n api.scanner().delete(this.selected_scanner_id).then(()=>{\n this.scanners = this.scanners.filter((scanner)=>scanner.id !== this.selected_scanner_id)\n this.selected_scanner_id = null\n this.$store.commit('success', 'scanner_has_been_deleted')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n handleEditScannerClick(scanner) {\n this.scanner = Object.assign({}, scanner)\n this.$bvModal.show('edit-scanner')\n },\n handleSaveScannerClick(){\n this.loading = true;\n api.scanner().save(this.scanner.id,this.scanner).then((response)=>{\n this.scanners = this.scanners.filter((scanner)=>scanner.id !== response.id)\n this.scanners.push(Object.assign({},response));\n this.scanner = {};\n this.$bvModal.hide('edit-scanner')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n closeQRModal(){\n this.qrCode = null\n this.$bvModal.hide('scanner-qr')\n },\n showQR(scanner){\n this.qrTitle = scanner.name\n this.qrCode = JSON.stringify({\n name: scanner.name,\n login: scanner.username,\n password: scanner.password\n })\n this.$bvModal.show('scanner-qr')\n },\n handleEditSessionClick(session) {\n this.session = Object.assign({}, session)\n this.$bvModal.show('edit-session')\n },\n handleAddSessionClick(){\n this.loading = true;\n api.scanOperationSession().create(Object.assign({scan_operation_id: this.$route.params.id}, this.session)).then((response)=>{\n this.sessions.push(Object.assign({},response));\n this.clearSessionInputs();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n handleSaveSessionClick(){\n this.loading = true;\n api.scanOperationSession().save(Object.assign({scan_operation_id: this.$route.params.id}, this.session)).then((response)=>{\n this.sessions.map(session => {\n if(session.id === response.id) {\n session = Object.assign(session, response);\n }\n return session;\n });\n this.clearSessionInputs();\n this.$bvModal.hide('edit-session')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n handleDeleteSessionClick(sessionId){\n this.$bvModal.show('delete-session')\n this.selected_session_id = sessionId\n },\n deleteSession() {\n this.$bvModal.hide('delete-session')\n this.loading = true;\n api.scanOperationSession().delete(this.$route.params.id, this.selected_session_id).then(()=>{\n this.sessions = this.sessions.filter(session => session.id !== this.selected_session_id)\n this.selected_session_id = null\n this.$store.commit('success', 'session_has_been_deleted')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n save() {\n this.loading = true;\n api.scanOperation().save({\n id: this.$route.params.id,\n status: this.status,\n outgoing: this.outgoing,\n }).then((response)=>{\n this.scanOperation = response;\n this.$store.commit('success', 'scan_operation_updated')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n clearSessionInputs() {\n this.session = {\n name: null,\n starts_at: null,\n ends_at: null,\n }\n },\n formatSessionDate(start, end) {\n return moment(start).format('DD-MM-YYYY HH:mm') + ' - ' + moment(end).format('DD-MM-YYYY HH:mm');\n }\n },\n created() {\n document.title = this.$t('backend_title_scan_operation_manage')\n if(this.$store.state.user) {\n if (!this.$can('scan_operation_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.scanner().get(this.$route.params.id).then((response)=>{\n this.scanners = response;\n });\n api.scanOperationSession().get(this.$route.params.id).then((response)=>{\n this.sessions = response;\n });\n api.scanOperation().find(this.$route.params.id).then((response)=>{\n this.status = response.status === 'test';\n this.outgoing = !!response.outgoing_enabled;\n this.scanOperation = response;\n });\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('scan_operation_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n};\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationManage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationManage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScanOperationManage.vue?vue&type=template&id=d63483c4\"\nimport script from \"./ScanOperationManage.vue?vue&type=script&lang=js\"\nexport * from \"./ScanOperationManage.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.ticket)?_c('b-container',[_c('b-row',[_c('b-col',{staticClass:\"content-block\"},[(_vm.fields && _vm.ticket)?_c('customer-form',{ref:\"customer-form\",attrs:{\"disabled\":_vm.sending,\"level\":\"ticket\",\"fields\":_vm.fields,\"message\":_vm.message,\"is-claim\":true,\"order-customer\":_vm.ticket.order.customer},model:{value:(_vm.ticket.customer),callback:function ($$v) {_vm.$set(_vm.ticket, \"customer\", $$v)},expression:\"ticket.customer\"}}):_vm._e(),_c('customer-information-form',{ref:\"customer-information-form\",attrs:{\"disabled\":_vm.sending,\"questions\":_vm.questions},model:{value:(_vm.answers),callback:function ($$v) {_vm.answers=$$v},expression:\"answers\"}}),_c('b-form-group',{staticClass:\"text-center\"},[(_vm.sending)?_c('b-spinner'):_c('b-btn',{attrs:{\"variant\":\"success\",\"size\":\"lg\"},on:{\"click\":function($event){return _vm.submit()}}},[_vm._v(_vm._s(_vm.$t('ticket_claim')))])],1)],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.customer)?_c('div',[(!_vm.hideTitle)?_c('b-row',[_c('b-col',[_c('b-row',[_c('b-col',{attrs:{\"sm\":\"7\",\"cols\":\"12\"}},[(_vm.isClaim && !_vm.isTicketFieldsAsked)?_c('h2',[_vm._v(_vm._s(_vm.$t('customer_form_click_on_claim_button')))]):_c('h2',[_vm._v(_vm._s(_vm.$t('customer_form_title')))])]),(_vm.isClaim && _vm.isTicketFieldsAsked && _vm.orderCustomer)?_c('b-col',{attrs:{\"sm\":\"5\",\"cols\":\"12\",\"id\":\"copy-data-link\"}},[_c('a',{attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.copyOrderCustomer}},[_vm._v(_vm._s(_vm.$t('ticket_claim_copy_order_data')))])]):_vm._e()],1),(_vm.message)?_c('span',[_vm._v(_vm._s(_vm.message)),_c('br'),_c('br')]):_vm._e()],1)],1):_vm._e(),_c('b-row',[(_vm.customerFields.indexOf('company_name') !== -1)?_c('b-col',[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('company_name') !== -1) ? _vm.$t('customer_company_name') + '*' : _vm.$t('customer_company_name'),\"state\":_vm.validated ? _vm.errors.indexOf('company_name') === -1 : null},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.company_name),callback:function ($$v) {_vm.$set(_vm.customer, \"company_name\", $$v)},expression:\"customer.company_name\"}})],1):_vm._e()],1),_c('b-row',[(_vm.customerFields.indexOf('first_name') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('first_name') !== -1) ? _vm.$t('customer_first_name') + '*' : _vm.$t('customer_first_name'),\"state\":_vm.validated ? _vm.errors.indexOf('first_name') === -1 : null},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"20.933\",\"height\":\"23.668\",\"viewBox\":\"0 0 20.933 23.668\"}},[_c('g',{attrs:{\"id\":\"Icon_akar-person\",\"data-name\":\"Icon akar-person\",\"transform\":\"translate(-3.895 -2)\"}},[_c('path',{attrs:{\"id\":\"Path_152\",\"data-name\":\"Path 152\",\"d\":\"M21.334,8.417A5.417,5.417,0,1,1,15.917,3a5.417,5.417,0,0,1,5.417,5.417Z\",\"transform\":\"translate(-1.556)\",\"fill\":\"none\",\"stroke\":\"#0a2336\",\"stroke-width\":\"2\"}}),_c('path',{attrs:{\"id\":\"Path_153\",\"data-name\":\"Path 153\",\"d\":\"M19.778,21h.381a3.25,3.25,0,0,1,3.224,2.847l.424,3.384a2.167,2.167,0,0,1-2.151,2.435H7.066a2.167,2.167,0,0,1-2.151-2.435l.423-3.384A3.25,3.25,0,0,1,8.564,21h.38\",\"transform\":\"translate(0 -4.999)\",\"fill\":\"none\",\"stroke\":\"#0a2336\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\"}})])])]},proxy:true}],null,false,1141856891),model:{value:(_vm.customer.first_name),callback:function ($$v) {_vm.$set(_vm.customer, \"first_name\", $$v)},expression:\"customer.first_name\"}})],1):_vm._e(),(_vm.customerFields.indexOf('last_name') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('last_name') !== -1) ? _vm.$t('customer_last_name') + '*' : _vm.$t('customer_last_name'),\"state\":_vm.validated ? _vm.errors.indexOf('last_name') === -1 : null},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"20.933\",\"height\":\"23.668\",\"viewBox\":\"0 0 20.933 23.668\"}},[_c('g',{attrs:{\"id\":\"Icon_akar-person\",\"data-name\":\"Icon akar-person\",\"transform\":\"translate(-3.895 -2)\"}},[_c('path',{attrs:{\"id\":\"Path_152\",\"data-name\":\"Path 152\",\"d\":\"M21.334,8.417A5.417,5.417,0,1,1,15.917,3a5.417,5.417,0,0,1,5.417,5.417Z\",\"transform\":\"translate(-1.556)\",\"fill\":\"none\",\"stroke\":\"#0a2336\",\"stroke-width\":\"2\"}}),_c('path',{attrs:{\"id\":\"Path_153\",\"data-name\":\"Path 153\",\"d\":\"M19.778,21h.381a3.25,3.25,0,0,1,3.224,2.847l.424,3.384a2.167,2.167,0,0,1-2.151,2.435H7.066a2.167,2.167,0,0,1-2.151-2.435l.423-3.384A3.25,3.25,0,0,1,8.564,21h.38\",\"transform\":\"translate(0 -4.999)\",\"fill\":\"none\",\"stroke\":\"#0a2336\",\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\"}})])])]},proxy:true}],null,false,1141856891),model:{value:(_vm.customer.last_name),callback:function ($$v) {_vm.$set(_vm.customer, \"last_name\", $$v)},expression:\"customer.last_name\"}})],1):_vm._e()],1),(_vm.customerFields.indexOf('address') !== -1)?_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('address') !== -1) ? _vm.$t('customer_address') + '*' : _vm.$t('customer_address'),\"state\":_vm.validated ? _vm.errors.indexOf('address') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.address),callback:function ($$v) {_vm.$set(_vm.customer, \"address\", $$v)},expression:\"customer.address\"}})],1),(_vm.customerFields.indexOf('address') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('address') !== -1) ? _vm.$t('customer_house_nr') + '*' : _vm.$t('customer_house_nr'),\"state\":_vm.validated ? _vm.errors.indexOf('address') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.house_nr),callback:function ($$v) {_vm.$set(_vm.customer, \"house_nr\", $$v)},expression:\"customer.house_nr\"}})],1):_vm._e()],1):_vm._e(),_c('b-row',[(_vm.customerFields.indexOf('zip') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('zip') !== -1) ? _vm.$t('customer_zip') + '*' : _vm.$t('customer_zip'),\"state\":_vm.validated ? _vm.errors.indexOf('zip') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.zip),callback:function ($$v) {_vm.$set(_vm.customer, \"zip\", $$v)},expression:\"customer.zip\"}})],1):_vm._e(),(_vm.customerFields.indexOf('city') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('city') !== -1) ? _vm.$t('customer_city') + '*' : _vm.$t('customer_city'),\"state\":_vm.validated ? _vm.errors.indexOf('city') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.city),callback:function ($$v) {_vm.$set(_vm.customer, \"city\", $$v)},expression:\"customer.city\"}})],1):_vm._e()],1),_c('b-row',[(_vm.customerFields.indexOf('phone') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('phone') !== -1) ? _vm.$t('customer_phone') + '*' : _vm.$t('customer_phone'),\"state\":_vm.validated ? _vm.errors.indexOf('phone') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.phone),callback:function ($$v) {_vm.$set(_vm.customer, \"phone\", $$v)},expression:\"customer.phone\"}})],1):_vm._e(),(_vm.customerFields.indexOf('country') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('country') !== -1) ? _vm.$t('customer_country') + '*' : _vm.$t('customer_country')}},[_c('b-form-select',{attrs:{\"text-field\":\"label\",\"value-field\":\"id\",\"options\":_vm.countries,\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf('country') === -1 : null},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.country),callback:function ($$v) {_vm.$set(_vm.customer, \"country\", $$v)},expression:\"customer.country\"}})],1)],1):_vm._e()],1),_c('b-row',[(_vm.customerFields.indexOf('gender') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('gender') !== -1) ? _vm.$t('customer_gender') + '*' : _vm.$t('customer_gender')}},[_c('b-form-radio-group',{attrs:{\"options\":_vm.genders,\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf('gender') === -1 : null},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.customer.gender),callback:function ($$v) {_vm.$set(_vm.customer, \"gender\", $$v)},expression:\"customer.gender\"}},[_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.validated ? _vm.errors.indexOf('gender') === -1 : null}},[_vm._v(\" \"+_vm._s(_vm.$t('errors_please_select'))+\" \")])],1)],1)],1):_vm._e(),(_vm.customerFields.indexOf('dob') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('dob') !== -1) ? _vm.$t('customer_dob') + '* (' + _vm.$t('date_format') + ')' : _vm.$t('customer_dob') + ' (' + _vm.$t('date_format') + ')'}},[_c('b-form-select',{staticClass:\"dob-select day\",attrs:{\"text-field\":\"label\",\"value-field\":\"id\",\"options\":_vm.days,\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf('dob') === -1 : null},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.tmp_dob.day),callback:function ($$v) {_vm.$set(_vm.tmp_dob, \"day\", $$v)},expression:\"tmp_dob.day\"}}),_c('b-form-select',{staticClass:\"dob-select month\",attrs:{\"text-field\":\"label\",\"value-field\":\"id\",\"options\":_vm.months,\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf('dob') === -1 : null},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.tmp_dob.month),callback:function ($$v) {_vm.$set(_vm.tmp_dob, \"month\", $$v)},expression:\"tmp_dob.month\"}}),_c('b-form-select',{staticClass:\"dob-select year\",attrs:{\"text-field\":\"label\",\"value-field\":\"id\",\"options\":_vm.years,\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf('dob') === -1 : null},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.tmp_dob.year),callback:function ($$v) {_vm.$set(_vm.tmp_dob, \"year\", $$v)},expression:\"tmp_dob.year\"}})],1)],1):_vm._e()],1),_c('b-row',[(_vm.customerFields.indexOf('email') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":(_vm.mandatoryFields.indexOf('email') !== -1) ? _vm.$t('customer_email') + '*' : _vm.$t('customer_email'),\"state\":_vm.validated ? _vm.errors.indexOf('email') === -1 : null,\"disabled\":_vm.disabled},on:{\"input\":function($event){return _vm.$emit('change')},\"change\":function($event){return _vm.checkEmail()}},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"20\",\"width\":\"20\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z\"}})])]},proxy:true}],null,false,1923375622),model:{value:(_vm.customer.email),callback:function ($$v) {_vm.$set(_vm.customer, \"email\", $$v)},expression:\"customer.email\"}}),(_vm.emailSuggestion)?_c('p',{staticClass:\"mt-2\"},[_vm._v(\" \"+_vm._s(_vm.$t('customer_email_suggestion', _vm.emailSuggestion))+\" \"),_c('b-button',{staticClass:\"p-1\",attrs:{\"variant\":\"success\",\"size\":\"xs\"},on:{\"click\":function($event){_vm.customer.email = _vm.emailSuggestion.full;_vm.emailSuggestion = null}}},[_vm._v(\" \"+_vm._s(_vm.$t('yes'))+\" \")]),_c('b-button',{staticClass:\"p-1 ml-2\",attrs:{\"variant\":\"danger\",\"size\":\"xs\"},on:{\"click\":function($event){_vm.emailSuggestion = null}}},[_vm._v(\" \"+_vm._s(_vm.$t('no'))+\" \")])],1):_vm._e()],1):_vm._e(),(_vm.customerFields.indexOf('email_confirmation') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('MaterialInput',{attrs:{\"label\":_vm.$t('email_confirmation') + (_vm.mandatoryFields.indexOf('email_confirmation') !== -1 ? '*' : ''),\"state\":_vm.validated ? _vm.errors.indexOf('email_confirmation') === -1 : null,\"disabled\":_vm.disabled},on:{\"change\":function($event){_vm.checkEmail();_vm.$emit('change')},\"paste\":_vm.onConfirmationPaste},scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"20\",\"width\":\"20\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z\"}})])]},proxy:true}],null,false,1923375622),model:{value:(_vm.customer.email_confirmation),callback:function ($$v) {_vm.$set(_vm.customer, \"email_confirmation\", $$v)},expression:\"customer.email_confirmation\"}})],1):_vm._e()],1),_c('b-row',[(_vm.customerFields.indexOf('optin') !== -1)?_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-group',[(_vm.fields && _vm.fields[0] && _vm.fields[0].company_id == 33)?_c('b-form-checkbox',{attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.customer.optin),callback:function ($$v) {_vm.$set(_vm.customer, \"optin\", $$v)},expression:\"customer.optin\"}},[_vm._v(_vm._s(_vm.$t('customer_optin_iams'))+\" \")]):_vm._e(),(_vm.fields && _vm.fields[0] && _vm.fields[0].company_id != 33)?_c('b-form-checkbox',{attrs:{\"disabled\":_vm.disabled},model:{value:(_vm.customer.optin),callback:function ($$v) {_vm.$set(_vm.customer, \"optin\", $$v)},expression:\"customer.optin\"}},[_vm._v(_vm._s(_vm.$t('customer_optin'))+\" \")]):_vm._e()],1)],1):_vm._e()],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"input-wrapper\",class:{'has-error': _vm.localState === false, 'has-icon': !!_vm.$slots.icon}},[_c('input',{ref:`input-${_vm.inputId}`,staticClass:\"form-control\",attrs:{\"type\":_vm.type ? _vm.type : 'text',\"id\":_vm.inputId,\"placeholder\":_vm.label,\"disabled\":_vm.disabled},domProps:{\"value\":_vm.localValue},on:{\"input\":_vm.onInput,\"change\":_vm.onChange,\"paste\":function($event){return _vm.$emit('paste', $event)}}}),(_vm.$slots.icon)?_c('label',{staticClass:\"mt-icon\"},[_vm._t(\"icon\")],2):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"input-wrapper\" :class=\"{'has-error': localState === false, 'has-icon': !!$slots.icon}\">\n <input\n :type=\"type ? type : 'text'\"\n :value=\"localValue\"\n class=\"form-control\"\n :ref=\"`input-${inputId}`\"\n @input=\"onInput\"\n @change=\"onChange\"\n :id=\"inputId\"\n :placeholder=\"label\"\n :disabled=\"disabled\" @paste=\"$emit('paste', $event)\">\n <label class=\"mt-icon\" v-if=\"$slots.icon\">\n <slot name=\"icon\"></slot>\n </label>\n </div>\n</template>\n\n<script>\nimport { randomStr } from '@/functions';\n\nexport default {\n name: \"MaterialInput\",\n props: {\n value: {\n type: String,\n default: ''\n },\n label: {\n type: String,\n default: ''\n },\n type: {\n type: String,\n default: 'text'\n },\n state: {\n type: Boolean,\n default: true\n },\n disabled: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n inputId: randomStr(),\n localValue: this.value,\n localState: this.state\n }\n },\n methods: {\n onInput(event) {\n const newValue = event.target.value;\n this.localValue = newValue;\n this.localState = this.calculateState(newValue); // Update local state based on new value\n this.$emit('input', newValue); // Emit the new value to parent\n },\n onChange(event) {\n this.$emit('change', event.target.value); // Emit the change event to parent\n },\n calculateState(value) {\n // Replace this with your logic to determine the state based on the value\n return value.length > 0;\n }\n },\n watch: {\n value(newValue) {\n this.localValue = newValue;\n },\n state(newState) {\n this.localState = newState;\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.input-wrapper {\n position: relative;\n width: 100%;\n border-radius: 6px;\n margin-bottom: 1.5rem;\n @media(max-width : 768px){\n font-size: 12px;\n }\n &.has-error {\n .form-control {\n border-color: #E80C0C !important;\n }\n .form-control::placeholder {\n color: #E80C0C !important;\n }\n .mt-icon svg{\n fill:#E80C0C !important\n }\n .mt-icon svg path{\n stroke:#E80C0C !important\n }\n }\n\n .form-control {\n border-radius: 6px !important;\n box-shadow: none;\n font-size: 16px;\n font-weight: 600;\n width: 100%;\n padding: 1rem;\n height:64px;\n &:focus {\n outline: none;\n }\n &::placeholder{\n font-weight:400!important;\n color:#909090!important\n }\n @media(max-width : 768px){\n font-size: 12px;\n height:50px;\n }\n }\n\n &.has-icon {\n .form-control {\n padding: 1rem 1rem 1rem 4rem;\n @media(max-width : 768px){\n padding: 1rem 1rem 1rem 3rem;\n }\n }\n }\n\n .mt-icon {\n position: absolute;\n top: 50%;\n left: 1.5rem;\n transform: translateY(-50%);\n @media(max-width : 768px){\n left: 1rem;\n }\n svg {\n font-size: 1.5rem;\n @media(max-width : 768px){\n font-size: 1rem;\n }\n }\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MaterialInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MaterialInput.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MaterialInput.vue?vue&type=template&id=50c732f7&scoped=true\"\nimport script from \"./MaterialInput.vue?vue&type=script&lang=js\"\nexport * from \"./MaterialInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./MaterialInput.vue?vue&type=style&index=0&id=50c732f7&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"50c732f7\",\n null\n \n)\n\nexport default component.exports","<template>\n <div v-if=\"customer\">\n <b-row v-if=\"!hideTitle\">\n <b-col>\n <b-row>\n <b-col sm=\"7\" cols=\"12\">\n <h2 v-if=\"isClaim && !isTicketFieldsAsked\">{{ $t('customer_form_click_on_claim_button') }}</h2>\n <h2 v-else>{{ $t('customer_form_title') }}</h2>\n </b-col>\n <b-col v-if=\"isClaim && isTicketFieldsAsked && orderCustomer\" sm=\"5\" cols=\"12\" id=\"copy-data-link\">\n <a @click=\"copyOrderCustomer\" href=\"javascript:\">{{ $t('ticket_claim_copy_order_data') }}</a>\n </b-col>\n </b-row>\n <span v-if=\"message\">{{ message }}<br><br></span>\n </b-col>\n </b-row>\n <b-row>\n <b-col v-if=\"customerFields.indexOf('company_name') !== -1\">\n <MaterialInput v-model=\"customer.company_name\"\n :label=\"(mandatoryFields.indexOf('company_name') !== -1) ? $t('customer_company_name') + '*' : $t('customer_company_name')\"\n :state=\"validated ? errors.indexOf('company_name') === -1 : null\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n />\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('first_name') !== -1\">\n <MaterialInput v-model=\"customer.first_name\"\n :label=\"(mandatoryFields.indexOf('first_name') !== -1) ? $t('customer_first_name') + '*' : $t('customer_first_name')\"\n :state=\"validated ? errors.indexOf('first_name') === -1 : null\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n >\n <template #icon>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20.933\" height=\"23.668\" viewBox=\"0 0 20.933 23.668\">\n <g id=\"Icon_akar-person\" data-name=\"Icon akar-person\" transform=\"translate(-3.895 -2)\">\n <path id=\"Path_152\" data-name=\"Path 152\" d=\"M21.334,8.417A5.417,5.417,0,1,1,15.917,3a5.417,5.417,0,0,1,5.417,5.417Z\" transform=\"translate(-1.556)\" fill=\"none\" stroke=\"#0a2336\" stroke-width=\"2\"/>\n <path id=\"Path_153\" data-name=\"Path 153\" d=\"M19.778,21h.381a3.25,3.25,0,0,1,3.224,2.847l.424,3.384a2.167,2.167,0,0,1-2.151,2.435H7.066a2.167,2.167,0,0,1-2.151-2.435l.423-3.384A3.25,3.25,0,0,1,8.564,21h.38\" transform=\"translate(0 -4.999)\" fill=\"none\" stroke=\"#0a2336\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"/>\n </g>\n </svg>\n </template>\n </MaterialInput>\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('last_name') !== -1\">\n <MaterialInput v-model=\"customer.last_name\"\n :label=\"(mandatoryFields.indexOf('last_name') !== -1) ? $t('customer_last_name') + '*' : $t('customer_last_name')\"\n :state=\"validated ? errors.indexOf('last_name') === -1 : null\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n >\n <template #icon>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20.933\" height=\"23.668\" viewBox=\"0 0 20.933 23.668\">\n <g id=\"Icon_akar-person\" data-name=\"Icon akar-person\" transform=\"translate(-3.895 -2)\">\n <path id=\"Path_152\" data-name=\"Path 152\" d=\"M21.334,8.417A5.417,5.417,0,1,1,15.917,3a5.417,5.417,0,0,1,5.417,5.417Z\" transform=\"translate(-1.556)\" fill=\"none\" stroke=\"#0a2336\" stroke-width=\"2\"/>\n <path id=\"Path_153\" data-name=\"Path 153\" d=\"M19.778,21h.381a3.25,3.25,0,0,1,3.224,2.847l.424,3.384a2.167,2.167,0,0,1-2.151,2.435H7.066a2.167,2.167,0,0,1-2.151-2.435l.423-3.384A3.25,3.25,0,0,1,8.564,21h.38\" transform=\"translate(0 -4.999)\" fill=\"none\" stroke=\"#0a2336\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"/>\n </g>\n </svg>\n </template>\n </MaterialInput>\n </b-col>\n </b-row>\n\n\n <b-row v-if=\"customerFields.indexOf('address') !== -1\">\n <b-col sm=\"12\" md=\"6\">\n <MaterialInput v-model=\"customer.address\"\n :label=\"(mandatoryFields.indexOf('address') !== -1) ? $t('customer_address') + '*' : $t('customer_address')\"\n :state=\"validated ? errors.indexOf('address') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n />\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('address') !== -1\">\n <MaterialInput v-model=\"customer.house_nr\"\n :label=\"(mandatoryFields.indexOf('address') !== -1) ? $t('customer_house_nr') + '*' : $t('customer_house_nr')\"\n :state=\"validated ? errors.indexOf('address') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n />\n </b-col>\n </b-row>\n\n\n \n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('zip') !== -1\">\n <MaterialInput v-model=\"customer.zip\"\n :label=\"(mandatoryFields.indexOf('zip') !== -1) ? $t('customer_zip') + '*' : $t('customer_zip')\"\n :state=\"validated ? errors.indexOf('zip') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n />\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('city') !== -1\">\n <MaterialInput v-model=\"customer.city\"\n :label=\"(mandatoryFields.indexOf('city') !== -1) ? $t('customer_city') + '*' : $t('customer_city')\"\n :state=\"validated ? errors.indexOf('city') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"\n />\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('phone') !== -1\">\n <MaterialInput v-model=\"customer.phone\"\n :label=\"(mandatoryFields.indexOf('phone') !== -1) ? $t('customer_phone') + '*' : $t('customer_phone')\"\n :state=\"validated ? errors.indexOf('phone') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"reValidate()\"/>\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('country') !== -1\">\n <b-form-group\n :label=\"(mandatoryFields.indexOf('country') !== -1) ? $t('customer_country') + '*' : $t('customer_country')\">\n <b-form-select text-field=\"label\" value-field=\"id\" :options=\"countries\" :disabled=\"disabled\"\n v-model=\"customer.country\"\n @change=\"reValidate()\"\n :state=\"validated ? errors.indexOf('country') === -1 : null\">\n </b-form-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('gender') !== -1\">\n <b-form-group\n :label=\"(mandatoryFields.indexOf('gender') !== -1) ? $t('customer_gender') + '*' : $t('customer_gender')\">\n <b-form-radio-group :options=\"genders\"\n :disabled=\"disabled\" v-model=\"customer.gender\"\n @change=\"reValidate()\"\n :state=\"validated ? errors.indexOf('gender') === -1 : null\">\n <b-form-invalid-feedback :state=\"validated ? errors.indexOf('gender') === -1 : null\">\n {{ $t('errors_please_select') }}\n </b-form-invalid-feedback>\n </b-form-radio-group>\n </b-form-group>\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('dob') !== -1\">\n <b-form-group\n :label=\"(mandatoryFields.indexOf('dob') !== -1) ? $t('customer_dob') + '* (' + $t('date_format') + ')' : $t('customer_dob') + ' (' + $t('date_format') + ')'\">\n <b-form-select class=\"dob-select day\" text-field=\"label\" value-field=\"id\" :options=\"days\" :disabled=\"disabled\"\n v-model=\"tmp_dob.day\"\n @change=\"reValidate()\"\n :state=\"validated ? errors.indexOf('dob') === -1 : null\">\n </b-form-select>\n <b-form-select class=\"dob-select month\" text-field=\"label\" value-field=\"id\" :options=\"months\" :disabled=\"disabled\"\n v-model=\"tmp_dob.month\"\n @change=\"reValidate()\"\n :state=\"validated ? errors.indexOf('dob') === -1 : null\">\n </b-form-select>\n <b-form-select class=\"dob-select year\" text-field=\"label\" value-field=\"id\" :options=\"years\" :disabled=\"disabled\"\n v-model=\"tmp_dob.year\"\n @change=\"reValidate()\"\n :state=\"validated ? errors.indexOf('dob') === -1 : null\">\n </b-form-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('email') !== -1\">\n <MaterialInput v-model=\"customer.email\"\n :label=\"(mandatoryFields.indexOf('email') !== -1) ? $t('customer_email') + '*' : $t('customer_email')\"\n :state=\"validated ? errors.indexOf('email') === -1 : null\"\n :disabled=\"disabled\"\n @input=\"$emit('change')\"\n @change=\"checkEmail()\">\n <template #icon>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20\" width=\"20\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\"M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z\"/></svg>\n </template>\n </MaterialInput>\n <p v-if=\"emailSuggestion\" class=\"mt-2\">\n {{ $t('customer_email_suggestion', emailSuggestion) }}\n <b-button variant=\"success\" size=\"xs\" class=\"p-1\"\n @click=\"customer.email = emailSuggestion.full;emailSuggestion = null\">\n {{ $t('yes') }}\n </b-button>\n <b-button variant=\"danger\" size=\"xs\" class=\"p-1 ml-2\" @click=\"emailSuggestion = null\">\n {{ $t('no') }}\n </b-button>\n </p>\n </b-col>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('email_confirmation') !== -1\">\n <MaterialInput v-model=\"customer.email_confirmation\"\n :label=\"$t('email_confirmation') + (mandatoryFields.indexOf('email_confirmation') !== -1 ? '*' : '')\"\n :state=\"validated ? errors.indexOf('email_confirmation') === -1 : null\"\n :disabled=\"disabled\"\n @change=\"checkEmail();$emit('change')\"\n @paste=\"onConfirmationPaste\">\n <template #icon>\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"20\" width=\"20\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\"M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z\"/></svg>\n </template>\n </MaterialInput>\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\" v-if=\"customerFields.indexOf('optin') !== -1\">\n <b-form-group>\n <b-form-checkbox v-if=\"fields && fields[0] && fields[0].company_id == 33\" :disabled=\"disabled\" v-model=\"customer.optin\">{{ $t('customer_optin_iams') }}\n </b-form-checkbox>\n <b-form-checkbox v-if=\"fields && fields[0] && fields[0].company_id != 33\" :disabled=\"disabled\" v-model=\"customer.optin\">{{ $t('customer_optin') }}\n </b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n \n </div>\n</template>\n<script>\nimport mailcheck from 'mailcheck'\nimport moment from 'moment'\nimport MaterialInput from '@/components/MaterialInput'\n\nexport default {\n props: ['value', 'fields', 'level', 'disabled', 'message', 'isClaim', 'orderCustomer', 'hideTitle'],\n data() {\n return {\n errors: [],\n days: [],\n months: [],\n years: [],\n validated: false,\n countries: [\n {id: 'DE', label: this.$t('country_de')},\n {id: 'NL', label: this.$t('country_nl')},\n {id: 'ES', label: this.$t('country_es')},\n {id: 'BE', label: this.$t('country_be')},\n ],\n genders: [\n {value: 'm', text: this.$t('customer_gender_male')},\n {value: 'f', text: this.$t('customer_gender_female')},\n {value: 'o', text: this.$t('customer_gender_other')}\n ],\n customer: {},\n emailSuggestion: null,\n tmp_dob: {\n day: null,\n month: null,\n year: null\n },\n email_confirmation_error: false\n }\n },\n created(){\n for(let i=1;i<=31;i++){\n let a = i\n if(a.toString().length == 1){ a = '0' + a }\n this.days.push(a)\n }\n for(let i=1;i<=12;i++){\n let a = i\n if(a.toString().length == 1){ a = '0' + a }\n this.months.push(a)\n }\n for(let i=new Date().getFullYear();i>=new Date().getFullYear()-130;i--){\n this.years.push(i)\n }\n },\n methods: {\n formatDob(){\n if( this.customer && this.customer.dob ){\n let date = this.customer.dob.split(' ')[0].split('-')\n if(date){\n this.tmp_dob = {\n day: date[2],\n month: date[1],\n year: date[0]\n }\n }\n }\n },\n checkEmail() {\n this.customer.email = this.customer.email.trim()\n this.reValidate()\n mailcheck.run({\n email: this.customer.email,\n suggested: (suggestion) => {\n this.emailSuggestion = suggestion\n }\n })\n },\n validateDob(){\n if(!this.tmp_dob.day || !this.tmp_dob.month || !this.tmp_dob.year){\n this.errors.push('dob')\n }\n if(this.tmp_dob.day && this.tmp_dob.month && this.tmp_dob.year){\n this.customer.dob = this.tmp_dob.year + '-' + this.tmp_dob.month + '-' + this.tmp_dob.day\n }\n const date = `${this.tmp_dob.year}-${this.tmp_dob.month}-${this.tmp_dob.day}`;\n\n if(moment(moment().format('YYYY-MM-DD')).diff(date) <= 0) {\n this.errors.push('dob')\n }\n },\n validateEmail( email ){\n if(email == null){ return null }\n return email.toLowerCase().match(/^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/)\n },\n validateCity(isMandatory) {\n if(!this.customer.city && isMandatory) {\n return null;\n }\n if(!this.customer.city){\n return\n }\n this.customer.city = this.customer.city[0].toUpperCase() + this.customer.city.slice(1).toLowerCase();\n return this.customer.city.match(/^[\\p{So}\\p{Mn}\\p{P}\\p{Z}À-ÿa-zA-Z]+$/u)\n },\n validate() {\n this.validated = true\n this.errors = []\n this.email_confirmation_error = false;\n this.fields.forEach(customerField => {\n let f = customerField.field\n\n \n\n if(this.customer[f]){\n this.customer[f] = typeof this.customer[f] === 'string' ? this.customer[f].trim() : this.customer[f]\n }\n\n if( f === 'dob' && this.tmp_dob.day || this.tmp_dob.month || this.tmp_dob.year ){\n this.validateDob()\n }\n\n if(f === 'city') {\n if (this.validateCity(customerField.order_mandatory && this.level === 'order') === null) {\n this.errors.push(f);\n }\n\n if (this.validateCity(customerField.ticket_mandatory && this.level === 'ticket') === null) {\n this.errors.push(f);\n }\n }\n\n if (!customerField.order_mandatory && this.level === 'order') {\n return\n }\n if (!customerField.ticket_mandatory && this.level === 'ticket') {\n return\n }\n \n if(f === 'dob'){\n this.validateDob()\n } else if (!this.customer[f] && !this.customer[f].length <= 1) {\n this.errors.push(f)\n } else {\n if (this.customer[f].length === 0) {\n this.errors.push(f)\n }\n else if (f === 'email') {\n if( this.validateEmail(this.customer[f]) === null){\n this.errors.push(f)\n }\n }\n else if(f === 'email_confirmation') {\n if( this.validateEmail(this.customer[f]) === null){\n this.errors.push(f)\n }\n if(this.customer.email && this.customer.email !== this.customer.email_confirmation) {\n this.email_confirmation_error = true;\n this.errors.push(f);\n }\n }\n }\n\n })\n },\n reValidate() {\n this.$emit('change');\n if (this.validated && !this.isValid) {\n this.validate()\n }\n },\n reset() {\n this.errors = []\n this.validated = false\n },\n isValid() {\n this.validate()\n const date = `${this.tmp_dob.year}-${this.tmp_dob.month}-${this.tmp_dob.day}`;\n \n if( this.tmp_dob.year && this.tmp_dob.month && this.tmp_dob.day && moment(moment().format('YYYY-MM-DD')).diff(date) <= 0) {\n this.$store.commit('errors', [this.$t('birth_date_must_be_past')])\n return\n }\n return this.validated && this.errors.length === 0\n },\n copyOrderCustomer() {\n if(!this.isClaim || !this.orderCustomer) {\n return;\n }\n for(const field of this.fields) {\n if(field.ticket_ask) {\n if(this.orderCustomer[field.field]) {\n this.customer[field.field] = this.orderCustomer[field.field]\n }\n else if(this.orderCustomer.address && this.orderCustomer.address[field.field]) {\n this.customer[field.field] = this.orderCustomer.address[field.field];\n }\n if(field.field === 'email') {\n this.checkEmail();\n }\n }\n }\n this.$forceUpdate();\n },\n onConfirmationPaste(e) {\n e.preventDefault();\n }\n },\n computed: {\n customerFields() {\n if (!this.fields) {\n return []\n }\n return this.fields.filter(customerField => {\n if (this.level === 'order') {\n return customerField.order_ask\n }\n if (this.level === 'ticket') {\n return customerField.ticket_ask\n }\n return false\n }).map((customerField) => {\n return customerField.field\n })\n },\n mandatoryFields() {\n if (!this.fields) {\n return []\n }\n return this.fields.filter(mandatoryField => {\n if (this.level === 'order' && mandatoryField.order_ask) {\n return mandatoryField.order_mandatory\n }\n if (this.level === 'ticket' && mandatoryField.ticket_ask) {\n return mandatoryField.ticket_mandatory\n }\n return false\n }).map((mandatoryField) => {\n return mandatoryField.field\n })\n },\n isTicketFieldsAsked() {\n return this.fields.some(f => f.ticket_ask);\n }\n },\n watch: {\n customer() {\n this.$emit('input', this.customer)\n },\n value() {\n this.customer = this.value\n this.formatDob()\n },\n tmp_dob: {\n deep: true,\n handler () {\n if (this.tmp_dob.day && this.tmp_dob.month && this.tmp_dob.year) {\n this.customer.dob = this.tmp_dob.year + '-' + this.tmp_dob.month + '-' + this.tmp_dob.day\n } else {\n this.customer.dob = null\n }\n }\n }\n },\n mounted() {\n this.customer = this.value\n this.formatDob()\n },\n components: {\n MaterialInput\n }\n}\n</script>\n<style scoped lang=\"scss\">\n h2{\n font-size:1.5rem;\n font-weight:bold;\n margin-bottom:20px\n }\n #copy-data-link{\n text-align:right\n }\n .dob-select{\n float:left\n }\n .dob-select.day, .dob-select.month{\n width:80px;\n margin-right:10px\n }\n .dob-select.year{\n width:100px\n }\n @media screen and (max-width: 768px) {\n .dob-select.day, .dob-select.month{\n width:47%\n }\n .dob-select.month{\n margin-right:0px\n }\n .dob-select.year{\n width:100%\n }\n .dob-select.day, .dob-select.month{\n margin-bottom:10px\n }\n }\n @media screen and (max-width: 578px) {\n #copy-data-link{\n text-align:left;\n margin-bottom:15px\n }\n }\n @media screen and (max-width: 420px) {\n .dob-select.day, .dob-select.month{\n width:100%;\n margin-right:0\n }\n }\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerForm.vue?vue&type=template&id=7957de7d&scoped=true\"\nimport script from \"./CustomerForm.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerForm.vue?vue&type=style&index=0&id=7957de7d&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7957de7d\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',_vm._l((_vm.questions),function(question){return _c('b-row',{key:`q` + question.id,staticClass:\"additional-questions\"},[_c('b-col',[(question.question_type === 'input')?_c('MaterialInput',{attrs:{\"label\":(question.mandatory) ? question.question + '*' : question.question,\"state\":_vm.validated ? _vm.errors.indexOf(question.id) === -1 : null,\"disabled\":_vm.disabled},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.answers[question.id]),callback:function ($$v) {_vm.$set(_vm.answers, question.id, $$v)},expression:\"answers[question.id]\"}}):_c('b-form-group',{attrs:{\"label\":(question.mandatory) ? question.question + '*' : question.question}},[(question.question_type === 'select')?_c('b-select',{attrs:{\"disabled\":_vm.disabled,\"options\":question.answers,\"state\":_vm.validated ? _vm.errors.indexOf(question.id) === -1 : null,\"text-field\":\"answer\",\"value-field\":\"answer\"},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.answers[question.id]),callback:function ($$v) {_vm.$set(_vm.answers, question.id, $$v)},expression:\"answers[question.id]\"}}):_vm._e(),(question.question_type === 'checkboxes')?_c('b-form-checkbox-group',{attrs:{\"disabled\":_vm.disabled,\"options\":question.answers,\"state\":_vm.validated ? _vm.errors.indexOf(question.id) === -1 : null,\"text-field\":\"answer\",\"value-field\":\"answer\"},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.answers[question.id]),callback:function ($$v) {_vm.$set(_vm.answers, question.id, $$v)},expression:\"answers[question.id]\"}}):_vm._e(),(question.question_type === 'radio-buttons')?_c('b-form-radio-group',{attrs:{\"disabled\":_vm.disabled,\"state\":_vm.validated ? _vm.errors.indexOf(question.id) === -1 : null,\"options\":question.answers,\"text-field\":\"answer\",\"value-field\":\"answer\"},on:{\"change\":function($event){return _vm.reValidate()}},model:{value:(_vm.answers[question.id]),callback:function ($$v) {_vm.$set(_vm.answers, question.id, $$v)},expression:\"answers[question.id]\"}},[_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.validated ? _vm.errors.indexOf(question.id) === -1 : null}},[_vm._v(\" \"+_vm._s(_vm.$t('errors_please_select'))+\" \")])],1):_vm._e()],1)],1)],1)}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row v-for=\"question in questions\" :key=\"`q` + question.id\" class=\"additional-questions\">\n <b-col>\n <MaterialInput\n v-if=\"question.question_type === 'input'\"\n v-model=\"answers[question.id]\"\n :label=\"(question.mandatory) ? question.question + '*' : question.question\"\n :state=\"validated ? errors.indexOf(question.id) === -1 : null\"\n :disabled=\"disabled\"\n @change=\"reValidate()\"/>\n <b-form-group v-else :label=\"(question.mandatory) ? question.question + '*' : question.question\">\n <b-select v-if=\"question.question_type === 'select'\"\n :disabled=\"disabled\"\n v-model=\"answers[question.id]\"\n :options=\"question.answers\"\n :state=\"validated ? errors.indexOf(question.id) === -1 : null\"\n @change=\"reValidate()\"\n text-field=\"answer\"\n value-field=\"answer\"></b-select>\n <b-form-checkbox-group v-if=\"question.question_type === 'checkboxes'\"\n :disabled=\"disabled\"\n v-model=\"answers[question.id]\"\n :options=\"question.answers\"\n :state=\"validated ? errors.indexOf(question.id) === -1 : null\"\n @change=\"reValidate()\"\n text-field=\"answer\"\n value-field=\"answer\"></b-form-checkbox-group>\n <b-form-radio-group v-if=\"question.question_type === 'radio-buttons'\"\n :disabled=\"disabled\"\n v-model=\"answers[question.id]\"\n :state=\"validated ? errors.indexOf(question.id) === -1 : null\"\n @change=\"reValidate()\"\n :options=\"question.answers\"\n text-field=\"answer\"\n value-field=\"answer\">\n <b-form-invalid-feedback :state=\"validated ? errors.indexOf(question.id) === -1 : null\">\n {{ $t('errors_please_select') }}\n </b-form-invalid-feedback>\n </b-form-radio-group>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n</template>\n<script>\nimport MaterialInput from './MaterialInput.vue';\n\nexport default {\n components: {MaterialInput},\n props: ['value', 'questions', 'disabled'],\n data() {\n return {\n errors: [],\n validated: false,\n answers: {}\n }\n },\n methods: {\n validate() {\n this.validated = true\n this.errors = []\n this.questions.forEach(question => {\n if(question.mandatory){\n let f = question.id\n if (!this.answers[f]) {\n this.errors.push(f)\n } else {\n if (this.answers[f].length === 0) {\n this.errors.push(f)\n }\n }\n }\n })\n },\n reValidate() {\n if (this.validated && !this.isValid) {\n this.validate()\n }\n },\n reset() {\n this.errors = []\n this.validated = false\n },\n isValid() {\n this.validate()\n return this.validated && this.errors.length === 0\n },\n },\n watch: {\n answers() {\n this.$emit('input', this.answers)\n },\n value() {\n this.answers = this.value\n }\n },\n mounted() {\n this.answers = this.value\n }\n}\n</script>\n<style>\n@media(max-width:992px){\n .additional-questions .form-group{\n font-size:12px!important\n }\n}\n.additional-questions .custom-control-label{\n display: flex;\n align-items: center;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerInformationForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerInformationForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerInformationForm.vue?vue&type=template&id=e967ad52\"\nimport script from \"./CustomerInformationForm.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerInformationForm.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerInformationForm.vue?vue&type=style&index=0&id=e967ad52&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <b-container v-if=\"ticket\">\n <b-row>\n <b-col class=\"content-block\">\n <customer-form :disabled=\"sending\" ref=\"customer-form\" v-if=\"fields && ticket\" v-model=\"ticket.customer\" level=\"ticket\"\n :fields=\"fields\" :message=\"message\" :is-claim=\"true\" :order-customer=\"ticket.order.customer\"></customer-form>\n <customer-information-form :disabled=\"sending\" ref=\"customer-information-form\" v-model=\"answers\"\n :questions=\"questions\"></customer-information-form>\n <b-form-group class=\"text-center\">\n <b-spinner v-if=\"sending\"></b-spinner>\n <b-btn v-else variant=\"success\" @click=\"submit()\" size=\"lg\">{{ $t('ticket_claim') }}</b-btn>\n </b-form-group>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport CustomerForm from '../components/CustomerForm'\nimport CustomerInformationForm from \"@/components/CustomerInformationForm\";\n\nexport default {\n components: {\n CustomerForm,\n CustomerInformationForm\n },\n data() {\n return {\n ticket: null,\n questions: [],\n answers: {},\n fields: null,\n sending: false,\n message: '',\n order_number: null,\n order_secret: null\n }\n },\n methods: {\n loadAnswers(answers) {\n console.log('Loading answers')\n answers.forEach(answer => {\n\n this.answers[answer.customer_information_id] = answer.answer\n console.log(this.answers)\n })\n if (answers.length === 0) {\n this.answers = {}\n }\n },\n submit() {\n\n let customerValid = this.$refs['customer-form'].isValid();\n let customerInfoValid = this.$refs['customer-information-form'].isValid();\n if (!customerValid || !customerInfoValid) {\n return\n }\n this.sending = true\n\n api.ticket().updateCustomer(this.$route.params.id, this.$route.params.secret, this.ticket.customer).then(ticket => {\n this.ticket = ticket\n\n api.customerInformation().submit(this.$route.params.id, this.$route.params.secret, this.answers).then(this.loadAnswers).catch(() => {\n this.sending = false\n })\n }).then(() => {\n api.ticket().claim(this.$route.params.id, this.$route.params.secret).then(() => {\n if (this.$route.query.change) {\n this.$router.push({\n name: 'TicketChanged'\n })\n return\n }\n this.$router.push({\n name: 'OrderThankYou',\n query: {\n order_number: this.order_number,\n order_secret: this.order_secret\n }\n })\n })\n }).catch(() => {\n this.sending = false\n })\n }\n },\n created() {\n api.ticket().getBySecret(this.$route.params.id, this.$route.params.secret).then(ticket => {\n if(ticket.order.order_number){\n this.order_number = ticket.order.order_number\n }\n if(ticket.order.secret){\n this.order_secret = ticket.order.secret\n }\n if(!ticket.customer){\n ticket.customer = {}\n }\n this.ticket = ticket\n if(ticket.invited_at && !ticket.claimed_at && ticket.order.event){\n this.message = this.$t('ticket_assigned_explenation', {customer_first_name: ticket.order.customer.first_name, event_name: ticket.order.event.name})\n }\n if(this.ticket.order.point_of_sale) {\n this.$store.commit('setPos', this.ticket.order.point_of_sale)\n // this.$store.commit('setLanguage', this.ticket.order.point_of_sale.language)\n }\n })\n api.customerInformation().getAnswersByTicket(this.$route.params.id, this.$route.params.secret).then(this.loadAnswers)\n api.customerInformation().getByTicket(this.$route.params.id, this.$route.params.secret).then((questions) => {\n this.questions = questions\n })\n api.customerInformation().getFieldsByTicket(this.$route.params.id, this.$route.params.secret).then((fields) => {\n this.fields = fields\n })\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClaimTicket.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ClaimTicket.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ClaimTicket.vue?vue&type=template&id=3d9739ad\"\nimport script from \"./ClaimTicket.vue?vue&type=script&lang=js\"\nexport * from \"./ClaimTicket.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[_c('b-row',[_c('b-col',[_c('h1',[_vm._v(_vm._s(_vm.$t('ticket_claimed')))])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container>\n <b-row>\n <b-col>\n <h1>{{ $t('ticket_claimed') }}</h1>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nexport default {\n components: {\n },\n data() {\n return {}\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketClaimed.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketClaimed.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TicketClaimed.vue?vue&type=template&id=51acb1b8\"\nimport script from \"./TicketClaimed.vue?vue&type=script&lang=js\"\nexport * from \"./TicketClaimed.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"p-0\"},[(_vm.$store.state.pos)?_c('router-link',{staticClass:\"text-white mb-3 d-block back-btn\",attrs:{\"to\":{name: _vm.hasTimeslots ? 'OrderSelectTimeslot' : 'ViewPointOfSale', params: {url: _vm.$store.state.pos.url}, query: _vm.backQuery}}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back')))],1):_vm._e(),(_vm.order && _vm.pos && !_vm.saving)?_c('div',[(_vm.order && _vm.order.event && _vm.order.event.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.order.event.gtm_id}}):_vm._e(),_c('div',{staticClass:\"content-block cart-container personal-details-header header-padding\"},[_c('b-row',[_c('b-col',[_c('h1',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_personal_details')))]),_c('label',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_personal_details_complete_purchase')))])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-end\",attrs:{\"cols\":\"3\"}},[(_vm.order)?_c('order-timer',{attrs:{\"order\":_vm.order}}):_vm._e()],1)],1)],1),(_vm.order)?_c('div',{staticClass:\"content-block cart-container personal-details-container\"},[(_vm.loadingDone)?_c('customer-form',{ref:\"form\",attrs:{\"level\":\"order\",\"fields\":_vm.customerFields,\"hideTitle\":true},on:{\"change\":_vm.customerChanged},model:{value:(_vm.customer),callback:function ($$v) {_vm.customer=$$v},expression:\"customer\"}}):_vm._e(),_c('customer-information-form',{ref:\"customer-information-form\",attrs:{\"questions\":_vm.questions},model:{value:(_vm.answers),callback:function ($$v) {_vm.answers=$$v},expression:\"answers\"}}),_c('b-row',[_c('b-col',{staticClass:\"pos-terms\"},[(_vm.pos.terms_conditions_url && _vm.pos.terms_conditions_url !== '')?_c('span',{staticClass:\"terms-conditions-text\",domProps:{\"innerHTML\":_vm._s(_vm.$t('cart_terms_conditions2', {url: 'https://' + _vm.pos.company.domain + '/terms-conditions', url2: _vm.pos.terms_conditions_url, name: _vm.pos.company.name}))}}):_c('span',{staticClass:\"terms-conditions-text\",domProps:{\"innerHTML\":_vm._s(_vm.$t('cart_terms_conditions', {url: 'https://' + _vm.pos.company.domain + '/terms-conditions'}))}})])],1)],1):_vm._e(),_c('PosCartPlaceOrder',{attrs:{\"disabled\":!_vm.isCustomerFilled},on:{\"continue\":function($event){return _vm.processOrder()}}})],1):_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('p',{staticClass:\"mb-0 order-timer pos-primary-color\"},[_c('b-icon',{attrs:{\"icon\":\"clock\"}}),_vm._v(\" \"+_vm._s(_vm.timeLeft)+\" \")],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <p class=\"mb-0 order-timer pos-primary-color\">\n <b-icon icon=\"clock\"></b-icon> {{ timeLeft }}\n </p>\n</template>\n<script>\nimport moment from \"moment\";\n\nexport default {\n props: ['order'],\n data() {\n return {\n timeLeft: null,\n timeout: null\n }\n },\n methods: {\n updateTimer() {\n let diffSeconds = moment(this.order.expires_at).diff(moment(), 'seconds')\n let minutes = Math.floor(diffSeconds / 60)\n let seconds = diffSeconds - minutes * 60\n\n if (diffSeconds <= 0) {\n this.$store.commit('errors', ['order_expired']);\n return;\n }\n\n if (seconds < 10) {\n seconds = '0' + seconds\n }\n\n this.timeLeft = minutes + ':' + seconds\n this.timeout = setTimeout(this.updateTimer, 1000)\n }\n },\n created() {\n this.updateTimer()\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n.order-timer {\n font-size: 16px !important;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderTimer.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderTimer.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderTimer.vue?vue&type=template&id=3cfd26eb&scoped=true\"\nimport script from \"./OrderTimer.vue?vue&type=script&lang=js\"\nexport * from \"./OrderTimer.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderTimer.vue?vue&type=style&index=0&id=3cfd26eb&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3cfd26eb\",\n null\n \n)\n\nexport default component.exports","<template>\n <b-container class=\"p-0\">\n <router-link v-if=\"$store.state.pos\" :to=\"{name: hasTimeslots ? 'OrderSelectTimeslot' : 'ViewPointOfSale', params: {url: $store.state.pos.url}, query: backQuery}\" class=\"text-white mb-3 d-block back-btn\"><b-icon icon=\"arrow-left\"></b-icon> {{ $t('back') }}</router-link>\n <div v-if=\"order && pos && !saving\">\n \n <gtm-page-view v-if=\"order && order.event && order.event.gtm_id\" :gtm_id=\"order.event.gtm_id\"></gtm-page-view>\n\n <div class=\"content-block cart-container personal-details-header header-padding\">\n <b-row>\n <b-col>\n <h1 class=\"mb-0\">{{ $t('pos_personal_details') }}</h1>\n <label class=\"mb-0\">{{ $t('pos_personal_details_complete_purchase') }}</label>\n </b-col>\n <b-col cols=\"3\" class=\"d-flex align-items-center justify-content-end\">\n <order-timer v-if=\"order\" :order=\"order\"></order-timer>\n </b-col>\n </b-row>\n </div>\n <div v-if=\"order\" class=\"content-block cart-container personal-details-container\">\n <customer-form v-if=\"loadingDone\" ref=\"form\" level=\"order\" v-model=\"customer\" :fields=\"customerFields\" :hideTitle=\"true\" @change=\"customerChanged\"></customer-form>\n <customer-information-form ref=\"customer-information-form\" v-model=\"answers\"\n :questions=\"questions\"></customer-information-form>\n <b-row>\n <b-col class=\"pos-terms\">\n <span v-if=\"pos.terms_conditions_url && pos.terms_conditions_url !== ''\" class=\"terms-conditions-text\" v-html=\"$t('cart_terms_conditions2', {url: 'https://' + pos.company.domain + '/terms-conditions', url2: pos.terms_conditions_url, name: pos.company.name})\"></span>\n <span v-else class=\"terms-conditions-text\" v-html=\"$t('cart_terms_conditions', {url: 'https://' + pos.company.domain + '/terms-conditions'})\"></span>\n </b-col>\n </b-row>\n </div>\n <PosCartPlaceOrder @continue=\"processOrder()\" :disabled=\"!isCustomerFilled\" />\n </div>\n <b-row v-else>\n <b-col class=\"text-center\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport { mapGetters, mapState } from 'vuex'\nimport CustomerForm from '@/components/CustomerForm'\nimport {deepClone, getLocalStorage, setLocalStorage, getCookie} from \"@/functions\";\nimport CustomerInformationForm from \"@/components/CustomerInformationForm.vue\";\nimport GtmPageView from \"@/components/GtmPageView.vue\";\nimport PosCartPlaceOrder from '@/components/PosCartPlaceOrder'\nimport OrderTimer from '@/components/OrderTimer.vue';\n\nexport default {\n components: {\n OrderTimer,\n CustomerInformationForm,\n CustomerForm,\n GtmPageView,\n PosCartPlaceOrder\n },\n data() {\n return {\n saving: false,\n customerFields: [],\n customer: {}, \n customQuestions: [],\n answers: {},\n loadingDone: false,\n cookieCategories: null,\n isCustomerFilled: false,\n }\n },\n methods: {\n processOrder() {\n if(this.order.payment_status === 'paid' || this.order.payment_status === 'pending') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n this.$store.commit('errors', [this.$t('order_already_paid')]);\n return;\n }\n\n this.$store.commit('errors', [])\n\n let customerValid = this.$refs['form'].isValid();\n let customerInformationValid = this.$refs['customer-information-form'].isValid();\n\n if (!customerValid || !customerInformationValid) {\n return\n }\n\n this.saving = true\n let order = Object.assign(this.order, {customer: this.customer})\n\n api.order().save(order).then((order) => {\n this.$store.commit('setOrder', order)\n\n const cookieCategories = getCookie(\"ft_cookieCategories\");\n if (cookieCategories) {\n let tmpCookieCategories = JSON.parse(cookieCategories);\n if(tmpCookieCategories.local_information){\n setLocalStorage('booker_first_name', this.customer.first_name);\n setLocalStorage('booker_last_name', this.customer.last_name);\n setLocalStorage('booker_email', this.customer.email);\n }\n }\n\n if (this.customQuestions.length > 0) {\n api.customerInformation().submitByOrder(this.order.id, this.order.secret, this.answers).then(() => {})\n }\n const route = this.posHasCrossSell ? 'OrderAdditionalProducts' : 'OrderSelectPaymentMethod';\n if(this.campaign) {\n this.$router.push({name: route, params: this.$route.params, query: {ft_campaign_name: this.campaign.slug}})\n }\n else {\n this.$router.push({name: route, params: this.$route.params})\n }\n }).catch((error) => {\n this.saving = false\n if(error?.response?.data[0]?.code === 'order_already_paid') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n return;\n }\n this.$store.commit('errors', ['error_try_again'])\n })\n },\n customerChanged() {\n let valid = true;\n this.customerFields.forEach(cf => {\n if (cf.order_mandatory) {\n if(!this.customer[cf.field] ||(!cf.field.includes('optin') && !this.customer[cf.field].length)) {\n valid = false;\n }\n }\n })\n this.questions.forEach(question => {\n if (question.mandatory && (this.answers[question.id] === undefined || this.answers[question.id] === '')) {\n valid = false;\n }\n })\n this.isCustomerFilled = valid;\n }\n },\n computed: {\n questions() {\n const products = deepClone(this.order.order_products).map(orderProduct => {\n return orderProduct.product_id;\n })\n return this.customQuestions.filter(question => {\n if(question.where_to_show === 'order') {\n if(question.show_at_specific_prod) {\n return question.products.some(product => {\n return products.includes(product.product_id);\n })\n }\n return true;\n }\n return false;\n });\n },\n backQuery() {\n if(this.campaign) {\n return {ft_campaign_name: this.campaign.slug, back: ''};\n }\n return {back: ''};\n },\n hasTimeslots() {\n if (!this.order || !this.order.event) {\n return false\n }\n return this.order.event.timeslots.length > 0 || (this.order.event.opening_hours && this.order.event.opening_hours.length > 0)\n },\n ...mapState(['order', 'pos', 'cart', 'campaign']),\n ...mapGetters(['posHasCrossSell'])\n },\n created() {\n if(document.body.contains(document.getElementById('company-header'))){\n document.getElementById(\"company-header\").scrollIntoView();\n }\n document.title = this.$t('pos_personal_details_title')\n \n let apiCallOne = api.customerInformation().getFieldsByOrder(this.$route.params.id, this.$route.params.secret).then((customerFields) => {\n this.customerFields = customerFields\n })\n api.customerInformation().getByOrder(this.$route.params.id, this.$route.params.secret).then((customQuestions) => {\n this.customQuestions = customQuestions\n })\n \n let apiCallTwo = api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n if (order.customer) {\n if(order.customer.address) {\n order.customer = Object.assign(order.customer, {...order.customer.address});\n }\n this.customer = order.customer\n } else {\n this.customer = {}\n }\n this.$store.commit('setOrder', order)\n })\n\n Promise.all([apiCallOne, apiCallTwo]).then(() => {\n this.customerFields.forEach((field) => {\n if( typeof this.customer[field.field] === 'undefined' && getLocalStorage('booker_' + field.field) !== null) {\n this.customer[field.field] = getLocalStorage('booker_' + field.field);\n }\n })\n this.loadingDone = true;\n })\n },\n watch: {\n customer: {\n deep: true,\n handler() {\n this.customerChanged();\n }\n },\n answers: {\n deep: true,\n handler() {\n this.customerChanged();\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.terms-conditions-text{\n font-size:12px;\n}\n.personal-details-header {\n border-radius: 10px 10px 0 0 !important;\n padding:42px 47px!important\n}\n\n.personal-details-header label {\n font-size: 16px !important;\n font-weight: bold !important;\n}\n.personal-details-container {\n border-radius: 0 0 10px 10px !important;\n margin-top: 1px !important;\n}\n@media only screen and (max-width: 992px) {\n .personal-details-container {\n padding: 17px !important;\n }\n}\n@media only screen and (max-width: 768px) {\n .personal-details-header label {\n font-size: 12px !important;\n }\n .personal-details-container > h2{\n font-size: 17px !important;\n }\n .terms-conditions-text{\n font-size:10px;\n }\n .personal-details-header {\n padding:17px!important\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderEnterPersonalDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderEnterPersonalDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderEnterPersonalDetails.vue?vue&type=template&id=28e8be0e&scoped=true\"\nimport script from \"./OrderEnterPersonalDetails.vue?vue&type=script&lang=js\"\nexport * from \"./OrderEnterPersonalDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderEnterPersonalDetails.vue?vue&type=style&index=0&id=28e8be0e&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28e8be0e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"p-0\"},[(_vm.order)?_c('router-link',{staticClass:\"back-btn text-white mb-3 d-block\",attrs:{\"to\":{name: 'ViewPointOfSale', params: {id: _vm.order.id, secret: _vm.order.secret}, query: _vm.backQuery}}},[_c('b-icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"arrow-left\"}}),_vm._v(_vm._s(_vm.$t('back')))],1):_vm._e(),(_vm.order && _vm.pos && !_vm.saving)?_c('div',[(_vm.order)?_c('div',[(_vm.order && _vm.order.event && _vm.order.event.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.order.event.gtm_id}}):_vm._e(),(_vm.timeslots && _vm.timeslots.length > 0)?[_c('h3',[_vm._v(_vm._s(_vm.$t('order_pick_timeslot')))]),_c('b-form-group',[_c('b-select',{attrs:{\"options\":_vm.timeslots,\"value-field\":\"id\",\"text-field\":\"label\"},model:{value:(_vm.timeslotId),callback:function ($$v) {_vm.timeslotId=$$v},expression:\"timeslotId\"}})],1),_c('div',{staticClass:\"text-right\"},[_c('b-button',{staticClass:\"mb-4\",attrs:{\"variant\":\"success\",\"size\":\"lg\"},on:{\"click\":function($event){return _vm.processOrder()}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_continue'))+\" \")])],1)]:_vm._e(),(_vm.openingHours.length > 0)?[_c('div',{staticClass:\"content-block cart-container timeslot-header header-padding\"},[_c('b-row',[_c('b-col',[_c('h1',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('shop_timeslot')))]),_c('label',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_timeslot_choose_the_time')))])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-end\",attrs:{\"cols\":\"3\"}},[(_vm.order)?_c('order-timer',{attrs:{\"order\":_vm.order}}):_vm._e()],1)],1)],1),_c('div',{staticClass:\"content-block cart-container timeslot-calendar\"},[_c('b-form-group',[_c('b-calendar',{attrs:{\"start-weekday\":1,\"block\":\"\",\"hide-header\":true,\"date-disabled-fn\":_vm.dateDisabled,\"date-info-fn\":_vm.dateInfo},on:{\"context\":_vm.getNewHours},model:{value:(_vm.pickedDate),callback:function ($$v) {_vm.pickedDate=$$v},expression:\"pickedDate\"}})],1),(_vm.pickedDate)?_c('b-form-group',{staticClass:\"order-pick-timeslot\"},[_c('b-label',[_vm._v(_vm._s(_vm.$t('order_pick_timeslot')))]),_c('b-form-radio-group',{model:{value:(_vm.selectedOption),callback:function ($$v) {_vm.selectedOption=$$v},expression:\"selectedOption\"}},[_c('b-row',{attrs:{\"id\":\"timeslot-container\"}},_vm._l((_vm.timeOptions),function(option){return _c('b-form-radio',{key:option.day + option.opens_at,staticClass:\"mb-3 timeslot-option\",class:(option.spots === 0 || (option.spots - option.spots_sold) < _vm.totalProductCount) ? 'disabled' : '',attrs:{\"value\":option,\"disabled\":option.spots === 0 || (option.spots - option.spots_sold) < _vm.totalProductCount}},[_vm._v(\" \"+_vm._s(option.opens_at)+\" - \"+_vm._s(option.closes_at)+\" \")])}),1)],1)],1):_vm._e()],1)]:_vm._e(),_c('PosCartPlaceOrder',{attrs:{\"disabled\":!_vm.selectedOption},on:{\"continue\":function($event){return _vm.makeTimeslotForSelectedOption()}}})],2):_vm._e()]):_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container class=\"p-0\">\n <router-link v-if=\"order\" :to=\"{name: 'ViewPointOfSale', params: {id: order.id, secret: order.secret}, query: backQuery}\" class=\"back-btn text-white mb-3 d-block\"><b-icon class=\"mr-1\" icon=\"arrow-left\"></b-icon>{{ $t('back') }}</router-link>\n <div v-if=\"order && pos && !saving\">\n <div v-if=\"order\">\n\n <gtm-page-view v-if=\"order && order.event && order.event.gtm_id\" :gtm_id=\"order.event.gtm_id\"></gtm-page-view>\n\n <template v-if=\"timeslots && timeslots.length > 0\">\n <h3>{{ $t('order_pick_timeslot') }}</h3>\n <b-form-group>\n <b-select v-model=\"timeslotId\" :options=\"timeslots\" value-field=\"id\" text-field=\"label\"></b-select>\n </b-form-group>\n <div class=\"text-right\">\n <b-button variant=\"success\" size=\"lg\" class=\"mb-4\" @click=\"processOrder()\">\n {{ $t('order_continue') }}\n </b-button>\n </div>\n </template>\n <template v-if=\"openingHours.length > 0\">\n <div class=\"content-block cart-container timeslot-header header-padding\">\n <b-row>\n <b-col>\n <h1 class=\"mb-0\">{{ $t('shop_timeslot') }}</h1>\n <label class=\"mb-0\">{{ $t('pos_timeslot_choose_the_time') }}</label>\n </b-col>\n <b-col cols=\"3\" class=\"d-flex align-items-center justify-content-end\">\n <order-timer v-if=\"order\" :order=\"order\"></order-timer>\n </b-col>\n </b-row>\n </div>\n <div class=\"content-block cart-container timeslot-calendar\">\n <b-form-group>\n <b-calendar :start-weekday=\"1\"\n block\n :hide-header=\"true\"\n :date-disabled-fn=\"dateDisabled\"\n :date-info-fn=\"dateInfo\"\n @context=\"getNewHours\"\n v-model=\"pickedDate\"\n ></b-calendar>\n </b-form-group>\n <b-form-group v-if=\"pickedDate\" class=\"order-pick-timeslot\">\n <b-label>{{$t('order_pick_timeslot')}}</b-label>\n <b-form-radio-group v-model=\"selectedOption\">\n <b-row id=\"timeslot-container\">\n <b-form-radio class=\"mb-3 timeslot-option\" :class=\"(option.spots === 0 || (option.spots - option.spots_sold) < totalProductCount) ? 'disabled' : ''\" :value=\"option\" :disabled=\"option.spots === 0 || (option.spots - option.spots_sold) < totalProductCount\" v-for=\"option in timeOptions\" :key=\"option.day + option.opens_at\">\n {{ option.opens_at }} - {{ option.closes_at }}\n <!-- ({{ option.spots_sold }} / {{ option.spots}}) -->\n </b-form-radio>\n </b-row>\n </b-form-radio-group>\n </b-form-group>\n </div>\n </template>\n\n <PosCartPlaceOrder :disabled=\"!selectedOption\" @continue=\"makeTimeslotForSelectedOption()\"/>\n </div>\n </div>\n <b-row v-else>\n <b-col class=\"text-center\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport moment from 'moment'\nimport {mapState} from 'vuex'\nimport GtmPageView from '@/components/GtmPageView'\nimport PosCartPlaceOrder from '@/components/PosCartPlaceOrder.vue';\nimport OrderTimer from '@/components/OrderTimer.vue';\n\nexport default {\n components: {\n OrderTimer,\n PosCartPlaceOrder,\n GtmPageView\n },\n data() {\n return {\n saving: false,\n timeslots: [],\n timeslotId: null,\n openingHours: [],\n pickedDate: null,\n selectedOption: null,\n totalProductCount: null\n }\n },\n methods: {\n getNewHours(context){\n let start = moment(context.activeYMD).startOf('month').format('YYYY-MM-DD')\n let end = moment(context.activeYMD).endOf('month').format('YYYY-MM-DD')\n api.openingHour().getByOrder(\n this.$route.params.id,\n this.$route.params.secret,\n start,\n end\n ).then(openingHours => {\n if (openingHours.length === 0) {\n // also no opening hours, let's redirect\n this.$router.push({\n name: 'OrderAdditionalProducts',\n params: this.$route.params\n })\n return\n }\n this.openingHours = openingHours\n })\n },\n dateDisabled(ymd) {\n return this.openingHours.filter(openingHour => {\n return openingHour.day === ymd\n }).length === 0\n },\n dateInfo(ymd) {\n let open = this.openingHours.filter(openingHour => {\n return openingHour.day === ymd\n }).length > 0\n\n return open ? 'table-success' : 'table-danger'\n },\n makeTimeslotForSelectedOption(){\n if(this.order.payment_status === 'paid' || this.order.payment_status === 'pending') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n this.$store.commit('errors', [this.$t('order_already_paid')]);\n return;\n }\n if(this.selectedOption){\n this.$store.commit('setCartTimeslot', this.selectedOption.day + ' ' + this.selectedOption.opens_at + ' - ' + this.selectedOption.closes_at) \n }\n if(!this.selectedOption.timeslot_id){\n api.openingHour().makeTimeslotForOrder(this.$route.params.id, this.$route.params.secret, this.selectedOption).then(timeslot => {\n this.timeslotId = timeslot.id\n this.processOrder()\n })\n } else {\n this.timeslotId = this.selectedOption.timeslot_id\n this.processOrder()\n }\n },\n processOrder() {\n this.saving = true\n let order = Object.assign(this.order, {timeslot_id: this.timeslotId})\n order.customer = null;\n if(order.payment_status === 'paid' || order.payment_status === 'pending') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n this.$store.commit('errors', [this.$t('order_already_paid')]);\n return;\n }\n api.order().save(order).then((order) => {\n this.$store.commit('setOrder', order)\n if(this.campaign) {\n this.$router.push({name: 'OrderEnterPersonalDetails', params: this.$route.params, query: {ft_campaign_name: this.campaign.slug}})\n }\n else {\n this.$router.push({name: 'OrderEnterPersonalDetails', params: this.$route.params})\n }\n }).catch((error) => {\n if(error?.response?.data[0]?.code === 'order_already_paid') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n }\n else {\n this.$store.commit('errors', ['error_try_again'])\n }\n this.saving = false\n })\n }\n },\n computed: {\n timeOptions(){\n if(!this.pickedDate) {\n return []\n }\n\n return this.openingHours.filter((openingHour) => {\n return this.pickedDate === openingHour.day\n })\n },\n backQuery() {\n if(this.campaign) {\n return {ft_campaign_name: this.campaign.slug};\n }\n return {};\n },\n ...mapState(['cart', 'event', 'order', 'pos', 'order', 'campaign'])\n },\n created() {\n document.title = this.$t('pos_timeslot_title')\n api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n this.$store.commit('setOrder', order)\n })\n\n let starts_at = moment().format('YYYY-MM-DD')\n let ends_at = moment().endOf('month').format('YYYY-MM-DD')\n\n api.openingHour().getByOrder(\n this.$route.params.id,\n this.$route.params.secret,\n starts_at,\n ends_at\n ).then(openingHours => {\n\n if(openingHours.length > 0 ) {\n this.openingHours = openingHours\n return\n }\n\n // Check if we have timeslots\n api.timeslot().getByOrder(this.$route.params.id, this.$route.params.secret).then((timeslots) => {\n if(this.timeslots.length === 0) {\n // also no timeslots, continue\n if(this.campaign) {\n this.$router.push({name: 'OrderEnterPersonalDetails', params: this.$route.params, query: {ft_campaign_name: this.campaign.slug}})\n }\n else {\n this.$router.push({name: 'OrderEnterPersonalDetails', params: this.$route.params})\n }\n return\n }\n this.timeslots = timeslots.map((timeslot) => {\n let start = moment(timeslot.starts_at)\n let end = moment(timeslot.ends_at)\n\n // Not same day, so print dates\n if (start.diff(end, 'days') !== 0) {\n timeslot.label = start.format('DD-MM HH:mm') + ' - ' + end.format('DD-MM HH:mm')\n } else {\n timeslot.label = start.format('HH:mm') + ' - ' + end.format('HH:mm')\n }\n\n return timeslot\n })\n })\n })\n\n if(this.cart){\n this.cart.products.forEach(p => {\n this.totalProductCount += p.amount\n })\n }\n\n }\n}\n</script>\n<style>\n.order-pick-timeslot{\n margin-bottom:0!important\n}\n.order-pick-timeslot > div{\n display:flex;\n align-items:center;\n gap:1rem;\n}\n.order-pick-timeslot .timeslot-option.custom-control{\n margin-bottom:0!important\n}\n@media(max-width:768px){\n .timeslot-calendar .b-calendar *{\n font-size:12px!important\n }\n .order-pick-timeslot > div b-label,.order-pick-timeslot .custom-control-label{\n font-size:12px\n }\n}\n</style>\n<style scoped>\n.header-padding{\n padding:35px!important\n}\n.timeslot-option.custom-control{\n padding-left:0px\n}\n.timeslot-option /deep/ .custom-control-label::before{\n visibility:hidden !important;\n}\n.timeslot-option /deep/ .custom-control-label{\n padding:10px\n}\n.timeslot-option /deep/ .custom-control-input+label{\n border:1px solid lightgrey;\n border-radius:5px;\n cursor:pointer\n}\n.timeslot-option.disabled /deep/ .custom-control-input+label{\n background-color:lightgrey;\n color:grey;\n cursor:default;\n border-color:lightgrey\n}\n.timeslot-option /deep/ .custom-control-input:checked+label{\n background-color:#28a745;\n color:#FFF;\n}\n.timeslot-option /deep/ .custom-control-input:checked+label::after{\n display:none\n}\n#timeslot-container{\n padding:0 15px\n}\n\n.timeslot-header {\n border-radius: 10px 10px 0 0 !important;\n padding:42px 47px!important\n}\n.timeslot-header h1 {\n color: #0A2336 !important;\n font-size: 32px !important;\n font-weight: bolder !important;\n}\n\n.timeslot-header label {\n color: #909090 !important;\n font-size: 16px !important;\n font-weight: bold !important;\n}\n.timeslot-calendar {\n border-radius: 0 0 10px 10px !important;\n margin-top: 1px !important;\n}\n@media (max-width:768px){\n .header-padding,.content-block,.timeslot-header{\n padding:20px!important\n }\n .timeslot-header h1 {\n font-size: 20px !important;\n }\n .timeslot-header label {\n font-size: 12px !important;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderSelectTimeslot.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderSelectTimeslot.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderSelectTimeslot.vue?vue&type=template&id=450e19a6&scoped=true\"\nimport script from \"./OrderSelectTimeslot.vue?vue&type=script&lang=js\"\nexport * from \"./OrderSelectTimeslot.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderSelectTimeslot.vue?vue&type=style&index=0&id=450e19a6&prod&lang=css\"\nimport style1 from \"./OrderSelectTimeslot.vue?vue&type=style&index=1&id=450e19a6&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"450e19a6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"p-0\"},[(_vm.order)?_c('router-link',{staticClass:\"text-white mb-3 d-block back-btn\",attrs:{\"to\":{name: _vm.posHasCrossSell ? 'OrderAdditionalProducts' : 'OrderEnterPersonalDetails', params: {id: _vm.order.id, secret: _vm.order.secret}, query: _vm.backQuery}}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back'))+\" \")],1):_vm._e(),(_vm.$route.query.payment_retry)?_c('b-row',[_c('b-col',[_c('b-alert',{attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('payment_failed')))])],1)],1):_vm._e(),(_vm.order && _vm.pos && !_vm.saving)?_c('b-row',{staticClass:\"align-items-center\"},[(_vm.order && _vm.order.event && _vm.order.event.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.order.event.gtm_id}}):_vm._e(),(_vm.order && _vm.cartTotal > 0)?_c('b-col',[_c('div',{staticClass:\"content-block cart-container cart-container-title payment-method-title header-padding\"},[_c('b-row',[_c('b-col',[_c('h1',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_payment')))]),_c('label',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_payment_description')))])]),_c('b-col',{staticClass:\"text-right d-flex align-items-center justify-content-end\",attrs:{\"cols\":\"3\"}},[(_vm.order)?_c('order-timer',{attrs:{\"order\":_vm.order}}):_vm._e()],1)],1)],1),_c('b-row',{staticClass:\"m-0 p-0 payments-wrapper mb-4\"},_vm._l((_vm.paymentMethods),function(paymentMethod){return _c('b-col',{key:paymentMethod.id,staticClass:\"payment-method-row cursor-pointer\",class:'pay'+paymentMethod.id === _vm.selectedOption ? 'active-option' : '',attrs:{\"sm\":\"12\",\"md\":\"6\"},on:{\"click\":function($event){return _vm.selectRow(paymentMethod.id)}}},[_c('div',{staticClass:\"row-item pos-primary-color\"},[_c('b-row',{staticClass:\"h-100\"},[_c('b-col',{staticClass:\"d-flex justify-content-start justify-content-md-center align-items-center\",attrs:{\"cols\":\"1\",\"md\":\"3\"}},[_c('span',{staticClass:\"pm-img\"},[_c('b-img',{attrs:{\"src\":require('@/assets/payment-methods/' + paymentMethod.image_active)}})],1)]),_c('b-col',{staticClass:\"d-flex align-items-center\",attrs:{\"cols\":\"11\",\"md\":\"9\"}},[_c('div',[_c('p',{staticClass:\"pos-primary-color mb-0 payment-name\"},[_vm._v(_vm._s(paymentMethod.payment_method.name))]),_c('span',{staticClass:\"mb-0\"},[(paymentMethod.fee_fixed)?_c('span',{staticClass:\"payment-fee\"},[_vm._v(\" +\"+_vm._s(_vm._f(\"currency\")((Math.ceil(paymentMethod.fee_fixed * 100) / 100 ))))]):_vm._e(),(paymentMethod.fee_percentage)?_c('span',{staticClass:\"payment-fee\"},[_vm._v(\" \"+_vm._s(' +' +(paymentMethod.fee_percentage ? ' ' : '') + paymentMethod.fee_percentage + '%')+\" (\"+_vm._s(_vm._f(\"currency\")(_vm.getCartPaymentFee(paymentMethod)))+\") \")]):_vm._e()])])])],1)],1)])}),1)],1):_c('b-col',{staticClass:\"content-block cart-container\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('pos_free_order_btn')))])]),_c('b-col',{attrs:{\"lg\":\"5\"}},[_c('div',[_c('cart')],1)]),_c('PosCartPlaceOrder',{attrs:{\"disabled\":_vm.cartTotal > 0 && _vm.selectedOption === null},on:{\"continue\":function($event){return _vm.processOrder()}}})],1):_vm._e(),(_vm.saving)?_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('payment_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"cart\"}},[_c('h3',{staticClass:\"cart-title pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('cart_title')))]),(_vm.calculatedCart)?_c('div'):_vm._e(),_vm._l((_vm.calculatedCart.products),function(product){return _c('div',{key:`cart_product` + product.id,staticClass:\"cart-row pos-bg-secondary-color border-radius\"},[_c('b-row',[_c('b-col',{staticClass:\"cart-product-details pos-primary-color\"},[_vm._v(\" \"+_vm._s(product.amount + `x`)+\" \"+_vm._s(product.name)+\" \")]),_c('b-col',{staticClass:\"cart-product-details pos-primary-color text-right\"},[_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(product.total))+\" \")])],1)],1)}),(_vm.calculatedCart)?_c('div',{staticClass:\"cart-total-container\"},[_c('b-row',[_c('b-col',{staticClass:\"cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('cart_sub_total'))+\":\")]),_c('b-col',{staticClass:\"cart-totals pos-secondary-color text-right\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.productTotal)))])],1),(_vm.calculatedCart.processingFee > 0 || _vm.calculatedCart.paymentFee > 0)?_c('b-row',[_c('b-col',{staticClass:\"cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('cart_ticket_fee'))+\":\")]),_c('b-col',{staticClass:\"text-right cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.processingFee + _vm.calculatedCart.paymentFee)))])],1):_vm._e(),(_vm.calculatedCart.discount)?_c('b-row',[_c('b-col',{staticClass:\"cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('cart_discount', _vm.cart.discountCode))+\":\")]),_c('b-col',{staticClass:\"text-right cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.calculatedCart.discount)))])],1):_vm._e(),(_vm.cart.campaignDiscount)?_c('b-row',[_c('b-col',{staticClass:\"cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('cart_discount', {code: ''}))+\":\")]),_c('b-col',{staticClass:\"text-right cart-totals pos-secondary-color\"},[_vm._v(_vm._s(_vm._f(\"currency\")('-' + _vm.cart.campaignDiscount)))])],1):_vm._e()],1):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"cart\">\n <h3 class=\"cart-title pos-secondary-color\">{{ $t('cart_title') }}</h3>\n <div v-if=\"calculatedCart\"></div>\n <div v-for=\"product in calculatedCart.products\" :key=\"`cart_product` + product.id\" class=\"cart-row pos-bg-secondary-color border-radius\">\n <b-row>\n <b-col class=\"cart-product-details pos-primary-color\">\n {{ product.amount + `x` }} {{ product.name }}\n </b-col>\n <b-col class=\"cart-product-details pos-primary-color text-right\">\n {{ product.total | currency }}\n </b-col>\n </b-row>\n </div>\n <div v-if=\"calculatedCart\" class=\"cart-total-container\">\n <b-row>\n <b-col class=\"cart-totals pos-secondary-color\">{{ $t('cart_sub_total') }}:</b-col>\n <b-col class=\"cart-totals pos-secondary-color text-right\">{{ calculatedCart.productTotal | currency }}</b-col>\n </b-row>\n <b-row v-if=\"calculatedCart.processingFee > 0 || calculatedCart.paymentFee > 0\">\n <b-col class=\"cart-totals pos-secondary-color\">{{ $t('cart_ticket_fee') }}:</b-col>\n <b-col class=\"text-right cart-totals pos-secondary-color\">{{ calculatedCart.processingFee + calculatedCart.paymentFee | currency }}</b-col>\n </b-row>\n <b-row v-if=\"calculatedCart.discount\">\n <b-col class=\"cart-totals pos-secondary-color\">{{ $t('cart_discount', cart.discountCode) }}:</b-col>\n <b-col class=\"text-right cart-totals pos-secondary-color\">{{ calculatedCart.discount | currency }}</b-col>\n </b-row>\n <b-row v-if=\"cart.campaignDiscount\">\n <b-col class=\"cart-totals pos-secondary-color\">{{ $t('cart_discount', {code: ''}) }}:</b-col>\n <b-col class=\"text-right cart-totals pos-secondary-color\">{{ '-' + cart.campaignDiscount | currency }}</b-col>\n </b-row>\n </div>\n </div>\n</template>\n<script>\nimport {mapState, mapActions, mapMutations} from 'vuex'\nimport api from \"@/api\";\n\nexport default {\n data(){\n return {\n discountCode: null,\n discountCodeError: null,\n timeslot: null\n }\n },\n methods: {\n calculateVatFromEx(price, percentage){\n let vat = price * (percentage / 100)\n return vat\n },\n calculateVat(price, percentage) {\n let excl = price / (1 + percentage / 100)\n let vat = price - excl\n return vat\n },\n claimDiscountcode() {\n this.discountCodeError = null\n if(!this.discountCode){\n this.discountCodeError = false\n return\n }\n api.discountcode().getByOrder(this.$route.params.id, this.$route.params.secret, this.discountCode).then(discountCode => {\n this.$store.commit('setCartDiscountCode', discountCode)\n })\n },\n ...mapActions(['loadCompany']),\n ...mapMutations(['setCartTotal', 'setCartTotalWithoutPM', 'setProcessingFee'])\n },\n computed: {\n calculatedCart() {\n\n if (!this.event) {\n console.log('Event not in state!')\n return null\n }\n if (!this.company) {\n console.warn('Company not in state, maybe still loading!')\n return null\n }\n\n if (!this.cart) {\n console.warn('Cart not in state!')\n return null\n }\n\n let productTotal = 0\n let paymentFee = 0\n let processingFee = 0\n let totalProductCount = 0\n let campaignDiscount = 0;\n\n this.cart.products.forEach(p => {\n productTotal += p.amount * p.price\n totalProductCount += p.amount\n })\n\n this.cart.products.forEach( product => {\n if(product.service_fee){\n processingFee += (product.service_fee * product.amount)\n }\n })\n\n this.cart.products.forEach( product => {\n campaignDiscount += ((product.price - product.discount_price) * product.amount)\n })\n this.$store.commit('setCartCampaignDiscount', campaignDiscount)\n\n // let total = productTotal + paymentFee + processingFee\n let total = productTotal\n\n let discount = 0\n if(this.cart.discountCode) {\n // if type is per order\n if (this.cart.discountCode.apply_type === 'order') {\n let productsTotal = 0;\n this.cart.products.forEach(p => {\n if (this.cart.discountCode.products && this.cart.discountCode.products.length) {\n if (this.cart.discountCode.products.includes(p.id)) {\n productsTotal += p.amount * p.discount_price\n }\n }\n else {\n productsTotal += p.amount * p.discount_price\n }\n })\n if (this.cart.discountCode.type === 'percentage') {\n discount = 0 - Math.round(((productsTotal * this.cart.discountCode.amount / 100) + Number.EPSILON) * 100) / 100\n }\n else if (this.cart.discountCode.type === 'value') {\n discount = 0 - this.cart.discountCode.amount\n }\n } else { // if type is per ticket\n for (const p of this.cart.products) {\n if (this.cart.discountCode.products && this.cart.discountCode.products.length) {\n if(!this.cart.discountCode.products.includes(p.id)) {\n continue;\n }\n }\n if (this.cart.discountCode.type === 'percentage') {\n discount -= ((Math.round(((p.discount_price * this.cart.discountCode.amount / 100) + Number.EPSILON) * 100) / 100) * p.amount)\n }\n else if (this.cart.discountCode.type === 'value') {\n discount -= (this.cart.discountCode.amount * p.amount)\n }\n }\n }\n }\n\n if(campaignDiscount) {\n total -= campaignDiscount;\n }\n\n total += discount\n\n if (total < 0) {\n total = 0\n }\n\n let paymentFeeVat = 0\n\n /**\n * Payment method calculation:\n * Payment fee fixed is already inclusive VAT\n * Payment fee percentage is without VAT\n *\n * Calculation:\n * 1) Add the payment fee fixed\n * 2) Calculate fee percentage = (total products + total ticket fee + fixed fee) * percentage\n * 3) Add VAT for the company to the total\n * 4) Round the total payment fee\n */\n if (this.cart.paymentMethod) {\n\n // Payment Fee fixed is inclusive VAT\n paymentFee = this.cart.paymentMethod.fee_fixed\n\n // Calculate the fee that is needed for the percentage\n let feePercentage = 0\n if (this.cart.paymentMethod.fee_percentage > 0) {\n feePercentage = (processingFee + total + this.cart.paymentMethod.fee_fixed) * (this.cart.paymentMethod.fee_percentage / 100)\n paymentFee += feePercentage\n }\n\n // Add the VAT to the payment fee (only from the percentage)\n if(this.company.vat_percentage && paymentFee){\n paymentFeeVat = parseFloat( this.calculateVatFromEx(feePercentage, this.company.vat_percentage) )\n if(paymentFeeVat){\n paymentFee += paymentFeeVat\n }\n }\n\n // Rounds to two decimals\n if(paymentFee){\n paymentFee = Math.round((paymentFee + Number.EPSILON) * 100) / 100\n }\n\n }\n this.setCartTotalWithoutPM(parseFloat(total.toString()))\n this.setProcessingFee(processingFee)\n total += (paymentFee + processingFee)\n this.setCartTotal(total);\n return {\n total,\n productTotal,\n paymentFee,\n paymentFeeVat: paymentFeeVat,\n paymentFeeVatPerc: this.company.vat_percentage,\n processingFee,\n processingFeeVat: this.calculateVat(processingFee, this.company.vat_percentage),\n processingFeeVatPerc: this.company.vat_percentage,\n discount,\n discountVat: this.calculateVat(discount, this.company.vat_percentage),\n discountVatPerc: this.company.vat_percentage,\n totalProductCount,\n products: this.cart.products.map((p) => {\n return {\n id: p.id,\n amount: p.amount,\n total: p.amount * p.price,\n name: p.name,\n vat: p.vat * p.amount,\n vat_percentage: p.vat_percentage\n }\n })\n }\n },\n ...mapState(['cart', 'event', 'company', 'order', 'campaign'])\n },\n created() {\n this.loadCompany()\n }\n}\n</script>\n<style scoped>\n@media only screen and (min-width: 992px) {\n #cart {\n padding: 0 35px 0 10px;\n }\n}\n.vat {\n font-size: 12px;\n}\n.small-text{\n font-size:12px\n}\n.cart-title{\n font-size: 24px;\n font-weight:600;\n margin-bottom:15px;\n}\n.cart-row {\n padding: 15px 20px !important;\n margin-bottom: 2px !important;\n}\n\n.cart-row .cart-product-details {\n font-size: 12px !important;\n}\n.cart-total-container {\n margin-top: 20px !important;\n margin-bottom: 40px;\n}\n.cart-totals {\n padding-right: 34px;\n font-size: 14px !important;\n font-weight: 600 !important;\n margin-bottom: 8px !important;\n}\n@media only screen and (max-width: 992px) {\n .cart-title {\n margin-top: 40px;\n }\n .cart-title, .cart-total-container {\n padding-inline-start: 10px;\n }\n}\n@media only screen and (max-width: 768px) {\n .cart-title {\n font-size:16px\n }\n .cart-totals{\n padding-right:28px;\n font-size:12px!important\n }\n .cart-row .cart-product-details{\n font-size:10px!important\n }\n .cart-row{\n padding: 10px 17px !important;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Cart.vue?vue&type=template&id=22bd21cb&scoped=true\"\nimport script from \"./Cart.vue?vue&type=script&lang=js\"\nexport * from \"./Cart.vue?vue&type=script&lang=js\"\nimport style0 from \"./Cart.vue?vue&type=style&index=0&id=22bd21cb&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"22bd21cb\",\n null\n \n)\n\nexport default component.exports","<template>\n <b-container class=\"p-0\">\n <router-link v-if=\"order\" :to=\"{name: posHasCrossSell ? 'OrderAdditionalProducts' : 'OrderEnterPersonalDetails', params: {id: order.id, secret: order.secret}, query: backQuery}\" class=\"text-white mb-3 d-block back-btn\">\n <b-icon icon=\"arrow-left\"></b-icon> {{ $t('back') }}\n </router-link>\n <b-row v-if=\"$route.query.payment_retry\">\n <b-col>\n <b-alert variant=\"danger\" show>{{ $t('payment_failed') }}</b-alert>\n </b-col>\n </b-row>\n <b-row v-if=\"order && pos && !saving\" class=\"align-items-center\">\n \n <gtm-page-view v-if=\"order && order.event && order.event.gtm_id\" :gtm_id=\"order.event.gtm_id\"></gtm-page-view>\n\n <b-col v-if=\"order && cartTotal > 0\">\n <div class=\"content-block cart-container cart-container-title payment-method-title header-padding\">\n <b-row>\n <b-col>\n <h1 class=\"mb-0\">{{ $t('pos_payment') }}</h1>\n <label class=\"mb-0\">{{ $t('pos_payment_description') }}</label>\n </b-col>\n <b-col cols=\"3\" class=\"text-right d-flex align-items-center justify-content-end\">\n <order-timer v-if=\"order\" :order=\"order\"></order-timer>\n </b-col>\n </b-row>\n </div>\n <b-row class=\"m-0 p-0 payments-wrapper mb-4\">\n <b-col sm=\"12\" md=\"6\" v-for=\"paymentMethod in paymentMethods\" :key=\"paymentMethod.id\" @click=\"selectRow(paymentMethod.id)\" class=\"payment-method-row cursor-pointer\" :class=\"'pay'+paymentMethod.id === selectedOption ? 'active-option' : ''\">\n <div class=\"row-item pos-primary-color\">\n <b-row class=\"h-100\">\n <b-col cols=\"1\" md=\"3\" class=\"d-flex justify-content-start justify-content-md-center align-items-center\">\n <span class=\"pm-img\">\n <b-img :src=\"require('@/assets/payment-methods/' + paymentMethod.image_active)\"></b-img>\n </span>\n </b-col>\n <b-col class=\"d-flex align-items-center\" cols=\"11\" md=\"9\">\n <div>\n <p class=\"pos-primary-color mb-0 payment-name\">{{ paymentMethod.payment_method.name }}</p>\n <span class=\"mb-0\">\n <span v-if=\"paymentMethod.fee_fixed\" class=\"payment-fee\"> +{{ (Math.ceil(paymentMethod.fee_fixed * 100) / 100 )| currency }}</span>\n <span v-if=\"paymentMethod.fee_percentage\" class=\"payment-fee\">\n {{ ' +' +(paymentMethod.fee_percentage ? ' ' : '') + paymentMethod.fee_percentage + '%' }}\n ({{ getCartPaymentFee(paymentMethod) | currency }})\n </span>\n </span>\n </div>\n </b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n </b-col>\n <b-col v-else class=\"content-block cart-container\">\n <h3>{{ $t('pos_free_order_btn') }}</h3>\n </b-col>\n <b-col lg=\"5\">\n <div>\n <cart></cart>\n </div>\n </b-col>\n <PosCartPlaceOrder @continue=\"processOrder()\" :disabled=\" cartTotal > 0 && selectedOption === null \" />\n </b-row>\n <b-row v-if=\"saving\">\n <b-col class=\"text-center\">\n <h1>{{ $t('payment_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport { mapGetters, mapState } from 'vuex'\nimport Cart from '@/components/Cart'\nimport moment from 'moment'\nimport GtmPageView from '@/components/GtmPageView.vue'\nimport PosCartPlaceOrder from '@/components/PosCartPlaceOrder.vue';\nimport OrderTimer from '@/components/OrderTimer.vue';\n\n\nexport default {\n components: {\n OrderTimer,\n PosCartPlaceOrder,\n Cart,\n GtmPageView\n },\n data() {\n return {\n paymentMethodId: null,\n saving: false,\n selectedOption: null\n }\n },\n methods: {\n selectRow(key){\n this.selectedOption = 'pay' + key\n this.paymentMethodId = key;\n this.selectPaymentMethod();\n },\n selectPaymentMethod() {\n let paymentMethod = this.pos.payment_methods.find((posPaymentMethod) => {\n return posPaymentMethod.id === this.paymentMethodId\n })\n this.$store.commit('setCartPaymentMethod', paymentMethod)\n },\n processOrder() {\n this.saving = true\n let order = Object.assign(this.order, {point_of_sale_payment_method_id: this.paymentMethodId})\n order.customer = null;\n if(order.payment_status === 'paid' || order.payment_status === 'pending') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n this.$store.commit('errors', [this.$t('order_already_paid')]);\n return;\n }\n api.order().save(order).then((order) => {\n this.$store.commit('setOrder', order)\n api.order().pay(this.order).then((url) => {\n try {\n if (window.self !== window.top) {\n window.top.location.href = url;\n } else {\n window.location.href = url;\n }\n } catch (e) {\n // Fallback for browsers with strict security settings\n window.open(url, \"_blank\");\n }\n }).catch(() => {\n this.$store.commit('errors', ['error_select_payment_method'])\n this.saving = false\n })\n }).catch((error) => {\n if(error?.response?.data[0]?.code === 'order_already_paid') {\n this.$router.push({name: 'ViewPointOfSale', params: {url: this.pos.url}});\n }\n else {\n this.$store.commit('errors', ['error_select_payment_method'])\n }\n this.saving = false\n })\n },\n getCartPaymentFee(paymentMethod) {\n let paymentFee = 0;\n let paymentFeeVat = 0;\n\n if (this.cartTotalWithoutPM) {\n const total = this.cartTotalWithoutPM;\n // Payment Fee fixed is inclusive VAT\n // Calculate the fee that is needed for the percentage\n let feePercentage = 0\n if (paymentMethod.fee_percentage > 0) {\n feePercentage = (this.cartProcessingFee + total + paymentMethod.fee_fixed) * (paymentMethod.fee_percentage / 100)\n paymentFee += feePercentage\n }\n // Add the VAT to the payment fee (only from the percentage)\n if(this.company.vat_percentage && paymentFee){\n paymentFeeVat = parseFloat( this.calculateVatFromEx(feePercentage, this.company.vat_percentage) )\n if(paymentFeeVat){\n paymentFee += paymentFeeVat\n }\n }\n\n // Rounds to two decimals\n if(paymentFee){\n return paymentFee = paymentMethod.fee_fixed + (Math.round((paymentFee + Number.EPSILON) * 100) / 100)\n }\n }\n return 0\n },\n calculateVatFromEx(price, percentage){\n let vat = price * (percentage / 100)\n return vat\n },\n },\n computed: {\n paymentMethods(){\n return this.pos.payment_methods.filter((pm) => {\n // Only return the active payment methods & show_pos for the POS\n if(!pm.online && !pm.show_pos){\n return false\n }\n // Hide STC Transfer in case the event is within 3 days\n if(pm.payment_method.adapter !== 'App\\\\PaymentAdapters\\\\PayNLSTC') {\n return true\n }\n let daysLeft = moment(this.event.starts_at).diff(moment(), 'days')\n let dayOfWeek = moment(this.event.starts_at).format('E')\n let daysNeeded = 3;\n // add 2 more days if the event is in the weekend\n if (dayOfWeek >= 6) {\n daysNeeded += 2\n }\n if(daysLeft > daysNeeded){\n return true\n }\n return false\n }).map((pm) => {\n let img = pm.payment_method.adapter.split('\\\\').pop().toLowerCase()\n pm.image = img + '-grey.svg'\n pm.image_active = img + '.svg'\n return pm\n })\n },\n hasTimeslots() {\n if (!this.event) {\n return false\n }\n return this.event.timeslots.length > 0 || (this.event.opening_hours && this.event.opening_hours.length > 0)\n },\n backQuery() {\n if(this.campaign) {\n return {ft_campaign_name: this.campaign.slug, back: ''};\n }\n return {back: ''};\n },\n ...mapGetters(['posHasCrossSell']),\n ...mapState(['cart', 'order', 'pos', 'event', 'campaign', 'cartTotal', 'cartTotalWithoutPM', 'company', 'cartProcessingFee'])\n },\n created() {\n if(document.body.contains(document.getElementById('company-header'))){\n document.getElementById(\"company-header\").scrollIntoView();\n }\n document.title = this.$t('pos_payment_method_title')\n api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n if(order && order.is_cancelled){\n this.$store.commit('errors', ['order_cancelled'])\n this.$router.push({name: 'ViewPointOfSale', params: {url: order.point_of_sale.url}});\n return\n }\n this.$store.commit('setOrder', order)\n })\n }\n}\n</script>\n<style scoped>\n h3{\n font-size:1.5rem;\n font-weight:600;\n margin-bottom:20px\n }\n .payment-method-row {\n border-radius: 6px;\n margin: 0 !important;\n min-height: 65px\n }\n .payment-method-title {\n padding:42px 47px!important;\n }\n @media only screen and (max-width: 992px) {\n .payment-method-row {\n padding: 11px 17px !important;\n }\n }\n\n .payment-method-row .row-item{\n font-size: 16px !important;\n font-weight: 600 !important;\n height: 100%;\n line-height: 1rem;\n }\n .payment-method-row .payment-fee {\n font-size:10px !important;\n color: #909090;\n margin:0\n }\n\n .payment-method-title {\n border-radius: 6px !important;\n }\n\n .pm-img {\n width: 37px;\n }\n .pm-img > img{\n max-width: 37px;\n }\n\n .free-order-btn {\n position: absolute;\n right: 10px;\n bottom: 10px;\n }\n\n input[type=\"radio\"]{\n visibility: hidden;\n height: 0;\n width: 0;\n }\n\n .payments-wrapper {\n margin-top: 1px;\n }\n\n @media only screen and (max-width: 768px) {\n .payment-method-title {\n padding:17px!important;\n }\n .pm-img ,.pm-img > img{\n width: 24px;\n }\n .payment-method-row .row-item .row{\n gap:10px;\n flex-wrap:nowrap\n }\n .payment-name{\n font-size:12px\n }\n }\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderSelectPaymentMethod.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderSelectPaymentMethod.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderSelectPaymentMethod.vue?vue&type=template&id=7af29601&scoped=true\"\nimport script from \"./OrderSelectPaymentMethod.vue?vue&type=script&lang=js\"\nexport * from \"./OrderSelectPaymentMethod.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderSelectPaymentMethod.vue?vue&type=style&index=0&id=7af29601&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7af29601\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{staticClass:\"p-0\"},[(_vm.$store.state.pos)?_c('router-link',{staticClass:\"text-white mb-3 d-block back-btn\",attrs:{\"to\":{name: 'OrderEnterPersonalDetails', params: {url: _vm.$store.state.pos.url}, query: _vm.backQuery}}},[_c('b-icon',{attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back')))],1):_vm._e(),(_vm.order && _vm.pos && !_vm.saving)?_c('div',[(_vm.order && _vm.order.event && _vm.order.event.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.order.event.gtm_id}}):_vm._e(),_c('div',{staticClass:\"content-block cart-container personal-details-header header-padding\"},[_c('b-row',[_c('b-col',[_c('h1',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('view_pos_cart_title')))]),_c('label',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('pos_buy_extra_products')))])]),_c('b-col',{staticClass:\"d-flex align-items-center justify-content-end\",attrs:{\"cols\":\"3\"}},[(_vm.order)?_c('order-timer',{attrs:{\"order\":_vm.order}}):_vm._e()],1)],1)],1),_c('div',{staticClass:\"content-block cart-container personal-details-container\"},[(_vm.cart)?_c('product-list',{attrs:{\"cross_sell\":true}}):_vm._e(),_c('PosCartPlaceOrder',{on:{\"continue\":function($event){return _vm.continueOrder()}}})],1)],1):_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container class=\"p-0\">\n <router-link v-if=\"$store.state.pos\" :to=\"{name: 'OrderEnterPersonalDetails', params: {url: $store.state.pos.url}, query: backQuery}\" class=\"text-white mb-3 d-block back-btn\"><b-icon icon=\"arrow-left\"></b-icon> {{ $t('back') }}</router-link>\n <div v-if=\"order && pos && !saving\">\n <gtm-page-view v-if=\"order && order.event && order.event.gtm_id\" :gtm_id=\"order.event.gtm_id\"></gtm-page-view>\n\n <div class=\"content-block cart-container personal-details-header header-padding\">\n <b-row>\n <b-col>\n <h1 class=\"mb-0\">{{ $t('view_pos_cart_title') }}</h1>\n <label class=\"mb-0\">{{ $t('pos_buy_extra_products') }}</label>\n </b-col>\n <b-col cols=\"3\" class=\"d-flex align-items-center justify-content-end\">\n <order-timer v-if=\"order\" :order=\"order\"></order-timer>\n </b-col>\n </b-row>\n </div>\n\n <div class=\"content-block cart-container personal-details-container\">\n <product-list v-if=\"cart\" :cross_sell=\"true\"></product-list>\n <PosCartPlaceOrder @continue=\"continueOrder()\"/>\n </div>\n </div>\n <b-row v-else>\n <b-col class=\"text-center\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState, mapGetters} from 'vuex'\nimport ProductList from '@/components/ProductList'\nimport PosCartPlaceOrder from '@/components/PosCartPlaceOrder.vue';\nimport GtmPageView from '@/components/GtmPageView.vue';\nimport OrderTimer from '@/components/OrderTimer.vue';\n\nexport default {\n components: {\n OrderTimer,\n GtmPageView,\n PosCartPlaceOrder,\n ProductList\n },\n data() {\n return {\n saving: false\n }\n },\n methods: {\n continueOrder() {\n this.saving = true\n let products = this.cart.products.filter(product => {\n return product.is_cross_sell\n }).map((product) => {\n return {product_id: product.id, amount: product.amount}\n })\n api.order().addCrossSell(this.order, products).then((order) => {\n this.$store.commit('setOrder', order)\n this.$router.push({\n name: 'OrderSelectPaymentMethod',\n params: this.$route.params\n })\n })\n },\n },\n computed: {\n backQuery() {\n if(this.campaign) {\n return {ft_campaign_name: this.campaign.slug, back: ''};\n }\n return {back: ''};\n },\n ...mapState(['order', 'pos', 'cart', 'campaign']),\n ...mapGetters(['posHasCrossSell'])\n },\n created() {\n api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n this.$store.commit('setOrder', order)\n\n if(this.posHasCrossSell === false) {\n if(this.campaign) {\n this.$router.push({name: 'OrderSelectPaymentMethod', params: this.$route.params, query:{ft_campaign_name: this.campaign.slug}})\n }\n else {\n this.$router.push({name: 'OrderSelectPaymentMethod', params: this.$route.params})\n }\n }\n })\n }\n}\n</script>\n\n<style scoped>\n.personal-details-header {\n border-radius: 10px 10px 0 0 !important;\n padding:42px 47px!important\n}\n\n.personal-details-header label {\n font-size: 16px !important;\n font-weight: bold !important;\n}\n.personal-details-container {\n border-radius: 0 0 10px 10px !important;\n margin-top: 1px !important;\n}\n@media only screen and (max-width: 992px) {\n .personal-details-container {\n padding: 17px !important;\n }\n}\n@media only screen and (max-width: 768px) {\n .personal-details-header label {\n font-size: 12px !important;\n }\n .personal-details-container > h2{\n font-size: 17px !important;\n }\n .personal-details-header {\n padding:17px!important\n }\n}\n</style>\n\n<style>\n.personal-details-container .product-row {\n padding: 0 !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderAdditionalProducts.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderAdditionalProducts.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderAdditionalProducts.vue?vue&type=template&id=1bb0db67&scoped=true\"\nimport script from \"./OrderAdditionalProducts.vue?vue&type=script&lang=js\"\nexport * from \"./OrderAdditionalProducts.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderAdditionalProducts.vue?vue&type=style&index=0&id=1bb0db67&prod&scoped=true&lang=css\"\nimport style1 from \"./OrderAdditionalProducts.vue?vue&type=style&index=1&id=1bb0db67&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1bb0db67\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.order)?_c('b-container',{staticClass:\"p-0 order-status-page\"},[_c('b-row',[_c('b-col',{staticClass:\"text-center mt-4 mb-4\"},[_c('h1',{staticClass:\"pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('order_status_number', _vm.order)))])])],1),(_vm.order && (_vm.env != 'local' && _vm.order.id > 179761 || _vm.env == 'local') && !_vm.order.is_refunded && !_vm.order.is_cancelled && (_vm.order.payment_status=='paid' || _vm.order.payment_status=='test_order_paid') && !_vm.containsUnassignedTicketes)?_c('b-row',{staticClass:\"mt-2 mb-5\"},[_c('b-col',{staticClass:\"text-center\"},[(_vm.ticketsBeingCreated)?_c('b-row',{staticClass:\"ticket-generation-loading\"},[_c('b-col',[_c('b-col',{staticClass:\"text-center\"},[_c('b-spinner')],1),_c('b-col',{staticClass:\"text-center small-btn-text\"},[_vm._v(_vm._s(_vm.$t('order_status_ticket_generating')))])],1)],1):(!_vm.order.merged_tickets_url && _vm.ticketMergeBeingDone && !_vm.containsUnassignedTicketes)?_c('b-row',{staticClass:\"ticket-generation-loading\"},[_c('b-col',[_c('b-col',{staticClass:\"text-center\"},[_c('b-spinner')],1),_c('b-col',{staticClass:\"text-center small-btn-text\"},[_vm._v(_vm._s(_vm.$t('order_status_ticket_merging')))])],1)],1):(_vm.order.merged_tickets_url)?_c('b-btn',{staticClass:\"btn-download-all-tickets border-radius-6\",attrs:{\"href\":_vm.order.merged_tickets_url,\"target\":\"_blank\"}},[_c('b-icon',{staticClass:\"download-icon\",attrs:{\"icon\":\"download\"}}),_vm._v(\" \"+_vm._s(_vm.$t('download_tickets'))+\" \")],1):_vm._e()],1)],1):_vm._e(),_c('b-row',{staticClass:\"border-radius-6 tickets-wrapper\"},[_c('b-col',[_c('div',{staticClass:\"content-block-rounded content-header\"},[_c('b-row',[_c('b-col',[_c('h3',{staticClass:\"event-name font-weight-bold\"},[_vm._v(_vm._s(_vm.order.event.name))])])],1),(!_vm.order.event.continuous)?_c('b-row',[_c('b-col',[_c('p',{staticClass:\"event-full-date font-weight-bold mb-0\"},[_vm._v(_vm._s(_vm.order.event.starts_at)+\" - \"+_vm._s(_vm.order.event.ends_at))])])],1):_vm._e(),(_vm.order.is_refunded)?_c('b-alert',{staticClass:\"text-center alert alert-refunded\",attrs:{\"variant\":\"primary\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('order_status_alert_refunded')))]):_vm._e(),(_vm.order.is_cancelled)?_c('b-alert',{staticClass:\"text-center alert alert-cancelled\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('order_status_alert_cancelled')))]):_vm._e(),(_vm.order.payment_status === 'pending')?_c('b-alert',{staticClass:\"text-center alert alert-pending\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('order_status_alert_pending')))]):(_vm.order.payment_status !== 'paid' && _vm.order.payment_status !== 'test_order_paid')?_c('b-alert',{staticClass:\"text-center alert alert-not-paid\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('order_status_alert_not_paid')))]):_vm._e()],1),(_vm.tickets)?_c('div',_vm._l((_vm.tickets),function(ticket,index){return _c('div',{key:index,staticClass:\"content-block-rounded ticket-row-wrapper\"},[_c('b-row',{key:index,staticClass:\"ticket-row align-items-center\"},[_c('b-col',{class:'col-9 ' + ((ticket.order_product.refunded_at) ? 'refunded' : '') + ' ' + ((ticket.status === 'cancelled') ? 'cancelled' : '')},[_c('b-row',[_c('b-col',{staticClass:\"product-name\"},[_vm._v(\" \"+_vm._s(ticket.order_product.product.product_group.name !== 'event_default_group' ? ticket.order_product.product.product_group.name + ' - ' : '')+\" \"+_vm._s(ticket.order_product.product.name)+\" \"),_c('span',{staticClass:\"product-counter font-weight-normal ml-3\"},[_vm._v(\"(\"+_vm._s(index+1)+\"/\"+_vm._s(_vm.tickets.length)+\")\")])])],1),_c('b-row',[(ticket.customer)?_c('b-col',{staticClass:\"customer-name\",attrs:{\"md\":\"6\"}},[_vm._v(\" \"+_vm._s(ticket.customer.first_name)+\" \"+_vm._s(ticket.customer.last_name)+\" \")]):_c('b-col',{staticClass:\"customer-name\",attrs:{\"md\":\"6\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_status_ticket_not_assigned'))+\" \")])],1)],1),_c('b-col',{staticClass:\"col-3 text-center text-md-right\"},[(ticket.order_product.refunded_at)?_c('p',{staticClass:\"refunded-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\",staticStyle:{\"height\":\"100%\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_status_product_refunded', ticket.order_product))+\" \")]):(ticket.status === 'cancelled')?_c('p',{staticClass:\"cancelled-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\",staticStyle:{\"height\":\"100%\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_status_product_cancelled'))+\" \")]):(!ticket.customer)?_c('div',{staticClass:\"btn-assign-ticket d-inline-block text-center mt-2 mt-md-0 mb-0\"},[_c('a',{staticClass:\"download-ticket d-inline-block\",attrs:{\"href\":ticket.link,\"target\":\"_blank\"}},[_c('span',{staticClass:\"d-block mb-2\"},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"width\":\"21\",\"height\":\"21\",\"viewBox\":\"0 0 21 21\"}},[_c('image',{attrs:{\"id\":\"Image_12\",\"data-name\":\"Image 12\",\"width\":\"21\",\"height\":\"21\",\"xlink:href\":\"data:image/png;base64,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\"}})])]),_vm._v(\" \"+_vm._s(_vm.$t('order_status_put_on_name'))+\" \")])]):(!ticket.claimed_at && ticket.invited_at)?_c('p',{staticClass:\"invited-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\",staticStyle:{\"height\":\"100%\"}},[_vm._v(\" \"+_vm._s(_vm.$t('order_status_product_invited_at', ticket))+\" \")]):(!ticket.url)?_c('b-row',{staticClass:\"ticket-generation-loading\"},[_c('b-col',[_c('b-col',{staticClass:\"text-center\"},[_c('b-spinner')],1),_c('b-col',{staticClass:\"text-center small-btn-text\"},[_vm._v(_vm._s(_vm.$t('order_status_ticket_generating')))])],1)],1):(ticket.url)?_c('div',{staticClass:\"d-inline-block text-center mt-2 mt-md-0 mb-0\"},[_c('a',{staticClass:\"download-ticket d-inline-block\",attrs:{\"href\":ticket.url,\"target\":\"_blank\"}},[_c('span',{staticClass:\"d-block\"},[_c('svg',{staticClass:\"download-ticket-icon\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"height\":\"23px\",\"viewBox\":\"0 -960 960 960\",\"width\":\"23px\",\"fill\":\"#000000\"}},[_c('path',{attrs:{\"d\":\"M280-280h400v-80H280v80Zm200-120 160-160-56-56-64 62v-166h-80v166l-64-62-56 56 160 160Zm0 320q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\"}})])]),_vm._v(\" \"+_vm._s(_vm.$t('download'))+\" \")])]):_vm._e()],1)],1)],1)}),0):_vm._e()])],1)],1):_c('b-container',[_c('b-row',[_c('b-col',{staticClass:\"text-center content-block\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container v-if=\"order\" class=\"p-0 order-status-page\">\n <b-row>\n <b-col class=\"text-center mt-4 mb-4\">\n <h1 class=\"pos-secondary-color\">{{ $t('order_status_number', order) }}</h1>\n </b-col>\n </b-row>\n <b-row v-if=\"order && (env != 'local' && order.id > 179761 || env == 'local') && !order.is_refunded && !order.is_cancelled && (order.payment_status=='paid' || order.payment_status=='test_order_paid') && !containsUnassignedTicketes\" class=\"mt-2 mb-5\">\n <b-col class=\"text-center\">\n <b-row v-if=\"ticketsBeingCreated\" class=\"ticket-generation-loading\">\n <b-col>\n <b-col class=\"text-center\">\n <b-spinner ></b-spinner>\n </b-col>\n <b-col class=\"text-center small-btn-text\">{{ $t('order_status_ticket_generating') }}</b-col> \n </b-col>\n </b-row>\n <b-row v-else-if=\"!order.merged_tickets_url && ticketMergeBeingDone && !containsUnassignedTicketes\" class=\"ticket-generation-loading\">\n <b-col>\n <b-col class=\"text-center\">\n <b-spinner ></b-spinner>\n </b-col>\n <b-col class=\"text-center small-btn-text\">{{ $t('order_status_ticket_merging') }}</b-col> \n </b-col>\n </b-row>\n <b-btn v-else-if=\"order.merged_tickets_url\" class=\"btn-download-all-tickets border-radius-6\" :href=\"order.merged_tickets_url\" target=\"_blank\">\n <b-icon class=\"download-icon\" icon=\"download\"/> {{ $t('download_tickets') }}\n </b-btn>\n </b-col>\n </b-row>\n <b-row class=\"border-radius-6 tickets-wrapper\">\n <b-col>\n <div class=\"content-block-rounded content-header\">\n <b-row>\n <b-col><h3 class=\"event-name font-weight-bold\">{{ order.event.name }}</h3></b-col>\n </b-row>\n <b-row v-if=\"!order.event.continuous\">\n <b-col><p class=\"event-full-date font-weight-bold mb-0\">{{ order.event.starts_at }} - {{ order.event.ends_at }}</p></b-col>\n </b-row>\n\n <b-alert v-if=\"order.is_refunded\" class=\"text-center alert alert-refunded\" variant=\"primary\" show>{{ $t('order_status_alert_refunded') }}</b-alert>\n <b-alert v-if=\"order.is_cancelled\" class=\"text-center alert alert-cancelled\" variant=\"danger\" show>{{ $t('order_status_alert_cancelled') }}</b-alert>\n <b-alert v-if=\"order.payment_status === 'pending'\" class=\"text-center alert alert-pending\" variant=\"danger\" show>{{ $t('order_status_alert_pending') }}</b-alert>\n <b-alert v-else-if=\"order.payment_status !== 'paid' && order.payment_status !== 'test_order_paid'\" class=\"text-center alert alert-not-paid\" variant=\"danger\" show>{{ $t('order_status_alert_not_paid') }}</b-alert>\n </div>\n\n <div v-if=\"tickets\">\n <div v-for=\"(ticket, index) in tickets\" :key=\"index\" class=\"content-block-rounded ticket-row-wrapper\">\n <b-row :key=\"index\" class=\"ticket-row align-items-center\">\n <b-col :class=\"'col-9 ' + ((ticket.order_product.refunded_at) ? 'refunded' : '') + ' ' + ((ticket.status === 'cancelled') ? 'cancelled' : '')\">\n <b-row>\n <b-col class=\"product-name\">\n {{ ticket.order_product.product.product_group.name !== 'event_default_group' ? ticket.order_product.product.product_group.name + ' - ' : '' }} \n {{ ticket.order_product.product.name }} \n <span class=\"product-counter font-weight-normal ml-3\">({{ index+1 }}/{{ tickets.length }})</span>\n </b-col>\n </b-row>\n <b-row>\n <b-col md=\"6\" class=\"customer-name\" v-if=\"ticket.customer\">\n {{ ticket.customer.first_name }} {{ ticket.customer.last_name }}\n </b-col>\n <b-col md=\"6\" class=\"customer-name\" v-else>\n {{ $t('order_status_ticket_not_assigned') }}\n </b-col>\n </b-row>\n </b-col>\n\n <b-col class=\"col-3 text-center text-md-right\">\n\n <!-- Refunded -->\n <p v-if=\"ticket.order_product.refunded_at\" class=\"refunded-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\" style=\"height:100%\">\n {{ $t('order_status_product_refunded', ticket.order_product) }}\n </p> \n\n <!-- Cancel -->\n <p v-else-if=\"ticket.status === 'cancelled'\" class=\"cancelled-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\" style=\"height:100%\">\n {{ $t('order_status_product_cancelled') }}\n </p> \n\n <!-- Customer not assigned -->\n <div v-else-if=\"!ticket.customer\" class=\"btn-assign-ticket d-inline-block text-center mt-2 mt-md-0 mb-0\">\n <a :href=\"ticket.link\" target=\"_blank\" class=\"download-ticket d-inline-block\">\n <span class=\"d-block mb-2\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"21\" height=\"21\" viewBox=\"0 0 21 21\"><image id=\"Image_12\" data-name=\"Image 12\" width=\"21\" height=\"21\" xlink:href=\"data:image/png;base64,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\"/></svg>\n </span>\n {{ $t('order_status_put_on_name') }}\n </a>\n </div>\n\n <!-- Ticket is invited but not claimed -->\n <p v-else-if=\"!ticket.claimed_at && ticket.invited_at\" class=\"invited-text mt-2 mt-md-0 mb-0 d-flex align-items-center justify-content-center justify-content-md-end\" style=\"height:100%\">\n {{ $t('order_status_product_invited_at', ticket) }}\n </p>\n\n <!-- Ticket is generating -->\n <b-row v-else-if=\"!ticket.url\" class=\"ticket-generation-loading\">\n <b-col>\n <b-col class=\"text-center\">\n <b-spinner ></b-spinner>\n </b-col>\n <b-col class=\"text-center small-btn-text\">{{ $t('order_status_ticket_generating') }}</b-col> \n </b-col>\n </b-row>\n \n <!-- Ticket exists -->\n <div v-else-if=\"ticket.url\" class=\"d-inline-block text-center mt-2 mt-md-0 mb-0\">\n <a :href=\"ticket.url\" target=\"_blank\" class=\"download-ticket d-inline-block\">\n <span class=\"d-block\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"23px\" viewBox=\"0 -960 960 960\" width=\"23px\" fill=\"#000000\" class=\"download-ticket-icon\"><path d=\"M280-280h400v-80H280v80Zm200-120 160-160-56-56-64 62v-166h-80v166l-64-62-56 56 160 160Zm0 320q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Z\"/></svg>\n </span>\n {{ $t('download') }}\n </a>\n </div>\n\n </b-col>\n\n </b-row>\n </div>\n </div>\n\n </b-col>\n </b-row>\n </b-container>\n <b-container v-else>\n <b-row>\n <b-col class=\"text-center content-block\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport moment from 'moment'\nimport {mapActions, mapState} from 'vuex'\nimport {getEnvironment} from \"@/functions\";\n\nexport default {\n components: {},\n data() {\n return {\n order: null,\n tickets: [],\n copied: false,\n reminderTicket: null,\n ticketsBeingCreated: false,\n containsUnassignedTicketes: false,\n ticketMergeBeingDone: false,\n env: getEnvironment()\n }\n },\n methods: {\n getTickets(){\n api.order().getTickets(this.$route.params.id, this.$route.params.secret).then((tickets) => {\n this.ticketsBeingCreated = false\n this.tickets = tickets.map((ticket) => {\n\n if(ticket.order_product.refunded_at){\n ticket.order_product.refunded_at = moment(ticket.order_product.refunded_at).format('DD-MM-YYYY HH:mm');\n }\n if(ticket.invited_at){\n ticket.invited_at = moment(ticket.invited_at).format('DD-MM-YYYY HH:mm');\n }\n\n ticket.link = location.protocol + '//' + location.host + '/ticket/' + ticket.id + '/' + ticket.secret + '/claim'\n ticket.change_link = location.protocol + '//' + location.host + '/ticket/' + ticket.id + '/' + ticket.secret + '/claim?change=1'\n\n if (!ticket.customer || !ticket.customer.email) {\n this.containsUnassignedTicketes = true;\n return ticket\n }\n let email = ticket.customer.email;\n let middle = email.substr(3, email.length - 8)\n ticket.customer.email = email.replace(middle, '*******')\n\n // Check to see if we have a ticket that is being generated, so that we have to re-call the getTicket function again\n if( !ticket.order_product.refunded_at && ticket.status === 'active' && !ticket.url){\n this.ticketsBeingCreated = true\n }\n\n return ticket\n })\n\n if(this.ticketsBeingCreated){\n setTimeout(() => {\n this.getTickets()\n }, 3000)\n }\n })\n \n },\n getOrder(){\n api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n this.ticketMergeBeingDone = false\n order.event.starts_at = moment(order.event.starts_at).format('DD-MM-YYYY HH:mm');\n order.event.ends_at = moment(order.event.ends_at).format('DD-MM-YYYY HH:mm');\n this.order = Object.assign(order, {is_refunded: order.order_products.filter(p => p.refunded_at === null).length === 0})\n\n if(!order.merged_tickets_url){\n this.ticketMergeBeingDone = true\n setTimeout(() => {\n this.getOrder()\n }, 3000)\n }\n })\n },\n ...mapActions(['loadCompany'])\n },\n computed: {\n ...mapState(['company'])\n },\n created() {\n document.title = this.$t('order_status_title')\n if(!localStorage.getItem('ft_lang')) {\n api.pos().getByOrderIdAndSecret(this.$route.params.id, this.$route.params.secret).then(pos => {\n if (pos) {\n if(pos.language){\n this.$store.commit('setLanguage', pos.language)\n }\n }\n })\n }\n api.order().getBySecret(this.$route.params.id, this.$route.params.secret).then((order) => {\n order.event.starts_at = moment(order.event.starts_at).format('DD-MM-YYYY HH:mm');\n order.event.ends_at = moment(order.event.ends_at).format('DD-MM-YYYY HH:mm');\n this.order = Object.assign(order, {is_refunded: order.order_products.filter(p => p.refunded_at === null).length === 0})\n })\n this.getOrder()\n this.getTickets()\n this.loadCompany()\n }\n}\n</script>\n<style scoped>\n .order-status-page{\n width:60%\n }\n .content-block-rounded{\n background-color:#FFF;\n padding:28px 35px;\n }\n .content-block-rounded.content-header{\n border-radius: 6px 6px 0 0 !important;\n }\n .content-block-rounded:last-child{\n border-radius: 0 0 6px 6px !important;\n }\n .ticket-row-wrapper {\n margin-top: 1px;\n padding: 20px 35px!important;\n }\n .content-block-rounded p, .content-block-rounded h1, .content-block-rounded h2, .content-block-rounded h3,\n .content-block-rounded span, .content-block-rounded div, .ticket-row p, .btn-assign-ticket a{\n color:#000\n } \n p.event-full-date, p.invited-text{\n color:#000 !important\n }\n .ticket-row{\n border-bottom:1px solid #E0E0E0;\n }\n .btn-download-ticket{\n color:#FFF;\n padding:6px 35px\n }\n .btn-download-all-tickets{\n color:#FFF;\n padding:15px 25px;\n font-size:22px;\n font-weight: bold;\n margin:auto\n }\n .download-icon {\n margin-right: 14px;\n }\n span.product-counter{\n color:grey;\n font-size:14px\n }\n .refunded .product-name, .refunded .customer-name, .refunded span.product-counter, .cancelled .product-name, .cancelled .customer-name, .cancelled span.product-counter{\n color:lightgrey;\n text-decoration: line-through;\n }\n p.invited-text,.product-name{\n font-size:14px\n }\n p.refunded-text, p.cancelled-text{\n color:lightgrey !important;\n font-size:10px\n }\n .customer-name{\n font-size:10px\n }\n .small-btn-text{\n font-size:12px\n }\n .content-block-rounded div .alert{\n color:#FFF;\n font-size:16px\n }\n .alert-refunded, .alert-pending{\n background-color:#F0B52D\n }\n .alert-cancelled, .alert-not-paid{\n background-color:#F56C6C\n }\n h1 {\n font-size: 32px !important;\n font-weight: bold;\n }\n .tickets-wrapper {\n margin-top: 118px;\n }\n .btn-download-ticket, .btn-download-all-tickets {\n border-radius: 6px !important;\n }\n .download-ticket {\n color: #000000;\n font-size: 9px;\n }\n h3.event-name {\n font-size: 26px;\n margin-bottom:7px\n }\n p.event-full-date {\n font-size: 14px;\n }\n @media screen and (max-width: 768px) {\n .content-block-rounded{\n background-color:#FFF;\n padding:17px;\n }\n .ticket-row-wrapper {\n padding: 15px 17px!important;\n }\n .order-status-page{\n width:unset\n }\n h1{\n font-size:22px!important\n }\n h3,h3.event-name,.product-name{\n font-size:16px!important\n }\n .event-full-date,.alert,.customer-name,p.refunded-text, p.invited-text{\n font-size:12px!important\n }\n .alert{\n margin-bottom:0\n }\n .btn-download-ticket{\n padding:5px 15px\n }\n .download-icon{\n width:17px;\n height:17px;\n margin-right:5px\n }\n .btn-download-all-tickets{\n padding:10px 15px;\n font-size:18px;\n }\n p.refunded-text, p.cancelled-text,span.product-counter{\n font-size:13px\n }\n .product-name, .product-counter{\n font-size:16px\n }\n }\n @media screen and (max-width: 400px) {\n .btn-download-ticket{\n padding:5px 10px;\n font-size:14px\n }\n .btn-download-all-tickets{\n padding:11px 25px;\n font-size:15pt;\n }\n }\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderStatus.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderStatus.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderStatus.vue?vue&type=template&id=6432e73e&scoped=true\"\nimport script from \"./OrderStatus.vue?vue&type=script&lang=js\"\nexport * from \"./OrderStatus.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderStatus.vue?vue&type=style&index=0&id=6432e73e&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6432e73e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[_c('b-row',[(_vm.tickets)?_c('b-col',{staticClass:\"content-block cart-container\"},[(_vm.tickets.length > 0)?[_c('h2',[_vm._v(_vm._s(_vm.$t('assign_tickets_title')))]),_c('p',[_vm._v(_vm._s(_vm.$t('assign_tickets_hint')))]),_c('b-form-group',[_c('b-button',{staticClass:\"mr-3 mb-3 full-width-button\",attrs:{\"size\":\"lg\",\"variant\":\"success\"},on:{\"click\":function($event){return _vm.assignTickets('self')}}},[_vm._v(\" \"+_vm._s(_vm.$t('assign_tickets_myself'))+\" \")])],1)]:_vm._e()],2):_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1),(!_vm.assignSelf)?_c('b-row',[_c('b-col',{staticClass:\"content-block mt-3\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('assign_tickets_select')))]),_c('div',{staticClass:\"pl-2\"},_vm._l((_vm.tickets),function(ticket){return _c('b-row',{key:`ticket `+ ticket.id},[_c('b-col',{attrs:{\"lg\":\"3\"}},[_c('b-row',{staticClass:\"product-details\"},[(ticket.order_product.product.image)?_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('b-img',{attrs:{\"fluid\":\"\",\"src\":ticket.order_product.product.image}})],1):_vm._e(),_c('b-col',[_c('h2',[_vm._v(_vm._s(ticket.order_product.product.name))])])],1)],1),_c('b-col',{attrs:{\"lg\":\"5\",\"sm\":\"6\"}},[_c('b-row',{staticClass:\"pt-3 pb-3\"},[_c('b-col',{staticClass:\"text-right\"},[_vm._v(_vm._s(_vm.$t('assign_ticket_self')))]),_c('b-col',{staticClass:\"text-center\",attrs:{\"cols\":\"2\"}},[_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"size\":\"lg\"},model:{value:(ticket.invite),callback:function ($$v) {_vm.$set(ticket, \"invite\", $$v)},expression:\"ticket.invite\"}})],1),_c('b-col',[_vm._v(_vm._s(_vm.$t('assign_ticket_sent')))])],1)],1),_c('b-col',{attrs:{\"sm\":\"6\",\"lg\":\"4\"}},[(ticket.invite)?_c('b-form-group',[_c('b-form-input',{staticClass:\"invite-email-input\",attrs:{\"placeholder\":_vm.$t('customer_email'),\"type\":\"email\",\"state\":_vm.validated ? _vm.errors.indexOf(ticket.id) === -1 : null},model:{value:(ticket.customer.invite_email),callback:function ($$v) {_vm.$set(ticket.customer, \"invite_email\", $$v)},expression:\"ticket.customer.invite_email\"}})],1):_vm._e()],1)],1)}),1),_c('div',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"size\":\"lg\",\"variant\":\"success\"},on:{\"click\":function($event){return _vm.assignTickets()}}},[_vm._v(_vm._s(_vm.$t('assign_tickets_continue')))])],1)])],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container>\n <b-row>\n <b-col v-if=\"tickets\" class=\"content-block cart-container\">\n <template v-if=\"tickets.length > 0\">\n <h2>{{ $t('assign_tickets_title') }}</h2>\n <p>{{ $t('assign_tickets_hint') }}</p>\n <b-form-group>\n <b-button size=\"lg\" @click=\"assignTickets('self')\" variant=\"success\" class=\"mr-3 mb-3 full-width-button\">\n {{ $t('assign_tickets_myself') }}\n </b-button>\n <!-- <b-button size=\"lg\" class=\"full-width-button mb-3\" @click=\"assignSelf = false\">{{ $t('assign_tickets_by_invite') }}</b-button> -->\n </b-form-group>\n </template>\n </b-col>\n <b-col v-else class=\"text-center\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n <b-row v-if=\"!assignSelf\">\n <b-col class=\"content-block mt-3\">\n <h1>{{ $t('assign_tickets_select') }}</h1>\n <div class=\"pl-2\">\n <b-row v-for=\"ticket in tickets\" :key=\"`ticket `+ ticket.id\">\n <b-col lg=\"3\">\n <b-row class=\"product-details\">\n <b-col cols=\"4\" v-if=\"ticket.order_product.product.image\">\n <b-img fluid :src=\"ticket.order_product.product.image\"></b-img>\n </b-col>\n <b-col>\n <h2>{{ ticket.order_product.product.name }}</h2>\n </b-col>\n </b-row>\n </b-col>\n <b-col lg=\"5\" sm=\"6\">\n <b-row class=\"pt-3 pb-3\">\n <b-col class=\"text-right\">{{ $t('assign_ticket_self') }}</b-col>\n <b-col cols=\"2\" class=\"text-center\">\n <b-form-checkbox switch size=\"lg\" v-model=\"ticket.invite\"></b-form-checkbox>\n </b-col>\n <b-col>{{ $t('assign_ticket_sent') }}</b-col>\n </b-row>\n </b-col>\n <b-col sm=\"6\" lg=\"4\">\n <b-form-group v-if=\"ticket.invite\">\n <b-form-input class=\"invite-email-input\" :placeholder=\"$t('customer_email')\" type=\"email\"\n v-model=\"ticket.customer.invite_email\"\n :state=\"validated ? errors.indexOf(ticket.id) === -1 : null\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <div class=\"text-right\">\n <b-button size=\"lg\" variant=\"success\" @click=\"assignTickets()\">{{ $t('assign_tickets_continue') }}</b-button>\n </div>\n </b-col>\n </b-row>\n\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\n\nexport default {\n components: {},\n data() {\n return {\n tickets: null,\n assignSelf: true,\n errors: [],\n validated: false\n }\n },\n methods: {\n validateEmail( email ){\n if(email == null){ return null }\n return email.toLowerCase().match(/^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/)\n },\n assignTickets(type='') {\n\n // Reset the invited at fields if they decide to switch to filling tickets themselves\n if(type === 'self'){\n this.tickets.map(ticket => {\n ticket.invite = false\n if(ticket.customer){\n ticket.customer.invite_email = null\n }\n return ticket\n })\n }\n\n this.validated = true\n this.errors = []\n this.tickets.forEach(ticket => { \n if(ticket.invite){\n if( this.validateEmail(ticket.customer.invite_email) === null ){\n this.errors.push(ticket.id)\n }\n }\n })\n\n if(this.errors.length > 0){\n return\n }\n\n let inviteRequests = this.tickets.filter((ticket) => {\n return ticket.invite\n }).map((ticket) => {\n return api.ticket().assign(ticket.id, ticket.secret, ticket.customer.invite_email)\n })\n\n if (inviteRequests.length === 0) {\n // no tickets to send invites for\n this.$router.push({\n name: 'AssignTickets',\n params: this.$route.params\n })\n return\n }\n Promise.all(inviteRequests).then(() => {\n this.$store.commit('success', 'tickets_assigned_email_sent')\n this.$router.push({\n name: 'AssignTickets',\n params: this.$route.params\n })\n }).catch((error) => {\n this.$store.commit('errors', error.response.body)\n })\n }\n },\n created() {\n this.$store.commit('clearCart')\n document.title = this.$t('order_view_order_details_title')\n api.pos().getByOrderIdAndSecret(this.$route.params.id, this.$route.params.secret).then(pos => {\n if(pos){\n this.$store.commit('setPos', pos)\n\n if(pos.language && !localStorage.getItem('ft_lang')){\n this.$store.commit('setLanguage', pos.language)\n }\n }\n })\n\n api.order().getTickets(this.$route.params.id, this.$route.params.secret).then(tickets => {\n this.tickets = tickets.map(ticket => {\n if(!ticket.customer){\n ticket.customer = []\n }\n return ticket\n })\n })\n }\n}\n</script>\n<style scoped>\nh2{\n font-size:1.5rem;\n font-weight:bold\n}\np{\n font-size:0.8rem\n}\n.product-details {\n padding: 0.5em;\n}\n\n.product-details h2 {\n font-size: 1em;\n line-height: 50px;\n}\n\n.product-details img {\n max-width: 50px;\n max-height: 50px;\n}\n\n@media only screen and (max-width: 360px) {\n .full-width-button{\n width:100%\n }\n .full-width-button:first-of-type{\n margin-bottom:1rem\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerOrderDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerOrderDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerOrderDetails.vue?vue&type=template&id=759ab79c&scoped=true\"\nimport script from \"./CustomerOrderDetails.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerOrderDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerOrderDetails.vue?vue&type=style&index=0&id=759ab79c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"759ab79c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[_c('b-row',[_c('b-col',{staticClass:\"content-block cart-container text-center pr-5 pl-5\"},[_c('div',{staticClass:\"pt-5 pb-5\"},[_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"font-scale\":\"6\",\"variant\":\"success\"}})],1),_c('h1',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('order_thank_you', {order_number: _vm.order_number})))]),_c('p',{staticClass:\"subtitle m-5\"},[_vm._v(_vm._s(_vm.$t('order_payment_pending')))])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container>\n <b-row>\n <b-col class=\"content-block cart-container text-center pr-5 pl-5\">\n <div class=\"pt-5 pb-5\">\n <b-icon icon=\"check-circle-fill\" font-scale=\"6\" variant=\"success\"></b-icon>\n </div>\n <h1 class=\"title\">{{ $t('order_thank_you', {order_number: order_number}) }}</h1>\n <p class=\"subtitle m-5\">{{ $t('order_payment_pending') }}</p>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\n\nexport default {\n components: {},\n data() {\n return {\n tickets: null,\n assignSelf: true,\n order_number: ''\n }\n },\n methods: {\n assignTickets() {\n let inviteRequests = this.tickets.filter((ticket) => {\n return ticket.invite\n }).map((ticket) => {\n return api.ticket().assign(ticket.id, ticket.secret, ticket.customer.invite_email)\n })\n\n if (inviteRequests.length === 0) {\n // no tickets to send invites for\n this.$router.push({\n name: 'AssignTickets',\n params: this.$route.params\n })\n return\n }\n Promise.all(inviteRequests).then(() => {\n this.$store.commit('success', 'tickets_assigned_email_sent')\n this.$router.push({\n name: 'AssignTickets',\n params: this.$route.params\n })\n }).catch((error) => {\n this.$store.commit('errors', error.response.body)\n })\n }\n },\n created() {\n this.$store.commit('clearCart')\n document.title = this.$t('order_view_order_details_title')\n if(this.$route.query.order_number) {\n this.order_number = this.$route.query.order_number;\n }\n if(!localStorage.getItem('ft_lang')) {\n api.pos().getByOrderIdAndSecret(this.$route.params.id, this.$route.params.secret).then(pos => {\n if (pos) {\n if(pos.language){\n this.$store.commit('setLanguage', pos.language)\n }\n }\n })\n }\n\n api.order().getTickets(this.$route.params.id, this.$route.params.secret).then(tickets => {\n this.tickets = tickets\n })\n }\n}\n</script>\n<style scoped>\n\n.product-details {\n padding: 0.5em;\n}\n\n.product-details h2 {\n font-size: 1em;\n line-height: 50px;\n}\n\n.product-details img {\n max-width: 50px;\n max-height: 50px;\n}\n\n@media only screen and (max-width: 360px) {\n .full-width-button{\n width:100%\n }\n .full-width-button:first-of-type{\n margin-bottom:1rem\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerOrderPending.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerOrderPending.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerOrderPending.vue?vue&type=template&id=7cb89f83&scoped=true\"\nimport script from \"./CustomerOrderPending.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerOrderPending.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerOrderPending.vue?vue&type=style&index=0&id=7cb89f83&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7cb89f83\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[(_vm.show_next_modal)?_c('div',{attrs:{\"id\":\"circle-modal\"}},[_c('b-row',[_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"font-scale\":\"6\",\"variant\":\"success\"}})],1)],1):_vm._e(),(_vm.ticket && _vm.customQuestions)?_c('b-row',[_c('b-col',{staticClass:\"content-block cart-container\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('tickets_fill_title', {todo: _vm.todo, done: _vm.done})))]),_c('customer-form',{ref:\"customer-form\",attrs:{\"level\":\"ticket\",\"fields\":_vm.customerFields,\"is-claim\":true,\"order-customer\":_vm.ticket.order.customer},model:{value:(_vm.ticket.customer),callback:function ($$v) {_vm.$set(_vm.ticket, \"customer\", $$v)},expression:\"ticket.customer\"}}),(_vm.questions.length)?_c('h2',[_vm._v(_vm._s(_vm.$t('customer_form_custom_questions')))]):_vm._e(),_c('customer-information-form',{ref:\"customer-information-form\",attrs:{\"disabled\":_vm.sending,\"questions\":_vm.questions},model:{value:(_vm.ticket.answers),callback:function ($$v) {_vm.$set(_vm.ticket, \"answers\", $$v)},expression:\"ticket.answers\"}}),_c('b-row',[_c('b-col',{staticClass:\"text-right\"},[_c('b-form-group',[(!_vm.sending)?_c('b-button',{attrs:{\"size\":\"lg\",\"variant\":\"success\"},on:{\"click\":function($event){return _vm.next()}}},[_vm._v(\" \"+_vm._s(_vm.$t('assign_tickets_next'))+\" \")]):_c('b-spinner')],1)],1)],1)],1),_c('b-col',{staticClass:\"ticket-list\",attrs:{\"lg\":\"4\"}},[_c('div',{staticClass:\"content-sidebar\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('tickets_fill_completed')))]),_vm._l((_vm.tickets),function(t,i){return _c('b-row',{key:`sidebarticket` + t.id},[_c('b-col',[_c('b-button',{staticClass:\"assign-tickets-button\",attrs:{\"variant\":\"link\"},on:{\"click\":function($event){return _vm.loadTicketForm(i)}}},[(i === _vm.ticketIndex)?_c('b-icon',{attrs:{\"icon\":\"chevron-right\"}}):((t.claimed_at))?_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\"}}):_c('b-icon',{attrs:{\"icon\":\"circle-fill\",\"variant\":\"green\"}}),_vm._v(\" \"+_vm._s(t.order_product.product.name)+\" \")],1)],1)],1)})],2)])],1):_c('b-row',[_c('b-col',{staticClass:\"text-center content-block\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('order_loading')))]),_c('b-spinner',{staticStyle:{\"width\":\"10em\",\"height\":\"10em\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container>\n\n <div id=\"circle-modal\" v-if=\"show_next_modal\">\n <b-row>\n <b-icon icon=\"check-circle-fill\" font-scale=\"6\" variant=\"success\"></b-icon>\n </b-row>\n </div>\n\n <b-row v-if=\"ticket && customQuestions\">\n <b-col class=\"content-block cart-container\">\n <h1>{{ $t('tickets_fill_title', {todo, done}) }}</h1>\n <customer-form ref=\"customer-form\" v-model=\"ticket.customer\" level=\"ticket\"\n :fields=\"customerFields\" :is-claim=\"true\" :order-customer=\"ticket.order.customer\"></customer-form>\n <h2 v-if=\"questions.length\">{{ $t('customer_form_custom_questions') }}</h2>\n <customer-information-form :disabled=\"sending\" ref=\"customer-information-form\" v-model=\"ticket.answers\"\n :questions=\"questions\"></customer-information-form>\n <b-row>\n <b-col class=\"text-right\">\n <b-form-group>\n <b-button v-if=\"!sending\" size=\"lg\" @click=\"next()\" variant=\"success\">\n {{ $t('assign_tickets_next') }}\n </b-button>\n <b-spinner v-else></b-spinner>\n </b-form-group>\n </b-col>\n </b-row>\n </b-col>\n <b-col lg=\"4\" class=\" ticket-list \">\n <div class=\"content-sidebar\">\n <h1>{{ $t('tickets_fill_completed') }}</h1>\n <b-row v-for=\"(t, i) in tickets\" :key=\"`sidebarticket` + t.id\">\n <b-col>\n <b-button class=\"assign-tickets-button\" variant=\"link\" @click=\"loadTicketForm(i)\">\n <b-icon v-if=\"i === ticketIndex\" icon=\"chevron-right\"></b-icon>\n <b-icon v-else-if=\"(t.claimed_at)\" icon=\"check-circle-fill\"></b-icon>\n <b-icon v-else icon=\"circle-fill\" variant=\"green\"></b-icon>\n {{ t.order_product.product.name }}\n </b-button>\n </b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n <b-row v-else>\n <b-col class=\"text-center content-block\">\n <h1>{{ $t('order_loading') }}</h1>\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport api from '../api'\nimport CustomerForm from \"@/components/CustomerForm\";\nimport CustomerInformationForm from \"@/components/CustomerInformationForm\";\n\nexport default {\n components: {\n CustomerForm,\n CustomerInformationForm\n },\n data() {\n return {\n errors: [],\n tickets: null,\n ticket: null,\n assignSelf: true,\n ticketIndex: 0,\n customQuestions: [],\n answers: {},\n sending: false,\n customerFields: [],\n show_next_modal: false,\n order_number: null,\n order_secret: null\n }\n },\n watch: {\n show_next_modal(newVal){\n if(newVal){\n setTimeout(function(){\n this.show_next_modal = false\n }.bind(this), 1200)\n }\n }\n },\n computed: {\n isValid() {\n return this.errors.length === 0\n },\n todo() {\n if (!this.tickets) {\n return 0\n }\n\n return this.ticketIndex + 1\n },\n done() {\n if (!this.tickets) {\n return 0\n }\n return this.tickets.length\n },\n questions() {\n if(!this.ticket){\n return [];\n }\n return this.customQuestions.filter(question => {\n if(question.where_to_show === 'products') {\n return question.products.some(product => {\n return product.product_id === this.ticket.order_product.product_id;\n })\n }\n return false;\n });\n }\n },\n methods: {\n loadTicketForm(index) {\n this.ticketIndex = index\n this.ticket = this.tickets[this.ticketIndex]\n\n if (this.$refs['customer-information-form']) {\n this.$refs['customer-information-form'].reset()\n }\n if (this.$refs['customer-form']) {\n this.$refs['customer-form'].reset()\n }\n\n if (!this.ticket.customer) {\n this.ticket.customer = {}\n }\n api.customerInformation().getAnswersByTicket(this.ticket.id, this.ticket.secret).then((answers) => {\n answers.forEach(answer => {\n this.ticket.answers[answer.customer_information_id] = answer.answer\n })\n if (answers.length === 0) {\n this.ticket.answers = {}\n }\n })\n },\n next() {\n let customerValid = this.$refs['customer-form'].isValid()\n let customerInformationValid = this.$refs['customer-information-form'].isValid()\n if (!customerValid || !customerInformationValid) {\n return\n }\n\n this.sending = true\n\n api.ticket().updateCustomer(this.ticket.id, this.ticket.secret, this.ticket.customer).then(() => {\n if (this.customQuestions.length > 0) {\n api.customerInformation().submit(this.ticket.id, this.ticket.secret, this.ticket.answers).then(() => {})\n }\n api.ticket().claim(this.ticket.id, this.ticket.secret).then(() => {\n this.sending = false\n if (this.ticketIndex + 1 < this.tickets.length) {\n if(document.body.contains(document.getElementById('company-header'))){\n document.getElementById(\"company-header\").scrollIntoView();\n }\n this.show_next_modal = true\n this.tickets[this.ticketIndex].claimed_at = true\n this.loadTicketForm(this.ticketIndex + 1)\n } else {\n this.$router.push({\n name: 'OrderThankYou',\n query: {\n order_number: this.order_number,\n order_secret: this.order_secret\n }\n })\n }\n })\n })\n }\n },\n created() {\n document.title = this.$t('order_view_assign_title');\n if(!localStorage.getItem('ft_lang')) {\n api.pos().getByOrderIdAndSecret(this.$route.params.id, this.$route.params.secret).then(pos => {\n if (pos) {\n if (pos.language) {\n this.$store.commit('setLanguage', pos.language)\n }\n }\n })\n }\n api.order().getTickets(this.$route.params.id, this.$route.params.secret).then(tickets => {\n this.tickets = tickets.filter((t) => {\n if(t.order.order_number && !this.order_number){\n this.order_number = t.order.order_number\n }\n if(t.order.secret && !this.order_secret){\n this.order_secret = t.order.secret\n }\n return !t.invited_at\n }).map(t => Object.assign(t, {answers: {}}))\n if (this.tickets.length === 0) {\n this.$router.push({\n name: 'OrderThankYou',\n query: {\n order_number: this.order_number,\n order_secret: this.order_secret\n }\n })\n return\n }\n this.loadTicketForm(this.ticketIndex)\n })\n\n api.customerInformation().getByOrder(this.$route.params.id, this.$route.params.secret).then((customQuestions) => {\n this.customQuestions = customQuestions\n })\n\n api.customerInformation().getFieldsByOrder(this.$route.params.id, this.$route.params.secret).then((customerFields) => {\n this.customerFields = customerFields\n })\n\n }\n}\n</script>\n<style scoped>\nh1{\n font-size:1.6rem;\n font-weight:bold\n}\n.btn.assign-tickets-button{\n margin-bottom:0.2em;\n}\n.ticket-list .btn {\n font-size: 1.4em;\n}\n#circle-modal .bi-check-circle-fill{\n font-size:250px !important\n}\n#circle-modal{\n position:fixed;\n top:40%;\n left:50%;\n z-index:1000;\n margin-top:-100px;\n margin-left:-100px;\n background-color:#FFF;\n border-radius:1000px;\n display:flex;\n flex-direction: column;\n justify-content: center;\n}\n#circle-modal div.row{\n justify-content: center;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AssignTickets.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AssignTickets.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AssignTickets.vue?vue&type=template&id=2cd7fb02&scoped=true\"\nimport script from \"./AssignTickets.vue?vue&type=script&lang=js\"\nexport * from \"./AssignTickets.vue?vue&type=script&lang=js\"\nimport style0 from \"./AssignTickets.vue?vue&type=style&index=0&id=2cd7fb02&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2cd7fb02\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card mb-2\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"2\"}},[_c('b-form-group',[_vm._v(\" \"+_vm._s(_vm.$t('report_event'))+\" \"),_c('b-select',{attrs:{\"options\":_vm.events},on:{\"change\":_vm.selectEvent},model:{value:(_vm.filter_event),callback:function ($$v) {_vm.filter_event=$$v},expression:\"filter_event\"}}),_c('b-form-checkbox',{staticClass:\"mt-2 report-switch-small\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.includeArchivedEvents),callback:function ($$v) {_vm.includeArchivedEvents=$$v},expression:\"includeArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('reports_include_archived_events')))])],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('report_date_range_start'))+\" \"),_c('date-picker',{model:{value:(_vm.date_range.start),callback:function ($$v) {_vm.$set(_vm.date_range, \"start\", $$v)},expression:\"date_range.start\"}})],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('report_date_range_end'))+\" \"),_c('date-picker',{model:{value:(_vm.date_range.end),callback:function ($$v) {_vm.$set(_vm.date_range, \"end\", $$v)},expression:\"date_range.end\"}})],1),_c('b-col',{staticClass:\"align\",attrs:{\"cols\":\"12\",\"md\":\"6 \",\"lg\":\"2\"}},[_c('b-form-group',{staticClass:\"block mb-3 mb-md-0\"},[_c('p',[_vm._v(_vm._s(_vm.$t('report_box_office')))]),_c('b-form-checkbox',{attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.filter_box_office),callback:function ($$v) {_vm.filter_box_office=$$v},expression:\"filter_box_office\"}})],1)],1),_c('b-col',{staticClass:\"align\",attrs:{\"cols\":\"12\",\"md\":\"12 \",\"lg\":\"2\"}},[_c('b-button',{staticClass:\"text-right btn-filter mt-0\",attrs:{\"variant\":\"new\"},on:{\"click\":_vm.getReportData}},[_vm._v(_vm._s(_vm.$t('report_filter_btn')))])],1)],1)],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.paid_orders_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_paid_orders')))])])],1),_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.ticket_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_tickets_sold')))])])],1),_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.claimed_tickets_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_tickets_claimed')))])])],1),_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.free_tickets_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_free_tickets')))])])],1),_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.data.total_revenue)))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_total_revenue')))])])],1),(_vm.isEventStart)?_c('b-col',{attrs:{\"lg\":\"20\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.total_scans))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('reports_tickets_scanned')))])])],1):_vm._e()],1),(_vm.isEventStart)?_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('reports_tickets_scans')))]),_c('div',{staticClass:\"p-2\"},[_c('b-row',[_c('b-col',{attrs:{\"sm\":\"3\",\"md\":\"2\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('reports_period')}},[_c('b-form-select',{model:{value:(_vm.scansOption),callback:function ($$v) {_vm.scansOption=$$v},expression:\"scansOption\"}},[_c('b-form-select-option',{attrs:{\"value\":\"hourly\"}},[_vm._v(_vm._s(_vm.$t('reports_tickets_scans_hourly')))]),_c('b-form-select-option',{attrs:{\"value\":\"daily\"}},[_vm._v(_vm._s(_vm.$t('reports_tickets_scans_daily')))]),_c('b-form-select-option',{attrs:{\"value\":\"weekly\"}},[_vm._v(_vm._s(_vm.$t('reports_tickets_scans_weekly')))]),_c('b-form-select-option',{attrs:{\"value\":\"monthly\"}},[_vm._v(_vm._s(_vm.$t('reports_tickets_scans_monthly')))])],1)],1)],1),(_vm.scansOption === 'hourly')?_c('b-col',[_c('b-row',[_c('b-col',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('report_date_range_start')},model:{value:(_vm.scansStartsAt),callback:function ($$v) {_vm.scansStartsAt=$$v},expression:\"scansStartsAt\"}})],1),_c('b-col',[_c('date-time-picker',{attrs:{\"label\":_vm.$t('report_date_range_end')},model:{value:(_vm.scansEndsAt),callback:function ($$v) {_vm.scansEndsAt=$$v},expression:\"scansEndsAt\"}})],1)],1)],1):_vm._e(),(_vm.scansOption === 'daily')?_c('b-col',[_c('b-row',[_c('b-col',[_c('date-picker',{attrs:{\"label\":_vm.$t('report_date_range_start')},model:{value:(_vm.scansStartsAt),callback:function ($$v) {_vm.scansStartsAt=$$v},expression:\"scansStartsAt\"}})],1),_c('b-col',[_c('date-picker',{attrs:{\"label\":_vm.$t('report_date_range_end')},model:{value:(_vm.scansEndsAt),callback:function ($$v) {_vm.scansEndsAt=$$v},expression:\"scansEndsAt\"}})],1)],1)],1):_vm._e(),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('span',{staticClass:\"label-block\"}),_c('b-button',{staticClass:\"text-right mt-0\",attrs:{\"disabled\":_vm.scanLoading,\"variant\":\"new\"},on:{\"click\":function($event){return _vm.getTicketsScansData()}}},[(_vm.scanLoading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('report_filter_btn'))+\" \")],1)],1)],1)],1),_c('b-cart-text',[_c('apexchart',{ref:\"ticket_scans\",attrs:{\"width\":\"99%\",\"height\":\"300px\",\"type\":\"line\",\"options\":_vm.chartOptionsScans,\"series\":_vm.seriesScans}})],1)],1)],1)],1):_vm._e(),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',{attrs:{\"lg\":\"6\",\"sm\":\"12\",\"cols\":\"12\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_sales_per_day')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartsales_per_day\",attrs:{\"width\":\"99%\",\"height\":\"300px\",\"type\":\"line\",\"options\":_vm.chartOptionsSales,\"series\":_vm.seriesSales}})],1)],1)],1),_c('b-col',{attrs:{\"lg\":\"6\",\"sm\":\"12\",\"cols\":\"12\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_sales_per_day_cumulative')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartsales_cumulative\",attrs:{\"width\":\"99%\",\"height\":\"300px\",\"type\":\"line\",\"options\":_vm.chartOptionsSalesCumulative,\"series\":_vm.seriesSalesCumulative}})],1)],1)],1)],1),_c('b-row',{staticClass:\"mb-4\"},[_c('b-col',{attrs:{\"lg\":\"8\",\"sm\":\"12\",\"cols\":\"12\"}},[(_vm.isEventStart)?_c('b-card',{staticClass:\"mt-4\"},[_c('b-row',[_c('b-col',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('reports_scans_by_type')))])],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"p-2\"},[_c('b-icon',{staticClass:\"mr-2 cursor-pointer\",attrs:{\"icon\":\"search\"},on:{\"click\":function($event){_vm.searchScansPerTypeVisibility = !_vm.searchScansPerTypeVisibility}}}),(_vm.searchScansPerTypeVisibility)?_c('b-input',{staticClass:\"sold-per-type-search mr-2\",attrs:{\"type\":\"search\"},model:{value:(_vm.searchScansPerType),callback:function ($$v) {_vm.searchScansPerType=$$v},expression:\"searchScansPerType\"}}):_vm._e(),_c('b-icon',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:('scans_per_type'),expression:\"'scans_per_type'\"}],staticClass:\"toggle-icon\",attrs:{\"icon\":_vm.scans_per_type_open ? 'arrows-angle-contract' : 'arrows-angle-expand'},on:{\"click\":function($event){_vm.scans_per_type_open = !_vm.scans_per_type_open}}})],1)])],1),_c('b-collapse',{attrs:{\"visible\":\"\",\"id\":\"scans_per_type\"}},[_c('b-cart-text',_vm._l((_vm.productsScan),function(tickets,group){return _c('div',{key:group,staticClass:\"mb-3\"},[_c('div',{class:{'bg-light':true,'p-3':group !== 'event_default_group'}},[_vm._v(_vm._s(group !== 'event_default_group' ? group : ''))]),_vm._l((tickets),function(ticket){return _c('b-row',{key:ticket.name,staticClass:\"border-bottom py-3 w-100 m-0 ticket-row\"},[_c('b-col',{staticClass:\"mb-3 mb-md-0\",attrs:{\"cols\":\"12\",\"sm\":\"12\",\"lg\":\"5\"}},[_vm._v(_vm._s(ticket.name))]),_c('b-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\",\"lg\":\"3\"}},[_c('b-progress',{attrs:{\"value\":Math.ceil((ticket.scans/ticket.sold) * 100)}})],1),(ticket.sold === -1)?_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(\"100\")]):_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.perc)+\"%\")]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.scans)+\"/\"+_vm._s(ticket.sold >=0 ? ticket.sold : _vm.$t('product_stock_unlimited_icon')))])],1)})],2)}),0)],1)],1):_vm._e(),_c('b-card',{staticClass:\"mt-4\"},[_c('b-row',[_c('b-col',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_tickets_sold_per_type')))])],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"6\"}},[_c('div',{staticClass:\"p-2\"},[_c('b-icon',{staticClass:\"mr-2 cursor-pointer\",attrs:{\"icon\":\"search\"},on:{\"click\":function($event){_vm.searchSoldPerTypeVisibility = !_vm.searchSoldPerTypeVisibility}}}),(_vm.searchSoldPerTypeVisibility)?_c('b-input',{staticClass:\"sold-per-type-search mr-2\",attrs:{\"type\":\"search\"},model:{value:(_vm.searchSoldPerType),callback:function ($$v) {_vm.searchSoldPerType=$$v},expression:\"searchSoldPerType\"}}):_vm._e(),_c('b-icon',{directives:[{name:\"b-toggle\",rawName:\"v-b-toggle\",value:('sold_per_type'),expression:\"'sold_per_type'\"}],staticClass:\"toggle-icon\",attrs:{\"icon\":_vm.sold_per_type_open ? 'arrows-angle-contract' : 'arrows-angle-expand'},on:{\"click\":function($event){_vm.sold_per_type_open = !_vm.sold_per_type_open}}})],1)])],1),_c('b-collapse',{attrs:{\"visible\":\"\",\"id\":\"sold_per_type\"}},[_c('b-cart-text',_vm._l((_vm.products),function(groupProducts,group){return _c('div',{key:group,staticClass:\"mb-1\"},[_c('div',{class:{'bg-light':true,'p-2':group !== 'event_default_group'}},[_vm._v(_vm._s(group !== 'event_default_group' ? group : ''))]),_vm._l((groupProducts),function(ticket){return _c('b-row',{key:ticket.name,staticClass:\"border-bottom py-2 w-100 m-0 ticket-row\"},[_c('b-col',{staticClass:\"mb-3 mb-md-0\",attrs:{\"cols\":\"12\",\"sm\":\"12\",\"lg\":\"5\"}},[_vm._v(_vm._s(ticket.name))]),_c('b-col',{attrs:{\"cols\":\"6\",\"sm\":\"6\",\"lg\":\"3\"}},[_c('b-progress',{attrs:{\"value\":Math.ceil((ticket.times_sold/ticket.stock) * 100)}})],1),(ticket.stock === -1)?_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(\"100\")]):(ticket.perc === 100)?_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_c('b-badge',{staticClass:\"text-uppercase\",attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('report_sold_out')))])],1):_c('b-col',{attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.perc)+\"%\")]),(_vm.filter_event && _vm.$can('reports_sales_by_tickettype_view'))?_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_c('router-link',{attrs:{\"to\":{name: 'ReportSalesPerTickettype', query: {event: _vm.filter_event, ticket: ticket.product_id}}}},[_vm._v(_vm._s(ticket.times_sold)+\"/\"+_vm._s(ticket.stock === -1 ? _vm.$t('product_stock_unlimited_icon') : ticket.stock))])],1):_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"3\",\"sm\":\"3\",\"lg\":\"2\"}},[_vm._v(_vm._s(ticket.times_sold)+\"/\"+_vm._s(ticket.stock >=0 ? ticket.stock : _vm.$t('product_stock_unlimited_icon')))])],1)})],2)}),0)],1)],1)],1),_c('b-col',{staticClass:\"mt-4\",attrs:{\"lg\":\"4\",\"sm\":\"12\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center mb-3 mt-0 mr-0\"},[_c('span',[_vm._v(_vm._s(_vm.data.age_avg))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_age_avg')))])]),_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_age')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartages\",attrs:{\"width\":\"99%\",\"type\":\"bar\",\"options\":_vm.chartOptionsAges,\"series\":_vm.seriesAges}}),_c('div',{staticClass:\"mb-5\"},_vm._l((_vm.ages),function(amount,age){return _c('b-row',{key:'age-' + age,staticClass:\"flexaround\"},[_c('b-col',{staticClass:\"text-left\",attrs:{\"cols\":\"5\"}},[_vm._v(_vm._s(age))]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"5\"}},[_vm._v(_vm._s(amount)+\"%\")])],1)}),1)],1)],1)],1)],1),_c('b-row',{staticClass:\"pie-chart-row\"},[_c('b-col',{staticClass:\"mb-4\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_gender')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartgenders\",attrs:{\"width\":\"99%\",\"type\":\"donut\",\"options\":_vm.chartOptions,\"series\":_vm.series}})],1)],1)],1),_c('b-col',{staticClass:\"mb-4\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_cities')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartcities\",attrs:{\"width\":\"99%\",\"type\":\"donut\",\"options\":_vm.chartOptions,\"series\":_vm.series}})],1)],1)],1),_c('b-col',{staticClass:\"mb-4\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_payment_methods')))]),_c('b-cart-text',[_c('apexchart',{ref:\"chartpayment_methods\",attrs:{\"width\":\"99%\",\"type\":\"donut\",\"options\":_vm.chartOptions,\"series\":_vm.series}})],1)],1)],1)],1),(_vm.custom_questions)?_c('b-row',{staticClass:\"pie-chart-row\"},_vm._l((_vm.custom_questions),function(question){return _c('b-col',{key:question.question,staticClass:\"mb-4 mt-4\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(question.question))]),_c('b-card-text',[_c('table',_vm._l((question.answers),function(answer){return _c('tr',{key:answer.answer},[_c('td',[_vm._v(_vm._s(answer.answer)+\":\")]),_c('td',{staticStyle:{\"padding-left\":\"10px\"}},[_vm._v(_vm._s(answer.count))])])}),0)])],1)],1)}),1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\">\n <b-card class=\"info-card mb-2\">\n <b-row>\n <b-col cols=\"12\" md=\"6\" lg=\"2\">\n <b-form-group>\n {{ $t('report_event') }}\n <b-select @change=\"selectEvent\" v-model=\"filter_event\" :options=\"events\"></b-select>\n <b-form-checkbox class=\"mt-2 report-switch-small\" switch v-model=\"includeArchivedEvents\" :value=\"true\" :unchecked-value=\"false\">{{ $t('reports_include_archived_events') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" md=\"6\" lg=\"3\">\n {{ $t('report_date_range_start') }} \n <date-picker v-model=\"date_range.start\"></date-picker>\n </b-col>\n <b-col cols=\"12\" md=\"6\" lg=\"3\">\n {{ $t('report_date_range_end') }} \n <date-picker v-model=\"date_range.end\"></date-picker>\n </b-col>\n <b-col cols=\"12\" md=\"6 \" lg=\"2\" class=\"align\">\n <b-form-group class=\"block mb-3 mb-md-0\">\n <p>{{ $t('report_box_office') }}</p>\n <b-form-checkbox switch v-model=\"filter_box_office\" :value=\"true\" :unchecked-value=\"false\"></b-form-checkbox> \n </b-form-group>\n </b-col>\n <b-col cols=\"12\" md=\"12 \" lg=\"2\" class=\"align\">\n <b-button class=\" text-right btn-filter mt-0\" variant=\"new\" v-on:click=\"getReportData\">{{ $t('report_filter_btn') }}</b-button>\n </b-col>\n </b-row>\n </b-card>\n </b-col>\n </b-row>\n <b-row>\n <b-col lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.paid_orders_count }}</span><br/>\n <span>{{ $t('report_paid_orders') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.ticket_count }}</span><br/>\n <span>{{ $t('report_tickets_sold') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.claimed_tickets_count }}</span><br/>\n <span>{{ $t('report_tickets_claimed') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.free_tickets_count }}</span><br/>\n <span>{{ $t('report_free_tickets') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.total_revenue | currency }}</span><br/>\n <span>{{ $t('report_total_revenue') }}</span>\n </b-card>\n </b-col>\n <b-col v-if=\"isEventStart\" lg=\"20\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.total_scans }}</span><br/>\n <span>{{ $t('reports_tickets_scanned') }}</span>\n </b-card>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\" v-if=\"isEventStart\">\n <b-col>\n <b-card>\n <b-card-title>{{ $t('reports_tickets_scans') }}</b-card-title>\n <div class=\"p-2\">\n <b-row>\n <b-col sm=\"3\" md=\"2\">\n <b-form-group :label=\"$t('reports_period')\">\n <b-form-select v-model=\"scansOption\">\n <b-form-select-option value=\"hourly\">{{ $t('reports_tickets_scans_hourly') }}</b-form-select-option>\n <b-form-select-option value=\"daily\">{{ $t('reports_tickets_scans_daily') }}</b-form-select-option>\n <b-form-select-option value=\"weekly\">{{ $t('reports_tickets_scans_weekly') }}</b-form-select-option>\n <b-form-select-option value=\"monthly\">{{ $t('reports_tickets_scans_monthly') }}</b-form-select-option>\n </b-form-select>\n </b-form-group>\n </b-col>\n <b-col v-if=\"scansOption === 'hourly'\">\n <b-row>\n <b-col>\n <date-time-picker v-model=\"scansStartsAt\" :label=\"$t('report_date_range_start')\"></date-time-picker>\n </b-col>\n <b-col>\n <date-time-picker v-model=\"scansEndsAt\" :label=\"$t('report_date_range_end')\"></date-time-picker>\n </b-col>\n </b-row>\n </b-col>\n <b-col v-if=\"scansOption === 'daily'\">\n <b-row>\n <b-col>\n <date-picker v-model=\"scansStartsAt\" :label=\"$t('report_date_range_start')\"></date-picker>\n </b-col>\n <b-col>\n <date-picker v-model=\"scansEndsAt\" :label=\"$t('report_date_range_end')\"></date-picker>\n </b-col>\n </b-row>\n </b-col>\n <b-col cols=\"2\">\n <span class=\"label-block\"></span>\n <b-button :disabled=\"scanLoading\" class=\"text-right mt-0\" variant=\"new\" @click=\"getTicketsScansData()\">\n <b-icon v-if=\"scanLoading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('report_filter_btn') }}\n </b-button>\n </b-col>\n </b-row>\n </div>\n <b-cart-text>\n <apexchart ref=\"ticket_scans\" width=\"99%\" height=\"300px\" type=\"line\" :options=\"chartOptionsScans\"\n :series=\"seriesScans\"></apexchart>\n\n </b-cart-text>\n </b-card>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\">\n <b-col lg=\"6\" sm=\"12\" cols=\"12\">\n <b-card>\n <b-card-title>{{ $t('report_sales_per_day') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartsales_per_day\" width=\"99%\" height=\"300px\" type=\"line\" :options=\"chartOptionsSales\"\n :series=\"seriesSales\"></apexchart>\n \n </b-cart-text>\n </b-card>\n </b-col>\n <b-col lg=\"6\" sm=\"12\" cols=\"12\">\n <b-card>\n <b-card-title>{{ $t('report_sales_per_day_cumulative') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartsales_cumulative\" width=\"99%\" height=\"300px\" type=\"line\" :options=\"chartOptionsSalesCumulative\"\n :series=\"seriesSalesCumulative\"></apexchart>\n </b-cart-text>\n </b-card>\n </b-col>\n </b-row>\n <b-row class=\"mb-4\">\n <b-col lg=\"8\" sm=\"12\" cols=\"12\">\n <b-card v-if=\"isEventStart\" class=\"mt-4\">\n <b-row>\n <b-col>\n <b-card-title>{{ $t('reports_scans_by_type') }}</b-card-title>\n </b-col>\n <b-col cols=\"6\" class=\"text-right\">\n <div class=\"p-2\">\n <b-icon icon=\"search\" @click=\"searchScansPerTypeVisibility = !searchScansPerTypeVisibility\" class=\"mr-2 cursor-pointer\"></b-icon>\n <b-input v-if=\"searchScansPerTypeVisibility\" v-model=\"searchScansPerType\" type=\"search\" class=\"sold-per-type-search mr-2\"/>\n <b-icon @click=\"scans_per_type_open = !scans_per_type_open\" v-b-toggle=\"'scans_per_type'\" :icon=\"scans_per_type_open ? 'arrows-angle-contract' : 'arrows-angle-expand'\" class=\"toggle-icon\"></b-icon>\n </div>\n </b-col>\n </b-row>\n <b-collapse visible id=\"scans_per_type\">\n <b-cart-text>\n <div v-for=\"(tickets, group) in productsScan\" :key=\"group\" class=\"mb-3\">\n <div :class=\"{'bg-light':true,'p-3':group !== 'event_default_group'}\">{{ group !== 'event_default_group' ? group : '' }}</div>\n <b-row v-for=\"ticket in tickets\" :key=\"ticket.name\" class=\"border-bottom py-3 w-100 m-0 ticket-row\">\n <b-col cols=\"12\" sm=\"12\" lg=\"5\" class=\"mb-3 mb-md-0\">{{ ticket.name }}</b-col>\n <b-col cols=\"6\" sm=\"6\" lg=\"3\" >\n <b-progress :value=\"Math.ceil((ticket.scans/ticket.sold) * 100)\"></b-progress>\n </b-col>\n <b-col v-if=\"ticket.sold === -1\" cols=\"3\" sm=\"3\" lg=\"2\" >100</b-col>\n <b-col v-else cols=\"3\" sm=\"3\" lg=\"2\" >{{ ticket.perc }}%</b-col>\n <b-col cols=\"3\" sm=\"3\" lg=\"2\" class=\"text-right\">{{ ticket.scans }}/{{ ticket.sold >=0 ? ticket.sold : $t('product_stock_unlimited_icon') }}</b-col>\n </b-row>\n </div>\n </b-cart-text>\n </b-collapse>\n </b-card>\n <b-card class=\"mt-4\">\n <b-row>\n <b-col>\n <b-card-title>{{ $t('report_tickets_sold_per_type') }}</b-card-title>\n </b-col>\n <b-col cols=\"6\" class=\"text-right\">\n <div class=\"p-2\">\n <b-icon icon=\"search\" @click=\"searchSoldPerTypeVisibility = !searchSoldPerTypeVisibility\" class=\"mr-2 cursor-pointer\"></b-icon>\n <b-input v-if=\"searchSoldPerTypeVisibility\" v-model=\"searchSoldPerType\" type=\"search\" class=\"sold-per-type-search mr-2\"/>\n <b-icon @click=\"sold_per_type_open = !sold_per_type_open\" v-b-toggle=\"'sold_per_type'\" :icon=\"sold_per_type_open ? 'arrows-angle-contract' : 'arrows-angle-expand'\" class=\"toggle-icon\"></b-icon>\n </div>\n </b-col>\n </b-row>\n <b-collapse visible id=\"sold_per_type\">\n <b-cart-text>\n <div v-for=\"(groupProducts, group) in products\" :key=\"group\" class=\"mb-1\">\n <div :class=\"{'bg-light':true,'p-2':group !== 'event_default_group'}\">{{ group !== 'event_default_group' ? group : '' }}</div>\n <b-row v-for=\"ticket in groupProducts\" :key=\"ticket.name\" class=\"border-bottom py-2 w-100 m-0 ticket-row\">\n <b-col cols=\"12\" sm=\"12\" lg=\"5\" class=\"mb-3 mb-md-0\">{{ ticket.name }}</b-col>\n <b-col cols=\"6\" sm=\"6\" lg=\"3\" >\n <b-progress :value=\"Math.ceil((ticket.times_sold/ticket.stock) * 100)\"></b-progress>\n </b-col>\n <b-col v-if=\"ticket.stock === -1\" cols=\"3\" sm=\"3\" lg=\"2\" >100</b-col>\n <b-col v-else-if=\"ticket.perc === 100\" cols=\"3\" sm=\"3\" lg=\"2\" ><b-badge variant=\"success\" class=\"text-uppercase\">{{ $t('report_sold_out') }}</b-badge></b-col>\n <b-col v-else cols=\"3\" sm=\"3\" lg=\"2\" >{{ ticket.perc }}%</b-col>\n <b-col v-if=\"filter_event && $can('reports_sales_by_tickettype_view')\" cols=\"3\" sm=\"3\" lg=\"2\" class=\"text-right\">\n <router-link :to=\"{name: 'ReportSalesPerTickettype', query: {event: filter_event, ticket: ticket.product_id}}\">{{ ticket.times_sold }}/{{ ticket.stock === -1 ? $t('product_stock_unlimited_icon') : ticket.stock }}</router-link>\n </b-col>\n <b-col v-else cols=\"3\" sm=\"3\" lg=\"2\" class=\"text-right\">{{ ticket.times_sold }}/{{ ticket.stock >=0 ? ticket.stock : $t('product_stock_unlimited_icon') }}</b-col>\n </b-row>\n </div>\n </b-cart-text>\n </b-collapse>\n \n </b-card>\n </b-col>\n <b-col lg=\"4\" sm=\"12\" cols=\"12\" class=\"mt-4 \">\n <b-card class=\"info-card center mb-3 mt-0 mr-0\">\n <span>{{ data.age_avg }}</span><br/>\n <span>{{ $t('report_age_avg') }}</span>\n </b-card>\n <b-card>\n <b-card-title>{{ $t('report_age') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartages\" width=\"99%\" type=\"bar\" :options=\"chartOptionsAges\" :series=\"seriesAges\"></apexchart>\n <div class=\"mb-5\">\n <b-row class=\"flexaround\" v-for=\"(amount, age) in ages\" :key=\"'age-' + age\">\n <b-col class=\" text-left\" cols=\"5\">{{age}}</b-col>\n <b-col class=\" text-right\" cols=\"5\">{{amount}}%</b-col>\n </b-row>\n </div>\n </b-cart-text>\n </b-card>\n </b-col>\n </b-row>\n <b-row class=\"pie-chart-row\">\n <b-col cols=\"12\" lg=\"4\" class=\"mb-4\">\n <b-card>\n <b-card-title>{{ $t('report_gender') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartgenders\" width=\"99%\" type=\"donut\" :options=\"chartOptions\"\n :series=\"series\"></apexchart>\n </b-cart-text>\n </b-card>\n </b-col>\n <b-col cols=\"12\" lg=\"4\" class=\"mb-4\">\n <b-card>\n <b-card-title>{{ $t('report_cities') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartcities\" width=\"99%\" type=\"donut\" :options=\"chartOptions\"\n :series=\"series\"></apexchart>\n </b-cart-text>\n </b-card>\n </b-col>\n <b-col cols=\"12\" lg=\"4\" class=\"mb-4\">\n <b-card>\n <b-card-title>{{ $t('report_payment_methods') }}</b-card-title>\n <b-cart-text>\n <apexchart ref=\"chartpayment_methods\" width=\"99%\" type=\"donut\" :options=\"chartOptions\"\n :series=\"series\"></apexchart>\n </b-cart-text>\n </b-card>\n </b-col>\n </b-row>\n\n <b-row class=\"pie-chart-row\" v-if=\"custom_questions\">\n <b-col v-for=\"question in custom_questions\" :key=\"question.question\" cols=\"12\" lg=\"4\" class=\"mb-4 mt-4\">\n <b-card>\n <b-card-title>{{question.question}}</b-card-title>\n <b-card-text>\n <table>\n <tr v-for=\"answer in question.answers\" :key=\"answer.answer\">\n <td>{{ answer.answer }}:</td>\n <td style=\"padding-left:10px\">{{ answer.count }}</td>\n </tr>\n </table>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n\n </div>\n</template>\n<script>\nimport api from '../api'\nimport DatePicker from \"@/components/DatePicker\";\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport moment from 'moment'\nimport {groupBy} from \"@/functions\";\n\nexport default {\n components: {\n DatePicker,\n DateTimePicker\n },\n name: 'ReportsOverview',\n data() {\n return {\n event_created_dates: {},\n filter_box_office: false,\n filters: {},\n options_event: [],\n includeArchivedEvents: false,\n filter_event: \"\",\n ages: {},\n counter: 0,\n date_range: {\n start: new Date( Date.now() - (14 * 24 * 60 * 60 * 1000) ),\n end: new Date()\n },\n custom_questions: {},\n data: {},\n chartOptionsAges: {\n xaxis: {\n categories: []\n },\n yaxis: {\n labels: {\n formatter: function(val){\n return val.toFixed(0).padStart(2, '0')\n }\n }\n },\n // responsive: [{\n // breakpoint: 880,\n // options: {\n // chart: {\n // width:700\n // }\n // }\n // }]\n },\n seriesAges: [{\n name: this.$t('report_age'),\n data: []\n }],\n chartOptionsSales: {\n xaxis: {\n categories: [],\n tooltip: false\n },\n yaxis: {\n labels: {\n formatter: function(val){\n return val.toFixed(0).padStart(2, '0')\n }\n }\n }\n },\n seriesSales: [{\n name: this.$t('report_tickets'),\n data: []\n }],\n chartOptionsScans: {\n xaxis: {\n categories: [],\n tooltip: false\n },\n yaxis: {\n labels: {\n formatter: function(val){\n return val.toFixed(0).padStart(2, '0')\n }\n }\n }\n },\n seriesScans: [{\n name: 'Scans',\n data: []\n }],\n chartOptionsSalesCumulative: {\n xaxis: {\n categories: [],\n tooltip: false\n },\n yaxis: {\n labels: {\n formatter: function(val){\n return val.toFixed(0).padStart(2, '0')\n }\n }\n }\n },\n seriesSalesCumulative: [{\n name: this.$t('report_tickets'),\n data: []\n }],\n series: [],\n chartOptions: {\n chart: {\n type: 'donut',\n },\n labels: [],\n responsive: [\n {\n breakpoint: 880,\n options: {\n chart: {\n width:420\n }\n }\n },{\n breakpoint: 500,\n options: {\n chart: {\n width:320\n }\n }\n }]\n },\n reportLoopKeys: ['genders', 'cities', 'payment_methods'],\n scansOption: 'hourly',\n scans_per_type_open: true,\n sold_per_type_open: true,\n scansStartsAt: null,\n scansEndsAt: null,\n scanLoading: false,\n total_scans: 0,\n searchSoldPerType: null,\n searchSoldPerTypeVisibility: false,\n searchScansPerType: null,\n searchScansPerTypeVisibility: false,\n }\n },\n created() {\n document.title = this.$t('backend_title_reports')\n if(this.$store.state.user) {\n if(!this.$can('reports_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.report().getFilters().then(filter => {\n this.filters = filter\n this.options_event = this.filters.events.map(filter => (\n {value: filter.id, text: filter.name, status: filter.status, continuous: filter.continuous, starts_at: filter.starts_at}\n ))\n\n // Create array with all start dates of the events\n for(let event in filter.events){\n this.event_created_dates[ filter.events[event].id ] = filter.events[event].created_at\n }\n })\n this.getReportData()\n },\n computed: {\n events() {\n if(this.includeArchivedEvents) {\n return this.options_event;\n }\n return this.options_event.filter(event => event.status !== 'archived')\n },\n products() {\n if (!this.data.products) {\n return []\n }\n const products = this.data.products.filter(t => this.searchSoldPerType && this.searchSoldPerType.length ? t.name.toLowerCase().includes(this.searchSoldPerType.toLowerCase()) : true);\n return groupBy(products.map((product) => {\n product.perc = Math.round((product.times_sold / product.stock) * 10000) / 100\n return product\n }), p => p.group)\n },\n productsScan() {\n if (!this.data.scans_by_type) {\n return []\n }\n const products = this.data.scans_by_type.filter(t => this.searchScansPerType && this.searchScansPerType.length ? t.name.toLowerCase().includes(this.searchScansPerType.toLowerCase()) : true);\n return groupBy(products.map((product) => {\n product.perc = product.sold ? Math.round((product.scans / product.sold) * 10000) / 100 : 0;\n return product\n }), p => p.group)\n },\n isEventStart() {\n if(!this.filter_event) {\n return false;\n }\n const event = this.filters.events.find(e => e.id === parseInt(this.filter_event));\n return moment() > moment(event.starts_at);\n }\n },\n methods: {\n selectEvent(){\n if( this.filter_event in this.event_created_dates ){\n this.date_range.start = this.event_created_dates[this.filter_event]\n\n if( moment(this.date_range.end) < moment(this.event_created_dates[this.filter_event]) ){\n this.date_range.end = this.event_created_dates[this.filter_event]\n }\n }\n const event = this.filters.events.find(e => e.id === parseInt(this.filter_event));\n if(event.continuous) {\n this.scansStartsAt = moment().subtract(7, 'days');\n this.scansEndsAt = moment();\n }\n else {\n this.scansStartsAt = event.starts_at;\n this.scansEndsAt = event.ends_at;\n }\n },\n getReportData() {\n\n api.report().getData(this.filter_event, this.date_range.start, this.date_range.end, this.filter_box_office, Intl.DateTimeFormat().resolvedOptions().timeZone).then(data => {\n\n const event = this.events.find(e => e.value === parseInt(this.filter_event))\n\n data.total_revenue = data.total_revenue - data.refund_amount\n\n this.data = data\n\n if(this.filter_event){\n api.report().getCustomAnswersData(this.filter_event, this.date_range.start, this.date_range.end).then(answerData => {\n\n let tmpArr = {}\n let questions = []\n let counter = 0\n \n for (const key in answerData) {\n if (Object.prototype.hasOwnProperty.call(answerData, key)) {\n if (answerData[key]) {\n for (const question in answerData[key]) {\n if (Object.prototype.hasOwnProperty.call(answerData[key], question)) {\n counter = 0;\n let answers = [];\n\n for (const answer in answerData[key][question]) {\n if (Object.prototype.hasOwnProperty.call(answerData[key][question], answer)) {\n answers.push({ answer: answer, count: answerData[key][question][answer] });\n counter += 1;\n }\n }\n\n questions.push({ question: question, answers: answers });\n }\n }\n }\n }\n }\n this.counter = counter\n if(tmpArr){\n this.custom_questions = questions\n }\n })\n }\n\n // Loop through all of the keys to fill the reports with the correct data\n this.reportLoopKeys.forEach(loopKey => {\n if (this.data[loopKey]) {\n let labels = []\n let series = []\n for (let label in this.data[loopKey]) {\n let pushLabel = label\n if (label === '') {\n pushLabel = 'unkown'\n }\n if (loopKey === 'genders' || pushLabel === 'unkown') {\n pushLabel = this.$t('report_' + loopKey + '_' + pushLabel)\n }\n labels.push(pushLabel)\n series.push(this.data[loopKey][label])\n }\n let chartRef = 'chart' + loopKey\n this.$refs[chartRef].updateOptions({labels: labels})\n this.$refs[chartRef].updateSeries(series)\n }\n })\n\n\n // Sales per day\n if (this.data.sales_per_day) {\n let labels = []\n let series = []\n let seriesCumulative = []\n let seriesCumulativeLabels = []\n let date = new Date(this.date_range.start)\n let end_date = new Date(this.date_range.end)\n\n let amountCumulative = 0\n\n while (date <= end_date) {\n\n let key = date.getFullYear()\n let month = (date.getMonth()+1).toString()\n let day = date.getDate().toString()\n\n labels.push(date.toLocaleDateString())\n\n if(event && !event.continuous) {\n const days = Math.round(moment(event.starts_at).diff(date, 'hours') / 24);\n if(days > 0) {\n seriesCumulativeLabels.push(this.$t('report_days_before_event', {days: days}));\n }\n else if(days === 0) {\n seriesCumulativeLabels.push(this.$t('report_event_day', {days: days}));\n }\n else {\n seriesCumulativeLabels.push(this.$t('report_days_from_event', {days: Math.abs(days)}));\n }\n }\n else {\n seriesCumulativeLabels.push(date.toLocaleDateString())\n }\n\n if(month.length == 1){ month = '0' + month }\n if(day.length == 1){ day = '0' + day}\n key = key + '-' + month + '-' + day\n\n let amount = 0\n if (this.data.sales_per_day[key]) {\n amount = this.data.sales_per_day[key]\n amountCumulative += this.data.sales_per_day[key]\n }\n series.push(amount)\n seriesCumulative.push(amountCumulative)\n var newDate = date.setDate(date.getDate() + 1)\n date = new Date(newDate);\n }\n\n this.$refs.chartsales_per_day.updateOptions({xaxis: {categories: labels}})\n this.$refs.chartsales_cumulative.updateOptions({xaxis: {categories: seriesCumulativeLabels}})\n this.seriesSales = [{data: series}]\n this.seriesSalesCumulative = [{data: seriesCumulative}]\n }\n\n // Ages\n if(this.data.ages){\n let labels = []\n let series = []\n Object.keys(this.data.ages).forEach( key => {\n labels.push(key)\n series.push(this.data.ages[key])\n\n this.ages[key] = Number((this.data.ages[key] / data.ticket_count) * 100).toFixed(0)\n\n })\n this.seriesAges = [{data: series}]\n this.$refs.chartages.updateOptions({xaxis: {categories: labels}})\n }\n })\n\n \n api.report().getCitiesData(this.filter_event, this.date_range.start, this.date_range.end, this.filter_box_office, Intl.DateTimeFormat().resolvedOptions().timeZone).then(data => {\n\n this.data.cities = data\n\n // Loop through all of the keys to fill the reports with the correct data\n this.reportLoopKeys.forEach(loopKey => {\n if (this.data[loopKey]) {\n let labels = []\n let series = []\n for (let label in this.data[loopKey]) {\n let pushLabel = label\n if (label === '') {\n pushLabel = 'unkown'\n }\n labels.push(pushLabel)\n series.push(this.data[loopKey][label])\n }\n let chartRef = 'chart' + loopKey\n this.$refs[chartRef].updateOptions({labels: labels})\n this.$refs[chartRef].updateSeries(series)\n }\n })\n })\n },\n getTicketsScansData(period = null) {\n if(!period) {\n period = this.scansOption;\n }\n this.$refs.ticket_scans.updateOptions({xaxis: {categories: []}})\n this.seriesScans = [{data: []}]\n\n const start = this.scansStartsAt;\n const end = this.scansEndsAt;\n\n this.scanLoading = true;\n\n api.report().getTicketsScansData(period, this.filter_event, start, end, this.filter_box_office, Intl.DateTimeFormat().resolvedOptions().timeZone).then(data => {\n if(period === 'hourly') {\n this.$refs.ticket_scans.updateOptions({xaxis: {categories: data.map(d => {\n if(d.hour.length <= 5) {\n return d.hour;\n }\n\n const date = new Date(d.hour).toLocaleDateString();\n return date + ' ' + d.hour.substring(d.hour.length -5)\n }\n )}})\n }\n else if(period === 'daily') {\n this.$refs.ticket_scans.updateOptions({xaxis: {categories: data.map(d => new Date(d.date).toLocaleDateString())}})\n }\n else if(period === 'weekly') {\n this.$refs.ticket_scans.updateOptions({xaxis: {categories: data.map(d => d.week)}})\n }\n else {\n this.$refs.ticket_scans.updateOptions({xaxis: {categories: data.map(d => d.month)}})\n }\n this.seriesScans = [{data: data.map(d => d.total_tickets_scanned)}]\n this.scanLoading = false;\n }).catch(() => {\n this.scanLoading = false;\n });\n },\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('reports_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style>\n.report-switch-small{\n font-size:0.8rem\n}\n.block p{\n margin-bottom: 0;\n text-align: center;\n}\n\n.block .custom-control{\n text-align: center;\n}\n.align{\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.apexcharts-tooltip.apexcharts-theme-dark span {\n color: #fff;\n}\n@media (max-width:992px) {\n .block p{\n text-align: left;\n margin-right: 15px;\n width:80%;\n}\n.block{\nwidth: 100%;\n}\n.block > div{\n display: flex;\nalign-items: center;\nmargin: 10px 0;\n}\n.block .custom-control{\n text-align: center;\n}\n}\n\n.hourly-time .dropdown-menu {\n max-height: 200px;\n overflow: scroll;\n}\n\n.sold-per-type-search {\n width: 200px !important;\n height: 40px !important;\n display: inline-block !important;\n}\n</style>\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.flexaround{\n justify-content: space-around;\n margin: 10px 0;\n width: 100%;\n}\n\n.tickets-filled {\n height: 6px;\n border-radius: 50px;\n background: linear-gradient(0.25turn, #d2ecff, #008ffb);\n}\n\n.margin-middle {\n margin-top: auto;\n margin-bottom: auto;\n}\n\ndiv.card {\n -webkit-box-shadow: 2px 2px 3px 0px rgba(235, 235, 235, 1);\n -moz-box-shadow: 2px 2px 3px 0px rgba(235, 235, 235, 1);\n box-shadow: 2px 2px 3px 0px rgba(235, 235, 235, 1);\n}\n\ndiv.card .card-title {\n background-color: #FFF;\n color: #193e58;\n border-bottom: 1px solid #F5F5F5;\n font-weight: normal\n}\n\n.info-card.center .card-body {\n text-align: center;\n}\n\n.info-card span:first-of-type {\n font-size: 28pt\n}\n\n.pie-chart-row div.card{\n height:100%\n}\n\n.btn-filter{\n height:50px;\n width: 100%;\n text-align: center!important;\n}\n@media (min-width: 992px) {\n .col-lg-20 {\n position: relative;\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n\n -ms-flex: 0 0 20%;\n flex: 0 0 20%;\n max-width: 20%;\n }\n}\n.ticket-row:last-child {\n border-bottom: none !important;\n}\n.toggle-icon {\n cursor: pointer;\n}\n.toggle-icon:focus {\n outline: none !important;;\n}\n.label-block {\n display: block;\n height: 31px;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportsOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportsOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReportsOverview.vue?vue&type=template&id=ba2ffda8&scoped=true\"\nimport script from \"./ReportsOverview.vue?vue&type=script&lang=js\"\nexport * from \"./ReportsOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReportsOverview.vue?vue&type=style&index=0&id=ba2ffda8&prod&lang=css\"\nimport style1 from \"./ReportsOverview.vue?vue&type=style&index=1&id=ba2ffda8&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ba2ffda8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.campaign)?_c('div',{attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('campaign'))+\": \"+_vm._s(_vm.campaignName))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_name')}},[_c('b-form-input',{attrs:{\"state\":_vm.campaign.name === null || _vm.campaign.name === '' ? false : null},model:{value:(_vm.campaign.name),callback:function ($$v) {_vm.$set(_vm.campaign, \"name\", $$v)},expression:\"campaign.name\"}})],1)],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('slug')}},[_c('b-form-input',{attrs:{\"state\":_vm.campaign.slug === null || _vm.campaign.slug === '' ? false : null},model:{value:(_vm.campaign.slug),callback:function ($$v) {_vm.$set(_vm.campaign, \"slug\", $$v)},expression:\"campaign.slug\"}})],1)],1)],1),_c('b-row',[_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('date-time-picker',{attrs:{\"label\":_vm.$t('campaign_timeframe_from')},model:{value:(_vm.campaign.starts_at),callback:function ($$v) {_vm.$set(_vm.campaign, \"starts_at\", $$v)},expression:\"campaign.starts_at\"}})],1),_c('b-col',{attrs:{\"lg\":\"6\"}},[_c('date-time-picker',{attrs:{\"label\":_vm.$t('campaign_timeframe_to')},model:{value:(_vm.campaign.ends_at),callback:function ($$v) {_vm.$set(_vm.campaign, \"ends_at\", $$v)},expression:\"campaign.ends_at\"}})],1)],1),_c('b-form-group',{staticClass:\"mt-4\",attrs:{\"label\":_vm.$t('event_day_selector')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":\"Event Dropdown\"}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.campaign.events),callback:function ($$v) {_vm.$set(_vm.campaign, \"events\", $$v)},expression:\"campaign.events\"}},_vm._l((_vm.events.filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name)+\" \")])}),1)],1)],1)],1),_c('b-form-group',[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.days},model:{value:(_vm.campaign.days),callback:function ($$v) {_vm.$set(_vm.campaign, \"days\", $$v)},expression:\"campaign.days\"}})],1),(_vm.campaign.rules.length)?_c('div',{staticClass:\"my-5\"},[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.campaign.highlight_discount),callback:function ($$v) {_vm.$set(_vm.campaign, \"highlight_discount\", $$v)},expression:\"campaign.highlight_discount\"}},[_vm._v(_vm._s(_vm.$t('campaign_highlight_discount')))])],1),(_vm.campaign.highlight_discount)?_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_highlight_discount_border_color')}},[_c('color-picker',{model:{value:(_vm.campaign.highlight_style.border_color),callback:function ($$v) {_vm.$set(_vm.campaign.highlight_style, \"border_color\", $$v)},expression:\"campaign.highlight_style.border_color\"}})],1)],1),_c('div',{staticClass:\"col-md-4\"},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_highlight_discount_background_color')}},[_c('color-picker',{model:{value:(_vm.campaign.highlight_style.background_color),callback:function ($$v) {_vm.$set(_vm.campaign.highlight_style, \"background_color\", $$v)},expression:\"campaign.highlight_style.background_color\"}})],1)],1)]):_vm._e()],1):_vm._e(),_c('div',{staticClass:\"d-flex justify-content-between align-items-center mb-2 mt-4\"},[_c('h4',{staticClass:\"my-0\"},[_vm._v(_vm._s(_vm.$t('campaign_discount_rules')))]),_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.showCreateRuleModal()}}},[_vm._v(_vm._s(_vm.$t('new')))])],1),_c('div',{staticClass:\"tableBig mb-4\"},[(_vm.campaign.rules.length)?_c('b-table',{attrs:{\"items\":_vm.campaign.rules,\"fields\":[{key: 'reference', label: _vm.$t('campaign_reference')}, {key: 'discount_type', label: _vm.$t('campaign_discount_type')}, {key: 'discount_value', label: _vm.$t('campaign_discount_value')}, {key: 'actions', label: _vm.$t('actions')}]},scopedSlots:_vm._u([{key:\"cell(discount_value)\",fn:function({item}){return [(item.discount_type === 'fixed')?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(item.discount_value)))]):_c('span',[_vm._v(\"%\"+_vm._s(item.discount_value))])]}},{key:\"cell(actions)\",fn:function({item}){return [_c('b-button',{staticClass:\"mr-2\",on:{\"click\":function($event){return _vm.showRuleModal(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]),_c('b-icon',{staticClass:\"ml-3 text-secondary btnEventDelete cursor-pointer\",attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}})]}}],null,false,2348879913)}):_vm._e()],1),_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.campaign.hide_products),callback:function ($$v) {_vm.$set(_vm.campaign, \"hide_products\", $$v)},expression:\"campaign.hide_products\"}},[_vm._v(_vm._s(_vm.$t('campaign_hide_products')))])],1),(_vm.campaign.hide_products)?_c('div',{staticClass:\"mt-2\"},[_c('div',{staticClass:\"d-flex justify-content-between align-items-center mb-2 mt-4\"},[_c('h5',{staticClass:\"my-0\"},[_vm._v(_vm._s(_vm.$t('campaign_when_hide_products')))]),_c('b-button',{staticClass:\"add-discount-condition-btn\",attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.campaign.hiderules.push({id: null, field: null, operation: null, value: null})}}},[_c('b-icon',{staticClass:\"mx-2\",attrs:{\"icon\":\"plus\"}})],1)],1),_vm._l((_vm.campaign.hiderules),function(rule,index){return _c('b-row',{key:rule.id,staticClass:\"mb-1 rules-list\"},[_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"3\"}},[_c('b-form-select',{attrs:{\"options\":[{value: 'price', text: _vm.$t('campaign_rule_set_product_price')},{value: 'name', text: _vm.$t('campaign_rule_set_product_name')}]},model:{value:(rule.field),callback:function ($$v) {_vm.$set(rule, \"field\", $$v)},expression:\"rule.field\"}})],1),_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"3\"}},[_c('b-form-select',{model:{value:(rule.operation),callback:function ($$v) {_vm.$set(rule, \"operation\", $$v)},expression:\"rule.operation\"}},[(rule.field === 'price')?_c('b-form-select-option',{attrs:{\"value\":\"greater\"}},[_vm._v(\">\")]):_vm._e(),(rule.field === 'price')?_c('b-form-select-option',{attrs:{\"value\":\"less\"}},[_vm._v(\"<\")]):_vm._e(),_c('b-form-select-option',{attrs:{\"value\":\"equal\"}},[_vm._v(\"=\")]),(rule.field === 'name')?_c('b-form-select-option',{attrs:{\"value\":\"contains\"}},[_vm._v(\"contains\")]):_vm._e()],1)],1),_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"4\"}},[_c('b-form-input',{attrs:{\"type\":rule.field === 'price' ? 'number' : 'text'},model:{value:(rule.value),callback:function ($$v) {_vm.$set(rule, \"value\", $$v)},expression:\"rule.value\"}})],1),_c('b-col',{staticClass:\"mb-1 text-center\",attrs:{\"lg\":\"2\"}},[_c('b-icon',{staticClass:\"mt-2 cursor-pointer\",attrs:{\"font-scale\":\"1.5\",\"icon\":\"trash\"},on:{\"click\":function($event){return _vm.campaign.hiderules.splice(index, 1)}}})],1)],1)})],2):_vm._e(),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"success\",\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.saveCampaign()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(_vm._s(_vm.$t('save')))],1)],1)],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('campaign_new_discount_rule'),\"id\":\"new-rule\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\",\"disabled\":_vm.loading || !_vm.rule.reference},on:{\"click\":function($event){return _vm.createRule()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('create'))+\" \")],1)]}}],null,false,3271939381)},[(_vm.rule)?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_reference')}},[_c('b-form-input',{model:{value:(_vm.rule.reference),callback:function ($$v) {_vm.$set(_vm.rule, \"reference\", $$v)},expression:\"rule.reference\"}})],1):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('campaign_edit_rule'),\"id\":\"rule-details\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\",\"disabled\":_vm.loading || !_vm.canUpdateRule},on:{\"click\":function($event){return _vm.updateRule()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1)]}}],null,false,3665003005)},[(_vm.rule)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_reference')}},[_c('b-form-input',{model:{value:(_vm.rule.reference),callback:function ($$v) {_vm.$set(_vm.rule, \"reference\", $$v)},expression:\"rule.reference\"}})],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_discount_type')}},[_c('b-form-select',{attrs:{\"options\":_vm.discountTypeOptions},model:{value:(_vm.rule.discount_type),callback:function ($$v) {_vm.$set(_vm.rule, \"discount_type\", $$v)},expression:\"rule.discount_type\"}})],1)],1),_c('b-col',{attrs:{\"md\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_discount_value')}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.rule.discount_value),callback:function ($$v) {_vm.$set(_vm.rule, \"discount_value\", $$v)},expression:\"rule.discount_value\"}})],1)],1)],1),_c('div',{staticClass:\"d-flex justify-content-between align-items-center mb-2 mt-4\"},[_c('h5',{staticClass:\"my-0\"},[_vm._v(_vm._s(_vm.$t('campaign_when_does_this_discount_apply')))]),_c('b-button',{staticClass:\"add-discount-condition-btn\",attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.addDiscountCondition()}}},[_c('b-icon',{staticClass:\"mx-2\",attrs:{\"icon\":\"plus\"}})],1)],1),_vm._l((_vm.rule.sets),function(con,index){return _c('b-row',{key:con.id,staticClass:\"mb-1 rules-list\"},[_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"3\"}},[_c('b-form-select',{attrs:{\"options\":[{value: 'price', text: _vm.$t('campaign_rule_set_product_price')},{value: 'name', text: _vm.$t('campaign_rule_set_product_name')}]},model:{value:(con.field),callback:function ($$v) {_vm.$set(con, \"field\", $$v)},expression:\"con.field\"}})],1),_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"3\"}},[_c('b-form-select',{model:{value:(con.operation),callback:function ($$v) {_vm.$set(con, \"operation\", $$v)},expression:\"con.operation\"}},[(con.field === 'price')?_c('b-form-select-option',{attrs:{\"value\":\"greater\"}},[_vm._v(\">\")]):_vm._e(),(con.field === 'price')?_c('b-form-select-option',{attrs:{\"value\":\"less\"}},[_vm._v(\"<\")]):_vm._e(),_c('b-form-select-option',{attrs:{\"value\":\"equal\"}},[_vm._v(\"=\")]),(con.field === 'name')?_c('b-form-select-option',{attrs:{\"value\":\"contains\"}},[_vm._v(\"contains\")]):_vm._e()],1)],1),_c('b-col',{staticClass:\"mb-1\",attrs:{\"lg\":\"4\"}},[_c('b-form-input',{attrs:{\"type\":con.field === 'price' ? 'number' : 'text'},model:{value:(con.value),callback:function ($$v) {_vm.$set(con, \"value\", $$v)},expression:\"con.value\"}})],1),_c('b-col',{staticClass:\"mb-1 text-center\",attrs:{\"lg\":\"2\"}},[_c('b-icon',{staticClass:\"mt-2 cursor-pointer\",attrs:{\"font-scale\":\"1.5\",\"icon\":\"trash\"},on:{\"click\":function($event){return _vm.deleteCondition(index)}}})],1)],1)})],2):_vm._e()]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-rule\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteRule}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}],null,false,709952385)},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"campaign\" fluid>\n <div class=\"content-main-container container-distance\">\n\n <!-- title -->\n <div class=\"title-container\">{{ $t('campaign') }}: {{ campaignName }}</div>\n <div class=\"content-container\">\n\n <!-- name & slug -->\n <b-row>\n <b-col lg=\"6\">\n <b-form-group :label=\"$t('campaign_name')\">\n <b-form-input v-model=\"campaign.name\"\n :state=\"campaign.name === null || campaign.name === '' ? false : null\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col lg=\"6\">\n <b-form-group :label=\"$t('slug')\">\n <b-form-input v-model=\"campaign.slug\"\n :state=\"campaign.slug === null || campaign.slug === '' ? false : null\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <!-- Time Frame -->\n <b-row>\n <b-col lg=\"6\">\n <date-time-picker :label=\"$t('campaign_timeframe_from')\" v-model=\"campaign.starts_at\"></date-time-picker>\n </b-col>\n <b-col lg=\"6\">\n <date-time-picker :label=\"$t('campaign_timeframe_to')\" v-model=\"campaign.ends_at\"></date-time-picker>\n </b-col>\n </b-row>\n\n <b-form-group :label=\"$t('event_day_selector')\" class=\"mt-4\">\n <b-dropdown id=\"dropdown-Checkbox\" text=\"Event Dropdown\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox-group v-model=\"campaign.events\" id=\"checkbox-group-2\" name=\"flavour-2\">\n <b-form-checkbox\n v-for=\"ev in events.filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}\n </b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n\n <b-form-group>\n <b-form-checkbox-group v-model=\"campaign.days\" :options=\"days\"></b-form-checkbox-group>\n </b-form-group>\n\n <div class=\"my-5\" v-if=\"campaign.rules.length\">\n <b-form-group>\n <b-form-checkbox v-model=\"campaign.highlight_discount\">{{ $t('campaign_highlight_discount') }}</b-form-checkbox>\n </b-form-group>\n\n <div class=\"row\" v-if=\"campaign.highlight_discount\">\n <div class=\"col-md-4\">\n <b-form-group :label=\"$t('campaign_highlight_discount_border_color')\">\n <color-picker v-model=\"campaign.highlight_style.border_color\"></color-picker>\n </b-form-group>\n </div>\n <div class=\"col-md-4\">\n <b-form-group :label=\"$t('campaign_highlight_discount_background_color')\">\n <color-picker v-model=\"campaign.highlight_style.background_color\"></color-picker>\n </b-form-group>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex justify-content-between align-items-center mb-2 mt-4\">\n <h4 class=\"my-0\">{{ $t('campaign_discount_rules') }}</h4>\n <b-button variant=\"new\" @click=\"showCreateRuleModal()\">{{ $t('new') }}</b-button>\n </div>\n <div class=\"tableBig mb-4\">\n <b-table v-if=\"campaign.rules.length\" :items=\"campaign.rules\"\n :fields=\"[{key: 'reference', label: $t('campaign_reference')}, {key: 'discount_type', label: $t('campaign_discount_type')}, {key: 'discount_value', label: $t('campaign_discount_value')}, {key: 'actions', label: $t('actions')}]\">\n <template v-slot:cell(discount_value)=\"{item}\">\n <span v-if=\"item.discount_type === 'fixed'\">{{ item.discount_value | currency }}</span>\n <span v-else>%{{ item.discount_value }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button @click=\"showRuleModal(item)\" class=\"mr-2\">{{ $t('manage') }}</b-button>\n <b-icon @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\"\n class=\"ml-3 text-secondary btnEventDelete cursor-pointer\"></b-icon>\n </template>\n </b-table>\n </div>\n\n <b-form-group>\n <b-form-checkbox v-model=\"campaign.hide_products\">{{ $t('campaign_hide_products') }}</b-form-checkbox>\n </b-form-group>\n\n <div v-if=\"campaign.hide_products\" class=\"mt-2\">\n <div class=\"d-flex justify-content-between align-items-center mb-2 mt-4\">\n <h5 class=\"my-0\">{{ $t('campaign_when_hide_products') }}</h5>\n <b-button variant=\"new\" class=\"add-discount-condition-btn\" @click=\"campaign.hiderules.push({id: null, field: null, operation: null, value: null})\">\n <b-icon class=\"mx-2\" icon=\"plus\"></b-icon>\n </b-button>\n </div>\n <b-row v-for=\"(rule, index) in campaign.hiderules\" :key=\"rule.id\" class=\"mb-1 rules-list\">\n <b-col lg=\"3\" class=\"mb-1\">\n <b-form-select v-model=\"rule.field\" :options=\"[{value: 'price', text: $t('campaign_rule_set_product_price')},{value: 'name', text: $t('campaign_rule_set_product_name')}]\"></b-form-select>\n </b-col>\n <b-col lg=\"3\" class=\"mb-1\">\n <b-form-select v-model=\"rule.operation\">\n <b-form-select-option v-if=\"rule.field === 'price'\" value=\"greater\">></b-form-select-option>\n <b-form-select-option v-if=\"rule.field === 'price'\" value=\"less\"><</b-form-select-option>\n <b-form-select-option value=\"equal\">=</b-form-select-option>\n <b-form-select-option v-if=\"rule.field === 'name'\" value=\"contains\">contains</b-form-select-option>\n </b-form-select>\n </b-col>\n <b-col lg=\"4\" class=\"mb-1\">\n <b-form-input :type=\"rule.field === 'price' ? 'number' : 'text'\" v-model=\"rule.value\"></b-form-input>\n </b-col>\n <b-col lg=\"2\" class=\"mb-1 text-center\">\n <b-icon font-scale=\"1.5\" class=\"mt-2 cursor-pointer\" icon=\"trash\" @click=\"campaign.hiderules.splice(index, 1)\"></b-icon>\n </b-col>\n </b-row>\n </div>\n\n <!-- footer submit -->\n <b-row class=\"mt-3\">\n <b-col class=\"text-right\">\n <b-button @click=\"saveCampaign()\" variant=\"success\" :disabled=\"loading\"><b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>{{ $t('save') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n\n <b-modal :title=\"$t('campaign_new_discount_rule')\" id=\"new-rule\" size=\"lg\">\n <b-form-group v-if=\"rule\" :label=\"$t('campaign_reference')\">\n <b-form-input v-model=\"rule.reference\"></b-form-input>\n </b-form-group>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createRule()\" variant=\"success\" :disabled=\"loading || !rule.reference\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('create') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('campaign_edit_rule')\" id=\"rule-details\" size=\"lg\">\n <div v-if=\"rule\">\n <b-form-group :label=\"$t('campaign_reference')\">\n <b-form-input v-model=\"rule.reference\"></b-form-input>\n </b-form-group>\n <b-row class=\"mt-3\">\n <b-col md='6'>\n <b-form-group :label=\"$t('campaign_discount_type')\">\n <b-form-select v-model=\"rule.discount_type\" :options=\"discountTypeOptions\"></b-form-select>\n </b-form-group>\n </b-col>\n <b-col md='6'>\n <b-form-group :label=\"$t('campaign_discount_value')\">\n <b-form-input type=\"number\" v-model=\"rule.discount_value\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <div class=\"d-flex justify-content-between align-items-center mb-2 mt-4\">\n <h5 class=\"my-0\">{{ $t('campaign_when_does_this_discount_apply') }}</h5>\n <b-button variant=\"new\" class=\"add-discount-condition-btn\" @click=\"addDiscountCondition()\">\n <b-icon class=\"mx-2\" icon=\"plus\"></b-icon>\n </b-button>\n </div>\n <b-row v-for=\"(con, index) in rule.sets\" :key=\"con.id\" class=\"mb-1 rules-list\">\n <b-col lg=\"3\" class=\"mb-1\">\n <b-form-select v-model=\"con.field\" :options=\"[{value: 'price', text: $t('campaign_rule_set_product_price')},{value: 'name', text: $t('campaign_rule_set_product_name')}]\"></b-form-select>\n </b-col>\n <b-col lg=\"3\" class=\"mb-1\">\n <b-form-select v-model=\"con.operation\">\n <b-form-select-option v-if=\"con.field === 'price'\" value=\"greater\">></b-form-select-option>\n <b-form-select-option v-if=\"con.field === 'price'\" value=\"less\"><</b-form-select-option>\n <b-form-select-option value=\"equal\">=</b-form-select-option>\n <b-form-select-option v-if=\"con.field === 'name'\" value=\"contains\">contains</b-form-select-option>\n </b-form-select>\n </b-col>\n <b-col lg=\"4\" class=\"mb-1\">\n <b-form-input :type=\"con.field === 'price' ? 'number' : 'text'\" v-model=\"con.value\"></b-form-input>\n </b-col>\n <b-col lg=\"2\" class=\"mb-1 text-center\">\n <b-icon font-scale=\"1.5\" class=\"mt-2 cursor-pointer\" icon=\"trash\" @click=\"deleteCondition(index)\"></b-icon>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"updateRule()\" variant=\"success\" :disabled=\"loading || !canUpdateRule\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('save') }}\n </b-button>\n </template>\n </b-modal>\n\n <!-- delete modal -->\n <b-modal :title=\"$t('delete')\" id=\"delete-rule\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteRule\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport {deepClone} from \"@/functions\";\nimport moment from 'moment'\n\nexport default {\n name: 'CampaignDetails',\n components: {\n DateTimePicker\n },\n data() {\n return {\n loading: false,\n events: [],\n campaign: null,\n campaignName: null,\n rule: null,\n searchEvents: null,\n days: [\n this.$t('day_mon'),\n this.$t('day_tue'),\n this.$t('day_wed'),\n this.$t('day_thu'),\n this.$t('day_fri'),\n this.$t('day_sat'),\n this.$t('day_sun')\n ],\n DiscountTypeValue: null,\n discountTypeOptions: [\n {value: 'fixed', text: 'fixed fee'},\n {value: 'percentage', text: 'percentage fee'},\n ],\n }\n },\n methods: {\n saveCampaign() {\n if (!moment(this.campaign.starts_at).isBefore(this.campaign.ends_at, 'minute')) {\n this.$store.commit('errors', [this.$t('end_date_must_be_greater')])\n return\n }\n\n this.loading = true;\n if (!this.campaign.hide_products) {\n this.campaign.hiderules = [];\n }\n\n api.campaign().update(this.campaign.unique_id, this.campaign).then(campaign => {\n if (campaign.days === null) {\n campaign.days = [];\n }\n if (campaign.events === null) {\n campaign.events = [];\n }\n this.loading = false;\n this.$store.commit('success', this.$t('campaign_updated'));\n campaign.hide_products = !!campaign.hiderules.length;\n this.campaign = campaign;\n }).catch(() => {\n this.loading = false;\n })\n },\n addDiscountCondition() {\n this.rule.sets.push({id: null, field: null, operation: null, value: null})\n },\n deleteCondition(index) {\n this.rule.sets.splice(index, 1);\n },\n showDeleteModal(rule) {\n this.rule = rule;\n this.$bvModal.show('delete-rule')\n },\n deleteRule() {\n this.loading = true;\n api.campaign().deleteRule(this.campaign.unique_id, this.rule.id).then(() => {\n this.loading = false;\n this.campaign.rules = deepClone(this.campaign.rules.filter(item => item.id !== this.rule.id));\n this.$bvModal.hide('delete-rule')\n }).catch(() => {\n this.loading = false;\n })\n },\n showRuleModal(rule) {\n this.rule = deepClone(rule);\n this.$bvModal.show('rule-details');\n },\n showCreateRuleModal() {\n this.rule = {\n reference: null,\n discount_type: null,\n discount_value: null,\n sets: []\n }\n this.$bvModal.show('new-rule');\n },\n createRule() {\n this.loading = true;\n api.campaign().createRule(this.campaign.unique_id, this.rule.reference).then(rule => {\n this.$bvModal.hide('new-rule');\n this.campaign.rules.push(deepClone(rule));\n this.showRuleModal(rule);\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n updateRule() {\n this.loading = true;\n api.campaign().updateRule(this.campaign.unique_id, this.rule.id, this.rule).then(rule => {\n for (let i = 0; i < this.campaign.rules.length; i++) {\n if (this.campaign.rules[i].id === rule.id) {\n this.campaign.rules[i] = rule;\n this.$forceUpdate();\n break;\n }\n }\n this.campaign = deepClone(this.campaign);\n this.$bvModal.hide('rule-details');\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n },\n },\n created() {\n if(this.$store.state.user) {\n if(!this.$can('campaigns_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n document.title = this.$t('nav_campaigns')\n api.event().all(false).then(response => {\n this.events = response;\n })\n\n api.campaign().find(this.$route.params.id).then(campaign => {\n if(campaign.days === null) {\n campaign.days = [];\n }\n if(campaign.events === null) {\n campaign.events = [];\n }\n if(campaign.highlight_style === null) {\n campaign.highlight_style = {\n border_color: null,\n background_color: null\n };\n }\n campaign.hide_products = !!campaign.hiderules.length;\n this.campaign = campaign;\n this.campaignName = campaign.name;\n })\n },\n computed: {\n canUpdateRule() {\n return this.rule.reference !== null && this.rule.reference.length && this.rule.discount_type &&\n this.rule.discount_value !== null && `${this.rule.discount_value}` !== '' &&\n !this.rule.sets.some(s => (!s.field || !s.operation || s.value === null || `${s.value}` === ''));\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('campaigns_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n }\n}\n</script>\n\n<style scoped>\n.allowed-events-container {\n overflow-y: scroll;\n overflow-x: hidden;\n max-height: 250px;\n}\n\n.DeleteBtn {\n background-color: transparent;\n}\n\n.DeleteBtn svg {\n fill: #DC3545;\n margin-left: 1rem\n}\n\n.add-discount-condition-btn {\n padding: .5rem\n}\n\n.add-discount-condition-btn svg {\n width: 1.6rem;\n height: 1.6rem;\n}\n\n@media (max-width: 992px) {\n .rules-list {\n background-color: #fafafa !important;\n border: 1px solid #f0efef;\n padding-top: .5rem;\n width: 90%;\n margin: .5rem auto;\n border-radius: .5rem;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CampaignDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CampaignDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CampaignDetails.vue?vue&type=template&id=6b760f97&scoped=true\"\nimport script from \"./CampaignDetails.vue?vue&type=script&lang=js\"\nexport * from \"./CampaignDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./CampaignDetails.vue?vue&type=style&index=0&id=6b760f97&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b760f97\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$can('campaigns_create'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{staticClass:\"mr-3\",attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.$bvModal.show('link-generator')}}},[_vm._v(_vm._s(_vm.$t('campaign_overview_btn_link_generator')))]),_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.$bvModal.show('new-campaigns')}}},[_vm._v(_vm._s(_vm.$t('campaign_create')))])],1):_vm._e(),_c('div',{staticClass:\"tableBig\"},[(_vm.campaigns.length)?_c('b-table',{staticClass:\"campaigns-table\",attrs:{\"items\":_vm.campaigns,\"fields\":[{key: 'name', label: _vm.$t('campaign_name')}, {key: 'times_used', label: _vm.$t('campaign_times_used')}, {key: 'total_revenue', label: _vm.$t('campaign_total_revenue')}, {key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(total_revenue)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.total_revenue))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('campaigns_edit'))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\",\"to\":{name: 'CampaignDetails', params: {id: item.unique_id}}}},[_vm._v(_vm._s(_vm.$t('edit'))+\" \")]):_vm._e(),(_vm.$can('campaigns_delete'))?_c('b-icon',{staticClass:\"ml-3 mr-3 text-secondary cursor-pointer\",attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,2659791787)}):_vm._e()],1),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getCampaigns}}):_vm._e(),(!_vm.campaigns.length)?_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]):_vm._e(),(_vm.showCopiedSpan)?_c('span',{staticClass:\"copiedToClipboard\"},[_vm._v(\"Copied to clipboard!\")]):_vm._e(),_c('b-modal',{attrs:{\"title\":_vm.$t('campaign_modal_create'),\"id\":\"new-campaigns\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\",\"disabled\":_vm.loading || !_vm.campaign.name},on:{\"click\":function($event){return _vm.createCampaign()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('create'))+\" \")],1)]}}])},[(_vm.campaign)?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_name')}},[_c('b-form-input',{model:{value:(_vm.campaign.name),callback:function ($$v) {_vm.$set(_vm.campaign, \"name\", $$v)},expression:\"campaign.name\"}})],1):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-campaign\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteCampaign}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('campaign_link_modal_title'),\"id\":\"link-generator\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))])]}}])},[_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_campagne')}},[_c('b-form-select',{attrs:{\"options\":_vm.modal_campaigns},on:{\"change\":function($event){return _vm.selectCampaign()}},model:{value:(_vm.campaign_link.campaign),callback:function ($$v) {_vm.$set(_vm.campaign_link, \"campaign\", $$v)},expression:\"campaign_link.campaign\"}})],1),(_vm.campaign_link.campaign)?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_link_modal_link_type')}},[_c('b-button',{style:((_vm.link_type == 'event-overview') ? 'background-color:green' : ''),on:{\"click\":function($event){_vm.selectEventOverview();_vm.link_type = 'event-overview'}}},[_vm._v(_vm._s(_vm.$t('campaign_link_modal_event_overview')))]),_c('b-button',{staticClass:\"ml-3\",style:((_vm.link_type == 'specific-pos') ? 'background-color:green' : ''),on:{\"click\":function($event){_vm.selectSpecificEvent();_vm.link_type = 'specific-pos'}}},[_vm._v(_vm._s(_vm.$t('campaign_link_modal_specific_pos')))])],1):_vm._e(),(_vm.link_type == 'specific-pos')?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_event')}},[_c('b-form-select',{attrs:{\"options\":_vm.events},on:{\"change\":function($event){return _vm.selectEvent()}},model:{value:(_vm.campaign_link.event),callback:function ($$v) {_vm.$set(_vm.campaign_link, \"event\", $$v)},expression:\"campaign_link.event\"}})],1):_vm._e(),(_vm.link_type == 'specific-pos')?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_pos')}},[_c('b-form-select',{attrs:{\"options\":_vm.posses},on:{\"change\":function($event){return _vm.selectPos()}},model:{value:(_vm.campaign_link.pos),callback:function ($$v) {_vm.$set(_vm.campaign_link, \"pos\", $$v)},expression:\"campaign_link.pos\"}})],1):_vm._e(),(_vm.user.company)?_c('b-form-group',{attrs:{\"label\":_vm.$t('campaign_link_modal_link')}},[_c('b-form-input',{model:{value:(_vm.campaign_link.link),callback:function ($$v) {_vm.$set(_vm.campaign_link, \"link\", $$v)},expression:\"campaign_link.link\"}})],1):_vm._e(),(_vm.campaign_link.link)?_c('b-form-group',{attrs:{\"label\":_vm.$t('qr_code')}},[_c('qr-code',{attrs:{\"text\":_vm.campaign_link.link,\"description\":_vm.$t('campaign_qr_description')}})],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-form-group v-if=\"$can('campaigns_create')\" class=\"text-right container-distance\">\n <b-button variant=\"new\" class=\"mr-3\" @click=\"$bvModal.show('link-generator')\">{{ $t('campaign_overview_btn_link_generator') }}</b-button>\n <b-button variant=\"new\" @click=\"$bvModal.show('new-campaigns')\">{{ $t('campaign_create') }}</b-button>\n </b-form-group>\n\n\n <div class=\"tableBig\">\n <b-table class=\"campaigns-table\" v-if=\"campaigns.length\" :items=\"campaigns\"\n :fields=\"[{key: 'name', label: $t('campaign_name')}, {key: 'times_used', label: $t('campaign_times_used')}, {key: 'total_revenue', label: $t('campaign_total_revenue')}, {key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(total_revenue)=\"{item}\">\n {{ item.total_revenue | currency }}\n </template>\n\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('campaigns_edit')\" variant=\"primary\" :to=\"{name: 'CampaignDetails', params: {id: item.unique_id}}\"\n class=\"mr-2\">{{ $t('edit') }}\n </b-button>\n\n <b-icon v-if=\"$can('campaigns_delete')\" @click=\"showDeleteModal(item)\" icon=\"trash\"\n font-scale=\"1.5\"\n class=\"ml-3 mr-3 text-secondary cursor-pointer\"></b-icon>\n </template>\n </b-table>\n </div>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getCampaigns\"></pagination>\n <b-alert v-if=\"!campaigns.length\" show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n <span v-if=\"showCopiedSpan\" class=\"copiedToClipboard\">Copied to clipboard!</span>\n <b-modal :title=\"$t('campaign_modal_create')\" id=\"new-campaigns\" size=\"lg\">\n <b-form-group v-if=\"campaign\" :label=\"$t('campaign_name')\">\n <b-form-input v-model=\"campaign.name\"></b-form-input>\n </b-form-group>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createCampaign()\" variant=\"success\" :disabled=\"loading || !campaign.name\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('create') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-campaign\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteCampaign\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('campaign_link_modal_title')\" id=\"link-generator\" size=\"lg\">\n\n <b-form-group :label=\"$t('campaign_campagne')\">\n <b-form-select @change=\"selectCampaign()\" v-model=\"campaign_link.campaign\" :options=\"modal_campaigns\"></b-form-select>\n </b-form-group>\n\n <b-form-group v-if=\"campaign_link.campaign\" :label=\"$t('campaign_link_modal_link_type')\">\n <b-button :style=\"(link_type == 'event-overview') ? 'background-color:green' : ''\" @click=\"selectEventOverview();link_type = 'event-overview'\">{{ $t('campaign_link_modal_event_overview') }}</b-button>\n <b-button class=\"ml-3\" :style=\"(link_type == 'specific-pos') ? 'background-color:green' : ''\" @click=\"selectSpecificEvent();link_type = 'specific-pos'\">{{ $t('campaign_link_modal_specific_pos') }}</b-button>\n </b-form-group>\n\n <b-form-group v-if=\"link_type == 'specific-pos'\" :label=\"$t('campaign_event')\">\n <b-form-select v-model=\"campaign_link.event\" :options=\"events\" @change=\"selectEvent()\"></b-form-select>\n </b-form-group>\n\n <b-form-group v-if=\"link_type == 'specific-pos'\" :label=\"$t('campaign_pos')\">\n <b-form-select v-model=\"campaign_link.pos\" :options=\"posses\" @change=\"selectPos()\"></b-form-select>\n </b-form-group>\n\n <b-form-group :label=\"$t('campaign_link_modal_link')\" v-if=\"user.company\">\n <b-form-input v-model=\"campaign_link.link\"></b-form-input>\n </b-form-group>\n\n <b-form-group v-if=\"campaign_link.link\" :label=\"$t('qr_code')\">\n <qr-code\n :text=\"campaign_link.link\"\n :description=\"$t('campaign_qr_description')\"\n ></qr-code>\n </b-form-group>\n\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {mapState} from \"vuex\";\nimport QrCode from \"@/components/QrCode.vue\";\n\nexport default {\n data() {\n return {\n link_type: null,\n campaigns: [],\n page_data: null,\n campaign: {},\n loading: false,\n showCopiedSpan: false,\n campaign_link: {\n campaign: null,\n event: null,\n pos: null,\n link: null\n },\n modal_campaigns: [],\n allEvents: null,\n events: null,\n posses: null,\n activeCampaign: null\n }\n },\n components: {\n QrCode\n },\n methods: {\n cancel() {\n this.$bvModal.hide('new-campaigns')\n this.campaign = {}\n },\n selectEventOverview(){\n this.campaign_link.event = null\n this.campaign_link.pos = null\n this.campaign_link.link = 'https://' + this.user.company.domain + '/?ft_campaign_name=' + this.activeCampaign.slug\n },\n selectEvent(){\n this.campaign_link.link = ''\n this.posses = this.allEvents.find(event => event.id == this.campaign_link.event).points_of_sale.map(pos => {\n return {\n value: pos.id,\n text: pos.name\n }\n }) \n },\n selectPos(){\n let posUrl = this.allEvents.find(event => event.id == this.campaign_link.event).points_of_sale.find(pos => pos.id == this.campaign_link.pos).url\n this.campaign_link.link = 'https://' + this.user.company.domain + '/p/' + posUrl + '?ft_campaign_name=' + this.activeCampaign.slug\n },\n selectCampaign(){\n this.activeCampaign = this.campaigns.find(campaign => campaign.id == this.campaign_link.campaign)\n this.link_type = null\n this.campaign_link.event = null\n this.campaign_link.pos = null\n this.campaign_link.link = null\n },\n getDayOfWeek(datetime) {\n const daysOfWeek = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];\n const date = new Date(datetime);\n const dayOfWeekIndex = date.getUTCDay();\n return daysOfWeek[dayOfWeekIndex];\n },\n async selectSpecificEvent(){\n this.campaign_link.link = null\n\n if (!this.allEvents) {\n let events = await api.event().getLiveEventsWithPos();\n this.allEvents = events;\n }\n\n this.events = this.allEvents.map(event => {\n if ( ( (!this.activeCampaign.events || this.activeCampaign.events.length === 0) && (!this.activeCampaign.days || this.activeCampaign.days.length === 0) ) || this.activeCampaign.events.includes(event.id) || this.activeCampaign.days.includes( this.getDayOfWeek(event.starts_at) ) ) {\n return {\n value: event.id,\n text: event.name\n };\n }\n }).filter(event => event !== undefined);\n \n },\n createCampaign() {\n this.loading = true;\n api.campaign().create(this.campaign.name).then(campaign => {\n this.loading = false;\n this.$bvModal.hide('new-campaigns')\n if (this.$can('campaigns_edit')) {\n this.$router.push({\n name: 'CampaignDetails',\n params: {\n id: campaign.unique_id\n }\n })\n } else {\n this.getCampaigns();\n }\n }).catch(() => {\n this.loading = false;\n })\n },\n showDeleteModal(campaign) {\n this.campaign = campaign;\n this.$bvModal.show('delete-campaign')\n },\n deleteCampaign() {\n this.loading = true;\n api.campaign().delete(this.campaign.unique_id).then(() => {\n this.getCampaigns();\n this.loading = false;\n this.$store.commit('success', this.$t('campaign_deleted'))\n this.$bvModal.hide('delete-campaign')\n }).catch(() => {\n this.loading = false;\n })\n },\n getCampaigns(page = 1) {\n api.campaign().all(page).then(campaigns => {\n this.campaigns = campaigns.data;\n this.page_data = campaigns;\n\n this.modal_campaigns = campaigns.data.map(campaign => {\n return {\n value: campaign.id,\n text: campaign.name\n }\n })\n this.modal_campaigns.unshift({\n value: null,\n text: this.$t('select')\n })\n })\n },\n copyToClipboard(textToCopy) {\n const el = document.createElement('textarea');\n el.value = textToCopy;\n el.setAttribute('readonly', '');\n el.style.position = 'absolute';\n el.style.left = '-9999px';\n document.body.appendChild(el);\n el.select();\n document.execCommand('copy');\n document.body.removeChild(el);\n\n this.showCopiedSpan = true\n setTimeout(function () {\n this.showCopiedSpan = false\n }.bind(this), 2000)\n },\n closePopover(el) {\n this.$refs[el].$emit('close')\n },\n },\n created() {\n document.title = this.$t('nav_campaigns')\n if (this.$store.state.user) {\n if (!this.$can('campaigns_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getCampaigns();\n },\n computed: {\n ...mapState(['user'])\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('campaigns_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n }\n}\n</script>\n\n<style scoped>\ntable.b-table tbody tr:hover .btn.btn-row-edit {\n border-color: #f5f5f5 !important;\n}\n\n/deep/ .posPopover.b-popover .popover-header {\n display: block !important;\n font-size: 15px;\n padding: 6px 7px\n}\n\n/deep/ .posPopover .popover-body {\n padding: 0px !important\n}\n\n.btnCampaignUrlContainer {\n width: 33px;\n height: 33px;\n border: 2px solid #f5f5f5;\n border-radius: 6px;\n display: inline-block;\n text-align: center;\n vertical-align: middle;\n}\n\n.btnCampaignUrl {\n font-size: 25px;\n margin-top: 3px\n}\n\n.popoverPosRow {\n cursor: pointer;\n padding: 5px 7px;\n}\n\n.popoverPosRow:hover {\n background-color: #f5f5f5\n}\n\n/deep/ .campaigns-table td:last-child, /deep/ .campaigns-table th:last-child {\n text-align: right;\n padding-right: 5rem;\n}\n\n.copiedToClipboard{\n position:fixed;\n left:50%;\n bottom:15%;\n border-radius:40px;\n padding:5px 10px;\n background-color:#193e58;\n color:#FFF;\n font-size:10pt\n}\n\n/deep/ .qr-show .btn.dropdown-toggle {\n background-color: #FFF;\n border-radius: 6px;\n border: 2px solid #ddd;\n color: #808080;\n padding: 5px 20px;\n font-size: 13px;\n font-weight: bold;\n}\n\n/deep/ .qr-show .btn.dropdown-toggle::after {\n margin-bottom: -2px !important;\n}\n\n/deep/ .qr-show-container .b-dropdown-text {\n text-align: center;\n padding: 0.5rem !important;\n width: 300px;\n}\n\n/deep/ .qr-show-container p.b-dropdown-text div img {\n margin: auto;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CampaignsOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CampaignsOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CampaignsOverview.vue?vue&type=template&id=1a01eb16&scoped=true\"\nimport script from \"./CampaignsOverview.vue?vue&type=script&lang=js\"\nexport * from \"./CampaignsOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./CampaignsOverview.vue?vue&type=style&index=0&id=1a01eb16&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1a01eb16\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"container text-center\"},[(_vm.gtm_id)?_c('gtm-page-view',{attrs:{\"gtm_id\":_vm.gtm_id}}):_vm._e(),(_vm.gtm_id)?_c('gtm-purchase',{attrs:{\"gtm_id\":_vm.gtm_id,\"total_price\":_vm.total_price,\"items\":_vm.items,\"order_secret\":_vm.order_secret}}):_vm._e(),_c('div',{staticClass:\"pt-4 pb-4\"},[_c('b-icon',{staticClass:\"pos-accent-color check-icon bg-white rounded-circle\",attrs:{\"width\":\"88px\",\"height\":\"88px\",\"icon\":\"check-circle-fill\",\"font-scale\":\"4\"}})],1),_c('h1',{staticClass:\"title pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('pos_order_success_title', {order_number: _vm.order_number})))]),_c('p',{staticClass:\"subtitle pos-secondary-color mt-2\"},[_vm._v(_vm._s(_vm.$t('order_thank_you_text')))]),(_vm.order_status_page_url)?_c('a',{attrs:{\"href\":_vm.order_status_page_url}},[_c('b-button',{staticClass:\"btn pos-btn-order mt-4 mb-5 btn-ticket-download\"},[_vm._v(_vm._s(_vm.$t('order_thank_you_btn_ticket_download')))])],1):_vm._e(),(_vm.upcoming_events && _vm.upcoming_events.length > 0)?_c('div',{staticClass:\"mt-4\"},[_c('p',{staticClass:\"sub-title pos-secondary-color\"},[_vm._v(_vm._s(_vm.$t('order_thank_you_upcoming_events')))]),_c('b-row',{staticClass:\"custom-gutter mt-2\"},_vm._l((_vm.upcoming_events),function(event){return _c('b-col',{key:event.id,staticClass:\"event-col\",attrs:{\"sm\":\"12\",\"md\":\"4\"}},[_c('div',{staticClass:\"bg-image pos-bg-secondary-color border-radius-6 content p-3\",class:{'has-image': event.image_url},style:(event.image_url ? `background-image: url('${event.image_url}');` : '')},[(event.image_url)?_c('div',{class:(event.image_url) ? 'overlay' : 'overlay dark'}):_vm._e(),_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"event-details\"},[_c('div',{staticClass:\"event-name pos-primary-color\"},[_vm._v(_vm._s(event.name))]),_c('div',{staticClass:\"event-date pos-primary-color\"},[_vm._v(_vm._s(_vm._f(\"date_written\")(event.starts_at)))])]),_c('a',{staticClass:\"btn pos-btn-order btn-ticket-order-now\",attrs:{\"href\":_vm.getEventLink(event)}},[_vm._v(_vm._s(_vm.$t('order_thank_you_btn_event_details')))])])])])}),1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('span')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <span></span>\n</template>\n<script>\nexport default {\n props: ['gtm_id', 'total_price', 'items', 'order_secret'],\n data() {\n return {\n }\n },\n mounted() {\n const dataLayer = window.dataLayer || [];\n dataLayer.push({\n 'gtm.start': new Date().getTime(),\n event: 'gtm.js',\n });\n\n dataLayer.push({\n 'gtm.id': this.gtm_id,\n event: 'gtm.js',\n });\n\n dataLayer.push({\n transactionId: this.order_secret,\n event: 'purchase',\n currency: 'EUR',\n total: this.total_price,\n items: this.items\n });\n }\n}\n</script>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GtmPurchase.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GtmPurchase.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./GtmPurchase.vue?vue&type=template&id=55f340d4\"\nimport script from \"./GtmPurchase.vue?vue&type=script&lang=js\"\nexport * from \"./GtmPurchase.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div class=\"container text-center\">\n <gtm-page-view v-if=\"gtm_id\" :gtm_id=\"gtm_id\"></gtm-page-view>\n <gtm-purchase v-if=\"gtm_id\" :gtm_id=\"gtm_id\" :total_price=\"total_price\" :items=\"items\" :order_secret=\"order_secret\"></gtm-purchase>\n\n <div class=\"pt-4 pb-4\">\n <b-icon width=\"88px\" height=\"88px\" icon=\"check-circle-fill\" font-scale=\"4\" class=\"pos-accent-color check-icon bg-white rounded-circle\"></b-icon>\n </div>\n <h1 class=\"title pos-secondary-color\">{{ $t('pos_order_success_title', {order_number: order_number}) }}</h1>\n <p class=\"subtitle pos-secondary-color mt-2\">{{ $t('order_thank_you_text') }}</p>\n <a :href=\"order_status_page_url\" v-if=\"order_status_page_url\">\n <b-button class=\"btn pos-btn-order mt-4 mb-5 btn-ticket-download\">{{ $t('order_thank_you_btn_ticket_download') }}</b-button>\n </a>\n\n <div class=\"mt-4\" v-if=\"upcoming_events && upcoming_events.length > 0\">\n <p class=\"sub-title pos-secondary-color\">{{ $t('order_thank_you_upcoming_events') }}</p>\n <b-row class=\"custom-gutter mt-2\">\n <b-col v-for=\"event in upcoming_events\" :key=\"event.id\" sm=\"12\" md=\"4\" class=\"event-col\">\n <div :style=\"event.image_url ? `background-image: url('${event.image_url}');` : ''\" :class=\"{'has-image': event.image_url}\" class=\"bg-image pos-bg-secondary-color border-radius-6 content p-3\">\n <div v-if=\"event.image_url\" :class=\"(event.image_url) ? 'overlay' : 'overlay dark'\"></div>\n <div class=\"content\">\n <div class=\"event-details\">\n <div class=\"event-name pos-primary-color\">{{ event.name }}</div>\n <div class=\"event-date pos-primary-color\">{{ event.starts_at | date_written }}</div>\n </div>\n <a class=\"btn pos-btn-order btn-ticket-order-now\" :href=\"getEventLink(event)\">{{ $t('order_thank_you_btn_event_details') }}</a>\n </div>\n </div>\n </b-col>\n </b-row>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport GtmPageView from '@/components/GtmPageView'\nimport GtmPurchase from '@/components/GtmPurchase'\nimport {groupBy, getOrderStatusPageUrl} from \"@/functions\";\n\nexport default {\n components: {\n GtmPurchase,\n GtmPageView\n },\n data() {\n return {\n order_number: '',\n gtm_id: null,\n total_price: null,\n items: [],\n order_secret: null,\n order_status_page_url: '',\n upcoming_events: null,\n order: null\n }\n },\n created(){\n if(document.body.contains(document.getElementById('company-header'))){\n document.getElementById(\"company-header\").scrollIntoView();\n }\n if(this.$route.query.order_number) {\n this.order_number = this.$route.query.order_number; \n }\n if(this.$route.query.order_number && this.$route.query.order_secret){\n api.order().getByOrdernumberSecret(this.$route.query.order_number, this.$route.query.order_secret).then(order => {\n this.order = order;\n if(order && order.id && order.secret && order.company.domain){\n this.order_status_page_url = getOrderStatusPageUrl(order.id, order.secret)\n }\n if(order && order.event && order.event.gtm_id){\n\n // Create the GTM scripts\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer',order.event.gtm_id);\n\n let gtm_noscript = document.createElement('noscript');\n let gtm_iframe = document.createElement('iframe');\n gtm_iframe.setAttribute('src', 'https://www.googletagmanager.com/ns.html?id=' + order.event.gtm_id);\n gtm_iframe.setAttribute('height', '0');\n gtm_iframe.setAttribute('width', '0');\n gtm_iframe.setAttribute('style', 'display:none;visibility:hidden');\n gtm_noscript.appendChild(gtm_iframe);\n document.body.appendChild(gtm_noscript);\n\n const products = groupBy(order.order_products, (product) => {\n return product.product.name;\n });\n\n let items = [];\n\n for(const x in products) {\n const p = products[x][0];\n items.push({\n item_id: p.product.id,\n item_name: p.product.name,\n item_category: order.event.name,\n item_category2: 'Tickets',\n item_category3: p.product.product_group.name === 'event_default_group' ? '' : p.product.product_group.name,\n price: p.price,\n quantity: products[x].length\n });\n }\n\n this.order_secret = this.$route.query.order_secret\n this.total_price = order.total\n this.items = items;\n this.gtm_id = order.event.gtm_id\n }\n\n if(order && order.company && order.company.order_thank_you_show_events){\n api.event().getUpcomingEvents(order.company.id, order.event.id).then(events => {\n this.upcoming_events = events;\n })\n }\n\n })\n }\n document.title = this.$t('order_thank_you_title')\n },\n methods:{\n getEventLink(event){\n let posLink = ''\n event.points_of_sale.some(pos => {\n if(pos.status === 'live' && pos.show_in_overview){\n posLink = pos.url\n return true\n }\n return false\n })\n return 'https://' + this.order.company.domain + '/p/' + posLink + '?utm_source=fairtix&utm_medium=ticketshop&utm_campaign=order_thank_you_page_event_display'\n }\n \n }\n}\n</script>\n<style scoped>\nh1.title {\n font-size: 32px;\n font-weight:bold;\n}\n\np.subtitle {\n font-size: 1.4em;\n}\n\n.btn-ticket-download {\n font-size: 1.4em !important;\n border-radius:6px !important;\n padding:14px 52px !important;\n font-weight:600 !important;\n}\n\n.btn-ticket-order-now {\n padding: 10px 15px !important;\n}\n\n.sub-title{\n margin-top:60px;\n font-size:2em\n}\n\n.custom-gutter {\n display: flex;\n flex-wrap: wrap;\n margin:0 -35px\n}\n\n.event-col{\n position: relative;\n background-size: cover;\n background-position: center;\n color: white;\n padding: 10px;\n border-radius: 5px;\n height:230px;\n display:flex;\n flex-direction: column;\n}\n\n.content {\n position: relative;\n z-index: 1;\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: 100%;\n}\n\n.event-details {\n flex: 0 1 auto;\n}\n\n.event-name{\n color:#FFF;\n font-size: 1.2em;\n font-weight: bold;\n text-align: left;\n}\n\n.event-date{\n color:#FFF;\n font-size: 1em;\n text-align: left;\n}\n\n.event-col a{\n padding:8px 40px;\n align-self: flex-start;\n display:inline-block;\n}\n.bg-image {\n position: relative;\n background-size: cover;\n background-position: center;\n}\n\n.overlay{\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.6);\n border-radius: 6px;\n}\n.overlay.dark{\n background-color: rgba(0, 0, 0, 0.75);\n}\n\n.has-image {\n .event-name, .event-date {\n color: #FFFFFF !important;\n }\n}\n@media (max-width:768px){\n .check-icon{\n width:60px!important;\n height:60px!important\n }\n h1.title ,.sub-title{\n font-size: 22px;\n }\n p.subtitle,.event-name{\n font-size: 16px;\n }\n .event-date{\n font-size: 14px;\n }\n .event-col{\n padding: 7px 0px;\n height:194px;\n }\n .event-col:last-of-type{\n padding-bottom:0\n }\n .event-col a{\n font-size: 12px;\n }\n .btn-ticket-download {\n font-size:18px!important;\n padding:10px 20px !important\n }\n .custom-gutter {\n margin:0\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderThankYou.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./OrderThankYou.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./OrderThankYou.vue?vue&type=template&id=facf6b7c&scoped=true\"\nimport script from \"./OrderThankYou.vue?vue&type=script&lang=js\"\nexport * from \"./OrderThankYou.vue?vue&type=script&lang=js\"\nimport style0 from \"./OrderThankYou.vue?vue&type=style&index=0&id=facf6b7c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"facf6b7c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form-group',{staticClass:\"text-right container-distance\"},[(_vm.$can('ticket_template_create'))?_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.$bvModal.show('new-template')}}},[_vm._v(_vm._s(_vm.$t('create_template')))]):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('template_modal_create'),\"id\":\"new-template\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.createTemplate()}}},[_vm._v(_vm._s(_vm.$t('create')))])]}}])},[(_vm.template)?_c('b-form-group',{attrs:{\"label\":_vm.$t('template_name')}},[_c('b-form-input',{model:{value:(_vm.template.name),callback:function ($$v) {_vm.$set(_vm.template, \"name\", $$v)},expression:\"template.name\"}})],1):_vm._e()],1),(_vm.templates.length)?_c('b-table',{attrs:{\"items\":_vm.templates,\"fields\":[{key: 'name', label: _vm.$t('ticket_template_name')}, {key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function({item, index}){return [(_vm.$can('ticket_template_edit'))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"to\":{name: 'EditTicketTemplate', params: {id: item.id}}}},[_vm._v(_vm._s(_vm.$t('edit')))]):_vm._e(),(_vm.$can('ticket_template_duplicate'))?_c('b-button',{staticClass:\"btnDuplicate\",attrs:{\"variant\":\"row-edit\"},on:{\"click\":function($event){return _vm.showDuplicateModal(item)}}},[_vm._v(_vm._s(_vm.$t('duplicate')))]):_vm._e(),(_vm.$can('ticket_template_delete'))?_c('b-icon',{staticClass:\"ml-3 text-secondary btnEventDelete\",class:{cursor_pointer: item.events_count === 0 && item.products_count === 0 && index, disabled_danger: item.events_count || item.products_count || index === 0},attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,2278119556)}):_vm._e(),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getTemplates}}):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),_c('b-modal',{attrs:{\"title\":_vm.$t('ticket_template_duplicate'),\"id\":\"duplicate-template\",\"size\":\"large\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":(_vm.template && (!_vm.template.name || _vm.template.name === _vm.originalTemplateName)) || _vm.loading,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.duplicateTemplate()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('duplicate'))+\" \")],1)]},proxy:true}])},[_c('div',[_c('b-row',[_c('b-col',[(_vm.template)?_c('b-form-group',{attrs:{\"label\":_vm.$t('template_name')}},[_c('b-form-input',{model:{value:(_vm.template.name),callback:function ($$v) {_vm.$set(_vm.template, \"name\", $$v)},expression:\"template.name\"}})],1):_vm._e()],1)],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-template\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteTemplate}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('ticket_template_delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-form-group class=\"text-right container-distance\">\n <b-button v-if=\"$can('ticket_template_create')\" variant=\"new\" @click=\"$bvModal.show('new-template')\">{{ $t('create_template') }}</b-button>\n </b-form-group>\n \n <b-modal :title=\"$t('template_modal_create')\" id=\"new-template\" size=\"lg\">\n <b-form-group v-if=\"template\" :label=\"$t('template_name')\">\n <b-form-input v-model=\"template.name\"></b-form-input>\n </b-form-group>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createTemplate()\" variant=\"success\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-table v-if=\"templates.length\" :items=\"templates\" :fields=\"[{key: 'name', label: $t('ticket_template_name')}, {key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(actions)=\"{item, index}\">\n <b-button v-if=\"$can('ticket_template_edit')\" :to=\"{name: 'EditTicketTemplate', params: {id: item.id}}\" class=\"mr-2\">{{ $t('edit') }}</b-button>\n <b-button v-if=\"$can('ticket_template_duplicate')\" @click=\"showDuplicateModal(item)\" class=\"btnDuplicate\" variant=\"row-edit\">{{ $t('duplicate') }}</b-button>\n <b-icon v-if=\"$can('ticket_template_delete')\" @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\" class=\"ml-3 text-secondary btnEventDelete\" :class=\"{cursor_pointer: item.events_count === 0 && item.products_count === 0 && index, disabled_danger: item.events_count || item.products_count || index === 0}\"></b-icon>\n </template>\n </b-table>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getTemplates\"></pagination>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <b-modal :title=\"$t('ticket_template_duplicate')\" id=\"duplicate-template\" size=\"large\">\n <div>\n <b-row>\n <b-col>\n <b-form-group v-if=\"template\" :label=\"$t('template_name')\">\n <b-form-input v-model=\"template.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer>\n <b-button :disabled=\"(template && (!template.name || template.name === originalTemplateName)) || loading\" variant=\"primary\" @click=\"duplicateTemplate()\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('duplicate') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-template\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('ticket_template_delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteTemplate\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport moment from \"moment\";\nexport default {\n data(){\n return {\n templates: [],\n page_data: null,\n template:{},\n loading: false,\n originalTemplateName: null\n }\n },\n methods: {\n cancel() {\n this.$bvModal.hide('new-template')\n this.template = {}\n },\n createTemplate(){\n api.ticket().createTemplate(this.template.name).then((template) => {\n this.cancel();\n if(this.$can('ticket_template_edit')) {\n this.$router.push({\n name: 'EditTicketTemplate',\n params: {\n id: template.id\n }\n })\n }\n else {\n this.$store.commit('success', this.$t('ticket_template_created'));\n this.getTemplates();\n }\n })\n },\n getTemplates(page = 1) {\n api.ticket().getTemplatesOverview(page).then((templates) => {\n this.templates = templates.data\n this.page_data = templates\n })\n },\n showDuplicateModal(template) {\n this.originalTemplateName = template.name;\n this.template = {\n id: template.id,\n name: template.name + ' - ' + moment().format('YYYY')\n };\n this.$bvModal.show('duplicate-template');\n },\n duplicateTemplate() {\n this.loading = true;\n api.ticket().duplicateTemplate(this.template.id, this.template.name).then(template => {\n this.loading = false;\n this.template = null;\n this.$bvModal.hide('duplicate-template');\n\n if(this.$can('ticket_template_edit')) {\n this.$router.push({\n name: 'EditTicketTemplate',\n params: {\n id: template.id\n }\n })\n }\n else {\n this.getTemplates();\n }\n }).catch(() => {\n this.loading = false;\n });\n },\n deleteTemplate() {\n this.loading = true;\n api.ticket().deleteTemplate(this.template.id).then(() => {\n this.$store.commit('success', 'ticket_template_deleted');\n this.$bvModal.hide('delete-template')\n this.template = {};\n this.getTemplates();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n this.$store.commit('errors', ['ticket_template_cannot_deleted']);\n })\n },\n showDeleteModal(template) {\n if(template.events_count || template.products_count) {\n return;\n }\n this.template = template;\n this.$bvModal.show('delete-template')\n },\n },\n created() {\n document.title = this.$t('backend_title_ticket_templates')\n if(this.$store.state.user) {\n if(!this.$can('ticket_template_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getTemplates();\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('ticket_template_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.btnEventDelete{\n position:relative;\n top:4px\n}\n.cursor_pointer {\n cursor: pointer;\n}\n.disabled_danger {\n opacity: .4;\n}\ntable.b-table tbody tr:hover .btn.btn-row-edit{\n border-color: #f5f5f5 !important;\n}\n.btnDuplicate{\n background-color: transparent!important;\n color: #808090!important;\n}\n.btnDuplicate:hover{\n background-color: #F0B52D!important;\n border-color: #F0B52D!important;\n color:white!important;\n}\n\ntr:hover button {}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketTemplates.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketTemplates.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TicketTemplates.vue?vue&type=template&id=e67389f6&scoped=true\"\nimport script from \"./TicketTemplates.vue?vue&type=script&lang=js\"\nexport * from \"./TicketTemplates.vue?vue&type=script&lang=js\"\nimport style0 from \"./TicketTemplates.vue?vue&type=style&index=0&id=e67389f6&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e67389f6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.template)?_c('div',{attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('template_title', _vm.template)))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',{staticClass:\"mb-3\"},[(!_vm.generating)?_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.generatePreview()}}},[_vm._v(_vm._s(_vm.$t('generate_preview')))]):_c('b-spinner')],1),_c('b-col',{staticClass:\"mb-3 text-right\"})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_template_name')}},[_c('b-form-input',{model:{value:(_vm.template.name),callback:function ($$v) {_vm.$set(_vm.template, \"name\", $$v)},expression:\"template.name\"}})],1)],1)],1),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',[_c('h4',[_vm._v(_vm._s(_vm.$t('template_background')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_background_hint')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_background_jpg_hint')))]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_template_background')}},[_c('input',{ref:\"image\",attrs:{\"type\":\"file\",\"id\":\"image\",\"aria-describedby\":\"image-feedback\",\"accept\":\"image/jpg,image/jpeg\"},on:{\"change\":function($event){return _vm.onImageChange()}}}),_c('span',{staticClass:\"invalid-feedback\",class:this.state.image === false ? 'show' : ''},[_vm._v(_vm._s(_vm.$t('edit_ticket_template_err_no_jpg')))]),_c('span',{staticClass:\"invalid-feedback\",class:this.reachedLimit === true ? 'show' : ''},[_vm._v(_vm._s(_vm.$t('edit_ticket_template_reached_limit')))])])],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[(_vm.template.background)?_c('b-img',{attrs:{\"fluid\":\"\",\"src\":_vm.template.background}}):_vm._e()],1)],1),_c('h4',{staticClass:\"mt-4\"},[_vm._v(_vm._s(_vm.$t('template_qr')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_position_hints')))]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('top'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.state.qr_top},on:{\"input\":_vm.checkQRPosition},model:{value:(_vm.template.qr.top),callback:function ($$v) {_vm.$set(_vm.template.qr, \"top\", $$v)},expression:\"template.qr.top\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('width'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.state.qr_width},on:{\"input\":_vm.checkQRPosition},model:{value:(_vm.template.qr.width),callback:function ($$v) {_vm.$set(_vm.template.qr, \"width\", $$v)},expression:\"template.qr.width\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('left'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.state.qr_left},on:{\"input\":_vm.checkQRPosition},model:{value:(_vm.template.qr.left),callback:function ($$v) {_vm.$set(_vm.template.qr, \"left\", $$v)},expression:\"template.qr.left\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('height'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"state\":_vm.state.qr_height},on:{\"input\":_vm.checkQRPosition},model:{value:(_vm.template.qr.height),callback:function ($$v) {_vm.$set(_vm.template.qr, \"height\", $$v)},expression:\"template.qr.height\"}})],1)],1)],1),(_vm.state.qr_top === false || _vm.state.qr_left === false)?_c('span',{staticClass:\"d-block text-danger\"},[_vm._v(_vm._s(_vm.$t('ticket_template_qr_code_4cm')))]):_vm._e(),(_vm.state.qr_width === false || _vm.state.qr_height === false)?_c('span',{staticClass:\"d-block text-danger\"},[_vm._v(_vm._s(_vm.$t('ticket_template_qr_size')))]):_vm._e()],1),_c('b-col',[_c('h4',[_vm._v(_vm._s(_vm.$t('template_texts')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_texts_hint')))]),_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.addTextBlock()}}},[_vm._v(_vm._s(_vm.$t('template_add_text')))])],1),_c('hr'),_vm._l((_vm.template.texts),function(text,i){return _c('div',{key:`text` + i},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('top'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(text.top),callback:function ($$v) {_vm.$set(text, \"top\", $$v)},expression:\"text.top\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('left'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(text.left),callback:function ($$v) {_vm.$set(text, \"left\", $$v)},expression:\"text.left\"}})],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"2\"}},[_c('b-button',{attrs:{\"variant\":\"danger\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.deleteText(i)}}},[_vm._v(_vm._s(_vm.$t('delete')))])],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('template_text_block')}},[_c('b-textarea',{model:{value:(text.content),callback:function ($$v) {_vm.$set(text, \"content\", $$v)},expression:\"text.content\"}})],1),_vm._l((_vm.placeholders),function(placeholder){return _c('b-button',{key:placeholder,staticClass:\"mr-1 mb-1\",attrs:{\"size\":\"sm\"},on:{\"click\":function($event){text.content += '[' + placeholder + ']'}}},[_vm._v(\" \"+_vm._s('[' + placeholder + ']')+\" \")])}),_c('hr')],2)],1)],1)})],2)],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"success\",\"disabled\":!_vm.template.background || !this.template.texts.length || this.state.qr_left === false || this.state.qr_top === false || this.state.qr_width === false || this.state.qr_height === false},on:{\"click\":function($event){return _vm.saveTemplate()}}},[_vm._v(_vm._s(_vm.$t('template_save')))])],1)],1)],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"template\" fluid>\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('template_title', template) }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col class=\"mb-3\">\n <b-button variant=\"warning\" @click=\"generatePreview()\" v-if=\"!generating\">{{ $t('generate_preview') }}</b-button>\n <b-spinner v-else></b-spinner>\n </b-col>\n <b-col class=\"mb-3 text-right\">\n \n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_template_name')\">\n <b-form-input v-model=\"template.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\">\n <b-col>\n <h4>{{ $t('template_background') }}</h4>\n <p>{{ $t('template_background_hint') }}</p>\n <p>{{ $t('template_background_jpg_hint') }}</p>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_template_background')\">\n <input type=\"file\" id=\"image\" aria-describedby=\"image-feedback\" accept=\"image/jpg,image/jpeg\" ref=\"image\" v-on:change=\"onImageChange()\"/>\n <span class=\"invalid-feedback\" :class=\"this.state.image === false ? 'show' : ''\">{{ $t('edit_ticket_template_err_no_jpg') }}</span>\n <span class=\"invalid-feedback\" :class=\"this.reachedLimit === true ? 'show' : ''\">{{ $t('edit_ticket_template_reached_limit') }}</span>\n </b-form-group>\n </b-col>\n <b-col cols=\"2\">\n <b-img fluid v-if=\"template.background\" :src=\"template.background\"></b-img>\n </b-col>\n </b-row>\n <h4 class=\"mt-4\">{{ $t('template_qr') }}</h4>\n <p>{{ $t('template_position_hints') }}</p>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('top')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.top\" @input=\"checkQRPosition\" :state=\"state.qr_top\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('width')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.width\" @input=\"checkQRPosition\" :state=\"state.qr_width\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('left')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.left\" @input=\"checkQRPosition\" :state=\"state.qr_left\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('height')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.height\" @input=\"checkQRPosition\" :state=\"state.qr_height\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <span v-if=\"state.qr_top === false || state.qr_left === false\" class=\"d-block text-danger\">{{ $t('ticket_template_qr_code_4cm') }}</span>\n <span v-if=\"state.qr_width === false || state.qr_height === false\" class=\"d-block text-danger\">{{ $t('ticket_template_qr_size') }}</span>\n </b-col>\n <b-col>\n\n <h4>{{ $t('template_texts') }}</h4>\n <p>{{ $t('template_texts_hint') }}</p>\n <b-form-group>\n <b-button variant=\"warning\" @click=\"addTextBlock()\">{{ $t('template_add_text') }}</b-button>\n </b-form-group>\n\n <hr>\n <div v-for=\"(text, i) in template.texts\" :key=\"`text` + i\">\n <b-row>\n <b-col cols=\"5\">\n <b-form-group :label=\"$t('top')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"text.top\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"5\">\n <b-form-group :label=\"$t('left')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"text.left\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"2\" class=\"text-right\">\n <b-button variant=\"danger\" @click=\"deleteText(i)\" size=\"sm\">{{ $t('delete') }}</b-button>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('template_text_block')\">\n <b-textarea v-model=\"text.content\"></b-textarea>\n </b-form-group>\n <b-button size=\"sm\" class=\"mr-1 mb-1\" v-for=\"placeholder in placeholders\" :key=\"placeholder\"\n @click=\"text.content += '[' + placeholder + ']'\">\n {{ '[' + placeholder + ']' }}\n </b-button>\n <hr>\n </b-col>\n </b-row>\n </div>\n\n </b-col>\n </b-row>\n <b-row class=\"mt-3\">\n <b-col class=\"text-right\">\n <b-button @click=\"saveTemplate()\" variant=\"success\" :disabled=\"!template.background || !this.template.texts.length || this.state.qr_left === false || this.state.qr_top === false || this.state.qr_width === false || this.state.qr_height === false\">{{ $t('template_save') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport axios from \"axios\";\n\nexport default {\n data() {\n return {\n template: null,\n generating: false,\n reachedLimit: false,\n state: {\n image: null,\n qr_top: null,\n qr_left: null,\n qr_width: null,\n qr_height: null\n },\n placeholders: [\n 'event_name',\n 'event_date',\n 'customer_first_name',\n 'customer_last_name',\n 'product_name',\n 'order_number',\n 'ticket_secret',\n 'product_group_name',\n 'timeslot',\n 'event_start_time',\n 'event_end_time',\n 'location'\n ]\n }\n },\n methods: {\n addTextBlock() {\n this.template.texts.push({content: ''})\n },\n generatePreview() {\n this.generating = true\n api.ticket().previewTemplate(this.template, {\n ticket: {\n id: this.template.id + new Date().getTime(),\n secret: this.template.id + 'PREVIEW',\n customer: {\n first_name: 'Jan',\n last_name: 'Janssen',\n company_name: 'Janssen BV'\n },\n order_product: {\n product: {\n name: 'VIP Ticket'\n }\n }\n },\n background: this.template.background,\n qr: Object.assign(this.template.qr, {\n data: {\n id: this.template.id + 12345667,\n secret: this.template.id + 'PREVIEW',\n }\n }),\n texts: this.template.texts\n }).then(url => {\n window.open(url, '_blank')\n }).catch(() => {\n this.$store.commit('errors', ['unable_to_generate_template'])\n }).finally(() => {\n this.generating = false\n })\n },\n onImageChange() {\n this.state.image = null;\n if( this.$refs['image'].files[0].type != 'image/jpeg' ){\n this.state.image = false;\n this.$store.commit('errors', [this.$t('edit_ticket_template_err_no_jpg')])\n return; \n }\n\n if (this.$refs['image'].files[0].size < 300000) {\n this.reachedLimit = false\n api.cdn().signUpload(this.$refs['image'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['image'].files[0], {\n headers: {\n 'Content-Type': this.$refs['image'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n }).then(() => {\n // upload done, create the video in the database\n this.template.background = response.target_url\n })\n })\n } else {\n this.reachedLimit = true\n }\n },\n deleteText(index) {\n this.template.texts.splice(index, 1)\n },\n saveTemplate() {\n this.state.image = null;\n if( this.$refs['image'].files[0] && this.$refs['image'].files[0].type != 'image/jpeg' ){\n this.state.image = false;\n this.$store.commit('errors', [this.$t('edit_ticket_template_err_no_jpg')])\n return; \n }\n\n for(const t of this.template.texts) {\n if(!t.top || !t.left || !t.content) {\n this.$store.commit('errors', [this.$t('edit_ticket_template_err_textbox_field')])\n return;\n }\n }\n\n // Check if a textblock has been set\n if(!this.template.texts[0]){\n this.$store.commit('errors', [this.$t('edit_ticket_template_err_no_textbox')])\n return;\n }\n\n api.ticket().saveTemplate(this.template).then((template) => {\n this.template = template\n this.$store.commit('success', 'ticket_template_updated')\n })\n },\n checkQRPosition() {\n this.state.qr_top = null;\n this.state.qr_left = null;\n this.state.qr_width = null;\n this.state.qr_height = null;\n\n if(this.template.qr.width < 100 || this.template.qr.width > 225) {\n this.state.qr_width = false;\n }\n if(this.template.qr.height < 100 || this.template.qr.height > 225) {\n this.state.qr_height = false;\n }\n\n const cm = this.cmToPx(1.5);\n if(this.template.qr.top < cm) {\n this.state.qr_top = false;\n }\n if(this.template.qr.left < cm) {\n this.state.qr_left = false;\n }\n\n const pageWidth = 595;\n const pageHeight = 842;\n\n if((parseInt(this.template.qr.width) + parseInt(this.template.qr.left)) > (pageWidth - cm)) {\n this.state.qr_left = false;\n }\n\n if((parseInt(this.template.qr.height) + parseInt(this.template.qr.top)) > (pageHeight - cm)) {\n this.state.qr_top = false;\n }\n },\n cmToPx(cm) {\n return cm / 0.026458;\n }\n },\n created() {\n document.title = this.$t('backend_title_edit_ticket_templates')\n if(this.$store.state.user) {\n if(!this.$can('ticket_template_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.ticket().getTemplate(this.$route.params.id).then((template) => {\n if (!template.qr) {\n template.qr = {\n width: 175,\n height: 175,\n top: 350,\n left: 175\n }\n }\n if (!template.texts) {\n template.texts = []\n }\n this.template = template\n })\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('ticket_template_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.show{\n display:block !important\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditTicketTemplate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditTicketTemplate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EditTicketTemplate.vue?vue&type=template&id=dc62969e&scoped=true\"\nimport script from \"./EditTicketTemplate.vue?vue&type=script&lang=js\"\nexport * from \"./EditTicketTemplate.vue?vue&type=script&lang=js\"\nimport style0 from \"./EditTicketTemplate.vue?vue&type=style&index=0&id=dc62969e&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"dc62969e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-row',{staticClass:\"vh-100\",attrs:{\"align-v\":\"center\"}},[_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('error_page_not_found')))])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NotFound.vue?vue&type=template&id=03a8ecaa\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[_c('b-row',[_c('b-col',[_c('TermsConditions' + (_vm.language ? _vm.language.toUpperCase() : 'EN'),{tag:\"component\"})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h1',[_vm._v(\"Fairtix User Terms\")]),_c('p',[_vm._v(\"Last updated: 24-04-2024\")]),_c('p',[_c('strong',[_vm._v(\"Article 1 - Definitions\")])]),_c('p',[_vm._v(\"1.1. In addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:\")]),_c('p',[_vm._v(\"(a) Customer: each natural person or entity that accesses or uses the Ticketshop;\")]),_c('p',[_vm._v(\"(b) Customer Data: all information and any personal data provided by Customer to Fairtix;\")]),_c('p',[_vm._v(\"(c) Event: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;\")]),_c('p',[_vm._v(\"(d) Fairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;\")]),_c('p',[_vm._v(\"(e) Foundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;\")]),_c('p',[_vm._v(\"(f) Organiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;\")]),_c('p',[_vm._v(\"(g) Parties:Fairtix and the Customer, each to be referred to separately as Party.\")]),_c('p',[_vm._v(\"(h) Services Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;\")]),_c('p',[_vm._v(\"(i) Ticket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;\")]),_c('p',[_vm._v(\"(j) Ticket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;\")]),_c('p',[_vm._v(\"(k) Ticketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;\")]),_c('p',[_vm._v(\"(l) User Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.\")]),_c('p',[_c('strong',[_vm._v(\"Article 2 - Applicability of terms\")])]),_c('p',[_vm._v(\"2.1. By using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.\")]),_c('p',[_vm._v(\"2.2. When buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. \")]),_c('p',[_vm._v(\"2.3. The Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. \")]),_c('p',[_vm._v(\"2.4. Unless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.\")]),_c('p',[_vm._v(\"2.5. The invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. \")]),_c('p',[_c('strong',[_vm._v(\"Article 3 - Use of the Ticketshop\")])]),_c('p',[_vm._v(\"3.1. The access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:\")]),_c('p',[_vm._v(\"(a) offer any information, data or content through the Ticketshop that may infringe any law or regulation; \")]),_c('p',[_vm._v(\"(b) use the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;\")]),_c('p',[_vm._v(\"(c) check, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;\")]),_c('p',[_vm._v(\"(d) block, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; \")]),_c('p',[_vm._v(\"(e) gain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;\")]),_c('p',[_vm._v(\"(f) use the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;\")]),_c('p',[_vm._v(\"(g) use scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.\")]),_c('p',[_vm._v(\"3.2. Fairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.\")]),_c('p',[_vm._v(\"3.3. Customer shall provide accurate, current and complete information when purchasing a Ticket. \")]),_c('p',[_c('strong',[_vm._v(\"Article 4 - Ticket Agreement with Organiser\")])]),_c('p',[_vm._v(\"4.1. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.\")]),_c('p',[_vm._v(\"4.2. In case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.\")]),_c('p',[_c('strong',[_vm._v(\"Article 5 - Prices and Payment\")])]),_c('p',[_vm._v(\"5.1. All Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. \")]),_c('p',[_vm._v(\"5.2. These service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. \")]),_c('p',[_vm._v(\"5.3. The Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.\")]),_c('p',[_vm._v(\"5.4. The Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. \")]),_c('p',[_vm._v(\"5.5. All orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. \")]),_c('p',[_vm._v(\"5.6. When placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.\")]),_c('p',[_vm._v(\"5.7. After completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. \")]),_c('p',[_vm._v(\"5.8. By default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.\")]),_c('p',[_c('strong',[_vm._v(\"Article 6 - Liability and Warranties\")])]),_c('p',[_vm._v(\"6.1. Although Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \\\"as is\\\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. \")]),_c('p',[_vm._v(\"6.2. Fairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.\")]),_c('p',[_vm._v(\"6.3. The Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.\")]),_c('p',[_vm._v(\"6.4. The Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.\")]),_c('p',[_vm._v(\"6.5. Fairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.\")]),_c('p',[_vm._v(\"6.6. The limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 7 - Customer Data\")])]),_c('p',[_vm._v(\"7.1. Fairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. \")]),_c('p',[_vm._v(\"7.2. Customer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. \")]),_c('p',[_c('strong',[_vm._v(\"Article 8 - Intellectual Property\")])]),_c('p',[_vm._v(\"8.1. All intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. \")]),_c('p',[_vm._v(\"8.2. Nothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.\")]),_c('p',[_c('strong',[_vm._v(\"Article 9 - Suspension and Termination\")])]),_c('p',[_vm._v(\"9.1. Fairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.\")]),_c('p',[_vm._v(\"9.2. The Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 10 - Applicable Law and Jurisdiction\")])]),_c('p',[_vm._v(\"10.1. These User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. \")]),_c('p',[_vm._v(\"10.2. All disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 11 - Additional Terms\")])]),_c('p',[_vm._v(\"11.1. Fairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.\")]),_c('p',[_vm._v(\"11.2. Fairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h1>Fairtix User Terms</h1>\n <p>Last updated: 24-04-2024</p>\n <p><strong>Article 1 -\tDefinitions</strong></p>\n <p>1.1.\tIn addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:</p>\n <p>(a)\tCustomer: each natural person or entity that accesses or uses the Ticketshop;</p>\n <p>(b)\tCustomer Data: all information and any personal data provided by Customer to Fairtix;</p>\n <p>(c)\tEvent: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;</p>\n <p>(d)\tFairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;</p>\n <p>(e)\tFoundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;</p>\n <p>(f)\tOrganiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;</p>\n <p>(g)\tParties:Fairtix and the Customer, each to be referred to separately as Party.</p>\n <p>(h)\tServices Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;</p>\n <p>(i)\tTicket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;</p>\n <p>(j)\tTicket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;</p>\n <p>(k)\tTicketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;</p>\n <p>(l)\tUser Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.</p>\n <p><strong>Article 2 -\tApplicability of terms</strong></p>\n <p>2.1.\tBy using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.</p>\n <p>2.2.\tWhen buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. </p>\n <p>2.3.\tThe Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. </p>\n <p>2.4.\tUnless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.</p>\n <p>2.5.\tThe invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. </p>\n <p><strong>Article 3 -\tUse of the Ticketshop</strong></p>\n <p>3.1.\tThe access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:</p>\n <p>(a)\toffer any information, data or content through the Ticketshop that may infringe any law or regulation; </p>\n <p>(b)\tuse the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;</p>\n <p>(c)\tcheck, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;</p>\n <p>(d)\tblock, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; </p>\n <p>(e)\tgain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;</p>\n <p>(f)\tuse the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;</p>\n <p>(g)\tuse scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.</p>\n <p>3.2.\tFairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.</p>\n <p>3.3.\tCustomer shall provide accurate, current and complete information when purchasing a Ticket. </p>\n <p><strong>Article 4 -\tTicket Agreement with Organiser</strong></p>\n <p>4.1.\tAdmission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.</p>\n <p>4.2.\tIn case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.</p>\n <p><strong>Article 5 -\tPrices and Payment</strong></p>\n <p>5.1.\tAll Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. </p>\n <p>5.2.\tThese service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. </p>\n <p>5.3.\tThe Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.</p>\n <p>5.4.\tThe Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. </p>\n <p>5.5.\tAll orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. </p>\n <p>5.6.\tWhen placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.</p>\n <p>5.7.\tAfter completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. </p>\n <p>5.8.\tBy default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.</p>\n <p><strong>Article 6 -\tLiability and Warranties</strong></p>\n <p>6.1.\tAlthough Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \"as is\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. </p>\n <p>6.2.\tFairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.</p>\n <p>6.3.\tThe Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.</p>\n <p>6.4.\tThe Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.</p>\n <p>6.5.\tFairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.</p>\n <p>6.6.\tThe limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.</p>\n <p><strong>Article 7 -\tCustomer Data</strong></p>\n <p>7.1.\tFairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. </p>\n <p>7.2.\tCustomer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. </p>\n <p><strong>Article 8 -\tIntellectual Property</strong></p>\n <p>8.1.\tAll intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. </p>\n <p>8.2.\tNothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.</p>\n <p><strong>Article 9 -\tSuspension and Termination</strong></p>\n <p>9.1.\tFairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.</p>\n <p>9.2.\tThe Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.</p>\n <p><strong>Article 10 -\tApplicable Law and Jurisdiction</strong></p>\n <p>10.1.\tThese User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. </p>\n <p>10.2.\tAll disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.</p>\n <p><strong>Article 11 -\tAdditional Terms</strong></p>\n <p>11.1.\tFairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.</p>\n <p>11.2.\tFairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.</p>\n </div>\n</template>\n\n<script>\n/* eslint @intlify/vue-i18n/no-raw-text: 'off' */\nexport default {\n data() {\n return {\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsEN.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsEN.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermsConditionsEN.vue?vue&type=template&id=3025eae5\"\nimport script from \"./TermsConditionsEN.vue?vue&type=script&lang=js\"\nexport * from \"./TermsConditionsEN.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h1',[_vm._v(\"Fairtix User Terms\")]),_c('p',[_vm._v(\"Last updated: 24-04-2024\")]),_c('p',[_c('strong',[_vm._v(\"Article 1 - Definitions\")])]),_c('p',[_vm._v(\"1.1. In addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:\")]),_c('p',[_vm._v(\"(a) Customer: each natural person or entity that accesses or uses the Ticketshop;\")]),_c('p',[_vm._v(\"(b) Customer Data: all information and any personal data provided by Customer to Fairtix;\")]),_c('p',[_vm._v(\"(c) Event: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;\")]),_c('p',[_vm._v(\"(d) Fairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;\")]),_c('p',[_vm._v(\"(e) Foundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;\")]),_c('p',[_vm._v(\"(f) Organiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;\")]),_c('p',[_vm._v(\"(g) Parties:Fairtix and the Customer, each to be referred to separately as Party.\")]),_c('p',[_vm._v(\"(h) Services Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;\")]),_c('p',[_vm._v(\"(i) Ticket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;\")]),_c('p',[_vm._v(\"(j) Ticket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;\")]),_c('p',[_vm._v(\"(k) Ticketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;\")]),_c('p',[_vm._v(\"(l) User Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.\")]),_c('p',[_c('strong',[_vm._v(\"Article 2 - Applicability of terms\")])]),_c('p',[_vm._v(\"2.1. By using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.\")]),_c('p',[_vm._v(\"2.2. When buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. \")]),_c('p',[_vm._v(\"2.3. The Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. \")]),_c('p',[_vm._v(\"2.4. Unless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.\")]),_c('p',[_vm._v(\"2.5. The invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. \")]),_c('p',[_c('strong',[_vm._v(\"Article 3 - Use of the Ticketshop\")])]),_c('p',[_vm._v(\"3.1. The access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:\")]),_c('p',[_vm._v(\"(a) offer any information, data or content through the Ticketshop that may infringe any law or regulation; \")]),_c('p',[_vm._v(\"(b) use the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;\")]),_c('p',[_vm._v(\"(c) check, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;\")]),_c('p',[_vm._v(\"(d) block, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; \")]),_c('p',[_vm._v(\"(e) gain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;\")]),_c('p',[_vm._v(\"(f) use the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;\")]),_c('p',[_vm._v(\"(g) use scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.\")]),_c('p',[_vm._v(\"3.2. Fairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.\")]),_c('p',[_vm._v(\"3.3. Customer shall provide accurate, current and complete information when purchasing a Ticket. \")]),_c('p',[_c('strong',[_vm._v(\"Article 4 - Ticket Agreement with Organiser\")])]),_c('p',[_vm._v(\"4.1. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.\")]),_c('p',[_vm._v(\"4.2. In case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.\")]),_c('p',[_c('strong',[_vm._v(\"Article 5 - Prices and Payment\")])]),_c('p',[_vm._v(\"5.1. All Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. \")]),_c('p',[_vm._v(\"5.2. These service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. \")]),_c('p',[_vm._v(\"5.3. The Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.\")]),_c('p',[_vm._v(\"5.4. The Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. \")]),_c('p',[_vm._v(\"5.5. All orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. \")]),_c('p',[_vm._v(\"5.6. When placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.\")]),_c('p',[_vm._v(\"5.7. After completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. \")]),_c('p',[_vm._v(\"5.8. By default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.\")]),_c('p',[_c('strong',[_vm._v(\"Article 6 - Liability and Warranties\")])]),_c('p',[_vm._v(\"6.1. Although Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \\\"as is\\\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. \")]),_c('p',[_vm._v(\"6.2. Fairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.\")]),_c('p',[_vm._v(\"6.3. The Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.\")]),_c('p',[_vm._v(\"6.4. The Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.\")]),_c('p',[_vm._v(\"6.5. Fairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.\")]),_c('p',[_vm._v(\"6.6. The limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 7 - Customer Data\")])]),_c('p',[_vm._v(\"7.1. Fairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. \")]),_c('p',[_vm._v(\"7.2. Customer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. \")]),_c('p',[_c('strong',[_vm._v(\"Article 8 - Intellectual Property\")])]),_c('p',[_vm._v(\"8.1. All intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. \")]),_c('p',[_vm._v(\"8.2. Nothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.\")]),_c('p',[_c('strong',[_vm._v(\"Article 9 - Suspension and Termination\")])]),_c('p',[_vm._v(\"9.1. Fairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.\")]),_c('p',[_vm._v(\"9.2. The Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 10 - Applicable Law and Jurisdiction\")])]),_c('p',[_vm._v(\"10.1. These User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. \")]),_c('p',[_vm._v(\"10.2. All disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 11 - Additional Terms\")])]),_c('p',[_vm._v(\"11.1. Fairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.\")]),_c('p',[_vm._v(\"11.2. Fairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h1>Fairtix User Terms</h1>\n <p>Last updated: 24-04-2024</p>\n <p><strong>Article 1 -\tDefinitions</strong></p>\n <p>1.1.\tIn addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:</p>\n <p>(a)\tCustomer: each natural person or entity that accesses or uses the Ticketshop;</p>\n <p>(b)\tCustomer Data: all information and any personal data provided by Customer to Fairtix;</p>\n <p>(c)\tEvent: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;</p>\n <p>(d)\tFairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;</p>\n <p>(e)\tFoundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;</p>\n <p>(f)\tOrganiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;</p>\n <p>(g)\tParties:Fairtix and the Customer, each to be referred to separately as Party.</p>\n <p>(h)\tServices Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;</p>\n <p>(i)\tTicket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;</p>\n <p>(j)\tTicket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;</p>\n <p>(k)\tTicketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;</p>\n <p>(l)\tUser Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.</p>\n <p><strong>Article 2 -\tApplicability of terms</strong></p>\n <p>2.1.\tBy using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.</p>\n <p>2.2.\tWhen buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. </p>\n <p>2.3.\tThe Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. </p>\n <p>2.4.\tUnless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.</p>\n <p>2.5.\tThe invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. </p>\n <p><strong>Article 3 -\tUse of the Ticketshop</strong></p>\n <p>3.1.\tThe access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:</p>\n <p>(a)\toffer any information, data or content through the Ticketshop that may infringe any law or regulation; </p>\n <p>(b)\tuse the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;</p>\n <p>(c)\tcheck, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;</p>\n <p>(d)\tblock, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; </p>\n <p>(e)\tgain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;</p>\n <p>(f)\tuse the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;</p>\n <p>(g)\tuse scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.</p>\n <p>3.2.\tFairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.</p>\n <p>3.3.\tCustomer shall provide accurate, current and complete information when purchasing a Ticket. </p>\n <p><strong>Article 4 -\tTicket Agreement with Organiser</strong></p>\n <p>4.1.\tAdmission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.</p>\n <p>4.2.\tIn case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.</p>\n <p><strong>Article 5 -\tPrices and Payment</strong></p>\n <p>5.1.\tAll Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. </p>\n <p>5.2.\tThese service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. </p>\n <p>5.3.\tThe Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.</p>\n <p>5.4.\tThe Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. </p>\n <p>5.5.\tAll orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. </p>\n <p>5.6.\tWhen placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.</p>\n <p>5.7.\tAfter completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. </p>\n <p>5.8.\tBy default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.</p>\n <p><strong>Article 6 -\tLiability and Warranties</strong></p>\n <p>6.1.\tAlthough Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \"as is\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. </p>\n <p>6.2.\tFairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.</p>\n <p>6.3.\tThe Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.</p>\n <p>6.4.\tThe Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.</p>\n <p>6.5.\tFairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.</p>\n <p>6.6.\tThe limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.</p>\n <p><strong>Article 7 -\tCustomer Data</strong></p>\n <p>7.1.\tFairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. </p>\n <p>7.2.\tCustomer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. </p>\n <p><strong>Article 8 -\tIntellectual Property</strong></p>\n <p>8.1.\tAll intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. </p>\n <p>8.2.\tNothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.</p>\n <p><strong>Article 9 -\tSuspension and Termination</strong></p>\n <p>9.1.\tFairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.</p>\n <p>9.2.\tThe Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.</p>\n <p><strong>Article 10 -\tApplicable Law and Jurisdiction</strong></p>\n <p>10.1.\tThese User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. </p>\n <p>10.2.\tAll disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.</p>\n <p><strong>Article 11 -\tAdditional Terms</strong></p>\n <p>11.1.\tFairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.</p>\n <p>11.2.\tFairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.</p>\n </div>\n</template>\n\n<script>\n/* eslint @intlify/vue-i18n/no-raw-text: 'off' */\nexport default {\n data() {\n return {\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsDE.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsDE.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermsConditionsDE.vue?vue&type=template&id=3e977a0d\"\nimport script from \"./TermsConditionsDE.vue?vue&type=script&lang=js\"\nexport * from \"./TermsConditionsDE.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h1',[_vm._v(\"Fairtix User Terms\")]),_c('p',[_vm._v(\"Last updated: 24-04-2024\")]),_c('p',[_c('strong',[_vm._v(\"Article 1 - Definitions\")])]),_c('p',[_vm._v(\"1.1. In addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:\")]),_c('p',[_vm._v(\"(a) Customer: each natural person or entity that accesses or uses the Ticketshop;\")]),_c('p',[_vm._v(\"(b) Customer Data: all information and any personal data provided by Customer to Fairtix;\")]),_c('p',[_vm._v(\"(c) Event: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;\")]),_c('p',[_vm._v(\"(d) Fairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;\")]),_c('p',[_vm._v(\"(e) Foundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;\")]),_c('p',[_vm._v(\"(f) Organiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;\")]),_c('p',[_vm._v(\"(g) Parties:Fairtix and the Customer, each to be referred to separately as Party.\")]),_c('p',[_vm._v(\"(h) Services Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;\")]),_c('p',[_vm._v(\"(i) Ticket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;\")]),_c('p',[_vm._v(\"(j) Ticket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;\")]),_c('p',[_vm._v(\"(k) Ticketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;\")]),_c('p',[_vm._v(\"(l) User Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.\")]),_c('p',[_c('strong',[_vm._v(\"Article 2 - Applicability of terms\")])]),_c('p',[_vm._v(\"2.1. By using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.\")]),_c('p',[_vm._v(\"2.2. When buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. \")]),_c('p',[_vm._v(\"2.3. The Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. \")]),_c('p',[_vm._v(\"2.4. Unless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.\")]),_c('p',[_vm._v(\"2.5. The invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. \")]),_c('p',[_c('strong',[_vm._v(\"Article 3 - Use of the Ticketshop\")])]),_c('p',[_vm._v(\"3.1. The access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:\")]),_c('p',[_vm._v(\"(a) offer any information, data or content through the Ticketshop that may infringe any law or regulation; \")]),_c('p',[_vm._v(\"(b) use the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;\")]),_c('p',[_vm._v(\"(c) check, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;\")]),_c('p',[_vm._v(\"(d) block, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; \")]),_c('p',[_vm._v(\"(e) gain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;\")]),_c('p',[_vm._v(\"(f) use the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;\")]),_c('p',[_vm._v(\"(g) use scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.\")]),_c('p',[_vm._v(\"3.2. Fairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.\")]),_c('p',[_vm._v(\"3.3. Customer shall provide accurate, current and complete information when purchasing a Ticket. \")]),_c('p',[_c('strong',[_vm._v(\"Article 4 - Ticket Agreement with Organiser\")])]),_c('p',[_vm._v(\"4.1. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.\")]),_c('p',[_vm._v(\"4.2. In case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.\")]),_c('p',[_c('strong',[_vm._v(\"Article 5 - Prices and Payment\")])]),_c('p',[_vm._v(\"5.1. All Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. \")]),_c('p',[_vm._v(\"5.2. These service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. \")]),_c('p',[_vm._v(\"5.3. The Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.\")]),_c('p',[_vm._v(\"5.4. The Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. \")]),_c('p',[_vm._v(\"5.5. All orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. \")]),_c('p',[_vm._v(\"5.6. When placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.\")]),_c('p',[_vm._v(\"5.7. After completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. \")]),_c('p',[_vm._v(\"5.8. By default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.\")]),_c('p',[_c('strong',[_vm._v(\"Article 6 - Liability and Warranties\")])]),_c('p',[_vm._v(\"6.1. Although Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \\\"as is\\\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. \")]),_c('p',[_vm._v(\"6.2. Fairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.\")]),_c('p',[_vm._v(\"6.3. The Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.\")]),_c('p',[_vm._v(\"6.4. The Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.\")]),_c('p',[_vm._v(\"6.5. Fairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.\")]),_c('p',[_vm._v(\"6.6. The limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 7 - Customer Data\")])]),_c('p',[_vm._v(\"7.1. Fairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. \")]),_c('p',[_vm._v(\"7.2. Customer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. \")]),_c('p',[_c('strong',[_vm._v(\"Article 8 - Intellectual Property\")])]),_c('p',[_vm._v(\"8.1. All intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. \")]),_c('p',[_vm._v(\"8.2. Nothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.\")]),_c('p',[_c('strong',[_vm._v(\"Article 9 - Suspension and Termination\")])]),_c('p',[_vm._v(\"9.1. Fairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.\")]),_c('p',[_vm._v(\"9.2. The Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 10 - Applicable Law and Jurisdiction\")])]),_c('p',[_vm._v(\"10.1. These User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. \")]),_c('p',[_vm._v(\"10.2. All disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 11 - Additional Terms\")])]),_c('p',[_vm._v(\"11.1. Fairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.\")]),_c('p',[_vm._v(\"11.2. Fairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h1>Fairtix User Terms</h1>\n <p>Last updated: 24-04-2024</p>\n <p><strong>Article 1 -\tDefinitions</strong></p>\n <p>1.1.\tIn addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:</p>\n <p>(a)\tCustomer: each natural person or entity that accesses or uses the Ticketshop;</p>\n <p>(b)\tCustomer Data: all information and any personal data provided by Customer to Fairtix;</p>\n <p>(c)\tEvent: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;</p>\n <p>(d)\tFairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;</p>\n <p>(e)\tFoundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;</p>\n <p>(f)\tOrganiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;</p>\n <p>(g)\tParties:Fairtix and the Customer, each to be referred to separately as Party.</p>\n <p>(h)\tServices Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;</p>\n <p>(i)\tTicket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;</p>\n <p>(j)\tTicket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;</p>\n <p>(k)\tTicketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;</p>\n <p>(l)\tUser Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.</p>\n <p><strong>Article 2 -\tApplicability of terms</strong></p>\n <p>2.1.\tBy using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.</p>\n <p>2.2.\tWhen buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. </p>\n <p>2.3.\tThe Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. </p>\n <p>2.4.\tUnless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.</p>\n <p>2.5.\tThe invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. </p>\n <p><strong>Article 3 -\tUse of the Ticketshop</strong></p>\n <p>3.1.\tThe access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:</p>\n <p>(a)\toffer any information, data or content through the Ticketshop that may infringe any law or regulation; </p>\n <p>(b)\tuse the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;</p>\n <p>(c)\tcheck, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;</p>\n <p>(d)\tblock, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; </p>\n <p>(e)\tgain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;</p>\n <p>(f)\tuse the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;</p>\n <p>(g)\tuse scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.</p>\n <p>3.2.\tFairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.</p>\n <p>3.3.\tCustomer shall provide accurate, current and complete information when purchasing a Ticket. </p>\n <p><strong>Article 4 -\tTicket Agreement with Organiser</strong></p>\n <p>4.1.\tAdmission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.</p>\n <p>4.2.\tIn case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.</p>\n <p><strong>Article 5 -\tPrices and Payment</strong></p>\n <p>5.1.\tAll Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. </p>\n <p>5.2.\tThese service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. </p>\n <p>5.3.\tThe Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.</p>\n <p>5.4.\tThe Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. </p>\n <p>5.5.\tAll orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. </p>\n <p>5.6.\tWhen placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.</p>\n <p>5.7.\tAfter completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. </p>\n <p>5.8.\tBy default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.</p>\n <p><strong>Article 6 -\tLiability and Warranties</strong></p>\n <p>6.1.\tAlthough Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \"as is\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. </p>\n <p>6.2.\tFairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.</p>\n <p>6.3.\tThe Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.</p>\n <p>6.4.\tThe Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.</p>\n <p>6.5.\tFairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.</p>\n <p>6.6.\tThe limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.</p>\n <p><strong>Article 7 -\tCustomer Data</strong></p>\n <p>7.1.\tFairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. </p>\n <p>7.2.\tCustomer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. </p>\n <p><strong>Article 8 -\tIntellectual Property</strong></p>\n <p>8.1.\tAll intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. </p>\n <p>8.2.\tNothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.</p>\n <p><strong>Article 9 -\tSuspension and Termination</strong></p>\n <p>9.1.\tFairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.</p>\n <p>9.2.\tThe Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.</p>\n <p><strong>Article 10 -\tApplicable Law and Jurisdiction</strong></p>\n <p>10.1.\tThese User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. </p>\n <p>10.2.\tAll disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.</p>\n <p><strong>Article 11 -\tAdditional Terms</strong></p>\n <p>11.1.\tFairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.</p>\n <p>11.2.\tFairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.</p>\n </div>\n</template>\n\n<script>\n/* eslint @intlify/vue-i18n/no-raw-text: 'off' */\nexport default {\n data() {\n return {\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsES.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsES.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermsConditionsES.vue?vue&type=template&id=4e57b900\"\nimport script from \"./TermsConditionsES.vue?vue&type=script&lang=js\"\nexport * from \"./TermsConditionsES.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _vm._m(0)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h1',[_vm._v(\"Fairtix User Terms\")]),_c('p',[_vm._v(\"Last updated: 24-04-2024\")]),_c('p',[_c('strong',[_vm._v(\"Article 1 - Definitions\")])]),_c('p',[_vm._v(\"1.1. In addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:\")]),_c('p',[_vm._v(\"(a) Customer: each natural person or entity that accesses or uses the Ticketshop;\")]),_c('p',[_vm._v(\"(b) Customer Data: all information and any personal data provided by Customer to Fairtix;\")]),_c('p',[_vm._v(\"(c) Event: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;\")]),_c('p',[_vm._v(\"(d) Fairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;\")]),_c('p',[_vm._v(\"(e) Foundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;\")]),_c('p',[_vm._v(\"(f) Organiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;\")]),_c('p',[_vm._v(\"(g) Parties:Fairtix and the Customer, each to be referred to separately as Party.\")]),_c('p',[_vm._v(\"(h) Services Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;\")]),_c('p',[_vm._v(\"(i) Ticket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;\")]),_c('p',[_vm._v(\"(j) Ticket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;\")]),_c('p',[_vm._v(\"(k) Ticketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;\")]),_c('p',[_vm._v(\"(l) User Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.\")]),_c('p',[_c('strong',[_vm._v(\"Article 2 - Applicability of terms\")])]),_c('p',[_vm._v(\"2.1. By using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.\")]),_c('p',[_vm._v(\"2.2. When buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. \")]),_c('p',[_vm._v(\"2.3. The Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. \")]),_c('p',[_vm._v(\"2.4. Unless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.\")]),_c('p',[_vm._v(\"2.5. The invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. \")]),_c('p',[_c('strong',[_vm._v(\"Article 3 - Use of the Ticketshop\")])]),_c('p',[_vm._v(\"3.1. The access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:\")]),_c('p',[_vm._v(\"(a) offer any information, data or content through the Ticketshop that may infringe any law or regulation; \")]),_c('p',[_vm._v(\"(b) use the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;\")]),_c('p',[_vm._v(\"(c) check, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;\")]),_c('p',[_vm._v(\"(d) block, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; \")]),_c('p',[_vm._v(\"(e) gain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;\")]),_c('p',[_vm._v(\"(f) use the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;\")]),_c('p',[_vm._v(\"(g) use scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.\")]),_c('p',[_vm._v(\"3.2. Fairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.\")]),_c('p',[_vm._v(\"3.3. Customer shall provide accurate, current and complete information when purchasing a Ticket. \")]),_c('p',[_c('strong',[_vm._v(\"Article 4 - Ticket Agreement with Organiser\")])]),_c('p',[_vm._v(\"4.1. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.\")]),_c('p',[_vm._v(\"4.2. In case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.\")]),_c('p',[_c('strong',[_vm._v(\"Article 5 - Prices and Payment\")])]),_c('p',[_vm._v(\"5.1. All Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. \")]),_c('p',[_vm._v(\"5.2. These service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. \")]),_c('p',[_vm._v(\"5.3. The Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.\")]),_c('p',[_vm._v(\"5.4. The Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. \")]),_c('p',[_vm._v(\"5.5. All orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. \")]),_c('p',[_vm._v(\"5.6. When placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.\")]),_c('p',[_vm._v(\"5.7. After completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. \")]),_c('p',[_vm._v(\"5.8. By default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.\")]),_c('p',[_c('strong',[_vm._v(\"Article 6 - Liability and Warranties\")])]),_c('p',[_vm._v(\"6.1. Although Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \\\"as is\\\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. \")]),_c('p',[_vm._v(\"6.2. Fairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.\")]),_c('p',[_vm._v(\"6.3. The Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.\")]),_c('p',[_vm._v(\"6.4. The Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.\")]),_c('p',[_vm._v(\"6.5. Fairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.\")]),_c('p',[_vm._v(\"6.6. The limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 7 - Customer Data\")])]),_c('p',[_vm._v(\"7.1. Fairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. \")]),_c('p',[_vm._v(\"7.2. Customer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. \")]),_c('p',[_c('strong',[_vm._v(\"Article 8 - Intellectual Property\")])]),_c('p',[_vm._v(\"8.1. All intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. \")]),_c('p',[_vm._v(\"8.2. Nothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.\")]),_c('p',[_c('strong',[_vm._v(\"Article 9 - Suspension and Termination\")])]),_c('p',[_vm._v(\"9.1. Fairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.\")]),_c('p',[_vm._v(\"9.2. The Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 10 - Applicable Law and Jurisdiction\")])]),_c('p',[_vm._v(\"10.1. These User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. \")]),_c('p',[_vm._v(\"10.2. All disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.\")]),_c('p',[_c('strong',[_vm._v(\"Article 11 - Additional Terms\")])]),_c('p',[_vm._v(\"11.1. Fairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.\")]),_c('p',[_vm._v(\"11.2. Fairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.\")])])\n}]\n\nexport { render, staticRenderFns }","<template>\n <div>\n <h1>Fairtix User Terms</h1>\n <p>Last updated: 24-04-2024</p>\n <p><strong>Article 1 -\tDefinitions</strong></p>\n <p>1.1.\tIn addition to terms defined elsewhere in these terms of use the following terms will have the meaning set out below:</p>\n <p>(a)\tCustomer: each natural person or entity that accesses or uses the Ticketshop;</p>\n <p>(b)\tCustomer Data: all information and any personal data provided by Customer to Fairtix;</p>\n <p>(c)\tEvent: an event organised by the Organiser, including but not limited to performances of an artistic nature, music, theatre and musical performances, concerts and exhibitions, all in the broadest sense of the word;</p>\n <p>(d)\tFairtix: Upways B.V., having its registered office and principal place of business at Spoorstraat 153, 6591 GT Gennep, registered with the Chamber of Commerce under number 77888286, also acting under the tradename ‘Fairtix’;</p>\n <p>(e)\tFoundation: the Pay.nl Foundation ‘Derdengelden’, with offices at Kopersteden 10, 7547 TK Enschede. The Pay.nl Foundation ‘Derdengelden’ receives and manages the funds received on behalf of Fairtix. The Pay.nl Foundation ‘Derdengelden’ is affiliated as a third-party funds entity with Tintel B.V. and is therefore involved by the Dutch Central Bank in its supervision;</p>\n <p>(f)\tOrganiser: the natural or entity who organises an Event and is responsible for it and with whom the Customer enters into the Ticket Agreement;</p>\n <p>(g)\tParties:Fairtix and the Customer, each to be referred to separately as Party.</p>\n <p>(h)\tServices Agreement: the agreement between Customer and Fairtix that governs the use of the Ticketshop and the provision of intermediary services for the purchase of a Ticket and/or merchandise;</p>\n <p>(i)\tTicket(s): the admission ticket to an Event, which may include related items such as merchandise or consumptions, organised by or on behalf of the Organiser that is sold to the Customer through the Ticketshop;</p>\n <p>(j)\tTicket Agreement: the agreement between Customer and the Organiser with respect to the purchase of a Ticket;</p>\n <p>(k)\tTicketshop: the online system developed by Fairtix for the purchase, processing and settlement of the purchased Tickets;</p>\n <p>(l)\tUser Terms; the terms and conditions of Fairtix for the provision of intermediary services and the use of the Ticketshop.</p>\n <p><strong>Article 2 -\tApplicability of terms</strong></p>\n <p>2.1.\tBy using the Ticketshop and the intermediary services provided by Fairtix, the Customer enters into the Services Agreement. These User Terms apply to and form part of the Services Agreement.</p>\n <p>2.2.\tWhen buying a Ticket, Customer agrees to enter into a Ticket Agreement. The general terms and conditions of the Organiser of the Event shall be applicable to the Ticket Agreement between the Customer and the Organiser. Admission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. </p>\n <p>2.3.\tThe Ticket Agreement between the Customer and the Organiser is concluded after Fairtix received the (authorization of the) payment and Customer received a confirmation. The payment confirmation in itself does not constitute a completed order. A completed order or purchase is only concluded after the Customer has received a written confirmation from or on behalf of the Organiser. </p>\n <p>2.4.\tUnless explicitly agreed otherwise, these User Terms shall take precedence over any other communication, offer, or agreement (oral or in writing) between the Parties relating to the subject matter hereof.</p>\n <p>2.5.\tThe invalidity, illegality or unenforceability of any of the provisions in these User Terms in any jurisdiction shall not affect the validity, legality and enforceability of the remaining provisions of these User Terms. Any invalid, illegal or unenforceable provision will be replaced by a valid, legal or enforceable provision that most closely matches the intent of the original provision. </p>\n <p><strong>Article 3 -\tUse of the Ticketshop</strong></p>\n <p>3.1.\tThe access to and use of the Ticketshop are subject to the usage restrictions specified in these User Terms or otherwise published by Fairtix. Customer will not violate any law, contract, intellectual property rights or other third party right while accessing or using the Ticketshop. Without limitation to the above, Customer will not:</p>\n <p>(a)\toffer any information, data or content through the Ticketshop that may infringe any law or regulation; </p>\n <p>(b)\tuse the Ticketshop for purposes other than permitted by these User Terms, and only to the extent permitted by any applicable law or regulation, nor shall engage in, encourage or promote any activity that violates these User Terms;</p>\n <p>(c)\tcheck, scan or test the vulnerability of the Ticketshop or any other related system or network, or act in breach of any security or authentication;</p>\n <p>(d)\tblock, disable or otherwise affect any advertising, advertisement banner window, links to other sites and services, or other features that constitute an integral part of the Ticketshop; </p>\n <p>(e)\tgain or attempt to gain unauthorized access to any (computer) system, server, network or hardware of Fairtix, other users or any other third party;</p>\n <p>(f)\tuse the Ticketshop in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully accessing and using the Ticketshop, or that could damage, disable, overburden or impair the functioning of the Ticketshop in any manner;</p>\n <p>(g)\tuse scripts, (partially) automated programs or other methods to gain priority on purchases in the Ticketshop.</p>\n <p>3.2.\tFairtix shall take reasonable technical and organizational measures to ensure the security of the Ticketshop but does not guarantee the security or availability of Customer Data.</p>\n <p>3.3.\tCustomer shall provide accurate, current and complete information when purchasing a Ticket. </p>\n <p><strong>Article 4 -\tTicket Agreement with Organiser</strong></p>\n <p>4.1.\tAdmission to an Event is at all times subject to any terms, conditions or rules of the Organiser and the venue operator. Customer is responsible to take notice of these terms, conditions or rules and any updates about the Event. Customer should verify himself/herself if the Event will be postponed, cancelled or changed in any other way.</p>\n <p>4.2.\tIn case of an official refund request by Customer, Fairtix will contact the Organiser for approval of the refund, unless otherwise agreed between Parties. If the request for reimbursement is fully or partly approved by the Organiser, the portion of the Ticket fee and associated costs will be reimbursed by the Organiser to Fairtix and by Fairtix to the Customer.</p>\n <p><strong>Article 5 -\tPrices and Payment</strong></p>\n <p>5.1.\tAll Ticket prices shown in the Ticketshop include the service charges and are including VAT. The service charges will be clearly stated in the order process or will be included in the total price for the Ticket and other products. Depending on the order type, service charges may be charged per product or per order. </p>\n <p>5.2.\tThese service charges cover, among other things, the costs of administration, transaction and maintenance, the costs of the management of access controls, (mandatory) memberships of music venues, the provision of customer service and, if applicable, the costs of shipping physical Tickets and/or other products. </p>\n <p>5.3.\tThe Customer can pay online via the offered payment methods. Based on the selected payment method when purchasing a Ticket, Fairtix may charge transaction costs on behalf of the Organiser.</p>\n <p>5.4.\tThe Ticket price and/or price of other products may vary from the price printed on the Ticket, as a result of additional costs such as costs for reservations, payments or delivery. </p>\n <p>5.5.\tAll orders are paid for in Euro’s and the statutory VAT rates apply, unless otherwise specified in the Ticketshop. </p>\n <p>5.6.\tWhen placing an order, the Customer agrees to pay the total amount due to Fairtix - which collects these payments on behalf of the Organiser - or the Customer gives Fairtix permission to debit the relevant amount from the account indicated by the Customer.</p>\n <p>5.7.\tAfter completing the order and once Fairtix received the (authorization of the) payment in full, the Customer will receive an order confirmation including a payment confirmation and a downloadable Ticket per email. </p>\n <p>5.8.\tBy default, Tickets are delivered by e-mail. In the event the Customer has selected an alternative delivery method when placing an order, additional costs will be charged and shall be shown on the order as part of the total amount.</p>\n <p><strong>Article 6 -\tLiability and Warranties</strong></p>\n <p>6.1.\tAlthough Fairtix takes measures to ensure a safe and proper functioning Ticketshop, Fairtix cannot guarantee the accuracy of the Ticketshop or the content of the Ticketshop. The Ticketshop is provided \"as is\" with any faults or failings and without any representation, warranty or guarantee whatsoever, express or implied, including without limitation any implied warranty of accuracy, completeness, quality, fitness for a particular purpose or non-infringement. Fairtix does not guarantee that the Ticketshop or the information is free of errors, defects, malware and viruses or that the Ticketshop or information is correct, up to date and accurate. </p>\n <p>6.2.\tFairtix is not liable for the consequences of (any) inaccuracies, such correct, complete, up to date and accurate information, with respect to the Events or the Ticketshop, nor shall it be liable for any damages resulting from the use or inability to use of the Ticketshop, unless such damage is the result of any willful misconduct or from gross negligence on the part of Fairtix.</p>\n <p>6.3.\tThe Ticketshop may provide links to external internet sites. Fairtix shall not be liable for the use or the content of sites that link to the Ticketshop, have embedded the Ticketshop or which are linked from it.</p>\n <p>6.4.\tThe Ticket Agreement is concluded and executed by the Organiser. Fairtix, in its role as intermediary, is not liable for the performance by the Organiser, for any form of damage and/or reimbursement resulting from the failure of the Organiser to fulfil its obligations to the Customer. Fairtix is not liable for any damage the Customer may suffer as a result of change of an Event, such as relocation, postponement or cancellation.</p>\n <p>6.5.\tFairtix accepts no liability for loss or damage to Tickets suffered by the Customer for any reason whatsoever, insofar as the Organiser (or Fairtix) cannot reasonably be held responsible for this. From the moment the Ticket is issued to the Customer, the Customer bears the risk of loss, theft, damage or misuse.</p>\n <p>6.6.\tThe limitations and exclusions of liability shall not apply to liability that may not be excluded or limited under mandatory applicable law.</p>\n <p><strong>Article 7 -\tCustomer Data</strong></p>\n <p>7.1.\tFairtix’ Cookie Policy and Privacy Statement apply to the collection and processing of Customer’s personal data in the context of its use of the Ticketshop. Fairtix’ Cookie Policy and Privacy Statement do not apply to any collection and processing of Customer’s personal data on or through third party external sites, including the website of the Organiser. </p>\n <p>7.2.\tCustomer is responsible for the legality, reliability, integrity and accuracy of the Customer Data. </p>\n <p><strong>Article 8 -\tIntellectual Property</strong></p>\n <p>8.1.\tAll intellectual property rights in or related to the Ticketshop or the documentation provided remain vested in Fairtix or its licensors. </p>\n <p>8.2.\tNothing in these User Terms shall be construed as conferring any right or license to any patent, trademark, copyright or other proprietary rights of Fairtix or any third party. Any licenses granted (if any) may be revoked by Fairtix at any time. Fairtix' licensors are the intended third party beneficiaries of the agreement to which these User Terms apply and have the express right to rely upon and directly enforce the terms set forth herein.</p>\n <p><strong>Article 9 -\tSuspension and Termination</strong></p>\n <p>9.1.\tFairtix is entitled to (temporarily) suspend or limit the use thereof, and/or terminate, with immediate effect and without any notice, in case Customer does not comply with these User Terms or any reasonable instructions from Fairtix with respect to Customer’s use of the Ticketshop and without giving rise to any right on compensation.</p>\n <p>9.2.\tThe Services Agreement commences when the order is placed in the Ticketshop (which is independent of the moment at which the order is accepted by Organiser) and shall terminate once the intermediary services are provided by Fairtix, unless the Services Agreement is terminated prior to that moment by either party in accordance with applicable law.</p>\n <p><strong>Article 10 -\tApplicable Law and Jurisdiction</strong></p>\n <p>10.1.\tThese User Terms, the Services Agreement and any other agreements concluded with Fairtix, any dispute and any non-contractual obligations arising out of or in connection with it shall be governed by Dutch law, without regard to its choice of law rules. </p>\n <p>10.2.\tAll disputes that may arise in connection with the agreement with Fairtix or User Terms shall be submitted to the competent court of the Central Netherlands, location Utrecht, the Netherlands, unless the User informs Fairtix within one (1) month after Fairtix has invoked this clause, that is prefers settlement of the dispute by the competent court according to the applicable law.</p>\n <p><strong>Article 11 -\tAdditional Terms</strong></p>\n <p>11.1.\tFairtix may assign its rights and obligations under these User Terms. These User Terms will inure to the benefit of Fairtix’ successors and assigns. Customer may not assign or otherwise transfer by operation of law or otherwise this Agreement or any rights or obligations herein.</p>\n <p>11.2.\tFairtix may change these User Terms from time to time and will post the changed terms and conditions on the website. The Customer is advised to regularly check whether the User Terms have changed.</p>\n </div>\n</template>\n\n<script>\n/* eslint @intlify/vue-i18n/no-raw-text: 'off' */\nexport default {\n data() {\n return {\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsNL.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditionsNL.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermsConditionsNL.vue?vue&type=template&id=27bf5c20\"\nimport script from \"./TermsConditionsNL.vue?vue&type=script&lang=js\"\nexport * from \"./TermsConditionsNL.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <b-container>\n <b-row>\n <b-col>\n <component :is=\"'TermsConditions' + (language ? language.toUpperCase() : 'EN')\"></component>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\n/* eslint @intlify/vue-i18n/no-raw-text: 'off' */\nimport TermsConditionsEN from \"@/pages/TermsConditionsEN\";\nimport TermsConditionsDE from \"@/pages/TermsConditionsDE\";\nimport TermsConditionsES from \"@/pages/TermsConditionsES\";\nimport TermsConditionsNL from \"@/pages/TermsConditionsNL\";\nimport {mapState} from \"vuex\";\n\nexport default {\n data() {\n return {\n }\n },\n computed: {\n ...mapState(['language'])\n },\n components: {\n TermsConditionsEN,\n TermsConditionsDE,\n TermsConditionsES,\n TermsConditionsNL,\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TermsConditions.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TermsConditions.vue?vue&type=template&id=ce576b6a\"\nimport script from \"./TermsConditions.vue?vue&type=script&lang=js\"\nexport * from \"./TermsConditions.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',[_c('b-row',[_c('b-col',{staticClass:\"content-block text-center pr-5 pl-5\"},[_c('div',{staticClass:\"pt-5 pb-5\"},[_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"font-scale\":\"6\",\"variant\":\"success\"}})],1),_c('h1',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('ticket_changed')))]),_c('p',{staticClass:\"subtitle m-5\"},[_vm._v(_vm._s(_vm.$t('ticket_changed_text')))])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container>\n <b-row>\n <b-col class=\"content-block text-center pr-5 pl-5\">\n <div class=\"pt-5 pb-5\">\n <b-icon icon=\"check-circle-fill\" font-scale=\"6\" variant=\"success\"></b-icon>\n </div>\n <h1 class=\"title\">{{ $t('ticket_changed') }}</h1>\n <p class=\"subtitle m-5\">{{ $t('ticket_changed_text') }}</p>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nexport default {\n created(){\n if(document.body.contains(document.getElementById('company-header'))){\n document.getElementById(\"company-header\").scrollIntoView();\n }\n document.title = this.$t('order_thank_you_title')\n }\n}\n</script>\n<style scoped>\nh1.title {\n font-size: 2em;\n}\n\np.subtitle {\n font-size: 1.4em;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketChanged.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketChanged.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TicketChanged.vue?vue&type=template&id=d40a7304&scoped=true\"\nimport script from \"./TicketChanged.vue?vue&type=script&lang=js\"\nexport * from \"./TicketChanged.vue?vue&type=script&lang=js\"\nimport style0 from \"./TicketChanged.vue?vue&type=style&index=0&id=d40a7304&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d40a7304\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"mb-3\"},[_c('b-badge',{staticClass:\"mr-1\",attrs:{\"variant\":\"success\"}},[_vm._v(\"SOLD\")]),_c('b-badge',{staticClass:\"mr-1\",attrs:{\"variant\":\"warning\"}},[_vm._v(\"IN REDIS\")]),_c('b-badge',{attrs:{\"variant\":\"info\"}},[_vm._v(\"POS STOCK\")])],1),_vm._l((_vm.products),function(product){return _c('b-row',{key:product.id},[_c('b-col',[_c('p',[_vm._v(_vm._s(product.product))])]),_c('b-col',[_c('b-progress',{staticClass:\"mt-2\",attrs:{\"max\":product.product_stock,\"show-value\":\"\"}},[_c('b-progress-bar',{attrs:{\"value\":product.pos_stock,\"variant\":\"info\"}})],1)],1),_c('b-col',[_c('b-progress',[_c('b-progress-bar',{attrs:{\"value\":product.sold,\"variant\":\"success\"}}),_c('b-progress-bar',{attrs:{\"value\":product.in_redis,\"variant\":\"warning\"}})],1)],1)],1)}),_c('b-table',{attrs:{\"items\":_vm.products,\"fields\":[{key: 'pos', label: _vm.$t('pos_stock_pos')},{key: 'product', label: _vm.$t('pos_stock_product')},{key: 'product_stock', label: _vm.$t('pos_stock_product_stock')},{key: 'in_redis', label: _vm.$t('pos_stock_in_redis')},{key: 'pos_stock', label: _vm.$t('pos_stock_pos_stock')},{key: 'sold', label: _vm.$t('pos_stock_sold')}]}})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <div class=\"mb-3\">\n <b-badge variant=\"success\" class=\"mr-1\">SOLD</b-badge>\n <b-badge variant=\"warning\" class=\"mr-1\">IN REDIS</b-badge>\n <b-badge variant=\"info\">POS STOCK</b-badge>\n </div>\n <b-row v-for=\"product in products\" :key=\"product.id\">\n <b-col>\n <p>{{ product.product }}</p>\n </b-col>\n <b-col>\n <b-progress class=\"mt-2\" :max=\"product.product_stock\" show-value>\n <b-progress-bar :value=\"product.pos_stock\" variant=\"info\"></b-progress-bar>\n </b-progress>\n </b-col>\n <b-col>\n <b-progress>\n <b-progress-bar :value=\"product.sold\" variant=\"success\"></b-progress-bar>\n <b-progress-bar :value=\"product.in_redis\" variant=\"warning\"></b-progress-bar>\n </b-progress>\n </b-col>\n </b-row>\n <b-table :items=\"products\" :fields=\"[{key: 'pos', label: $t('pos_stock_pos')},{key: 'product', label: $t('pos_stock_product')},{key: 'product_stock', label: $t('pos_stock_product_stock')},{key: 'in_redis', label: $t('pos_stock_in_redis')},{key: 'pos_stock', label: $t('pos_stock_pos_stock')},{key: 'sold', label: $t('pos_stock_sold')}]\"></b-table>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport {mapState} from 'vuex'\n\nexport default {\n name: 'Login',\n data() {\n return {\n products: []\n }\n },\n computed: {\n ...mapState(['user'])\n },\n created() {\n if(this.$store.state.user) {\n if(!this.$can('stock_report_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.report().getStockReport().then((products) => {\n this.products = products\n })\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('stock_report_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n },\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StockReport.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StockReport.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./StockReport.vue?vue&type=template&id=d25740d8&scoped=true\"\nimport script from \"./StockReport.vue?vue&type=script&lang=js\"\nexport * from \"./StockReport.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d25740d8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_session_configure_products\")))]),_c('div',{staticClass:\"content-container\"},[_vm._l((_vm.products),function(product,index){return _c('div',{key:index},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"4\"}}),_c('b-col',{attrs:{\"cols\":\"8\"}},[_c('label',[_vm._v(_vm._s(_vm.$t('sessions')))]),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"11\"}},[_c('v-select',{attrs:{\"options\":product.sessionsList,\"label\":\"name\"},model:{value:(product.session),callback:function ($$v) {_vm.$set(product, \"session\", $$v)},expression:\"product.session\"}})],1),_c('b-col',{attrs:{\"cols\":\"1\"}},[_c('b-button',{staticClass:\"float-right\",attrs:{\"disabled\":_vm.loading,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.addSession(index)}}},[_c('b-icon',{attrs:{\"icon\":\"plus\"}})],1)],1)],1)],1)],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('h4',[_vm._v(_vm._s(product.product_group.type !== 'default' ? product.product_group.name + ' - ' : '')+_vm._s(product.name))])]),_c('b-col',{attrs:{\"cols\":\"8\"}},[_c('b-table',{attrs:{\"items\":product.sessions,\"fields\":['name', 'actions'],\"thead-class\":\"d-none\",\"borderless\":\"\",\"bordered\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.name)+\" ( \"+_vm._s(_vm.formatSessionDate(item.starts_at, item.ends_at))+\") \")]}},{key:\"cell(actions)\",fn:function({item}){return [_c('div',{staticClass:\"d-flex justify-content-end\"},[_c('b-btn',{attrs:{\"disabled\":_vm.loading,\"pill\":\"\",\"variant\":\"outline-secondary\"},on:{\"click\":function($event){return _vm.handleDeleteClick(index, item)}}},[_c('b-icon',{attrs:{\"icon\":\"x\"}})],1)],1)]}}],null,true)})],1)],1),_c('hr')],1)}),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-button',{staticClass:\"mb-3 ml-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationScannersConfigure', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t('next')))]),_c('b-button',{staticClass:\"mb-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationManage', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t('previous')))])],1)],1)],2)])])],1),_c('b-modal',{attrs:{\"title\":_vm.$t('scan_operation_session_modal_delete'),\"id\":\"delete-session\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.removeSession()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\">\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t(\"scan_operation_session_configure_products\") }}</div>\n <div class=\"content-container\">\n <div v-for=\"(product, index) in products\" :key=\"index\">\n <b-row>\n <b-col cols=\"4\"></b-col>\n <b-col cols=\"8\">\n <label>{{$t('sessions')}}</label>\n <b-row>\n <b-col cols=\"11\">\n <v-select v-model=\"product.session\" :options=\"product.sessionsList\" label=\"name\"></v-select>\n </b-col>\n <b-col cols=\"1\">\n <b-button :disabled=\"loading\" @click=\"addSession(index)\" variant=\"primary\" class=\"float-right\"><b-icon icon=\"plus\"></b-icon></b-button>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n <b-row class=\"mt-3\">\n <b-col cols=\"4\">\n <h4>{{product.product_group.type !== 'default' ? product.product_group.name + ' - ' : ''}}{{ product.name }}</h4>\n </b-col>\n <b-col cols=\"8\">\n <b-table :items=\"product.sessions\" :fields=\"['name', 'actions']\" thead-class=\"d-none\" borderless bordered>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.name }} ( {{ formatSessionDate(item.starts_at, item.ends_at) }})\n </template>\n <template v-slot:cell(actions)=\"{item}\" >\n <div class=\"d-flex justify-content-end\" >\n <b-btn :disabled=\"loading\" @click=\"handleDeleteClick(index, item)\" pill variant=\"outline-secondary\"><b-icon icon=\"x\"></b-icon></b-btn>\n </div>\n </template>\n </b-table>\n </b-col>\n </b-row>\n <hr>\n </div>\n\n <b-row>\n <b-col cols=\"12\">\n <b-button @click=\"$router.push({name: 'ScanOperationScannersConfigure', params: {id: $route.params.id}})\" class=\"mb-3 ml-3 btn-new float-right\">{{ $t('next') }}</b-button>\n <b-button @click=\"$router.push({name: 'ScanOperationManage', params: {id: $route.params.id}})\" class=\"mb-3 btn-new float-right\">{{ $t('previous') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n </b-row>\n <b-modal :title=\"$t('scan_operation_session_modal_delete')\" id=\"delete-session\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"removeSession()\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport moment from 'moment';\n\nexport default {\n data() {\n return {\n scanOperation: null,\n products: [],\n sessions: [],\n loading: false,\n\n selectedIndex: null,\n selectedItem: null,\n };\n },\n methods: {\n addSession(index) {\n if(!this.products[index].session) {\n return;\n }\n this.loading = true;\n api.scanOperationSession().saveProduct(this.products[index].session.id, this.products[index].id).then(() => {\n this.products[index].sessions.push(this.products[index].session);\n this.products[index].sessionsList = this.products[index].sessionsList.filter(s => s.id !== this.products[index].session.id)\n this.products[index].session = null;\n this.loading = false;\n this.$store.commit('success', 'scan_operation_session_product_saved')\n }).catch(() => {\n this.loading = false;\n })\n },\n handleDeleteClick(index, item) {\n this.selectedIndex = index;\n this.selectedItem = item;\n this.$bvModal.show('delete-session')\n },\n removeSession() {\n const index = this.selectedIndex;\n const item = this.selectedItem;\n\n this.loading = true;\n api.scanOperationSession().removeProduct(item.id, this.products[index].id).then(() => {\n this.$bvModal.hide('delete-session')\n this.loading = false;\n this.products[index].sessions = this.products[index].sessions.filter(session => session.id !== item.id)\n this.products[index].sessionsList.push(this.selectedItem);\n this.$store.commit('success', 'scan_operation_session_product_deleted')\n this.selectedIndex = null;\n this.selectedItem = null;\n }).catch(() => {\n this.loading = false;\n })\n },\n formatSessionDate(start, end) {\n return moment(start).format('DD-MM-YYYY HH:mm') + ' - ' + moment(end).format('DD-MM-YYYY HH:mm');\n }\n },\n created() {\n document.title = this.$t('backend_title_scan_operation_product_configuration')\n if(this.$store.state.user) {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.scanOperation().find(this.$route.params.id).then((response)=>{\n this.scanOperation = response;\n\n api.product().get(response.event_id).then(products => {\n api.scanOperationSession().getSessionsProducts(this.$route.params.id).then((response) => {\n this.sessions = response;\n this.products = products.map(product => {\n product.session = null;\n product.sessions = response.filter(session => {\n return session.products.filter(prod => prod.id === product.id).length\n });\n product.sessionsList = response.filter(session => {\n return !product.sessions.find(s => s.id === session.id)\n });\n return product;\n });\n })\n })\n });\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n};\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationProductsConfigure.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationProductsConfigure.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScanOperationProductsConfigure.vue?vue&type=template&id=5e6673a0\"\nimport script from \"./ScanOperationProductsConfigure.vue?vue&type=script&lang=js\"\nexport * from \"./ScanOperationProductsConfigure.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"scan-operation-page\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_session_configure_scanners\")))]),_c('div',{staticClass:\"content-container\"},[_vm._l((_vm.scanners),function(scanner,index){return _c('div',{key:index},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"4\"}}),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('label',[_vm._v(_vm._s(_vm.$t('sessions')))]),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('v-select',{attrs:{\"options\":_vm.sessions,\"label\":\"name\"},model:{value:(scanner.session),callback:function ($$v) {_vm.$set(scanner, \"session\", $$v)},expression:\"scanner.session\"}})],1)],1)],1),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('label',[_vm._v(_vm._s(_vm.$t('scan_operation_products')))]),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"10\"}},[_c('v-select',{attrs:{\"options\":scanner.session ? scanner.session.products : [],\"label\":\"name\"},scopedSlots:_vm._u([{key:\"option\",fn:function(option){return [_vm._v(\" \"+_vm._s(option.product_group && option.product_group.type !== 'default' ? option.product_group.name + ' - ' : '')+_vm._s(option.name)+\" \")]}}],null,true),model:{value:(scanner.product),callback:function ($$v) {_vm.$set(scanner, \"product\", $$v)},expression:\"scanner.product\"}})],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-button',{staticClass:\"float-right\",attrs:{\"disabled\":_vm.loading || !(scanner.product && scanner.session),\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.addSession(index)}}},[_c('b-icon',{attrs:{\"icon\":\"plus\"}})],1)],1)],1)],1)],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('h4',[_vm._v(_vm._s(scanner.name))])]),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('b-table',{attrs:{\"items\":scanner.sessionProducts,\"fields\":['name'],\"thead-class\":\"d-none\",\"bordered\":\"\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.session.name)+\" ( \"+_vm._s(_vm.formatSessionDate(item.session.starts_at, item.session.ends_at))+\") \")]}}],null,true)})],1),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('b-table',{attrs:{\"items\":scanner.sessionProducts,\"fields\":['name', 'actions'],\"thead-class\":\"d-none\",\"bordered\":\"\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.product && item.product.product_group && item.product.product_group.type !== 'default' ? item.product.product_group.name + ' - ' : '')+\" \"+_vm._s(item.product ? item.product.name : '')+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [_c('div',{staticClass:\"d-flex justify-content-end\"},[_c('b-btn',{attrs:{\"disabled\":_vm.loading,\"pill\":\"\",\"variant\":\"outline-secondary\"},on:{\"click\":function($event){return _vm.handleDeleteClick(index, item)}}},[_c('b-icon',{attrs:{\"icon\":\"x\"}})],1)],1)]}}],null,true)})],1)],1),_c('hr')],1)}),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-button',{staticClass:\"mb-3 ml-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationSummary', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t('next')))]),_c('b-button',{staticClass:\"mb-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationProductsConfigure', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t('previous')))])],1)],1)],2)])])],1),_c('b-modal',{attrs:{\"title\":_vm.$t('scan_operation_session_modal_delete'),\"id\":\"delete-session\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":function($event){return _vm.removeSession()}}},[_vm._v(_vm._s(_vm.$t('delete')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"scan-operation-page\">\n <b-row>\n <b-col cols=\"12\">\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t(\"scan_operation_session_configure_scanners\") }}</div>\n <div class=\"content-container\">\n <div v-for=\"(scanner, index) in scanners\" :key=\"index\">\n <b-row>\n <b-col cols=\"4\"></b-col>\n <b-col cols=\"4\">\n <label>{{$t('sessions')}}</label>\n <b-row>\n <b-col cols=\"12\">\n <v-select v-model=\"scanner.session\" :options=\"sessions\" label=\"name\"></v-select>\n </b-col>\n </b-row>\n </b-col>\n <b-col cols=\"4\">\n <label>{{$t('scan_operation_products')}}</label>\n <b-row>\n <b-col cols=\"10\">\n <v-select v-model=\"scanner.product\" :options=\"scanner.session ? scanner.session.products : []\" label=\"name\">\n <template v-slot:option=\"option\">\n {{ option.product_group && option.product_group.type !== 'default' ? option.product_group.name + ' - ' : '' }}{{option.name}}\n </template>\n </v-select>\n </b-col>\n <b-col cols=\"2\">\n <b-button :disabled=\"loading || !(scanner.product && scanner.session)\" @click=\"addSession(index)\" variant=\"primary\" class=\"float-right\"><b-icon icon=\"plus\"></b-icon></b-button>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n <b-row class=\"mt-3\">\n <b-col cols=\"4\">\n <h4>{{ scanner.name }}</h4>\n </b-col>\n <b-col cols=\"4\">\n <b-table :items=\"scanner.sessionProducts\" :fields=\"['name']\" thead-class=\"d-none\" bordered borderless>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.session.name }} ( {{ formatSessionDate(item.session.starts_at, item.session.ends_at) }})\n </template>\n </b-table>\n </b-col>\n <b-col cols=\"4\">\n <b-table :items=\"scanner.sessionProducts\" :fields=\"['name', 'actions']\" thead-class=\"d-none\" bordered borderless>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.product && item.product.product_group && item.product.product_group.type !== 'default' ? item.product.product_group.name + ' - ' : '' }}\n {{ item.product ? item.product.name : '' }}\n </template>\n <template v-slot:cell(actions)=\"{item}\" >\n <div class=\"d-flex justify-content-end\" >\n <b-btn :disabled=\"loading\" @click=\"handleDeleteClick(index, item)\" pill variant=\"outline-secondary\"><b-icon icon=\"x\"></b-icon></b-btn>\n </div>\n </template>\n </b-table>\n </b-col>\n </b-row>\n <hr>\n </div>\n\n <b-row>\n <b-col cols=\"12\">\n <b-button @click=\"$router.push({name: 'ScanOperationSummary', params: {id: $route.params.id}})\" class=\"mb-3 ml-3 btn-new float-right\">{{ $t('next') }}</b-button>\n <b-button @click=\"$router.push({name: 'ScanOperationProductsConfigure', params: {id: $route.params.id}})\" class=\"mb-3 btn-new float-right\">{{ $t('previous') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n </b-row>\n <b-modal :title=\"$t('scan_operation_session_modal_delete')\" id=\"delete-session\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"removeSession()\" variant=\"danger\">{{ $t('delete') }}</b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport moment from 'moment';\n\nexport default {\n data() {\n return {\n scanOperation: null,\n products: [],\n sessions: [],\n scanners: [],\n loading: false,\n\n selectedIndex: null,\n selectedItem: null,\n };\n },\n methods: {\n addSession(index) {\n const isDuplicate = this.scanners[index].sessionProducts.filter(sessionProduct => {\n return (sessionProduct.session.id === this.scanners[index].session.id && sessionProduct.product.id === this.scanners[index].product.id)\n }).length\n if(isDuplicate) {\n this.$store.commit('errors', ['scan_operation_session_configure_scanners_duplicated'])\n return;\n }\n this.loading = true;\n api.scanOperationPrivileges().create({\n scanner_id: this.scanners[index].id,\n session_id: this.scanners[index].session.id,\n product_id: this.scanners[index].product.id,\n }).then(() => {\n this.scanners[index].sessionProducts.push({\n session: this.scanners[index].session,\n product: this.scanners[index].product,\n })\n\n this.scanners[index].session = null;\n this.scanners[index].product = null;\n this.$store.commit('success', 'scan_operation_session_product_saved')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n handleDeleteClick(index, item) {\n this.selectedIndex = index;\n this.selectedItem = item;\n this.$bvModal.show('delete-session')\n },\n removeSession() {\n const index = this.selectedIndex;\n const item = this.selectedItem;\n\n this.loading = true;\n api.scanOperationPrivileges().delete({\n scanner_id: this.scanners[index].id,\n session_id: item.session.id,\n product_id: item.product.id,\n }).then(() => {\n this.$bvModal.hide('delete-session')\n this.loading = false;\n this.scanners[index].sessionProducts = this.scanners[index].sessionProducts.filter(sessionProduct => {\n return !(sessionProduct.session.id === item.session.id && sessionProduct.product.id === item.product.id);\n })\n this.$store.commit('success', 'scan_operation_session_product_deleted')\n this.selectedIndex = null;\n this.selectedItem = null;\n }).catch((error) => {\n console.log(error, 'error')\n this.loading = false;\n })\n },\n formatSessionDate(start, end) {\n return moment(start).format('DD-MM-YYYY HH:mm') + ' - ' + moment(end).format('DD-MM-YYYY HH:mm');\n }\n },\n mounted() {\n api.scanOperation().find(this.$route.params.id).then((response)=>{\n this.scanOperation = response;\n this.scanners = this.scanOperation.scanners;\n this.scanners = this.scanners.map(scanner => {\n const tmpScanner = Object.assign({session: null, product: null, sessionProducts: []}, scanner);\n scanner.privileges.forEach(privelege => {\n tmpScanner.sessionProducts.push({\n product: privelege.product,\n session: privelege.session,\n })\n })\n return tmpScanner;\n });\n this.sessions = response.sessions;\n });\n },\n created(){\n document.title = this.$t('backend_title_scan_operation_scanner_configuration')\n if(this.$store.state.user) {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n};\n</script>\n\n<style scoped>\n.scan-operation-page tr,.scan-operation-page td {\n height: 61px;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationScannersConfigure.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationScannersConfigure.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScanOperationScannersConfigure.vue?vue&type=template&id=24e2bfe6&scoped=true\"\nimport script from \"./ScanOperationScannersConfigure.vue?vue&type=script&lang=js\"\nexport * from \"./ScanOperationScannersConfigure.vue?vue&type=script&lang=js\"\nimport style0 from \"./ScanOperationScannersConfigure.vue?vue&type=style&index=0&id=24e2bfe6&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"24e2bfe6\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-row',[(!_vm.scanOperation)?_c('b-spinner'):_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_for\", {event_name: _vm.scanOperation.event.name})))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',[_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_event\", {event_name: _vm.scanOperation.event.name})))]),_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_outgoing_scans\"))+\" \"+_vm._s(_vm.$t(\"scan_operation_overview_outgoing_\" + (_vm.scanOperation.outgoing_enabled ? 'enabled' : 'disabled'))))]),_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_outgoing_test_mode\"))+\" \"+_vm._s(_vm.$t(\"scan_operation_overview_outgoing_\" + (_vm.scanOperation.status === 'test' ? 'true' : 'false'))))])])],1),_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('label',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_scanners\")))]),_c('b-button',{staticClass:\"float-right text-white\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationManage', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_edit\")))]),_c('b-table',{staticClass:\"mt-2\",attrs:{\"items\":_vm.scanOperation.scanners,\"fields\":['name'],\"thead-class\":\"d-none\"}})],1),_c('b-col',{attrs:{\"cols\":\"2\"}}),_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('label',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_sessions\")))]),_c('b-button',{staticClass:\"float-right text-white\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationManage', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_edit\")))]),_c('b-table',{staticClass:\"mt-2\",attrs:{\"items\":_vm.scanOperation.sessions,\"fields\":['name', 'dates'],\"thead-class\":\"d-none\"},scopedSlots:_vm._u([{key:\"cell(dates)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.formatSessionDate(item.starts_at, item.ends_at))+\" \")]}}])})],1)],1),_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('label',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_product_configuration\")))]),_c('b-button',{staticClass:\"float-right text-white\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationProductsConfigure', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_edit\")))]),_vm._l((_vm.products),function(product){return _c('div',{key:product.id},[_c('label',{staticClass:\"d-block\"},[_vm._v(_vm._s(product.product_group && product.product_group.type !== 'default' ? product.product_group.name + ' - ' : '')+_vm._s(product.name))]),_c('hr'),_c('b-table',{staticClass:\"mt-2\",attrs:{\"items\":product.sessions,\"fields\":['name'],\"thead-class\":\"d-none\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.name)+\" (\"+_vm._s(_vm.formatSessionDate(item.starts_at, item.ends_at))+\") \")]}}],null,true)}),_c('hr')],1)})],2)],1),_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('label',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_scanner_configuration\")))]),_c('b-button',{staticClass:\"float-right text-white\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationScannersConfigure', params: {id: _vm.$route.params.id}})}}},[_vm._v(_vm._s(_vm.$t(\"scan_operation_overview_edit\")))]),_c('b-table',{staticClass:\"mt-2\",attrs:{\"items\":_vm.scanOperation.scanners,\"fields\":['name', 'sessions', 'products'],\"thead-class\":\"d-none\",\"borderless\":\"\"},scopedSlots:_vm._u([{key:\"cell(sessions)\",fn:function({item}){return _vm._l((item.privileges),function(pr){return _c('label',{key:pr.id,staticClass:\"d-block\"},[_vm._v(\" \"+_vm._s(pr.session.name)+\" (\"+_vm._s(_vm.formatSessionDate(pr.session.starts_at, pr.session.ends_at))+\") \")])})}},{key:\"cell(products)\",fn:function({item}){return _vm._l((item.privileges),function(pr){return _c('label',{key:pr.id,staticClass:\"d-block\"},[_vm._v(\" \"+_vm._s(pr.product.product_group && pr.product.product_group.type !== 'default' ? pr.product.product_group.name + ' - ' : '')+_vm._s(pr.product.name)+\" \")])})}}])})],1)],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-button',{staticClass:\"mb-3 ml-3 btn-new float-right\",on:{\"click\":function($event){return _vm.$router.push({name: 'ScanOperationOverview'})}}},[_vm._v(_vm._s(_vm.$t('finish')))])],1)],1)],1)])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-row>\n <b-spinner v-if=\"!scanOperation\"></b-spinner>\n <b-col v-else cols=\"12\">\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t(\"scan_operation_overview_for\", {event_name: scanOperation.event.name}) }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col>\n <label class=\"d-block font-weight-bold\">{{ $t(\"scan_operation_overview_event\", {event_name: scanOperation.event.name}) }}</label>\n <label class=\"d-block font-weight-bold\">{{ $t(\"scan_operation_overview_outgoing_scans\") }} {{ $t(\"scan_operation_overview_outgoing_\" + (scanOperation.outgoing_enabled ? 'enabled' : 'disabled')) }}</label>\n <label class=\"d-block font-weight-bold\">{{ $t(\"scan_operation_overview_outgoing_test_mode\") }} {{ $t(\"scan_operation_overview_outgoing_\" + (scanOperation.status === 'test' ? 'true' : 'false')) }}</label>\n </b-col>\n </b-row>\n <b-row class=\"mt-5\">\n <b-col cols=\"5\">\n <label class=\"font-weight-bold\">{{ $t(\"scan_operation_overview_scanners\") }}</label>\n <b-button @click=\"$router.push({name: 'ScanOperationManage', params: {id: $route.params.id}})\" class=\"float-right text-white\" variant=\"primary\">{{ $t(\"scan_operation_overview_edit\") }}</b-button>\n <b-table class=\"mt-2\" :items=\"scanOperation.scanners\" :fields=\"['name']\" thead-class=\"d-none\">\n </b-table>\n </b-col>\n <b-col cols=\"2\"></b-col>\n <b-col cols=\"5\">\n <label class=\"font-weight-bold\">{{ $t(\"scan_operation_overview_sessions\") }}</label>\n <b-button @click=\"$router.push({name: 'ScanOperationManage', params: {id: $route.params.id}})\" class=\"float-right text-white\" variant=\"primary\">{{ $t(\"scan_operation_overview_edit\") }}</b-button>\n\n <b-table class=\"mt-2\" :items=\"scanOperation.sessions\" :fields=\"['name', 'dates']\" thead-class=\"d-none\">\n <template v-slot:cell(dates)=\"{item}\" >\n {{ formatSessionDate(item.starts_at, item.ends_at) }}\n </template>\n </b-table>\n </b-col>\n </b-row>\n <b-row class=\"mt-5\">\n <b-col cols=\"5\">\n <label class=\"font-weight-bold\">{{ $t(\"scan_operation_overview_product_configuration\") }}</label>\n <b-button @click=\"$router.push({name: 'ScanOperationProductsConfigure', params: {id: $route.params.id}})\" class=\"float-right text-white\" variant=\"primary\">{{ $t(\"scan_operation_overview_edit\") }}</b-button>\n <div v-for=\"product in products\" :key=\"product.id\">\n <label class=\"d-block\">{{ product.product_group && product.product_group.type !== 'default' ? product.product_group.name + ' - ' : '' }}{{ product.name }}</label>\n <hr>\n <b-table class=\"mt-2\" :items=\"product.sessions\" :fields=\"['name']\" thead-class=\"d-none\" borderless>\n <template v-slot:cell(name)=\"{item}\" >\n {{ item.name }} ({{ formatSessionDate(item.starts_at, item.ends_at) }})\n </template>\n </b-table>\n <hr>\n </div>\n </b-col>\n </b-row>\n <b-row class=\"mt-5\">\n <b-col cols=\"12\">\n <label class=\"font-weight-bold\">{{ $t(\"scan_operation_overview_scanner_configuration\") }}</label>\n <b-button @click=\"$router.push({name: 'ScanOperationScannersConfigure', params: {id: $route.params.id}})\" class=\"float-right text-white\" variant=\"primary\">{{ $t(\"scan_operation_overview_edit\") }}</b-button>\n <b-table class=\"mt-2\" :items=\"scanOperation.scanners\" :fields=\"['name', 'sessions', 'products']\" thead-class=\"d-none\" borderless>\n <template v-slot:cell(sessions)=\"{item}\" >\n <label class=\"d-block\" v-for=\"pr in item.privileges\" :key=\"pr.id\">\n {{ pr.session.name }} ({{ formatSessionDate(pr.session.starts_at, pr.session.ends_at) }})\n </label>\n </template>\n <template v-slot:cell(products)=\"{item}\" >\n <label class=\"d-block\" v-for=\"pr in item.privileges\" :key=\"pr.id\">\n {{ pr.product.product_group && pr.product.product_group.type !== 'default' ? pr.product.product_group.name + ' - ' : '' }}{{ pr.product.name }}\n </label>\n </template>\n </b-table>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col cols=\"12\">\n <b-button @click=\"$router.push({name: 'ScanOperationOverview'})\" class=\"mb-3 ml-3 btn-new float-right\">{{ $t('finish') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </b-col>\n </b-row>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport moment from \"moment\";\n\nexport default {\n name: \"ScanOperationSummary\",\n data() {\n return {\n scanOperation: null,\n products: []\n }\n },\n mounted() {\n api.scanOperation().find(this.$route.params.id).then((response)=> {\n this.scanOperation = response;\n\n api.product().get(response.event_id).then(products => {\n api.scanOperationSession().getSessionsProducts(this.$route.params.id).then((response) => {\n this.products = products.map(product => {\n product.session = null;\n product.sessions = response.filter(session => {\n return session.products.filter(prod => prod.id === product.id).length\n });\n return product;\n });\n })\n })\n });\n },\n methods: {\n formatSessionDate(start, end) {\n return moment(start).format('DD-MM-YYYY HH:mm') + ' - ' + moment(end).format('DD-MM-YYYY HH:mm');\n }\n },\n created(){\n document.title = this.$t('backend_title_scan_operation_summary')\n if(this.$store.state.user) {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('scan_operation_edit') && !this.$can('scan_operation_create')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationSummary.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScanOperationSummary.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScanOperationSummary.vue?vue&type=template&id=65224de0&scoped=true\"\nimport script from \"./ScanOperationSummary.vue?vue&type=script&lang=js\"\nexport * from \"./ScanOperationSummary.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"65224de0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"login\"}},[_c('b-row',{attrs:{\"align-v\":\"center\"}},[_c('div',{attrs:{\"id\":\"login-wrap\"}},[_c('div',{staticClass:\"p-3\"},[_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/logo-light.png')}})],1),_c('b-alert',{attrs:{\"variant\":\"danger\",\"show\":_vm.error}},[_vm._v(\" \"+_vm._s(_vm.$t('login_error'))+\" \")]),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_email'),\"type\":\"email\"},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_password'),\"type\":\"password\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.login()}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('b-form-group',[(!_vm.loading)?_c('b-button',{staticClass:\"float-right\",attrs:{\"block\":\"\",\"variant\":\"primary\"},on:{\"click\":_vm.login}},[_vm._v(_vm._s(_vm.$t('login_button')))]):_c('b-spinner')],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class BoxOfficeUser {\n\n constructor(axios) {\n this.axios = axios\n }\n\n login(email, password) {\n return this.axios.post('/box-office/login', {email, password})\n }\n\n me() {\n return this.axios.get('/box-office/user')\n }\n}\n","export default class BoxOfficeEvent {\n\n constructor(axios) {\n this.axios = axios\n }\n\n all() {\n return this.axios.get('/box-office/events')\n }\n\n get(id) {\n return this.axios.get('/box-office/event/' + id)\n }\n\n boxOffices(id) {\n return this.axios.get('/box-office/event/' + id + '/box-office')\n }\n\n boxOffice(eventId, slug) {\n return this.axios.get('/box-office/event/' + eventId + '/box-office/' + slug)\n }\n}\n","export default class BoxOfficePlaceOrder {\n\n constructor(axios) {\n this.axios = axios\n }\n\n saveSettings(slug, data) {\n return this.axios.post('/box-office/' + slug + '/place-order/settings', {\n settings: data\n })\n }\n\n getSettings(slug) {\n return this.axios.get('/box-office/' + slug + '/place-order/settings')\n }\n\n save(slug, data) {\n return this.axios.post('/box-office/' + slug + '/place-order', data)\n }\n\n markOrderPaid(slug, order) {\n return this.axios.post('/box-office/' + slug + '/place-order/' + order + '/mark-paid')\n }\n\n getOrders(slug, page){\n return this.axios.get('/box-office/' + slug + '/order-history/orders?page=' + page)\n }\n}\n","import axios from \"axios\";\nimport store from \"@/store\";\nimport BoxOfficeUser from \"@/api/boxOfficeUser\";\nimport BoxOfficeEvent from \"@/api/boxOfficeEvent\";\nimport BoxOfficePlaceOrder from \"@/api/boxOfficePlaceOrder\";\n\nconst HttpClient = axios.create({});\n\nif (window.location.host === 'localhost:8080') {\n // Local development environment\n HttpClient.defaults.baseURL = 'http://api.fairtix.local'\n} else if (window.location.host === 'frontend.staging.fairtix.io') {\n // Test environment Staging (staging-ft)\n HttpClient.defaults.baseURL = 'https://api.staging.fairtix.io'\n} else {\n HttpClient.defaults.baseURL = 'https://api.fairtix.io'\n}\n\nHttpClient.interceptors.request.use((config) => {\n let token = localStorage.getItem('box_office_token');\n if (token) {\n config.headers['Authorization'] = 'Bearer ' + token\n }\n return config\n}, (error) => {\n // Do something with request error\n document.location = '/'\n return Promise.reject(error)\n})\n\nHttpClient.interceptors.response.use((response) => {\n return response.data\n}, (error) => {\n // Do something with response error\n if (error.response.status === 401) {\n store.commit('boxOfficeLogout')\n }\n if (error.response.status === 400) {\n store.commit('errors', error.response.data)\n }\n return Promise.reject(error)\n})\n\nconst user = () => {\n return new BoxOfficeUser(HttpClient);\n}\n\nconst event = () => {\n return new BoxOfficeEvent(HttpClient);\n}\n\nconst boxOfficePlaceOrder = () => {\n return new BoxOfficePlaceOrder(HttpClient);\n}\n\nexport default {\n user,\n event,\n boxOfficePlaceOrder\n}\n","<template>\n <div id=\"login\">\n <b-row align-v=\"center\">\n <div id=\"login-wrap\">\n <div class=\"p-3\">\n <b-img class=\"logo\" :src=\"require('../assets/logo-light.png')\"></b-img>\n </div>\n <b-alert variant=\"danger\" :show=\"error\">\n {{ $t('login_error') }}\n </b-alert>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_email')\" type=\"email\" v-model=\"email\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_password')\" type=\"password\" @keyup.enter=\"login()\" v-model=\"password\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-button block class=\"float-right\" variant=\"primary\" @click=\"login\" v-if=\"!loading\">{{ $t('login_button') }}</b-button>\n <b-spinner v-else></b-spinner>\n </b-form-group>\n </div>\n </b-row>\n </div>\n</template>\n<script>\nimport api from '../api/boxOfficeApi'\nimport {mapState, mapActions} from 'vuex'\n\nexport default {\n name: 'Login',\n data() {\n return {\n email: '',\n password: '',\n loading: false,\n error: false\n }\n },\n computed: {\n ...mapState(['boxOfficeUser'])\n },\n created() {\n document.title = this.$t('backend_title_login')\n if (localStorage.getItem('box_office_token')) {\n this.$router.push({name: 'BoxOfficeEvents'})\n }\n },\n methods: {\n login() {\n this.loading = true\n this.error = false\n api.user().login(this.email, this.password).then(token => {\n localStorage.setItem('box_office_token', token)\n this.loadBoxOfficeUser()\n this.$router.push({name: 'BoxOfficeEvents'})\n console.log('Login success')\n }).catch(() => {\n this.error = true\n }).finally(() => {\n this.loading = false\n })\n },\n ...mapActions(['loadBoxOfficeUser'])\n }\n}\n</script>\n<style @scoped lang=\"scss\">\n #login, #login > .row {\n height: 100%;\n }\n #login-wrap {\n background: #193E58;\n padding: 50px;\n legend {\n color:white;\n }\n img {\n max-width: 100%;\n }\n }\n\n#login-wrap {\n margin: auto;\n}\n\n@media only screen and (max-width: 700px) {\n #login-wrap {\n width: 90%;\n }\n}\n\n@media only screen and (min-width: 701px) {\n #login-wrap {\n width: 450px;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeLogin.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeLogin.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficeLogin.vue?vue&type=template&id=056e9164\"\nimport script from \"./BoxOfficeLogin.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficeLogin.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficeLogin.vue?vue&type=style&index=0&id=056e9164&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',[_c('label',{staticClass:\"p-1 pl-3 default-container-layout\"},[_vm._v(_vm._s(_vm.$t('box_office_choose_event_title')))])])],1),(_vm.events.length)?_c('b-row',{staticClass:\"mt-4\"},_vm._l((_vm.events),function(event){return _c('b-col',{key:event.id,staticClass:\"text-center mb-3\",attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-button',{staticClass:\"pt-4 pb-4 default-container-layout\",attrs:{\"to\":{name: 'BoxOfficeEventBoxOffices', params:{event: event.id}}}},[_vm._v(\" \"+_vm._s(event.name)+\" \")])],1)}),1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n<b-container fluid>\n <b-row class=\"mt-3\">\n <b-col>\n <label class=\"p-1 pl-3 default-container-layout\">{{ $t('box_office_choose_event_title') }}</label>\n </b-col>\n </b-row>\n\n <b-row class=\"mt-4\" v-if=\"events.length\">\n <b-col class=\"text-center mb-3\" sm=\"12\" md=\"6\" v-for=\"event in events\" :key=\"event.id\">\n <b-button class=\"pt-4 pb-4 default-container-layout\"\n :to=\"{name: 'BoxOfficeEventBoxOffices', params:{event: event.id}}\">\n {{ event.name }}\n </b-button>\n </b-col>\n </b-row>\n</b-container>\n</template>\n\n<script>\nimport api from '../api/boxOfficeApi'\nexport default {\n name: \"BoxOfficeEvents\",\n data() {\n return {\n events: []\n }\n },\n mounted() {\n api.event().all().then(response => {\n this.events = response;\n })\n }\n}\n</script>\n\n<style scoped>\n.default-container-layout {\n width: 100%;\n color: #808080;\n font-weight: bold;\n font-size: 18px;\n border: none;\n background-color:#FFF;\n border:0px\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeEvents.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeEvents.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficeEvents.vue?vue&type=template&id=db43fb32&scoped=true\"\nimport script from \"./BoxOfficeEvents.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficeEvents.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficeEvents.vue?vue&type=style&index=0&id=db43fb32&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"db43fb32\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',[_c('label',{staticClass:\"p-1 pl-3 default-container-layout\"},[_vm._v(_vm._s(_vm.$t('box_office_choose_box_office_title', {event_name: _vm.event ? _vm.event.name : ''})))])])],1),(_vm.boxOffices.length)?_c('b-row',{staticClass:\"mt-4\"},_vm._l((_vm.boxOffices),function(boxOffice){return _c('b-col',{key:boxOffice.id,staticClass:\"text-center mb-3\",attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-button',{staticClass:\"pt-4 pb-4 default-container-layout\",attrs:{\"to\":{name: 'BoxOfficePlaceOrder', params:{event: _vm.$route.params.event, boxOffice: boxOffice.url}}}},[_vm._v(\" \"+_vm._s(boxOffice.name)+\" \")])],1)}),1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n<b-container fluid>\n <b-row class=\"mt-3\">\n <b-col>\n <label class=\"p-1 pl-3 default-container-layout\">{{ $t('box_office_choose_box_office_title', {event_name: event ? event.name : ''}) }}</label>\n </b-col>\n </b-row>\n\n <b-row class=\"mt-4\" v-if=\"boxOffices.length\">\n <b-col class=\"text-center mb-3\" sm=\"12\" md=\"6\" v-for=\"boxOffice in boxOffices\" :key=\"boxOffice.id\">\n <b-button class=\"pt-4 pb-4 default-container-layout\"\n :to=\"{name: 'BoxOfficePlaceOrder', params:{event: $route.params.event, boxOffice: boxOffice.url}}\">\n {{ boxOffice.name }}\n </b-button>\n </b-col>\n </b-row>\n</b-container>\n</template>\n\n<script>\nimport api from '../api/boxOfficeApi'\nexport default {\n name: \"BoxOfficeEventBoxOffices\",\n data() {\n return {\n event: null,\n boxOffices: []\n }\n },\n mounted() {\n api.event().get(this.$route.params.event).then(event => {\n this.event = event;\n })\n\n api.event().boxOffices(this.$route.params.event).then(boxOffice => {\n this.boxOffices = boxOffice;\n })\n }\n}\n</script>\n\n<style scoped>\n.default-container-layout {\n width: 100%;\n color: #808080;\n font-weight: bold;\n font-size: 18px;\n border: none;\n background-color:#FFF;\n border:0px\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeEventBoxOffices.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeEventBoxOffices.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficeEventBoxOffices.vue?vue&type=template&id=adaffeae&scoped=true\"\nimport script from \"./BoxOfficeEventBoxOffices.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficeEventBoxOffices.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficeEventBoxOffices.vue?vue&type=style&index=0&id=adaffeae&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"adaffeae\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"9\"}},[_c('div',{staticClass:\"table-container no-margin\"},[_c('b-row',{staticClass:\"default-container-layout FistDiv\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_vm._v(_vm._s(_vm.$t('cart_product')))]),_c('b-col',{attrs:{\"cols\":\"2\"}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_price')))]),_c('b-col',{attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_available')))]),_c('b-col',{attrs:{\"cols\":\"5\",\"md\":\"3\"}},[_vm._v(_vm._s(_vm.$t('cart_price')))]),_c('b-col',{attrs:{\"cols\":\"2\"}})],1),_vm._l((_vm.groups),function(group){return _c('b-row',{key:group.id,staticClass:\"mt-2\"},[(group.checked)?_c('b-col',[_c('b-row',{staticClass:\"table-head p-2\"},[_c('b-col',[_vm._v(_vm._s(group.type === 'default' ? _vm.$t(group.name) : group.name))])],1),_vm._l((group.products),function(product){return _c('b-row',{key:product.id},[(product.checked)?_c('b-col',[_c('b-row',{staticClass:\"default-container-layout p-2 mt-2\"},[_c('b-col',{staticClass:\"product-name vertical-align\",attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('label',{staticClass:\"d-block mb-0\"},[_vm._v(_vm._s(product.product.name))])]),_c('b-col',{staticStyle:{\"text-align\":\"right\"},attrs:{\"cols\":\"2\"}},[_vm._v(_vm._s(_vm._f(\"currency\")(product.overrule_price ? product.overrule_price : product.product.price)))]),_c('b-col',{staticStyle:{\"text-align\":\"center\"},attrs:{\"cols\":\"3\",\"md\":\"2\"}},[_vm._v(_vm._s(product.product.current_stock))]),_c('b-col',{attrs:{\"cols\":\"5\",\"md\":\"3\"}},[(product.product.current_stock != 0)?_c('b-form-spinbutton',{attrs:{\"size\":\"lg\",\"min\":\"0\",\"max\":product.product.current_stock,\"inline\":\"\"},model:{value:(product.amount),callback:function ($$v) {_vm.$set(product, \"amount\", $$v)},expression:\"product.amount\"}}):_c('b-alert',{attrs:{\"show\":true,\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('pos_product_sold_out')))])],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-icon',{attrs:{\"icon\":\"x-circle-fill\",\"font-scale\":\"2\"},on:{\"click\":function($event){product.amount = 0}}})],1)],1)],1):_vm._e()],1)})],2):_vm._e()],1)})],2)]),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('div',{staticClass:\"default-container-layout p-3 customerDetails\"},[_c('label',{staticClass:\"d-block m-0 p-0\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_customer_details')))]),_c('small',[_vm._v(_vm._s(_vm.$t('box_office_place_order_fill_customer_details')))]),_c('b-row',{staticClass:\"customer-name-container\"},[_c('b-col',[_c('b-form-input',{staticClass:\"mb-2 mt-3 customer-input\",attrs:{\"placeholder\":_vm.$t('first_name')},model:{value:(_vm.customer.first_name),callback:function ($$v) {_vm.$set(_vm.customer, \"first_name\", $$v)},expression:\"customer.first_name\"}})],1),_c('b-col',[_c('b-form-input',{staticClass:\"mb-2 mt-3 customer-input\",attrs:{\"placeholder\":_vm.$t('last_name')},model:{value:(_vm.customer.last_name),callback:function ($$v) {_vm.$set(_vm.customer, \"last_name\", $$v)},expression:\"customer.last_name\"}})],1)],1),_c('b-row',[_c('b-col',[_c('b-form-input',{staticClass:\"mb-2 customer-input\",attrs:{\"type\":\"email\",\"placeholder\":_vm.$t('email')},model:{value:(_vm.customer.email),callback:function ($$v) {_vm.$set(_vm.customer, \"email\", $$v)},expression:\"customer.email\"}})],1)],1)],1),_c('div',{staticClass:\"default-container-layout p-3 mt-3 PaymentMethod\"},[_c('label',{staticClass:\"d-block m-0 p-0\"},[_vm._v(_vm._s(_vm.$t('order_detail_payment_method')))]),_c('small',[_vm._v(_vm._s(_vm.$t('box_office_place_order_choose_payment')))]),_c('b-row',{staticClass:\"mt-2\"},_vm._l((_vm.paymentMethods),function(pm){return _c('b-col',{key:'paymentMethod' + pm.id,staticClass:\"text-center\"},[_c('a',{staticClass:\"d-block payment-btn\",class:(_vm.paymentMethod && _vm.paymentMethod.id === pm.id) ? 'active' : '',attrs:{\"href\":\"javascript:\"},on:{\"click\":function($event){return _vm.selectPayment( pm )}}},[(pm.payment_method.adapter === 'pin')?_c('b-icon',{attrs:{\"icon\":\"credit-card-fill\",\"font-scale\":\"2\"}}):_vm._e(),(pm.payment_method.adapter === 'cash')?_c('b-icon',{attrs:{\"icon\":\"cash\",\"font-scale\":\"2\"}}):_vm._e(),_c('small',{staticClass:\"d-block\"},[_vm._v(_vm._s(pm.payment_method.name)+\" \")])],1)])}),1)],1)])],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{attrs:{\"cols\":\"9\"}},[_c('div',{staticClass:\"m-auto table\"},[(_vm.discount === 0)?_c('span',{staticClass:\"discount-icon mr-4\"},[_c('b-icon',{staticClass:\"mr-2 cursor-hand\",attrs:{\"icon\":\"percent\",\"font-scale\":\"3\"},on:{\"click\":function($event){_vm.showDiscountInput = !_vm.showDiscountInput}}}),(!_vm.showDiscountInput)?_c('a',{attrs:{\"href\":\"javascript:\"},on:{\"click\":function($event){_vm.showDiscountInput = !_vm.showDiscountInput}}},[_vm._v(_vm._s(_vm.$t('add_discount')))]):_vm._e(),(_vm.showDiscountInput)?_c('b-input-group',{attrs:{\"prepend\":\"\"}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.applyDiscount.apply(null, arguments)}},model:{value:(_vm.discountInpt),callback:function ($$v) {_vm.discountInpt=$$v},expression:\"discountInpt\"}}),_c('b-input-group-append',[_c('b-button',{staticClass:\"add-discount-btn\",on:{\"click\":_vm.applyDiscount}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_discount_enter')))])],1)],1):_vm._e()],1):_vm._e(),(_vm.discount > 0)?_c('span',{staticClass:\"discount-icon danger mr-4\"},[_c('b-icon',{staticClass:\"mr-2 cursor-hand\",attrs:{\"icon\":\"x\",\"font-scale\":\"3\"},on:{\"click\":_vm.removeDiscount}}),_c('a',{attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.removeDiscount}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_remove_discount')))])],1):_vm._e(),_c('span',{staticClass:\"discount-icon\"},[_c('b-icon',{staticClass:\"mr-2 cursor-hand\",attrs:{\"icon\":\"trash\",\"font-scale\":\"3\"},on:{\"click\":_vm.emptyCart}}),_c('a',{attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.emptyCart}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_empty_cart')))])],1)])]),_c('b-col',{attrs:{\"cols\":\"3\"}},[(!_vm.productsAmount)?_c('small',[_vm._v(\"- \"+_vm._s(_vm.$t('box_office_no_products_chosen'))),_c('br')]):_vm._e(),(!_vm.paymentMethod)?_c('small',[_vm._v(\"- \"+_vm._s(_vm.$t('box_office_no_payment_method_chosen')))]):_vm._e()])],1),(_vm.discountError)?_c('b-row',{staticClass:\"mt-2\"},[_c('b-col',{staticClass:\"error-color\",staticStyle:{\"text-align\":\"center\"},attrs:{\"cols\":\"9\"}},[_vm._v(\" \"+_vm._s(_vm.$t('box_office_place_order_discount_to_high'))+\" \")])],1):_vm._e(),_c('b-row',{staticClass:\"mt-3 lastTable\"},[_c('b-col',{staticClass:\"default-container-layout\",attrs:{\"cols\":\"12\",\"md\":\"9\"}},[_c('b-row',{staticClass:\"pr-3 pl-3\"},[_c('b-col',{attrs:{\"cols\":\"8\",\"md\":\"6\"}},[_c('b-row',{staticClass:\"m-0 p-0\"},[_c('b-col',{staticClass:\"m-0 p-0\"},[_c('span',{staticClass:\"d-block\"},[_c('small',[_vm._v(_vm._s(_vm.$t('box_office_place_order_amount_of_products')))])])]),_c('b-col',{staticClass:\"m-0 p-0\"},[_c('span',{staticClass:\"d-block\"},[_c('small',{staticClass:\"ml-2\"},[_vm._v(_vm._s(_vm.productsAmount))])])])],1)],1),_c('b-col',{attrs:{\"cols\":\"4\",\"md\":\"3\"}},[_c('b-row',{staticClass:\"m-0 p-0\"},[_c('b-col',{staticClass:\"m-0 p-0\"},[_c('span',{staticClass:\"d-block\"},[_c('small',[_vm._v(_vm._s(_vm.$t('box_office_place_order_subtotal')))])]),_c('span',{staticClass:\"d-block\"},[_c('small',[_vm._v(_vm._s(_vm.$t('box_office_place_order_discount')))])])]),_c('b-col',{staticClass:\"m-0 p-0\"},[_c('span',{staticClass:\"d-block\"},[_c('small',{staticClass:\"ml-2\"},[_vm._v(\"€ \"+_vm._s(_vm.subtotal.toFixed(2).replace('.', ',')))])]),_c('span',{staticClass:\"d-block\"},[_c('small',{staticClass:\"ml-2\"},[_vm._v(\"€ \"+_vm._s(_vm.discount.toFixed(2).replace('.', ',')))])])])],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('label',{staticClass:\"font-weight-bold text-black-50\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_total'))+\" \")]),_vm._v(\" \"),_c('label',{staticClass:\"font-weight-bold text-black-50 ml-2\"},[_vm._v(\"€ \"+_vm._s(_vm.subtotal ? _vm.total.toFixed(2).replace('.', ',') : 0))])])],1)],1),_c('b-col',{staticClass:\"button-container\",attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_c('button',{staticClass:\"btn place-order-btn\",class:_vm.paymentMethod !== null && _vm.productsAmount > 0 ? 'active' : '',attrs:{\"disabled\":!_vm.paymentMethod || !_vm.productsAmount || _vm.loading},on:{\"click\":function($event){return _vm.placeOrder()}}},[_vm._v(\" \"+_vm._s(_vm.$t('box_office_place_order_place_order'))+\" \")])])],1),_c('b-modal',{attrs:{\"id\":\"place-order-setting\",\"title\":\"Setting\",\"ok-only\":\"\",\"ok-title\":_vm.$t('save')},on:{\"cancel\":_vm.resetSettings},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{staticClass:\"mr-auto\",attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.logout}},[_vm._v(_vm._s(_vm.$t('app_logout')))]),_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":_vm.saveSettings}},[_vm._v(_vm._s(_vm.$t('save')))])]},proxy:true}])},[_c('strong',{staticClass:\"d-block mt-3 mb-2\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_which_product_to_show')))]),_vm._l((_vm.groupsSettings),function(group,index){return _c('b-row',{key:group.id,staticClass:\"setting-row\"},[_c('b-col',[_c('b-row',{staticClass:\"table-head mb-2 p-2\"},[_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-form-checkbox',{attrs:{\"name\":\"check-button\",\"switch\":\"\"},on:{\"change\":function($event){return _vm.groupCheckChanged(index)}},model:{value:(group.checked),callback:function ($$v) {_vm.$set(group, \"checked\", $$v)},expression:\"group.checked\"}})],1),_c('b-col',{attrs:{\"cols\":\"8\"}},[_vm._v(_vm._s(group.type === 'default' ? _vm.$t(group.name) : group.name))]),_c('b-col',{attrs:{\"cols\":\"2\"}})],1),_vm._l((group.products),function(product,prodIndex){return _c('b-row',{key:product.id,staticClass:\"table-head-white mb-2 p-2\"},[_c('b-col',{attrs:{\"cols\":\"2\"}},[_c('b-form-checkbox',{attrs:{\"name\":\"check-button\",\"switch\":\"\"},on:{\"change\":function($event){return _vm.productCheckChanged(index, prodIndex)}},model:{value:(product.checked),callback:function ($$v) {_vm.$set(product, \"checked\", $$v)},expression:\"product.checked\"}})],1),_c('b-col',{attrs:{\"cols\":\"7\"}},[_vm._v(_vm._s(product.product.name))]),_c('b-col',{staticStyle:{\"text-align\":\"right\"},attrs:{\"cols\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(product.overrule_price ? product.overrule_price : product.product.price))+\" \")])],1)})],2)],1)})],2),_c('b-modal',{attrs:{\"id\":\"payment-modal\",\"title\":\"Payment\",\"ok-only\":\"\",\"ok-title\":_vm.$t('save')},on:{\"cancel\":_vm.resetSettings},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-row',{staticClass:\"w-100\"},[_c('b-col',[_c('button',{staticClass:\"btn payment-cancel-btn\",on:{\"click\":function($event){return _vm.$bvModal.hide('payment-modal')}}},[_vm._v(_vm._s(_vm.$t('cancel')))])]),_c('b-col',[_c('button',{staticClass:\"btn payment-place-order-btn-green\",attrs:{\"disabled\":_vm.loading},on:{\"click\":_vm.markAsPaid}},[_vm._v(_vm._s(_vm.$t('box_office_place_order_place_order')))])])],1)]},proxy:true}])},[_c('b-row',[_c('b-col',{staticClass:\"text-center\"},[_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_customer_has_to_pay')))]),_c('h2',{staticClass:\"font-weight-bold\"},[_vm._v(\"€\"+_vm._s(_vm.total ? _vm.total.toFixed(2).replace('.', ',') : 0))])])],1),(_vm.paymentMethod && _vm.paymentMethod.payment_method.adapter === 'cash')?_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',[_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_given_by_customer_in'))+\" €:\")]),_c('b-input',{staticClass:\"text-center font-weight-bold\",model:{value:(_vm.givenByCustomer),callback:function ($$v) {_vm.givenByCustomer=$$v},expression:\"givenByCustomer\"}})],1),_c('b-col',[_c('label',{staticClass:\"d-block font-weight-bold\"},[_vm._v(_vm._s(_vm.$t('box_office_place_order_return_to_customer_in'))+\" \")]),_c('h3',{staticClass:\"d-block font-weight-bold\"},[_vm._v(\"€ \"+_vm._s(_vm.givenByCustomer ? (_vm.givenByCustomer - _vm.total).toFixed(2).replace('.', ',') : 0))])])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid>\n <b-row>\n <b-col cols=\"12\" md=\"9\">\n <div class=\"table-container no-margin\">\n <b-row class=\"default-container-layout FistDiv\">\n <b-col cols=\"12\" md=\"3\">{{ $t('cart_product') }}</b-col>\n <b-col cols=\"2\">{{ $t('box_office_place_order_price') }}</b-col>\n <b-col cols=\"3\" md=\"2\">{{ $t('box_office_place_order_available') }}</b-col>\n <b-col cols=\"5\" md=\"3\">{{ $t('cart_price') }}</b-col>\n <b-col cols=\"2\"></b-col>\n </b-row>\n\n <b-row v-for=\"group in groups\" :key=\"group.id\" class=\"mt-2\">\n <b-col v-if=\"group.checked\">\n <b-row class=\"table-head p-2\">\n <b-col>{{ group.type === 'default' ? $t(group.name) : group.name }}</b-col>\n </b-row>\n\n <b-row v-for=\"product in group.products\" :key=\"product.id\">\n <b-col v-if=\"product.checked\" >\n <b-row class=\"default-container-layout p-2 mt-2\">\n <b-col cols=\"12\" md=\"3\" class=\"product-name vertical-align\">\n <label class=\"d-block mb-0\">{{ product.product.name }}</label>\n </b-col>\n <b-col cols=\"2\" style=\"text-align:right\">{{ product.overrule_price ? product.overrule_price : product.product.price | currency }}</b-col>\n <b-col cols=\"3\" md=\"2\" style=\"text-align:center\">{{product.product.current_stock}}</b-col>\n <b-col cols=\"5\" md=\"3\">\n <b-form-spinbutton size=\"lg\" v-if=\"product.product.current_stock != 0\" min=\"0\" v-model=\"product.amount\" :max=\"product.product.current_stock\" inline></b-form-spinbutton>\n <b-alert v-else :show=\"true\" variant=\"danger\">{{ $t('pos_product_sold_out') }}</b-alert>\n </b-col>\n <b-col cols=\"2\">\n <b-icon @click=\"product.amount = 0\" icon=\"x-circle-fill\" font-scale=\"2\"></b-icon>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n </div>\n </b-col>\n <b-col cols=\"12\" md=\"3\">\n <div class=\"default-container-layout p-3 customerDetails\">\n <label class=\"d-block m-0 p-0\">{{ $t('box_office_place_order_customer_details') }}</label>\n <small>{{ $t('box_office_place_order_fill_customer_details') }}</small>\n <b-row class=\"customer-name-container\">\n <b-col><b-form-input v-model=\"customer.first_name\" class=\"mb-2 mt-3 customer-input\" :placeholder=\"$t('first_name')\"></b-form-input></b-col>\n <b-col><b-form-input v-model=\"customer.last_name\" class=\"mb-2 mt-3 customer-input\" :placeholder=\"$t('last_name')\"></b-form-input></b-col>\n </b-row>\n <b-row>\n <b-col><b-form-input v-model=\"customer.email\" class=\"mb-2 customer-input\" type=\"email\" :placeholder=\"$t('email')\"></b-form-input></b-col>\n </b-row>\n </div>\n\n <div class=\"default-container-layout p-3 mt-3 PaymentMethod\">\n <label class=\"d-block m-0 p-0\">{{ $t('order_detail_payment_method') }}</label>\n <small>{{ $t('box_office_place_order_choose_payment') }}</small>\n <b-row class=\"mt-2\">\n\n <b-col v-for=\"pm in paymentMethods\" :key=\"'paymentMethod' + pm.id\" class=\"text-center\">\n <a @click=\"selectPayment( pm )\" class=\"d-block payment-btn\" :class=\"(paymentMethod && paymentMethod.id === pm.id) ? 'active' : ''\" href=\"javascript:\">\n <b-icon icon=\"credit-card-fill\" font-scale=\"2\" v-if=\"pm.payment_method.adapter === 'pin'\"></b-icon>\n <b-icon icon=\"cash\" font-scale=\"2\" v-if=\"pm.payment_method.adapter === 'cash'\"></b-icon>\n <small class=\"d-block\">{{ pm.payment_method.name }} </small>\n </a>\n </b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n <b-row class=\"mt-3\">\n <b-col cols=\"9\">\n <div class=\"m-auto table\">\n <span v-if=\"discount === 0\" class=\"discount-icon mr-4\">\n <b-icon icon=\"percent\" font-scale=\"3\" class=\"mr-2 cursor-hand\" @click=\"showDiscountInput = !showDiscountInput\"></b-icon>\n <a href=\"javascript:\" v-if=\"!showDiscountInput\" @click=\"showDiscountInput = !showDiscountInput\">{{ $t('add_discount') }}</a>\n <b-input-group v-if=\"showDiscountInput\" prepend=\"\">\n <b-form-input type=\"number\" v-model=\"discountInpt\" @keyup.enter=\"applyDiscount\" :step=\"0.01\" :min=\"0\"></b-form-input>\n <b-input-group-append>\n <b-button class=\"add-discount-btn\" @click=\"applyDiscount\">{{ $t('box_office_place_order_discount_enter') }}</b-button>\n </b-input-group-append>\n </b-input-group>\n </span>\n <span v-if=\"discount > 0\" class=\"discount-icon danger mr-4\">\n <b-icon icon=\"x\" font-scale=\"3\" class=\"mr-2 cursor-hand\" @click=\"removeDiscount\"></b-icon>\n <a href=\"javascript:\" @click=\"removeDiscount\">{{ $t('box_office_place_order_remove_discount') }}</a>\n </span>\n <span class=\"discount-icon\">\n <b-icon icon=\"trash\" font-scale=\"3\" class=\"mr-2 cursor-hand\" @click=\"emptyCart\"></b-icon>\n <a @click=\"emptyCart\" href=\"javascript:\">{{ $t('box_office_place_order_empty_cart') }}</a>\n </span>\n </div>\n </b-col>\n <b-col cols=\"3\">\n <small v-if=\"!productsAmount\">- {{ $t('box_office_no_products_chosen') }}<br></small>\n <small v-if=\"!paymentMethod\">- {{ $t('box_office_no_payment_method_chosen') }}</small>\n </b-col>\n </b-row>\n <b-row v-if=\"discountError\" class=\"mt-2\">\n <b-col cols=\"9\" style=\"text-align:center;\" class=\"error-color\">\n {{ $t('box_office_place_order_discount_to_high') }}\n </b-col>\n </b-row>\n <b-row class=\"mt-3 lastTable\">\n <b-col class=\"default-container-layout\" cols=\"12\" md=\"9\">\n <b-row class=\"pr-3 pl-3\">\n <b-col cols=\"8\" md=\"6\">\n <b-row class=\"m-0 p-0 \">\n <b-col class=\"m-0 p-0\">\n <span class=\"d-block\"><small>{{ $t('box_office_place_order_amount_of_products') }}</small></span>\n </b-col>\n <b-col class=\"m-0 p-0\">\n <span class=\"d-block\"><small class=\"ml-2\">{{ productsAmount }}</small></span>\n </b-col>\n </b-row>\n </b-col>\n <b-col cols=\"4\" md=\"3\">\n <b-row class=\"m-0 p-0\">\n <b-col class=\"m-0 p-0\">\n <span class=\"d-block\"><small>{{ $t('box_office_place_order_subtotal') }}</small></span>\n <span class=\"d-block\"><small>{{ $t('box_office_place_order_discount') }}</small></span>\n </b-col>\n <b-col class=\"m-0 p-0\">\n <span class=\"d-block\"><small class=\"ml-2\">€ {{ subtotal.toFixed(2).replace('.', ',') }}</small></span>\n <span class=\"d-block\"><small class=\"ml-2\">€ {{ discount.toFixed(2).replace('.', ',') }}</small></span>\n </b-col>\n </b-row>\n </b-col>\n <b-col cols=\"12\" md=\"3\">\n <label class=\"font-weight-bold text-black-50\">{{ $t('box_office_place_order_total') }} </label> <label\n class=\"font-weight-bold text-black-50 ml-2\">€ {{ subtotal ? total.toFixed(2).replace('.', ',') : 0 }}</label>\n </b-col>\n </b-row>\n </b-col>\n <b-col class=\"button-container\" cols=\"12\" md=\"3\">\n <button class=\"btn place-order-btn\" :disabled=\"!paymentMethod || !productsAmount || loading\" :class=\"paymentMethod !== null && productsAmount > 0 ? 'active' : ''\" @click=\"placeOrder()\">\n {{ $t('box_office_place_order_place_order') }}\n </button>\n </b-col>\n </b-row>\n\n <b-modal id=\"place-order-setting\" title=\"Setting\" ok-only :ok-title=\"$t('save')\" @cancel=\"resetSettings\">\n <strong class=\"d-block mt-3 mb-2\">{{ $t('box_office_place_order_which_product_to_show') }}</strong>\n <b-row v-for=\"(group, index) in groupsSettings\" :key=\"group.id\" class=\"setting-row\">\n <b-col>\n <b-row class=\"table-head mb-2 p-2\">\n <b-col cols=\"2\">\n <b-form-checkbox v-model=\"group.checked\" name=\"check-button\" switch @change=\"groupCheckChanged(index)\"></b-form-checkbox>\n </b-col>\n <b-col cols=\"8\">{{ group.type === 'default' ? $t(group.name) : group.name }}</b-col>\n <b-col cols=\"2\"></b-col>\n </b-row>\n <b-row class=\"table-head-white mb-2 p-2\" v-for=\"(product, prodIndex) in group.products\" :key=\"product.id\">\n <b-col cols=\"2\">\n <b-form-checkbox v-model=\"product.checked\" name=\"check-button\" switch @change=\"productCheckChanged(index, prodIndex)\"></b-form-checkbox>\n </b-col>\n <b-col cols=\"7\">{{ product.product.name }}</b-col>\n <b-col cols=\"3\" style=\"text-align:right\">\n {{ product.overrule_price ? product.overrule_price : product.product.price | currency}}\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n\n <template #modal-footer>\n <b-button class=\"mr-auto\" variant=\"primary\" @click=\"logout\">{{ $t('app_logout') }}</b-button>\n <b-button variant=\"primary\" @click=\"saveSettings\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"payment-modal\" title=\"Payment\" ok-only :ok-title=\"$t('save')\" @cancel=\"resetSettings\">\n <b-row>\n <b-col class=\"text-center\">\n <label class=\"d-block font-weight-bold\">{{ $t('box_office_place_order_customer_has_to_pay') }}</label>\n <h2 class=\"font-weight-bold\">€{{ total ? total.toFixed(2).replace('.', ',') : 0 }}</h2>\n </b-col>\n </b-row>\n <b-row v-if=\"paymentMethod && paymentMethod.payment_method.adapter === 'cash'\" class=\"mt-5\">\n <b-col>\n <label class=\"d-block font-weight-bold\">{{ $t('box_office_place_order_given_by_customer_in') }} €:</label>\n <b-input v-model=\"givenByCustomer\" class=\"text-center font-weight-bold\"></b-input>\n </b-col>\n <b-col>\n <label class=\"d-block font-weight-bold\">{{ $t('box_office_place_order_return_to_customer_in') }} </label>\n <h3 class=\"d-block font-weight-bold\">€ {{ givenByCustomer ? (givenByCustomer - total).toFixed(2).replace('.', ',') : 0 }}</h3>\n </b-col>\n </b-row>\n <template #modal-footer>\n <b-row class=\"w-100\">\n <b-col>\n <button class=\"btn payment-cancel-btn\" @click=\"$bvModal.hide('payment-modal')\">{{ $t('cancel') }}</button>\n </b-col>\n <b-col>\n <button @click=\"markAsPaid\" :disabled=\"loading\" class=\"btn payment-place-order-btn-green\">{{ $t('box_office_place_order_place_order') }}</button>\n </b-col>\n </b-row>\n </template>\n </b-modal>\n </b-container>\n</template>\n\n<script>\nimport api from '../api/boxOfficeApi'\nexport default {\n name: \"BoxOfficePlaceOrder\",\n data() {\n return {\n discountError: false,\n showDiscountInput: false,\n discountInpt: 0,\n discount: 0,\n givenByCustomer: 0,\n groups: [],\n groupsSettings: [],\n loading: false,\n boxOffice: null,\n paymentMethod: null,\n btnOrderEnabled: false,\n paymentMethods: null,\n order: null,\n customer: {\n first_name: null,\n last_name: null,\n email: null,\n }\n }\n },\n mounted() {\n this.refresh()\n },\n methods: {\n refresh() {\n api.event().boxOffice(this.$route.params.event, this.$route.params.boxOffice).then(boxOffice => {\n this.boxOffice = boxOffice;\n\n this.paymentMethods = boxOffice.payment_methods.filter(paymentMethod => paymentMethod.online)\n\n api.boxOfficePlaceOrder().getSettings(this.$route.params.boxOffice).then(settings => {\n this.groups = boxOffice.groups.map(group => {\n const groupSettings = settings.find(s => s.group_id === group.id);\n const products = group.products.map(prod => {\n const productSettings = groupSettings ? groupSettings.products.find(p => p.product_id === prod.product_id) : null;\n const prodClone = Object.assign({}, prod);\n prodClone.checked = productSettings ? productSettings.checked : true;\n prodClone.amount = 0;\n return prodClone;\n })\n const groupCloned = Object.assign({}, group);\n groupCloned.products = products;\n groupCloned.checked = groupSettings ? groupSettings.checked : true;\n return groupCloned;\n });\n this.groupsSettings = this.deepClone(this.groups);\n })\n })\n },\n groupCheckChanged(index) {\n for(let i=0; i<this.groupsSettings[index].products.length; i++) {\n this.groupsSettings[index].products[i].checked = this.groupsSettings[index].checked;\n }\n },\n productCheckChanged(index, prodIndex) {\n if(this.groupsSettings[index].products[prodIndex].checked) {\n this.groupsSettings[index].checked = true;\n }\n },\n logout(){\n this.$store.commit('boxOfficeLogout')\n },\n saveSettings() {\n const data = this.deepClone(this.groupsSettings).map(group => {\n return {\n group_id: group.id,\n checked: group.checked,\n products: group.products.map(product => {\n return {\n product_id: product.product_id,\n checked: product.checked,\n }\n })\n }\n })\n this.loading = true;\n api.boxOfficePlaceOrder().saveSettings(this.$route.params.boxOffice, data).then(() => {\n this.loading = false;\n this.groups = this.deepClone(this.groupsSettings);\n this.$bvModal.hide('place-order-setting')\n this.$store.commit('success', this.$t('box_office_place_save_settings_success'))\n })\n },\n resetSettings() {\n this.groupsSettings = this.deepClone(this.groups);\n },\n deepClone(object) {\n return JSON.parse(JSON.stringify(object));\n },\n applyDiscount() {\n if(parseFloat(this.discountInpt) > this.total){\n this.discountError = true\n } else {\n this.discount = parseFloat(this.discountInpt);\n this.showDiscountInput = false;\n this.discountError = false\n }\n },\n removeDiscount() {\n this.discount = 0;\n this.discountInpt = 0;\n },\n emptyCart() {\n this.discount = 0\n this.discountInpt = 0\n this.discountError = false\n for(let i=0; i< this.groups.length; i++) {\n for(let j=0; j< this.groups[i].products.length; j++) {\n this.groups[i].products[j].amount = 0;\n }\n }\n this.customer = {\n first_name: null,\n last_name: null,\n email: null,\n }\n },\n selectPayment(paymentMethod) {\n this.paymentMethod = paymentMethod;\n },\n placeOrder(){\n const products = [];\n this.groups.forEach(group => {\n if(group.checked) {\n group.products.forEach(product => {\n if(product.checked) {\n products.push({\n product_id: product.product_id,\n amount: product.amount,\n });\n }\n })\n }\n })\n const order = {\n total: this.total,\n discount: this.discount,\n products,\n payment_method: this.paymentMethod.id,\n customer: this.customer\n }\n this.loading = true;\n\n api.boxOfficePlaceOrder().save(\n this.$route.params.boxOffice,\n order\n ).then(response => {\n this.loading = false;\n this.order = response;\n this.$bvModal.show('payment-modal')\n }).catch(() => {\n this.loading = false;\n this.refresh();\n })\n },\n markAsPaid() {\n this.loading = true;\n api.boxOfficePlaceOrder().markOrderPaid(\n this.$route.params.boxOffice,\n this.order.id\n ).then(() => {\n this.loading = false;\n this.$store.commit('success', this.$t('box_office_place_paid_success'))\n this.emptyCart();\n this.removeDiscount();\n this.order = null;\n this.paymentMethod = null;\n this.$bvModal.hide('payment-modal')\n this.refresh()\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n computed: {\n subtotal() {\n let total = 0;\n for(let i=0; i< this.groups.length; i++) {\n for(let j=0; j< this.groups[i].products.length; j++) {\n const price = this.groups[i].products[j].overrule_price ? this.groups[i].products[j].overrule_price : this.groups[i].products[j].product.price;\n total += parseFloat(price) * parseFloat(this.groups[i].products[j].amount);\n }\n }\n return total;\n },\n productsAmount() {\n let amount = 0;\n for(let i=0; i< this.groups.length; i++) {\n for(let j=0; j< this.groups[i].products.length; j++) {\n amount += parseFloat(this.groups[i].products[j].amount);\n }\n }\n return amount;\n },\n total() {\n return this.subtotal ? (this.subtotal - this.discount) : 0;\n }\n }\n}\n</script>\n<style lang=\"scss\">\n#place-order-setting {\n .modal-body, .modal-footer {\n background-color: #efefef !important;\n }\n}\n</style>\n<style scoped lang=\"scss\">\n.product-name{\n flex-direction: column;\n}\n.customer-name-container div.col:first-of-type{\n padding-right:5px\n}\n.customer-name-container div.col:last-of-type{\n padding-left:5px\n}\n.setting-row{\n margin-left:0px;\n margin-right:0px\n}\n.cursor-hand{\n cursor:pointer\n}\n.error-color{\n color:#dc3545\n}\n.payment-cancel-btn {\n border: 2px solid #DC3545;\n width: 100%;\n height: 100%;\n color: #000000;\n background-color: #ffffff;\n font-weight: bold;\n\n &:hover {\n background-color: #f1f1f1;\n }\n}\n.payment-place-order-btn-green {\n border: 2px solid #28973D;\n width: 100%;\n height: 100%;\n color: #ffffff;\n background-color: #28973D;\n font-weight: bold;\n\n &:hover {\n color: #28973D;\n background-color: #f1f1f1;\n }\n}\n.table-container {\n overflow-y: scroll;\n height: 60vh;\n}\n.table-container > div{\n width: 100%;\n margin: 10px 0!important;\n}\n.table-container.no-margin > div{\n margin-top:0px !important\n}\n.table-head {\n background-color: #193E58;\n color: #ffffff;\n text-transform: uppercase;\n border-radius: 6px;\n box-shadow: 0 3px 6px #52575d19;\n font-weight: bold;\n * {\n color: #ffffff;\n }\n}\n.table-head-white {\n background-color: #ffffff;\n color: #000000;\n font-weight: bold;\n border-radius: 6px;\n box-shadow: 0 3px 6px #52575d19;\n}\n\n.place-order-btn {\n border: 2px solid #28973D;\n width: 100%;\n height: 100%;\n color: #28973D;\n background-color: #ffffff;\n font-weight: bold;\n}\n.place-order-btn.active{\n background-color:#28973D;\n color:#FFF\n}\n\ninput.customer-input {\n background-color: #F5F5F5;\n}\n\n.payment-btn {\n border: 1px solid #A1A1A1;\n border-radius: 4px;\n background-color: #F5F5F5;\n padding: 5px 2px;\n color: #A1A1A1;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n text-decoration: none;\n}\n\n.payment-btn:hover, .payment-btn.active {\n border: 1px solid #F0B52D;\n color: #F0B52D;\n}\n.discount-icon {\n .b-icon {\n color: #ffffff;\n background-color: #A1A1A1;\n border-radius: 50px;\n padding: 10px;\n }\n\n a {\n color: #000000;\n text-decoration: none;\n }\n\n &.danger {\n .b-icon {\n background-color: #DC3545;\n }\n\n a {\n color: #DC3545;\n }\n }\n}\n\n.add-discount-btn {\n color: #ffffff;\n background-color: #F0B52D;\n border-color: #F0B52D;\n}\n.default-container-layout > div:not(:first-of-type){\n display: flex;\n align-items: center;\n}\n.table{\n display: flex;\n justify-content: center;\n margin: 0!important;\n}\n.table > span{\n margin: 0 30px!important;\n}\n.discount-icon{\n display: flex;\n align-items: center;\n}\n.lastTable >div{\n padding: 10px 40px;\n}\n.lastTable >div.button-container{\n padding: 0px 20px\n}\n.lastTable >div > div>div:not(:first-of-type){\n display: flex;\n align-items: center;\n}\n.lastTable >div > div>div:last-of-type{\n justify-content: end;\n}\n.lastTable >div > div>div:last-of-type label{\nmargin-bottom: 0px!important;\nfont-size: 20px;\ncolor: #6c6c6c !important\n}\n.FistDiv{\n padding: 7px 16px;\n}\n@media (max-width:992px) {\n .table-container {\n height: 60vh;\n}\n .table{\n display: block;\n }\n .table >span{\n margin-bottom: 20px!important;\n }\n .lastTable >div{\n padding: 10px 20px;\n}\n .lastTable >div > div>div:last-of-type label{\n margin: 10px 0px!important;\n }\n .lastTable >div > div>div:last-of-type{\n justify-content: start;\n}\n.table-container{\n margin-bottom: 30px;\n border: 1px solid #ddd;\n padding: 10px;\n border-radius: 10px;\n}\n.table-container .default-container-layout > div{\n padding: 0;\n}\n.table-container .default-container-layout > div:nth-of-type(3){\n padding-right: 15px;\n}\n.default-container-layout > div:not(:first-of-type){\njustify-content: center;\n}\n.PaymentMethod label,.customerDetails label{\nfont-size: 15px;\n}\n.PaymentMethod >small,.customerDetails small{\nfont-size: 11px;\n}\n.PaymentMethod >div{\n margin-top: 20px;\n}\n.customerDetails input{\n margin: 10px 0;\n font-size: 14px;\n padding: 0px 6px;\n height: 40px;\n}\n}\n\n\n@media (max-width:560px) {\n.table-container div{\n font-size: 13px!important;\n}\n.table-container label{\n font-size: 14px!important;\n}\n.table-container small{\n font-size: 12px!important;\n}\n\n\n.table-container .default-container-layout > div:first-of-type{\n display: flex;\n justify-content: space-between;\n margin-bottom: 10px;\n}\n\n.container-fluid{\n padding: 0!important;\n}\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficePlaceOrder.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficePlaceOrder.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficePlaceOrder.vue?vue&type=template&id=4a5715ca&scoped=true\"\nimport script from \"./BoxOfficePlaceOrder.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficePlaceOrder.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficePlaceOrder.vue?vue&type=style&index=0&id=4a5715ca&prod&lang=scss\"\nimport style1 from \"./BoxOfficePlaceOrder.vue?vue&type=style&index=1&id=4a5715ca&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4a5715ca\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('div',{staticClass:\"table-container no-margin\"},[_c('b-row',{staticClass:\"default-container-layout FirstDiv\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"3\"}},[_vm._v(_vm._s(_vm.$t('box_office_order_history_title')))])],1)],1)])],1),_c('div',{staticClass:\"table-container no-margin\"},_vm._l((_vm.orders),function(order){return _c('b-row',{key:'order-' + order.id,staticClass:\"default-container-layout order-history-row mt-2\",class:order.is_refunded ? 'refunded' : ''},[_c('b-col',{staticClass:\"vertical-align\"},[_vm._v(_vm._s(_vm._f(\"date_time\")(order.created_at)))]),_c('b-col',{staticClass:\"vertical-align\"},[_vm._v(_vm._s(order.order_products.length)+\" \"+_vm._s(_vm.$t('box_office_order_history_products')))]),_c('b-col',{staticClass:\"vertical-align\"},[_vm._v(_vm._s(_vm._f(\"currency\")(order.total)))]),_c('b-col',{staticClass:\"vertical-align\"},[_vm._v(_vm._s((order.customer) ? order.customer.first_name + ' ' + order.customer.last_name : _vm.$t('unkown')))]),_c('b-col',[(!order.is_refunded)?_c('b-button',{staticClass:\"manage-btn\",attrs:{\"variant\":\"row-edit\"},on:{\"click\":function($event){return _vm.openOrderDetail(order)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(order.is_refunded)?_c('span',[_vm._v(_vm._s(_vm.$t('order_status_refunded')))]):_vm._e()],1)],1)}),1),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getOrders}}):_vm._e(),_c('b-modal',{attrs:{\"size\":\"lg\",\"id\":\"order-detail-modal\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"}},[_vm._v(_vm._s(_vm.$t('close')))])]},proxy:true}])},[(_vm.order)?_c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('box_office_order_history_order_number')}},[_vm._v(\" \"+_vm._s(_vm.order.order_number)+\" \")])],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('box_office_order_history_order_placed')}},[_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(_vm.order.created_at))+\" \")])],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('box_office_order_history_payment_method')}},[_vm._v(\" \"+_vm._s(_vm.order.pos_payment_method.payment_method.name)+\" \")])],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('box_office_order_history_customer')}},[_vm._v(\" \"+_vm._s((_vm.order.customer) ? _vm.order.customer.first_name + ' ' + _vm.order.customer.last_name : _vm.$t('unkown'))+\" \")])],1)],1),_c('b-row',{staticClass:\"mb-2 mt-4\"},[_c('b-col',[_c('strong',[_vm._v(_vm._s(_vm.$t('box_office_order_history_products')))])])],1),_vm._l((_vm.order.order_products),function(orderProduct){return _c('b-row',{key:'order-product-' + orderProduct.id,staticClass:\"mb-2\",staticStyle:{\"max-width\":\"65%\"}},[_c('b-col',[_vm._v(_vm._s(orderProduct.product.product_group.type !== 'default' ? orderProduct.product.product_group.name + ' - ' : '')+_vm._s(orderProduct.product.name))]),_c('b-col',{staticStyle:{\"text-align\":\"right\"}},[_vm._v(_vm._s(_vm._f(\"currency\")(orderProduct.price)))])],1)}),_c('b-row',{staticStyle:{\"max-width\":\"65%\"}},[_c('b-col',[_c('strong',[_vm._v(_vm._s(_vm.$t('box_office_order_history_total_price')))])]),_c('b-col',{staticStyle:{\"text-align\":\"right\"}},[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.order.total)))])])],1)],2):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid>\n <b-row>\n <b-col cols=\"12\">\n <div class=\"table-container no-margin\">\n <b-row class=\"default-container-layout FirstDiv\">\n <b-col cols=\"12\" md=\"3\">{{ $t('box_office_order_history_title') }}</b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n \n <div class=\"table-container no-margin\">\n <b-row v-for=\"order in orders\" :key=\"'order-' + order.id\" class=\"default-container-layout order-history-row mt-2\" :class=\"order.is_refunded ? 'refunded' : ''\">\n <b-col class=\"vertical-align\">{{ order.created_at | date_time }}</b-col>\n <b-col class=\"vertical-align\">{{ order.order_products.length }} {{ $t('box_office_order_history_products') }}</b-col>\n <b-col class=\"vertical-align\">{{ order.total | currency }}</b-col>\n <b-col class=\"vertical-align\">{{ (order.customer) ? order.customer.first_name + ' ' + order.customer.last_name : $t('unkown') }}</b-col>\n <b-col>\n <b-button v-if=\"!order.is_refunded\" class=\"manage-btn\" variant=\"row-edit\" @click=\"openOrderDetail(order)\">{{ $t('manage') }}</b-button>\n <span v-if=\"order.is_refunded\">{{ $t('order_status_refunded') }}</span>\n </b-col>\n </b-row>\n </div>\n\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getOrders\"></pagination>\n\n <b-modal size=\"lg\" id=\"order-detail-modal\" >\n <div v-if=\"order\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('box_office_order_history_order_number')\">\n {{order.order_number}}\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('box_office_order_history_order_placed')\">\n {{order.created_at | date_time}}\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('box_office_order_history_payment_method')\">\n {{ order.pos_payment_method.payment_method.name }}\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('box_office_order_history_customer')\">\n {{ (order.customer) ? order.customer.first_name + ' ' + order.customer.last_name : $t('unkown') }}\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mb-2 mt-4\">\n <b-col><strong>{{ $t('box_office_order_history_products') }}</strong></b-col>\n </b-row>\n\n <b-row v-for=\"orderProduct in order.order_products\" :key=\"'order-product-' + orderProduct.id\" class=\"mb-2\" style=\"max-width:65%\">\n <b-col>{{ orderProduct.product.product_group.type !== 'default' ? orderProduct.product.product_group.name + ' - ' : '' }}{{ orderProduct.product.name }}</b-col>\n <b-col style=\"text-align:right\">{{ orderProduct.price | currency }}</b-col>\n </b-row>\n\n <b-row style=\"max-width:65%\">\n <b-col><strong>{{ $t('box_office_order_history_total_price') }}</strong></b-col>\n <b-col style=\"text-align:right\"><strong>{{ order.total | currency }}</strong></b-col>\n </b-row>\n </div>\n\n <template #modal-footer>\n <!-- <b-button variant=\"primary\">{{ $t('refund') }}</b-button> -->\n <b-button variant=\"primary\">{{ $t('close') }}</b-button>\n </template>\n </b-modal>\n\n </b-container>\n</template>\n\n<script>\nimport api from '../api/boxOfficeApi'\nexport default {\n data(){\n return {\n orders: null,\n order: null,\n page_data: null,\n page: 1\n }\n },\n created(){\n this.getOrders()\n },\n methods: {\n getOrders(page = 1){\n if (!page) {\n page = 1\n }\n api.boxOfficePlaceOrder().getOrders(this.$route.params.boxOffice, page).then(order => {\n this.page_data = order\n this.orders = order.data.map(order => {\n return Object.assign(order, {is_refunded: order.order_products.filter(p => p.refunded_at === null).length === 0})\n })\n })\n },\n openOrderDetail(order){\n this.order = Object.assign({}, order)\n this.$bvModal.show('order-detail-modal')\n }\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.FirstDiv{\n padding: 7px 16px;\n}\n.order-history-row{\n padding: 14px 16px;\n}\n.order-history-row.refunded{\n background-color:#E8E8E8 !important\n}\n.order-history-row.refunded div.col{\n color:#A1A1A1\n}\n.manage-btn{\n background-color:#F0B52D;\n border-color:#F0B52D;\n color:#FFF\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeOrderHistory.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeOrderHistory.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficeOrderHistory.vue?vue&type=template&id=39eb81c4&scoped=true\"\nimport script from \"./BoxOfficeOrderHistory.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficeOrderHistory.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficeOrderHistory.vue?vue&type=style&index=0&id=39eb81c4&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"39eb81c4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('label',{staticClass:\"d-block mb-0 black\"},[_vm._v(_vm._s(_vm.$t('customer_support_free_search')))]),_c('b-row',[_c('b-col',{staticClass:\"font-weight-bold\",attrs:{\"cols\":\"12\",\"md\":\"12\",\"lg\":\"8\",\"xl\":\"9\"}},[_c('b-input-group',{staticClass:\"free-search mt-1 mb-3 mb-lg-0\",scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('b-input-group-text',{staticClass:\"cursor-pointer\",on:{\"click\":_vm.getOrders}},[_c('b-icon',{attrs:{\"icon\":\"search\",\"color\":\"#b3b3b3\"}})],1)]},proxy:true}])},[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('customer_support_search')},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.getOrders.apply(null, arguments)}},model:{value:(_vm.filters.search),callback:function ($$v) {_vm.$set(_vm.filters, \"search\", $$v)},expression:\"filters.search\"}})],1)],1),_c('b-col',{staticClass:\"flexing\",attrs:{\"cols\":\"12\",\"md\":\"12\",\"lg\":\"4\",\"xl\":\"3\"}},[_c('div',{staticClass:\"alignCenter btnReset\"},[_c('div',{staticClass:\"font-weight-bold black\"},[_c('span',{staticClass:\"cursor-pointer block\",on:{\"click\":_vm.resetFilters}},[_vm._v(_vm._s(_vm.$t('customer_support_reset_filter'))+\" \"),_c('b-icon',{staticClass:\"font-weight-bold\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"}})],1)]),_c('div',{staticClass:\"text-right\"},[_c('b-button',{staticClass:\"pl-3 pr-3 py-1 text-white text-uppercase font-weight-bold btnFlter\",attrs:{\"pill\":\"\",\"variant\":\"warning\",\"type\":\"button\",\"id\":\"popover-button-sync\"}},[_c('b-icon',{staticClass:\"mr-2 font-weight-bold\",attrs:{\"icon\":\"sliders\"}}),_vm._v(\" \"+_vm._s(_vm.$t('customer_support_filters'))+\" \")],1),_c('b-popover',{attrs:{\"show\":_vm.showFilterPopover,\"placement\":\"topleft\",\"target\":\"popover-button-sync\",\"title\":\"Filter\",\"triggers\":\"click\"},on:{\"update:show\":function($event){_vm.showFilterPopover=$event}}},[_c('div',{staticClass:\"filterPopUp\"},[_c('b-form-group',{attrs:{\"label\":_vm.$t('customer_support_payment_status')}},[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.payment_statuses,\"value-field\":\"value\",\"text-field\":\"label\",\"switches\":\"\",\"stacked\":\"\"},model:{value:(_vm.filters.payment_status),callback:function ($$v) {_vm.$set(_vm.filters, \"payment_status\", $$v)},expression:\"filters.payment_status\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\",attrs:{\"label\":_vm.$t('report_date_range_start')}},[_c('date-picker',{model:{value:(_vm.filters.date_start),callback:function ($$v) {_vm.$set(_vm.filters, \"date_start\", $$v)},expression:\"filters.date_start\"}})],1)],1),_c('b-col',[_c('b-form-group',{staticClass:\"mb-0\",attrs:{\"label\":_vm.$t('report_date_range_end')}},[_c('date-picker',{model:{value:(_vm.filters.date_end),callback:function ($$v) {_vm.$set(_vm.filters, \"date_end\", $$v)},expression:\"filters.date_end\"}})],1)],1)],1),_c('b-form-group',{staticClass:\"mb-3\",attrs:{\"label\":_vm.$t('customer_support_company')}},[_c('v-select',{attrs:{\"taggable\":\"\",\"multiple\":\"\",\"push-tags\":\"\",\"options\":_vm.companies,\"label\":\"name\"},on:{\"change\":function($event){_vm.filters.event = []}},model:{value:(_vm.filters.company),callback:function ($$v) {_vm.$set(_vm.filters, \"company\", $$v)},expression:\"filters.company\"}})],1),(_vm.events.length)?_c('b-form-group',{staticClass:\"mb-3\",attrs:{\"label\":_vm.$t('customer_support_event')}},[_c('v-select',{attrs:{\"multiple\":\"\",\"push-tags\":\"\",\"options\":_vm.events,\"label\":\"name\"},model:{value:(_vm.filters.event),callback:function ($$v) {_vm.$set(_vm.filters, \"event\", $$v)},expression:\"filters.event\"}})],1):_vm._e(),_c('div',{staticClass:\"text-right\"},[_c('b-button',{staticClass:\"pl-3 pr-3 py-1 font-weight-bold\",attrs:{\"disabled\":_vm.loading,\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.getOrders()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('submit'))+\" \")],1)],1)],1)])],1)])])],1),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',{staticClass:\"font-weight-bold black\",attrs:{\"cols\":\"12\"}},[_vm._v(_vm._s(_vm.$t('customer_support_filters')))]),_c('b-col',[(_vm.filters.company.length)?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('customer_support_company')))]),_vm._l((_vm.filters.company),function(cmp){return _c('span',{key:cmp.id,staticClass:\"mr-1 p-1 bg-gray rounded\"},[_vm._v(_vm._s(cmp.name))])}),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.company = [];_vm.filters.event = [];_vm.getOrders()}}})],2):_vm._e(),(_vm.filters.event.length)?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('customer_support_event')))]),_vm._l((_vm.filters.event),function(evt){return _c('span',{key:evt.id,staticClass:\"mr-1 p-1 bg-gray rounded\"},[_vm._v(_vm._s(evt.name))])}),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.event = [];_vm.getOrders()}}})],2):_vm._e(),(_vm.filters.date_start)?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('report_date_range_start'))+\":\")]),_c('span',[_vm._v(_vm._s(_vm.filters.date_start))]),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.date_start = null;_vm.getOrders()}}})],1):_vm._e(),(_vm.filters.date_end)?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('report_date_range_end'))+\":\")]),_c('span',[_vm._v(_vm._s(_vm.filters.date_end))]),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.date_end = null;_vm.getOrders()}}})],1):_vm._e(),_vm._l((_vm.filters.payment_status),function(status,index){return _c('p',{key:index,staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('order_status_' + status))+\":\")]),_c('span',[_vm._v(_vm._s(_vm.$t('yes')))]),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.7\"},on:{\"click\":function($event){_vm.filters.payment_status.splice(index, 1);_vm.getOrders()}}})],1)}),(_vm.filters.box_office === true || _vm.filters.box_office === 'true')?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('order_overview_box_office'))+\":\")]),_c('span',[_vm._v(_vm._s(_vm.$t('yes')))]),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.box_office = null;_vm.getOrders()}}})],1):_vm._e(),(_vm.filters.is_expired === true || _vm.filters.is_expired === 'true')?_c('p',{staticClass:\"filters-tag\"},[_c('span',{staticClass:\"font-weight-bold mr-1\"},[_vm._v(_vm._s(_vm.$t('pos_product_expired'))+\":\")]),_c('span',[_vm._v(_vm._s(_vm.$t('yes')))]),_c('b-icon',{staticClass:\"cursor-pointer ml-2\",attrs:{\"icon\":\"x\",\"scale\":\"1.5\"},on:{\"click\":function($event){_vm.filters.is_expired = null;_vm.getOrders()}}})],1):_vm._e()],2)],1),_c('b-row',{staticClass:\"mt-2 filterTable\"},[(_vm.orders.length)?_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{attrs:{\"items\":_vm.orders,\"fields\":_vm.fields,\"sort-by\":_vm.filters.sortBy,\"sort-desc\":_vm.filters.sortDesc,\"no-local-sorting\":true},on:{\"update:sortBy\":function($event){return _vm.$set(_vm.filters, \"sortBy\", $event)},\"update:sort-by\":function($event){return _vm.$set(_vm.filters, \"sortBy\", $event)},\"update:sortDesc\":function($event){return _vm.$set(_vm.filters, \"sortDesc\", $event)},\"update:sort-desc\":function($event){return _vm.$set(_vm.filters, \"sortDesc\", $event)}},scopedSlots:_vm._u([{key:\"cell(date)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.formatDate(item.created_at))+\" \")]}},{key:\"cell(payment_status)\",fn:function({item}){return [(item.is_refunded)?_c('b-badge',{attrs:{\"variant\":\"warning\"}},[_vm._v(_vm._s(_vm.$t('order_is_refunded')))]):(item.payment_status === 'paid')?_c('b-badge',{attrs:{\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('order_status_paid')))]):(item.payment_status === 'new')?_c('b-badge',{attrs:{\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t('order_status_new')))]):_c('b-badge',{attrs:{\"variant\":\"secondary\"}},[_vm._v(_vm._s(_vm.$t('order_status_pending')))])]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('order_detail_view'))?_c('b-button',{attrs:{\"variant\":\"row-edit\",\"to\":{name: 'OrderDetails', params:{id: item.id, order_number: item.order_number}}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_details'))+\" \")]):_vm._e()]}}],null,false,83761203)})],1):_c('b-col',{staticClass:\"text-center\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('no_data_to_show')))])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <label class=\"d-block mb-0 black\">{{ $t('customer_support_free_search') }}</label>\n <b-row>\n <b-col cols=\"12\" md=\"12\" lg=\"8\" xl=\"9\" class=\"font-weight-bold\">\n <b-input-group class=\"free-search mt-1 mb-3 mb-lg-0\">\n <template #append>\n <b-input-group-text class=\"cursor-pointer\" @click=\"getOrders\">\n <b-icon icon=\"search\" color=\"#b3b3b3\"></b-icon>\n </b-input-group-text>\n </template>\n <b-form-input v-model=\"filters.search\" @keyup.enter=\"getOrders\" :placeholder=\"$t('customer_support_search')\"></b-form-input>\n </b-input-group>\n </b-col>\n <b-col cols=\"12\" md=\"12\" lg=\"4\" xl=\"3\" class=\"flexing\">\n <div class=\"alignCenter btnReset\">\n <div class=\"font-weight-bold black\">\n <span class=\"cursor-pointer block\" @click=\"resetFilters\">{{ $t('customer_support_reset_filter') }} <b-icon icon=\"x\" scale=\"1.5\"\n class=\"font-weight-bold \"></b-icon></span>\n </div>\n \n <div class=\"text-right\">\n <b-button class=\"pl-3 pr-3 py-1 text-white text-uppercase font-weight-bold btnFlter\" pill variant=\"warning\" type=\"button\"\n id=\"popover-button-sync\">\n <b-icon icon=\"sliders\" class=\"mr-2 font-weight-bold\"></b-icon> {{ $t('customer_support_filters') }}\n </b-button>\n <b-popover :show.sync=\"showFilterPopover\" placement=\"topleft\" target=\"popover-button-sync\" title=\"Filter\" triggers=\"click\" >\n <div class=\"filterPopUp\">\n <b-form-group\n :label=\"$t('customer_support_payment_status')\">\n <b-form-checkbox-group\n v-model=\"filters.payment_status\"\n :options=\"payment_statuses\"\n value-field=\"value\"\n text-field=\"label\"\n switches\n stacked\n ></b-form-checkbox-group>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('report_date_range_start')\" class=\"mb-0\">\n <date-picker v-model=\"filters.date_start\"></date-picker>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('report_date_range_end')\" class=\"mb-0\">\n <date-picker v-model=\"filters.date_end\"></date-picker>\n </b-form-group>\n </b-col>\n </b-row>\n <b-form-group class=\"mb-3\" :label=\"$t('customer_support_company')\">\n <v-select taggable multiple push-tags v-model=\"filters.company\" :options=\"companies\" label=\"name\"\n @change=\"filters.event = []\"></v-select>\n </b-form-group>\n\n <b-form-group class=\"mb-3\" v-if=\"events.length\" :label=\"$t('customer_support_event')\">\n <v-select multiple push-tags v-model=\"filters.event\" :options=\"events\" label=\"name\"></v-select>\n </b-form-group >\n \n <div class=\"text-right\">\n <b-button :disabled=\"loading\" @click=\"getOrders()\" variant=\"warning\" class=\"pl-3 pr-3 py-1 font-weight-bold\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('submit') }}\n </b-button>\n </div>\n </div>\n </b-popover>\n \n </div> </div>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\">\n <b-col cols=\"12\" class=\"font-weight-bold black\">{{ $t('customer_support_filters') }}</b-col>\n <b-col>\n <p v-if=\"filters.company.length\" class=\"filters-tag \">\n <span class=\"font-weight-bold mr-1\">{{ $t('customer_support_company') }}</span>\n <span class=\"mr-1 p-1 bg-gray rounded\" v-for=\"cmp in filters.company\" :key=\"cmp.id\">{{ cmp.name }}</span>\n <b-icon @click=\"filters.company = [];filters.event = [];getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\"\n scale=\"1.5\"></b-icon>\n </p>\n <p v-if=\"filters.event.length\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('customer_support_event') }}</span>\n <span class=\"mr-1 p-1 bg-gray rounded\" v-for=\"evt in filters.event\" :key=\"evt.id\">{{ evt.name }}</span>\n <b-icon @click=\"filters.event = [];getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\" scale=\"1.5\"></b-icon>\n </p>\n <p v-if=\"filters.date_start\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('report_date_range_start') }}:</span>\n <span>{{ filters.date_start }}</span>\n <b-icon @click=\"filters.date_start = null;getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\" scale=\"1.5\"></b-icon>\n </p>\n <p v-if=\"filters.date_end\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('report_date_range_end') }}:</span>\n <span>{{ filters.date_end }}</span>\n <b-icon @click=\"filters.date_end = null;getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\" scale=\"1.5\"></b-icon>\n </p>\n <p v-for=\"(status, index) in filters.payment_status\" :key=\"index\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('order_status_' + status) }}:</span>\n <span>{{ $t('yes') }}</span>\n <b-icon @click=\"filters.payment_status.splice(index, 1);getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\"\n scale=\"1.7\"></b-icon>\n </p>\n <p v-if=\"filters.box_office === true || filters.box_office === 'true'\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('order_overview_box_office') }}:</span>\n <span>{{ $t('yes') }}</span>\n <b-icon @click=\"filters.box_office = null;getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\" scale=\"1.5\"></b-icon>\n </p>\n <p v-if=\"filters.is_expired === true || filters.is_expired === 'true'\" class=\"filters-tag\">\n <span class=\"font-weight-bold mr-1\">{{ $t('pos_product_expired') }}:</span>\n <span>{{ $t('yes') }}</span>\n <b-icon @click=\"filters.is_expired = null;getOrders()\" class=\"cursor-pointer ml-2\" icon=\"x\" scale=\"1.5\"></b-icon>\n </p>\n </b-col>\n </b-row>\n\n <b-row class=\"mt-2 filterTable\">\n <b-col v-if=\"orders.length\" class=\"tableBig \">\n <b-table \n :items=\"orders\"\n :fields=\"fields\"\n :sort-by.sync=\"filters.sortBy\"\n :sort-desc.sync=\"filters.sortDesc\"\n :no-local-sorting=\"true\">\n <template #cell(date)=\"{item}\" >\n {{ formatDate(item.created_at) }}\n </template>\n <template #cell(payment_status)=\"{item}\">\n <b-badge variant=\"warning\" v-if=\"item.is_refunded\">{{ $t('order_is_refunded') }}</b-badge>\n <b-badge v-else-if=\"item.payment_status === 'paid'\" variant=\"success\">{{ $t('order_status_paid') }}</b-badge>\n <b-badge v-else-if=\"item.payment_status === 'new'\" variant=\"danger\">{{ $t('order_status_new') }}</b-badge>\n <b-badge v-else variant=\"secondary\">{{ $t('order_status_pending') }}</b-badge>\n </template>\n <template #cell(actions)=\"{item}\">\n <b-button v-if=\"$can('order_detail_view')\" variant=\"row-edit\"\n :to=\"{name: 'OrderDetails', params:{id: item.id, order_number: item.order_number}}\">\n {{ $t('order_details') }}\n </b-button>\n </template>\n </b-table>\n </b-col>\n <b-col v-else class=\"text-center\">\n <h1>{{ $t('no_data_to_show') }}</h1>\n </b-col>\n </b-row>\n </div>\n\n</template>\n\n<script>\nimport api from \"@/api\";\nimport moment from \"moment\";\nimport DatePicker from \"@/components/DatePicker\";\n\nexport default {\n name: \"CustomerSupportOverview\",\n data() {\n return {\n fields: [\n { key: 'order_number', label: this.$t('order_number'), sortable: true },\n { key: 'customer_name', label: this.$t('order_full_name'), sortable: true },\n { key: 'company_name', label: this.$t('customer_company_name'), sortable: true },\n { key: 'event_name', label: this.$t('event_name'), sortable: true },\n { key: 'date', label: this.$t('timeslot_date'), sortable: true },\n { key: 'payment_status', label: this.$t('customer_support_payment_status').replaceAll(':', ''), sortable: true },\n { key: 'actions', label: this.$t('order_actions'), sortable: false}\n ],\n showFilterPopover: false,\n loading: false,\n companies: [],\n filters: {\n company: [],\n event: [],\n payment_status: [],\n search: null,\n date_start: null,\n date_end: null,\n sortBy: null,\n sortDesc: false,\n box_office: null,\n is_expired: null,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone\n },\n orders: [],\n payment_statuses: [\n {\n value: 'new',\n label: this.$t('order_status_new')\n },\n {\n value: 'pending',\n label: this.$t('order_status_pending')\n },\n {\n value: 'paid',\n label: this.$t('order_status_paid')\n }\n ]\n }\n },\n mounted() {\n if(this.$store.state.user) {\n if(!this.$can('customer_support_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n return api.customerSupport().dependencies().then(response => {\n this.companies = response.companies;\n })\n },\n methods: {\n resetFilters() {\n this.filters = {\n company: [],\n event: [],\n payment_status: [],\n search: null,\n date_start: null,\n date_end: null,\n sortBy: null,\n sortDesc: false,\n box_office: null,\n is_expired: null,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone\n };\n this.orders = [];\n },\n getOrders() {\n if(this.loading) {\n return;\n }\n if(!this.isFiltersValid()) {\n this.orders = [];\n return;\n }\n this.loading = true;\n api.customerSupport().orders(this.filters).then(response => {\n this.orders = response.map(order => {\n return Object.assign(order, {is_refunded: order.order_products.filter(p => p.refunded_at === null).length === 0})\n })\n this.showFilterPopover = false;\n this.loading = false;\n })\n },\n formatDate(date) {\n return moment(date).format('DD-MM-YYYY HH:mm')\n },\n isFiltersValid() {\n return (this.filters.company.length ||\n this.filters.event.length ||\n this.filters.payment_status.length ||\n this.filters.box_office !== null ||\n this.filters.is_expired !== null ||\n (this.filters.search && this.filters.search.length));\n\n }\n },\n watch: {\n 'filters.sortBy'() {\n this.getOrders();\n },\n 'filters.sortDesc'() {\n this.getOrders();\n },\n filters: {\n deep: true,\n handler() {\n // this.getOrders();\n }\n },\n '$store.state.user': {\n handler() {\n if(!this.$can('customer_support_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n { key: 'order_number', label: this.$t('order_number'), sortable: true },\n { key: 'customer_name', label: this.$t('order_full_name'), sortable: true },\n { key: 'company_name', label: this.$t('customer_company_name'), sortable: true },\n { key: 'event_name', label: this.$t('event_name'), sortable: true },\n { key: 'date', label: this.$t('timeslot_date'), sortable: true },\n { key: 'payment_status', label: this.$t('customer_support_payment_status').replaceAll(':', ''), sortable: true },\n { key: 'actions', label: this.$t('order_actions'), sortable: false}\n ]\n }\n }\n },\n computed: {\n events() {\n let events = [];\n if(this.filters.company.length) {\n for(const company of this.filters.company) {\n events = events.concat(company.events);\n }\n return events;\n }\n if(!this.companies.length) {\n return [];\n }\n\n for(const company of this.companies) {\n events = events.concat(company.events);\n }\n return events;\n }\n },\n components: {\n DatePicker\n },\n}\n</script>\n\n<style scoped lang=\"scss\">\n\n.bg-gray {\n background-color: #d7d7d7;\n}\n.DateRange {\n display: flex !important;\n justify-content: space-between;\n}\n.DateRange >div{\n width: 48%;\n}\n.badge{\n min-width: 70px;\n}\n.filterPopUp{\n width: 100%;\n}\n.popover.b-popover{\n padding-top: 10px;\n width: 350px;\n max-width: 350px;\n border: 3px solid #193e58;\n}\n.flexing{\n display: flex;\n align-items: center;\n}\n\n.alignCenter{\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n.cursor-pointer {\n cursor: pointer;\n}\n.btnFlter{\n font-size: 15px;\n}\n.btnReset{\n font-size: 13px;\n}\np,span,h1,h2,h3,h4,.black{\n color: #505050!important;\n}\n\n.filters-tag {\n font-size: 13px;\n display: inline-block;\n border: 1px solid #193e58;\n padding: 3px 15px 3px 9px;\n border-radius: 90px;\n margin-right:.7rem;\n margin-bottom:.7rem;\n color: #505050!important;\n span:last-of-type{\n color: #193e58!important;\n }\n span:first-of-type{\n color: #505050!important;\n }\n}\n.badge {\n color: #ffffff !important;\n}\n\n.free-search {\n max-width: 300px;\n border-radius:5px;\n .input-group-text {\n background-color: #ffffff;\n border: 2px solid #EEEEEE;\n border-left: 0;\n height: 50px;\n border-radius:5px;\n }\n\n input.form-control {\n border-right: 0;\n\n }\n input.form-control::placeholder{\n color: #b3b3b3;\n }\n}\n@media (max-width:992px) {\n .free-search {\n width: 100%;\n max-width: unset;\n }\n}\n@media (max-width:500px) {\n .popover.b-popover{\n width: 250px;\n max-width: 250px;\n}\n.DateRange {\n display: block!important;\n}\n.DateRange >div{\n width: 99%;\n}\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerSupportOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CustomerSupportOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CustomerSupportOverview.vue?vue&type=template&id=4b51ffd4&scoped=true\"\nimport script from \"./CustomerSupportOverview.vue?vue&type=script&lang=js\"\nexport * from \"./CustomerSupportOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./CustomerSupportOverview.vue?vue&type=style&index=0&id=4b51ffd4&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4b51ffd4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"login\"}},[_c('b-row',{attrs:{\"align-v\":\"center\"}},[_c('div',{attrs:{\"id\":\"login-wrap\"}},[_c('div',{staticClass:\"p-3\"},[_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/logo-light.png')}})],1),_c('b-alert',{attrs:{\"variant\":\"danger\",\"show\":_vm.error}},[_vm._v(\" \"+_vm._s(_vm.$t('login_error'))+\" \")]),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_email'),\"type\":\"text\"},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}})],1),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_password'),\"type\":\"password\"},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.login()}},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('b-form-group',[(!_vm.loading)?_c('b-button',{staticClass:\"float-right\",attrs:{\"block\":\"\",\"variant\":\"primary\"},on:{\"click\":_vm.login}},[_vm._v(_vm._s(_vm.$t('login_button')))]):_c('b-spinner')],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default class ScannerTerminalUser {\n\n constructor(axios) {\n this.axios = axios\n }\n\n login(username, password) {\n return this.axios.post('/scanner-terminal/login', {username, password})\n }\n\n me() {\n return this.axios.get('/scanner-terminal/user')\n }\n}\n","export default class ScannerTerminalScan {\n\n constructor(axios) {\n this.axios = axios\n }\n\n scan( event, payload ){\n let id = payload.id\n let secret = payload.secret\n\n return this.axios.post('/scanner-terminal/' + event + '/scan/ticket', {id, secret})\n }\n\n tickets(event, page, search) {\n return this.axios.get('/scanner-terminal/' + event + '/tickets', {\n params: {\n page,\n search\n }\n });\n }\n\n stats(event) {\n return this.axios.get('/scanner-terminal/' + event + '/stats');\n }\n}\n","import axios from \"axios\";\nimport store from \"@/store\";\nimport ScannerTerminalUser from \"@/api/scannerTerminalUser\";\nimport ScannerTerminalScan from \"@/api/scannerTerminalScan\";\n\nconst HttpClient = axios.create({});\n\nif (window.location.host === 'localhost:8080') {\n // Local development environment\n HttpClient.defaults.baseURL = 'http://api.fairtix.local'\n} else if (window.location.host === 'frontend.staging.fairtix.io') {\n // Test environment Staging (staging-ft)\n HttpClient.defaults.baseURL = 'https://api.staging.fairtix.io'\n} else {\n HttpClient.defaults.baseURL = 'https://api.fairtix.io'\n}\n\nHttpClient.interceptors.request.use((config) => {\n let token = localStorage.getItem('scanner_terminal_token');\n if (token) {\n config.headers['Authorization'] = 'Bearer ' + token\n }\n return config\n}, (error) => {\n // Do something with request error\n document.location = '/'\n return Promise.reject(error)\n})\n\nHttpClient.interceptors.response.use((response) => {\n return response.data\n}, (error) => {\n // Do something with response error\n if (error.response.status === 401) {\n store.commit('scannerTerminalLogout')\n }\n if (error.response.status === 400) {\n store.commit('errors', error.response.data)\n }\n return Promise.reject(error)\n})\n\nconst user = () => {\n return new ScannerTerminalUser(HttpClient);\n}\nconst scan = () => {\n return new ScannerTerminalScan(HttpClient);\n}\n\nexport default {\n user,\n scan\n}\n","<template>\n <div id=\"login\">\n <b-row align-v=\"center\">\n <div id=\"login-wrap\">\n <div class=\"p-3\">\n <b-img class=\"logo\" :src=\"require('../assets/logo-light.png')\"></b-img>\n </div>\n <b-alert variant=\"danger\" :show=\"error\">\n {{ $t('login_error') }}\n </b-alert>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_email')\" type=\"text\" v-model=\"username\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_password')\" type=\"password\" @keyup.enter=\"login()\" v-model=\"password\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-button block class=\"float-right\" variant=\"primary\" @click=\"login\" v-if=\"!loading\">{{ $t('login_button') }}</b-button>\n <b-spinner v-else></b-spinner>\n </b-form-group>\n </div>\n </b-row>\n </div>\n</template>\n<script>\nimport api from '../api/scannerTerminalApi'\nimport {mapState, mapActions} from 'vuex'\n\nexport default {\n name: 'Login',\n data() {\n return {\n username: '',\n password: '',\n loading: false,\n error: false\n }\n },\n computed: {\n ...mapState(['scannerTerminalUser'])\n },\n created() {\n document.title = this.$t('backend_title_login')\n if (localStorage.getItem('scanner_terminal_token')) {\n this.$router.push({name: 'ScannerTerminalEvents'})\n }\n },\n methods: {\n login() {\n this.loading = true\n this.error = false\n\n // console.log( api.user().login(this.username, this.password) )\n\n api.user().login(this.username, this.password).then(token => {\n localStorage.setItem('scanner_terminal_token', token)\n this.loadScannerTerminalUser()\n this.$router.push({name: 'ScannerTerminalEvents'})\n console.log('Login success')\n }).catch(() => {\n this.error = true\n }).finally(() => {\n this.loading = false\n })\n },\n ...mapActions(['loadScannerTerminalUser'])\n }\n}\n</script>\n<style @scoped lang=\"scss\">\n #login, #login > .row {\n height: 100%;\n }\n #login-wrap {\n background: #193E58;\n padding: 50px;\n legend {\n color:white;\n }\n img {\n max-width: 100%;\n }\n }\n\n#login-wrap {\n margin: auto;\n}\n\n@media only screen and (max-width: 700px) {\n #login-wrap {\n width: 90%;\n }\n}\n\n@media only screen and (min-width: 701px) {\n #login-wrap {\n width: 450px;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalLogin.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalLogin.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScannerTerminalLogin.vue?vue&type=template&id=2d47f25b\"\nimport script from \"./ScannerTerminalLogin.vue?vue&type=script&lang=js\"\nexport * from \"./ScannerTerminalLogin.vue?vue&type=script&lang=js\"\nimport style0 from \"./ScannerTerminalLogin.vue?vue&type=style&index=0&id=2d47f25b&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"result\",class:_vm.currBackgroundColor},[_c('b-container',{attrs:{\"fluid\":\"\"}},[_c('div',[(_vm.scannerTerminalUser)?_c('b-row',{staticClass:\"show-top\",attrs:{\"id\":\"scan-terminal-event\"}},[_c('b-col',[_vm._v(_vm._s(_vm.$t('scanner_terminal_event'))+\": \"+_vm._s(_vm.scannerTerminalUser.event_name))])],1):_vm._e(),_c('b-form-group',{staticClass:\"show-top\"},[_c('b-form-input',{ref:\"scanField\",attrs:{\"autocomplete\":\"off\",\"disabled\":_vm.disabledField,\"id\":\"scan-field\",\"debounce\":\"250\"},model:{value:(_vm.scanField),callback:function ($$v) {_vm.scanField=$$v},expression:\"scanField\"}})],1),(_vm.errorMessage)?_c('div',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.$t(_vm.errorMessage)))]):_vm._e()],1),_c('div',{staticClass:\"mt-5\"},[_c('b-row',[_c('b-col',{staticClass:\"text-center\",attrs:{\"cols\":\"12\"}},[_c('h3',{class:_vm.currBackgroundColor + ' font-weight-bold py-2'},[_vm._v(_vm._s(_vm.stats.scanned)+\"/\"+_vm._s(_vm.stats.total))])])],1),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"sm\":\"6\"}},[(_vm.tickets && _vm.tickets.total > _vm.tickets.per_page)?_c('span',{staticClass:\"font-weight-bold d-block mt-2\",class:_vm.currBackgroundColor},[_vm._v(\" \"+_vm._s(_vm.$t('scanner_terminal_showing_of_entries', {per_page: _vm.tickets.per_page, total: _vm.stats.total}))+\" \")]):_vm._e()]),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"12\",\"lg\":\"6\",\"sm\":\"6\"}},[_c('div',{staticClass:\"float-right\"},[_c('b-button',{staticClass:\"btn-filter\",attrs:{\"variant\":\"new\",\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.getTickets(1)}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('scanner_terminal_filter_btn'))+\" \")],1)],1),_c('div',{staticClass:\"float-right mr-2\",staticStyle:{\"width\":\"200px\"}},[_c('b-form-input',{staticClass:\"v-text-field\",attrs:{\"autocomplete\":\"off\",\"debounce\":\"750\",\"placeholder\":_vm.$t('scanner_terminal_search')},on:{\"keyup\":[function($event){_vm.lastScreenAction = new Date()},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.getTickets(1)}]},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1)])],1),(_vm.ticketData.length)?_c('b-table',{staticClass:\"orderTable scanner-terminal-tickets-table mt-3\",attrs:{\"responsive\":\"\",\"fields\":_vm.logsFields,\"items\":_vm.ticketData},scopedSlots:_vm._u([{key:\"cell(product_name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.group_name !== 'event_default_group' ? `${item.group_name} - ` : '')+\" \"+_vm._s(item.product_name)+\" \")]}},{key:\"cell(is_scanned)\",fn:function({item}){return [_c('div',{staticClass:\"text-center\"},[(item.is_scanned)?_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"font-scale\":\"2\",\"variant\":\"success\"}}):_c('b-button',{attrs:{\"disabled\":item.loading},on:{\"click\":function($event){return _vm.checkIn(item)}}},[(item.loading)?_c('b-icon',{attrs:{\"icon\":\"arrow-clockwise\",\"animation\":\"spin\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('scanner_terminal_btn_check_in')))],1)],1)]}}],null,false,2447821118)}):_c('h3',{staticClass:\"text-center\"},[_vm._v(_vm._s(_vm.$t('no_data_to_show')))]),(_vm.tickets)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.tickets},on:{\"pagination-change-page\":_vm.getTickets}}):_vm._e()],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"result\" :class=\"currBackgroundColor\">\n <b-container fluid>\n <div>\n\n <b-row class=\"show-top\" id=\"scan-terminal-event\" v-if=\"scannerTerminalUser\">\n <b-col>{{ $t('scanner_terminal_event') }}: {{ scannerTerminalUser.event_name }}</b-col>\n </b-row>\n\n <b-form-group class=\"show-top\">\n <b-form-input autocomplete=\"off\" :disabled=\"disabledField\" ref=\"scanField\" id=\"scan-field\" v-model=\"scanField\" debounce=\"250\"></b-form-input>\n </b-form-group>\n\n <div class=\"text-center\" v-if=\"errorMessage\">{{ $t(errorMessage) }}</div>\n </div>\n\n <div class=\"mt-5\">\n <b-row>\n <b-col cols=\"12\" class=\"text-center\">\n <h3 :class=\"currBackgroundColor + ' font-weight-bold py-2'\">{{ stats.scanned }}/{{ stats.total }}</h3>\n </b-col>\n </b-row>\n <b-row>\n <b-col cols=\"12\" lg=\"6\" sm=\"6\">\n <span v-if=\"tickets && tickets.total > tickets.per_page\" :class=\"currBackgroundColor\" class=\"font-weight-bold d-block mt-2\">\n {{ $t('scanner_terminal_showing_of_entries', {per_page: tickets.per_page, total: stats.total}) }}\n </span>\n </b-col>\n <b-col cols=\"12\" lg=\"6\" sm=\"6\" class=\"text-right\">\n <div class=\"float-right\"><b-button @click=\"getTickets(1)\" class=\"btn-filter\" variant=\"new\" :disabled=\"loading\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('scanner_terminal_filter_btn') }}\n </b-button></div>\n <div class=\"float-right mr-2\" style=\"width: 200px;\">\n <b-form-input autocomplete=\"off\" class=\"v-text-field\" v-model=\"search\" @keyup=\"lastScreenAction = new Date()\" @keyup.enter=\"getTickets(1)\" debounce=\"750\" :placeholder=\"$t('scanner_terminal_search')\"></b-form-input>\n </div>\n </b-col>\n </b-row>\n <b-table v-if=\"ticketData.length\" class=\"orderTable scanner-terminal-tickets-table mt-3\" responsive :fields=\"logsFields\" :items=\"ticketData\">\n <template v-slot:cell(product_name)=\"{item}\">\n {{ item.group_name !== 'event_default_group' ? `${item.group_name} - ` : '' }} {{ item.product_name }}\n </template>\n <template v-slot:cell(is_scanned)=\"{item}\">\n <div class=\"text-center\">\n <b-icon v-if=\"item.is_scanned\" icon=\"check-circle-fill\" font-scale=\"2\" variant=\"success\"></b-icon>\n <b-button v-else :disabled=\"item.loading\" @click=\"checkIn(item)\"><b-icon v-if=\"item.loading\" icon=\"arrow-clockwise\" animation=\"spin\"></b-icon> {{ $t('scanner_terminal_btn_check_in') }}</b-button>\n </div>\n </template>\n </b-table>\n <h3 v-else class=\"text-center\">{{ $t('no_data_to_show') }}</h3>\n <pagination v-if=\"tickets\" :limit=\"3\" :data=\"tickets\" @pagination-change-page=\"getTickets\"></pagination>\n </div>\n </b-container>\n\n </div>\n</template>\n\n<script>\nimport api from '../api/scannerTerminalApi'\nimport {mapState, mapActions} from 'vuex'\nexport default {\n name: \"ScannerTerminalScan\",\n data() {\n return {\n disabledField: false,\n scanField: null,\n errorMessage:'',\n lastScanResultColor: '',\n currBackgroundColor: '',\n ticketData: [],\n tickets: null,\n logsFields: [\n {key: 'order_number', label: this.$t('order_number')},\n {key: 'secret', label: this.$t('ticket_secret')},\n {key: 'product_name', label: this.$t('report_ticket_type')},\n {key: 'email', label: this.$t('email')},\n {key: 'customer_name', label: this.$t('order_full_name')},\n {key: 'is_scanned', label: this.$t('product_status')},\n ],\n loading: false,\n search: null,\n lastScreenAction: false,\n isScreenActiveInterval: null,\n stats: {\n total: 0,\n scanned: 0,\n toScan: 0\n }\n }\n },\n watch: {\n scanField(newValue) {\n if (newValue.length === 0) {\n return\n }\n this.startScan()\n }\n },\n methods: {\n startScan(){\n\n // Disable new input\n this.disabledField = true\n\n // Check if input is value\n let go = true\n let lastClean = true\n let input = ''\n try {\n input = JSON.parse(this.scanField)\n } catch (e) {\n this.setScanResult(false)\n this.setErrorMessage('Invalid ticket')\n go = false\n }\n\n // If we have the correct values make the API call\n if(go){\n if(input.id && input.secret){\n lastClean = false\n api.scan().scan( this.$route.params.event, input ).then(result => {\n if( result && result['error'] ){\n this.setErrorMessage(result['message'])\n this.setScanResult(false)\n } else {\n this.setScanResult(true)\n this.setErrorMessage('')\n }\n this.allowInput()\n this.cleanField()\n this.loadStats();\n })\n } else {\n this.setScanResult(false)\n this.setErrorMessage('Invalid ticket')\n }\n }\n\n if(lastClean === true){\n this.cleanField()\n this.allowInput()\n }\n },\n allowInput(){\n this.disabledField = false\n this.$nextTick(() => {\n this.$refs.scanField.focus()\n })\n },\n setScanResult(result){\n this.setBackgroundColor(result)\n },\n setErrorMessage(message){\n this.errorMessage = message\n },\n setBackgroundColor(result){\n if(result){\n if(this.lastScanResultColor == '' || this.lastScanResultColor == 'redColorOne' || this.lastScanResultColor == 'redColorTwo' || this.lastScanResultColor == 'greenColorTwo'){\n this.currBackgroundColor = 'greenColorOne'\n this.lastScanResultColor = 'greenColorOne'\n } else if(this.lastScanResultColor == 'greenColorOne'){\n this.currBackgroundColor = 'greenColorTwo'\n this.lastScanResultColor = 'greenColorTwo'\n }\n } else {\n if(this.lastScanResultColor == '' || this.lastScanResultColor == 'greenColorOne' || this.lastScanResultColor == 'greenColorTwo' || this.lastScanResultColor == 'redColorTwo'){\n this.currBackgroundColor = 'redColorOne'\n this.lastScanResultColor = 'redColorOne'\n } else if(this.lastScanResultColor == 'redColorOne'){\n this.currBackgroundColor = 'redColorTwo'\n this.lastScanResultColor = 'redColorTwo'\n }\n }\n },\n cleanField(){\n this.scanField = ''\n document.getElementById('scan-field').value = ''\n },\n setFocus(){\n this.$refs.scanField.focus()\n },\n getTickets(page = 1) {\n this.loading = true;\n api.scan().tickets(this.$route.params.event,page, this.search).then(response => {\n this.ticketData = response.data.map(t => {\n return Object.assign(t, {loading: false})\n });\n this.tickets = response;\n this.loading = false;\n this.setFocus();\n }).catch(() => {\n this.loading = false;\n })\n },\n checkIn(ticket) {\n ticket.loading = true;\n api.scan().scan( this.$route.params.event, {id: ticket.ticket_id, secret: ticket.secret} ).then(result => {\n if( result && result['error'] ){\n this.setBackgroundColor(false);\n this.$store.commit('errors', [result['message']]);\n } else {\n this.setBackgroundColor(true);\n this.$store.commit('success', 'Checked in successfully');\n ticket.is_scanned = true;\n this.getTickets(1)\n }\n this.loadStats();\n this.setFocus();\n ticket.loading = false;\n }).catch(() => {\n ticket.loading = false;\n })\n },\n loadStats() {\n api.scan().stats(this.$route.params.event).then(data => {\n this.stats.total = data.total;\n this.stats.scanned = data.scanned;\n this.stats.toScan = data.to_scan;\n })\n },\n ...mapActions(['loadScannerTerminalUser'])\n },\n computed: {\n ...mapState(['scannerTerminalUser', 'success', 'errors', 'language'])\n },\n mounted() {\n if(!this.$route.params.event) {\n this.$router.push({name: 'ScannerTerminalEvents'})\n return;\n }\n this.loadScannerTerminalUser()\n this.getTickets();\n this.loadStats();\n document.onmouseup = () => {\n this.lastScreenAction = new Date();\n }\n this.isScreenActiveInterval = setInterval(() => {\n if(Math.abs((new Date()) - this.lastScreenAction) > 5000) {\n this.setFocus();\n }\n if(this.$can('scan_terminal_ticket_overview')) {\n this.loadStats();\n }\n }, 5000)\n addEventListener('paste', (event) => {\n this.scanField = (event.clipboardData || window.clipboardData).getData('text').toString();\n });\n },\n destroyed() {\n document.onmousemove = () => {}\n clearInterval(this.isScreenActiveInterval);\n try {\n removeEventListener('paste')\n }\n catch (e) {\n //\n }\n }\n}\n</script>\n\n<style scoped>\n.default-container-layout {\n width: 100%;\n color: #808080;\n font-weight: bold;\n font-size: 18px;\n border: none;\n background-color:#FFF;\n border:0px\n}\nh3{\n font-size:38pt\n}\n.show-top{\n position:relative;\n z-index:1000\n}\n.result {\n padding: 1rem !important;\n min-height: 90vh;\n}\n.result.greenColorOne{\n background-color:#15b000a2\n}\n.result.greenColorTwo{\n background-color:#75ff63a2\n}\n.result.greenColorOne div, .result.greenColorTwo div, .greenColorTwo span, .greenColorOne span, h3.greenColorOne, h3.greenColorTwo{\n color:#FFF;\n}\n.result.redColorOne{\n background-color:#a3003da2\n}\n.result.redColorTwo{\n background-color:#ff96bda2\n}\n.result.redColorOne div, .result.redColorTwo div, .redColorOne span, .redColorTwo span, h3.redColorOne, h3.redColorTwo{\n color:#FFF;\n}\n.btn-filter {\n height: 50px;\n}\ntable.b-table tbody tr:hover {\n background-color: #FFF !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalScan.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalScan.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScannerTerminalScan.vue?vue&type=template&id=35712a8c&scoped=true\"\nimport script from \"./ScannerTerminalScan.vue?vue&type=script&lang=js\"\nexport * from \"./ScannerTerminalScan.vue?vue&type=script&lang=js\"\nimport style0 from \"./ScannerTerminalScan.vue?vue&type=style&index=0&id=35712a8c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"35712a8c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',[_c('b-row',[_c('b-col',{attrs:{\"lg\":\"12\",\"md\":\"12\",\"sm\":\"12\",\"xl\":\"6\"}},[_c('b-card',[_c('b-card-title',{staticClass:\"px-4\"},[_vm._v(_vm._s(_vm.$t('guest_list_add_attendees')))]),_c('b-card-body',[_c('b-row',{staticClass:\"px-4 small\"},[_c('b-col',{staticClass:\"mt-3\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('guest_list_event_name')))]),(!_vm.event || _vm.evenEditMode)?_c('b-form-group',{staticClass:\"mt-2\"},[_c('v-select',{attrs:{\"options\":_vm.events,\"label\":\"name\"},on:{\"input\":_vm.getProducts},model:{value:(_vm.event),callback:function ($$v) {_vm.event=$$v},expression:\"event\"}})],1):_vm._e(),(_vm.event && !_vm.evenEditMode)?_c('div',{staticClass:\"mt-2\"},[_c('span',{staticClass:\"event-name\"},[_vm._v(_vm._s(_vm.event.name)+\" \"),_c('b-icon',{staticClass:\"pointer-cursor ml-2 text-black-50\",attrs:{\"icon\":\"pencil-fill\"},on:{\"click\":function($event){_vm.evenEditMode = true;_vm.event = null;}}})],1)]):_vm._e()],1)],1),(_vm.event)?_c('b-row',{staticClass:\"px-4 mt-2 mb-3\"},[_c('b-col',[_c('b-form-checkbox',{model:{value:(_vm.rememberEvent),callback:function ($$v) {_vm.rememberEvent=$$v},expression:\"rememberEvent\"}},[_vm._v(_vm._s(_vm.$t('guest_list_remember_event')))])],1)],1):_vm._e(),(_vm.event)?_c('div',{staticClass:\"py-3 px-4 small\"},[_c('div',{staticClass:\"customer-form\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('guest_list_customer')))]),_c('b-row',{staticClass:\"mt-2\"},[_c('b-col',{staticClass:\"mb-2\",attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{ref:\"firstNameInp\",attrs:{\"state\":_vm.validation.first_name.state,\"placeholder\":_vm.$t('customer_first_name')+'*'},on:{\"input\":function($event){return _vm.validateCustomerForm('first_name')}},model:{value:(_vm.customer.first_name),callback:function ($$v) {_vm.$set(_vm.customer, \"first_name\", $$v)},expression:\"customer.first_name\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.validation.first_name.state}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.validation.first_name.message))+\" \")])],1),_c('b-col',{staticClass:\"mb-2\",attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{attrs:{\"state\":_vm.validation.last_name.state,\"placeholder\":_vm.$t('customer_last_name')+'*'},on:{\"input\":function($event){return _vm.validateCustomerForm('last_name')}},model:{value:(_vm.customer.last_name),callback:function ($$v) {_vm.$set(_vm.customer, \"last_name\", $$v)},expression:\"customer.last_name\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.validation.last_name.state}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.validation.last_name.message))+\" \")])],1)],1),_c('b-row',[_c('b-col',[_c('b-form-input',{attrs:{\"state\":_vm.validation.email.state,\"type\":\"email\",\"placeholder\":_vm.$t('email')+'*'},on:{\"input\":function($event){return _vm.validateCustomerForm('email')}},model:{value:(_vm.customer.email),callback:function ($$v) {_vm.$set(_vm.customer, \"email\", $$v)},expression:\"customer.email\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.validation.email.state}},[_vm._v(\" \"+_vm._s(_vm.$t(_vm.validation.email.message))+\" \")])],1)],1)],1)]):_vm._e(),(_vm.event)?_c('div',{staticClass:\"px-4 my-4\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('guest_list_select_products')))]),_c('b-row',{staticClass:\"mt-4 border-bottom pb-2\"},[_c('b-col',{staticClass:\"font-weight-bold d-flex align-items-center sub-title\",attrs:{\"sm\":\"12\",\"md\":\"5\",\"xl\":\"6\"}},[_vm._v(_vm._s(_vm.$t('guest_list_ticket_type')))]),_c('b-col',{staticClass:\"font-weight-bold text-right d-flex align-items-center sub-title justify-content-start justify-content-xl-end\",attrs:{\"sm\":\"12\",\"md\":\"3\",\"xl\":\"2\"}},[_vm._v(_vm._s(_vm.$t('guest_list_price')))]),_c('b-col',{staticClass:\"font-weight-bold text-center d-flex align-items-center sub-title justify-content-end\",attrs:{\"sm\":\"12\",\"md\":\"4\",\"xl\":\"4\"}},[_vm._v(_vm._s(_vm.$t('guest_list_number')))])],1),_vm._l((_vm.groups),function(group){return _c('div',{key:group.name},[(group.name !== 'event_default_group')?_c('label',{staticClass:\"group-label d-block pl-3 pr-3 mb-0 font-weight-bold\"},[_vm._v(_vm._s(group.name))]):_vm._e(),_vm._l((group.products),function(product){return _c('b-row',{key:product.id,staticClass:\"py-2 border-bottom items\"},[_c('b-col',{staticClass:\"d-flex align-items-center\",class:{'pl-5': group.name !== 'event_default_group'},attrs:{\"sm\":\"12\",\"md\":\"5\",\"xl\":\"6\"}},[_vm._v(_vm._s(product.name))]),_c('b-col',{staticClass:\"text-right d-flex align-items-center justify-content-start justify-content-xl-end\",attrs:{\"sm\":\"12\",\"md\":\"3\",\"xl\":\"2\"}},[_vm._v(_vm._s(_vm._f(\"currency\")(product.price)))]),_c('b-col',{staticClass:\"text-center d-flex align-items-center justify-content-end\",attrs:{\"sm\":\"12\",\"md\":\"4\",\"xl\":\"4\"}},[(product.current_stock !== 0)?_c('NumberInput',{attrs:{\"min\":0,\"max\":product.current_stock,\"state\":parseInt(product.amount) > product.current_stock ? false : null},model:{value:(product.amount),callback:function ($$v) {_vm.$set(product, \"amount\", $$v)},expression:\"product.amount\"}}):_c('span',{staticClass:\"text-danger d-block\"},[_vm._v(_vm._s(_vm.$t('pos_product_sold_out')))])],1),(parseInt(product.amount) > product.current_stock)?_c('b-col',{staticClass:\"d-flex justify-content-end\",attrs:{\"cols\":\"12\"}},[_c('span',{staticClass:\"text-danger small\"},[_vm._v(_vm._s(_vm.$t('pos_only_available_x', {amount: product.current_stock})))])]):_vm._e()],1)})],2)}),_c('b-row',{staticClass:\"py-4 d-block d-lg-flex\"},[_c('b-col',{staticClass:\"text-md-right total\",attrs:{\"cols\":\"12\"}},[_c('span',{staticClass:\"font-weight-bold mr-4 mb-2 d-block d-md-inline\"},[_vm._v(_vm._s(_vm.$t('guest_list_total_worth'))+\" \"+_vm._s(_vm._f(\"currency\")(_vm.total)))]),_vm._v(\" \"),_c('span',{staticClass:\"font-weight-bold\"},[_vm._v(_vm._s(_vm.$t('guest_list_total_items'))+\" \"+_vm._s(_vm.itemsCount))])])],1),_c('b-row',{staticClass:\"border-bottom\"}),_c('div',{staticClass:\"mt-5\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('guest_list_what_next')))]),_c('div',[(!_vm.isPersonalized)?_c('b-button',{staticClass:\"mt-2 mr-3 btn-option\",class:{'btn-outline': _vm.toDoNext !== 'send_all_tickets_to_order_owner', 'btn-primary': _vm.toDoNext === 'send_all_tickets_to_order_owner'},on:{\"click\":function($event){return _vm.updateTodo('send_all_tickets_to_order_owner')}}},[_vm._v(\" \"+_vm._s(_vm.$t('guest_list_send_to_email', {email: _vm.customer.email}))+\" \")]):_vm._e(),(_vm.isPersonalized)?_c('b-button',{staticClass:\"mt-2 mr-3 btn-option\",class:{'btn-outline': _vm.toDoNext !== 'send_invite_to_claim_tickets', 'btn-primary': _vm.toDoNext === 'send_invite_to_claim_tickets'},on:{\"click\":function($event){return _vm.updateTodo('send_invite_to_claim_tickets')}}},[_vm._v(\" \"+_vm._s(_vm.$t('guest_list_send_invitation_to_sign'))+\" \")]):_vm._e(),_c('b-button',{staticClass:\"mt-2 btn-option\",class:{'btn-outline': _vm.toDoNext !== 'send_payment_link', 'btn-primary': _vm.toDoNext === 'send_payment_link'},on:{\"click\":function($event){return _vm.updateTodo('send_payment_link')}}},[_vm._v(\" \"+_vm._s(_vm.$t('guest_list_send_payment_request', {email: _vm.customer.email}))+\" \")])],1)]),(_vm.toDoNext !== 'send_payment_link')?_c('div',{staticClass:\"mt-4\"},[_c('span',{staticClass:\"title\"},[_vm._v(_vm._s(_vm.$t('guest_list_select_payment')))]),_c('div',[_c('b-button',{staticClass:\"mr-3 mt-2 btn-option\",class:{'btn-outline': _vm.payment !== 'no_payment', 'btn-primary': _vm.payment === 'no_payment'},on:{\"click\":function($event){_vm.payment = 'no_payment'}}},[_vm._v(_vm._s(_vm.$t('guest_list_select_payment_free')))]),_c('b-button',{staticClass:\"btn-primary mt-2 btn-option\",class:{'btn-outline': _vm.payment !== 'paid_cash', 'btn-primary': _vm.payment === 'paid_cash'},on:{\"click\":function($event){_vm.payment = 'paid_cash'}}},[_vm._v(_vm._s(_vm.$t('guest_list_select_payment_paid')))])],1)]):_vm._e(),_c('b-form-group',{staticClass:\"mt-5 float-right text-right\"},[(!_vm.loading && !_vm.isDone)?_c('b-button',{staticClass:\"btn-primary\",attrs:{\"disabled\":_vm.itemsCount === 0 || _vm.moreThanStock || !_vm.customer.first_name || !_vm.customer.last_name || !_vm.customer.email},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t('guest_list_send'))+\" \")]):_vm._e(),(!_vm.isDone && !_vm.itemsCount)?_c('span',{staticClass:\"text-danger d-block mt-2\"},[_vm._v(_vm._s(_vm.$t('guest_list_choose_tickets_to_send')))]):_vm._e(),(!_vm.isDone && (!_vm.customer.first_name || !_vm.customer.last_name || !_vm.customer.email))?_c('span',{staticClass:\"text-danger d-block mt-2\"},[_vm._v(_vm._s(_vm.$t('guest_list_not_all_customer_details_filled')))]):_vm._e(),(_vm.loading)?_c('b-icon',{attrs:{\"icon\":\"arrow-clockwise\",\"animation\":\"spin\",\"font-scale\":\"4\"}}):_vm._e(),(_vm.loading)?_c('span',{staticClass:\"title d-block\"},[_vm._v(\" \"+_vm._s(_vm.toDoNext === 'send_payment_link' ? _vm.$t('guest_list_payment_link_send') : _vm.$t('guest_list_order_ticket_generated')))]):_vm._e(),(_vm.isDone)?_c('span',{staticClass:\"title d-block\"},[_vm._v(_vm._s(_vm.toDoNext === 'send_payment_link' ? _vm.$t('guest_list_payment_link_send') : _vm.$t('guest_list_order_ticket_send_successfully')))]):_vm._e()],1)],2):_vm._e()],1)],1)],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"submit-order-success\",\"hide-footer\":\"\",\"hide-header\":\"\",\"size\":\"size-lg\"}},[_c('div',{staticClass:\"py-5\"},[_c('div',{staticClass:\"py-4 text-center\"},[_c('b-icon',{staticStyle:{\"color\":\"#0b9f39\"},attrs:{\"icon\":\"check-circle\",\"font-scale\":\"7\"}})],1),_c('div',{staticClass:\"text-center px-5\"},[_c('h3',{staticClass:\"my-3 font-weight-bold title\"},[_vm._v(_vm._s(_vm.$t('guest_list_order_saved_successfully')))]),_c('p',[_vm._v(_vm._s(_vm.$t('guest_list_order_saved_successfully_desc')))])])])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"number-input\"},[_c('button',{on:{\"click\":_vm.subtract}},[_vm._v(\"-\")]),_c('input',{class:{'is-invalid': _vm.state === false},attrs:{\"type\":\"number\"},domProps:{\"value\":_vm.value},on:{\"input\":function($event){return _vm.updateNumber($event.target.value)}}}),_c('button',{on:{\"click\":_vm.add}},[_vm._v(\"+\")])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"number-input\">\n <button @click=\"subtract\">-</button>\n <input type=\"number\" :value=\"value\" @input=\"updateNumber($event.target.value)\" :class=\"{'is-invalid': state === false}\">\n <button @click=\"add\">+</button>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"NumberInput\",\n props: ['min', 'max', 'value', 'state'],\n methods: {\n add() {\n let value = this.value + 1;\n if(this.max !== null && value > this.max) {\n value = this.max;\n }\n this.$emit('input', value)\n },\n subtract() {\n let value = this.value - 1;\n if(this.min !== null && value < this.min) {\n value = this.min;\n }\n this.$emit('input', value)\n },\n updateNumber(value) {\n if(!value){\n value = 0;\n }\n value = parseInt(value);\n this.$emit('input', value)\n }\n }\n}\n</script>\n\n<style scoped>\n.number-input {\n width: 132px;\n}\n.number-input button {\n -webkit-appearance: none;\n transition: background 0.5s ease;\n background: #193E58;\n border: 0;\n color: #fff;\n cursor: pointer;\n float: left;\n font-size: 20px;\n height: 40px;\n margin: 0;\n width: 40px;\n}\n\n.number-input input {\n -webkit-appearance: none !important;\n border: 1px solid #ebebeb;\n float: left;\n font-size: 16px;\n height: 40px;\n margin: 0;\n outline: none;\n text-align: center;\n width: calc(100% - 80px);\n overflow: visible;\n}\n\n.number-input input::-webkit-outer-spin-button, .number-input input::-webkit-inner-spin-button {\n -webkit-appearance: none !important;\n margin: 0;\n}\n\n.number-input input.is-invalid {\n border-color: #dc3545;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NumberInput.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NumberInput.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./NumberInput.vue?vue&type=template&id=2d1a17ac&scoped=true\"\nimport script from \"./NumberInput.vue?vue&type=script&lang=js\"\nexport * from \"./NumberInput.vue?vue&type=script&lang=js\"\nimport style0 from \"./NumberInput.vue?vue&type=style&index=0&id=2d1a17ac&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2d1a17ac\",\n null\n \n)\n\nexport default component.exports","<template>\n<div>\n <div>\n <b-row>\n <b-col lg=\"12\" md=\"12\" sm=\"12\" xl=\"6\">\n <b-card >\n <b-card-title class=\"px-4\">{{ $t('guest_list_add_attendees') }}</b-card-title>\n <b-card-body>\n <b-row class=\"px-4 small\">\n <b-col class=\"mt-3\">\n <span class=\"title\">{{ $t('guest_list_event_name') }}</span>\n <b-form-group v-if=\"!event || evenEditMode\" class=\"mt-2\">\n <v-select v-model=\"event\" :options=\"events\" label=\"name\" @input=\"getProducts\"></v-select>\n </b-form-group >\n <div v-if=\"event && !evenEditMode\" class=\"mt-2\"><span class=\"event-name\">{{ event.name }} <b-icon @click=\"evenEditMode = true;event = null;\" class=\"pointer-cursor ml-2 text-black-50\" icon=\"pencil-fill\" /></span></div>\n </b-col>\n </b-row>\n <b-row v-if=\"event\" class=\"px-4 mt-2 mb-3\">\n <b-col>\n <b-form-checkbox v-model=\"rememberEvent\">{{ $t('guest_list_remember_event') }}</b-form-checkbox>\n </b-col>\n </b-row>\n\n <div v-if=\"event\" class=\"py-3 px-4 small\">\n <div class=\"customer-form\">\n <span class=\"title\">{{ $t('guest_list_customer') }}</span>\n <b-row class=\"mt-2\">\n <b-col sm=\"12\" md=\"6\" class=\"mb-2\">\n <b-form-input v-model=\"customer.first_name\" @input=\"validateCustomerForm('first_name')\" :state=\"validation.first_name.state\" :placeholder=\"$t('customer_first_name')+'*'\" ref=\"firstNameInp\" />\n <b-form-invalid-feedback :state=\"validation.first_name.state\">\n {{ $t(validation.first_name.message) }}\n </b-form-invalid-feedback>\n </b-col>\n <b-col sm=\"12\" md=\"6\" class=\"mb-2\">\n <b-form-input v-model=\"customer.last_name\" @input=\"validateCustomerForm('last_name')\" :state=\"validation.last_name.state\" :placeholder=\"$t('customer_last_name')+'*'\" />\n <b-form-invalid-feedback :state=\"validation.last_name.state\">\n {{ $t(validation.last_name.message) }}\n </b-form-invalid-feedback>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-input v-model=\"customer.email\" @input=\"validateCustomerForm('email')\" :state=\"validation.email.state\" type=\"email\" :placeholder=\"$t('email')+'*'\" />\n <b-form-invalid-feedback :state=\"validation.email.state\">\n {{ $t(validation.email.message) }}\n </b-form-invalid-feedback>\n </b-col>\n </b-row>\n </div>\n\n </div>\n\n <div v-if=\"event\" class=\"px-4 my-4\">\n <span class=\"title\">{{ $t('guest_list_select_products') }}</span>\n <b-row class=\"mt-4 border-bottom pb-2\">\n <b-col sm=\"12\" md=\"5\" xl=\"6\" class=\"font-weight-bold d-flex align-items-center sub-title\">{{ $t('guest_list_ticket_type') }}</b-col>\n <b-col sm=\"12\" md=\"3\" xl=\"2\" class=\"font-weight-bold text-right d-flex align-items-center sub-title justify-content-start justify-content-xl-end\">{{ $t('guest_list_price') }}</b-col>\n <b-col sm=\"12\" md=\"4\" xl=\"4\" class=\"font-weight-bold text-center d-flex align-items-center sub-title justify-content-end\">{{ $t('guest_list_number') }}</b-col>\n </b-row>\n <div v-for=\"group in groups\" :key=\"group.name\">\n <label class=\"group-label d-block pl-3 pr-3 mb-0 font-weight-bold\" v-if=\"group.name !== 'event_default_group'\">{{ group.name }}</label>\n <b-row v-for=\"product in group.products\" :key=\"product.id\" class=\"py-2 border-bottom items\">\n <b-col sm=\"12\" md=\"5\" xl=\"6\" class=\"d-flex align-items-center\" :class=\"{'pl-5': group.name !== 'event_default_group'}\">{{ product.name }}</b-col>\n <b-col sm=\"12\" md=\"3\" xl=\"2\" class=\"text-right d-flex align-items-center justify-content-start justify-content-xl-end\">{{ product.price | currency }}</b-col>\n <b-col sm=\"12\" md=\"4\" xl=\"4\" class=\"text-center d-flex align-items-center justify-content-end\">\n <NumberInput\n :min=\"0\"\n :max=\"product.current_stock\"\n v-model=\"product.amount\"\n v-if=\"product.current_stock !== 0\"\n :state=\"parseInt(product.amount) > product.current_stock ? false : null\"/>\n <span v-else class=\"text-danger d-block\">{{ $t('pos_product_sold_out') }}</span>\n </b-col>\n <b-col cols=\"12\" v-if=\"parseInt(product.amount) > product.current_stock\" class=\"d-flex justify-content-end\">\n <span class=\"text-danger small\" >{{ $t('pos_only_available_x', {amount: product.current_stock}) }}</span>\n </b-col>\n </b-row>\n </div>\n <b-row class=\"py-4 d-block d-lg-flex\">\n <b-col cols=\"12\" class=\"text-md-right total\">\n <span class=\"font-weight-bold mr-4 mb-2 d-block d-md-inline\">{{ $t('guest_list_total_worth') }} {{ total | currency }}</span> <span class=\"font-weight-bold\">{{ $t('guest_list_total_items') }} {{ itemsCount }}</span>\n </b-col>\n </b-row>\n <b-row class=\"border-bottom\"></b-row>\n\n <div class=\"mt-5\">\n <span class=\"title\">{{ $t('guest_list_what_next') }}</span>\n <div>\n <b-button v-if=\"!isPersonalized\" @click=\"updateTodo('send_all_tickets_to_order_owner')\"\n :class=\"{'btn-outline': toDoNext !== 'send_all_tickets_to_order_owner', 'btn-primary': toDoNext === 'send_all_tickets_to_order_owner'}\"\n class=\"mt-2 mr-3 btn-option\">\n {{ $t('guest_list_send_to_email', {email: customer.email}) }}\n </b-button>\n <b-button v-if=\"isPersonalized\" @click=\"updateTodo('send_invite_to_claim_tickets')\"\n :class=\"{'btn-outline': toDoNext !== 'send_invite_to_claim_tickets', 'btn-primary': toDoNext === 'send_invite_to_claim_tickets'}\"\n class=\"mt-2 mr-3 btn-option\">\n {{ $t('guest_list_send_invitation_to_sign') }}\n </b-button>\n <b-button\n @click=\"updateTodo('send_payment_link')\"\n :class=\"{'btn-outline': toDoNext !== 'send_payment_link', 'btn-primary': toDoNext === 'send_payment_link'}\"\n class=\"mt-2 btn-option\">\n {{ $t('guest_list_send_payment_request', {email: customer.email}) }}\n </b-button>\n </div>\n </div>\n\n <div v-if=\"toDoNext !== 'send_payment_link'\" class=\"mt-4\">\n <span class=\"title\">{{ $t('guest_list_select_payment') }}</span>\n <div>\n <b-button\n @click=\"payment = 'no_payment'\"\n :class=\"{'btn-outline': payment !== 'no_payment', 'btn-primary': payment === 'no_payment'}\"\n class=\"mr-3 mt-2 btn-option\">{{ $t('guest_list_select_payment_free') }}</b-button>\n <b-button\n @click=\"payment = 'paid_cash'\"\n :class=\"{'btn-outline': payment !== 'paid_cash', 'btn-primary': payment === 'paid_cash'}\"\n class=\"btn-primary mt-2 btn-option\">{{ $t('guest_list_select_payment_paid') }}</b-button>\n </div>\n </div>\n\n <b-form-group class=\"mt-5 float-right text-right\">\n <b-button v-if=\"!loading && !isDone\" @click=\"save\" class=\"btn-primary\" :disabled=\"itemsCount === 0 || moreThanStock || !customer.first_name || !customer.last_name || !customer.email\">\n {{ $t('guest_list_send') }}\n </b-button>\n <span v-if=\"!isDone && !itemsCount\" class=\"text-danger d-block mt-2\">{{ $t('guest_list_choose_tickets_to_send') }}</span>\n <span v-if=\"!isDone && (!customer.first_name || !customer.last_name || !customer.email)\" class=\"text-danger d-block mt-2\">{{ $t('guest_list_not_all_customer_details_filled') }}</span>\n <b-icon v-if=\"loading\" icon=\"arrow-clockwise\" animation=\"spin\" font-scale=\"4\"></b-icon>\n <span class=\"title d-block\" v-if=\"loading\"> {{ toDoNext === 'send_payment_link' ? $t('guest_list_payment_link_send') : $t('guest_list_order_ticket_generated') }}</span>\n <span class=\"title d-block\" v-if=\"isDone\">{{ toDoNext === 'send_payment_link' ? $t('guest_list_payment_link_send') : $t('guest_list_order_ticket_send_successfully') }}</span>\n </b-form-group>\n </div>\n </b-card-body>\n </b-card>\n </b-col>\n </b-row>\n </div>\n <b-modal id=\"submit-order-success\" hide-footer hide-header size=\"size-lg\">\n <div class=\"py-5\">\n <div class=\"py-4 text-center\">\n <b-icon icon=\"check-circle\" font-scale=\"7\" style=\"color:#0b9f39\"></b-icon>\n </div>\n <div class=\"text-center px-5\">\n <h3 class=\"my-3 font-weight-bold title\">{{ $t('guest_list_order_saved_successfully') }}</h3>\n <p>{{ $t('guest_list_order_saved_successfully_desc') }}</p>\n </div>\n </div>\n </b-modal>\n\n</div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {validateEmail} from \"@/functions\";\nimport NumberInput from '@/components/NumberInput.vue';\n\nexport default {\n name: \"GuestListOverview\",\n components: {NumberInput},\n data() {\n return {\n events: [],\n event: null,\n groups: [],\n populate: false,\n send_order_confirmation: false,\n step: 1,\n ticketsCustomerData: [],\n toDoNext: 'send_all_tickets_to_order_owner',\n payment: 'no_payment',\n customerFields: [],\n customerAnswers: {},\n loading: false,\n isDone: false,\n evenEditMode: false,\n customer: {\n first_name: null,\n last_name: null,\n email: null,\n },\n validation: {\n first_name: {\n state: null,\n message: null\n },\n last_name: {\n state: null,\n message: null\n },\n email: {\n state: null,\n message: null\n }\n },\n rememberEvent: false\n }\n },\n mounted() {\n if(this.$store.state.user) {\n if(!this.$can('add_attendees_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().statusLive().then(response => {\n this.events = response;\n })\n },\n methods: {\n getProducts(event) {\n this.groups = [];\n this.step = 1;\n this.ticketsCustomerData = [];\n this.toDoNext = 'send_all_tickets_to_order_owner';\n this.payment = 'no_payment';\n this.customerAnswers = {};\n this.evenEditMode = false;\n if(!event) {\n return;\n }\n api.guestList().getProductsByEvent(event.id).then(response => {\n this.groups = response;\n })\n api.event().getCustomerFields(event.id).then(customerFields => {\n this.customerFields = customerFields;\n\n setTimeout(() => {\n if(this.isPersonalized) {\n this.toDoNext = 'send_invite_to_claim_tickets';\n }\n }, 200)\n })\n },\n validateCustomerForm(input) {\n this.validation[input].state = null;\n if(!this.customer[input] || !this.customer[input].length) {\n this.validation[input].state = false;\n this.validation[input].message = 'field_is_required';\n return false;\n }\n if(input === 'email') {\n if(!this.validateEmail(this.customer.email)) {\n this.validation[input].state = false;\n this.validation[input].message = 'wrong_email';\n return false;\n }\n }\n return true;\n },\n createCustomerData() {\n this.ticketsCustomerData = [];\n this.groups.forEach(group => {\n group.products.forEach((product) => {\n for(let i=0; i < product.amount; i++) {\n this.ticketsCustomerData.push({\n product: product,\n customerAnswers: this.toDoNext === 'send_all_tickets_to_order_owner' ? this.customer : {},\n expanded: true\n })\n }\n })\n })\n },\n updateTodo(todo){\n this.toDoNext = todo;\n this.payment = 'no_payment';\n },\n save() {\n if(!this.validateCustomerForm('first_name')) {\n return;\n }\n if(!this.validateCustomerForm('last_name')) {\n return;\n }\n if(!this.validateCustomerForm('email')) {\n return;\n }\n this.createCustomerData();\n const products = this.ticketsCustomerData.map(row => {\n return {\n product_id: row.product.id,\n amount: 1,\n customer: {}\n };\n })\n this.loading = true;\n if(this.toDoNext === 'send_payment_link') {\n this.payment = 'payment_link';\n }\n api.guestList().placeOrder(this.event.id, {\n products,\n customer: this.customer,\n payment: this.payment,\n todo_next: this.toDoNext,\n populate_tickets_customer: this.populate,\n send_order_confirmation: this.send_order_confirmation\n }).then(() => {\n this.reset();\n this.$bvModal.show('submit-order-success');\n setTimeout(() => {\n this.$bvModal.hide('submit-order-success');\n }, 2000)\n }).catch(() => {\n this.loading = false;\n })\n },\n reset() {\n this.loading = false;\n this.isDone = false;\n this.groups = [];\n this.step = 1;\n this.ticketsCustomerData = [];\n this.toDoNext = 'send_all_tickets_to_order_owner';\n this.payment = 'no_payment';\n this.customerAnswers = {};\n this.customer = {\n first_name: null,\n last_name: null,\n email: null,\n };\n if(this.rememberEvent) {\n this.getProducts(this.event);\n }\n else {\n this.event = null;\n }\n this.$refs.firstNameInp.focus();\n },\n validateEmail\n },\n computed: {\n total() {\n let total = 0;\n this.groups.forEach(group => {\n group.products.forEach(product => {\n total += parseInt(product.amount) * product.price;\n })\n })\n return total;\n },\n itemsCount() {\n let amount = 0;\n this.groups.forEach(group => {\n group.products.forEach(product => {\n amount += parseInt(product.amount);\n })\n })\n return amount;\n },\n moreThanStock() {\n return this.groups.some(group => {\n return group.products.some(product => {\n return parseInt(product.amount) > product.current_stock;\n })\n })\n },\n isPersonalized() {\n let valid = true;\n this.customerFields.forEach(f => {\n if(f.field === 'first_name' || f.field === 'last_name' || f.field === 'email') {\n if(!f.ticket_ask || !f.ticket_mandatory) {\n valid = false;\n }\n }\n })\n return valid;\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('add_attendees_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\nh3.title{\n font-size: 17pt;\n color:#484848\n}\nspan.title{\n font-size: 13pt;\n}\n.border-bottom:last-of-type{\n border-bottom: 1px solid transparent!important;\n}\n.items,.total,.b-form-spinbutton,.small{\n font-size: 14px;\n}\n.pointer-cursor {\n cursor: pointer;\n}\n.group-label {\n background-color: #EEEEEE;\n color: #808080!important;\n font-size: 15px!important;\n padding-top: 12px ;\n padding-bottom: 12px ;\n border-radius: 5px;\n}\n .group-label span {\n background-color: #EEEEEE;\n color: #4E4D4D;\n}\n.card .card-title{\n font-size: 15px;\n}\n.form-group {\n margin-bottom: 2rem;\n}\n.event-name {\n font-size: 10pt;\n}\n.event-name svg {\n color: #000000 !important;\n}\n\n.sub-title{\n font-size:11pt\n}\n\n.btn-option{\n font-size:10pt\n}\n\n.btn-primary, .btn-primary:active, .btn-primary:focus {\n background-color: #193e58;\n border: 0 !important;\n box-shadow: unset !important;\n&:hover {\n background-color: #102636;\n }\n}\n\n.product-stock::-webkit-outer-spin-button, .product-stock::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n}\n.product-stock[type=number] {\n -moz-appearance: textfield;\n}\n\n.btn-outline {\n background-color: #FFFFFF !important;\n border: 1px solid #6c757d !important;\n color: #6c757d !important;\n&:hover {\n background-color: #6c757d !important;\n color: #FFFFFF !important;\n }\n}\n</style>\n<style lang=\"scss\">\n.custom-switch{\n margin-left:5px\n}\n.vnis__button {\n background-color: #193E58 !important;\n}\n.vnis {\n width: 132px;\n}\n\ninput.product-stock {\n height: 35px !important;\n width: 75px !important;\n text-align: center;\n}\n\n@media (min-width: 992px) {\n .modal-size-l {\n max-width: 660px !important;\n }\n}\n\n</style>\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GuestListOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GuestListOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./GuestListOverview.vue?vue&type=template&id=5558948c&scoped=true\"\nimport script from \"./GuestListOverview.vue?vue&type=script&lang=js\"\nexport * from \"./GuestListOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./GuestListOverview.vue?vue&type=style&index=0&id=5558948c&prod&lang=scss&scoped=true\"\nimport style1 from \"./GuestListOverview.vue?vue&type=style&index=1&id=5558948c&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5558948c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card mb-2\"},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"2\"}},[_c('b-form-group',[_vm._v(\" \"+_vm._s(_vm.$t('report_event'))+\" \"),_c('b-select',{attrs:{\"options\":_vm.events},on:{\"change\":_vm.eventSelected},model:{value:(_vm.filter_event),callback:function ($$v) {_vm.filter_event=$$v},expression:\"filter_event\"}}),_c('b-form-checkbox',{staticClass:\"mt-2 report-switch-small\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.includeArchivedEvents),callback:function ($$v) {_vm.includeArchivedEvents=$$v},expression:\"includeArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('reports_include_archived_events')))])],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"2\"}},[_c('label',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.$t('report_tickets')))]),_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.filter_products && _vm.filter_products.length ? (_vm.filter_products.length + ' ' + _vm.$t('report_tickets_selected')) : _vm.$t('report_select_ticket')}},[_c('b-form-checkbox',{on:{\"change\":_vm.toggleSelected},model:{value:(_vm.event_all_selected),callback:function ($$v) {_vm.event_all_selected=$$v},expression:\"event_all_selected\"}},[_vm._v(_vm._s(_vm.event_all_selected ? _vm.$t('unselect_all') : _vm.$t('select_all')))]),_c('b-form-group',[_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.filter_products),callback:function ($$v) {_vm.filter_products=$$v},expression:\"filter_products\"}},_vm._l((_vm.products),function(product){return _c('b-form-checkbox',{key:product.id,staticClass:\"w-100\",attrs:{\"value\":product.id}},[_vm._v(_vm._s(product.name))])}),1)],1)],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('report_date_range_start'))+\" \"),_c('date-picker',{model:{value:(_vm.date_range.start),callback:function ($$v) {_vm.$set(_vm.date_range, \"start\", $$v)},expression:\"date_range.start\"}})],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"6\",\"lg\":\"3\"}},[_vm._v(\" \"+_vm._s(_vm.$t('report_date_range_end'))+\" \"),_c('date-picker',{model:{value:(_vm.date_range.end),callback:function ($$v) {_vm.$set(_vm.date_range, \"end\", $$v)},expression:\"date_range.end\"}})],1),_c('b-col',{attrs:{\"cols\":\"12\",\"md\":\"12 \",\"lg\":\"2\"}},[_c('b-button',{staticClass:\"text-right btn-filter\",attrs:{\"variant\":\"new\",\"disabled\":_vm.loading || _vm.loadingOrders || _vm.loadingRevenue},on:{\"click\":_vm.filter}},[(_vm.loading || _vm.loadingOrders || _vm.loadingRevenue)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('report_filter_btn'))+\" \")],1)],1)],1)],1)],1)],1),(_vm.data)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.orders_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('nav_orders')))])])],1),_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm.data.ticket_count))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_tickets_sold')))])])],1),_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-card',{staticClass:\"info-card center\"},[_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.data.total_revenue)))]),_c('br'),_c('span',[_vm._v(_vm._s(_vm.$t('report_in_worth_of')))])])],1)],1):_vm._e(),_c('b-row',{staticClass:\"mt-5\"},[(_vm.orders && _vm.orders.length)?_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"orderTable\",attrs:{\"fields\":_vm.fields,\"items\":_vm.orders},scopedSlots:_vm._u([{key:\"cell(created_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.created_at))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('order_detail_view'))?_c('b-button',{attrs:{\"variant\":\"row-edit\",\"to\":{name: 'OrderDetails', params:{id: item.order_id, order_number: item.order_number}}}},[_vm._v(\" \"+_vm._s(_vm.$t('order_details'))+\" \")]):_vm._e()]}}],null,false,2177717435)}),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getData}}):_vm._e()],1):_c('b-col',[_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)],1),(_vm.groups && _vm.groups.length)?_c('b-row',{staticClass:\"mt-5\"},[_c('b-col',{attrs:{\"lg\":\"6\",\"sm\":\"12\"}},[_c('b-card',[_c('b-card-title',[_vm._v(_vm._s(_vm.$t('report_orders_grouped_by_tickets')))]),_c('b-card-body',[_c('b-table',{staticClass:\"groups-table text-center\",attrs:{\"fields\":[{key: 'grouped', label: _vm.$t('report_tickets_per_order')}, {key: 'count', label: _vm.$t('report_number_of_orders')}],\"items\":_vm.groups}})],1)],1)],1)],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\">\n <b-card class=\"info-card mb-2\">\n <b-row>\n <b-col cols=\"12\" md=\"6\" lg=\"2\">\n <b-form-group>\n {{ $t('report_event') }}\n <b-select @change=\"eventSelected\" v-model=\"filter_event\" :options=\"events\"></b-select>\n <b-form-checkbox class=\"mt-2 report-switch-small\" switch v-model=\"includeArchivedEvents\" :value=\"true\" :unchecked-value=\"false\">{{ $t('reports_include_archived_events') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" md=\"6\" lg=\"2\">\n <label class=\"mb-0\">{{ $t('report_tickets') }}</label>\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"filter_products && filter_products.length ? (filter_products.length + ' ' + $t('report_tickets_selected')) : $t('report_select_ticket')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-checkbox v-model=\"event_all_selected\" @change=\"toggleSelected\">{{ event_all_selected ? $t('unselect_all') : $t('select_all') }}</b-form-checkbox>\n <b-form-group>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"filter_products\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"product in products\" :key=\"product.id\" :value=\"product.id\" class=\"w-100\">{{ product.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-col>\n <b-col cols=\"12\" md=\"6\" lg=\"3\">\n {{ $t('report_date_range_start') }}\n <date-picker v-model=\"date_range.start\"></date-picker>\n </b-col>\n <b-col cols=\"12\" md=\"6\" lg=\"3\">\n {{ $t('report_date_range_end') }}\n <date-picker v-model=\"date_range.end\"></date-picker>\n </b-col>\n <b-col cols=\"12\" md=\"12 \" lg=\"2\">\n <b-button @click=\"filter\" class=\" text-right btn-filter\" variant=\"new\" :disabled=\"loading || loadingOrders || loadingRevenue\">\n <b-icon v-if=\"loading || loadingOrders || loadingRevenue\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('report_filter_btn') }}\n </b-button>\n </b-col>\n </b-row>\n </b-card>\n </b-col>\n </b-row>\n <b-row v-if=\"data\">\n <b-col lg=\"4\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.orders_count }}</span><br/>\n <span>{{ $t('nav_orders') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"4\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.ticket_count }}</span><br/>\n <span>{{ $t('report_tickets_sold') }}</span>\n </b-card>\n </b-col>\n <b-col lg=\"4\" sm=\"6\" cols=\"12\">\n <b-card class=\"info-card center\">\n <span>{{ data.total_revenue | currency }}</span><br/>\n <span>{{ $t('report_in_worth_of') }}</span>\n </b-card>\n </b-col>\n </b-row>\n <b-row class=\"mt-5\">\n <b-col v-if=\"orders && orders.length\" class=\"tableBig\">\n <b-table class=\"orderTable\" :fields=\"fields\" :items=\"orders\">\n <template v-slot:cell(created_at)=\"{item}\">\n {{ item.created_at | date_time }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('order_detail_view')\" variant=\"row-edit\"\n :to=\"{name: 'OrderDetails', params:{id: item.order_id, order_number: item.order_number}}\">\n {{ $t('order_details') }}\n </b-button>\n </template>\n </b-table>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getData\"></pagination>\n </b-col>\n <b-col v-else>\n <b-alert show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n </b-col>\n </b-row>\n\n <b-row v-if=\"groups && groups.length\" class=\"mt-5\">\n <b-col lg=\"6\" sm=\"12\">\n <b-card>\n <b-card-title>{{ $t('report_orders_grouped_by_tickets') }}</b-card-title>\n <b-card-body>\n <b-table class=\"groups-table text-center\" :fields=\"[{key: 'grouped', label: $t('report_tickets_per_order')}, {key: 'count', label: $t('report_number_of_orders')}]\" :items=\"groups\">\n </b-table>\n </b-card-body>\n </b-card>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport DatePicker from \"@/components/DatePicker\";\nimport api from \"@/api\";\nexport default {\n name: \"ReportSalesPerTickettype\",\n data() {\n return {\n loading: false,\n loadingOrders: false,\n loadingRevenue: false,\n options_event: [],\n filter_event: null,\n includeArchivedEvents: false,\n data: {\n orders_count: 0,\n ticket_count: 0,\n total_revenue: 0,\n },\n date_range: {\n start: null,\n end: null,\n },\n products: [],\n filter_products: [],\n orders: [],\n page_data: null,\n fields: [\n {key: 'order_number', label: this.$t('order_number')},\n {key: 'created_at', label: this.$t('report_order_placed')},\n {key: 'customer_name', label: this.$t('order_full_name')},\n {key: 'email', label: this.$t('email')},\n {key: 'product_name', label: this.$t('report_ticket_type')},\n // {key: 'city', label: this.$t('customer_city')},\n {key: 'actions', label: ''},\n ],\n groups: [],\n event_all_selected: false\n }\n },\n mounted() {\n if(this.$store.state.user) {\n if(!this.$can('reports_sales_by_tickettype_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n if(!this.$route.query.event || !this.$route.query.ticket) {\n this.loading = true;\n api.event().all(true).then(events => {\n this.options_event = events.map(event => {\n return {value: event.id, text: event.name, status: event.status, starts_at:event.created_at};\n })\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n });\n return;\n }\n this.loading = true;\n let eventId = this.$route.query.event;\n eventId = parseInt(eventId.toString());\n this.filter_event = eventId;\n this.filter_products = [parseInt(this.$route.query.ticket.toString())];\n api.event().all(true).then(events => {\n this.options_event = events.map(event => {\n if(event.id === eventId) {\n this.date_range.start = new Date(event.created_at);\n this.date_range.end = new Date();\n if(event.status === 'archived') {\n this.includeArchivedEvents = true;\n }\n\n }\n return {value: event.id, text: event.name, status: event.status, starts_at: event.created_at};\n })\n this.getProducts();\n this.getData();\n this.getOrdersGroupedByTickets();\n this.getRevenue();\n this.getOrders();\n });\n },\n methods: {\n filter() {\n this.getData();\n this.getOrdersGroupedByTickets();\n this.getRevenue();\n this.getOrders();\n },\n getProducts() {\n api.event().products(this.filter_event).then(products => {\n this.products = products.map(p => {\n if(p.product_group && p.product_group.name !== 'event_default_group') {\n p.name = p.product_group.name + ' - ' + p.name;\n }\n return p;\n }).sort();\n })\n },\n getData(page = 1) {\n if (!page) {\n page = 1\n }\n this.loading = true; \n api.report().getSalesPerTickets(this.filter_event, {\n tickets: this.filter_products,\n date_range: this.date_range,\n page\n }).then(response => {\n this.data.ticket_count = response.total;\n this.orders = response.data;\n this.page_data = response;\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n getRevenue() {\n this.loadingRevenue = true;\n api.report().getSalesPerTicketsRevenue(this.filter_event, {\n tickets: this.filter_products,\n date_range: this.date_range\n }).then(response => {\n this.data.total_revenue = response;\n this.loadingRevenue = false;\n }).catch(() => {\n this.loadingRevenue = false;\n })\n },\n getOrders() {\n this.loadingOrders = true;\n api.report().getSalesPerTicketsOrders(this.filter_event, {\n tickets: this.filter_products,\n date_range: this.date_range\n }).then(response => {\n this.data.orders_count = response;\n this.loadingOrders = false;\n }).catch(() => {\n this.loadingOrders = false;\n })\n },\n getOrdersGroupedByTickets() {\n api.report().getOrdersGroupedByTickets(this.filter_event, {\n tickets: this.filter_products,\n date_range: this.date_range\n }).then(response => {\n this.groups = response;\n })\n },\n eventSelected() {\n const event = this.events.find(e => e.value === this.filter_event);\n if(event) {\n this.date_range.start = new Date(event.starts_at);\n }\n this.date_range.end = new Date();\n this.filter_products = [];\n this.getProducts();\n },\n toggleSelected() {\n this.filter_products = this.event_all_selected ? this.products.map(p => p.id) : [];\n }\n },\n computed: {\n events() {\n if(this.includeArchivedEvents) {\n return this.options_event;\n }\n return this.options_event.filter(event => event.status === 'live')\n },\n },\n components: {\n DatePicker,\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('reports_sales_by_tickettype_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.info-card.center .card-body {\n text-align: center;\n}\n\n.info-card span:first-of-type {\n font-size: 28pt\n}\n\n.btn-filter{\n margin-top: 23px;\n height:50px;\n width: 100%;\n text-align: center!important;\n}\n\n\n</style>\n\n<style>\n#dropdown-Checkbox {\nmargin-bottom:1rem;\nheight: 50px;\n}\n#dropdown-Checkbox .dropdown-menu{\n padding: .8rem .7rem .4rem!important;\n font-size: 12px;\n min-width: 100%;\n}\n#dropdown-Checkbox .custom-control-label{\npadding-top: 2px;\ncursor: pointer;\n}\n#dropdown-Checkbox .dropdown-toggle{\nbackground-color: #fff!important;\ncolor: #808080;\nborder: 2px solid #EEEEEE;\ntext-align: left;\n font-size: 14px;\n width: 100%;\n}\n#dropdown-Checkbox .dropdown-toggle::after{\nposition: absolute;\ntop: 50%;\nright: 10px;\n}\n\n.vs__dropdown-toggle {\n height: 50px !important;\n}\n.groups-table thead {\n background-color: #fff !important;\n\n}\n.groups-table thead tr th div {\n color: #808080 !important;\n font-weight: bold;\n}\n.groups-table thead tr th {\n border-top: none !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportSalesPerTickettype.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ReportSalesPerTickettype.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ReportSalesPerTickettype.vue?vue&type=template&id=3672e4e9&scoped=true\"\nimport script from \"./ReportSalesPerTickettype.vue?vue&type=script&lang=js\"\nexport * from \"./ReportSalesPerTickettype.vue?vue&type=script&lang=js\"\nimport style0 from \"./ReportSalesPerTickettype.vue?vue&type=style&index=0&id=3672e4e9&prod&scoped=true&lang=css\"\nimport style1 from \"./ReportSalesPerTickettype.vue?vue&type=style&index=1&id=3672e4e9&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3672e4e9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"login\"}},[_c('b-row',{attrs:{\"align-v\":\"center\"}},[_c('div',{attrs:{\"id\":\"login-wrap\"}},[_c('b-alert',{attrs:{\"variant\":\"warning\",\"show\":\"\"}},[_vm._v(_vm._s(_vm.$t('password_reset_user_should_reset_password')))]),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_password'),\"state\":_vm.inputState,\"type\":\"password\",\"name\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1),_c('b-form-group',[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('password_confirmation'),\"state\":_vm.inputState,\"type\":\"password\",\"name\":\"password_confirmation\"},model:{value:(_vm.passwordConfirmation),callback:function ($$v) {_vm.passwordConfirmation=$$v},expression:\"passwordConfirmation\"}}),_c('b-form-invalid-feedback',{attrs:{\"state\":_vm.inputState}},[_vm._v(\" \"+_vm._s(_vm.$t('password_not_match'))+\" \")])],1),_c('b-form-group',[_c('b-button',{staticClass:\"float-right\",attrs:{\"block\":\"\",\"variant\":\"primary\",\"disabled\":_vm.loading},on:{\"click\":_vm.save}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(_vm._s(_vm.$t('save')))],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"login\">\n <b-row align-v=\"center\">\n <div id=\"login-wrap\">\n <b-alert variant=\"warning\" show>{{ $t('password_reset_user_should_reset_password') }}</b-alert>\n <b-form-group>\n <b-form-input :placeholder=\"$t('login_password')\" v-model=\"password\" :state=\"inputState\" type=\"password\" name=\"password\"></b-form-input>\n </b-form-group>\n <b-form-group>\n <b-form-input :placeholder=\"$t('password_confirmation')\" v-model=\"passwordConfirmation\" :state=\"inputState\" type=\"password\" name=\"password_confirmation\"></b-form-input>\n <b-form-invalid-feedback :state=\"inputState\">\n {{ $t('password_not_match') }}\n </b-form-invalid-feedback>\n </b-form-group>\n <b-form-group>\n <b-button block class=\"float-right\" variant=\"primary\" @click=\"save\" :disabled=\"loading\"><b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon>{{ $t('save') }}</b-button>\n </b-form-group>\n </div>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\n\nexport default {\n name: \"UserResetPassword\",\n data() {\n return {\n password: null,\n passwordConfirmation: null,\n loading: false,\n }\n },\n methods: {\n save() {\n this.loading = true;\n api.user().resetPassword(this.password, this.passwordConfirmation).then(user => {\n this.$store.commit('setUser', user);\n this.$store.commit('success', this.$t('password_reset_successfully'));\n this.loading = false;\n this.$router.push({name: 'Dashboard'})\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n computed: {\n inputState() {\n if(this.password && this.passwordConfirmation) {\n return this.password === this.passwordConfirmation;\n }\n return null;\n }\n }\n}\n</script>\n\n<style @scoped lang=\"scss\">\n#login, #login > .row {\n height: 100%;\n}\n#login-wrap {\n background: #193E58;\n padding: 50px;\n legend {\n color:white;\n }\n img {\n max-width: 100%;\n }\n}\n\n#login-wrap {\n margin: auto;\n}\n\n@media only screen and (max-width: 700px) {\n #login-wrap {\n width: 90%;\n }\n}\n\n@media only screen and (min-width: 701px) {\n #login-wrap {\n width: 450px;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserResetPassword.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserResetPassword.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./UserResetPassword.vue?vue&type=template&id=a4582d1a\"\nimport script from \"./UserResetPassword.vue?vue&type=script&lang=js\"\nexport * from \"./UserResetPassword.vue?vue&type=script&lang=js\"\nimport style0 from \"./UserResetPassword.vue?vue&type=style&index=0&id=a4582d1a&prod&%40scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(_vm.$can('master_data_permissions_roles_view'))?_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'PermissionRoles'}}},[_vm._v(_vm._s(_vm.$t('roles_permission_roles')))])],1):_vm._e(),(_vm.$can('master_data_default_values_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'DefaultCompanySettings'}}},[_vm._v(_vm._s(_vm.$t('default_account_setup')))])],1):_vm._e(),(_vm.$can('master_data_auto_invoice_settings_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'AutoInvoiceSettings'}}},[_vm._v(_vm._s(_vm.$t('master_data_auto_invoice_settings')))])],1):_vm._e(),(_vm.$can('master_data_venues_overview'))?_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'VenuesOverview'}}},[_vm._v(_vm._s(_vm.$t('venues_overview')))])],1):_vm._e(),(_vm.$can('master_data_company_links_overview'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'CompanyLinksOverview'}}},[_vm._v(_vm._s(_vm.$t('company_links_overview')))])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col v-if=\"$can('master_data_permissions_roles_view')\" lg=\"3\" sm=\"6\" cols=\"12\">\n <router-link :to=\"{name: 'PermissionRoles'}\" class=\"info-card center text-center card\">{{ $t('roles_permission_roles') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_default_values_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'DefaultCompanySettings'}\" class=\"info-card center text-center card\">{{ $t('default_account_setup') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_auto_invoice_settings_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'AutoInvoiceSettings'}\" class=\"info-card center text-center card\">{{ $t('master_data_auto_invoice_settings') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_venues_overview')\" lg=\"3\" sm=\"6\" cols=\"12\">\n <router-link :to=\"{name: 'VenuesOverview'}\" class=\"info-card center text-center card\">{{ $t('venues_overview') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_company_links_overview')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'CompanyLinksOverview'}\" class=\"info-card center text-center card\">{{ $t('company_links_overview') }}</router-link>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"MasterDataOverview\",\n created() {\n document.title = this.$t('nav_master_data')\n if(this.$store.state.user) {\n if(!this.$can('master_data_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MasterDataOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MasterDataOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MasterDataOverview.vue?vue&type=template&id=5243b418&scoped=true\"\nimport script from \"./MasterDataOverview.vue?vue&type=script&lang=js\"\nexport * from \"./MasterDataOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5243b418\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col'),_c('b-col',[_c('b-form-group',{staticClass:\"text-right container-distance\"},[(_vm.$can('master_data_permission_roles_create'))?_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.showRoleModal()}}},[_vm._v(_vm._s(_vm.$t('new')))]):_vm._e()],1)],1)],1),(_vm.roles.length)?_c('b-row',[_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.roles,\"fields\":_vm.tableFields},scopedSlots:_vm._u([{key:\"cell(created_by)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.owner.name)+\" \")]}},{key:\"cell(admin_only)\",fn:function({item}){return [(item.admin_only)?_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"variant\":\"success\"}}):_c('b-icon',{attrs:{\"icon\":\"x-circle-fill\",\"variant\":\"danger\"}})]}},{key:\"cell(online)\",fn:function({item}){return [(item.online)?_c('b-icon',{attrs:{\"icon\":\"check-circle-fill\",\"variant\":\"success\"}}):_c('b-icon',{attrs:{\"icon\":\"x-circle-fill\",\"variant\":\"danger\"}})]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('master_data_permissions_roles_edit'))?_c('b-button',{staticClass:\"mr-2 btn-action\",attrs:{\"variant\":\"row-edit\"},on:{\"click\":function($event){return _vm.showRoleModal(item)}}},[_vm._v(_vm._s(_vm.$t('manage'))+\" \")]):_vm._e(),(_vm.$can('master_data_permissions_roles_delete'))?_c('b-icon',{staticClass:\"ml-3 text-secondary cursor-pointer\",attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,1540188024)})],1)],1):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),_c('b-modal',{attrs:{\"title\":_vm.$t('roles_roles_permissions'),\"id\":\"role-permissions-modal\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":!_vm.role.name || _vm.loading,\"variant\":\"primary\"},on:{\"click\":_vm.createRole}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1)]},proxy:true}])},[_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('roles_name')}},[_c('b-form-input',{model:{value:(_vm.role.name),callback:function ($$v) {_vm.$set(_vm.role, \"name\", $$v)},expression:\"role.name\"}})],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.role.admin_only),callback:function ($$v) {_vm.$set(_vm.role, \"admin_only\", $$v)},expression:\"role.admin_only\"}},[_vm._v(_vm._s(_vm.$t('roles_admin_only')))])],1)],1),_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.role.online),callback:function ($$v) {_vm.$set(_vm.role, \"online\", $$v)},expression:\"role.online\"}},[_vm._v(_vm._s(_vm.$t('roles_online')))])],1)],1)],1),_vm._l((_vm.role.permissions),function(group,index){return _c('div',{key:index},[_c('label',{staticClass:\"group-label px-2 d-block mt-3 mb-1 mb-0\"},[_c('b-form-checkbox',{staticClass:\"font-weight-bold py-1\",on:{\"change\":function($event){return _vm.changePermissionsCheckbox(group, $event)}}},[_vm._v(_vm._s(index))])],1),_c('b-row',_vm._l((group),function(permission){return _c('b-col',{key:permission.id,attrs:{\"cols\":\"6\"}},[_c('b-form-group',{staticClass:\"px-3\"},[_c('b-form-checkbox',{model:{value:(permission.selected),callback:function ($$v) {_vm.$set(permission, \"selected\", $$v)},expression:\"permission.selected\"}},[_vm._v(_vm._s(_vm.$t('permission_' + permission.slug)))])],1)],1)}),1)],1)})],2)]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-role\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteRole}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col>\n </b-col>\n <b-col>\n <b-form-group class=\"text-right container-distance\">\n <b-button v-if=\"$can('master_data_permission_roles_create')\" variant=\"new\" @click=\"showRoleModal()\">{{ $t('new') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row v-if=\"roles.length\">\n <b-col class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"roles\" :fields=\"tableFields\">\n <template v-slot:cell(created_by)=\"{item}\">\n {{ item.owner.name }}\n </template>\n <template v-slot:cell(admin_only)=\"{item}\">\n <b-icon v-if=\"item.admin_only\" icon=\"check-circle-fill\" variant=\"success\"></b-icon>\n <b-icon v-else icon=\"x-circle-fill\" variant=\"danger\"></b-icon>\n </template>\n <template v-slot:cell(online)=\"{item}\">\n <b-icon v-if=\"item.online\" icon=\"check-circle-fill\" variant=\"success\"></b-icon>\n <b-icon v-else icon=\"x-circle-fill\" variant=\"danger\"></b-icon>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('master_data_permissions_roles_edit')\" class=\"mr-2 btn-action\" variant=\"row-edit\" @click=\"showRoleModal(item)\">{{\n $t('manage')\n }}\n </b-button>\n <b-icon v-if=\"$can('master_data_permissions_roles_delete')\" icon=\"trash\" font-scale=\"1.5\" class=\"ml-3 text-secondary cursor-pointer\"\n @click=\"showDeleteModal(item)\"></b-icon>\n </template>\n </b-table>\n </b-col>\n </b-row>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <b-modal :title=\"$t('roles_roles_permissions')\" id=\"role-permissions-modal\" size=\"lg\">\n <div>\n <b-form-group :label=\"$t('roles_name')\">\n <b-form-input v-model=\"role.name\"></b-form-input>\n </b-form-group>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"role.admin_only\">{{ $t('roles_admin_only') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"role.online\">{{ $t('roles_online') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <div v-for=\"(group, index) in role.permissions\" :key=\"index\">\n <label class=\"group-label px-2 d-block mt-3 mb-1 mb-0\">\n <b-form-checkbox @change=\"changePermissionsCheckbox(group, $event)\" class=\"font-weight-bold py-1\">{{ index }}</b-form-checkbox>\n </label>\n <b-row>\n <b-col cols=\"6\" v-for=\"permission in group\" :key=\"permission.id\">\n <b-form-group class=\"px-3\">\n <b-form-checkbox v-model=\"permission.selected\">{{ $t('permission_' + permission.slug) }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n </div>\n\n <template #modal-footer>\n <b-button :disabled=\"!role.name || loading\" variant=\"primary\" @click=\"createRole\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('save') }}\n </b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-role\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteRole\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon>\n {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {groupBy} from \"@/functions\";\n\nexport default {\n name: \"PermissionRoles\",\n data() {\n return {\n roles: [],\n role: {},\n loading: false,\n permissions: [],\n tableFields: [\n {key: 'name', label: this.$t('roles_name')},\n {key: 'admin_only', label: this.$t('roles_admin_only')},\n {key: 'online', label: this.$t('roles_online')},\n {key: 'created_by', label: this.$t('roles_created_by')},\n {key: 'actions', label: this.$t('actions')},\n ]\n }\n },\n mounted() {\n document.title = this.$t('roles_permission_roles')\n if(this.$store.state.user) {\n if(!this.$can('master_data_permissions_roles_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getRoles();\n this.getPermissions();\n },\n methods: {\n showRoleModal(role = null) {\n this.role = JSON.parse(JSON.stringify(role)) ?? {};\n let permissions = null;\n if (role) {\n permissions = JSON.parse(JSON.stringify(this.permissions)).map(p => {\n const isSelected = !!role.permissions.filter(rp => rp.id === p.id).length;\n return Object.assign(p, {selected: isSelected})\n });\n } else {\n permissions = JSON.parse(JSON.stringify(this.permissions));\n }\n this.role.permissions = this.getSortedPermissions(permissions);\n this.$bvModal.show('role-permissions-modal')\n },\n getSortedPermissions(permissions) {\n const tempPermissions = groupBy(permissions, p => p.category);\n for (const group in tempPermissions) {\n tempPermissions[group] = tempPermissions[group].sort((a, b)=>{\n return a.sort - b.sort;\n })\n }\n\n return tempPermissions;\n },\n getRoles() {\n api.permission().getRoles().then(roles => {\n this.roles = roles;\n })\n },\n getPermissions() {\n api.permission().getPermissions().then(permissions => {\n this.permissions = permissions.map(permission => {\n return Object.assign(permission, {selected: false})\n });\n })\n },\n createRole() {\n const permissions = [];\n for (const group in this.role.permissions) {\n for (const permission of this.role.permissions[group]) {\n if (permission.selected) {\n permissions.push(permission.id);\n }\n }\n }\n this.loading = true;\n const body = {\n name: this.role.name,\n admin_only: this.role.admin_only,\n online: this.role.online,\n permissions\n };\n const request = this.role.id ? api.permission().updateRole(this.role.id, body) : api.permission().createRole(body);\n request.then(() => {\n this.getRoles();\n this.$bvModal.hide('role-permissions-modal')\n this.loading = false;\n this.$store.commit('success', this.$t('role_saved_successfully'))\n }).catch(() => {\n this.loading = false;\n })\n },\n showDeleteModal(role) {\n this.role = role;\n this.$bvModal.show('delete-role')\n },\n deleteRole() {\n this.loading = true;\n api.permission().deleteRole(this.role.id).then(() => {\n this.getRoles();\n this.$bvModal.hide('delete-role')\n this.loading = false;\n this.$store.commit('success', this.$t('role_deleted_successfully'))\n }).catch(() => {\n this.loading = false;\n })\n },\n changePermissionsCheckbox(permissions, event) {\n for(const permission of permissions) {\n permission.selected = event;\n }\n this.$forceUpdate();\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_permissions_roles_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.tableFields = [\n {key: 'name', label: this.$t('roles_name')},\n {key: 'admin_only', label: this.$t('roles_admin_only')},\n {key: 'online', label: this.$t('roles_online')},\n {key: 'created_by', label: this.$t('roles_created_by')},\n {key: 'actions', label: this.$t('actions')},\n ]\n }\n }\n }\n}\n</script>\n\n<style scoped>\ntable.b-table tbody tr:hover .btn.btn-row-edit {\n border-color: #f5f5f5 !important;\n}\n\n.btn-action {\n background-color: transparent !important;\n color: #808090 !important;\n}\n\n.btn-action:hover {\n background-color: #F0B52D !important;\n border-color: #F0B52D !important;\n color: white !important;\n}\n\n.cursor-pointer {\n cursor: pointer;\n}\n\n.group-label {\n background-color: #EEEEEE !important;\n color: #000!important;\n font-size: 15px!important;\n padding-top: 12px ;\n padding-bottom: 12px ;\n}\n.group-label span {\n background-color: #EEEEEE;\n color: #4E4D4D;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PermissionRoles.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PermissionRoles.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./PermissionRoles.vue?vue&type=template&id=9c6356e0&scoped=true\"\nimport script from \"./PermissionRoles.vue?vue&type=script&lang=js\"\nexport * from \"./PermissionRoles.vue?vue&type=script&lang=js\"\nimport style0 from \"./PermissionRoles.vue?vue&type=style&index=0&id=9c6356e0&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9c6356e0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"body\",attrs:{\"id\":\"body403\"}},[_c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"id\":\"robot-error\",\"viewBox\":\"0 0 260 118.9\"}},[_c('defs',[_c('clipPath',{attrs:{\"id\":\"white-clip\"}},[_c('circle',{attrs:{\"id\":\"white-eye\",\"fill\":\"#cacaca\",\"cx\":\"130\",\"cy\":\"65\",\"r\":\"20\"}})]),_c('text',{staticClass:\"error-text\",attrs:{\"id\":\"text-s\",\"y\":\"106\"}},[_vm._v(\" 403 \")])]),_c('path',{staticClass:\"alarm\",attrs:{\"fill\":\"#e62326\",\"d\":\"M120.9 19.6V9.1c0-5 4.1-9.1 9.1-9.1h0c5 0 9.1 4.1 9.1 9.1v10.6\"}}),_c('use',{attrs:{\"xlink:href\":\"#text-s\",\"x\":\"-0.5px\",\"y\":\"-1px\",\"fill\":\"black\"}}),_c('use',{attrs:{\"xlink:href\":\"#text-s\",\"fill\":\"#1A3E58\"}}),_c('g',{attrs:{\"id\":\"robot\"}},[_c('g',{attrs:{\"id\":\"eye-wrap\"}},[_c('use',{attrs:{\"xlink:href\":\"#white-eye\"}}),_c('circle',{staticClass:\"eye\",attrs:{\"id\":\"eyef\",\"clip-path\":\"url(#white-clip)\",\"fill\":\"#000\",\"stroke\":\"#F0B52D\",\"stroke-width\":\"2\",\"stroke-miterlimit\":\"10\",\"cx\":\"130\",\"cy\":\"65\",\"r\":\"11\"}}),_c('ellipse',{attrs:{\"id\":\"white-eye\",\"fill\":\"#1A3E58\",\"cx\":\"130\",\"cy\":\"40\",\"rx\":\"18\",\"ry\":\"12\"}})]),_c('circle',{staticClass:\"lightblue\",attrs:{\"cx\":\"105\",\"cy\":\"32\",\"r\":\"2.5\",\"id\":\"tornillo\"}}),_c('use',{attrs:{\"xlink:href\":\"#tornillo\",\"x\":\"50\"}}),_c('use',{attrs:{\"xlink:href\":\"#tornillo\",\"x\":\"50\",\"y\":\"60\"}}),_c('use',{attrs:{\"xlink:href\":\"#tornillo\",\"y\":\"60\"}})])]),_c('h1',[_vm._v(_vm._s(_vm.$t('not_have_permission')))]),_c('h2',[_c('router-link',{staticClass:\"back-to-home\",attrs:{\"to\":\"/dashboard\"}},[_vm._v(\"Back to home\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"body\" id=\"body403\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" id=\"robot-error\" viewBox=\"0 0 260 118.9\">\n <defs>\n <clipPath id=\"white-clip\"><circle id=\"white-eye\" fill=\"#cacaca\" cx=\"130\" cy=\"65\" r=\"20\" /> </clipPath>\n <text id=\"text-s\" class=\"error-text\" y=\"106\"> 403 </text>\n </defs>\n <path class=\"alarm\" fill=\"#e62326\" d=\"M120.9 19.6V9.1c0-5 4.1-9.1 9.1-9.1h0c5 0 9.1 4.1 9.1 9.1v10.6\" />\n <use xlink:href=\"#text-s\" x=\"-0.5px\" y=\"-1px\" fill=\"black\"></use>\n <use xlink:href=\"#text-s\" fill=\"#1A3E58\"></use>\n <g id=\"robot\">\n <g id=\"eye-wrap\">\n <use xlink:href=\"#white-eye\"></use>\n <circle id=\"eyef\" class=\"eye\" clip-path=\"url(#white-clip)\" fill=\"#000\" stroke=\"#F0B52D\" stroke-width=\"2\" stroke-miterlimit=\"10\" cx=\"130\" cy=\"65\" r=\"11\" />\n <ellipse id=\"white-eye\" fill=\"#1A3E58\" cx=\"130\" cy=\"40\" rx=\"18\" ry=\"12\" />\n </g>\n <circle class=\"lightblue\" cx=\"105\" cy=\"32\" r=\"2.5\" id=\"tornillo\" />\n <use xlink:href=\"#tornillo\" x=\"50\"></use>\n <use xlink:href=\"#tornillo\" x=\"50\" y=\"60\"></use>\n <use xlink:href=\"#tornillo\" y=\"60\"></use>\n </g>\n </svg>\n <h1>{{ $t('not_have_permission') }}</h1>\n <h2><router-link class=\"back-to-home\" to=\"/dashboard\">Back to home</router-link></h2>\n </div>\n\n</template>\n\n<script>\nexport default {\n name: \"AccessDenied\",\n mounted() {\n var root = document.getElementById('body403');\n var eyef = document.getElementById('eyef');\n var cx = document.getElementById(\"eyef\").getAttribute(\"cx\");\n var cy = document.getElementById(\"eyef\").getAttribute(\"cy\");\n\n document.addEventListener(\"mousemove\", evt => {\n let x = evt.clientX / innerWidth;\n let y = evt.clientY / innerHeight;\n\n root.style.setProperty(\"--mouse-x\", x);\n root.style.setProperty(\"--mouse-y\", y);\n\n cx = 115 + 30 * x;\n cy = 50 + 30 * y;\n eyef.setAttribute(\"cx\", cx);\n eyef.setAttribute(\"cy\", cy);\n\n });\n\n document.addEventListener(\"touchmove\", touchHandler => {\n let x = touchHandler.touches[0].clientX / innerWidth;\n let y = touchHandler.touches[0].clientY / innerHeight;\n\n root.style.setProperty(\"--mouse-x\", x);\n root.style.setProperty(\"--mouse-y\", y);\n });\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n.body {\n color: white;\n font-family: \"Bungee\", cursive !important;\n margin-top: 100px;\n text-align: center;\n}\n#text-s {\n font-family: \"Bungee\", cursive !important;\n}\na {\n color: #F0B52D;\n text-decoration: none;\n}\na:hover {\n color: #000000;\n}\nsvg {\n width: 50vw;\n}\n.lightblue {\n fill: #F0B52D;\n}\n.eye {\n cx: calc(115px + 30px * var(--mouse-x));\n cy: calc(50px + 30px * var(--mouse-y));\n}\n#eye-wrap {\n overflow: hidden;\n}\n.error-text {\n font-size: 120px;\n}\n.alarm {\n animation: alarmOn 0.5s infinite;\n}\n\n@keyframes alarmOn {\n to {\n fill: darkred;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccessDenied.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AccessDenied.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AccessDenied.vue?vue&type=template&id=b212bed8&scoped=true\"\nimport script from \"./AccessDenied.vue?vue&type=script&lang=js\"\nexport * from \"./AccessDenied.vue?vue&type=script&lang=js\"\nimport style0 from \"./AccessDenied.vue?vue&type=style&index=0&id=b212bed8&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b212bed8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(_vm.$can('invoice_overview_view'))?_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'InvoiceOverview'}}},[_vm._v(_vm._s(_vm.$t('administration_overview_invoice')))])],1):_vm._e(),(_vm.$can('administration_overrule_fees_per_event_view'))?_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'AdministrationEventFeesOverview'}}},[_vm._v(_vm._s(_vm.$t('administration_event_fees')))])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col v-if=\"$can('invoice_overview_view')\" lg=\"3\" sm=\"6\" cols=\"12\">\n <router-link :to=\"{name: 'InvoiceOverview'}\" class=\"info-card center text-center card\">{{ $t('administration_overview_invoice') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('administration_overrule_fees_per_event_view')\" lg=\"3\" sm=\"6\" cols=\"12\">\n <router-link :to=\"{name: 'AdministrationEventFeesOverview'}\" class=\"info-card center text-center card\">{{ $t('administration_event_fees') }}</router-link>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"AdministrationOverview\",\n created() {\n document.title = this.$t('nav_administration')\n if(this.$store.state.user) {\n if(!this.$can('master_data_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('admin_administration_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdministrationOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdministrationOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AdministrationOverview.vue?vue&type=template&id=53a09fd9&scoped=true\"\nimport script from \"./AdministrationOverview.vue?vue&type=script&lang=js\"\nexport * from \"./AdministrationOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"53a09fd9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',{staticClass:\"Parent\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"3\"}},[(_vm.$can('invoice_overview_search'))?_c('b-form-group',[_c('b-form-input',{staticClass:\"v-text-field\",attrs:{\"debounce\":\"750\",\"placeholder\":\"Search\"},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1):_vm._e()],1)],1),(_vm.invoices.length)?_c('b-row',[_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.invoices,\"fields\":[ {key: 'company', label: _vm.$t('company_name')},{key: 'invoice_number', label: _vm.$t('administration_invoice_number', {number: ''})},{key: 'created_at', label: _vm.$t('order_created_at')},{key: 'status', label: _vm.$t('event_status')},{key: 'total', label: _vm.$t('cart_total')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(company)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.company.name)+\" \")]}},{key:\"cell(created_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.created_at))+\" \")]}},{key:\"cell(status)\",fn:function({item}){return [_c('status-label',{attrs:{\"status\":item.status}})]}},{key:\"cell(total)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.total))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [(item.url)?_c('b-button',{staticClass:\"mr-3 mb-1\",on:{\"click\":function($event){return _vm.downloadFile(item.invoice_number, 'invoice')}}},[_vm._v(_vm._s(_vm.$t('company_invoice_overview_invoice')))]):_vm._e(),(item.payout_summary_url)?_c('b-button',{on:{\"click\":function($event){return _vm.downloadFile(item.invoice_number, 'payout_summary')}}},[_vm._v(_vm._s(_vm.$t('company_invoice_overview_payout_summary')))]):_vm._e(),(!item.url)?_c('b-button',{staticClass:\"mr-3 mb-1\",on:{\"click\":function($event){return _vm.generateInvoice(item.invoice_number)}}},[_vm._v(_vm._s(_vm.$t('invoice_overview_btn_generate_invoice')))]):_vm._e(),(!item.payout_summary_url)?_c('b-button',{staticClass:\"mr-3 mb-1\",on:{\"click\":function($event){return _vm.generatePayoutSummary(item.invoice_number)}}},[_vm._v(_vm._s(_vm.$t('invoice_overview_btn_generate_payout_summary')))]):_vm._e(),(_vm.$can('invoice_details_view'))?_c('b-button',{staticClass:\"mr-2 ml-3 btnEvent\",attrs:{\"variant\":\"row-edit\",\"to\":{name:'InvoiceDetails', params:{number: item.invoice_number}}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e()]}}],null,false,486300700)}),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getInvoices}}):_vm._e()],1)],1):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n\n <b-row class=\"Parent\">\n <b-col cols=\"12\" lg=\"3\">\n <b-form-group v-if=\"$can('invoice_overview_search')\">\n <b-form-input class=\"v-text-field\" v-model=\"search\" debounce=\"750\"\n placeholder=\"Search\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row v-if=\"invoices.length\">\n <b-col class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"invoices\" :fields=\"[ {key: 'company', label: $t('company_name')},{key: 'invoice_number', label: $t('administration_invoice_number', {number: ''})},{key: 'created_at', label: $t('order_created_at')},{key: 'status', label: $t('event_status')},{key: 'total', label: $t('cart_total')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(company)=\"{item}\">\n {{ item.company.name }}\n </template>\n <template v-slot:cell(created_at)=\"{item}\">\n {{ item.created_at | date_time}}\n </template>\n <template v-slot:cell(status)=\"{item}\">\n <status-label :status=\"item.status\"></status-label>\n </template>\n <template v-slot:cell(total)=\"{item}\">\n {{ item.total | currency }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button @click=\"downloadFile(item.invoice_number, 'invoice')\" v-if=\"item.url\" class=\"mr-3 mb-1\">{{ $t('company_invoice_overview_invoice') }}</b-button>\n <b-button @click=\"downloadFile(item.invoice_number, 'payout_summary')\" v-if=\"item.payout_summary_url\">{{ $t('company_invoice_overview_payout_summary') }}</b-button>\n\n <b-button @click=\"generateInvoice(item.invoice_number)\" v-if=\"!item.url\" class=\"mr-3 mb-1\">{{ $t('invoice_overview_btn_generate_invoice') }}</b-button>\n <b-button @click=\"generatePayoutSummary(item.invoice_number)\" v-if=\"!item.payout_summary_url\" class=\"mr-3 mb-1\">{{ $t('invoice_overview_btn_generate_payout_summary') }}</b-button>\n\n <b-button v-if=\"$can('invoice_details_view')\" class=\"mr-2 ml-3 btnEvent\" variant=\"row-edit\" :to=\"{name:'InvoiceDetails', params:{number: item.invoice_number}}\">{{ $t('manage') }}</b-button>\n </template>\n </b-table>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getInvoices\"></pagination>\n </b-col>\n </b-row>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport StatusLabel from \"@/components/StatusLabel\";\n\nexport default {\n components: {\n StatusLabel\n },\n name: 'InvoiceOverview',\n data() {\n return {\n invoices: {},\n search: '',\n page_data: null,\n }\n },\n created() {\n document.title = this.$t('backend_title_invoices_overview')\n if(this.$store.state.user) {\n if(!this.$can('invoice_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getInvoices();\n },\n methods: {\n generatePayoutSummary(invoiceNumber){\n api.invoice().generatePayoutSummary(invoiceNumber)\n this.$store.commit('success', 'invoice_overview_file_generated')\n },\n generateInvoice(invoiceNumber){\n api.invoice().generateInvoice(invoiceNumber)\n this.$store.commit('success', 'invoice_overview_file_generated')\n },\n downloadFile(invoice_number, type){\n api.invoice().downloadFile(invoice_number, type).then((response) => {\n api.invoice().getFileName(invoice_number, type).then((filename) => {\n try {\n let url = window.URL.createObjectURL(new Blob([response], { type: 'application/pdf' }));\n let link = document.createElement('a');\n link.href = url;\n link.setAttribute('download', filename);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (error) {\n console.error('Error downloading PDF:', error);\n } \n })\n });\n },\n getInvoices(page = 1) {\n if (!page) {\n page = 1\n }\n api.invoice().getAll(page).then(invoices => {\n this.page_data = invoices\n this.invoices = invoices.data\n })\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('invoice_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n search() {\n if (this.search.length === 0) {\n this.getInvoices(1)\n return\n }\n api.invoice().searchInvoice(this.search).then((invoices) => {\n this.page_data = invoices\n this.invoices = invoices.data\n })\n },\n }\n}\n</script>\n\n<style>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InvoiceOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InvoiceOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./InvoiceOverview.vue?vue&type=template&id=74c3867e\"\nimport script from \"./InvoiceOverview.vue?vue&type=script&lang=js\"\nexport * from \"./InvoiceOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-card',{staticClass:\"info-card\"},[_c('b-card-body',[(_vm.invoice)?_c('b-row',{staticClass:\"Parent\"},[_c('b-col',[_c('h3',[_vm._v(_vm._s(_vm.$t('administration_invoice_number', {number: _vm.invoice.invoice_number})))])]),_c('b-col',[(_vm.$can('invoice_details_create_credit_invoice'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{attrs:{\"variant\":\"new\"}},[_vm._v(_vm._s(_vm.$t('invoice_details_create_credit_invoice')))])],1):_vm._e()],1)],1):_vm._e()],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-card class=\"info-card\">\n <b-card-body>\n <b-row v-if=\"invoice\" class=\"Parent\">\n <b-col><h3>{{ $t('administration_invoice_number', {number: invoice.invoice_number}) }}</h3></b-col>\n <b-col>\n <b-form-group v-if=\"$can('invoice_details_create_credit_invoice')\" class=\"text-right container-distance\">\n <b-button variant=\"new\">{{ $t('invoice_details_create_credit_invoice') }}</b-button>\n </b-form-group>\n </b-col>\n </b-row>\n </b-card-body>\n </b-card>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"InvoiceDetails\",\n data(){\n return {\n invoice: null,\n }\n },\n mounted() {\n this.invoice = {\n invoice_number: this.$route.params.number\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InvoiceDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./InvoiceDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./InvoiceDetails.vue?vue&type=template&id=2a8b6cfb&scoped=true\"\nimport script from \"./InvoiceDetails.vue?vue&type=script&lang=js\"\nexport * from \"./InvoiceDetails.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2a8b6cfb\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-card',{staticClass:\"info-card\"},[_c('b-card-body',[_c('b-row',{staticClass:\"Parent\"},[_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('company')}},[_c('v-select',{attrs:{\"options\":_vm.companies,\"label\":\"name\"},on:{\"input\":_vm.clearEvent},model:{value:(_vm.selectedCompany),callback:function ($$v) {_vm.selectedCompany=$$v},expression:\"selectedCompany\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"6\",\"lg\":\"3\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('order_event')}},[_c('v-select',{attrs:{\"options\":_vm.events,\"label\":\"name\"},model:{value:(_vm.selectedEvent),callback:function ($$v) {_vm.selectedEvent=$$v},expression:\"selectedEvent\"}}),_c('b-form-checkbox',{staticClass:\"mt-2 report-switch-small\",attrs:{\"switch\":\"\",\"value\":true,\"unchecked-value\":false},model:{value:(_vm.includeArchivedEvents),callback:function ($$v) {_vm.includeArchivedEvents=$$v},expression:\"includeArchivedEvents\"}},[_vm._v(_vm._s(_vm.$t('reports_include_archived_events')))])],1)],1)],1)],1)],1),(_vm.selectedEvent)?_c('b-card',{staticClass:\"info-card\"},[_c('b-card-body',[_c('b-row',[_c('b-col',[_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(\"ID\")])]),_c('td',[_vm._v(_vm._s(_vm.selectedEvent.id))])]),_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(_vm._s(_vm.$t('export_event_name')))])]),_c('td',[_vm._v(_vm._s(_vm.selectedEvent.name))])])]),_c('b-col',[_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(_vm._s(_vm.$t('event_starts_at')))])]),_c('td',[_vm._v(_vm._s(_vm._f(\"date_time\")(_vm.selectedEvent.starts_at)))])]),_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(_vm._s(_vm.$t('event_ends_at')))])]),_c('td',[_vm._v(_vm._s(_vm._f(\"date_time\")(_vm.selectedEvent.ends_at)))])])]),_c('b-col',[_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(_vm._s(_vm.$t('event_status')))])]),_c('td',[_vm._v(_vm._s(_vm.selectedEvent.status))])]),_c('tr',[_c('td',[_c('span',{staticClass:\"font-weight-bold mr-3\"},[_vm._v(_vm._s(_vm.$t('event_continuous')))])]),_c('td',[_vm._v(_vm._s(_vm.selectedEvent.continuous ? _vm.$t('yes') : _vm.$t('no')))])])])],1)],1)],1):_vm._e(),(_vm.selectedEvent)?_c('div',{staticClass:\"mt-5\"},[_c('b-row',{staticClass:\"Parent\"},[_c('b-col',[(_vm.$can('administration_overrule_fees_per_event_edit'))?_c('b-button',{staticClass:\"mb-4\",attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddEventFeeModal}},[_vm._v(_vm._s(_vm.$t('admin_company_add_company_fee')))]):_vm._e(),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.selectedEvent.fees,\"fields\":[{key: 'fee_type', label: _vm.$t('admin_company_fee_type')},{key: 'fee', label: _vm.$t('admin_company_fee')},{key: 'retroactive', label: _vm.$t('event_fees_retroactive')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(fee)\",fn:function({item}){return [(item.fee_type === 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(item.fee + '%'))]):_vm._e(),(item.fee_type !== 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(item.fee)))]):_vm._e()]}},{key:\"cell(retroactive)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.retroactive ? _vm.$t('yes') : _vm.$t('no'))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('administration_overrule_fees_per_event_edit'))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.showEditEventFeeModal(item)}}},[_vm._v(_vm._s(_vm.$t('edit')))]):_vm._e()]}}],null,false,1070753935)})],1)],1)],1)],1):_vm._e(),_c('b-modal',{attrs:{\"id\":\"add-event-fee-modal\",\"title\":_vm.$t('admin_company_add_company_fee')},on:{\"close\":function($event){_vm.eventFee = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.loading || !_vm.eventFee || !_vm.eventFee.fee_type || !_vm.eventFee.fee},on:{\"click\":_vm.save}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s((_vm.eventFee && _vm.eventFee.id) ? _vm.$t('update') : _vm.$t('add'))+\" \")],1)]},proxy:true}])},[(_vm.eventFee)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('admin_company_fee_type')}},[_c('b-select',{attrs:{\"options\":_vm.eventFees},model:{value:(_vm.eventFee.fee_type),callback:function ($$v) {_vm.$set(_vm.eventFee, \"fee_type\", $$v)},expression:\"eventFee.fee_type\"}})],1),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_fee'))+\" \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.eventFee.fee_type === 'free-tickets-free-percentage' ? '%' : _vm.$t('currency')))])]},proxy:true}],null,false,3308584701)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.eventFee.fee),callback:function ($$v) {_vm.$set(_vm.eventFee, \"fee\", $$v)},expression:\"eventFee.fee\"}})],1),_c('br'),_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.eventFee.retroactive),callback:function ($$v) {_vm.$set(_vm.eventFee, \"retroactive\", $$v)},expression:\"eventFee.retroactive\"}},[_vm._v(_vm._s(_vm.$t('event_fees_retroactive')))])],1)],1):_vm._e()])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-card class=\"info-card\">\n <b-card-body>\n <b-row class=\"Parent\">\n <b-col cols=\"6\" lg=\"3\">\n <b-form-group :label=\"$t('company')\">\n <v-select v-model=\"selectedCompany\" @input=\"clearEvent\" :options=\"companies\" label=\"name\"></v-select>\n </b-form-group>\n </b-col>\n <b-col cols=\"6\" lg=\"3\">\n <b-form-group :label=\"$t('order_event')\">\n <v-select v-model=\"selectedEvent\" :options=\"events\" label=\"name\"></v-select>\n <b-form-checkbox class=\"mt-2 report-switch-small\" switch v-model=\"includeArchivedEvents\" :value=\"true\" :unchecked-value=\"false\">{{ $t('reports_include_archived_events') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </b-card-body>\n </b-card>\n\n <b-card v-if=\"selectedEvent\" class=\"info-card\">\n <b-card-body>\n <b-row>\n <b-col>\n <tr>\n <td>\n <span class=\"font-weight-bold mr-3\">ID</span>\n </td>\n <td>{{ selectedEvent.id }}</td>\n </tr>\n <tr>\n <td>\n <span class=\"font-weight-bold mr-3\">{{ $t('export_event_name') }}</span>\n </td>\n <td>{{ selectedEvent.name }}</td>\n </tr>\n </b-col>\n <b-col>\n <tr>\n <td><span class=\"font-weight-bold mr-3\">{{ $t('event_starts_at') }}</span></td>\n <td>{{ selectedEvent.starts_at | date_time }}</td>\n </tr>\n <tr>\n <td><span class=\"font-weight-bold mr-3\">{{ $t('event_ends_at') }}</span></td>\n <td>{{ selectedEvent.ends_at | date_time }}</td>\n </tr>\n </b-col>\n <b-col>\n <tr>\n <td><span class=\"font-weight-bold mr-3\">{{ $t('event_status') }}</span></td>\n <td>{{ selectedEvent.status }}</td>\n </tr>\n <tr>\n <td><span class=\"font-weight-bold mr-3\">{{ $t('event_continuous') }}</span></td>\n <td>{{ selectedEvent.continuous ? $t('yes') : $t('no') }}</td>\n </tr>\n </b-col>\n </b-row>\n </b-card-body>\n </b-card>\n \n <div v-if=\"selectedEvent\" class=\"mt-5\">\n\n <b-row class=\"Parent\">\n <b-col>\n <b-button v-if=\"$can('administration_overrule_fees_per_event_edit')\" variant=\"new\" @click=\"showAddEventFeeModal\" class=\"mb-4\">{{ $t('admin_company_add_company_fee') }}</b-button>\n\n <div class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"selectedEvent.fees\" :fields=\"[{key: 'fee_type', label: $t('admin_company_fee_type')},{key: 'fee', label: $t('admin_company_fee')},{key: 'retroactive', label: $t('event_fees_retroactive')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(fee)=\"{item}\">\n <span v-if=\"item.fee_type === 'free-tickets-free-percentage'\">{{ item.fee + '%' }}</span>\n <span v-if=\"item.fee_type !== 'free-tickets-free-percentage'\">{{ item.fee | currency }}</span>\n </template>\n <template v-slot:cell(retroactive)=\"{item}\">\n {{ item.retroactive ? $t('yes') : $t('no') }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('administration_overrule_fees_per_event_edit')\" variant=\"primary\" @click=\"showEditEventFeeModal(item)\" class=\"mr-2\">{{ $t('edit') }}</b-button>\n </template>\n </b-table>\n </div>\n </b-col>\n </b-row>\n </div>\n\n <b-modal id=\"add-event-fee-modal\" @close=\"eventFee = null\" :title=\"$t('admin_company_add_company_fee')\">\n\n <div v-if=\"eventFee\">\n <b-form-group :label=\"$t('admin_company_fee_type')\">\n <b-select v-model=\"eventFee.fee_type\" :options=\"eventFees\"></b-select>\n </b-form-group>\n\n {{ $t('admin_company_fee') }}\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ eventFee.fee_type === 'free-tickets-free-percentage' ? '%' : $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"eventFee.fee\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n <b-form-group>\n <b-form-checkbox v-model=\"eventFee.retroactive\">{{ $t('event_fees_retroactive') }}</b-form-checkbox>\n </b-form-group>\n </div>\n\n <template #modal-footer>\n <b-button :disabled=\"loading || !eventFee || !eventFee.fee_type || !eventFee.fee\" @click=\"save\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ (eventFee && eventFee.id) ? $t('update') : $t('add') }}\n </b-button>\n </template>\n </b-modal>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {deepClone} from \"@/functions\";\n\nexport default {\n name: \"AdministrationEventFeesOverview\",\n data() {\n return {\n loading: false,\n companies: [],\n selectedCompany: null,\n selectedEvent: null,\n includeArchivedEvents: false,\n eventFee: null,\n eventFees: [\n {value: 'ticket-fee', text: this.$t('admin_company_company_fee_ticket_fee')},\n {value: 'box-office-ticket-fee', text: this.$t('admin_company_company_fee_box_office_ticket_fee')},\n {value: 'refund-fee', text: this.$t('admin_company_company_fee_refund_fee')},\n {value: 'free-tickets-free-percentage', text: this.$t('admin_company_company_fee_free_tickets_free_percentage')},\n {value: 'free-ticketfee', text: this.$t('admin_company_company_fee_free_ticketfee')},\n ]\n }\n },\n mounted() {\n this.getCompanies();\n },\n methods: {\n getCompanies() {\n api.administration().companiesWithEvents().then(companies => {\n const currentCompany = this.selectedCompany?.id;\n const currentEvent = this.selectedEvent?.id;\n\n this.companies = companies;\n\n if(currentCompany) {\n this.selectedCompany = this.companies.find(c => c.id === currentCompany)\n }\n if(currentEvent) {\n setTimeout(() => {\n this.selectedEvent = this.events.find(e => e.id === currentEvent)\n }, 200)\n }\n })\n },\n showAddEventFeeModal() {\n this.eventFee = {\n fee_type: null,\n fee: null,\n retroactive: false\n };\n this.$bvModal.show('add-event-fee-modal');\n },\n showEditEventFeeModal(item) {\n this.eventFee = deepClone(item);\n this.$bvModal.show('add-event-fee-modal');\n },\n save() {\n this.loading = true;\n\n const request = this.eventFee.id ?\n api.administration().updateEventFee(this.selectedEvent.id, this.eventFee.id, this.eventFee) :\n api.administration().createEventFee(this.selectedEvent.id, this.eventFee)\n\n request.then(() => {\n this.loading = false;\n this.getCompanies();\n this.$bvModal.hide('add-event-fee-modal');\n }).catch(() => {\n this.loading = false;\n })\n },\n clearEvent() {\n this.selectedEvent = null;\n this.eventFee = null;\n }\n },\n computed: {\n events() {\n if(this.selectedCompany) {\n return this.selectedCompany.events.filter(e => {\n if(this.includeArchivedEvents) {\n return true;\n }\n return e.status !== 'archived'\n });\n }\n\n let events = [];\n this.companies.forEach(company => {\n events = events.concat(company.events)\n })\n\n return events.filter(e => {\n if(this.includeArchivedEvents) {\n return true;\n }\n return e.status !== 'archived'\n }).sort((a, b) => new Date(a.starts_at) - new Date(b.starts_at))\n }\n }\n}\n</script>\n\n<style scoped>\n.info-card {\n margin-left: 0 !important;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdministrationEventFeesOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdministrationEventFeesOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AdministrationEventFeesOverview.vue?vue&type=template&id=226a4b4b&scoped=true\"\nimport script from \"./AdministrationEventFeesOverview.vue?vue&type=script&lang=js\"\nexport * from \"./AdministrationEventFeesOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./AdministrationEventFeesOverview.vue?vue&type=style&index=0&id=226a4b4b&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"226a4b4b\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"select-events-container\"},[(!_vm.loading && _vm.events.length)?_c('div',{staticClass:\"center-div\"},[_c('b-form-group',{staticClass:\"select-event\",attrs:{\"label\":_vm.$t('scan_terminal_choose_event_title')}},[_c('b-form-select',{attrs:{\"options\":_vm.events,\"text-field\":\"name\",\"value-field\":\"id\"},model:{value:(_vm.event),callback:function ($$v) {_vm.event=$$v},expression:\"event\"}})],1),_c('b-button',{staticClass:\"submit-btn\",attrs:{\"variant\":\"success\",\"disabled\":!_vm.event},on:{\"click\":_vm.openScanEvent}},[_vm._v(_vm._s(_vm.$t('submit')))])],1):_vm._e(),(!_vm.loading && !_vm.events.length)?_c('div',{staticClass:\"center-div\"},[_c('label',[_vm._v(_vm._s(_vm.$t('no_events_to_show')))])]):_vm._e()])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid>\n <div class=\"select-events-container\">\n <div v-if=\"!loading && events.length\" class=\"center-div\">\n <b-form-group :label=\"$t('scan_terminal_choose_event_title')\" class=\"select-event\">\n <b-form-select :options=\"events\" v-model=\"event\" text-field=\"name\" value-field=\"id\"></b-form-select>\n </b-form-group>\n <b-button @click=\"openScanEvent\" class=\"submit-btn\" variant=\"success\" :disabled=\"!event\">{{ $t('submit') }}</b-button>\n </div>\n <div v-if=\"!loading && !events.length\" class=\"center-div\">\n <label>{{ $t('no_events_to_show') }}</label>\n </div>\n </div>\n </b-container>\n</template>\n\n<script>\n\n\nimport api from \"@/api\";\n\nexport default {\n name: \"ScannerTerminalEvents\",\n data() {\n return {\n events: [],\n event: null,\n loading: false,\n }\n },\n mounted() {\n this.loading = true;\n api.event().live().then(response => {\n this.events = response;\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n },\n methods: {\n openScanEvent() {\n this.$router.push({name: 'ScannerTerminalScan', params:{event: this.event}});\n }\n }\n}\n</script>\n\n<style scoped>\n.select-events-container {\n position: relative;\n height: 100vh;\n}\n.submit-btn {\n height: 50px !important;\n display: inline;\n}\n.select-event {\n display: inline;\n margin-right: 15px;\n}\n.center-div {\n margin: 0;\n position: absolute;\n top: 50%;\n left: 50%;\n -ms-transform: translate(-50%, -50%);\n transform: translate(-50%, -50%);\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalEvents.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalEvents.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScannerTerminalEvents.vue?vue&type=template&id=3a6bbffd&scoped=true\"\nimport script from \"./ScannerTerminalEvents.vue?vue&type=script&lang=js\"\nexport * from \"./ScannerTerminalEvents.vue?vue&type=script&lang=js\"\nimport style0 from \"./ScannerTerminalEvents.vue?vue&type=style&index=0&id=3a6bbffd&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3a6bbffd\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(_vm.$can('master_data_default_values_layout_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'DefaultCompanyLayout'}}},[_vm._v(_vm._s(_vm.$t('default_company_layout')))])],1):_vm._e(),(_vm.$can('master_data_default_values_fees_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'DefaultCompanyFees'}}},[_vm._v(_vm._s(_vm.$t('default_company_fees')))])],1):_vm._e(),(_vm.$can('master_data_default_values_permissions_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'DefaultCompanyPermissions'}}},[_vm._v(_vm._s(_vm.$t('default_company_permissions')))])],1):_vm._e(),(_vm.$can('master_data_default_values_ticket_template_view'))?_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"7\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'DefaultCompanyTicketTemplate'}}},[_vm._v(_vm._s(_vm.$t('default_company_ticket_template')))])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col v-if=\"$can('master_data_default_values_layout_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'DefaultCompanyLayout'}\" class=\"info-card center text-center card\">{{ $t('default_company_layout') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_default_values_fees_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'DefaultCompanyFees'}\" class=\"info-card center text-center card\">{{ $t('default_company_fees') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_default_values_permissions_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'DefaultCompanyPermissions'}\" class=\"info-card center text-center card\">{{ $t('default_company_permissions') }}</router-link>\n </b-col>\n <b-col v-if=\"$can('master_data_default_values_ticket_template_view')\" lg=\"4\" sm=\"7\" cols=\"12\">\n <router-link :to=\"{name: 'DefaultCompanyTicketTemplate'}\" class=\"info-card center text-center card\">{{ $t('default_company_ticket_template') }}</router-link>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nexport default {\n name: \"DefaultCompanySettings\",\n created() {\n document.title = this.$t('default_account_setup')\n if(this.$store.state.user) {\n if(!this.$can('master_data_default_values_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_default_values_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanySettings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanySettings.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DefaultCompanySettings.vue?vue&type=template&id=a18901fc&scoped=true\"\nimport script from \"./DefaultCompanySettings.vue?vue&type=script&lang=js\"\nexport * from \"./DefaultCompanySettings.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a18901fc\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"9\"}},[_c('h2',{staticClass:\"title text-left\"},[_vm._v(_vm._s(_vm.$t('default_company_layout')))])]),_c('b-col',{staticClass:\"text-left text-sm-right\",attrs:{\"cols\":\"12\",\"sm\":\"3\"}},[_c('b-form-group',[_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.save()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1)],1)],1)],1),_c('b-row',{staticClass:\"pb-3\"},[_c('b-col',{staticClass:\"mb-4 mb-lg-0\",attrs:{\"cols\":\"12\",\"lg\":\"4\"}},[_c('b-card',{attrs:{\"title\":_vm.$t('layout_colors')}},[_c('b-card-text',[_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_primary_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.primary_color),callback:function ($$v) {_vm.$set(_vm.layout, \"primary_color\", $$v)},expression:\"layout.primary_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.primary_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_secondary_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.secondary_color),callback:function ($$v) {_vm.$set(_vm.layout, \"secondary_color\", $$v)},expression:\"layout.secondary_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.secondary_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_accent_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.accent_color),callback:function ($$v) {_vm.$set(_vm.layout, \"accent_color\", $$v)},expression:\"layout.accent_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.accent_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_description_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.description_color),callback:function ($$v) {_vm.$set(_vm.layout, \"description_color\", $$v)},expression:\"layout.description_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.description_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_buttons_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.button_color),callback:function ($$v) {_vm.$set(_vm.layout, \"button_color\", $$v)},expression:\"layout.button_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.buttons_color)})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('layout_button_text_color')}},[(_vm.$can('my_company_layout_edit'))?_c('color-picker',{model:{value:(_vm.layout.button_text_color),callback:function ($$v) {_vm.$set(_vm.layout, \"button_text_color\", $$v)},expression:\"layout.button_text_color\"}}):_c('div',{style:('width: 32px; height: 32px; background-color: ' + _vm.layout.button_text_color)})],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\" sm=\"9\">\n <h2 class=\"title text-left\">{{ $t('default_company_layout') }}</h2>\n </b-col>\n <b-col cols=\"12\" sm=\"3\" class=\" text-left text-sm-right\">\n <b-form-group>\n <b-button :disabled=\"loading\" variant=\"primary\" @click=\"save()\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('save') }}\n </b-button>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"pb-3\">\n <b-col cols=\"12\" lg=\"4\" class=\"mb-4 mb-lg-0\">\n <b-card :title=\"$t('layout_colors')\">\n <b-card-text>\n <b-form-group :label=\"$t('layout_primary_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.primary_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.primary_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_secondary_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.secondary_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.secondary_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_accent_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.accent_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.accent_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_description_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.description_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.description_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_buttons_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.button_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.buttons_color\"></div>\n </b-form-group>\n <b-form-group :label=\"$t('layout_button_text_color')\">\n <color-picker v-if=\"$can('my_company_layout_edit')\" v-model=\"layout.button_text_color\"></color-picker>\n <div v-else :style=\"'width: 32px; height: 32px; background-color: ' + layout.button_text_color\"></div>\n </b-form-group>\n </b-card-text>\n </b-card>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\n\nexport default {\n name: \"DefaultCompanyLayout\",\n data() {\n return {\n working: false,\n loading: false,\n editUser: {},\n layout: {\n secondary: {\n backgroundColor: null,\n color: null,\n },\n info_blocks: {\n titleColor: null,\n color: null,\n backgroundColor: null,\n },\n top_bar: {\n titleColor: null,\n dateColor: null,\n },\n stepper: {\n hintColor: null,\n backgroundColor: null,\n color: null,\n doneBackgroundColor: null,\n doneColor: null,\n },\n cart_sidebar: {\n backgroundColor: null,\n color: null,\n buttonBackgroundColor: null,\n buttonColor: null,\n },\n cart:{\n backgroundColor: null,\n color: null,\n productGroupBackgroundColor: null,\n productGroupTextColor: null,\n productTitleColor: null,\n productSubtextColor: null,\n productPriceColor: null,\n buttonBackgroundColor: null,\n buttonColor: null,\n },\n header: {\n backgroundColor: null,\n },\n primary: {\n color: null,\n },\n countdown: {\n cardTopColor: null,\n cardBottomColor: null,\n cardTextColor: null\n }\n },\n }\n },\n created() {\n document.title = this.$t('backend_title_default_company_layout')\n this.loadLayout();\n if(this.$store.state.user) {\n if(!this.$can('master_data_default_values_layout_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n methods: {\n loadLayout() {\n api.defaultValues().getByKey('default-layout').then(layout => {\n if(layout.value) {\n this.layout = layout.value;\n if(Array.isArray(this.layout.header)) {\n this.layout.header = {}\n }\n if(Array.isArray(this.layout.primary)) {\n this.layout.primary = {}\n }\n if(Array.isArray(this.layout.secondary)) {\n this.layout.secondary = {}\n }\n if(Array.isArray(this.layout.info_blocks)) {\n this.layout.info_blocks = {}\n }\n if(Array.isArray(this.layout.top_bar)) {\n this.layout.top_bar = {}\n }\n if(Array.isArray(this.layout.stepper)) {\n this.layout.stepper = {}\n }\n if(Array.isArray(this.layout.cart_sidebar)) {\n this.layout.cart_sidebar = {}\n }\n if(Array.isArray(this.layout.cart)) {\n this.layout.cart = {}\n }\n if(Array.isArray(this.company.layout.countdown)) {\n this.company.layout.countdown = {}\n }\n this.layout = Object.assign(this.layout, this.layout)\n }\n })\n },\n save() {\n api.defaultValues().save('default-layout', this.layout).then(() => {\n this.loadLayout()\n this.$store.commit('success', 'layout_updated');\n }).catch(() => {\n this.loading = false;\n })\n },\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_default_values_layout_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.one-colorpicker {\n border: solid 1px silver;\n}\n@media (max-width:992px) {\n .title{\n font-size: 25px;\n text-align: center;\n }\n .card-text{\n display: flex;\n flex-wrap: wrap;\n position: relative;\n width: 100%;\n }\n .card-text > fieldset{\n width: 50%;\n margin-bottom: 20px;\n }\n}\n@media (max-width:576px) {\n .card-text{\n display: block;\n }\n .card-text > fieldset{\n width: 100%;\n margin-bottom: 20px;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyLayout.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyLayout.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DefaultCompanyLayout.vue?vue&type=template&id=46e6fa8a&scoped=true\"\nimport script from \"./DefaultCompanyLayout.vue?vue&type=script&lang=js\"\nexport * from \"./DefaultCompanyLayout.vue?vue&type=script&lang=js\"\nimport style0 from \"./DefaultCompanyLayout.vue?vue&type=style&index=0&id=46e6fa8a&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"46e6fa8a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"12\",\"sm\":\"9\"}},[_c('h2',{staticClass:\"title text-left\"},[_vm._v(_vm._s(_vm.$t('backend_title_default_company_fees')))])])],1),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-col',{staticClass:\"ml-0 pl-0\",attrs:{\"cols\":\"12\",\"md\":\"12\"}},[(_vm.$can('master_data_default_values_fees_edit'))?_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddPaymentCostsModal}},[_vm._v(_vm._s(_vm.$t('admin_company_add_payment_method')))]):_vm._e()],1),_c('span',[_vm._v(_vm._s(_vm.$t('manage_company_without_vat')))]),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.paymentMethodList,\"fields\":[{key: 'payment_method', label: _vm.$t('admin_company_payment_method')},{key: 'payment_method_fees.fee_percentage', label: _vm.$t('admin_company_payment_method_fee_percentage')},{key: 'payment_method_fees.fee_fixed_amount', label: _vm.$t('admin_company_payment_method_fee_fixed')},{key: 'country', label: _vm.$t('company_country')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(payment_method)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm.payment_methods.find(pm => pm.id === item.payment_method).name)+\" \")]}},{key:\"cell(payment_method_fees.fee_percentage)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.fee_percentage)+\"% \")]}},{key:\"cell(payment_method_fees.fee_fixed_amount)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.fee_fixed_amount))+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.showEditPaymentFeeModal(item)}}},[_vm._v(_vm._s(_vm.$t('edit')))])]}}])})],1)],1),_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[(_vm.$can('master_data_default_values_fees_edit'))?_c('b-button',{staticClass:\"mb-4\",attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showAddCompanyFeeModal}},[_vm._v(_vm._s(_vm.$t('admin_company_add_company_fee')))]):_vm._e(),_c('div',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.fees,\"fields\":[{key: 'fee_type', label: _vm.$t('admin_company_fee_type')},{key: 'fee', label: _vm.$t('admin_company_fee')},{key: 'country', label: _vm.$t('company_country')},{key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(country)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.country)+\" \")]}},{key:\"cell(fee)\",fn:function({item}){return [(item.fee_type === 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(item.fee + '%'))]):_vm._e(),(item.fee_type !== 'free-tickets-free-percentage')?_c('span',[_vm._v(_vm._s(_vm._f(\"currency\")(item.fee)))]):_vm._e()]}},{key:\"cell(actions)\",fn:function({item}){return [_c('b-button',{staticClass:\"mr-2\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.showEditCompanyFeeModal(item)}}},[_vm._v(_vm._s(_vm.$t('edit')))])]}}])})],1)],1)],1),_c('b-modal',{attrs:{\"id\":\"add-company-payment-method\",\"title\":_vm.$t('admin_company_add_payment_method', _vm.company),\"size\":\"lg\"},on:{\"close\":function($event){_vm.paymentFee = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{on:{\"click\":function($event){return _vm.addPaymentMethodFees()}}},[_vm._v(_vm._s(_vm.$t('add')))])]},proxy:true}])},[(_vm.paymentFee)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('admin_company_payment_method')}},[_c('b-select',{attrs:{\"options\":_vm.payment_methods,\"value-field\":\"id\",\"text-field\":\"name\"},model:{value:(_vm.paymentFee.payment_method),callback:function ($$v) {_vm.$set(_vm.paymentFee, \"payment_method\", $$v)},expression:\"paymentFee.payment_method\"}})],1),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_payment_method_fee_percentage'))+\" \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(\"%\")])]},proxy:true}],null,false,1569811129)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.paymentFee.fee_percentage),callback:function ($$v) {_vm.$set(_vm.paymentFee, \"fee_percentage\", $$v)},expression:\"paymentFee.fee_percentage\"}})],1),_c('br'),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_payment_method_fee_fixed'))+\" ( \"+_vm._s(_vm.$t('manage_company_without_vat'))+\" ) \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.$t('currency')))])]},proxy:true}],null,false,83482215)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.paymentFee.fee_fixed_amount),callback:function ($$v) {_vm.$set(_vm.paymentFee, \"fee_fixed_amount\", $$v)},expression:\"paymentFee.fee_fixed_amount\"}})],1),_c('br'),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_country')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"code\",\"options\":_vm.countries},model:{value:(_vm.paymentFee.country),callback:function ($$v) {_vm.$set(_vm.paymentFee, \"country\", $$v)},expression:\"paymentFee.country\"}})],1)],1):_vm._e()]),_c('b-modal',{attrs:{\"id\":\"add-company-fee-modal\",\"title\":_vm.$t('admin_company_add_company_fee')},on:{\"close\":function($event){_vm.companyFee = null}},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"disabled\":_vm.loading || !_vm.companyFee || !_vm.companyFee.fee_type || !_vm.companyFee.fee},on:{\"click\":_vm.saveCompanyFee}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s((_vm.companyFee && _vm.companyFee.isEdit) ? _vm.$t('update') : _vm.$t('add'))+\" \")],1)]},proxy:true}])},[(_vm.companyFee)?_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('admin_company_fee_type')}},[_c('b-select',{attrs:{\"options\":_vm.companyFees},model:{value:(_vm.companyFee.fee_type),callback:function ($$v) {_vm.$set(_vm.companyFee, \"fee_type\", $$v)},expression:\"companyFee.fee_type\"}})],1),_vm._v(\" \"+_vm._s(_vm.$t('admin_company_fee'))+\" \"),_c('b-input-group',{staticStyle:{\"height\":\"45px\"},scopedSlots:_vm._u([{key:\"prepend\",fn:function(){return [_c('b-input-group-text',{staticStyle:{\"height\":\"45px\"}},[_vm._v(_vm._s(_vm.companyFee.fee_type === 'free-tickets-free-percentage' ? '%' : _vm.$t('currency')))])]},proxy:true}],null,false,516784470)},[_c('b-form-input',{staticStyle:{\"height\":\"45px\"},attrs:{\"type\":\"number\",\"step\":0.01,\"min\":0},model:{value:(_vm.companyFee.fee),callback:function ($$v) {_vm.$set(_vm.companyFee, \"fee\", $$v)},expression:\"companyFee.fee\"}})],1),_c('br'),_c('b-form-group',{attrs:{\"label\":_vm.$t('company_country')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"code\",\"options\":_vm.countries},model:{value:(_vm.companyFee.country),callback:function ($$v) {_vm.$set(_vm.companyFee, \"country\", $$v)},expression:\"companyFee.country\"}})],1)],1):_vm._e()]),(_vm.$can('master_data_default_values_fees_edit'))?_c('b-button',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.save()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col cols=\"12\" sm=\"9\">\n <h2 class=\"title text-left\">{{ $t('backend_title_default_company_fees') }}</h2>\n </b-col>\n </b-row>\n <b-row>\n <b-col sm=\"12\" md=\"6\">\n <b-col cols=\"12\" md=\"12\" class=\"ml-0 pl-0\">\n <b-button v-if=\"$can('master_data_default_values_fees_edit')\" variant=\"new\" @click=\"showAddPaymentCostsModal\">{{ $t('admin_company_add_payment_method') }}</b-button>\n </b-col>\n\n <span>{{ $t('manage_company_without_vat') }}</span>\n\n <div class=\"tableBig\" >\n <b-table class=\"table-container\" :items=\"paymentMethodList\" :fields=\"[{key: 'payment_method', label: $t('admin_company_payment_method')},{key: 'payment_method_fees.fee_percentage', label: $t('admin_company_payment_method_fee_percentage')},{key: 'payment_method_fees.fee_fixed_amount', label: $t('admin_company_payment_method_fee_fixed')},{key: 'country', label: $t('company_country')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(payment_method)=\"{item}\">\n {{ payment_methods.find(pm => pm.id === item.payment_method).name }}\n </template>\n <template v-slot:cell(payment_method_fees.fee_percentage)=\"{item}\">\n {{ item.fee_percentage }}%\n </template>\n <template v-slot:cell(payment_method_fees.fee_fixed_amount)=\"{item}\">\n {{ item.fee_fixed_amount | currency }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button variant=\"primary\" @click=\"showEditPaymentFeeModal(item)\" class=\"mr-2\">{{ $t('edit') }}</b-button>\n </template>\n </b-table>\n </div>\n </b-col>\n\n <b-col sm=\"12\" md=\"6\">\n <b-button v-if=\"$can('master_data_default_values_fees_edit')\" variant=\"new\" @click=\"showAddCompanyFeeModal\" class=\"mb-4\">{{ $t('admin_company_add_company_fee') }}</b-button>\n <div class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"fees\" :fields=\"[{key: 'fee_type', label: $t('admin_company_fee_type')},{key: 'fee', label: $t('admin_company_fee')},{key: 'country', label: $t('company_country')},{key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(country)=\"{item}\">\n {{ item.country }}\n </template>\n <template v-slot:cell(fee)=\"{item}\">\n <span v-if=\"item.fee_type === 'free-tickets-free-percentage'\">{{ item.fee + '%' }}</span>\n <span v-if=\"item.fee_type !== 'free-tickets-free-percentage'\">{{ item.fee | currency }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button variant=\"primary\" @click=\"showEditCompanyFeeModal(item)\" class=\"mr-2\">{{ $t('edit') }}</b-button>\n </template>\n </b-table>\n </div>\n </b-col>\n </b-row>\n\n <b-modal id=\"add-company-payment-method\" @close=\"paymentFee = null\" :title=\"$t('admin_company_add_payment_method', company)\" size=\"lg\">\n\n <div v-if=\"paymentFee\">\n <b-form-group :label=\"$t('admin_company_payment_method')\">\n <b-select v-model=\"paymentFee.payment_method\" :options=\"payment_methods\" value-field=\"id\" text-field=\"name\"></b-select>\n </b-form-group>\n {{ $t('admin_company_payment_method_fee_percentage') }}\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">%</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"paymentFee.fee_percentage\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n {{ $t('admin_company_payment_method_fee_fixed') }} ( {{ $t('manage_company_without_vat') }} )\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"paymentFee.fee_fixed_amount\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n <b-form-group :label=\"$t('company_country')\">\n <b-select v-model=\"paymentFee.country\" text-field=\"name\" value-field=\"code\" :options=\"countries\"></b-select>\n </b-form-group>\n\n </div>\n <template #modal-footer>\n <b-button @click=\"addPaymentMethodFees()\">{{ $t('add') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal id=\"add-company-fee-modal\" @close=\"companyFee = null\" :title=\"$t('admin_company_add_company_fee')\">\n\n <div v-if=\"companyFee\">\n <b-form-group :label=\"$t('admin_company_fee_type')\">\n <b-select v-model=\"companyFee.fee_type\" :options=\"companyFees\"></b-select>\n </b-form-group>\n\n {{ $t('admin_company_fee') }}\n <b-input-group style=\"height:45px\">\n <template #prepend>\n <b-input-group-text style=\"height:45px\">{{ companyFee.fee_type === 'free-tickets-free-percentage' ? '%' : $t('currency') }}</b-input-group-text>\n </template>\n <b-form-input style=\"height:45px\"\n type=\"number\"\n v-model=\"companyFee.fee\"\n :step=\"0.01\"\n :min=\"0\"\n ></b-form-input>\n </b-input-group >\n <br>\n <b-form-group :label=\"$t('company_country')\">\n <b-select v-model=\"companyFee.country\" text-field=\"name\" value-field=\"code\" :options=\"countries\"></b-select>\n </b-form-group>\n </div>\n\n <template #modal-footer>\n <b-button :disabled=\"loading || !companyFee || !companyFee.fee_type || !companyFee.fee\" @click=\"saveCompanyFee\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ (companyFee && companyFee.isEdit) ? $t('update') : $t('add') }}\n </b-button>\n </template>\n </b-modal>\n <b-button v-if=\"$can('master_data_default_values_fees_edit')\" @click=\"save()\" :disabled=\"loading\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('save') }}\n </b-button>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {mapState} from \"vuex\";\n\nexport default {\n name: \"DefaultCompanyFees\",\n data() {\n return {\n loading: false,\n company: {},\n fees: [],\n payment_methods:[],\n paymentMethodList: [],\n companyFee:null,\n paymentFee:null,\n companyFees: [\n {value: 'ticket-fee', text: this.$t('admin_company_company_fee_ticket_fee')},\n {value: 'box-office-ticket-fee', text: this.$t('admin_company_company_fee_box_office_ticket_fee')},\n {value: 'refund-fee', text: this.$t('admin_company_company_fee_refund_fee')},\n {value: 'free-tickets-free-percentage', text: this.$t('admin_company_company_fee_free_tickets_free_percentage')},\n {value: 'free-ticketfee', text: this.$t('admin_company_company_fee_free_ticketfee')},\n ],\n countries: []\n }\n },\n methods:{\n showAddPaymentCostsModal() {\n this.paymentFee = {\n payment_method: null,\n fee_percentage: null,\n fee_fixed_amount: null\n };\n this.$bvModal.show('add-company-payment-method')\n },\n showEditPaymentFeeModal(item) {\n item.isEdit = true;\n this.paymentFee = item;\n this.$bvModal.show('add-company-payment-method')\n },\n showAddCompanyFeeModal() {\n this.companyFee = {\n fee_type: null,\n fee: null,\n country: null,\n };\n this.$bvModal.show('add-company-fee-modal')\n },\n showEditCompanyFeeModal(item) {\n item.isEdit = true;\n this.companyFee = item;\n this.$bvModal.show('add-company-fee-modal')\n },\n saveCompanyFee() {\n if(!this.companyFee.isEdit) {\n this.fees.push(this.companyFee);\n }\n this.companyFee = null;\n this.$bvModal.hide('add-company-fee-modal')\n },\n addPaymentMethodFees() {\n if(!this.paymentFee.isEdit) {\n this.paymentMethodList.push(this.paymentFee);\n }\n this.$bvModal.hide('add-company-payment-method')\n this.paymentFee = null;\n },\n save() {\n this.loading = true;\n api.defaultValues().save('default-fees', {\n fees: this.fees,\n payment_methods: this.paymentMethodList\n }).then(() => {\n this.loading = false;\n this.$store.commit('success', this.$t('admin_company_company_fee_updated'));\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n created() {\n document.title = this.$t('nav_master_data')\n if(this.$store.state.user) {\n if(!this.$can('master_data_default_values_fees_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n Promise.all([api.company().getAllPaymentMethods(), api.defaultValues().getByKey('default-fees')])\n .then(async ([paymentMethods, values]) => {\n this.payment_methods = paymentMethods;\n const data = values.value;\n this.paymentMethodList = data && data.payment_methods ? data.payment_methods : []\n this.fees = data && data.fees ? data.fees : []\n })\n api.company().countries().then(countries => {\n this.countries = [{code: null, name: this.$t('company_country'), disabled: true}].concat(countries)\n })\n },\n computed: {\n ...mapState(['user'])\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_default_values_fees_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyFees.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyFees.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DefaultCompanyFees.vue?vue&type=template&id=3b2cf0a0&scoped=true\"\nimport script from \"./DefaultCompanyFees.vue?vue&type=script&lang=js\"\nexport * from \"./DefaultCompanyFees.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3b2cf0a0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('company_permissions')))]),_c('div',{staticClass:\"content-container\"},[_vm._l((_vm.companyPermissions),function(group,index){return _c('div',{key:index},[_c('label',{staticClass:\"group-label px-2 d-block mb-3 mb-1\"},[_c('b-form-checkbox',{staticClass:\"font-weight-bold py-1\",attrs:{\"disabled\":!_vm.$can('admin_company_permission_edit')},on:{\"change\":function($event){return _vm.changePermissionsCheckbox(group, $event)}}},[_vm._v(_vm._s(index))])],1),_c('b-row',_vm._l((group),function(permission){return _c('b-col',{key:permission.id,attrs:{\"cols\":\"6\"}},[_c('b-form-group',{staticClass:\"px-3\"},[_c('b-form-checkbox',{model:{value:(permission.selected),callback:function ($$v) {_vm.$set(permission, \"selected\", $$v)},expression:\"permission.selected\"}},[_vm._v(_vm._s(_vm.$t('permission_' + permission.slug)))])],1)],1)}),1)],1)}),_c('b-button',{attrs:{\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.savePermissions()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1)],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('company_permissions') }}</div>\n <div class=\"content-container\">\n <div v-for=\"(group, index) in companyPermissions\" :key=\"index\">\n <label class=\"group-label px-2 d-block mb-3 mb-1\">\n <b-form-checkbox @change=\"changePermissionsCheckbox(group, $event)\" class=\"font-weight-bold py-1\" :disabled=\"!$can('admin_company_permission_edit')\">{{ index }}</b-form-checkbox>\n </label>\n <b-row>\n <b-col cols=\"6\" v-for=\"permission in group\" :key=\"permission.id\">\n <b-form-group class=\"px-3\">\n <b-form-checkbox v-model=\"permission.selected\">{{ $t('permission_' + permission.slug) }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n\n <b-button @click=\"savePermissions()\" :disabled=\"loading\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('save') }}\n </b-button>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {groupBy} from \"@/functions\";\n\nexport default {\n name: \"DefaultCompanyPermissions\",\n data() {\n return {\n working: false,\n loading: false,\n company: {},\n editUser: {},\n footerLink: {},\n paymentMethodHistory: [],\n companyFee:null,\n editPaymentFees:null,\n newPaymentFee:[],\n companyPermissions:[],\n }\n },\n methods:{\n savePermissions() {\n const permissions = [];\n\n for (const group in this.companyPermissions) {\n for (const permission of this.companyPermissions[group]) {\n if (permission.selected) {\n permissions.push(permission.id);\n }\n }\n }\n\n this.loading = true;\n api.defaultValues().save('default-permissions', permissions).then(() => {\n this.loading = false;\n this.$store.commit('success', 'company_updated');\n }).catch(() => {\n this.loading = false;\n })\n },\n changePermissionsCheckbox(permissions, event) {\n for(const permission of permissions) {\n permission.selected = event;\n }\n },\n getSortedPermissions(permissions) {\n const tempPermissions = groupBy(permissions, p => p.category);\n for (const group in tempPermissions) {\n tempPermissions[group] = tempPermissions[group].sort((a, b)=>{\n return a.sort - b.sort;\n })\n }\n\n return tempPermissions;\n },\n getPermissions(){\n Promise.all([\n api.permission().getPermissions(),\n api.defaultValues().getByKey('default-permissions')\n ]).then(async([permissions,selectedPermissions]) => {\n selectedPermissions = selectedPermissions.value ?? [];\n const tmpArray = permissions.filter(p => {\n return !p.admin_only;\n }).map(permission => {\n const isSelected = !!selectedPermissions.filter(rp => rp === permission.id).length;\n return Object.assign(permission, {selected: isSelected})\n });\n\n this.companyPermissions = this.getSortedPermissions(tmpArray)\n })\n }\n },\n created() {\n document.title = this.$t('backend_title_default_company_permissions')\n if(this.$store.state.user) {\n if(!this.$can('master_data_default_values_fees_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n\n this.getPermissions();\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_default_values_fees_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.group-label {\n background-color: #EEEEEE !important;\n color: #000!important;\n font-size: 15px!important;\n padding-top: 12px ;\n padding-bottom: 12px ;\n}\n.group-label span {\n background-color: #EEEEEE;\n color: #4E4D4D;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyPermissions.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyPermissions.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DefaultCompanyPermissions.vue?vue&type=template&id=6e11ca0d&scoped=true\"\nimport script from \"./DefaultCompanyPermissions.vue?vue&type=script&lang=js\"\nexport * from \"./DefaultCompanyPermissions.vue?vue&type=script&lang=js\"\nimport style0 from \"./DefaultCompanyPermissions.vue?vue&type=style&index=0&id=6e11ca0d&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6e11ca0d\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.template)?_c('div',{attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('template_title', _vm.template)))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',{staticClass:\"mb-3\"},[(!_vm.generating)?_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.generatePreview()}}},[_vm._v(_vm._s(_vm.$t('generate_preview')))]):_c('b-spinner')],1),_c('b-col',{staticClass:\"mb-3 text-right\"})],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_template_name')}},[_c('b-form-input',{model:{value:(_vm.template.name),callback:function ($$v) {_vm.$set(_vm.template, \"name\", $$v)},expression:\"template.name\"}})],1)],1)],1),_c('b-row',{staticClass:\"mt-4\"},[_c('b-col',[_c('h4',[_vm._v(_vm._s(_vm.$t('template_background')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_background_hint')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_background_jpg_hint')))]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_template_background')}},[_c('input',{ref:\"image\",attrs:{\"type\":\"file\",\"id\":\"image\",\"accept\":\"image/*\"},on:{\"change\":function($event){return _vm.onImageChange()}}})])],1),_c('b-col',{attrs:{\"cols\":\"2\"}},[(_vm.template.background)?_c('b-img',{attrs:{\"fluid\":\"\",\"src\":_vm.template.background}}):_vm._e()],1)],1),_c('h4',{staticClass:\"mt-4\"},[_vm._v(_vm._s(_vm.$t('template_qr')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_position_hints')))]),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('top'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.template.qr.top),callback:function ($$v) {_vm.$set(_vm.template.qr, \"top\", $$v)},expression:\"template.qr.top\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('width'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.template.qr.width),callback:function ($$v) {_vm.$set(_vm.template.qr, \"width\", $$v)},expression:\"template.qr.width\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('left'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.template.qr.left),callback:function ($$v) {_vm.$set(_vm.template.qr, \"left\", $$v)},expression:\"template.qr.left\"}})],1),_c('b-form-group',{attrs:{\"label\":_vm.$t('height'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(_vm.template.qr.height),callback:function ($$v) {_vm.$set(_vm.template.qr, \"height\", $$v)},expression:\"template.qr.height\"}})],1)],1)],1)],1),_c('b-col',[_c('h4',[_vm._v(_vm._s(_vm.$t('template_texts')))]),_c('p',[_vm._v(_vm._s(_vm.$t('template_texts_hint')))]),_c('b-form-group',[_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.addTextBlock()}}},[_vm._v(_vm._s(_vm.$t('template_add_text')))])],1),_c('hr'),_vm._l((_vm.template.texts),function(text,i){return _c('div',{key:`text` + i},[_c('b-row',[_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('top'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(text.top),callback:function ($$v) {_vm.$set(text, \"top\", $$v)},expression:\"text.top\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"5\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('left'),\"label-cols\":\"3\"}},[_c('b-form-input',{attrs:{\"type\":\"number\"},model:{value:(text.left),callback:function ($$v) {_vm.$set(text, \"left\", $$v)},expression:\"text.left\"}})],1)],1),_c('b-col',{staticClass:\"text-right\",attrs:{\"cols\":\"2\"}},[_c('b-button',{attrs:{\"variant\":\"danger\",\"size\":\"sm\"},on:{\"click\":function($event){return _vm.deleteText(i)}}},[_vm._v(_vm._s(_vm.$t('delete')))])],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('template_text_block')}},[_c('b-textarea',{model:{value:(text.content),callback:function ($$v) {_vm.$set(text, \"content\", $$v)},expression:\"text.content\"}})],1),_vm._l((_vm.placeholders),function(placeholder){return _c('b-button',{key:placeholder,staticClass:\"mr-1 mb-1\",attrs:{\"size\":\"sm\"},on:{\"click\":function($event){text.content += '[' + placeholder + ']'}}},[_vm._v(\" \"+_vm._s('[' + placeholder + ']')+\" \")])}),_c('hr')],2)],1)],1)})],2)],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{staticClass:\"text-right\"},[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveTemplate()}}},[_vm._v(_vm._s(_vm.$t('template_save')))])],1)],1)],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"template\" fluid> \n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('template_title', template) }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col class=\"mb-3\">\n <b-button variant=\"warning\" @click=\"generatePreview()\" v-if=\"!generating\">{{ $t('generate_preview') }}</b-button>\n <b-spinner v-else></b-spinner>\n </b-col>\n <b-col class=\"mb-3 text-right\">\n \n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_template_name')\">\n <b-form-input v-model=\"template.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"mt-4\">\n <b-col>\n <h4>{{ $t('template_background') }}</h4>\n <p>{{ $t('template_background_hint') }}</p>\n <p>{{ $t('template_background_jpg_hint') }}</p>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_template_background')\">\n <input type=\"file\" id=\"image\" accept=\"image/*\" ref=\"image\" v-on:change=\"onImageChange()\"/>\n </b-form-group>\n </b-col>\n <b-col cols=\"2\">\n <b-img fluid v-if=\"template.background\" :src=\"template.background\"></b-img>\n </b-col>\n </b-row>\n <h4 class=\"mt-4\">{{ $t('template_qr') }}</h4>\n <p>{{ $t('template_position_hints') }}</p>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('top')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.top\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('width')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.width\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('left')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.left\"></b-form-input>\n </b-form-group>\n <b-form-group :label=\"$t('height')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"template.qr.height\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n </b-col>\n <b-col>\n\n <h4>{{ $t('template_texts') }}</h4>\n <p>{{ $t('template_texts_hint') }}</p>\n <b-form-group>\n <b-button variant=\"warning\" @click=\"addTextBlock()\">{{ $t('template_add_text') }}</b-button>\n </b-form-group>\n\n <hr>\n <div v-for=\"(text, i) in template.texts\" :key=\"`text` + i\">\n <b-row>\n <b-col cols=\"5\">\n <b-form-group :label=\"$t('top')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"text.top\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"5\">\n <b-form-group :label=\"$t('left')\" label-cols=\"3\">\n <b-form-input type=\"number\" v-model=\"text.left\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"2\" class=\"text-right\">\n <b-button variant=\"danger\" @click=\"deleteText(i)\" size=\"sm\">{{ $t('delete') }}</b-button>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('template_text_block')\">\n <b-textarea v-model=\"text.content\"></b-textarea>\n </b-form-group>\n <b-button size=\"sm\" class=\"mr-1 mb-1\" v-for=\"placeholder in placeholders\" :key=\"placeholder\"\n @click=\"text.content += '[' + placeholder + ']'\">\n {{ '[' + placeholder + ']' }}\n </b-button>\n <hr>\n </b-col>\n </b-row>\n </div>\n\n </b-col>\n </b-row>\n <b-row class=\"mt-3\">\n <b-col class=\"text-right\">\n <b-button @click=\"saveTemplate()\" variant=\"success\">{{ $t('template_save') }}</b-button>\n </b-col>\n </b-row>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport axios from \"axios\";\n\nexport default {\n name: \"DefaultCompanyTicketTemplate\",\n data() {\n return {\n template: {\n name: '',\n background: '',\n qr: {\n top: 0,\n width: 0,\n left: 0,\n height: 0\n },\n texts: []\n },\n generating: false,\n placeholders: [\n 'event_name',\n 'event_date',\n 'customer_first_name',\n 'customer_last_name',\n 'product_name',\n 'order_number',\n 'ticket_secret',\n 'product_group_name',\n 'timeslot',\n 'event_start_time',\n 'event_end_time'\n ]\n }\n },\n methods: {\n loadTemplate(){\n api.defaultValues().getByKey('default-ticket-template').then(template => {\n let tmpTemplate = template.value\n if(!tmpTemplate){\n tmpTemplate = {\n name: '',\n background: '',\n qr: {\n top: 0,\n width: 0,\n left: 0,\n height: 0\n },\n texts: []\n }\n }\n this.template = tmpTemplate\n });\n },\n addTextBlock() {\n this.template.texts.push({content: ''})\n },\n generatePreview() {\n this.generating = true\n api.ticket().previewTemplate(this.template, {\n ticket: {\n id: new Date().getTime(),\n secret: 'PREVIEW',\n customer: {\n first_name: 'Jan',\n last_name: 'Janssen',\n company_name: 'Janssen BV'\n },\n order_product: {\n product: {\n name: 'VIP Ticket'\n }\n }\n },\n background: this.template.background,\n qr: Object.assign(this.template.qr, {\n data: {\n id: 12345667,\n secret: 'PREVIEW',\n }\n }),\n texts: this.template.texts\n }).then(url => {\n window.open(url, '_blank')\n }).catch(() => {\n this.$store.commit('errors', ['unable_to_generate_template'])\n }).finally(() => {\n this.generating = false\n })\n },\n onImageChange() {\n api.ticket().uploadDefaultTicketLayout(this.$refs['image'].files[0].name).then((response) => {\n // Upload the file\n axios.create().put(response.upload_url, this.$refs['image'].files[0], {\n headers: {\n 'Content-Type': this.$refs['image'].files[0].type\n }\n }).catch((e) => {\n // Upload failed...\n console.error(e)\n }).then(() => {\n // upload done, create the video in the database\n this.template.background = response.target_url\n })\n })\n },\n deleteText(index) {\n this.template.texts.splice(index, 1)\n },\n saveTemplate() {\n api.defaultValues().save('default-ticket-template', this.template).then(() => {\n this.$store.commit('success', 'ticket_template_updated');\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n created() {\n document.title = this.$t('backend_title_default_ticket_template') \n if(this.$store.state.user) {\n if(!this.$can('master_data_default_values_ticket_template_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n\n this.loadTemplate();\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_default_values_ticket_template_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyTicketTemplate.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DefaultCompanyTicketTemplate.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DefaultCompanyTicketTemplate.vue?vue&type=template&id=73a2c2e2\"\nimport script from \"./DefaultCompanyTicketTemplate.vue?vue&type=script&lang=js\"\nexport * from \"./DefaultCompanyTicketTemplate.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.event)?_c('div',[_c('div',[(_vm.event.isArchived)?_c('b-alert',{staticClass:\"text-center\",attrs:{\"variant\":\"danger\",\"show\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_is_archived'))+\" \")]):_vm._e(),_c('div',{staticClass:\"d-flex flex-wrap\"},[_c('div',{staticClass:\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\"},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(\"Marketing\")]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',[_c('b-form-group',[_c('label',{staticClass:\"text-black\"},[_vm._v(_vm._s(_vm.$t('event_marketing_gtm_id'))+\" \"),_c('b-icon',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover\",modifiers:{\"hover\":true}}],staticClass:\"ml-2\",attrs:{\"id\":\"gtm-id-tooltip\",\"icon\":\"info-circle-fill\"}})],1),_c('b-form-input',{model:{value:(_vm.event.gtm_id),callback:function ($$v) {_vm.$set(_vm.event, \"gtm_id\", $$v)},expression:\"event.gtm_id\"}}),_c('b-tooltip',{attrs:{\"target\":\"gtm-id-tooltip\",\"triggers\":\"hover\"}},[_vm._v(\" \"+_vm._s(_vm.$t('event_marketing_gtm_id_tooltip'))+\" \")])],1)],1),_c('b-col')],1)],1)]),_c('b-button',{staticClass:\"float-right\",attrs:{\"disabled\":_vm.event.isArchived || _vm.loading,\"variant\":\"save\"},on:{\"click\":_vm.save}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")],1)],1),_c('div',{staticClass:\"SmallDiv marginTop0 px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\"},[(_vm.event && _vm.event.name)?_c('event-nav',{attrs:{\"event\":_vm.event}}):_vm._e()],1)])],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"event\">\n <div>\n <b-alert v-if=\"event.isArchived\" variant=\"danger\" show class=\"text-center\">\n {{ $t('event_is_archived') }}\n </b-alert>\n <div class=\"d-flex flex-wrap\">\n <div class=\"bigDiv px-0 pr-lg-3 pl-lg-0 order-2 order-lg-1 mb-3\">\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">Marketing</div>\n <div class=\"content-container\">\n <b-row>\n <b-col>\n <b-form-group>\n <label class=\"text-black\">{{ $t('event_marketing_gtm_id') }} <b-icon id=\"gtm-id-tooltip\" v-b-tooltip.hover class=\"ml-2\" icon=\"info-circle-fill\"></b-icon></label>\n <b-form-input v-model=\"event.gtm_id\"></b-form-input>\n <b-tooltip target=\"gtm-id-tooltip\" triggers=\"hover\">\n {{ $t('event_marketing_gtm_id_tooltip') }}\n </b-tooltip>\n </b-form-group>\n </b-col>\n <b-col>\n </b-col>\n </b-row>\n </div>\n </div>\n <b-button :disabled=\"event.isArchived || loading\" @click=\"save\" variant=\"save\" class=\"float-right\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon> {{ $t('save') }}\n </b-button>\n </div>\n <div class=\"SmallDiv marginTop0 px-0 pl-lg-3 pr-lg-0 order-1 order-lg-2 mb-4 mb-lg-1\">\n <event-nav v-if=\"event && event.name\" :event=\"event\"></event-nav>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport EventNav from \"@/components/EventNav.vue\";\nimport api from \"@/api\";\nimport moment from \"moment/moment\";\n\nexport default {\n name: \"EventMarketing\",\n data() {\n return {\n event: null,\n loading: false\n }\n },\n mounted() {\n document.title = this.$t('Marketing')\n if(this.$store.state.user) {\n if(!this.$can('event_marketing_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.event().get(this.$route.params.id).then(event => {\n this.event = {...event,isArchived :( moment(event.ends_at).isBefore(moment()) && !event.continuous) || event.status === \"archived\"}\n })\n },\n methods: {\n save() {\n this.loading = true;\n api.event().updateMarketing(this.event.id, this.event).then(() => {\n this.$store.commit('success', 'event_marketing_updated')\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n components:{\n EventNav\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('event_marketing_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n.container-distance,.marginTop0 >div{\n margin-top: 0!important;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventMarketing.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventMarketing.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventMarketing.vue?vue&type=template&id=3ba599e0&scoped=true\"\nimport script from \"./EventMarketing.vue?vue&type=script&lang=js\"\nexport * from \"./EventMarketing.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventMarketing.vue?vue&type=style&index=0&id=3ba599e0&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3ba599e0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-form-group',{staticClass:\"text-right container-distance\"},[(_vm.$can('batch_create'))?_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":function($event){return _vm.$bvModal.show('new-batch')}}},[_vm._v(_vm._s(_vm.$t('create_batch')))]):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('batch_modal_create'),\"id\":\"new-batch\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.createBatch()}}},[_vm._v(_vm._s(_vm.$t('create')))])]}}])},[(_vm.batch)?_c('b-form-group',{attrs:{\"label\":_vm.$t('batch_name')}},[_c('b-form-input',{model:{value:(_vm.batch.name),callback:function ($$v) {_vm.$set(_vm.batch, \"name\", $$v)},expression:\"batch.name\"}})],1):_vm._e()],1),(_vm.batches.length)?_c('b-table',{attrs:{\"items\":_vm.batches,\"fields\":[{key: 'name', label: _vm.$t('batch_name')},{key: 'tickets_count', label: _vm.$t('tickets_count')}, {key: 'actions', label: _vm.$t('order_actions')}]},scopedSlots:_vm._u([{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('batch_edit'))?_c('b-button',{staticClass:\"mr-2\",attrs:{\"to\":{name: 'BatchDetails', params: {id: item.unique_id}}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(item.zip_file_path)?_c('b-button',{attrs:{\"href\":item.zip_file_path,\"target\":\"_blank\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('batch_download')))]):_vm._e()]}}],null,false,3454796730)}):_vm._e(),(_vm.page_data.total > 0)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getBatches}}):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-form-group class=\"text-right container-distance\">\n <b-button v-if=\"$can('batch_create')\" variant=\"new\" @click=\"$bvModal.show('new-batch')\">{{ $t('create_batch') }}</b-button>\n </b-form-group>\n\n <b-modal :title=\"$t('batch_modal_create')\" id=\"new-batch\" size=\"lg\">\n <b-form-group v-if=\"batch\" :label=\"$t('batch_name')\">\n <b-form-input v-model=\"batch.name\"></b-form-input>\n </b-form-group>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"createBatch()\" variant=\"success\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-table v-if=\"batches.length\" :items=\"batches\" :fields=\"[{key: 'name', label: $t('batch_name')},{key: 'tickets_count', label: $t('tickets_count')}, {key: 'actions', label: $t('order_actions')}]\">\n <template v-slot:cell(actions)=\"{item}\">\n <b-button v-if=\"$can('batch_edit')\" :to=\"{name: 'BatchDetails', params: {id: item.unique_id}}\" class=\"mr-2\">{{ $t('manage') }}</b-button>\n <b-button v-if=\"item.zip_file_path\" :href=\"item.zip_file_path\" target=\"_blank\" variant=\"success\">{{ $t('batch_download') }}</b-button>\n </template>\n </b-table>\n <pagination v-if=\"page_data.total > 0\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getBatches\"></pagination>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\n\nexport default {\n name: \"BatchesOverview\",\n data(){\n return {\n batches: [],\n page_data: {},\n batch:{},\n loading: false,\n }\n },\n methods: {\n cancel() {\n this.$bvModal.hide('new-batch')\n this.batch = {}\n },\n createBatch(){\n api.batch().createBatch(this.batch.name).then((batch) => {\n this.cancel();\n if(this.$can('batch_edit')) {\n this.$router.push({\n name: 'BatchDetails',\n params: {\n id: batch.unique_id\n }\n })\n }\n else {\n this.$store.commit('success', this.$t('batch_created'));\n this.getBatches();\n }\n })\n },\n getBatches(page = 1) {\n api.batch().getBatches(page).then((batches) => {\n this.batches = batches.data\n this.page_data = batches\n })\n },\n },\n created() {\n document.title = this.$t('nav_batches')\n if(this.$store.state.user) {\n if(!this.$can('batch_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getBatches();\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('batch_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BatchesOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BatchesOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BatchesOverview.vue?vue&type=template&id=3f7c61c7&scoped=true\"\nimport script from \"./BatchesOverview.vue?vue&type=script&lang=js\"\nexport * from \"./BatchesOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3f7c61c7\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.batch)?_c('div',{attrs:{\"fluid\":\"\"}},[_c('div',{staticClass:\"content-main-container container-distance\"},[_c('div',{staticClass:\"title-container\"},[_vm._v(_vm._s(_vm.$t('batch_name', _vm.batch)))]),_c('div',{staticClass:\"content-container\"},[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('batch_name')}},[_c('b-form-input',{model:{value:(_vm.batch.name),callback:function ($$v) {_vm.$set(_vm.batch, \"name\", $$v)},expression:\"batch.name\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_name')}},[_c('b-form-input',{model:{value:(_vm.batch.ticket_name),callback:function ($$v) {_vm.$set(_vm.batch, \"ticket_name\", $$v)},expression:\"batch.ticket_name\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_price')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":\"0\"},model:{value:(_vm.batch.ticket_price),callback:function ($$v) {_vm.$set(_vm.batch, \"ticket_price\", $$v)},expression:\"batch.ticket_price\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('ticket_vat')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":\"0\"},model:{value:(_vm.batch.ticket_vat),callback:function ($$v) {_vm.$set(_vm.batch, \"ticket_vat\", $$v)},expression:\"batch.ticket_vat\"}})],1)],1),_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('tickets_count')}},[_c('b-form-input',{attrs:{\"type\":\"number\",\"min\":\"0\",\"max\":\"5000\"},model:{value:(_vm.batch.tickets_count),callback:function ($$v) {_vm.$set(_vm.batch, \"tickets_count\", $$v)},expression:\"batch.tickets_count\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('date-time-picker',{attrs:{\"min\":new Date(),\"label\":_vm.$t('batch_detail_starts_at')},model:{value:(_vm.batch.starts_at),callback:function ($$v) {_vm.$set(_vm.batch, \"starts_at\", $$v)},expression:\"batch.starts_at\"}})],1),_c('b-col',[_c('date-time-picker',{attrs:{\"min\":new Date(),\"label\":_vm.$t('batch_detail_ends_at')},model:{value:(_vm.batch.ends_at),callback:function ($$v) {_vm.$set(_vm.batch, \"ends_at\", $$v)},expression:\"batch.ends_at\"}})],1)],1),_c('br'),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('batch_events_or_days')}},[_c('b-dropdown',{ref:\"dropdown\",staticClass:\"w-100\",attrs:{\"id\":\"dropdown-Checkbox\",\"text\":_vm.batch.events.length ? (_vm.batch.events.length + ' ' + _vm.$t('permission_events_selected')) : _vm.$t('permission_all_events')}},[_c('b-form-group',{staticClass:\"allowed-events-container\"},[_c('b-form-input',{staticClass:\"mb-2\",attrs:{\"placeholder\":_vm.$t('search'),\"size\":\"sm\"},model:{value:(_vm.searchEvents),callback:function ($$v) {_vm.searchEvents=$$v},expression:\"searchEvents\"}}),_c('b-form-checkbox-group',{attrs:{\"id\":\"checkbox-group-2\",\"name\":\"flavour-2\"},model:{value:(_vm.batch.events),callback:function ($$v) {_vm.$set(_vm.batch, \"events\", $$v)},expression:\"batch.events\"}},_vm._l((_vm.events.filter(e => _vm.searchEvents ? e.name.toLowerCase().includes(_vm.searchEvents.toLowerCase()) : true)),function(ev){return _c('b-form-checkbox',{key:ev.id,staticClass:\"w-100\",attrs:{\"value\":ev.id}},[_vm._v(_vm._s(ev.name))])}),1)],1)],1)],1),_c('b-form-group',[_c('b-form-checkbox-group',{attrs:{\"options\":_vm.days},model:{value:(_vm.batch.days),callback:function ($$v) {_vm.$set(_vm.batch, \"days\", $$v)},expression:\"batch.days\"}})],1)],1)],1),_c('b-row',{staticClass:\"mt-3\"},[_c('b-col',{staticClass:\"text-right\"},[_c('b-button',{staticClass:\"mr-2\",attrs:{\"disabled\":!_vm.batch || _vm.batch.generated_by || _vm.loading,\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveBatch()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('save')))],1),(_vm.batch && !_vm.batch.zip_file_path)?_c('b-button',{attrs:{\"disabled\":!_vm.batch || _vm.batch.generated_by || !_vm.orgBatch.name || !_vm.orgBatch.ticket_name || !_vm.orgBatch.tickets_count || _vm.loading,\"variant\":\"warning\"},on:{\"click\":function($event){return _vm.generateBatch()}}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('batch_generate')))],1):_vm._e(),(_vm.batch && _vm.batch.zip_file_path)?_c('b-button',{attrs:{\"href\":_vm.batch.zip_file_path,\"target\":\"_blank\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('batch_download')))]):_vm._e()],1)],1)],1)])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div v-if=\"batch\" fluid>\n <div class=\"content-main-container container-distance\">\n <div class=\"title-container\">{{ $t('batch_name', batch) }}</div>\n <div class=\"content-container\">\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('batch_name')\">\n <b-form-input v-model=\"batch.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_name')\">\n <b-form-input v-model=\"batch.ticket_name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('ticket_price')\">\n <b-form-input type=\"number\" min=\"0\" v-model=\"batch.ticket_price\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('ticket_vat')\">\n <b-form-input type=\"number\" min=\"0\" v-model=\"batch.ticket_vat\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col>\n <b-form-group :label=\"$t('tickets_count')\">\n <b-form-input type=\"number\" min=\"0\" max=\"5000\" v-model=\"batch.tickets_count\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row>\n <b-col>\n <date-time-picker v-model=\"batch.starts_at\" :min=\"new Date()\" :label=\"$t('batch_detail_starts_at')\"></date-time-picker>\n </b-col>\n <b-col>\n <date-time-picker v-model=\"batch.ends_at\" :min=\"new Date()\" :label=\"$t('batch_detail_ends_at')\"></date-time-picker>\n </b-col>\n </b-row>\n\n <br>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('batch_events_or_days')\">\n <b-dropdown id=\"dropdown-Checkbox\" :text=\"batch.events.length ? (batch.events.length + ' ' + $t('permission_events_selected')) : $t('permission_all_events')\" ref=\"dropdown\" class=\"w-100\">\n <b-form-group class=\"allowed-events-container\">\n <b-form-input v-model=\"searchEvents\" :placeholder=\"$t('search')\" size=\"sm\" class=\"mb-2\"></b-form-input>\n <b-form-checkbox-group\n id=\"checkbox-group-2\"\n v-model=\"batch.events\"\n name=\"flavour-2\"\n >\n <b-form-checkbox v-for=\"ev in events.filter(e => searchEvents ? e.name.toLowerCase().includes(searchEvents.toLowerCase()) : true)\"\n :key=\"ev.id\"\n :value=\"ev.id\" class=\"w-100\">{{ ev.name }}</b-form-checkbox>\n </b-form-checkbox-group>\n </b-form-group>\n </b-dropdown>\n </b-form-group>\n\n <b-form-group>\n <b-form-checkbox-group\n v-model=\"batch.days\"\n :options=\"days\"\n ></b-form-checkbox-group>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row class=\"mt-3\">\n <b-col class=\"text-right\">\n <b-button :disabled=\"!batch || batch.generated_by || loading\" @click=\"saveBatch()\" variant=\"success\" class=\"mr-2\"><b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('save') }}</b-button>\n <b-button v-if=\"batch && !batch.zip_file_path\" :disabled=\"!batch || batch.generated_by || !orgBatch.name || !orgBatch.ticket_name || !orgBatch.tickets_count || loading\" @click=\"generateBatch()\" variant=\"warning\"><b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('batch_generate') }}</b-button>\n <b-button v-if=\"batch && batch.zip_file_path\" :href=\"batch.zip_file_path\" target=\"_blank\" variant=\"success\">{{ $t('batch_download') }}</b-button>\n </b-col>\n </b-row>\n\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport DateTimePicker from \"@/components/DateTimePicker\";\nimport moment from 'moment'\nimport {deepClone} from \"@/functions\";\n\nexport default {\n components: {\n DateTimePicker,\n },\n data() {\n return {\n batch: null,\n orgBatch: null,\n events: [],\n searchEvents: null,\n days: [\n this.$t('day_mon'),\n this.$t('day_tue'),\n this.$t('day_wed'),\n this.$t('day_thu'),\n this.$t('day_fri'),\n this.$t('day_sat'),\n this.$t('day_sun')\n ],\n loading: false,\n }\n },\n methods: {\n saveBatch() {\n this.loading = true; \n api.batch().updateBatch(this.$route.params.id, this.batch).then((batch) => {\n this.loading = false;\n this.batch = batch\n this.orgBatch = deepClone(batch)\n if (!this.batch.events){\n this.batch.events = [];\n }\n if (!this.batch.days){\n this.batch.days = [];\n }\n this.$store.commit('success', 'batch_updated')\n }).catch(() => {\n this.loading = false;\n })\n },\n generateBatch() {\n this.loading = true;\n \n api.batch().generateBatch(this.$route.params.id).then((batch) => {\n this.batch = batch\n this.orgBatch = deepClone(batch)\n this.loading = false;\n this.$store.commit('success', 'batch_generated')\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n created() {\n document.title = this.$t('edit_batch_title')\n if(this.$store.state.user) {\n if(!this.$can('batch_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.batch().findBatch(this.$route.params.id).then((batch) => {\n this.batch = batch\n this.orgBatch = deepClone(batch)\n if (!this.batch.starts_at){\n this.batch.starts_at = moment();\n }\n if (!this.batch.ends_at){\n this.batch.ends_at = moment();\n }\n if (!this.batch.events){\n this.batch.events = [];\n }\n if (!this.batch.days){\n this.batch.days = [];\n }\n });\n api.event().all(false).then(response => {\n this.events = response;\n });\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('batch_edit')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n },\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.show{\n display:block !important\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BatchDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BatchDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BatchDetails.vue?vue&type=template&id=4c9df02e&scoped=true\"\nimport script from \"./BatchDetails.vue?vue&type=script&lang=js\"\nexport * from \"./BatchDetails.vue?vue&type=script&lang=js\"\nimport style0 from \"./BatchDetails.vue?vue&type=style&index=0&id=4c9df02e&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4c9df02e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"signup\"},[_c('b-row',[(_vm.loading)?_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"1\",\"order-lg\":\"1\"}},[_c('div',{staticClass:\"loading-logo text-center d-block\"},[_c('b-img',{attrs:{\"src\":require('./../assets/fairtix.gif')}})],1)]):_c('b-col',{staticClass:\"signup-form\",attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"1\",\"order-lg\":\"1\"}},[_c('div',[_c('div',{staticClass:\"step\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('signup_confirm_account')))]),_c('b-row',[_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{staticClass:\"mr-0 mr-md-4\",attrs:{\"placeholder\":_vm.$t('customer_first_name'),\"type\":\"text\",\"state\":_vm.state.first_name,\"aria-describedby\":\"input-f-name-feedback\"},on:{\"input\":function($event){_vm.state.first_name = null}},model:{value:(_vm.first_name),callback:function ($$v) {_vm.first_name=$$v},expression:\"first_name\"}}),(_vm.state.first_name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-f-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e()],1),_c('b-col',{attrs:{\"sm\":\"12\",\"md\":\"6\"}},[_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('customer_last_name'),\"type\":\"text\",\"state\":_vm.state.last_name,\"aria-describedby\":\"input-l-name-feedback\"},on:{\"input\":function($event){_vm.state.last_name = null}},model:{value:(_vm.last_name),callback:function ($$v) {_vm.last_name=$$v},expression:\"last_name\"}}),(_vm.state.last_name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-l-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e()],1)],1),_c('div',{staticClass:\"d-block d-md-flex\"}),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('login_email'),\"type\":\"email\",\"state\":_vm.state.email,\"aria-describedby\":\"input-f-name-feedback\"},on:{\"input\":function($event){return _vm.validateEmail($event)}},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}}),(_vm.state.email === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-email-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"state\":_vm.state.name,\"placeholder\":_vm.$t('customer_company_name'),\"type\":\"text\"},on:{\"input\":function($event){_vm.state.name = null}},model:{value:(_vm.name),callback:function ($$v) {_vm.name=$$v},expression:\"name\"}}),(_vm.state.name === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-name-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-select',{attrs:{\"options\":_vm.countries,\"text-field\":\"name\",\"value-field\":\"code\",\"state\":_vm.state.country,\"aria-describedby\":\"input-country-feedback\"},on:{\"change\":function($event){_vm.state.country = null}},model:{value:(_vm.country),callback:function ($$v) {_vm.country=$$v},expression:\"country\"}}),(_vm.state.country === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-country-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"state\":_vm.state.kvk,\"placeholder\":_vm.$t('signup_chamber_of_commerce'),\"type\":\"text\"},on:{\"input\":function($event){_vm.state.kvk = null}},model:{value:(_vm.kvk),callback:function ($$v) {_vm.kvk=$$v},expression:\"kvk\"}}),(_vm.state.kvk === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-chamber-of-commerce-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('company_phone'),\"type\":\"tel\"},model:{value:(_vm.phone),callback:function ($$v) {_vm.phone=$$v},expression:\"phone\"}}),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('signup_iban'),\"type\":\"text\",\"state\":_vm.state.payout_iban,\"aria-describedby\":\"input-iban-feedback\"},on:{\"input\":function($event){_vm.state.payout_iban = null}},model:{value:(_vm.payout_iban),callback:function ($$v) {_vm.payout_iban=$$v},expression:\"payout_iban\"}}),(_vm.state.payout_iban === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-iban-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('b-form-input',{attrs:{\"placeholder\":_vm.$t('signup_iban_holder_name'),\"type\":\"text\",\"state\":_vm.state.ibanHolder,\"aria-describedby\":\"input-iban-holder-feedback\"},on:{\"input\":function($event){_vm.state.ibanHolder = null}},model:{value:(_vm.ibanHolder),callback:function ($$v) {_vm.ibanHolder=$$v},expression:\"ibanHolder\"}}),(_vm.state.ibanHolder === false)?_c('b-form-invalid-feedback',{attrs:{\"id\":\"input-iban-holder-feedback\"}},[_vm._v(_vm._s(_vm.$t('field_is_required')))]):_vm._e(),_c('hr'),_c('b-form-checkbox',{staticClass:\"mt-2\",attrs:{\"id\":\"terms\",\"name\":\"terms\"},model:{value:(_vm.terms),callback:function ($$v) {_vm.terms=$$v},expression:\"terms\"}},[_c('span',{staticClass:\"terms-conditions-text\",domProps:{\"innerHTML\":_vm._s(_vm.$t('signup_terms'))}})])],1),_c('div',{staticClass:\"signup-footer mt-2\"},[_c('b-form-group',[(!_vm.loading && _vm.step===2)?_c('b-button',{staticClass:\"w-20\",attrs:{\"id\":\"back-button\",\"disabled\":_vm.loading},on:{\"click\":function($event){_vm.step--}}},[_c('b-icon',{staticClass:\"mr-1\",attrs:{\"icon\":\"arrow-left\"}}),_vm._v(\" \"+_vm._s(_vm.$t('back'))+\" \")],1):_vm._e(),_c('b-button',{staticClass:\"float-right w-100 mt-4\",attrs:{\"id\":\"submit-button\",\"disabled\":_vm.loading || !_vm.terms},on:{\"click\":_vm.next}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('submit'))+\" \")],1)],1)],1)])]),_c('b-col',{staticClass:\"signup-img\",attrs:{\"cols\":\"12\",\"lg\":\"6\",\"order\":\"2\",\"order-lg\":\"2\"}},[_c('b-img',{staticClass:\"logo\",attrs:{\"src\":require('../assets/signup-img.jpg')}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"signup\">\n <b-row>\n <b-col v-if=\"loading\" cols=\"12\" lg=\"6\" order=\"1\" order-lg=\"1\">\n <div class=\"loading-logo text-center d-block\">\n <b-img :src=\"require('./../assets/fairtix.gif')\"/>\n </div>\n </b-col>\n <!-- signup form -->\n <b-col v-else cols=\"12\" lg=\"6\" class=\"signup-form\" order=\"1\" order-lg=\"1\">\n <div>\n <div class=\"step\">\n <h1>{{ $t('signup_confirm_account') }}</h1>\n <b-row>\n <b-col sm=\"12\" md=\"6\">\n <b-form-input\n class=\"mr-0 mr-md-4\"\n :placeholder=\"$t('customer_first_name')\"\n type=\"text\"\n v-model=\"first_name\"\n @input=\"state.first_name = null\"\n :state=\"state.first_name\"\n aria-describedby=\"input-f-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.first_name === false\" id=\"input-f-name-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n </b-col>\n <b-col sm=\"12\" md=\"6\">\n <b-form-input\n :placeholder=\"$t('customer_last_name')\"\n type=\"text\"\n v-model=\"last_name\"\n :state=\"state.last_name\"\n @input=\"state.last_name = null\"\n aria-describedby=\"input-l-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.last_name === false\" id=\"input-l-name-feedback\">{{ $t('field_is_required') }}</b-form-invalid-feedback>\n </b-col>\n </b-row>\n <div class=\"d-block d-md-flex\">\n\n </div>\n <b-form-input\n :placeholder=\"$t('login_email')\"\n type=\"email\"\n v-model=\"email\"\n :state=\"state.email\"\n @input=\"validateEmail($event)\"\n aria-describedby=\"input-f-name-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.email === false\" id=\"input-email-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input v-model=\"name\" :state=\"state.name\" :placeholder=\"$t('customer_company_name')\"\n type=\"text\" @input=\"state.name = null\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.name === false\" id=\"input-name-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-select\n v-model=\"country\"\n :options=\"countries\"\n text-field=\"name\"\n value-field=\"code\"\n :state=\"state.country\"\n @change=\"state.country = null\"\n aria-describedby=\"input-country-feedback\"></b-select>\n <b-form-invalid-feedback v-if=\"state.country === false\" id=\"input-country-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input v-model=\"kvk\" :state=\"state.kvk\" @input=\"state.kvk = null\" :placeholder=\"$t('signup_chamber_of_commerce')\"\n type=\"text\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.kvk === false\" id=\"input-chamber-of-commerce-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input v-model=\"phone\" :placeholder=\"$t('company_phone')\" type=\"tel\"></b-form-input>\n <b-form-input\n v-model=\"payout_iban\"\n :placeholder=\"$t('signup_iban')\"\n type=\"text\"\n :state=\"state.payout_iban\"\n @input=\"state.payout_iban = null\"\n aria-describedby=\"input-iban-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.payout_iban === false\" id=\"input-iban-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n\n <b-form-input\n v-model=\"ibanHolder\"\n :placeholder=\"$t('signup_iban_holder_name')\"\n type=\"text\"\n :state=\"state.ibanHolder\"\n @input=\"state.ibanHolder = null\"\n aria-describedby=\"input-iban-holder-feedback\"></b-form-input>\n <b-form-invalid-feedback v-if=\"state.ibanHolder === false\" id=\"input-iban-holder-feedback\">{{$t('field_is_required') }}</b-form-invalid-feedback>\n <hr>\n <b-form-checkbox\n class=\"mt-2\"\n id=\"terms\"\n v-model=\"terms\"\n name=\"terms\"\n >\n <span v-html=\"$t('signup_terms')\" class=\"terms-conditions-text\"></span>\n </b-form-checkbox>\n </div>\n <div class=\"signup-footer mt-2\">\n <b-form-group>\n <b-button id=\"back-button\" class=\"w-20\" v-if=\"!loading && step===2\" @click=\"step--\"\n :disabled=\"loading\">\n <b-icon icon=\"arrow-left\" class=\"mr-1\"/>\n {{ $t('back') }}\n </b-button>\n <b-button id=\"submit-button\" class=\"float-right w-100 mt-4\"\n @click=\"next\" :disabled=\"loading || !terms\">\n <b-icon v-if=\"loading\" icon=\"three-dots\" animation=\"cylon\" class=\"mr-2\"></b-icon>\n {{ $t('submit') }}\n </b-button>\n </b-form-group>\n </div>\n </div>\n </b-col>\n\n <!-- signup img -->\n <b-col cols=\"12\" lg=\"6\" class=\"signup-img\" order=\"2\" order-lg=\"2\">\n <b-img class=\"logo\" :src=\"require('../assets/signup-img.jpg')\"></b-img>\n </b-col>\n </b-row>\n </div>\n</template>\n<script>\n\nimport api from \"@/api\";\nimport {validateEmail} from \"@/functions\";\nimport {mapActions, mapMutations, mapState} from \"vuex\";\n\nexport default {\n name: 'SignupConfirmation',\n data() {\n return {\n state: {\n first_name: null,\n last_name: null,\n email: null,\n country: null,\n payout_iban: null,\n ibanHolder: null,\n kvk: null\n },\n email: '',\n first_name: '',\n last_name: '',\n company: '',\n terms: false,\n loading: false,\n error: false,\n step: 1,\n country: null,\n countries: [],\n payout_iban: null,\n ibanHolder: null,\n name: null,\n kvk: null,\n phone: null\n }\n },\n created() {\n api.company().countries().then(countries => {\n this.countries = [{code: null, name: this.$t('company_country'), disabled: true}].concat(countries)\n });\n const user = this.$store.state.user;\n if (user) {\n this.email = user.email;\n this.first_name = user.name.split(' ')[0];\n this.last_name = user.name.replace(this.first_name + ' ', '');\n this.name = user.company.name;\n this.country = user.company.country.toLowerCase();\n this.payout_iban = user.company.payout_iban;\n this.ibanHolder = user.company.iban_holder_name;\n this.kvk = user.company.kvk;\n this.phone = user.company.phone;\n } else {\n this.loadUser();\n }\n },\n methods: {\n next() {\n this.state = {\n first_name: null,\n last_name: null,\n email: null,\n country: null,\n payout_iban: null,\n ibanHolder: null,\n name: null\n }\n let valid = true;\n\n if (!this.first_name) {\n valid = false;\n this.state.first_name = false;\n }\n if (!this.last_name) {\n valid = false;\n this.state.last_name = false;\n }\n if (!this.email) {\n valid = false;\n this.state.email = false;\n }\n if (!validateEmail(this.email)) {\n valid = false;\n this.state.email = false;\n }\n\n if (!this.name) {\n valid = false;\n this.state.name = false;\n }\n if (!this.kvk) {\n valid = false;\n this.state.kvk = false;\n }\n if (!this.country) {\n valid = false;\n this.state.country = false;\n }\n if (!this.payout_iban) {\n valid = false;\n this.state.payout_iban = false;\n }\n if (!this.ibanHolder) {\n valid = false;\n this.state.ibanHolder = false;\n }\n if (!valid) {\n return;\n }\n\n this.loading = true;\n\n api.company().signupConfirmation({\n name: this.name,\n phone: this.phone,\n country: this.country,\n payout_iban: this.payout_iban,\n iban_holder: this.ibanHolder,\n kvk: this.kvk,\n first_name: this.first_name,\n last_name: this.last_name,\n email: this.email\n }).then(() => {\n api.user().me().then(user => {\n this.setUser(user)\n\n // Set the language of specific to the user\n if (user.language && user.language !== '') {\n this.setLanguage(user.language)\n }\n }).then(() => {\n this.$router.push({name: 'Dashboard'})\n })\n }).catch(() => {\n this.loading = false;\n });\n },\n validateEmail(email) {\n this.state.email = null\n if(!validateEmail(email)) {\n this.state.email = false\n }\n },\n ...mapActions(['loadUser']),\n ...mapMutations(['setUser', 'setLanguage'])\n },\n computed: {\n ...mapState(['user'])\n },\n watch: {\n user(user) {\n this.email = user.email;\n this.first_name = user.name.split(' ')[0];\n this.last_name = user.name.replace(this.first_name + ' ', '');\n this.name = user.company.name;\n this.country = user.company.country.toLowerCase();\n this.payout_iban = user.company.payout_iban;\n this.ibanHolder = user.company.iban_holder_name;\n this.kvk = user.company.kvk;\n this.phone = user.company.phone;\n }\n }\n}\n</script>\n<style scoped lang=\"scss\">\n\n$main-color: #193E5B;\n$placeholder-color: #b1c6ca;\n\nh1, h2 {\n color: $main-color;\n font-weight: bold\n}\n\np.signup-details {\n color: $main-color\n}\n\n#back-button {\n padding: 15px 0px\n}\n\n#submit-button {\n background-color: $main-color;\n color: #FFF;\n padding: 15px 0px\n}\n\n.terms-conditions-text {\n font-size: 10pt\n}\n\n.signup, .signup > .row {\n min-height: 100vh;\n overflow: hidden;\n}\n\n.signup-form {\n padding: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100%;\n\n & > div {\n width: 80%;\n }\n}\n\n.step {\n width: 80%;\n\n input, select {\n margin-top: 1rem;\n display: block;\n border: none;\n border-radius: .3rem;\n box-shadow: 2px 3px 5px #eee, -1px -2px 4px #eee;\n }\n\n input::placeholder, select::placeholder {\n color: $placeholder-color\n }\n\n .custom-control {\n margin-bottom: 2rem;\n }\n\n button {\n padding: .7rem;\n color: #fff;\n background-color: #1E4167;\n border-radius: .4rem;\n }\n}\n\n.signup-footer {\n width: 80%;\n display: block;\n}\n\n.signup-img {\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #F7FAFF;\n\n & > img {\n width: 70%;\n }\n}\n\n// responsive for laptop screen\n@media (max-width: 1550px) {\n .signup-form {\n padding: 10px;\n\n p {\n font-size: .9rem;\n }\n }\n .step {\n input {\n border-radius: .2rem;\n font-size: .9rem;\n box-shadow: 1px 2px 4px #eee, -1px -1px 3px #eee;\n }\n\n button {\n padding: .6rem;\n border-radius: .3rem;\n font-size: .9rem;\n }\n\n .custom-control {\n font-size: .9rem;\n }\n }\n}\n\n// responsive for ipad screen\n@media (max-width: 992px) {\n .step {\n width: 100%\n }\n .signup-footer {\n width: 100%\n }\n .signup-img {\n min-height: 30vh;\n\n & > img {\n width: 40%;\n }\n }\n}\n\n// responsive for phone screen\n@media (max-width: 576px) {\n .signup-form {\n padding: 2rem 1.5rem;\n\n & > div {\n width: 100%;\n }\n }\n .signup-img {\n & > img {\n width: 60%;\n }\n }\n}\n\n.loading-logo {\n margin-top: 200px;\n}\n\n.loading-logo img {\n height: 200px;\n}\n\n.w-20 {\n width: 20%;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SignupConfirmation.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SignupConfirmation.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./SignupConfirmation.vue?vue&type=template&id=1e8cf75a&scoped=true\"\nimport script from \"./SignupConfirmation.vue?vue&type=script&lang=js\"\nexport * from \"./SignupConfirmation.vue?vue&type=script&lang=js\"\nimport style0 from \"./SignupConfirmation.vue?vue&type=style&index=0&id=1e8cf75a&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1e8cf75a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('b-form-checkbox',{staticClass:\"mySwitch\",attrs:{\"switch\":\"\"},model:{value:(_vm.automatic_invoice_enabled),callback:function ($$v) {_vm.automatic_invoice_enabled=$$v},expression:\"automatic_invoice_enabled\"}},[_vm._v(\" \"+_vm._s(_vm.$t('auto_invoice_settings_general_stop'))+\" \")]),_c('br'),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.save()}}},[_vm._v(_vm._s(_vm.$t('save')))])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col lg=\"3\" sm=\"6\" cols=\"12\">\n \n <b-form-checkbox switch v-model=\"automatic_invoice_enabled\" class=\"mySwitch\">\n {{ $t('auto_invoice_settings_general_stop') }}\n </b-form-checkbox>\n\n <br>\n\n <b-button @click=\"save()\" variant=\"success\">{{ $t('save') }}</b-button>\n\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\nimport api from '../api'\n\nexport default {\n name: \"AutoInvoiceSettings\",\n data(){\n return {\n automatic_invoice_enabled: false\n }\n },\n created() {\n document.title = this.$t('nav_auto_invoice_settings')\n if(this.$store.state.user) {\n if(!this.$can('master_data_auto_invoice_settings_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n api.setting().get('automatic_invoice_enabled').then(response => {\n this.automatic_invoice_enabled = (response.value) ? true : false\n })\n },\n methods: {\n save(){\n api.setting().save('automatic_invoice_enabled', (this.automatic_invoice_enabled) ? 1 : 0)\n this.$store.commit('success', 'changes_saved')\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_auto_invoice_settings_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n }\n }\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AutoInvoiceSettings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AutoInvoiceSettings.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AutoInvoiceSettings.vue?vue&type=template&id=de76c64c&scoped=true\"\nimport script from \"./AutoInvoiceSettings.vue?vue&type=script&lang=js\"\nexport * from \"./AutoInvoiceSettings.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"de76c64c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',{staticClass:\"Parent\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"3\"}},[_c('b-form-group',[_vm._v(\" \"+_vm._s(_vm.$t('invoice_number'))+\" \"),_c('b-form-input',{staticClass:\"v-text-field\",attrs:{\"debounce\":\"750\",\"placeholder\":_vm.$t('invoice_number')},model:{value:(_vm.search),callback:function ($$v) {_vm.search=$$v},expression:\"search\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"3\"}},[_c('b-form-group',[_vm._v(\" \"+_vm._s(_vm.$t('report_event'))+\" \"),_c('b-select',{attrs:{\"options\":_vm.events},on:{\"change\":_vm.selectEvent},model:{value:(_vm.filter_event),callback:function ($$v) {_vm.filter_event=$$v},expression:\"filter_event\"}})],1)],1)],1),(_vm.invoices.length)?_c('b-row',[_c('b-col',{staticClass:\"tableBig\"},[_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.invoices,\"fields\":[ {key: 'invoice_number', label: _vm.$t('administration_invoice_number', {number: ''})},{key: 'event_name', label: _vm.$t('event_name')},{key: 'time_period', label: _vm.$t('company_invoice_overview_time_period')},{key: 'created_at', label: _vm.$t('order_created_at')},{key: 'total', label: _vm.$t('cart_total')},{key: 'total_payout', label: _vm.$t('company_invoice_overview_total_payout')},{key: 'clearing_ref', label: _vm.$t('company_invoice_overview_clearing_ref')},{key: 'actions', label: _vm.$t('company_invoice_downloads')}]},scopedSlots:_vm._u([{key:\"cell(created_at)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.created_at))+\" \")]}},{key:\"cell(event_name)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.event ? item.event.name : '')+\" \")]}},{key:\"cell(time_period)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"date_time\")(item.period_starts_at))+\" - \"+_vm._s(_vm._f(\"date_time\")(item.period_ends_at))+\" \")]}},{key:\"cell(total)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.total))+\" \")]}},{key:\"cell(total_payout)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(_vm._f(\"currency\")(item.total_payout))+\" \")]}},{key:\"cell(clearing_ref)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.clearing_ref)+\" \")]}},{key:\"cell(actions)\",fn:function({item}){return [(item.url)?_c('b-button',{staticClass:\"mr-3 mb-1\",on:{\"click\":function($event){return _vm.downloadFile(item.invoice_number, 'invoice')}}},[_vm._v(_vm._s(_vm.$t('company_invoice_overview_invoice')))]):_vm._e(),(item.payout_summary_url)?_c('b-button',{on:{\"click\":function($event){return _vm.downloadFile(item.invoice_number, 'payout_summary')}}},[_vm._v(_vm._s(_vm.$t('company_invoice_overview_payout_summary')))]):_vm._e()]}}],null,false,2498239659)}),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getInvoices}}):_vm._e()],1)],1):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n\n <b-row class=\"Parent\">\n <b-col cols=\"12\" lg=\"3\">\n <b-form-group>\n {{ $t('invoice_number') }}\n <b-form-input class=\"v-text-field\" v-model=\"search\" debounce=\"750\"\n :placeholder=\"$t('invoice_number')\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"3\">\n <b-form-group>\n {{ $t('report_event') }}\n <b-select @change=\"selectEvent\" v-model=\"filter_event\" :options=\"events\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n\n <b-row v-if=\"invoices.length\">\n <b-col class=\"tableBig\">\n <b-table class=\"table-container\" :items=\"invoices\" :fields=\"[ {key: 'invoice_number', label: $t('administration_invoice_number', {number: ''})},{key: 'event_name', label: $t('event_name')},{key: 'time_period', label: $t('company_invoice_overview_time_period')},{key: 'created_at', label: $t('order_created_at')},{key: 'total', label: $t('cart_total')},{key: 'total_payout', label: $t('company_invoice_overview_total_payout')},{key: 'clearing_ref', label: $t('company_invoice_overview_clearing_ref')},{key: 'actions', label: $t('company_invoice_downloads')}]\">\n <template v-slot:cell(created_at)=\"{item}\">\n {{ item.created_at | date_time}}\n </template>\n <template v-slot:cell(event_name)=\"{item}\">\n {{ item.event ? item.event.name : '' }}\n </template>\n <template v-slot:cell(time_period)=\"{item}\">\n {{ item.period_starts_at | date_time }} - {{ item.period_ends_at | date_time }}\n </template>\n <template v-slot:cell(total)=\"{item}\">\n {{ item.total | currency }}\n </template>\n <template v-slot:cell(total_payout)=\"{item}\">\n {{ item.total_payout | currency }}\n </template>\n <template v-slot:cell(clearing_ref)=\"{item}\">\n {{ item.clearing_ref }}\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button @click=\"downloadFile(item.invoice_number, 'invoice')\" v-if=\"item.url\" class=\"mr-3 mb-1\">{{ $t('company_invoice_overview_invoice') }}</b-button>\n <b-button @click=\"downloadFile(item.invoice_number, 'payout_summary')\" v-if=\"item.payout_summary_url\">{{ $t('company_invoice_overview_payout_summary') }}</b-button>\n </template>\n </b-table>\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getInvoices\"></pagination>\n </b-col>\n </b-row>\n\n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n </div>\n</template>\n\n<script>\nimport api from '../api'\n\nexport default {\n name: 'InvoiceOverview',\n data() {\n return {\n invoices: {},\n search: '',\n page_data: null,\n events: [],\n filter_event: null\n }\n },\n created() {\n document.title = this.$t('backend_title_invoices_overview')\n if(this.$store.state.user) {\n if(!this.$can('company_invoice_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getInvoices();\n this.getEvents();\n },\n methods: {\n downloadFile(invoice_number, type){\n api.invoice().downloadFile(invoice_number, type).then((response) => {\n let filename = 'Invoice ' + invoice_number + '.pdf';\n if(type === 'payout_summary'){\n filename = 'Payout summary ' + invoice_number + '.pdf';\n }\n try {\n let url = window.URL.createObjectURL(new Blob([response], { type: 'application/pdf' }));\n let link = document.createElement('a');\n link.href = url;\n link.setAttribute('download', filename);\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n } catch (error) {\n console.error('Error downloading PDF:', error);\n }\n });\n },\n selectEvent(){\n this.getInvoicesWithFilters();\n },\n getEvents(){\n api.event().all(1).then((events) => {\n this.events = events.map((event) => {\n return {\n text: event.name,\n value: event.id\n }\n })\n\n this.events = [{text: this.$t('all_events'), value: ''}, ...this.events]\n })\n },\n getInvoices(page = 1) {\n if (!page) {\n page = 1\n }\n api.invoice().getAllByCompany(page).then(invoices => {\n this.page_data = invoices\n this.invoices = invoices.data\n })\n },\n getInvoicesWithFilters(page = 1) {\n if (!page) {\n page = 1\n }\n\n if(this.search === ''){\n this.search = null\n }\n if(this.filter_event === ''){\n this.filter_event = null\n }\n\n api.invoice().searchInvoiceByCompany(this.search, this.filter_event).then((invoices) => {\n this.page_data = invoices\n this.invoices = invoices.data\n })\n },\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('company_invoice_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n search() {\n if (!this.search && this.search.length === 0) {\n this.getInvoices(1)\n return\n }\n this.getInvoicesWithFilters()\n },\n }\n}\n</script>\n\n<style>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CompanyInvoiceOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CompanyInvoiceOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CompanyInvoiceOverview.vue?vue&type=template&id=018a37e3\"\nimport script from \"./CompanyInvoiceOverview.vue?vue&type=script&lang=js\"\nexport * from \"./CompanyInvoiceOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[(_vm.$can('extension_mailchimp'))?_c('b-col',{attrs:{\"lg\":\"3\",\"sm\":\"6\",\"cols\":\"12\"}},[_c('router-link',{staticClass:\"info-card center text-center card\",attrs:{\"to\":{name: 'MailchimpSettings'}}},[_vm._v(_vm._s(_vm.$t('extension_mailchimp')))])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col v-if=\"$can('extension_mailchimp')\" lg=\"3\" sm=\"6\" cols=\"12\">\n <router-link :to=\"{name: 'MailchimpSettings'}\" class=\"info-card center text-center card\">{{ $t('extension_mailchimp') }}</router-link>\n </b-col>\n </b-row>\n </div>\n</template>\n\n<script>\n// import api from \"@/api\";\nimport {mapState} from \"vuex\";\n\nexport default {\n data() {\n return {\n \n }\n },\n methods: {\n \n },\n created() {\n document.title = this.$t('nav_extensions')\n if (this.$store.state.user) {\n if (!this.$can('extensions_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n },\n computed: {\n ...mapState(['user'])\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('extensions_overview_view')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n }\n}\n</script>\n\n<style scoped>\n\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ExtensionsOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ExtensionsOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ExtensionsOverview.vue?vue&type=template&id=307e3e7f&scoped=true\"\nimport script from \"./ExtensionsOverview.vue?vue&type=script&lang=js\"\nexport * from \"./ExtensionsOverview.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"307e3e7f\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',[_c('b-card',[_c('b-card-title',{staticClass:\"px-4\"},[_vm._v(_vm._s(_vm.$t('extension_mailchimp')))]),_c('b-card-body',[_c('b-row',{staticClass:\"px-4\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"12\"}},[_c('p',[_vm._v(_vm._s(_vm.$t('extension_mailchimp_description')))])])],1),_c('b-row',{staticClass:\"px-4\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('extension_mailchimp_api_key')}},[_c('b-form-input',{model:{value:(_vm.extension.api_key),callback:function ($$v) {_vm.$set(_vm.extension, \"api_key\", $$v)},expression:\"extension.api_key\"}})],1)],1),_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"6\"}},[_c('b-form-group',{attrs:{\"label\":_vm.$t('extension_mailchimp_audience_id')}},[_c('b-form-input',{model:{value:(_vm.extension.audience_id),callback:function ($$v) {_vm.$set(_vm.extension, \"audience_id\", $$v)},expression:\"extension.audience_id\"}})],1)],1)],1),_c('b-row',{staticClass:\"px-4\"},[_c('b-col',{attrs:{\"cols\":\"12\",\"lg\":\"12\"}},[_c('b-button',{staticClass:\"mb-4\",attrs:{\"variant\":\"save\"},on:{\"click\":_vm.save}},[_vm._v(\" \"+_vm._s(_vm.$t('save'))+\" \")])],1)],1)],1)],1)],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <div>\n <b-card >\n <b-card-title class=\"px-4\">{{ $t('extension_mailchimp') }}</b-card-title>\n <b-card-body>\n <b-row class=\"px-4\">\n <b-col cols=\"12\" lg=\"12\">\n <p>{{ $t('extension_mailchimp_description') }}</p>\n </b-col>\n </b-row>\n <b-row class=\"px-4\">\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('extension_mailchimp_api_key')\">\n <b-form-input v-model=\"extension.api_key\"></b-form-input>\n </b-form-group>\n </b-col>\n <b-col cols=\"12\" lg=\"6\">\n <b-form-group :label=\"$t('extension_mailchimp_audience_id')\">\n <b-form-input v-model=\"extension.audience_id\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row class=\"px-4\">\n <b-col cols=\"12\" lg=\"12\">\n <b-button @click=\"save\" variant=\"save\" class=\"mb-4\">\n {{ $t('save') }}\n </b-button>\n </b-col>\n </b-row>\n </b-card-body>\n </b-card>\n </div>\n </div>\n</template>\n\n<script>\nimport api from \"@/api\";\nimport {mapState} from \"vuex\";\n\nexport default {\n data() {\n return {\n extension: {\n api_key: '',\n audience_id: ''\n }\n }\n },\n methods: {\n get(){\n api.extension().getByCompany('mailchimp').then(extension => { \n let data = JSON.parse(extension.value);\n this.extension.api_key = data.api_key;\n this.extension.audience_id = data.audience_id;\n })\n },\n save(){\n api.extension().save('mailchimp', this.extension).then(() => {\n this.$store.commit('success', this.$t('saved_successfully'));\n })\n }\n },\n created() {\n document.title = this.$t('extension_mailchimp')\n if (this.$store.state.user) {\n if (!this.$can('extension_mailchimp')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.get();\n },\n computed: {\n ...mapState(['user'])\n },\n watch: {\n '$store.state.user': {\n handler() {\n if (!this.$can('extension_mailchimp')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n }\n}\n</script>\n\n<style scoped>\n\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MailchimpSettings.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MailchimpSettings.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./MailchimpSettings.vue?vue&type=template&id=21d24df4&scoped=true\"\nimport script from \"./MailchimpSettings.vue?vue&type=script&lang=js\"\nexport * from \"./MailchimpSettings.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"21d24df4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$can('venue_create'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showVenueModal}},[_vm._v(_vm._s(_vm.$t('new')))])],1):_vm._e(),_c('b-modal',{attrs:{\"id\":\"add-venue\",\"title\":_vm.$t('venue_new_modal_title')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createVenue()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[(_vm.venue)?_c('venue-form',{model:{value:(_vm.venue),callback:function ($$v) {_vm.venue=$$v},expression:\"venue\"}}):_vm._e()],1),_c('b-modal',{attrs:{\"title\":_vm.$t('venue_modal_edit', _vm.venue),\"id\":\"edit-venue\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveVenue()}}},[_vm._v(_vm._s(_vm.$t('save')))])]}}])},[(_vm.venue)?_c('venue-form',{model:{value:(_vm.venue),callback:function ($$v) {_vm.venue=$$v},expression:\"venue\"}}):_vm._e()],1),_c('div',{staticClass:\"tableBig\"},[(_vm.venuesData.length)?_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.venuesData,\"fields\":_vm.fields},scopedSlots:_vm._u([{key:\"cell(verified)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.verified ? _vm.$t('yes') : _vm.$t('no'))+\" \")]}},{key:\"cell(active)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.active ? _vm.$t('yes') : _vm.$t('no'))+\" \")]}},{key:\"cell(name)\",fn:function({item}){return [(item.name)?_c('span',[_vm._v(_vm._s(item.name))]):_c('span',[_vm._v(_vm._s(_vm.$t('not_set')))])]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('venue_create'))?_c('b-button',{staticClass:\"mr-3 mb-1\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.editVenue(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(_vm.$can('venue_delete'))?_c('b-icon',{staticClass:\"text-secondary btnDelete\",class:{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count},attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,3823903655)}):_vm._e(),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getVenuesData}}):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-venue\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteVenue}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_name')}},[(_vm.venue)?_c('b-form-input',{model:{value:(_vm.venue.name),callback:function ($$v) {_vm.$set(_vm.venue, \"name\", $$v)},expression:\"venue.name\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_address')}},[(_vm.venue)?_c('b-form-input',{model:{value:(_vm.venue.address),callback:function ($$v) {_vm.$set(_vm.venue, \"address\", $$v)},expression:\"venue.address\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_zip')}},[(_vm.venue)?_c('b-form-input',{model:{value:(_vm.venue.zip),callback:function ($$v) {_vm.$set(_vm.venue, \"zip\", $$v)},expression:\"venue.zip\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_city')}},[(_vm.venue)?_c('b-form-input',{model:{value:(_vm.venue.city),callback:function ($$v) {_vm.$set(_vm.venue, \"city\", $$v)},expression:\"venue.city\"}}):_vm._e()],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('venue_country')}},[_c('CountrySelection',{model:{value:(_vm.venue.country_code),callback:function ($$v) {_vm.$set(_vm.venue, \"country_code\", $$v)},expression:\"venue.country_code\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.venue.verified),callback:function ($$v) {_vm.$set(_vm.venue, \"verified\", $$v)},expression:\"venue.verified\"}},[_vm._v(_vm._s(_vm.$t('venue_verified')))])],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',[_c('b-form-checkbox',{model:{value:(_vm.venue.active),callback:function ($$v) {_vm.$set(_vm.venue, \"active\", $$v)},expression:\"venue.active\"}},[_vm._v(_vm._s(_vm.$t('venue_active')))])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('venue_name')\">\n <b-form-input v-if=\"venue\" v-model=\"venue.name\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('venue_address')\">\n <b-form-input v-if=\"venue\" v-model=\"venue.address\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('venue_zip')\">\n <b-form-input v-if=\"venue\" v-model=\"venue.zip\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('venue_city')\">\n <b-form-input v-if=\"venue\" v-model=\"venue.city\"></b-form-input>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('venue_country')\">\n <CountrySelection v-model=\"venue.country_code\"></CountrySelection>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"venue.verified\">{{ $t('venue_verified') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group>\n <b-form-checkbox v-model=\"venue.active\">{{ $t('venue_active') }}</b-form-checkbox>\n </b-form-group>\n </b-col>\n </b-row>\n\n\n </div>\n</template>\n\n<script>\nimport CountrySelection from '../components/CountrySelection.vue'\nexport default {\n components: {\n CountrySelection\n },\n props: ['value'],\n data() {\n return {\n venue: {},\n }\n },\n mounted() {\n this.venue = this.value;\n }\n}\n</script>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VenueForm.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VenueForm.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./VenueForm.vue?vue&type=template&id=44c72f78\"\nimport script from \"./VenueForm.vue?vue&type=script&lang=js\"\nexport * from \"./VenueForm.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","<template>\n <div>\n <b-form-group v-if=\"$can('venue_create')\" class=\" text-right container-distance\">\n <b-button variant=\"new\" @click=\"showVenueModal\">{{ $t('new') }}</b-button>\n </b-form-group>\n <b-modal id=\"add-venue\" :title=\"$t('venue_new_modal_title')\">\n <venue-form v-if=\"venue\" v-model=\"venue\"></venue-form>\n\n <template #modal-footer>\n <b-button variant=\"primary\" @click=\"createVenue()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('venue_modal_edit', venue)\" id=\"edit-venue\">\n <venue-form v-if=\"venue\" v-model=\"venue\"></venue-form>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveVenue()\" variant=\"success\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n<div class=\"tableBig\">\n <b-table v-if=\"venuesData.length\" class=\"table-container\" :items=\"venuesData\" :fields=\"fields\">\n <template v-slot:cell(verified)=\"{item}\">\n {{ item.verified ? $t('yes') : $t('no') }}\n </template>\n <template v-slot:cell(active)=\"{item}\">\n {{ item.active ? $t('yes') : $t('no') }}\n </template>\n <template v-slot:cell(name)=\"{item}\">\n <span v-if=\"item.name\">{{ item.name }}</span>\n <span v-else>{{ $t('not_set') }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button class=\"mr-3 mb-1\" v-if=\"$can('venue_create')\" variant=\"primary\" @click=\"editVenue(item)\">{{ $t('manage') }}</b-button>\n <b-icon v-if=\"$can('venue_delete')\" @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\" class=\"text-secondary btnDelete\" :class=\"{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count}\"></b-icon>\n </template>\n </b-table>\n\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getVenuesData\"></pagination>\n \n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-venue\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteVenue\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n</div>\n \n\n </div>\n</template>\n\n<script>\nimport api from '../api'\nimport VenueForm from \"../components/VenueForm.vue\";\nexport default {\n components: {\n VenueForm,\n },\n name: 'VenuesOverview',\n data() {\n return {\n venue: {},\n venuesData: [],\n page_data: null,\n loading: false,\n fields: [\n {key: 'name', label: this.$t('venue_name')},\n {key: 'verified', label: this.$t('venue_verified')},\n {key: 'active', label: this.$t('venue_active')},\n {key: 'actions', label: this.$t('order_actions')},\n ]\n }\n },\n created() {\n document.title = this.$t('venues_overview')\n if(this.$store.state.user) {\n if(!this.$can('master_data_venues_overview')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getVenuesData()\n },\n methods: {\n showVenueModal() {\n this.venue = {};\n this.venue.active = true\n this.venue.verified = true\n this.$bvModal.show('add-venue')\n },\n createVenue() {\n this.adding = true\n\n api.venues().create(this.venue).then(() => {\n this.$bvModal.hide('add-venue')\n this.getVenuesData()\n })\n },\n getVenuesData(page = 1) {\n api.venues().overview(page).then(venues => {\n this.venuesData = venues.data\n\n this.venuesData.forEach((value) => {\n if (value.verified === 1) {\n value.verified = true\n }\n if (value.active === 1) {\n value.active = true\n }\n });\n\n this.page_data = venues\n })\n },\n editVenue(venue) {\n this.venue = Object.assign({}, venue)\n this.$bvModal.show('edit-venue')\n },\n saveVenue() {\n api.venues().save(this.venue).then(() => {\n this.$bvModal.hide('edit-venue')\n this.getVenuesData()\n this.venue = {}\n this.$store.commit('success', 'venue_saved')\n })\n },\n showDeleteModal(venue) {\n this.venue = venue;\n this.$bvModal.show('delete-venue')\n },\n deleteVenue() {\n this.loading = true;\n api.venues().delete(this.venue.id).then(() => {\n this.$store.commit('success', 'venue_deleted');\n this.$bvModal.hide('delete-venue')\n this.venue = {};\n this.getVenuesData();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_venues_overview')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n {key: 'verified', label: this.$t('venue_verified')},\n {key: 'active', label: this.$t('venue_active')},\n {key: 'name', label: this.$t('venue_name')},\n {key: 'actions', label: this.$t('order_actions')},\n ];\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.tableBig{\n overflow: auto;\n}\n.btnDelete {\n vertical-align:middle;\n}\n.cursor_pointer {\n cursor: pointer;\n}\n.disabled_danger {\n opacity: .4;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VenuesOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VenuesOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./VenuesOverview.vue?vue&type=template&id=e00acbdc&scoped=true\"\nimport script from \"./VenuesOverview.vue?vue&type=script&lang=js\"\nexport * from \"./VenuesOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./VenuesOverview.vue?vue&type=style&index=0&id=e00acbdc&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e00acbdc\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.$can('master_data_company_links_create'))?_c('b-form-group',{staticClass:\"text-right container-distance\"},[_c('b-button',{attrs:{\"variant\":\"new\"},on:{\"click\":_vm.showCompanyLinkModal}},[_vm._v(_vm._s(_vm.$t('new')))])],1):_vm._e(),_c('b-modal',{attrs:{\"id\":\"add-company-link\",\"title\":_vm.$t('company_link_new_modal_title')},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.createCompanyLink()}}},[_vm._v(_vm._s(_vm.$t('create')))])]},proxy:true}])},[_c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_master_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.companies},model:{value:(_vm.companyLink.company_master_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"company_master_id\", $$v)},expression:\"companyLink.company_master_id\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_sub_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.companies},model:{value:(_vm.companyLink.company_sub_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"company_sub_id\", $$v)},expression:\"companyLink.company_sub_id\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('location_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.venues},model:{value:(_vm.companyLink.location_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"location_id\", $$v)},expression:\"companyLink.location_id\"}})],1)],1)],1)],1)]),_c('b-modal',{attrs:{\"title\":_vm.$t('company_link_modal_edit', _vm.companyLink),\"id\":\"edit-company-link\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.saveCompanyLink()}}},[_vm._v(_vm._s(_vm.$t('save')))])]}}])},[_c('div',[_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_master_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.companies},model:{value:(_vm.companyLink.company_master_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"company_master_id\", $$v)},expression:\"companyLink.company_master_id\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('company_sub_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.companies},model:{value:(_vm.companyLink.company_sub_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"company_sub_id\", $$v)},expression:\"companyLink.company_sub_id\"}})],1)],1)],1),_c('b-row',[_c('b-col',[_c('b-form-group',{attrs:{\"label\":_vm.$t('location_name')}},[_c('b-select',{attrs:{\"text-field\":\"name\",\"value-field\":\"id\",\"options\":_vm.venues},model:{value:(_vm.companyLink.location_id),callback:function ($$v) {_vm.$set(_vm.companyLink, \"location_id\", $$v)},expression:\"companyLink.location_id\"}})],1)],1)],1)],1)]),_c('div',{staticClass:\"tableBig\"},[(_vm.companyLinks.length)?_c('b-table',{staticClass:\"table-container\",attrs:{\"items\":_vm.companyLinks,\"fields\":_vm.fields},scopedSlots:_vm._u([{key:\"cell(company_master_id)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.company_master_id)+\" \")]}},{key:\"cell(company_sub_id)\",fn:function({item}){return [_vm._v(\" \"+_vm._s(item.company_sub_id)+\" \")]}},{key:\"cell(location_id)\",fn:function({item}){return [(item.location_id)?_c('span',[_vm._v(_vm._s(item.location_id))]):_c('span',[_vm._v(_vm._s(_vm.$t('not_set')))])]}},{key:\"cell(actions)\",fn:function({item}){return [(_vm.$can('master_data_company_links_edit'))?_c('b-button',{staticClass:\"mr-3 mb-1\",attrs:{\"variant\":\"primary\"},on:{\"click\":function($event){return _vm.editCompanyLink(item)}}},[_vm._v(_vm._s(_vm.$t('manage')))]):_vm._e(),(_vm.$can('master_data_company_links_delete'))?_c('b-icon',{staticClass:\"text-secondary btnDelete\",class:{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count},attrs:{\"icon\":\"trash\",\"font-scale\":\"1.5\"},on:{\"click\":function($event){return _vm.showDeleteModal(item)}}}):_vm._e()]}}],null,false,4119977533)}):_vm._e(),(_vm.page_data)?_c('pagination',{attrs:{\"limit\":3,\"data\":_vm.page_data},on:{\"pagination-change-page\":_vm.getCompanyLinksData}}):_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"info\"}},[_vm._v(_vm._s(_vm.$t('no_results_have_been_found')))]),_c('b-modal',{attrs:{\"title\":_vm.$t('delete'),\"id\":\"delete-company-link\",\"size\":\"lg\"},scopedSlots:_vm._u([{key:\"modal-footer\",fn:function({cancel}){return [_c('b-button',{attrs:{\"variant\":\"warning\"},on:{\"click\":function($event){return cancel()}}},[_vm._v(_vm._s(_vm.$t('cancel')))]),_c('b-button',{attrs:{\"disabled\":_vm.loading,\"variant\":\"danger\"},on:{\"click\":_vm.deleteCompanyLink}},[(_vm.loading)?_c('b-icon',{staticClass:\"mr-2\",attrs:{\"icon\":\"three-dots\",\"animation\":\"cylon\"}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.$t('delete'))+\" \")],1)]}}])},[_c('div',[_c('b-row',[_c('b-col',[_vm._v(_vm._s(_vm.$t('delete_entry')))])],1)],1)])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div>\n <b-form-group v-if=\"$can('master_data_company_links_create')\" class=\" text-right container-distance\">\n <b-button variant=\"new\" @click=\"showCompanyLinkModal\">{{ $t('new') }}</b-button>\n </b-form-group>\n <b-modal id=\"add-company-link\" :title=\"$t('company_link_new_modal_title')\">\n <div>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_master_name')\">\n <b-select v-model=\"companyLink.company_master_id\" text-field=\"name\" value-field=\"id\" :options=\"companies\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_sub_name')\">\n <b-select v-model=\"companyLink.company_sub_id\" text-field=\"name\" value-field=\"id\" :options=\"companies\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('location_name')\">\n <b-select v-model=\"companyLink.location_id\" text-field=\"name\" value-field=\"id\" :options=\"venues\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer>\n <b-button variant=\"primary\" @click=\"createCompanyLink()\">{{ $t('create') }}</b-button>\n </template>\n </b-modal>\n\n <b-modal :title=\"$t('company_link_modal_edit', companyLink)\" id=\"edit-company-link\">\n <div>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_master_name')\">\n <b-select v-model=\"companyLink.company_master_id\" text-field=\"name\" value-field=\"id\" :options=\"companies\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('company_sub_name')\">\n <b-select v-model=\"companyLink.company_sub_id\" text-field=\"name\" value-field=\"id\" :options=\"companies\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n <b-row>\n <b-col>\n <b-form-group :label=\"$t('location_name')\">\n <b-select v-model=\"companyLink.location_id\" text-field=\"name\" value-field=\"id\" :options=\"venues\"></b-select>\n </b-form-group>\n </b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button @click=\"saveCompanyLink()\" variant=\"success\">{{ $t('save') }}</b-button>\n </template>\n </b-modal>\n<div class=\"tableBig\">\n <b-table v-if=\"companyLinks.length\" class=\"table-container\" :items=\"companyLinks\" :fields=\"fields\">\n <template v-slot:cell(company_master_id)=\"{item}\">\n {{ item.company_master_id }}\n </template>\n <template v-slot:cell(company_sub_id)=\"{item}\">\n {{ item.company_sub_id }}\n </template>\n <template v-slot:cell(location_id)=\"{item}\">\n <span v-if=\"item.location_id\">{{ item.location_id }}</span>\n <span v-else>{{ $t('not_set') }}</span>\n </template>\n <template v-slot:cell(actions)=\"{item}\">\n <b-button class=\"mr-3 mb-1\" v-if=\"$can('master_data_company_links_edit')\" variant=\"primary\" @click=\"editCompanyLink(item)\">{{ $t('manage') }}</b-button>\n <b-icon v-if=\"$can('master_data_company_links_delete')\" @click=\"showDeleteModal(item)\" icon=\"trash\" font-scale=\"1.5\" class=\"text-secondary btnDelete\" :class=\"{cursor_pointer: item.orders_count === 0, disabled_danger: item.orders_count}\"></b-icon>\n </template>\n </b-table>\n\n <pagination v-if=\"page_data\" :limit=\"3\" :data=\"page_data\" @pagination-change-page=\"getCompanyLinksData\"></pagination>\n \n <b-alert v-else show variant=\"info\">{{ $t('no_results_have_been_found') }}</b-alert>\n\n <b-modal :title=\"$t('delete')\" id=\"delete-company-link\" size=\"lg\">\n <div>\n <b-row>\n <b-col>{{ $t('delete_entry') }}</b-col>\n </b-row>\n </div>\n <template #modal-footer=\"{cancel}\">\n <b-button @click=\"cancel()\" variant=\"warning\">{{ $t('cancel') }}</b-button>\n <b-button :disabled=\"loading\" @click=\"deleteCompanyLink\" variant=\"danger\">\n <b-icon v-if=\"loading\" class=\"mr-2\" icon=\"three-dots\" animation=\"cylon\"></b-icon> {{ $t('delete') }}\n </b-button>\n </template>\n </b-modal>\n</div>\n \n\n </div>\n</template>\n\n<script>\nimport api from '../api'\nexport default {\n components: {\n },\n name: 'CompanyLinksOverview',\n data() {\n return {\n companyLink: {},\n companyLinks: [],\n venues: [],\n companies: [],\n page_data: null,\n loading: false,\n fields: [\n {key: 'company_master.name', label: this.$t('company_master_name')},\n {key: 'company_sub.name', label: this.$t('company_sub_name')},\n {key: 'location.name', label: this.$t('location_id')},\n {key: 'actions', label: this.$t('order_actions')},\n ]\n }\n },\n created() {\n document.title = this.$t('company_links_overview')\n if(this.$store.state.user) {\n if(!this.$can('master_data_company_links_overview')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n return;\n }\n }\n this.getCompanyLinksData()\n this.getVenues()\n this.getCompanies()\n },\n methods: {\n showCompanyLinkModal() {\n this.companyLink = {};\n this.$bvModal.show('add-company-link')\n },\n createCompanyLink() {\n this.adding = true\n\n if (this.companyLink.company_master_id === this.companyLink.company_sub_id) {\n this.$store.commit('errors', [this.$t('company_link_master_sub_not_equal')])\n return\n }\n\n api.companyLinks().create(this.companyLink).then(() => {\n this.$bvModal.hide('add-company-link')\n this.getCompanyLinksData()\n })\n },\n getCompanyLinksData(page = 1) {\n api.companyLinks().overview(page).then(companyLinks => {\n this.companyLinks = companyLinks.data\n this.page_data = companyLinks\n })\n },\n getVenues() {\n api.venues().getVenuesNames().then(venues => {\n this.venues = venues\n })\n },\n getCompanies() {\n api.company().getCompaniesName().then(companies => {\n this.companies = companies\n })\n },\n editCompanyLink(companyLink) {\n this.companyLink = Object.assign({}, companyLink)\n this.$bvModal.show('edit-company-link')\n },\n saveCompanyLink() {\n if (this.companyLink.company_master_id === this.companyLink.company_sub_id) {\n this.$store.commit('errors', [this.$t('company_link_master_sub_not_equal')])\n return\n }\n\n api.companyLinks().save(this.companyLink).then(() => {\n this.$bvModal.hide('edit-company-link')\n this.getCompanyLinksData()\n this.companyLink = {}\n this.$store.commit('success', 'company_link_saved')\n })\n },\n showDeleteModal(companyLink) {\n this.companyLink = companyLink;\n this.$bvModal.show('delete-company-link')\n },\n deleteCompanyLink() {\n this.loading = true;\n api.companyLinks().delete(this.companyLink.id).then(() => {\n this.$store.commit('success', 'company_link_deleted');\n this.$bvModal.hide('delete-company-link')\n this.companyLink = {};\n this.getCompanyLinksData();\n this.loading = false;\n }).catch(() => {\n this.loading = false;\n })\n }\n },\n watch: {\n '$store.state.user': {\n handler() {\n if(!this.$can('master_data_company_links_overview')) {\n this.$store.commit('errors', [this.$t('not_have_permission')])\n this.$router.push('/403');\n }\n }\n },\n '$store.state.language': {\n handler() {\n this.fields = [\n {key: 'company_master.name', label: this.$t('company_master_id')},\n {key: 'company_sub.name', label: this.$t('company_sub_id')},\n {key: 'location.name', label: this.$t('location_id')},\n {key: 'actions', label: this.$t('order_actions')},\n ];\n }\n }\n }\n}\n</script>\n\n<!-- Add \"scoped\" attribute to limit CSS to this component only -->\n<style scoped>\n.tableBig{\n overflow: auto;\n}\n.btnDelete {\n vertical-align:middle;\n}\n.cursor_pointer {\n cursor: pointer;\n}\n.disabled_danger {\n opacity: .4;\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CompanyLinksOverview.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CompanyLinksOverview.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CompanyLinksOverview.vue?vue&type=template&id=a13d066a&scoped=true\"\nimport script from \"./CompanyLinksOverview.vue?vue&type=script&lang=js\"\nexport * from \"./CompanyLinksOverview.vue?vue&type=script&lang=js\"\nimport style0 from \"./CompanyLinksOverview.vue?vue&type=style&index=0&id=a13d066a&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a13d066a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{attrs:{\"id\":\"ticket-lost\"}},[_c('b-row',{attrs:{\"align-v\":\"center\"}},[_c('div',{staticClass:\"mt-5\",attrs:{\"id\":\"ticket-lost-wrap\"}},[_c('img',{staticStyle:{\"max-width\":\"120px\",\"margin\":\"auto\",\"display\":\"block\"},attrs:{\"src\":\"https://fairtix.io/images/logo-fairtix.png\",\"alt\":\"Fairtix\"}}),_c('div',{staticClass:\"my-4\"},[_c('b-dropdown',{staticClass:\"m-md-2 languages\",attrs:{\"id\":\"dropdown-right \",\"text\":_vm.languageLabel},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('div',[_c('b-img',{staticClass:\"selected-lang\",attrs:{\"src\":require('./../assets/icons/'+_vm.language+'.png')}}),_c('p',{staticClass:\"mb-0\"},[_vm._v(_vm._s(_vm.language.toUpperCase()))])],1)]},proxy:true}])},[_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('nl')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/nl.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_nl')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('de')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/de.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_de')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('en')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/en.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_en')))])],1),_c('b-dropdown-item',{on:{\"click\":function($event){return _vm.changeLanguage('es')}}},[_c('b-img',{staticClass:\"lang-flag\",attrs:{\"src\":require('./../assets/icons/es.png')}}),_c('p',{staticClass:\"mb-0 ml-2\"},[_vm._v(_vm._s(_vm.$t('lang_es')))])],1)],1)],1),(!_vm.orders)?_c('div',{staticClass:\"lost-search-body\"},[_c('h3',{staticClass:\"tl-title my-4\"},[_vm._v(_vm._s(_vm.$t('ticket_lost_title')))]),_c('p',{staticClass:\"tl-description\"},[_vm._v(_vm._s(_vm.$t('ticket_lost_description')))]),_c('div',[_c('b-form-group',{attrs:{\"label\":_vm.$t('email') +'*'}},[_c('b-input-group',{staticClass:\"mb-2\"},[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('svg',{attrs:{\"width\":\"20\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M64 112c-8.8 0-16 7.2-16 16v22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1V128c0-8.8-7.2-16-16-16H64zM48 212.2V384c0 8.8 7.2 16 16 16H448c8.8 0 16-7.2 16-16V212.2L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64H448c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z\"}})])]),_c('b-form-input',{attrs:{\"type\":\"email\",\"placeholder\":_vm.$t('email') +'*'},model:{value:(_vm.email),callback:function ($$v) {_vm.email=$$v},expression:\"email\"}})],1)],1),_c('b-form-group',{staticClass:\"tl-date-picker\",attrs:{\"label\":_vm.$t('report_event_day') +'*'}},[_c('b-input-group',[_c('b-input-group-prepend',{attrs:{\"is-text\":\"\"}},[_c('svg',{staticClass:\"cursor-pointer\",attrs:{\"width\":\"20\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 448 512\"},on:{\"click\":_vm.openDatePicket}},[_c('path',{attrs:{\"d\":\"M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192h80v56H48V192zm0 104h80v64H48V296zm128 0h96v64H176V296zm144 0h80v64H320V296zm80-48H320V192h80v56zm0 160v40c0 8.8-7.2 16-16 16H320V408h80zm-128 0v56H176V408h96zm-144 0v56H64c-8.8 0-16-7.2-16-16V408h80zM272 248H176V192h96v56z\"}})])]),_c('date-picker',{ref:\"dpicker\",attrs:{\"bootstrap-styling\":true,\"language\":_vm.locale,\"typeable\":true,\"use-utc\":true,\"placeholder\":\"dd-mm-yyyy*\",\"format\":\"dd-MM-yyyy\"},model:{value:(_vm.date),callback:function ($$v) {_vm.date=$$v},expression:\"date\"}})],1)],1),(_vm.recaptchaSiteKey)?_c('vue-recaptcha',{ref:\"recaptcha\",staticClass:\"my-4 g-recaptcha\",attrs:{\"sitekey\":_vm.recaptchaSiteKey,\"language\":_vm.language || 'en'},on:{\"verify\":_vm.verifyMethod,\"expired\":_vm.expired}}):_vm._e(),(_vm.error !== null)?_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"danger\"}},[_vm._v(_vm._s(_vm.$t(_vm.error)))]):_vm._e(),_c('b-button',{staticClass:\"float-right lost-ticket-btn mt-2\",attrs:{\"block\":\"\",\"variant\":\"primary\",\"disabled\":_vm.isDisabled},on:{\"click\":_vm.search}},[_vm._v(_vm._s(_vm.$t('ticket_lost_search_tickets')))])],1)]):(_vm.orders)?_c('div',[_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"success\"}},[_vm._v(_vm._s(_vm.$t('ticket_lost_your_orders_description')))])],1):_vm._e()])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div id=\"ticket-lost\">\n <b-row align-v=\"center\">\n <div id=\"ticket-lost-wrap\" class=\"mt-5\">\n <img src=\"https://fairtix.io/images/logo-fairtix.png\" alt=\"Fairtix\" style=\"max-width: 120px; margin: auto; display: block;\"/>\n\n <div class=\"my-4\">\n <b-dropdown id=\"dropdown-right \" :text=\"languageLabel\" class=\"m-md-2 languages\">\n <template v-slot:button-content>\n <div>\n <b-img class=\"selected-lang\" :src=\"require('./../assets/icons/'+language+'.png')\"/>\n <p class=\"mb-0\">{{language.toUpperCase()}}</p>\n </div>\n </template>\n <b-dropdown-item @click=\"changeLanguage('nl')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/nl.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_nl') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('de')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/de.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_de') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('en')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/en.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_en') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('es')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/es.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_es') }}</p></b-dropdown-item>\n </b-dropdown>\n </div>\n\n <div v-if=\"!orders\" class=\"lost-search-body\">\n <h3 class=\"tl-title my-4\">{{ $t('ticket_lost_title') }}</h3>\n\n <p class=\"tl-description\">{{ $t('ticket_lost_description') }}</p>\n\n <div>\n <b-form-group :label=\"$t('email') +'*'\">\n <b-input-group class=\"mb-2\">\n <b-input-group-prepend is-text>\n <svg width=\"20\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\"M64 112c-8.8 0-16 7.2-16 16v22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1V128c0-8.8-7.2-16-16-16H64zM48 212.2V384c0 8.8 7.2 16 16 16H448c8.8 0 16-7.2 16-16V212.2L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64H448c35.3 0 64 28.7 64 64V384c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V128z\"/></svg>\n </b-input-group-prepend>\n <b-form-input v-model=\"email\" type=\"email\" :placeholder=\"$t('email') +'*'\"></b-form-input>\n </b-input-group>\n </b-form-group>\n\n <b-form-group class=\"tl-date-picker\" :label=\"$t('report_event_day') +'*'\">\n <b-input-group>\n <b-input-group-prepend is-text>\n <svg class=\"cursor-pointer\" @click=\"openDatePicket\" width=\"20\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\"M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192h80v56H48V192zm0 104h80v64H48V296zm128 0h96v64H176V296zm144 0h80v64H320V296zm80-48H320V192h80v56zm0 160v40c0 8.8-7.2 16-16 16H320V408h80zm-128 0v56H176V408h96zm-144 0v56H64c-8.8 0-16-7.2-16-16V408h80zM272 248H176V192h96v56z\"/></svg>\n </b-input-group-prepend>\n <date-picker\n ref=\"dpicker\"\n :bootstrap-styling=\"true\"\n v-model=\"date\"\n :language=\"locale\"\n :typeable=\"true\"\n :use-utc=\"true\"\n placeholder=\"dd-mm-yyyy*\"\n format=\"dd-MM-yyyy\"></date-picker>\n </b-input-group>\n </b-form-group>\n\n <vue-recaptcha v-if=\"recaptchaSiteKey\"\n ref=\"recaptcha\"\n :sitekey=\"recaptchaSiteKey\"\n @verify=\"verifyMethod\"\n @expired=\"expired\"\n :language=\"language || 'en'\"\n class=\"my-4 g-recaptcha\"></vue-recaptcha>\n <b-alert v-if=\"error !== null\" show variant=\"danger\">{{ $t(error) }}</b-alert>\n\n <b-button @click=\"search\" block class=\"float-right lost-ticket-btn mt-2\" variant=\"primary\" :disabled=\"isDisabled\">{{ $t('ticket_lost_search_tickets') }}</b-button>\n </div>\n </div>\n <div v-else-if=\"orders\">\n <b-alert show variant=\"success\">{{ $t('ticket_lost_your_orders_description') }}</b-alert>\n </div>\n </div>\n </b-row>\n </div>\n</template>\n\n<script>\nimport {mapState} from \"vuex\";\nimport { VueRecaptcha } from 'vue-recaptcha';\nimport api from \"../api\";\nimport {getOrderStatusPageUrl, validateEmail} from \"../functions\";\nimport moment from \"moment\";\nimport DatePicker from '@sum.cumo/vue-datepicker'\nimport '@sum.cumo/vue-datepicker/dist/Datepicker.css'\nimport { en, es, nl, de } from '@sum.cumo/vue-datepicker/dist/locale/index.esm'\n\nexport default {\n name: \"TicketLost\",\n data() {\n return {\n recaptchaSiteKey: process.env.VUE_APP_RECAPTCHA_SITE_KEY,\n email: null,\n date: null,\n isDisabled: true,\n recaptcha: null,\n orders: null,\n error: null\n }\n },\n mounted() {\n document.title = this.$t('ticket_lost_title')\n document.body.style.backgroundColor = '#f3f3f4';\n },\n beforeDestroy() {\n document.body.style.backgroundColor = '#ffffff';\n },\n methods: {\n changeLanguage(lang) {\n this.$store.commit('setLanguage', lang)\n setTimeout(() => {\n this.$refs.recaptcha.reset();\n }, 500)\n },\n verifyMethod(e) {\n this.recaptcha = e;\n this.isDisabled = false;\n },\n expired() {\n this.isDisabled = false;\n },\n search() {\n this.error = null;\n if(!validateEmail(this.email)) {\n this.error = 'wrong_email';\n return\n }\n const date = moment(this.date, 'DD-MM-YYYY');\n if(!date.isValid()) {\n this.error = 'wrong_date';\n return\n }\n this.isDisabled = true;\n api.ticket().searchLost(this.email, moment(this.date, 'DD-MM-YYYY').format('YYYY-MM-DD'), this.recaptcha).then((orders) => {\n this.orders = orders;\n if(orders === 0) {\n this.error = 'ticket_lost_no_orders';\n }\n this.$refs.recaptcha.reset();\n this.isDisabled = true;\n });\n },\n getOrderStatusPageUrl(id, secret) {\n return getOrderStatusPageUrl(id, secret);\n },\n openDatePicket(e) {\n e.preventDefault();\n setTimeout(() => {\n this.$refs.dpicker.open();\n }, 50)\n }\n },\n computed: {\n languageLabel(){\n return this.$t('language_' + this.language)\n },\n locale() {\n if(this.language === 'es') {\n return es;\n }\n if(this.language === 'nl') {\n return nl;\n }\n if(this.language === 'de') {\n return de;\n }\n return en;\n },\n ...mapState(['language']),\n },\n components: {\n VueRecaptcha,\n DatePicker\n }\n}\n</script>\n\n<style scoped lang=\"scss\">\n\n.g-recaptcha{\n width:100%;\n transform: scale(1.15);\n transform-origin: 0 0;\n}\n\n#ticket-lost {\n background-color: #f3f3f4;\n height: 99vh;\n padding: 0;\n margin: 0;\n}\n#ticket-lost-wrap {\n background: #ffffff;\n padding: 50px;\n text-align: center;\n border-radius: 4px;\n box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 5px 0px;\n width:450px;\n margin: auto;\n\n .btn-primary {\n color: #FFFFFF;\n font-size: large;\n font-weight: bold;\n }\n\n legend {\n text-align: left;\n color: #193d5b;\n }\n\n img {\n max-width: 100%;\n }\n\n .input-group-text {\n border: 2px solid #EEEEEE;\n border-right: 0;\n background-color: #FFFFFF;\n }\n\n input.form-control {\n border-left: 0;\n }\n\n input.form-control:focus {\n border-color: #EEEEEE;\n border-width: 2px;\n box-shadow: none;\n }\n\n}\n\n#ticket-lost-wrap {\n margin: auto;\n}\n\n@media only screen and (max-width: 480px) {\n #ticket-lost-wrap {\n width: 90%;\n }\n .g-recaptcha{\n transform:scale(1.05);\n }\n}\n\n@media only screen and (max-width: 468px) {\n .g-recaptcha{\n transform:scale(1);\n }\n}\n\n@media only screen and (max-width: 450px) {\n .g-recaptcha{\n transform:scale(0.95);\n }\n}\n\n@media only screen and (max-width: 430px) {\n .g-recaptcha{\n transform:scale(0.90);\n }\n}\n\n@media only screen and (max-width: 410px) {\n .g-recaptcha{\n transform:scale(0.85);\n }\n}\n\n@media only screen and (max-width: 410px) {\n .g-recaptcha{\n transform:scale(0.80);\n }\n}\n\n@media only screen and (max-width: 390px) {\n .g-recaptcha{\n transform:scale(0.75);\n }\n}\n\n@media only screen and (max-width: 370px) {\n .g-recaptcha{\n transform:scale(0.70);\n }\n}\n\n@media only screen and (max-width: 350px) {\n .g-recaptcha{\n transform:scale(0.65);\n }\n}\n\n@media only screen and (max-width: 330px) {\n .g-recaptcha{\n transform:scale(0.60);\n }\n}\n\n@media only screen and (max-width: 310px) {\n .g-recaptcha{\n transform:scale(0.55);\n }\n}\n\n@media only screen and (max-width: 290px) {\n .g-recaptcha{\n transform:scale(0.50);\n }\n}\n\n@media only screen and (max-width: 270px) {\n .g-recaptcha{\n transform:scale(0.45);\n }\n}\n\n.languages {\n border: 1px solid #999;\n border-radius: 30px;\n}\n.languages .dropdown-toggle{\n position: relative;\n border-radius: 20px;\n}\n.languages .dropdown-toggle::after{\n position: absolute;\n top: 50%;\n right: 15%;\n transform: translateY(-10%);\n width: 0;\n height: 0;\n border-style: solid;\n border-width: 7px;\n border-color: #000 transparent transparent transparent;\n}\n.languages .btn-secondary{\n background-color: #fff!important;\n width: 150px;\n}\n.languages .btn-secondary > div{\n display: flex;\n justify-content: flex-start;\n align-items: center;\n}\n.languages .btn-secondary > div img{\n margin: 0 10px;\n}\n\n.tl-title {\n color: #193d5b;\n font-weight: bold;\n}\n\n.tl-description {\n color: #a2a2a2 !important;\n font-size: large;\n}\n\n.tl-date-picker .b-form-datepicker button.dropdown-toggle {\n background-color: #FFFFFF;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #495057;\n text-align: center;\n white-space: nowrap;\n border: 2px solid #EEEEEE;\n border-right: 0;\n border-radius: 0.25rem;\n}\n\n.tl-event-name {\n color: #000000;\n font-weight: bold;\n font-size: large;\n}\n.tl-order-number {\n color: #000000;\n font-weight: bold;\n font-size: medium;\n}\n\n.tl-order {\n border-bottom: 1px solid #a2a2a2;\n\n &:last-child {\n border-bottom: 0;\n }\n}\n\n.lost-ticket-btn {\n height: 50px;\n}\n</style>\n\n<style lang=\"scss\">\n#ticket-lost-wrap .tl-date-picker {\n .input-group-prepend {\n\n }\n\n input {\n border: 0;\n color: #808080;\n font-size: 13px;\n height: 50px;\n font-weight: 400;\n line-height: 1.5;\n }\n\n input:focus-visible {\n border: 0;\n }\n\n .vdp-datepicker {\n border-radius: 4px;\n border: 2px solid #EEEEEE;\n border-left: 0;\n color: #808080;\n font-size: 13px;\n\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n margin-bottom: 0;\n }\n}\n\n#ticket-lost-wrap legend {\n text-align: left;\n color: #193d5b;\n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketLost.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TicketLost.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./TicketLost.vue?vue&type=template&id=335dc8c2&scoped=true\"\nimport script from \"./TicketLost.vue?vue&type=script&lang=js\"\nexport * from \"./TicketLost.vue?vue&type=script&lang=js\"\nimport style0 from \"./TicketLost.vue?vue&type=style&index=0&id=335dc8c2&prod&scoped=true&lang=scss\"\nimport style1 from \"./TicketLost.vue?vue&type=style&index=1&id=335dc8c2&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"335dc8c2\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport Router from 'vue-router'\nimport Login from '@/pages/Login'\nimport Signup from '@/pages/Signup'\nimport Dashboard from '@/pages/Dashboard'\nimport Companies from '@/pages/Companies'\nimport ManageCompany from '@/pages/ManageCompany'\nimport ManageCompanyLayout from '@/pages/ManageCompanyLayout'\nimport Events from '@/pages/Events'\nimport ManageEvent from '@/pages/ManageEvent'\nimport EventProducts from '@/pages/EventProducts'\nimport EventsOverview from '@/pages/EventsOverview'\nimport ViewPointOfSale from \"@/pages/ViewPointOfSale\";\nimport EventPointsOfSale from \"@/pages/EventPointsOfSale\";\nimport EventTimeslots from \"@/pages/EventTimeslots\";\nimport EventCustomerInformation from \"@/pages/EventCustomerInformation\";\nimport Discountcodes from \"@/pages/Discountcodes\";\nimport OrderOverview from \"@/pages/OrderOverview\";\nimport OrderDetails from \"@/pages/OrderDetails\";\nimport ScannerOverview from '@/pages/ScannerOverview.vue'\nimport ScanOperationOverview from '@/pages/ScanOperationOverview.vue'\nimport ScanOperationManage from '@/pages/ScanOperationManage.vue'\nimport ClaimTicket from '@/pages/ClaimTicket'\nimport TicketClaimed from '@/pages/TicketClaimed'\nimport OrderEnterPersonalDetails from \"@/pages/OrderEnterPersonalDetails\";\nimport OrderSelectTimeslot from \"@/pages/OrderSelectTimeslot\";\nimport OrderSelectPaymentMethod from \"@/pages/OrderSelectPaymentMethod\";\nimport OrderAdditionalProducts from \"@/pages/OrderAdditionalProducts\";\nimport OrderStatus from \"@/pages/OrderStatus\";\nimport CustomerOrderDetails from \"@/pages/CustomerOrderDetails\";\nimport CustomerOrderPending from \"@/pages/CustomerOrderPending\";\nimport AssignTickets from \"@/pages/AssignTickets\";\nimport ReportsOverview from \"@/pages/ReportsOverview\";\nimport CampaignDetails from \"@/pages/CampaignDetails\";\nimport CampaignsOverview from \"@/pages/CampaignsOverview\";\nimport OrderThankYou from \"@/pages/OrderThankYou\";\nimport TicketTemplates from \"@/pages/TicketTemplates\";\nimport EditTicketTemplate from \"@/pages/EditTicketTemplate\";\nimport NotFound from '@/pages/NotFound'\nimport TermsConditions from '@/pages/TermsConditions'\nimport TicketChanged from \"@/pages/TicketChanged\";\nimport StockReport from '@/pages/StockReport'\nimport ScanOperationProductsConfigure from \"@/pages/ScanOperationProductsConfigure\";\nimport ScanOperationScannersConfigure from \"@/pages/ScanOperationScannersConfigure\";\nimport ScanOperationSummary from \"@/pages/ScanOperationSummary\";\nimport BoxOfficeLogin from \"@/pages/BoxOfficeLogin\";\nimport BoxOfficeEvents from \"@/pages/BoxOfficeEvents\";\nimport BoxOfficeEventBoxOffices from \"@/pages/BoxOfficeEventBoxOffices\";\nimport BoxOfficePlaceOrder from \"@/pages/BoxOfficePlaceOrder\";\nimport BoxOfficeOrderHistory from \"@/pages/BoxOfficeOrderHistory\";\nimport CustomerSupportOverview from \"@/pages/CustomerSupportOverview\";\nimport ScannerTerminalLogin from \"@/pages/ScannerTerminalLogin\";\nimport ScannerTerminalScan from \"@/pages/ScannerTerminalScan\";\nimport GuestListOverview from \"@/pages/GuestListOverview\";\nimport ReportSalesPerTickettype from \"@/pages/ReportSalesPerTickettype\";\nimport UserResetPassword from \"@/pages/UserResetPassword\";\nimport store from \"@/store\";\nimport MasterDataOverview from \"@/pages/MasterDataOverview\";\nimport PermissionRoles from \"@/pages/PermissionRoles\";\nimport AccessDenied from \"@/pages/AccessDenied\";\nimport AdministrationOverview from \"@/pages/AdministrationOverview\";\nimport InvoiceOverview from \"@/pages/InvoiceOverview\";\nimport InvoiceDetails from \"@/pages/InvoiceDetails\";\nimport AdministrationEventFeesOverview from \"@/pages/AdministrationEventFeesOverview\";\nimport ScannerTerminalEvents from \"@/pages/ScannerTerminalEvents.vue\";\nimport DefaultCompanySettings from \"@/pages/DefaultCompanySettings\";\nimport DefaultCompanyLayout from \"@/pages/DefaultCompanyLayout\";\nimport DefaultCompanyFees from \"@/pages/DefaultCompanyFees\";\nimport DefaultCompanyPermissions from \"@/pages/DefaultCompanyPermissions\";\nimport DefaultCompanyTicketTemplate from \"@/pages/DefaultCompanyTicketTemplate\";\nimport EventMarketing from \"@/pages/EventMarketing.vue\";\nimport BatchesOverview from \"@/pages/BatchesOverview.vue\";\nimport BatchDetails from \"@/pages/BatchDetails\";\nimport SignupConfirmation from \"@/pages/SignupConfirmation.vue\";\nimport AutoInvoiceSettings from \"@/pages/AutoInvoiceSettings.vue\";\nimport CompanyInvoiceOverview from \"@/pages/CompanyInvoiceOverview.vue\";\nimport ExtensionsOverview from \"@/pages/ExtensionsOverview.vue\";\nimport MailchimpSettings from \"@/pages/MailchimpSettings.vue\";\nimport VenuesOverview from \"@/pages/VenuesOverview.vue\";\nimport CompanyLinksOverview from \"@/pages/CompanyLinksOverview.vue\";\nimport TicketLost from \"../pages/TicketLost\";\n\nVue.use(Router)\n\nconst router = new Router({\n mode: 'history',\n routes: [\n {\n path: '/',\n name: 'Index',\n component: EventsOverview\n },\n {\n path: '/p/:url',\n name: 'ViewPointOfSale',\n component: ViewPointOfSale\n },\n {\n path: '/login',\n name: 'Login',\n component: Login\n },\n {\n path: '/signup',\n name: 'Signup',\n component: Signup\n },\n {\n path: '/signup/confirmation',\n name: 'SignupConfirmation',\n component: SignupConfirmation\n },\n {\n path: '/dashboard',\n name: 'Dashboard',\n component: Dashboard\n },\n {\n path: '/company',\n name: 'Companies',\n component: Companies\n },\n {\n path: '/company/:id',\n name: 'ManageCompany',\n component: ManageCompany\n },\n {\n path: '/company/:id/layout',\n name: 'ManageCompanyLayout',\n component: ManageCompanyLayout\n },\n {\n path: '/company/:id/invoices',\n name: 'CompanyInvoiceOverview',\n component: CompanyInvoiceOverview\n },\n {\n path: '/event',\n name: 'Events',\n component: Events\n },\n {\n path: '/event/:id',\n name: 'ManageEvent',\n component: ManageEvent\n },\n {\n path: '/event/:id/products',\n name: 'EventProducts',\n component: EventProducts\n },\n {\n path: '/event/:id/pointsofsale',\n name: 'EventPointsOfSale',\n component: EventPointsOfSale\n },\n {\n path: '/event/:id/marketing',\n name: 'EventMarketing',\n component: EventMarketing\n },\n {\n path: '/order/:id/:secret/personal',\n name: 'OrderEnterPersonalDetails',\n component: OrderEnterPersonalDetails\n },\n {\n path: '/order/:id/:secret/timeslot',\n name: 'OrderSelectTimeslot',\n component: OrderSelectTimeslot\n },\n {\n path: '/order/:id/:secret/products',\n name: 'OrderAdditionalProducts',\n component: OrderAdditionalProducts\n },\n {\n path: '/order/:id/:secret/payment',\n name: 'OrderSelectPaymentMethod',\n component: OrderSelectPaymentMethod\n },\n {\n path: '/order/:id/:secret/overview',\n name: 'CustomerOrderOverview',\n component: CustomerOrderDetails\n },\n {\n path: '/order/:id/:secret/pending',\n name: 'CustomerOrderPending',\n component: CustomerOrderPending\n },\n {\n path: '/order/:id/:secret/assign',\n name: 'AssignTickets',\n component: AssignTickets\n },\n {\n path: '/order/thanks',\n name: 'OrderThankYou',\n component: OrderThankYou\n },\n {\n path: '/order/:id/:secret/status',\n name: 'OrderStatus',\n component: OrderStatus\n },\n {\n path: '/event/:id/timeslots',\n name: 'EventTimeslots',\n component: EventTimeslots\n },\n {\n path: '/event/:id/customer-information',\n name: 'EventCustomerInformation',\n component: EventCustomerInformation\n },\n {\n path: '/discountcodes',\n name: 'Discountcodes',\n component: Discountcodes\n },\n {\n path: '/order-overview',\n name: 'OrderOverview',\n component: OrderOverview\n },\n {\n path: '/order-details/:order_number',\n name: 'OrderDetails',\n component: OrderDetails\n },\n {\n path:'/scan-operation',\n name:'ScanOperationOverview',\n component:ScanOperationOverview\n },\n {\n path:'/scan-operation/manage/:id',\n name:'ScanOperationManage',\n component:ScanOperationManage\n },\n {\n path:'/scan-operation/manage/:id/products',\n name:'ScanOperationProductsConfigure',\n component:ScanOperationProductsConfigure\n },\n {\n path:'/scan-operation/manage/:id/scanners',\n name:'ScanOperationScannersConfigure',\n component:ScanOperationScannersConfigure\n },\n {\n path:'/scan-operation/manage/:id/summary',\n name:'ScanOperationSummary',\n component:ScanOperationSummary\n },\n {\n path: '/scan',\n name: 'ScannerOverview',\n component: ScannerOverview\n },\n {\n path: '/ticket/:id/:secret/claim',\n name: 'ClaimTicket',\n component: ClaimTicket\n },\n {\n path: '/ticket/claimed',\n name: 'TicketClaimed',\n component: TicketClaimed\n },\n {\n path: '/ticket-templates',\n name: 'TicketTemplates',\n component: TicketTemplates\n },\n {\n path: '/reports',\n name: 'ReportsOverview',\n component: ReportsOverview\n },\n {\n path: '/ticket-templates/:id',\n name: 'EditTicketTemplate',\n component: EditTicketTemplate\n },\n {\n path: '/campaigns',\n name: 'CampaignsOverview',\n component: CampaignsOverview\n },\n {\n path: '/campaigns/:id',\n name: 'CampaignDetails',\n component: CampaignDetails\n },\n {\n path: '/404',\n name: 'NotFound',\n component: NotFound\n },\n {\n path: '/terms-conditions',\n name: 'TermsConditions',\n component: TermsConditions\n },\n {\n path: '/ticked-changed',\n name: 'TicketChanged',\n component: TicketChanged\n },\n {\n path: '/stock-report',\n name: 'StockReport',\n component: StockReport\n },\n {\n path: '/customer-support',\n name: 'CustomerSupportOverview',\n component: CustomerSupportOverview\n },\n // manual scanner routes\n {\n path: '/scanner-terminal/login',\n name: 'ScannerTerminalLogin',\n component: ScannerTerminalLogin\n },\n {\n path: '/scanner-terminal/events',\n name: 'ScannerTerminalEvents',\n component: ScannerTerminalEvents\n },\n {\n path: '/scanner-terminal/:event/scan',\n name: 'ScannerTerminalScan',\n component: ScannerTerminalScan\n },\n // box office routes\n {\n path: '/box-office/login',\n name: 'BoxOfficeLogin',\n component: BoxOfficeLogin\n },\n {\n path: '/box-office/events',\n name: 'BoxOfficeEvents',\n component: BoxOfficeEvents\n },\n {\n path: '/box-office/event/:event/box-offices',\n name: 'BoxOfficeEventBoxOffices',\n component: BoxOfficeEventBoxOffices\n },\n {\n path: '/box-office/event/:event/box-offices/:boxOffice/place-order',\n name: 'BoxOfficePlaceOrder',\n component: BoxOfficePlaceOrder\n },\n {\n path: '/box-office/event/:event/box-offices/:boxOffice/order-history',\n name: 'BoxOfficeOrderHistory',\n component: BoxOfficeOrderHistory\n },\n {\n path: '/guests-list',\n name: 'GuestListOverview',\n component: GuestListOverview\n },\n {\n path: '/reports/sales-by-tickettype',\n name: 'ReportSalesPerTickettype',\n component: ReportSalesPerTickettype\n },\n {\n path: '/reset-password',\n name: 'UserResetPassword',\n component: UserResetPassword\n },\n {\n path: '/master-data',\n name: 'MasterDataOverview',\n component: MasterDataOverview\n },\n {\n path: '/master-data/permission-roles',\n name: 'PermissionRoles',\n component: PermissionRoles\n },\n {\n path: '/403',\n name: 'AccessDenied',\n component: AccessDenied\n },\n {\n path: '/administration',\n name: 'AdministrationOverview',\n component: AdministrationOverview\n },\n {\n path: '/invoice-overview',\n name: 'InvoiceOverview',\n component: InvoiceOverview\n },\n {\n path: '/invoice/:number',\n name: 'InvoiceDetails',\n component: InvoiceDetails\n },\n {\n path: '/administration/events-fees',\n name: 'AdministrationEventFeesOverview',\n component: AdministrationEventFeesOverview\n },\n {\n path: '/master-data/default-account-settings',\n name: 'DefaultCompanySettings',\n component: DefaultCompanySettings\n },\n {\n path: '/master-data/default-account-settings/layout',\n name: 'DefaultCompanyLayout',\n component: DefaultCompanyLayout\n },\n {\n path: '/master-data/default-account-settings/fees',\n name: 'DefaultCompanyFees',\n component: DefaultCompanyFees\n },\n {\n path: '/master-data/default-account-settings/permissions',\n name: 'DefaultCompanyPermissions',\n component: DefaultCompanyPermissions\n },\n {\n path: '/master-data/default-account-settings/ticket-layout',\n name: 'DefaultCompanyTicketTemplate',\n component: DefaultCompanyTicketTemplate\n },\n {\n path: '/master-data/auto-invoice-settings',\n name: 'AutoInvoiceSettings',\n component: AutoInvoiceSettings\n },\n {\n path: '/master-data/venues-overview',\n name: 'VenuesOverview',\n component: VenuesOverview\n },\n {\n path: '/master-data/company-links-overview',\n name: 'CompanyLinksOverview',\n component: CompanyLinksOverview\n },\n {\n path: '/batches',\n name: 'BatchesOverview',\n component: BatchesOverview\n },\n {\n path: '/batches/:id',\n name: 'BatchDetails',\n component: BatchDetails\n },\n {\n path: '/extensions',\n name: 'ExtensionsOverview',\n component: ExtensionsOverview\n },\n {\n path: '/extensions/mailchimp',\n name: 'MailchimpSettings',\n component: MailchimpSettings\n },\n {\n path: '/ticket-lost',\n name: 'TicketLost',\n component: TicketLost\n }\n ]\n})\n\nrouter.beforeEach(async (to, from, next) => {\n if(!['ViewPointOfSale','Login','ScannerTerminalLogin','BoxOfficeLogin','UserResetPassword', 'Signup', 'SignupConfirmation', 'TicketLost'].includes(to.name)) {\n if(store.state.user && store.state.user.company.signup_agreed_metadata === null) {\n if(!to.path.startsWith('/box-office') && !to.path.startsWith('/scanner-terminal')) {\n next('/signup/confirmation');\n return {name: 'SignupConfirmation'};\n }\n }\n if(store.state.user && store.state.user.to_reset_password) {\n next('/reset-password');\n return {name: 'UserResetPassword'};\n }\n else {\n next();\n }\n }\n else {\n next();\n }\n})\n\nexport default router;\n","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\n\nVue.use(VueI18n)\n\nfunction loadLocaleMessages () {\n const locales = require.context('./locales', true, /[A-Za-z0-9-_,\\s]+\\.json$/i)\n const messages = {}\n locales.keys().forEach(key => {\n const matched = key.match(/([A-Za-z0-9-_]+)\\./i)\n if (matched && matched.length > 1) {\n const locale = matched[1]\n messages[locale] = locales(key)\n }\n })\n return messages\n}\n\nexport default new VueI18n({\n locale: process.env.VUE_APP_I18N_LOCALE || 'en',\n fallbackLocale: process.env.VUE_APP_I18N_FALLBACK_LOCALE || 'en',\n messages: loadLocaleMessages()\n})\n","import Vue from 'vue'\nimport Vuex from 'vuex'\nimport router from '../router'\nimport i18n from '../i18n'\nimport {BToast} from 'bootstrap-vue'\nimport moment from 'moment'\n\nVue.use(Vuex)\nimport api from '../api'\nimport boxOfficeApi from '../api/boxOfficeApi'\nimport scannerTerminalApi from '../api/scannerTerminalApi'\nimport {applyCampaignRule, deepClone} from \"@/functions\";\n\nlet startToken = localStorage.getItem('ft_token')\nlet isImpersonating = false\nif (localStorage.getItem('ft_impersonate_token')) {\n startToken = localStorage.getItem('ft_impersonate_token')\n isImpersonating = true\n}\nconst EMPTY_CART = {products: [], total: null, paymentMethod: null, discountCode: null, campaignDiscount: 0}\nlet startCart = EMPTY_CART\nif (localStorage.getItem('ft_cart')) {\n startCart = JSON.parse(localStorage.getItem('ft_cart'))\n}\n\nlet startLanguage = 'en'\nif (localStorage.getItem('ft_lang')) {\n startLanguage = localStorage.getItem('ft_lang')\n}\nelse {\n localStorage.setItem('ft_lang', startLanguage)\n}\ni18n.locale = startLanguage\nmoment.locale(startLanguage)\n\nconst store = new Vuex.Store({\n state: {\n token: startToken,\n user: null,\n campaign: null,\n boxOfficeUser: null,\n scannerTerminalUser: null,\n impersonating: isImpersonating,\n errors: [],\n success: null,\n company: null,\n cart: startCart,\n language: startLanguage,\n event: null,\n pos: null,\n posFirstGroupIsDefault: false,\n order: null,\n layout: null,\n donation_product_id:0,\n cartTotal: 0,\n cartTotalWithoutPM: 0,\n cartProcessingFee: 0\n },\n getters: {\n posHasCrossSell(state) {\n let hasCrossSell = false\n if (!state.pos) {\n return null\n }\n state.pos.products.forEach(posProduct => {\n if (posProduct.product.is_cross_sell) {\n hasCrossSell = true\n }\n })\n return hasCrossSell\n }\n },\n mutations: {\n setCampaign(state, campaign) {\n state.campaign = campaign;\n this.commit('setCampaignToPos')\n },\n login(state, token) {\n state.token = token\n state.impersonating = false\n localStorage.setItem('ft_token', state.token)\n },\n loginAs(state, token) {\n state.token = token\n state.impersonating = true\n localStorage.setItem('ft_impersonate_token', token)\n api.user().me().then(user => {\n state.user = user\n })\n },\n logout(state) {\n if (state.impersonating) {\n localStorage.removeItem('ft_impersonate_token')\n state.impersonating = false\n state.token = localStorage.getItem('ft_token')\n api.user().me().then(user => {\n state.user = user\n router.push({\n name: 'Companies'\n })\n })\n return\n }\n\n localStorage.removeItem('ft_token')\n state.token = null\n state.user = null\n\n router.push({name: 'Login'})\n },\n boxOfficeLogout(state) {\n localStorage.removeItem('box_office_token')\n state.boxOfficeUser = null\n\n router.push({name: 'BoxOfficeLogin'})\n },\n scannerTerminalLogout(state) {\n localStorage.removeItem('scanner_terminal_token')\n state.scannerTerminalUser = null\n\n router.push({name: 'ScannerTerminalLogin'})\n },\n setUser(state, user) {\n state.user = user\n },\n setBoxOfficeUser(state, user) {\n state.boxOfficeUser = user\n },\n setScannerTerminalUser(state, user) {\n state.scannerTerminalUser = user\n },\n success(state, message) {\n state.success = message;\n let bootStrapToaster = new BToast()\n bootStrapToaster.$bvToast.toast(i18n.t(message), {\n toaster: state.layout === 'Shop' ? 'b-toaster-top-center' : 'b-toaster-top-right',\n solid: true,\n variant: 'success'\n })\n },\n errors(state, messages) {\n state.errors = messages.map(error => {\n if (typeof error === 'string') {\n return error\n }\n\n if (error.code) {\n return error.code\n }\n });\n\n state.errors.forEach(message => {\n if(message !== 'event_not_live') {\n let bootStrapToaster = new BToast()\n bootStrapToaster.$bvToast.toast(i18n.t(message), {\n toaster: state.layout === 'Shop' ? 'b-toaster-top-center' : 'b-toaster-top-right',\n solid: true,\n variant: 'danger'\n })\n }\n })\n\n },\n setEvent(state, event) {\n state.event = event\n },\n setCartProducts(state, products) {\n // Clear out any products that are invalid\n products = products.filter((product) => {\n return product.amount > 0\n }).map(product => {\n return Object.assign(product, {discount_price: applyCampaignRule(state.campaign, product.name, deepClone(product).price)})\n })\n\n state.cart = Object.assign(state.cart, {products})\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n setCartPaymentMethod(state, paymentMethod) {\n state.cart = Object.assign(state.cart, {paymentMethod})\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n setCartDiscountCode(state, discountCode) {\n state.cart = Object.assign(state.cart, {discountCode})\n if (state.order) {\n state.order.discountcode = discountCode ? discountCode.code : null\n }\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n setCartCampaignDiscount(state, campaignDiscount) {\n state.cart = Object.assign(state.cart, {campaignDiscount})\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n setCartTimeslot(state, timeslot){\n state.cart = Object.assign(state.cart, {timeslot})\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n clearDiscountCode(state) {\n state.cart = Object.assign(state.cart, {discountCode: null})\n state.order.discountcode = null\n localStorage.setItem('ft_cart', JSON.stringify(state.cart))\n },\n clearCart(state) {\n // state.cart = Object.assign({}, EMPTY_CART)\n state.cart = {products: [], total: null, paymentMethod: null, discountCode: null}\n localStorage.removeItem('ft_cart')\n },\n setCompany(state, company) {\n state.company = company\n },\n setPos(state, pos) {\n if (pos.event && !state.event) {\n this.commit('setEvent', pos.event)\n }\n state.pos = pos\n if(state.campaign) {\n this.commit('setCampaignToPos')\n }\n // if (pos) {\n // if (pos.language) {\n // this.commit('setLanguage', pos.language)\n // }\n // }\n },\n setCampaignToPos(state) {\n if(state.pos) {\n state.pos.products = state.pos.products.map(product => {\n product.product = Object.assign(product.product, {discount_price: applyCampaignRule(state.campaign, product.product.name, deepClone(product.product).price)})\n return product;\n })\n }\n },\n setLanguage(state, language) {\n i18n.locale = language\n moment.locale(language)\n state.language = language\n localStorage.setItem('ft_lang', language)\n if(state.user) {\n api.user().updateLanguage(language);\n }\n },\n setOrder(state, order) {\n state.order = order\n\n if(order.campaign) {\n this.commit('setCampaign', order.campaign)\n }\n\n // Load the point of sale by it's url from the order state\n api.pos().getByUrl(state.order.point_of_sale.url).then(pos => {\n this.commit('setPos', pos)\n })\n\n // check if we need to clear the discount code\n if (!order.discountcode) {\n this.commit('clearDiscountCode')\n } else {\n this.commit('setCartDiscountCode', order.discountcode)\n }\n\n // Check if we need to set the event in the state\n if (!state.event && state.order.event) {\n this.commit('setEvent', state.order.event)\n }\n\n // Fill the cart if the user has lost it's state / local storage\n let cartProductIds = []\n state.order.order_products.forEach((orderProduct) => {\n cartProductIds.push(orderProduct.product.id)\n })\n\n let cartProducts = []\n cartProductIds.forEach(productId => {\n let product = cartProducts.find(product => {\n return product.id === productId\n })\n if (!product) {\n let orderProduct = state.order.order_products.find(orderProduct => {\n return orderProduct.product_id === productId\n })\n product = orderProduct.product\n product.price = orderProduct.price\n product.amount = 0\n cartProducts.push(product)\n }\n product = cartProducts.find(product => {\n return product.id === productId\n })\n let productIndex = cartProducts.indexOf(product)\n cartProducts[productIndex].amount += 1\n })\n this.commit('setCartProducts', cartProducts)\n },\n setLayout(state, layout) {\n state.layout = layout\n },\n setProductTypeDonationId(state,donationId){\n state.donation_product_id = donationId\n },\n setCartTotal(state, total) {\n state.cartTotal = total;\n },\n setCartTotalWithoutPM(state, total) {\n state.cartTotalWithoutPM = total;\n },\n setProcessingFee(state, total) {\n state.cartProcessingFee = total;\n },\n setPosFirstGroupIsDefault(state, value) {\n state.posFirstGroupIsDefault = value\n }\n },\n actions: {\n loadCompany({commit, state}) {\n if (!state.company) {\n api.company().getByDomain().then(company => {\n commit('setCompany', company)\n }).catch(() => {\n router.push({\n name: 'NotFound'\n })\n })\n }\n },\n loadUser({commit, state}) {\n return new Promise((resolve, reject) => {\n if (state.user) {\n resolve(state.user)\n return\n }\n api.user().me().then(user => {\n commit('setUser', user)\n resolve(user)\n\n // Set the language of specific to the user\n if (user.language && user.language !== '') {\n commit('setLanguage', user.language)\n }\n\n if(user.to_reset_password) {\n router.push({name: 'UserResetPassword'});\n }\n }).catch(reject)\n })\n\n },\n loadBoxOfficeUser({commit, state}) {\n return new Promise((resolve, reject) => {\n if (state.boxOfficeUser) {\n resolve(state.boxOfficeUser)\n return\n }\n boxOfficeApi.user().me().then(boxOfficeUser => {\n commit('setBoxOfficeUser', boxOfficeUser)\n resolve(boxOfficeUser)\n\n // Set the language of specific to the user\n if (boxOfficeUser.language && boxOfficeUser.language !== '') {\n commit('setLanguage', boxOfficeUser.language)\n }\n }).catch(reject)\n })\n\n },\n loadScannerTerminalUser({commit, state}) {\n return new Promise((resolve, reject) => {\n if (state.scannerTerminalUser) {\n resolve(state.scannerTerminalUser)\n return\n }\n scannerTerminalApi.user().me().then(scannerTerminalUser => {\n commit('setScannerTerminalUser', scannerTerminalUser)\n resolve(scannerTerminalUser)\n\n // Set the language of specific to the user\n if (scannerTerminalUser.language && scannerTerminalUser.language !== '') {\n commit('setLanguage', scannerTerminalUser.language)\n }\n }).catch(reject)\n })\n\n },\n loadProductTypeDonation({commit,state}){\n if (state.donation_product_id === 0 ) {\n api.product().getProductTypeDonation().then(id => {\n commit('setProductTypeDonationId', parseInt(id))\n });\n }\n }\n }\n})\n\nexport default store\n","export default class companyApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n getByDomain(){\n\n let domain = location.hostname === 'localhost' ?\n (location.hostname + ':' + location.port) : location.hostname\n return this.axios.post('/company/get', {\n domain\n })\n }\n\n all() {\n return this.axios.get('/company')\n }\n\n create(company) {\n return this.axios.post('/company', company)\n }\n\n get(id) {\n return this.axios.get('/company/' + id)\n }\n\n getCompaniesName() {\n return this.axios.get('/company-all-names/')\n }\n\n update(id, company) {\n return this.axios.post('/company/' + id, company)\n }\n\n addUser(id, user) {\n return this.axios.post('/company/' + id + '/user', user)\n }\n\n updateLayout(id, layout) {\n return this.axios.post('/company/' + id + '/layout', layout)\n }\n\n signLogoUpload(id, filename) {\n return this.axios.post('/company/' + id + '/sign-logo-upload', {filename})\n }\n\n updatePaymentMetodFees(id, paymentMethodFees){\n return this.axios.post('/company/' + id + '/payment-method-fees', paymentMethodFees)\n }\n\n events(company_id, show_archived) {\n return this.axios.get('/company/' + company_id + '/events?show_archived=' + show_archived)\n }\n\n getAllPaymentMethods(){\n return this.axios.get('/payment-methods')\n }\n\n addNewPaymentMetodFees(id, newPaymentFee){\n return this.axios.post('/company/' + id + '/create-payment-method-fees', newPaymentFee)\n }\n\n addCompanyFee(company_id, data) {\n return this.axios.post('/company/' + company_id + '/company-fees', data)\n }\n\n updateCompanyFee(company_id, id, data) {\n return this.axios.post('/company/' + company_id + '/company-fees/' + id, data)\n }\n\n countries() {\n return this.axios.get('/countries');\n }\n\n signup(data) {\n return this.axios.post('/company/signup', data)\n }\n\n signupConfirmation(data) {\n return this.axios.post('/company/signup/confirm', data)\n }\n\n}\n","export default class eventApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n all(show_archived) {\n return this.axios.get('/event?show_archived=' + show_archived)\n }\n\n live() {\n return this.axios.get('/event/active')\n }\n\n statusLive() {\n return this.axios.get('/event?only_live=true')\n }\n\n get(id) {\n return this.axios.get('/event/' + id)\n }\n\n delete(id) {\n return this.axios.delete('/event/' + id)\n }\n\n create(event) {\n return this.axios.post('/event', event)\n }\n\n save(event) {\n return this.axios.post('/event/' + event.id, event)\n }\n\n products(id) {\n return this.axios.get('/event/' + id + '/product')\n }\n\n productsDependencies(eventId) {\n return this.axios.get('/event/' + eventId + '/product/dependencies')\n }\n\n posDependencies() {\n return this.axios.get('/event/pos/dependencies')\n }\n\n getLiveEvents(companyId) {\n return this.axios.get('/company/event/' + companyId + '/live')\n }\n\n getLiveEvent(companyId, eventId) {\n return this.axios.get('/company/event/' + companyId + '/live/' + eventId)\n }\n\n getUpcomingEvents(companyId, currentEventId) {\n return this.axios.get('/company/event/' + companyId + '/upcoming/' + currentEventId)\n }\n\n getEventTypes(){\n return this.axios.get('/event-types')\n }\n\n getDashboardStatistics(data) {\n return this.axios.get('/event/dashboard', {\n params: data\n })\n }\n\n getDashboardCurrentEventStatistics(data) {\n return this.axios.get('/event/dashboard/current-events', {\n params: data\n })\n }\n\n getEventSoldTickets(event) {\n return this.axios.get('/event/dashboard/' + event + '/sold-tickets')\n }\n\n duplicate(id, data) {\n return this.axios.post('/event/' + id + '/duplicate', data)\n }\n\n getCustomerFields(event_id) {\n return this.axios.get('/event/' + event_id + '/customer-fields')\n }\n\n getLiveEventsWithProducts(company_id) {\n return this.axios.get('/event-with-products?order_company_id=' + company_id)\n }\n\n getLiveEventsWithPos() {\n return this.axios.get('/event-with-pos')\n }\n\n getActiveCarts(event_id){\n return this.axios.get('/event/' + event_id + '/active-carts')\n }\n\n updateMarketing(event_id, data) {\n return this.axios.post('/event/' + event_id + '/marketing', data)\n }\n\n}\n","export default class pointsOfSaleApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n create(eventId, pos) {\n return this.axios.post('/event/' + eventId + '/pos', pos)\n }\n\n get(eventId) {\n return this.axios.get('/event/' + eventId + '/pos')\n }\n\n save(eventId, pos) {\n return this.axios.post('/event/' + eventId + '/pos/' + pos.id, pos)\n }\n\n getByUrl(url) {\n return this.axios.post('/pos/url', {url})\n }\n\n getByOrderIdAndSecret(id, secret){\n return this.axios.post('/pos/order', {id, secret})\n }\n\n getLive(companyId) {\n return this.axios.get('/pos/live/' + companyId)\n }\n\n delete(eventId, posId) {\n return this.axios.delete('/event/' + eventId + '/pos/' + posId)\n }\n}\n","export default class productApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(eventId) {\n return this.axios.get('/event/' + eventId + '/product')\n }\n\n save(eventId, product) {\n return this.axios.post('/event/' + eventId + '/product/' + product.id, product)\n }\n\n create(eventId, product) {\n return this.axios.post('/event/' + eventId + '/product', product)\n }\n\n getGroups(eventId) {\n return this.axios.get('/event/' + eventId + '/product-groups')\n }\n\n getUngroupedProducts(eventId) {\n return this.axios.get('/event/' + eventId + '/products-ungrouped')\n }\n\n saveProductSort(eventId, sort) {\n return this.axios.post('/event/' + eventId + '/product-sort', {sort})\n }\n\n delete(eventId, productId) {\n return this.axios.delete('/event/' + eventId + '/product/' + productId)\n }\n\n getProductTypes(){\n return this.axios.get('/product-types')\n }\n\n getProductTypeDonation(){\n return this.axios.get('/product-type-donation')\n }\n\n bulkUpdate(eventId, payload) {\n return this.axios.post('/event/' + eventId +'/product-bulk', payload)\n }\n\n}\n","export default class timeslotApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(eventId) {\n return this.axios.get('/event/' + eventId + '/timeslot')\n }\n\n save(eventId, timeslot) {\n return this.axios.post('/event/' + eventId + '/timeslot/' + timeslot.id, timeslot)\n }\n\n delete(eventId, timeslotId) {\n return this.axios.delete('/event/' + eventId + '/timeslot/' + timeslotId)\n }\n\n create(eventId, timeslot) {\n return this.axios.post('/event/' + eventId + '/timeslot', timeslot)\n }\n\n getByOrder(orderId, orderSecret) {\n return this.axios.get('/order/' + orderId + '/' + orderSecret + '/timeslot')\n }\n\n}\n","export default class orderApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n paymentMethods( company_id ) {\n return this.axios.get('/payment-method', {params: {company_id: company_id}})\n }\n\n create(point_of_sale_id, products, campaign, campaign_discount, source, discountCode) {\n return this.axios.post('/order', {\n point_of_sale_id,\n products,\n campaign,\n campaign_discount,\n source,\n discount_code: discountCode ? discountCode.code : null,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone\n })\n }\n\n getBySecret(id, secret) {\n return this.axios.get('/order/' + id + '/' + secret)\n }\n\n getByOrdernumberSecret(order_number, secret) {\n return this.axios.get('/order/ordernumber-secret/' + order_number + '/' + secret)\n }\n\n getTickets(id, secret) {\n return this.axios.get('/order/' + id + '/' + secret + '/tickets')\n }\n\n save(order) {\n return this.axios.post('/order/' + order.id + '/' + order.secret, order)\n }\n\n pay(order) {\n return this.axios.post('/order/' + order.id + '/' + order.secret + '/pay')\n }\n\n updateCustomer(customer) {\n return this.axios.post('/order/customer/' + customer.id + '/update', customer)\n }\n\n getAll(page, show_expired=false, show_box_office=false, selectedEvents, discountcodeId, search) {\n return this.axios.get('/user/order?page=' + page, {params: {show_expired: show_expired, show_box_office: show_box_office, selected_events: selectedEvents, discountcode_id: discountcodeId, search: search}})\n }\n\n details(order_number) {\n return this.axios.get('/user/order/' + order_number)\n }\n\n addNote(id, message) {\n return this.axios.post('/user/order/' + id + '/note', {message})\n }\n\n cancel(id, body) {\n return this.axios.post('/user/order/' + id + '/cancel', body)\n }\n\n refund(id, body) {\n return this.axios.post('/user/order/' + id + '/refund', body)\n }\n\n resentConfirmation(id) {\n return this.axios.post('/user/order/' + id + '/resend-confirmation')\n }\n\n addCrossSell(order, products) {\n return this.axios.post('/order/' + order.id + '/' + order.secret + '/cross_sell', {products})\n }\n\n makeExport(exportSettings) {\n return this.axios.post('/user/order/export', exportSettings)\n }\n\n switchEvent(id, data) {\n return this.axios.post('/user/order/' + id + '/switch-event', data)\n }\n\n updateProducts(order, products) {\n return this.axios.post('/order/' + order.id + '/' + order.secret + '/products', {products})\n }\n}\n","export default class customerInformationApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(eventId) {\n return this.axios.get('/event/' + eventId + '/customer-information')\n }\n\n save(eventId, customerInformation) {\n return this.axios.post('/event/' + eventId + '/customer-information/' + customerInformation.id, customerInformation)\n }\n\n saveDefault(eventId, arrCustomerInformation) {\n return this.axios.post('/event/' + eventId + '/customer-information-default/', arrCustomerInformation)\n }\n\n create(eventId, customerInformation) {\n return this.axios.post('/event/' + eventId + '/customer-information', customerInformation)\n }\n\n getByTicket(ticketId, ticketSecret) {\n return this.axios.get('/ticket/' + ticketId + '/' + ticketSecret + '/customer-information')\n }\n\n getAnswersByTicket(ticketId, ticketSecret) {\n return this.axios.get('/ticket/' + ticketId + '/' + ticketSecret + '/customer-information/answers')\n }\n\n getByOrder(orderId, orderSecret) {\n return this.axios.get('/order/' + orderId + '/' + orderSecret + '/customer-information')\n }\n\n getFieldsByOrder(orderId, orderSecret) {\n return this.axios.get('/order/' + orderId + '/' + orderSecret + '/customer-fields')\n }\n\n getFieldsByTicket(ticketId, ticketSecret) {\n return this.axios.get('/ticket/' + ticketId + '/' + ticketSecret + '/customer-fields')\n }\n\n submit(ticketId, ticketSecret, answers) {\n return this.axios.post('/ticket/' + ticketId + '/' + ticketSecret + '/customer-information', {answers})\n }\n\n submitByOrder(orderId, orderSecret, answers) {\n return this.axios.post('/order/' + orderId + '/' + orderSecret + '/customer-information', {answers})\n }\n\n getCustomerFields(eventId) {\n return this.axios.get('/event/' + eventId + '/customer-fields')\n }\n\n saveCustomerFields(eventId, fields) {\n return this.axios.post('/event/' + eventId + '/customer-fields', {\n fields\n })\n }\n\n delete(eventId, questionId) {\n return this.axios.delete('/event/' + eventId + '/customer-information/' + questionId)\n }\n}\n","export default class discountcodeApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n all(page, search) {\n return this.axios.get('/discountcode?page=' + page + (search && search.length ? ('&search='+search) : ''))\n }\n \n create(discountcode) {\n return this.axios.post('/discountcode', discountcode)\n }\n\n save(discountcode) {\n return this.axios.post('/discountcode/' + discountcode.id, discountcode)\n }\n\n getByOrder(orderId, orderSecret, code) {\n return this.axios.post('/order/' + orderId + '/' + orderSecret + '/discountcode', {code})\n }\n\n getByPOS (posID, code) {\n return this.axios.post('/pos/' + posID + '/discountcode', {code})\n }\n\n delete(discountcode) {\n return this.axios.delete('/discountcode/' + discountcode)\n }\n\n}\n","export default class scanerApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(scanOperationId) {\n return this.axios.get('/scan-operation/' + scanOperationId + '/scanners')\n }\n\n create(scanOperationId,scanner) {\n return this.axios.post('/scan-operation/' + scanOperationId + '/scanner', scanner)\n }\n\n save(scannerId,scanner) {\n return this.axios.post('/scan-operation/scanner/edit/' + scannerId, scanner)\n }\n\n delete(scannerId) {\n return this.axios.delete('/scan-operation/scanner/delete/' + scannerId)\n }\n\n}\n","export default class ScanOperationApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(show_archived) {\n return this.axios.get('/scan-operations?show_archived=' + show_archived)\n }\n\n find(id) {\n return this.axios.get('/scan-operation/' + id)\n }\n\n getAvailableEvents(){\n return this.axios.get('/scan-operation/available-events');\n }\n\n create(scan_operation) {\n return this.axios.post('/scan-operation', scan_operation)\n }\n\n save(scan_operation) {\n return this.axios.post('/scan-operation/' + scan_operation.id, scan_operation)\n }\n\n}\n","export default class ScanOperationSessionApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(scanOperationId) {\n return this.axios.get('/scan-operation/' + scanOperationId + '/session')\n }\n\n create(scanOperationSession) {\n return this.axios.post('/scan-operation/' + scanOperationSession.scan_operation_id + '/session', scanOperationSession)\n }\n\n save(scanOperationSession) {\n return this.axios.post('/scan-operation/' + scanOperationSession.scan_operation_id + '/session/' + scanOperationSession.id, scanOperationSession)\n }\n\n delete(scanOperationId, scanOperationSessionId) {\n return this.axios.delete('/scan-operation/' + scanOperationId + '/session/' + scanOperationSessionId)\n }\n\n saveProduct(session_id, product_id) {\n return this.axios.post('/scan-operation/session/sync-product', {\n session_id,\n product_id\n })\n }\n\n removeProduct(session_id, product_id) {\n return this.axios.delete('/scan-operation/session/sync-product/' + session_id + '/' + product_id)\n }\n\n getSessionsProducts(slug) {\n return this.axios.get('/scan-operation/' + slug + '/sessions-products')\n }\n\n}\n","export default class ticketApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n generate(productOrderId) {\n return this.axios.post('/ticket/generate/' + productOrderId)\n }\n\n assign(id, secret, email) {\n return this.axios.post('/ticket/' + id + '/' + secret + '/assign', {email})\n }\n\n remind(id, secret) {\n return this.axios.post('/ticket/' + id + '/' + secret + '/remind')\n }\n\n getBySecret(id, secret) {\n return this.axios.get('/ticket/' + id + '/' + secret)\n }\n\n updateCustomer(id, secret, customer) {\n return this.axios.post('/ticket/' + id + '/' + secret + '/customer', customer)\n }\n\n claim(id, secret) {\n return this.axios.post('/ticket/' + id + '/' + secret + '/claim')\n }\n\n getTemplates() {\n return this.axios.get('/ticket-templates');\n }\n\n getTemplatesOverview(page) {\n return this.axios.get('/ticket-templates/overview?page=' + page);\n }\n\n createTemplate(name) {\n return this.axios.post('/ticket-templates', {name});\n }\n\n duplicateTemplate(id, name) {\n return this.axios.post('/ticket-templates/' + id + '/duplicate', {name});\n }\n\n getTemplate(id) {\n return this.axios.get('/ticket-templates/' + id);\n }\n\n getDefaultTemplate(){\n return this.axios.get('/default-ticket-template');\n }\n\n previewTemplate(template, data) {\n return this.axios.post('/ticket-templates/' + template.id + '/preview', {data})\n }\n\n saveTemplate(template) {\n return this.axios.post('/ticket-templates/' + template.id, template)\n }\n\n cancel(ticketId) {\n return this.axios.post('/ticket/cancel/' + ticketId )\n }\n\n uploadDefaultTicketLayout(filename){\n return this.axios.post('/cdn/upload', {filename, type: 'default-company'})\n }\n\n searchLost(email, date, recaptcha) {\n return this.axios.post('/tickets/search-lost', {email, date, recaptcha})\n }\n\n deleteTemplate(id) {\n return this.axios.delete('/ticket-templates/' + id);\n }\n\n}\n","export default class auditApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(subject, subjectId) {\n return this.axios.get('/audit/' + subject + '/' + subjectId)\n }\n\n}\n","export default class reportApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n getFilters() {\n return this.axios.get('/report/filters')\n }\n\n getData(event_id, date_start, date_end, filter_box_office, timezone) {\n return this.axios.get('/report/load-data', {params: {event_id: event_id, date_start: date_start, date_end: date_end, filter_box_office: filter_box_office, timezone: timezone}})\n }\n\n getCitiesData(event_id, date_start, date_end, filter_box_office, timezone) {\n return this.axios.get('/report/load-cities-data', {params: {event_id: event_id, date_start: date_start, date_end: date_end, filter_box_office: filter_box_office, timezone: timezone}})\n }\n\n getTicketsScansData(period, event_id, date_start, date_end, filter_box_office, timezone) {\n return this.axios.get('/report/scans/' +period, {params: {event_id: event_id, date_start: date_start, date_end: date_end, filter_box_office: filter_box_office, timezone: timezone}})\n }\n \n getCustomAnswersData(event_id, date_start, date_end){\n return this.axios.get('/report/custom-question-answers', {params: {event_id: event_id, date_start: date_start, date_end: date_end}});\n }\n\n getStockReport() {\n return this.axios.get('/report/stock')\n }\n\n getSalesPerTickets(event_id, data) {\n return this.axios.post('/report/' + event_id + '/sales-by-tickettype', data);\n }\n\n getSalesPerTicketsOrders(event_id, data) {\n return this.axios.post('/report/' + event_id + '/sales-by-tickettype-orders', data);\n }\n\n getSalesPerTicketsRevenue(event_id, data) {\n return this.axios.post('/report/' + event_id + '/sales-by-tickettype-revenue', data);\n }\n\n getOrdersGroupedByTickets(event_id, data) {\n return this.axios.post('/report/' + event_id + '/order-grouped-by-tickets', data);\n }\n\n}\n","export default class cdnApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n signUpload(filename) {\n return this.axios.post('/cdn/upload', {filename})\n }\n\n deleteUpload(filename) {\n return this.axios.post('/cdn/delete', {filename})\n }\n}\n","export default class mailApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n loadTemplate( template, orderId ){\n return this.axios.get('/mail/get-template/' + template + '/' + orderId )\n }\n\n sendMail( template, mail, orderId ){\n return this.axios.post('/mail/send/' + template + '/' + orderId, mail)\n }\n\n}","export default class openingHourApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(eventId) {\n return this.axios.get('/event/' + eventId + '/opening-hour')\n }\n\n delete(eventId, openingHour) {\n return this.axios.delete('/event/' + eventId + '/opening-hour/' + openingHour.id)\n }\n\n create(eventId, openingHour) {\n return this.axios.post('/event/' + eventId + '/opening-hour', openingHour)\n }\n\n getGenerated(eventId, start, end) {\n return this.axios.get('/event/' + eventId + '/generate-timeslots?start=' + start + '&end=' + end)\n }\n\n getByOrder(orderId, orderSecret, start, end) {\n return this.axios.get('/order/' + orderId + '/' + orderSecret + '/opening-hours?start=' + start + '&end=' + end)\n }\n\n makeTimeslotForOrder(orderId, orderSecret, option) {\n return this.axios.post('/order/' + orderId + '/' + orderSecret + '/make-timeslot', {option})\n }\n}\n","export default class ScanOperationPrivilegesApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n create(scan_operation_privilege) {\n return this.axios.post('/scan-operation/scanners/configure', scan_operation_privilege)\n }\n\n delete(scan_operation_privilege) {\n return this.axios.delete('/scan-operation/scanners/configure/'\n + `${scan_operation_privilege.scanner_id}/${scan_operation_privilege.session_id}/${scan_operation_privilege.product_id}`)\n }\n\n}\n","export default class CustomerSupportApi {\n constructor(axios) {\n this.axios = axios\n }\n\n orders(filters) {\n return this.axios.post('/customer-support', {\n filters\n })\n }\n\n dependencies() {\n return this.axios.get('/customer-support/dependencies')\n }\n}\n","export default class GuestList {\n\n constructor(axios) {\n this.axios = axios;\n }\n\n getProductsByEvent(eventId) {\n return this.axios.get('/guest-list/' + eventId + '/products')\n }\n\n placeOrder(eventId, data) {\n return this.axios.post('/guest-list/' + eventId + '/place-order', data)\n }\n}\n","export default class PermissionApi {\n constructor(axios) {\n this.axios = axios\n }\n\n createRole(data) {\n return this.axios.post('/roles', data);\n }\n\n updateRole(id, data) {\n return this.axios.post('/roles/' + id, data);\n }\n\n deleteRole(id) {\n return this.axios.delete('/roles/' + id);\n }\n\n getRoles() {\n return this.axios.get('/roles');\n }\n\n getPermissions() {\n return this.axios.get('/permissions');\n }\n\n syncCompanyPermissions(company_id, permissions) {\n return this.axios.post('/company/' + company_id + '/permissions', {\n permissions\n })\n }\n}\n","export default class invoiceApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n getAll(page) {\n return this.axios.get('/invoice?page=' + page)\n }\n getAllByCompany(page){\n return this.axios.get('/invoice/company?page=' + page)\n }\n searchInvoice(search_term) {\n return this.axios.get('/invoice/search', {params: {search_term: search_term}})\n }\n searchInvoiceByCompany(search_term, event_id) {\n return this.axios.get('/invoice/search/company', {params: {search_term: search_term, event_id: event_id}})\n }\n downloadFile(invoiceNumber, type) {\n return this.axios.get('/invoice/' + invoiceNumber + '/download/' + type, {responseType: 'blob'})\n }\n getFileName(invoiceNumber, type) {\n return this.axios.get('/invoice/' + invoiceNumber + '/download/' + type + '?filename=true')\n }\n generateInvoice(invoiceNumber){\n return this.axios.post('/invoice/' + invoiceNumber + '/generate')\n }\n generatePayoutSummary(invoiceNumber){\n return this.axios.post('/payout-summary/' + invoiceNumber + '/generate')\n }\n\n}","export default class administration {\n\n constructor(axios) {\n this.axios = axios\n }\n\n companiesWithEvents() {\n return this.axios.get('/administration/companies');\n }\n\n createEventFee(event_id, data) {\n return this.axios.post('/administration/event/' + event_id + '/fees', data)\n }\n\n updateEventFee(event_id, id, data) {\n return this.axios.put('/administration/event/' + event_id + '/fees/' + id, data)\n }\n}\n","export default class DefaultValuesApi {\n constructor(axios) {\n this.axios = axios\n }\n\n getByKey(key) {\n return this.axios.get('/default-values/' + key);\n }\n\n save(key, value) {\n return this.axios.post('/default-values/' + key, {value});\n }\n\n}\n","export default class CampaignApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n all(page = 1) {\n return this.axios.get('/campaigns?page=' + page)\n }\n\n create(name) {\n return this.axios.post('/campaigns', {name})\n }\n\n update(id, data) {\n return this.axios.post('/campaigns/' + id, data)\n }\n\n find(id) {\n return this.axios.get('/campaigns/' + id)\n }\n\n delete(id) {\n return this.axios.delete('/campaigns/' + id)\n }\n\n findByDomain(slug, event = null) {\n let domain = location.hostname === 'localhost' ?\n (location.hostname + ':' + location.port) : location.hostname\n return this.axios.post('/campaign/get', {domain, slug, event, timezone: Intl.DateTimeFormat().resolvedOptions().timeZone})\n }\n\n createRule(id, reference) {\n return this.axios.post('/campaigns/' + id + '/rules', {reference})\n }\n\n deleteRule(id, rule_id) {\n return this.axios.delete('/campaigns/' + id + '/rules/' + rule_id)\n }\n\n updateRule(id, rule_id, data) {\n return this.axios.post('/campaigns/' + id + '/rules/' + rule_id, data)\n }\n}","export default class batchesApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n createBatch(name) {\n return this.axios.post('/batches', {name})\n }\n\n getBatches(page) {\n return this.axios.get('/batches?page=' + page)\n }\n\n findBatch(unique_id) {\n return this.axios.get('/batches/' + unique_id)\n }\n\n updateBatch(unique_id, batch) {\n return this.axios.post('/batches/' + unique_id, batch)\n }\n\n generateBatch(unique_id) {\n return this.axios.post('/batches/' + unique_id + '/generate')\n }\n\n}\n","export default class settingsApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n get(reference){\n return this.axios.get('/setting/' + reference)\n }\n\n save(reference, value){\n return this.axios.post('/setting/' + reference + '/' + value)\n }\n\n}\n","export default class extensionApi {\n\n constructor(axios) {\n this.axios = axios\n }\n\n getByCompany(type) {\n return this.axios.get('/extension/' + type)\n }\n\n save(type, extension) {\n return this.axios.post('/extension/' + type, extension)\n }\n\n}\n","export default class venuesApi {\n\n constructor(axios) {\n this.axios = axios\n }\n overview(page) {\n return this.axios.get('/venues/overview?page=' + page)\n }\n create(venue) {\n return this.axios.post('/venue', venue)\n }\n save(venue) {\n return this.axios.post('/venue/' + venue.id, venue)\n }\n delete(venue) {\n return this.axios.delete('/venue/' + venue)\n }\n\n getVenuesNames() {\n return this.axios.get('/venues-names/')\n }\n\n}\n","export default class companyLinksApi {\n\n constructor(axios) {\n this.axios = axios\n }\n overview(page) {\n return this.axios.get('/company-links/overview?page=' + page)\n }\n create(companyLink) {\n return this.axios.post('/company-link', companyLink)\n }\n save(companyLink) {\n return this.axios.post('/company-link/' + companyLink.id, companyLink)\n }\n delete(companyLink) {\n return this.axios.delete('/company-link/' + companyLink)\n }\n}\n","import axios from 'axios'\nimport userApi from './user'\nimport store from '../store'\nimport companyApi from \"@/api/company\";\nimport eventApi from \"@/api/event\";\nimport posApi from \"@/api/pos\";\nimport productApi from \"@/api/product\";\nimport timeslotApi from \"@/api/timeslot\";\nimport orderApi from \"@/api/order\";\nimport customerInformationApi from \"@/api/customerInformation\";\nimport discountcodeApi from \"@/api/discountcode\";\nimport scannerApi from \"@/api/scanner\";\nimport scanOperationApi from \"@/api/scanOperation\";\nimport scanOperationSessionApi from \"@/api/scanOperationSession\";\nimport ticketApi from \"@/api/ticket\";\nimport auditApi from \"@/api/audit\";\nimport reportApi from \"@/api/report\";\nimport cdnApi from \"@/api/cdn\";\nimport mailApi from \"@/api/mail\";\nimport openingHourApi from \"@/api/openingHour\";\nimport ScanOperationPrivilegesApi from \"@/api/scanOperationPrivileges\";\nimport customerSupportApi from \"@/api/customerSupport\"\nimport guestListApi from '@/api/guestList'\nimport permissionApi from \"@/api/permission\";\nimport invoiceApi from \"@/api/invoice\";\nimport administrationApi from \"@/api/administration\";\nimport DefaultValuesApi from \"@/api/defaultValues\";\nimport CampaignApi from \"@/api/campaign\";\nimport batchesApi from \"@/api/batch\";\nimport settingsApi from \"@/api/setting\";\nimport extensionApi from \"@/api/extension\";\nimport venuesApi from \"@/api/venues\";\nimport companyLinksApi from \"@/api/companyLinks\";\n\n\nif (window.location.host === 'localhost:8080') {\n // Local development environment\n axios.defaults.baseURL = 'http://api.fairtix.local'\n} else if (window.location.host === 'frontend.staging.fairtix.io') {\n // Test environment Staging (staging-ft)\n axios.defaults.baseURL = 'https://api.staging.fairtix.io'\n} else {\n axios.defaults.baseURL = 'https://api.fairtix.io'\n}\n\naxios.interceptors.request.use((config) => {\n let token = store.state.token\n if (token) {\n config.headers['Authorization'] = 'Bearer ' + token\n }\n return config\n}, (error) => {\n // Do something with request error\n document.location = '/'\n return Promise.reject(error)\n})\n\naxios.interceptors.response.use((response) => {\n return response.data\n}, (error) => {\n // Do something with response error\n if (error.response.status === 401) {\n store.commit('logout')\n }\n if (error.response.status === 400) {\n store.commit('errors', error.response.data)\n }\n return Promise.reject(error)\n})\n\nconst user = () => {\n return new userApi(axios)\n}\n\nconst company = () => {\n return new companyApi(axios)\n}\n\nconst event = () => {\n return new eventApi(axios)\n}\n\nconst product = () => {\n return new productApi(axios)\n}\n\nconst pos = () => {\n return new posApi(axios)\n}\nconst timeslot = () => {\n return new timeslotApi(axios)\n}\n\nconst order = () => {\n return new orderApi(axios)\n}\n\nconst customerInformation = () => {\n return new customerInformationApi(axios)\n}\n\nconst discountcode = () => {\n return new discountcodeApi(axios)\n}\n\nconst scanner = () => {\n return new scannerApi(axios)\n}\n\nconst scanOperation = () => {\n return new scanOperationApi(axios)\n}\nconst scanOperationSession = () => {\n return new scanOperationSessionApi(axios)\n}\nconst scanOperationPrivileges = () => {\n return new ScanOperationPrivilegesApi(axios)\n}\n\nconst ticket = () => {\n return new ticketApi(axios)\n}\nconst audit = () => {\n return new auditApi(axios)\n}\nconst report = () => {\n return new reportApi(axios)\n}\nconst cdn = () => {\n return new cdnApi(axios)\n}\nconst mail = () => {\n return new mailApi(axios)\n}\n\nconst openingHour = () => {\n return new openingHourApi(axios)\n}\n\nconst customerSupport = () => {\n return new customerSupportApi(axios)\n}\n\nconst guestList = () => {\n return new guestListApi(axios)\n}\n\nconst permission = () => {\n return new permissionApi(axios)\n}\n\nconst invoice = () => {\n return new invoiceApi(axios)\n}\n\nconst administration = () => {\n return new administrationApi(axios);\n}\n\nconst defaultValues = () => {\n return new DefaultValuesApi(axios)\n}\n\nconst campaign = () => {\n return new CampaignApi(axios);\n}\n\nconst batch = () => {\n return new batchesApi(axios)\n}\n\nconst setting = () => {\n return new settingsApi(axios)\n}\n\nconst extension = () => {\nreturn new extensionApi(axios)\n}\n\nconst venues = () => {\n return new venuesApi(axios)\n}\n\nconst companyLinks = () => {\n return new companyLinksApi(axios)\n}\nexport default {\n user,\n company,\n event,\n product,\n pos,\n timeslot,\n order,\n customerInformation,\n scanner,\n scanOperation,\n scanOperationSession,\n scanOperationPrivileges,\n ticket,\n discountcode,\n audit,\n report,\n cdn,\n mail,\n openingHour,\n customerSupport,\n guestList,\n permission,\n invoice,\n administration,\n defaultValues,\n campaign,\n batch,\n setting,\n extension,\n venues,\n companyLinks\n}\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.showModal)?_c('div',{staticClass:\"cookie-container\"},[_c('div',{staticClass:\"cookie-modal\"},[(!_vm.showPreferences)?_c('div',{staticClass:\"cookie-content\"},[_c('h2',[_vm._v(_vm._s(_vm.$t('cookie_banner_title')))]),_c('br'),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('cookie_banner_text'))+\" \")]),_c('br'),_c('br'),_c('a',{staticClass:\"link-change-preferences\",on:{\"click\":function($event){return _vm.togglePreferences()}}},[_vm._v(_vm._s(_vm.$t('cookie_banner_change_preference')))]),_c('br'),_c('br'),_c('button',{staticClass:\"btn-accept\",on:{\"click\":function($event){return _vm.acceptSelectedCookies()}}},[_vm._v(_vm._s(_vm.$t('btn_accept_all')))])]):_c('div',{staticClass:\"cookie-content\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('cookie_banner_personalize')))]),_c('div',{staticClass:\"preference-checkboxes mt-4\"},[_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t('cookie_banner_preference_local')))]),_c('b-col',{staticClass:\"text-right\"},[_c('b-form-checkbox',{model:{value:(_vm.selectedCategories.local_information),callback:function ($$v) {_vm.$set(_vm.selectedCategories, \"local_information\", $$v)},expression:\"selectedCategories.local_information\"}})],1)],1),_c('b-row',{staticClass:\"mb-3\"},[_c('b-col',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t('cookie_banner_preference_analytics')))]),_c('b-col',{staticClass:\"text-right\"},[_c('b-form-checkbox',{model:{value:(_vm.selectedCategories.analytics),callback:function ($$v) {_vm.$set(_vm.selectedCategories, \"analytics\", $$v)},expression:\"selectedCategories.analytics\"}})],1)],1),_c('b-row',[_c('b-col',{staticClass:\"text-left\"},[_vm._v(_vm._s(_vm.$t('cookie_banner_preference_marketing')))]),_c('b-col',{staticClass:\"text-right\"},[_c('b-form-checkbox',{model:{value:(_vm.selectedCategories.marketing),callback:function ($$v) {_vm.$set(_vm.selectedCategories, \"marketing\", $$v)},expression:\"selectedCategories.marketing\"}})],1)],1)],1),_c('div',{staticClass:\"actions mt-4\"},[_c('button',{staticClass:\"btn-second\",on:{\"click\":function($event){return _vm.acceptSelectedCookies()}}},[_vm._v(_vm._s(_vm.$t('btn_accept_all')))]),_c('button',{staticClass:\"btn-accept\",on:{\"click\":function($event){return _vm.acceptSelectedCookies()}}},[_vm._v(_vm._s(_vm.$t('btn_accept_selected')))])])])])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n \n <div v-if=\"showModal\" class=\"cookie-container\">\n <div class=\"cookie-modal\"> \n <div class=\"cookie-content\" v-if=\"!showPreferences\">\n <h2>{{ $t('cookie_banner_title') }}</h2>\n <br>\n <span>\n {{ $t('cookie_banner_text') }}\n </span>\n <br><br>\n <a class=\"link-change-preferences\" @click=\"togglePreferences()\">{{ $t('cookie_banner_change_preference') }}</a>\n <br><br>\n <button class=\"btn-accept\" @click=\"acceptSelectedCookies()\">{{ $t('btn_accept_all') }}</button>\n </div>\n <div v-else class=\"cookie-content\">\n <h3>{{ $t('cookie_banner_personalize') }}</h3>\n <div class=\"preference-checkboxes mt-4\">\n <b-row class=\"mb-3\">\n <b-col class=\"text-left\">{{ $t('cookie_banner_preference_local') }}</b-col>\n <b-col class=\"text-right\"><b-form-checkbox v-model=\"selectedCategories.local_information\" /></b-col>\n </b-row>\n <b-row class=\"mb-3\">\n <b-col class=\"text-left\">{{ $t('cookie_banner_preference_analytics') }}</b-col>\n <b-col class=\"text-right\"><b-form-checkbox v-model=\"selectedCategories.analytics\" /></b-col>\n </b-row>\n <b-row>\n <b-col class=\"text-left\">{{ $t('cookie_banner_preference_marketing') }}</b-col>\n <b-col class=\"text-right\"><b-form-checkbox v-model=\"selectedCategories.marketing\" /></b-col>\n </b-row>\n </div>\n <div class=\"actions mt-4\">\n <button @click=\"acceptSelectedCookies()\" class=\"btn-second\">{{ $t('btn_accept_all') }}</button>\n <button @click=\"acceptSelectedCookies()\" class=\"btn-accept\">{{ $t('btn_accept_selected') }}</button>\n </div>\n </div>\n </div>\n </div>\n</template>\n\n<script>\nimport {getCookie, setCookie} from \"@/functions\";\n\nexport default {\n data() {\n return {\n showModal: true,\n showPreferences: false,\n selectedCategories: {\n analytics: true,\n marketing: true,\n local_information: true\n }\n };\n },\n methods: {\n gtag(){\n window.dataLayer.push(arguments);\n },\n togglePreferences(){\n this.showPreferences=true\n },\n toggleCategory(category) {\n if (this.selectedCategories.includes(category)) {\n this.selectedCategories = this.selectedCategories.filter(\n (item) => item !== category\n );\n } else {\n this.selectedCategories.push(category);\n }\n },\n acceptSelectedCookies() {\n this.showModal = false;\n setCookie(\n \"ft_cookieCategories\",\n JSON.stringify(this.selectedCategories),\n 365\n );\n\n // Set up default consent settings\n var consentSettings = {\n 'ad_storage': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'ad_personalization': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'ad_user_data': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'analytics_storage': (this.selectedCategories.analytics) ? 'granted' : 'denied',\n };\n\n // Push the gtm.init_consent event with default consent settings\n this.gtag('consent', 'update', consentSettings);\n }\n },\n mounted() {\n const storedCategories = getCookie(\"ft_cookieCategories\");\n if (storedCategories) {\n this.showModal = false;\n this.selectedCategories = JSON.parse(storedCategories);\n }\n }\n};\n</script>\n\n<style scoped>\n.cookie-container{\n background-color:rgba(0,0,0,0.7);\n position:fixed;\n top:0;\n left:0;\n width:100%;\n height:100%;\n z-index:300;\n}\n.cookie-modal {\n position: fixed;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: #fff;\n border-radius: 8px;\n box-shadow: 0 4px 8px rgba(0, 0, 0, 0.5);\n padding: 20px;\n max-width: 500px;\n text-align: center;\n z-index: 400;\n}\n.cookie-content {\n min-width: 460px;\n margin-top: 10px;\n}\n.cookie-content span {\n margin-right: 10px;\n}\n.cookie-content button {\n margin: 5px;\n cursor: pointer;\n}\n.preference-checkboxes {\n margin-top: 10px;\n}\n.preference-checkboxes label {\n display: block;\n margin-bottom: 5px;\n}\n.actions {\n margin-top: 10px;\n}\n.preference-checkboxes input[type=\"checkbox\"] {\n margin-right: 5px;\n}\n.btn-accept{\n background-color: #4CAF50;\n border: none;\n color: white;\n padding: 8px 28px;\n text-align: center;\n text-decoration: none;\n display: inline-block;\n font-size: 20px;\n border-radius:55px\n}\n.btn-second{\n background-color: grey;\n border: none;\n color: white;\n padding: 8px 28px;\n text-align: center;\n text-decoration: none;\n display: inline-block;\n font-size: 20px;\n border-radius:55px\n}\n.link-change-preferences{\n cursor:pointer;\n margin:15px 0\n}\n\n@media only screen and (max-width: 990px) {\n .cookie-modal {\n width: 94%;\n }\n}\n\n@media only screen and (max-width: 576px) {\n .cookie-content{\n min-width:100%\n }\n}\n\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CookieBanner.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CookieBanner.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CookieBanner.vue?vue&type=template&id=56e7127c&scoped=true\"\nimport script from \"./CookieBanner.vue?vue&type=script&lang=js\"\nexport * from \"./CookieBanner.vue?vue&type=script&lang=js\"\nimport style0 from \"./CookieBanner.vue?vue&type=style&index=0&id=56e7127c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"56e7127c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"calender-wrapper\"},[_c('div',{staticClass:\"calender-month pos-bg-accent-color\"},[_vm._v(_vm._s(_vm.month))]),(_vm.from && _vm.to)?_c('div',{staticClass:\"calender-day-2\"},[_c('span',{staticClass:\"d-block pos-primary-color\"},[_vm._v(_vm._s(_vm.from))]),_c('span',{staticClass:\"dash pos-bg-primary-color\"}),_c('span',{staticClass:\"d-block pos-primary-color\"},[_vm._v(_vm._s(_vm.to))])]):_c('div',{staticClass:\"calender-day\"},[_vm._v(\" \"+_vm._s(_vm.from)+\" \")])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"calender-wrapper\">\n <div class=\"calender-month pos-bg-accent-color\">{{ month }}</div>\n <div v-if=\"from && to\" class=\"calender-day-2\">\n <span class=\"d-block pos-primary-color\">{{ from }}</span>\n <span class=\"dash pos-bg-primary-color\"></span>\n <span class=\"d-block pos-primary-color\">{{ to }}</span>\n </div>\n <div v-else class=\"calender-day\">\n {{ from }}\n </div>\n </div>\n</template>\n\n<script>\nimport moment from 'moment-timezone'\n export default {\n name: 'CalenderDay',\n props: ['startsAt', 'endsAt'],\n data() {\n return {\n from: null,\n to: null,\n month: null,\n }\n },\n mounted () {\n this.calculate();\n },\n methods: {\n calculate() {\n const start = moment(this.startsAt);\n const end = moment(this.endsAt);\n \n // Calculate the end time for comparison (07:00 on the next day)\n const limit = start.clone().add(1, 'day').startOf('day').hour(7);\n\n if (start.isSame(end, 'day')) {\n // Same day event\n this.from = start.format('DD');\n this.to = null;\n } else if (end.isBefore(limit)) {\n // Event ends before 07:00 the next day\n this.from = start.format('DD');\n this.to = null;\n } else {\n // Event spans more than one day\n this.from = start.format('DD');\n this.to = end.format('DD');\n }\n\n this.month = start.format('MMM').replace('.', '').toUpperCase();\n }\n },\n watch: {\n '$store.state.language' () {\n this.calculate();\n }\n }\n }\n</script>\n\n<style lang=\"scss\" scoped>\n.calender-wrapper {\n width: 74px;\n height: 90px;\n border: 1px solid #CECECE;\n border-radius: 5px;\n text-align: center;\n font-weight: bold;\n\n @media(max-width:576px){\n width: 50px;\n height: 60px;\n }\n .calender-month {\n height: 26px;\n line-height: 26px;\n width: 100%;\n color: #FFFFFF;\n font-size: 14px;\n border-top-right-radius: 5px;\n border-top-left-radius: 5px;\n @media(max-width:576px){\n height: 22px;\n line-height: 23px;\n font-size: 10px;\n }\n }\n\n .calender-day {\n font-size: 32px;\n color: #0A2336;\n padding-top: 7px;\n @media(max-width:576px){\n font-size: 17px;\n }\n }\n\n .calender-day-2 span{\n font-size: 20px;\n @media(max-width:576px){\n font-size: 12px;\n }\n }\n\n .dash {\n width: 18px;\n height: 2px;\n margin: auto;\n display: block;\n }\n \n}\n</style>","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CalenderDay.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./CalenderDay.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./CalenderDay.vue?vue&type=template&id=9776c1f8&scoped=true\"\nimport script from \"./CalenderDay.vue?vue&type=script&lang=js\"\nexport * from \"./CalenderDay.vue?vue&type=script&lang=js\"\nimport style0 from \"./CalenderDay.vue?vue&type=style&index=0&id=9776c1f8&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"9776c1f8\",\n null\n \n)\n\nexport default component.exports","<template>\n <div id=\"company-page pos-wrapper\">\n <div v-if=\"company\">\n <div id=\"company-wrapper\">\n <div id=\"company-header\">\n <b-container>\n <b-row>\n <b-col lg=\"3\" sm=\"8\" cols=\"5\" id=\"logo-container\">\n <a :href=\"company.layout.logo_url\" v-if=\"company.layout.logo && company.layout.logo_url\" target=\"_blank\">\n <b-img :src=\"company.layout.logo\" :alt=\"company.name\" fluid/>\n </a>\n <b-img v-else-if=\"company.layout.logo\" :src=\"company.layout.logo\" :alt=\"company.name\" fluid/>\n <b-img v-else :src=\"require('./../assets/logo-light.png')\" :alt=\"company.name\" fluid/>\n </b-col>\n <b-col lg=\"9\" sm=\"4\" cols=\"7\" class=\"d-flex justify-content-end align-items-center\">\n <b-dropdown id=\"dropdown-right \" :text=\"languageLabel\" class=\"languages\">\n <template v-slot:button-content>\n <div>\n <b-img class=\"selected-lang\" :src=\"require('./../assets/icons/'+language+'.png')\"/>\n <p class=\"mb-0\">{{language.toUpperCase()}}</p>\n <b-icon icon=\"chevron-down\" width=\"14\" class=\"ml-3\"></b-icon>\n </div>\n </template>\n <b-dropdown-item @click=\"changeLanguage('nl')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/nl.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_nl') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('de')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/de.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_de') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('en')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/en.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_en') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('es')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/es.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_es') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('fr')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/fr.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_fr') }}</p></b-dropdown-item>\n <b-dropdown-item @click=\"changeLanguage('pt')\"><b-img class=\"lang-flag\" :src=\"require('./../assets/icons/pt.png')\"/><p class=\"mb-0 ml-2\">{{ $t('lang_pt') }}</p></b-dropdown-item>\n </b-dropdown>\n </b-col>\n </b-row>\n </b-container>\n </div>\n <div id=\"company-nav\" v-if=\"event\" :class=\"{'company-nav-pages': $route.name !== 'ViewPointOfSale'}\">\n <b-container class=\"px-0\">\n <b-alert v-if=\"this.pos && this.pos.status === 'test'\" variant=\"warning\" show class=\"text-center\">\n {{ $t('pos_in_test_mode') }}\n </b-alert>\n\n <div v-if=\"event.banner_url\" class=\"text-center position-relative banner-container\">\n <div class=\"banner-background\" :style='`background-image: url(\"${event.banner_url}\");`'></div>\n <img :src=\"event.banner_url\" alt=\"\" class=\"pos-banner\">\n </div>\n\n <b-row class=\"event-top-header mx-0\" :class=\"{'with-banner': event.banner_url}\">\n <b-col sm=\"12\" lg=\"7\" class=\"pl-0 d-flex align-items-center mb-4 mb-lg-0\">\n <div v-if=\"event && event.starts_at && event.ends_at\" class=\"mr-3 mr-md-4\">\n <CalenderDay :starts-at=\"event.starts_at\" :ends-at=\"event.ends_at\"/>\n </div>\n <div>\n <h1 class=\"event-title\">{{ event.name }}</h1>\n <p class=\"event-date event-date-web mb-0\" v-if=\"event.starts_at\">{{ getDateFormat(event.starts_at) }} - {{ getDateFormat(event.ends_at) }}</p>\n <p class=\"event-date event-date-mobile mb-0\" v-if=\"event.starts_at\">{{ getDateFormatMobile(event.starts_at) }} - {{ getDateFormatMobile(event.ends_at) }}</p>\n <p class=\"event-venue mb-0\" v-if=\"event.venue_id && event.venue\">{{ event.venue.name }}, {{ event.venue.address }}, {{ event.venue.city }}, {{ event.venue.zip }}, {{ event.venue.country_code }}</p>\n </div>\n </b-col>\n <b-col v-if=\"!countdown\" sm=\"12\" lg=\"5\" class=\"stepper-wrapper pr-lg-0\">\n <b-row class=\"stepper\" align-h=\"end\">\n <b-col :cols=\"stepperCols\" lg=\"auto\" class=\"step\" :class=\"step.done && $route.name !== step.route ? 'step-done' : ($route.name === step.route ? 'step-current' :'step-todo')\"\n v-for=\"(step, i) in steps\"\n :key=\"step.route+i\">\n <div class=\"w-100\">\n <div class=\"ball-wrapper\">\n <div class=\"ball pos-bg-secondary-color\">\n <b-icon v-if=\"step.done && $route.name !== step.route\" icon=\"check-lg\" width=\"16\" height=\"14\"></b-icon>\n </div>\n </div>\n <div class=\"label pos-accent-color\">{{ step.label }}</div>\n </div>\n </b-col>\n </b-row>\n </b-col>\n </b-row>\n </b-container>\n </div>\n <div id=\"company-content\">\n <b-row>\n <b-col class=\"mt-5\" v-if=\"countdown\">\n <FlipCountdown :deadline=\"countdown\"></FlipCountdown>\n </b-col>\n <b-col v-else>\n <router-view></router-view>\n </b-col>\n </b-row>\n </div>\n </div>\n <div id=\"company-wrapper-2\">\n <div class=\"company-content\">\n <b-container v-if=\"!countdown\" class=\"footer-info-blocks\">\n <b-row lg=\"6\">\n <b-col class=\"info-card\">\n <h3>\n <svg class=\"mr-1\" xmlns=\"http://www.w3.org/2000/svg\" height=\"19\" width=\"19\" viewBox=\"0 0 512 512\"><path d=\"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm169.8-90.7c7.9-22.3 29.1-37.3 52.8-37.3l58.3 0c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24l0-13.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1l-58.3 0c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"/></svg>\n {{ $t('shop_questions_event') }}\n </h3>\n <p class=\"footer-description\">\n {{ $t('shop_questions_event_hint') }}\n </p>\n <div class=\"mb-0\">\n <tr>\n <td class=\"text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10.792\" height=\"16.958\" viewBox=\"0 0 10.792 16.958\">\n <path id=\"Path_143\" data-name=\"Path 143\" d=\"M1.542,16.958a1.485,1.485,0,0,1-1.089-.453A1.485,1.485,0,0,1,0,15.417V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H9.25a1.485,1.485,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089V15.417A1.546,1.546,0,0,1,9.25,16.958Zm0-3.854v2.313H9.25V13.1ZM5.4,15.031a.757.757,0,1,0-.549-.222A.746.746,0,0,0,5.4,15.031ZM1.542,11.563H9.25V3.854H1.542Zm0-9.25H9.25V1.542H1.542Z\" fill=\"#0a2337\"/>\n </svg>\n </td>\n <td><p class=\"m-0\">{{ company.phone }}</p></td>\n </tr>\n <tr>\n <td class=\"text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15.417\" height=\"12.333\" viewBox=\"0 0 15.417 12.333\">\n <path id=\"Path_144\" data-name=\"Path 144\" d=\"M1.542,12.333A1.485,1.485,0,0,1,.453,11.88,1.485,1.485,0,0,1,0,10.792V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H13.875a1.484,1.484,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089v9.25a1.546,1.546,0,0,1-1.542,1.542Zm6.167-5.4L1.542,3.083v7.708H13.875V3.083Zm0-1.542,6.167-3.854H1.542ZM1.542,3.083v0Z\" fill=\"#0a2337\"/>\n </svg>\n </td>\n <td>\n <p class=\"m-0\">{{ company.email_customer_questions }}</p>\n </td>\n </tr>\n <tr v-if=\"company.show_kvk_on_pos\">\n <td class=\"text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" class=\"mr-2\" height=\"14\" width=\"10.5\" viewBox=\"0 0 384 512\"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d=\"M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l160 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm56 256c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0zm0 96c-13.3 0-24 10.7-24 24s10.7 24 24 24l144 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-144 0z\"/></svg>\n </td>\n <td>\n <p class=\"m-0\">{{ $t('shop_chamber_of_commerce_number') }}: {{ company.kvk }}</p>\n </td>\n </tr>\n </div>\n </b-col>\n <b-col class=\"footer-info-blocks-border\" cols=\"12\">\n <div></div>\n </b-col>\n <b-col lg=\"6\" class=\"info-card info-block\">\n <h3>\n <svg class=\"mr-1\" xmlns=\"http://www.w3.org/2000/svg\" height=\"19\" width=\"19\" viewBox=\"0 0 512 512\"><path d=\"M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm169.8-90.7c7.9-22.3 29.1-37.3 52.8-37.3l58.3 0c34.9 0 63.1 28.3 63.1 63.1c0 22.6-12.1 43.5-31.7 54.8L280 264.4c-.2 13-10.9 23.6-24 23.6c-13.3 0-24-10.7-24-24l0-13.5c0-8.6 4.6-16.5 12.1-20.8l44.3-25.4c4.7-2.7 7.6-7.7 7.6-13.1c0-8.4-6.8-15.1-15.1-15.1l-58.3 0c-3.4 0-6.4 2.1-7.5 5.3l-.4 1.2c-4.4 12.5-18.2 19-30.6 14.6s-19-18.2-14.6-30.6l.4-1.2zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\"/></svg>\n {{ $t('shop_questions_tickets') }}\n </h3>\n <p class=\"footer-description\">\n {{ $t('shop_questions_tickets_hint') }}\n </p>\n <div>\n <tr>\n <td class=\"text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"10.792\" height=\"16.958\" viewBox=\"0 0 10.792 16.958\">\n <path id=\"Path_143\" data-name=\"Path 143\" d=\"M1.542,16.958a1.485,1.485,0,0,1-1.089-.453A1.485,1.485,0,0,1,0,15.417V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H9.25a1.485,1.485,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089V15.417A1.546,1.546,0,0,1,9.25,16.958Zm0-3.854v2.313H9.25V13.1ZM5.4,15.031a.757.757,0,1,0-.549-.222A.746.746,0,0,0,5.4,15.031ZM1.542,11.563H9.25V3.854H1.542Zm0-9.25H9.25V1.542H1.542Z\" fill=\"#0a2337\"/>\n </svg>\n </td>\n <td>\n <p class=\"m-0\">+31 (0) 85 0603 589</p>\n </td>\n </tr>\n <tr>\n <td class=\"text-center\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"15.417\" height=\"12.333\" viewBox=\"0 0 15.417 12.333\">\n <path id=\"Path_144\" data-name=\"Path 144\" d=\"M1.542,12.333A1.485,1.485,0,0,1,.453,11.88,1.485,1.485,0,0,1,0,10.792V1.542A1.485,1.485,0,0,1,.453.453,1.485,1.485,0,0,1,1.542,0H13.875a1.484,1.484,0,0,1,1.089.453,1.485,1.485,0,0,1,.453,1.089v9.25a1.546,1.546,0,0,1-1.542,1.542Zm6.167-5.4L1.542,3.083v7.708H13.875V3.083Zm0-1.542,6.167-3.854H1.542ZM1.542,3.083v0Z\" fill=\"#0a2337\"/>\n </svg>\n </td>\n <td>\n <p class=\"m-0\">support@fairtix.io</p>\n </td>\n </tr>\n </div>\n </b-col>\n </b-row>\n </b-container>\n </div>\n </div>\n <div id=\"company-footer\">\n <b-container class=\"company-footer px-0\">\n <b-row>\n <b-col class=\"first\">\n <img src=\"https://prod-ft-frontend.s3.eu-west-1.amazonaws.com/img/logo-fairtix.png\" alt=\"Fairtix\" style=\"max-width: 174px;\"/>\n </b-col>\n <b-col class=\"footer-fairtix-border\" cols=\"12\">\n <div></div>\n </b-col>\n <b-col class=\"footer-fairtix\">\n <p class=\"footer-strong\">Fairtix</p>\n <p>{{ $t('shop_chamber_of_commerce_number') }}: {{ $t('fairtix_location_coc') }}</p>\n <p>{{ $t('shop_vat') }}: {{ $t('fairtix_location_vat') }}</p>\n </b-col>\n <b-col class=\"footer-fairtix-border\" cols=\"12\">\n <div></div>\n </b-col>\n <b-col class=\"footer-address\">\n <p class=\"footer-strong\">{{ $t('address') }}</p>\n <p>{{ $t('fairtix_location_street') }}</p>\n <p>{{ $t('fairtix_location_zip') }} {{ $t('fairtix_location_city') }}</p>\n <p>{{ $t('country_nl') }}</p>\n </b-col>\n </b-row>\n </b-container>\n </div>\n </div>\n <b-row v-else>\n <b-col class=\"text-center\">\n <b-spinner style=\"width: 10em; height: 10em;\"></b-spinner>\n </b-col>\n </b-row>\n <CookieBanner></CookieBanner>\n </div>\n</template>\n\n<script>\nimport {mapState, mapActions, mapGetters} from 'vuex'\nimport api from \"@/api\";\nimport FlipCountdown from 'vue2-flip-countdown';\nimport CookieBanner from \"@/components/CookieBanner\";\nimport moment from \"moment/moment\";\nimport {getCookie} from \"@/functions\";\nimport CalenderDay from \"@/components/CalenderDay\"\n\nexport default {\n name: 'App',\n data() {\n return {\n show: false,\n countdown: null,\n countdownInterval: null,\n selectedCategories: {\n analytics: false,\n marketing: false,\n local_information: false\n }\n }\n },\n methods: {\n gtag(){\n window.dataLayer.push(arguments);\n },\n changeLanguage(lang) {\n this.$store.commit('setLanguage', lang)\n },\n loadCampaign() {\n if(this.$route.query.ft_campaign_name) {\n api.campaign().findByDomain(this.$route.query.ft_campaign_name).then(response => {\n if(response.campaign) {\n this.$store.commit('setCampaign', response.campaign);\n }\n })\n }\n },\n getDateFormat(date) {\n return moment(date).format('D MMM YYYY HH:mm');\n },\n getDateFormatMobile(date) {\n return moment(date).format('DD-MM-YYYY HH:mm');\n },\n ...mapActions(['loadCompany','loadProductTypeDonation'])\n },\n computed: {\n languageLabel(){\n return this.$t('language_' + this.language)\n },\n hasTimeslots() {\n if (!this.event) {\n return false\n }\n return this.event.timeslots.length > 0 || (this.event.opening_hours && this.event.opening_hours.length > 0)\n },\n stepperCols() {\n if (!this.steps) {\n return 12\n }\n return Math.floor(12 / this.steps.length)\n },\n steps() {\n let steps = [\n {label: this.$t('shop_tickets'), route: 'ViewPointOfSale', done: true},\n ]\n\n if (this.hasTimeslots) {\n steps.push({label: this.$t('shop_timeslot'), route: 'OrderSelectTimeslot', done: false})\n }\n\n steps.push({label: this.$t('shop_personal_details'), route: 'OrderEnterPersonalDetails', done: false})\n\n if (this.posHasCrossSell) {\n steps.push({label: this.$t('shop_additional_products'), route: 'OrderAdditionalProducts', done: false})\n }\n\n steps.push({label: this.$t('shop_pay'), route: 'OrderSelectPaymentMethod', done: false})\n\n let done = true\n steps.forEach((step, index) => {\n steps[index].done = done\n if (this.$route.name === step.route) {\n done = false\n }\n })\n return steps\n },\n ...mapState(['company', 'event', 'pos', 'language','donation_product_id']),\n ...mapGetters(['posHasCrossSell'])\n },\n watch: {\n company() {\n\n if (!this.company.layout) {\n this.company.layout = {\n header: {\n backgroundColor: '#efefef'\n },\n secondary: {\n backgroundColor: '#000',\n color: '#fff'\n },\n primary: {\n color: '#E6A510'\n },\n footer: {\n backgroundColor: '#efefef',\n links: [\n {text: 'Fairtix.io', url: 'https://fairtix.io'}\n ]\n }\n }\n }\n\n // apply custom styling\n let customCss = document.getElementById('company-css')\n if (customCss) {\n customCss.remove()\n }\n let layout = this.company.layout\n let css = ``\n\n if(layout.primary_color && layout.primary_color !== 'undefined' ){\n css += `div.flip-clock b.flip-card__bottom { background:${layout.primary_color}; }`;\n css += `div.flip-clock b.flip-card__top, div.flip-clock b.flip-card__back-bottom { background:${layout.primary_color}; }`;\n css += `#dropdown-right, #dropdown-right .dropdown-toggle { background-color:${layout.primary_color}; } `;\n css += `div.flip-clock b.flip-card__top, div.flip-clock b.flip-card__bottom, div.flip-clock b.flip-card__back-bottom, div.flip-clock b.flip-card__back::before, div.flip-clock b.flip-card__back::after { color:${layout.primary_color}; }`\n css += `#company-header { background:${layout.primary_color}; }`\n css += `#company-wrapper {background:${layout.primary_color} !important; }`\n\n css += `h1, h2, h3 { color:${layout.primary_color}; }`\n css += `.pos-primary-color { color:${layout.primary_color} !important; }`;\n css += `.pos-primary-color-border { border-color:${layout.primary_color} !important; }`;\n css += `.pos-bg-primary-color { background-color:${layout.primary_color} !important; }`;\n css += `.input-wrapper .form-control {border: 1px solid ${layout.primary_color} !important; color: ${layout.primary_color} !important;}`\n css += `.input-wrapper .form-control::placeholder {color: ${layout.primary_color} !important; opacity: 60%;}`\n css += `.input-wrapper .mt-icon svg {fill: ${layout.primary_color} !important; }`\n css += `.payment-method-row {border-top: 1px solid ${layout.primary_color};}`\n css += `.payment-method-row:nth-of-type(2n+1) {border-right: 1px solid ${layout.primary_color};}`\n css += `.pos-cart-place-order .discount-input { border-top: 1px solid ${layout.primary_color}; border-bottom: 1px solid ${layout.primary_color};}`;\n css += `.pos-cart-place-order .input-button-percentage { border-top: 1px solid ${layout.primary_color};border-left: 1px solid ${layout.primary_color};border-bottom: 1px solid ${layout.primary_color};}`\n css += `.pos-cart-place-order .input-button { background-color: ${layout.primary_color}; border-top: 1px solid ${layout.primary_color};border-bottom: 1px solid ${layout.primary_color};}`\n css += `.pos-cart-place-order .cart-discountcode {border: 1px solid ${layout.primary_color};}`;\n css += `.pos-cart-place-order .discount-input input {border-color: ${layout.primary_color}; color: ${layout.primary_color}}`;\n css += `.custom-control-input:checked ~ .custom-control-label::before { border-color: ${layout.primary_color} !important; background-color: ${layout.primary_color} !important;}`;\n css += `.custom-control-input:focus:not(:checked) ~ .custom-control-label::before { border-color: ${layout.primary_color} !important; }`;\n css += `.footer-info-blocks .info-card p { color: ${layout.primary_color} !important}`;\n css += `h2.group-title { color: ${layout.primary_color} !important }`;\n css += `.row.active-option .payment-method-row label.custom-control-label{border:1px solid ${layout.primary_color} !important;background-color:${layout.primary_color}10}`;\n css += `h1.event-title { color:${layout.primary_color}; }`;\n css += `.product-details h4, .content-block.cart-container h2, .content-block.cart-container h3 { color: ${layout.primary_color} }`;\n css += `svg:not(.bi-check-lg):not(.download-ticket-icon) {fill: ${layout.primary_color};}`\n css += `svg.cart-shop-icon path, svg.cart-shop-icon polygon {fill: ${layout.primary_color};}`;\n css += `svg path#Path_143, svg path#Path_144 {fill: ${layout.primary_color};}`;\n css += `svg path#Path_152, svg path#Path_153 {stroke: ${layout.primary_color};}`;\n css += `#company-footer p {color: ${layout.primary_color} !important}; }`;\n css += `.payment-method-row {border-top:1px solid ${layout.primary_color} !important; border-right:1px solid ${layout.primary_color}} !important; }`;\n }\n\n if(layout.secondary_color && layout.secondary_color !== 'undefined' ){\n css += `body { background-color: ${layout.secondary_color} !important;}`\n css += `#company-page { background-color: ${layout.secondary_color} !important; };`\n css += `.content-block.cart-container { background: ${layout.secondary_color} } `\n css += `.pos-secondary-color { color: ${layout.secondary_color} !important; } `\n css += `.pos-bg-secondary-color { background-color: ${layout.secondary_color}!important; } `\n css += `.pos-secondary-color-border { border-color: ${layout.secondary_color}!important; } `;\n css += `.stepper .step-todo .ball { color: ${layout.secondary_color}; }`;\n css += `.stepper .step-done .ball { color: ${layout.secondary_color}; }`;\n css += `svg.bi-download {fill: ${layout.secondary_color} !important;}`;\n css += `svg.bi-arrow-left {fill: ${layout.secondary_color} !important;}`;\n css += `.event-top-header {background: ${layout.secondary_color} !important;}`;\n css += `.content-block {background: ${layout.secondary_color} !important;}`;\n css += `.event-card {background: ${layout.secondary_color} !important;}`;\n css += `#company-footer {background: ${layout.secondary_color} !important;}`;\n css += `.footer-info-blocks {background: ${layout.secondary_color} !important; border: 1px solid #EAEAEA !important;}`;\n css += `.payment-method-row {background: ${layout.secondary_color} !important;}`\n css += `.order-status-page .content-header {background-color: ${layout.secondary_color} !important;}`\n css += `.order-status-page .ticket-row-wrapper {background-color: ${layout.secondary_color} !important;}`\n }\n\n if(layout.accent_color && layout.accent_color !== 'undefined' ){\n css += `.stepper .step-done .ball { background: ${layout.accent_color};line-height:3.2em !important }`;\n css += `.stepper .step-todo .ball { border: 3px solid #EAEAEA;line-height:2.9em !important }`;\n css += `p.event-date{ color:${layout.accent_color} !important; }`\n css += `.pos-accent-color{ color:${layout.accent_color} !important; }`\n css += `.pos-bg-accent-color{ background-color:${layout.accent_color} !important; }`\n css += `.pos-bg-accent-color-border{ border-color:${layout.accent_color} !important; }`\n css += `.stepper .step.step-current .ball, .stepper .step.step-done .ball {background-color: ${layout.accent_color} !important;border: 2px solid ${layout.accent_color} !important;}`;\n css += `.active-option {background-color: ${layout.accent_color} !important;}`\n css += `.pos-terms a {color: ${layout.accent_color} !important; }`;\n\n css += `.stepper-line { background: ${layout.accent_color}; }`;\n css += `.stepper .step-todo .ball { background: ${layout.accent_color}; }`;\n css += `.stepper .step-done div.label, .stepper .step-todo div.label{ color:${layout.accent_color}; }`;\n css += `svg.bi-check-circle-fill {fill: ${layout.accent_color};}`;\n css += `.btn-download-all-tickets {background-color: ${layout.accent_color}!important; color: ${layout.secondary_color} !important;}`\n }\n\n if(layout.description_color && layout.description_color !== 'undefined') {\n css += `p.event-venue{ color:${layout.description_color} !important; }`;\n css += `.product-details p, .content-block.cart-container .product-details p { color: ${layout.description_color} !important }`;\n css += `.pos-description-color { color: ${layout.description_color} !important }`\n }\n\n if(layout.button_color && layout.button_text_color) {\n css += `.content-block.cart-container .btn.btn-success{ background: ${layout.button_color}; color: ${layout.button_text_color} }`\n css += `.btn.pos-btn-order{ background: ${layout.button_color} !important; color: ${layout.button_text_color} !important }`\n }\n\n // Needed but not generated CSS\n css += `.content-block{ background: #fff; padding:25px 47px; }`\n css += `.row:first-child .content-block {}`\n css += `h1 { font-size: 1.8em }`\n css += `h2 { font-size: 1.6em }`\n css += `h3 { font-size: 1.4em }`\n\n document.querySelector('head').innerHTML += '<style id=\"company-css\">' + css + '</style>'\n\n },\n pos(){\n // Check if we have to add GTM code\n if(this.pos && this.pos.event && this.pos.event.gtm_id){\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer',this.pos.event.gtm_id);\n\n let gtm_noscript = document.createElement('noscript');\n let gtm_iframe = document.createElement('iframe');\n gtm_iframe.setAttribute('src', 'https://www.googletagmanager.com/ns.html?id=' + this.pos.event.gtm_id);\n gtm_iframe.setAttribute('height', '0');\n gtm_iframe.setAttribute('width', '0');\n gtm_iframe.setAttribute('style', 'display:none;visibility:hidden');\n gtm_noscript.appendChild(gtm_iframe);\n document.body.appendChild(gtm_noscript);\n\n // Initialize Google Tag Manager\n this.gtag('js', new Date());\n this.gtag('config', this.pos.event.gtm_id);\n }\n }\n },\n mounted() {\n window.dataLayer = window.dataLayer || [];\n const storedCategories = getCookie(\"ft_cookieCategories\");\n if (storedCategories) {\n this.selectedCategories = JSON.parse(storedCategories);\n this.gtag('consent', 'default', {\n 'ad_storage': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'ad_personalization': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'ad_user_data': (this.selectedCategories.marketing) ? 'granted' : 'denied',\n 'analytics_storage': (this.selectedCategories.analytics) ? 'granted' : 'denied'\n })\n } else {\n this.gtag('consent', 'default', {\n 'ad_storage': 'denied',\n 'ad_personalization': 'denied',\n 'ad_user_data': 'denied',\n 'analytics_storage': 'denied',\n })\n }\n },\n created() {\n this.loadCompany()\n this.loadProductTypeDonation()\n this.loadCampaign();\n this.countdownInterval = setInterval(() => {\n if(this.pos && !this.pos.countdown) {\n this.countdown = null;\n clearInterval(this.countdownInterval)\n }\n if( this.pos && this.pos.countdown && moment(this.pos.countdown).isAfter(moment())) {\n this.countdown = moment(this.pos.countdown).format('YYYY-MM-DD HH:mm:ss');\n }\n else {\n clearInterval(this.countdownInterval)\n this.countdown = null;\n }\n }, 1300)\n },\n components: {\n FlipCountdown,\n CookieBanner,\n CalenderDay\n },\n destroyed() {\n clearInterval(this.countdownInterval)\n }\n}\n</script>\n<style>\n@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');\n</style>\n<style>\n\n.selected-lang{\n border:0px\n}\n.dropdown-toggle::after{\n margin-bottom:-4px\n}\n.btn{\n border:0px\n}\n#company-page {\n min-height: 100%;\n}\n#company-wrapper {\n overflow-y: hidden;\n background: #e5e5e5;\n overflow-x: hidden;\n}\n#company-wrapper-2 {\n overflow-y: auto;\n overflow-x: hidden;\n transform: translateY(-100px);\n}\n#company-header {\n padding: 35px 0;\n}\n#logo-container{\n display:flex;\n align-items: center;\n}\n#logo-container img{\n max-width: 171px;\n max-height: 57px;\n}\n#company-nav{\n margin-bottom:35px\n}\n.company-nav-pages {\n margin-bottom: 15px !important;\n}\n#company-content {\n margin: 0px 0 135px 0;\n}\nh1.event-title{\n font-weight:bold;\n font-size:32px;\n margin-bottom:0\n}\np.event-date{\n font-size: 18px;\n font-weight: 600;\n}\np.event-venue{\n font-size: 16px;\n}\n#company-footer {\n background-color:#FFF !important;\n margin-bottom: 7rem;\n}\n#company-footer div.col{\n padding:10px 0 10px 70px;\n border-left:1px solid #e0e0e0\n}\n#company-footer div.col.first{\n border-left:0px;\n}\n.info-card {\n padding: 2rem;\n margin-top: 1rem;\n}\n.pos-wrapper .info-card {\n padding-top: 0;\n padding-bottom: 0;\n}\n.info-card h3{\n font-size:16px;\n font-weight:600;\n}\n.info-card p{\n font-size:12px;\n}\n.info-card p svg{\n font-size:1rem\n}\n.footer-info-blocks {\n padding: 35px 47px;\n border-radius: 6px;\n}\n\n.footer-info-blocks .info-card{\n border:0px\n}\n.info-card:nth-child(1){\n margin-right: 0.5em;\n}\n.pos-wrapper .info-card:nth-child(1) {\n border-right: 1px solid #EAEAEA;\n padding-right:1rem!important;\n}\n.pos-wrapper .info-card:last-of-type {\n padding-left: 3rem;\n}\n.stepper-wrapper {\n position:relative;\n overflow:hidden\n}\n\n/* after element is the line between the steps */\n.stepper-wrapper::after{\n content:'';\n position:absolute;\n top:19px;\n left:0;\n width:100%;\n height:2px;\n background-color:#EAEAEA\n}\n\n.stepper{\n gap:1rem;\n flex-wrap:nowrap\n}\n\n.stepper .step {\n text-align: center;\n display: flex;\n position:relative;\n flex-shrink: 1;\n}\n\n/* to hide the line will appear after last step ball */\n.stepper .step:last-of-type::after{\n content: '';\n position: absolute;\n right: 0;\n top: 19px;\n z-index: 10;\n width: calc(50% - 19px);\n height: 2px;\n background-color: #fff;\n}\n\n/* to hide the line will appear before first step ball */\n.stepper .step:first-of-type::before{\n content: '';\n position: absolute;\n right: 50%;\n top: 19px;\n z-index: 10;\n width: 100rem;\n height: 2px;\n background-color: #fff;\n}\n\n.stepper .step .label {\n font-size: 12px;\n text-align: center;\n margin-top: 0.5em;\n display: inline-block;\n width: 100%;\n font-weight: bold;\n}\n\n/* to hide the line will appear before and after any step ball \"some white space around the ball\" */\n.stepper .step .ball-wrapper{\n width:45px;\n margin:0 auto;\n z-index: 20;\n position: relative;\n}\n\n.stepper .step .ball {\n z-index: 1;\n border-radius: 100%;\n width: 39px;\n height: 39px;\n text-align: center;\n position: relative;\n display: inline-block;\n margin:0 auto;\n box-shadow: 0 0 0 2px #FFFFFF inset;\n box-sizing: border-box;\n}\n.stepper .step.step-current .ball {\n z-index: 1;\n border-radius: 100%;\n width: 39px;\n height: 39px;\n text-align: center;\n position: relative;\n display: inline-block;\n box-shadow: 0 0 0 2px #FFFFFF inset;\n box-sizing: border-box;\n}\n.stepper .step.step-done .ball {\n z-index: 1;\n border-radius: 100%;\n width: 39px;\n height: 39px;\n text-align: center;\n position: relative;\n display: flex;\n align-items:center;\n justify-content:center;\n box-sizing: border-box;\n box-shadow: none;\n}\n.stepper .step.step-done .label {\n margin-top:.8rem\n}\n.stepper-line {\n height: 3px;\n width: 90px;\n margin-top: 14px;\n background-color: #EAEAEA !important;\n}\n\n.event-date-mobile {\n display: none !important;\n}\n.footer-info-blocks-border {\n display: none;\n}\n.footer-fairtix-border {\n display: none;\n}\n #company-footer .footer-strong {\n font-weight: bold !important;\n}\n#company-footer p {\n font-size: 12px !important;\n margin-bottom: 0;\n}\n\n#company-footer div.col.first img{\n width: 174px !important;\n}\n\n#company-page * {\n font-family: \"Montserrat\", sans-serif !important;\n}\n\n.event-top-header {\n background-color: #FFFFFF;\n padding: 47px;\n border-radius: 6px;\n align-items:center;\n}\n.event-top-header.with-banner {\n border-radius: 0 0 6px 6px !important;\n}\n\n.color-gray {\n color: #909090 !important;\n}\n\n.border-radius {\n border-radius: 6px !important;\n}\n.border-radius-6 {\n border-radius: 6px !important;\n}\n\n.cart-container-title {\n border-radius: 6px 6px 0 0 !important;\n}\n.cart-container-title h1 {\n font-size: 32px !important;\n font-weight: bolder !important;\n}\n\n.cart-container-title label {\n font-size: 16px !important;\n font-weight: bold !important;\n}\n\n.cart-container-details {\n border-radius: 0 0 6px 6px !important;\n margin-top: 2px !important;\n}\n.banner-container {\n border-top-left-radius: 6px;\n border-top-right-radius: 6px;\n max-width: 1140px;\n overflow:hidden;\n}\n.banner-background {\n max-width: 100%;\n width: 100%;\n height: 147px;\n filter: blur(4px);\n background-position: center;\n background-repeat: no-repeat;\n background-size: cover;\n position: absolute;\n}\n\n.pos-banner {\n position: relative;\n width:100%;\n max-width: 855px;\n min-height:147px\n}\n.header-padding {\n padding: 25px 47px!important;\n}\n.header-padding h1{\n font-size: 32px;\n font-weight: bold;\n}\n@media only screen and (max-width: 992px) {\n #company-wrapper-2 {\n transform: translateY(-165px);\n }\n .stepper-wrapper::after,.stepper .step:first-of-type::before,.stepper .step:last-of-type::after{\n top:12.5px\n }\n .stepper .step:last-of-type::after{\n width:calc(50% - 12.5px)\n }\n .stepper .step .ball ,.stepper .step.step-current .ball{\n width: 25px;\n height: 25px;\n }\n .stepper .step.step-done .ball{\n width: 27px;\n height: 27px;\n }\n .stepper .step .ball-wrapper{\n width:30px\n }\n #company-wrapper{\n padding-bottom:65px\n }\n #company-footer{\n margin-top: -4rem;\n }\n .stepper{\n gap:0\n }\n .event-date-mobile {\n display: block !important;\n }\n .event-date-web {\n display: none !important;\n }\n .content-sidebar {\n margin-left: 0em;\n margin-top: 1em;\n }\n .info-card:last-of-type {\n padding-left: 0;\n }\n .info-card:nth-child(1) {\n border-right: 0 !important;\n }\n .info-card {\n padding: 17px !important;\n }\n .footer-info-blocks-border {\n display: block;\n margin: 10px 0;\n }\n .footer-info-blocks-border div {\n width: 82%;\n height: 1px;\n background-color: #EAEAEA;\n margin: auto;\n }\n .banner-container .banner-container {\n max-width: 992px;\n }\n .banner-container .pos-banner {\n width: 70%;\n }\n .header-padding {\n padding: 17px!important;\n }\n .footer-info-blocks {\n padding: 13px 17px !important;\n }\n}\n.languages {\n border-radius: 30px;\n}\n.languages .dropdown-toggle{\n position: relative;\n border-radius: 6px;\n}\n.languages .dropdown-toggle p,.languages .dropdown-item p{\n color:#0F273B!important;\n}\n.languages .dropdown-toggle::after{\n display:none\n}\n.languages .btn-secondary{\n background-color: #fff!important;\n height: 52px;\n}\n.languages .btn-secondary > div{\n display: flex;\n justify-content: flex-start;\n align-items: center;\n}\n.languages .btn-secondary > div > p{\n font-weight:600\n}\n.languages .btn-secondary > div img{\n margin: 0 7px 0 0;\n}\n.lang-flag, .selected-lang{\n width: 25px;\n}\n.speak{\n font-size: 11px;\n color: #fff!important;\n margin-right: 5px;\n}\n.dropdown-item{\n display: flex;\n align-items: center;\n}\n\n\n.dropdown-item{\n padding: 0.25rem .8rem!important;\n}\n\n.info-card td:nth-child(2) {\n padding-left: 15px;\n}\n@media only screen and (max-width: 770px) {\n #company-wrapper-2 {\n transform: translateY(-155px);\n }\n #company-wrapper{\n padding-bottom:55px\n }\n h1.event-title{\n margin-top: 0rem;\n }\n h1.event-title,.header-padding h1,.cart-container-title h1{\n font-size:20px!important;\n }\n .content-block.cart-container p,.cart-container-title label,.footer-info-blocks .info-card h3{\n font-size:12px!important;\n }\n #logo-container img{\n max-width: 120px;\n max-height: unset;\n }\n .languages .btn-secondary{\n height: 40px;\n font-size: 13px;\n font-weight:600\n }\n .languages .btn-secondary > div img{\n width:18px\n }\n .languages .btn-secondary > div svg{\n margin-left:9px!important;\n width: 11px;\n }\n .dropdown-item{\n font-size: 13px;\n }\n .stepper .step .label ,.footer-info-blocks .info-card p,p.event-date,p.event-venue{\n font-size: 10px;\n }\n p.event-date{\n margin-top:2px\n }\n .stepper .step{\n padding:0!important\n }\n #company-footer div.col.first img{\n max-width:100px !important;\n padding-left: 0 !important;\n }\n\n .footer-description {\n padding-inline-start: 28px;\n font-size:10px!important;\n }\n #company-header {\n padding: 15px 0;\n }\n #company-content {\n margin: 0px 0 115px 0;\n }\n .footer-info-blocks .info-card p svg{\n margin-right: 17px!important;\n }\n .info-card h3 svg{\n transform:scale(.7)\n }\n .info-card p svg{\n transform:scale(.8)\n }\n}\n\n@media only screen and (max-width: 576px) {\n .container{\n max-width:94%\n }\n #company-footer {\n margin-top: -8rem;\n margin-bottom: 6rem;\n }\n #company-wrapper-2 {\n transform: translateY(-190px);\n }\n #company-wrapper{\n padding-bottom:90px\n }\n #company-footer div.col{\n width:100%;\n border-left:0px;\n padding: 0 17px !important;\n }\n #company-footer div.row{\n flex-direction: column;\n width: 100%;\n margin: auto;\n }\n .footer-fairtix-border {\n display: block;\n margin: 30px 0px;\n }\n .footer-fairtix-border div {\n width: 85px;\n height: 1px;\n background-color: #EAEAEA;\n }\n}\n\n@media only screen and (max-width: 337px) {\n .content-sidebar {\n margin-left: -1em;\n margin-top: 1em;\n }\n .info-card {\n margin-top: 0em;\n }\n}\n\n\n@media screen and (max-width: 990px){\n .event-top-header.with-banner {\n border-radius: 0 0 10px 10px !important;\n }\n #company-nav {\n margin-bottom: 15px;\n }\n}\n\n@media (min-width: 200px) and (max-width: 992px) {\n .event-top-header {\n padding: 15px 17px !important;\n }\n .col-sm-2 {\n flex: 0 0 16.66666667%;\n max-width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.33333333%;\n max-width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.66666667%;\n max-width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.33333333%;\n max-width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.66666667%;\n max-width: 66.66666667%;\n }\n}\n\n.container {\n padding-left: 47px;\n padding-right: 47px;\n}\n\n@media only screen and (max-width: 576px) {\n .container {\n padding-left: 0;\n padding-right: 0;\n }\n}\n\n@media screen and (max-width: 992px) {\n .container {\n padding-left: 0;\n padding-right: 0;\n }\n}\n\n@media screen and (max-width: 992px) and (min-width: 576px) {\n .container.company-footer {\n padding-left: 47px !important;\n }\n}\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Shop.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Shop.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Shop.vue?vue&type=template&id=51af4918\"\nimport script from \"./Shop.vue?vue&type=script&lang=js\"\nexport * from \"./Shop.vue?vue&type=script&lang=js\"\nimport style0 from \"./Shop.vue?vue&type=style&index=0&id=51af4918&prod&lang=css\"\nimport style1 from \"./Shop.vue?vue&type=style&index=1&id=51af4918&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{staticClass:\"vh-100\",attrs:{\"align-v\":\"center\"}},[_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n\n <b-container fluid>\n <b-row>\n <b-col align-v=\"center\" class=\"vh-100\">\n <router-view></router-view>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport {mapState, mapActions} from 'vuex'\n\nexport default {\n name: 'App',\n methods: {\n logout() {\n this.$store.commit('logout')\n },\n dismissErrors() {\n this.$store.commit('errors', [])\n },\n dismissSuccess() {\n this.$store.commit('success', false)\n },\n ...mapActions(['loadUser', 'loadBoxOfficeUser', 'loadScannerTerminalUser'])\n },\n computed: {\n ...mapState(['success', 'errors'])\n },\n created() {\n if(this.$route.name === 'BoxOfficeLogin') {\n this.loadBoxOfficeUser().then((user) => {\n if(user) {\n this.$router.push({\n name: 'BoxOfficeEvents'\n })\n }\n })\n } else if(this.$route.name === 'ScannerTerminalLogin') {\n this.loadScannerTerminalUser().then((user) => {\n if(user) {\n this.$router.push({\n name: 'ScannerTerminalScan'\n })\n }\n })\n } else {\n this.loadUser().then((user) => {\n if (user && this.$route.name !== 'UserResetPassword') {\n this.$router.push({\n name: 'Dashboard'\n })\n }\n })\n }\n }\n}\n</script>\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=32198528\"\nimport script from \"./Login.vue?vue&type=script&lang=js\"\nexport * from \"./Login.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\",\"id\":\"app\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',[_c('div',{staticClass:\"nav-wrap\"},[_c('b-row',{staticStyle:{\"height\":\"45px\"}},[_c('b-col',{staticStyle:{\"line-height\":\"45px\"}},[(_vm.isPlaceOrder)?_c('router-link',{attrs:{\"to\":{name: 'BoxOfficeOrderHistory', params:{event: _vm.$route.params.event, boxOffice: _vm.$route.params.boxOffice}}}},[_c('svg',{attrs:{\"fill\":\"#ffffff\",\"height\":\"28\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512C201.7 512 151.2 495 109.7 466.1C95.2 455.1 91.64 436 101.8 421.5C111.9 407 131.8 403.5 146.3 413.6C177.4 435.3 215.2 448 256 448C362 448 448 362 448 256C448 149.1 362 64 256 64C202.1 64 155 85.46 120.2 120.2L151 151C166.1 166.1 155.4 192 134.1 192H24C10.75 192 0 181.3 0 168V57.94C0 36.56 25.85 25.85 40.97 40.97L74.98 74.98C121.3 28.69 185.3 0 255.1 0L256 0zM256 128C269.3 128 280 138.7 280 152V246.1L344.1 311C354.3 320.4 354.3 335.6 344.1 344.1C335.6 354.3 320.4 354.3 311 344.1L239 272.1C234.5 268.5 232 262.4 232 256V152C232 138.7 242.7 128 256 128V128z\"}})])]):_vm._e(),(_vm.isOrderHistory)?_c('router-link',{attrs:{\"to\":{name: 'BoxOfficePlaceOrder', params:{event: _vm.$route.params.event, boxOffice: _vm.$route.params.boxOffice}}}},[_c('svg',{attrs:{\"fill\":\"#ffffff\",\"height\":\"28\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512C201.7 512 151.2 495 109.7 466.1C95.2 455.1 91.64 436 101.8 421.5C111.9 407 131.8 403.5 146.3 413.6C177.4 435.3 215.2 448 256 448C362 448 448 362 448 256C448 149.1 362 64 256 64C202.1 64 155 85.46 120.2 120.2L151 151C166.1 166.1 155.4 192 134.1 192H24C10.75 192 0 181.3 0 168V57.94C0 36.56 25.85 25.85 40.97 40.97L74.98 74.98C121.3 28.69 185.3 0 255.1 0L256 0zM256 128C269.3 128 280 138.7 280 152V246.1L344.1 311C354.3 320.4 354.3 335.6 344.1 344.1C335.6 354.3 320.4 354.3 311 344.1L239 272.1C234.5 268.5 232 262.4 232 256V152C232 138.7 242.7 128 256 128V128z\"}})])]):_vm._e()],1),_c('b-col',{staticStyle:{\"text-align\":\"center\",\"line-height\":\"45px\"}},[_c('b-img',{attrs:{\"height\":\"35px\",\"src\":require('../assets/logo-light.png')}})],1),_c('b-col',{staticStyle:{\"line-height\":\"45px\"}},[(_vm.isPlaceOrder)?_c('a',{staticStyle:{\"float\":\"right\"},attrs:{\"href\":\"javascript:\"},on:{\"click\":function($event){return _vm.$root.$emit('bv::show::modal', 'place-order-setting', $event.target)}}},[_c('svg',{attrs:{\"fill\":\"#ffffff\",\"height\":\"28\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M331.8 224.1c28.29 0 54.88 10.99 74.86 30.97l19.59 19.59c40.01-17.74 71.25-53.3 81.62-96.65c5.725-23.92 5.34-47.08 .2148-68.4c-2.613-10.88-16.43-14.51-24.34-6.604l-68.9 68.9h-75.6V97.2l68.9-68.9c7.912-7.912 4.275-21.73-6.604-24.34c-21.32-5.125-44.48-5.51-68.4 .2148c-55.3 13.23-98.39 60.22-107.2 116.4C224.5 128.9 224.2 137 224.3 145l82.78 82.86C315.2 225.1 323.5 224.1 331.8 224.1zM384 278.6c-23.16-23.16-57.57-27.57-85.39-13.9L191.1 158L191.1 95.99l-127.1-95.99L0 63.1l96 127.1l62.04 .0077l106.7 106.6c-13.67 27.82-9.251 62.23 13.91 85.39l117 117.1c14.62 14.5 38.21 14.5 52.71-.0016l52.75-52.75c14.5-14.5 14.5-38.08-.0016-52.71L384 278.6zM227.9 307L168.7 247.9l-148.9 148.9c-26.37 26.37-26.37 69.08 0 95.45C32.96 505.4 50.21 512 67.5 512s34.54-6.592 47.72-19.78l119.1-119.1C225.5 352.3 222.6 329.4 227.9 307zM64 472c-13.25 0-24-10.75-24-24c0-13.26 10.75-24 24-24S88 434.7 88 448C88 461.3 77.25 472 64 472z\"}})])]):_vm._e()])],1)],1)])],1),_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{attrs:{\"id\":\"content\"}},[_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid id=\"app\">\n <b-row no-gutters>\n <b-col>\n <div class=\"nav-wrap\">\n <b-row style=\"height: 45px;\">\n <b-col style=\"line-height:45px\">\n <router-link v-if=\"isPlaceOrder\" :to=\"{name: 'BoxOfficeOrderHistory', params:{event: $route.params.event, boxOffice: $route.params.boxOffice}}\">\n <svg fill=\"#ffffff\" height=\"28\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d=\"M256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512C201.7 512 151.2 495 109.7 466.1C95.2 455.1 91.64 436 101.8 421.5C111.9 407 131.8 403.5 146.3 413.6C177.4 435.3 215.2 448 256 448C362 448 448 362 448 256C448 149.1 362 64 256 64C202.1 64 155 85.46 120.2 120.2L151 151C166.1 166.1 155.4 192 134.1 192H24C10.75 192 0 181.3 0 168V57.94C0 36.56 25.85 25.85 40.97 40.97L74.98 74.98C121.3 28.69 185.3 0 255.1 0L256 0zM256 128C269.3 128 280 138.7 280 152V246.1L344.1 311C354.3 320.4 354.3 335.6 344.1 344.1C335.6 354.3 320.4 354.3 311 344.1L239 272.1C234.5 268.5 232 262.4 232 256V152C232 138.7 242.7 128 256 128V128z\"/></svg>\n </router-link>\n <router-link v-if=\"isOrderHistory\" :to=\"{name: 'BoxOfficePlaceOrder', params:{event: $route.params.event, boxOffice: $route.params.boxOffice}}\">\n <svg fill=\"#ffffff\" height=\"28\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d=\"M256 0C397.4 0 512 114.6 512 256C512 397.4 397.4 512 256 512C201.7 512 151.2 495 109.7 466.1C95.2 455.1 91.64 436 101.8 421.5C111.9 407 131.8 403.5 146.3 413.6C177.4 435.3 215.2 448 256 448C362 448 448 362 448 256C448 149.1 362 64 256 64C202.1 64 155 85.46 120.2 120.2L151 151C166.1 166.1 155.4 192 134.1 192H24C10.75 192 0 181.3 0 168V57.94C0 36.56 25.85 25.85 40.97 40.97L74.98 74.98C121.3 28.69 185.3 0 255.1 0L256 0zM256 128C269.3 128 280 138.7 280 152V246.1L344.1 311C354.3 320.4 354.3 335.6 344.1 344.1C335.6 354.3 320.4 354.3 311 344.1L239 272.1C234.5 268.5 232 262.4 232 256V152C232 138.7 242.7 128 256 128V128z\"/></svg>\n </router-link>\n </b-col>\n <b-col style=\"text-align:center;line-height:45px\">\n <b-img height=\"35px\" :src=\"require('../assets/logo-light.png')\"></b-img>\n </b-col>\n <b-col style=\"line-height:45px\">\n <a v-if=\"isPlaceOrder\" @click=\"$root.$emit('bv::show::modal', 'place-order-setting', $event.target)\" href=\"javascript:\" style=\"float: right;\">\n <svg fill=\"#ffffff\" height=\"28\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d=\"M331.8 224.1c28.29 0 54.88 10.99 74.86 30.97l19.59 19.59c40.01-17.74 71.25-53.3 81.62-96.65c5.725-23.92 5.34-47.08 .2148-68.4c-2.613-10.88-16.43-14.51-24.34-6.604l-68.9 68.9h-75.6V97.2l68.9-68.9c7.912-7.912 4.275-21.73-6.604-24.34c-21.32-5.125-44.48-5.51-68.4 .2148c-55.3 13.23-98.39 60.22-107.2 116.4C224.5 128.9 224.2 137 224.3 145l82.78 82.86C315.2 225.1 323.5 224.1 331.8 224.1zM384 278.6c-23.16-23.16-57.57-27.57-85.39-13.9L191.1 158L191.1 95.99l-127.1-95.99L0 63.1l96 127.1l62.04 .0077l106.7 106.6c-13.67 27.82-9.251 62.23 13.91 85.39l117 117.1c14.62 14.5 38.21 14.5 52.71-.0016l52.75-52.75c14.5-14.5 14.5-38.08-.0016-52.71L384 278.6zM227.9 307L168.7 247.9l-148.9 148.9c-26.37 26.37-26.37 69.08 0 95.45C32.96 505.4 50.21 512 67.5 512s34.54-6.592 47.72-19.78l119.1-119.1C225.5 352.3 222.6 329.4 227.9 307zM64 472c-13.25 0-24-10.75-24-24c0-13.26 10.75-24 24-24S88 434.7 88 448C88 461.3 77.25 472 64 472z\"/></svg>\n </a>\n </b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n <b-row no-gutters>\n <b-col id=\"content\">\n <router-view></router-view>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport {mapActions} from 'vuex'\nexport default {\n name: 'App',\n methods: {\n logout() {\n this.$store.commit('boxOfficeLogout')\n },\n dismissSuccess() {\n this.$store.commit('success', false)\n },\n ...mapActions(['loadBoxOfficeUser'])\n },\n created() {\n this.loadBoxOfficeUser()\n },\n computed: {\n isPlaceOrder() {\n return this.$route.name === 'BoxOfficePlaceOrder'\n },\n isOrderHistory(){\n return this.$route.name === 'BoxOfficeOrderHistory'\n }\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n$shadow-color: #52575D19;\n$blue-color: #193E58;\n$orange-color: #F0B52D;\n$text-color: #4D4D4D;\n$element-height: 50px;\n$container-distance: 2rem;\n$default-border-radius: 6px;\n$button-border-radius: 6px;\n$element-border-color: #F5F5F5;\n$row-hover-color: rgba(240, 181, 45, 0.06);\n$label-text-color: #4D4D4D;\n$label-text-size: 16px;\n$label-font-weight: 400;\n$field-border-radius: 4px;\n$field-height: 50px;\n$field-border-thickness: 2px;\n$field-border-color: #EEEEEE;\n$field-text-color: #4D4D4D;\n$field-text-size: 13px;\n\np, h1, h2, h3, h4, div, span {\n color: $text-color;\n}\n\n#app {\n padding: 0;\n}\nbody {\n background-color: #F5F5F5 !important;;\n}\n#content {\n height: auto;\n min-height: 90vh;\n padding: 1rem;\n background-color: #F5F5F5\n}\nul.pagination{\n justify-content: center;\n margin-top:30px\n}\nul.pagination .page-item.active .page-link{\n background-color:$blue-color;\n border-color:$blue-color\n}\nul.pagination .page-link{\n color:#808080\n}\n\n.vertical-align{\n display:flex;\n align-self: center;\n}\n\n.container-distance {\n margin-bottom: $container-distance !important;\n}\n\n.btn.btn-save {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $button-border-radius;\n padding: 5px 40px;\n font-weight: bold\n}\n\n.btn.btn-new {\n background-color: #193E58;\n border-radius: $button-border-radius;\n color: #FFF;\n padding: 15px 20px;\n font-weight: bold\n}\n\n.btn.btn-orange{\n background-color:$orange-color;\n border-radius: $button-border-radius;\n color:#FFF;\n border:0px\n}\n.btn.btn-orange-border{\n background-color:#FFF;\n padding:5px 20px;\n font-size:13px;\n font-weight:bold;\n border:2px solid $orange-color;\n border-radius: $button-border-radius;\n color:#808080\n}\n\n.btn.btn-row-edit {\n background-color: #FFF;\n border-radius: $button-border-radius;\n border: 2px solid #F5F5F5;\n color: #808080;\n padding: 5px 20px;\n font-size: 13px;\n font-weight: bold\n}\n\n.btn.btn-row-edit:hover {\n border-color: $orange-color;\n background-color: $orange-color;\n color: #FFF\n}\n\n.modal-header {\n background-color: $blue-color;\n\n .modal-title, .close {\n color: #FFF\n }\n}\n\n.button-row-included {\n margin-top: 73px\n}\n\n.table th, .table td {\n vertical-align: middle !important;\n}\n\n.col-form-label {\n font-size: $label-text-size;\n color: $label-text-color;\n font-weight: $label-font-weight;\n}\n\ninput.form-control, select.form-control, select.custom-select {\n border-radius: $field-border-radius;\n border: $field-border-thickness solid $field-border-color;\n height: $field-height;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\ntextarea.form-control {\n border: $field-border-thickness solid $field-border-color;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\n#dropdown-right {\n width: 50px;\n background-color: #fff;\n}\n#dropdown-right .dropdown-toggle {\n background-color: #fff;\n}\n#dropdown-right ul {\n min-width: 36px;\n}\n.lang-flag, .selected-lang {\n border-radius: 50%;\n width: 36px;\n}\n.lang-flag {\n border: 3px solid #fff;\n}\n.selected-lang {\n border: 3px solid #193E58;\n}\n#dropdown-right a {\n padding: 0.25rem 0.9rem;\n}\n\n.content-main-container {\n\n .title-container {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $default-border-radius $default-border-radius 0 0;\n padding: 10.5px 25px;\n font-weight: bold\n }\n\n .content-container {\n background-color: #FFF;\n padding: 25px;\n border-radius: 0 0 $default-border-radius $default-border-radius\n }\n\n}\n\n.card {\n border: none !important;\n\n .card-body {\n padding: 0 !important;\n }\n\n .card-title {\n background-color: $blue-color;\n color: white;\n font-weight: bold;\n padding: 10px;\n font-size: 1rem;\n border-top-right-radius: $default-border-radius;\n border-top-left-radius: $default-border-radius;\n }\n\n .card-text {\n padding: 10px;\n }\n\n}\n\n\ntable.b-table {\n\n thead {\n background-color: $blue-color;\n\n th {\n border-bottom: 0px;\n padding: 10px 0.75rem\n }\n\n tr th:first-of-type {\n padding-left: 25px\n }\n\n tr th:first-child {\n border-top-left-radius: $default-border-radius;\n }\n\n tr th:last-child {\n border-top-right-radius: $default-border-radius;\n }\n\n tr th div {\n color: #FFF\n }\n }\n\n tbody {\n tr {\n background-color: #FFF;\n border-bottom: 1px solid $element-border-color;\n }\n\n tr:hover {\n background-color: $row-hover-color;\n\n .btn.btn-row-edit {\n background-color: $orange-color;\n color: #FFF;\n border-color: $orange-color\n }\n }\n\n tr td:first-of-type {\n padding-left: 25px\n }\n\n tr:last-of-type {\n border-bottom: 0\n }\n\n tr td:first-child {\n border-bottom-left-radius: $default-border-radius;\n }\n\n tr td:last-child {\n border-bottom-right-radius: $default-border-radius;\n }\n }\n\n}\n\n#app-top-bar {\n padding: 5px 30px;\n margin-bottom: $container-distance;\n\n #app-welcome-message {\n font-size: 18px;\n }\n\n #app-top-bar-right-col {\n display: flex;\n justify-content: flex-end;\n\n\n #app-username {\n align-self: center\n }\n\n #app-user-nav a:focus, #app-user-nav li:focus {\n border: 0\n }\n }\n}\n\n.default-container-layout {\n background-color: #FFF !important;\n border-radius: 6px !important;\n box-shadow: 0px 3px 6px $shadow-color !important;\n}\n.nav-wrap {\n background: #193E58;\n padding: 0 $container-distance;\n}\n#nav-wrap {\n background: #193E58;\n\n .nav-item {\n display: block;\n width: 100%;\n border-bottom: 1px solid #567184\n }\n\n .nav-link {\n color: white;\n display: block;\n width: 100%;\n height: 70px;\n line-height: 70px;\n padding: 0 20px\n }\n\n .nav-link img {\n margin-top: -5px;\n margin-right: 15px\n }\n\n .active {\n background: white;\n color: #193E58;\n }\n}\n\n$theme-colors: (\n \"primary\": #F0B52D\n);\n// Bootstrap and its default variables\n@import '../../node_modules/bootstrap/scss/bootstrap';\n// BootstrapVue and its default variables\n@import '../../node_modules/bootstrap-vue/src/index.scss';\n\n* {\n font-family: Roboto, sans-serif;\n}\n\n\n@media only screen and (max-width: 600px) {\n #nav-wrap {\n position: absolute;\n width: 230px;\n height: 100vh\n }\n}\n\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeDefault.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./BoxOfficeDefault.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./BoxOfficeDefault.vue?vue&type=template&id=7c3e6814&scoped=true\"\nimport script from \"./BoxOfficeDefault.vue?vue&type=script&lang=js\"\nexport * from \"./BoxOfficeDefault.vue?vue&type=script&lang=js\"\nimport style0 from \"./BoxOfficeDefault.vue?vue&type=style&index=0&id=7c3e6814&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c3e6814\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\",\"id\":\"app\"}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',[_c('div',{staticClass:\"nav-wrap\"},[_c('b-row',{staticStyle:{\"height\":\"45px\"}},[_c('b-col',{staticStyle:{\"line-height\":\"45px\"}}),_c('b-col',{staticStyle:{\"text-align\":\"center\",\"line-height\":\"45px\"}},[_c('b-img',{attrs:{\"height\":\"35px\",\"src\":require('../assets/logo-light.png')}})],1),_c('b-col',{staticStyle:{\"line-height\":\"45px\"}},[_c('a',{staticStyle:{\"float\":\"right\",\"width\":\"25px\"},attrs:{\"href\":\"javascript:\"},on:{\"click\":_vm.logout}},[_c('svg',{attrs:{\"fill\":\"#ffffff\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 512 512\"}},[_c('path',{attrs:{\"d\":\"M96 480h64C177.7 480 192 465.7 192 448S177.7 416 160 416H96c-17.67 0-32-14.33-32-32V128c0-17.67 14.33-32 32-32h64C177.7 96 192 81.67 192 64S177.7 32 160 32H96C42.98 32 0 74.98 0 128v256C0 437 42.98 480 96 480zM504.8 238.5l-144.1-136c-6.975-6.578-17.2-8.375-26-4.594c-8.803 3.797-14.51 12.47-14.51 22.05l-.0918 72l-128-.001c-17.69 0-32.02 14.33-32.02 32v64c0 17.67 14.34 32 32.02 32l128 .001l.0918 71.1c0 9.578 5.707 18.25 14.51 22.05c8.803 3.781 19.03 1.984 26-4.594l144.1-136C514.4 264.4 514.4 247.6 504.8 238.5z\"}})])])])],1)],1)])],1),_c('b-row',{attrs:{\"no-gutters\":\"\"}},[_c('b-col',{attrs:{\"id\":\"content\"}},[_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid id=\"app\">\n <b-row no-gutters>\n <b-col>\n <div class=\"nav-wrap\">\n <b-row style=\"height: 45px;\">\n <b-col style=\"line-height:45px\">\n </b-col>\n <b-col style=\"text-align:center;line-height:45px\">\n <b-img height=\"35px\" :src=\"require('../assets/logo-light.png')\"></b-img>\n </b-col>\n <b-col style=\"line-height:45px\">\n <a @click=\"logout\" href=\"javascript:\" style=\"float: right;width:25px\">\n <svg fill=\"#ffffff\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path d=\"M96 480h64C177.7 480 192 465.7 192 448S177.7 416 160 416H96c-17.67 0-32-14.33-32-32V128c0-17.67 14.33-32 32-32h64C177.7 96 192 81.67 192 64S177.7 32 160 32H96C42.98 32 0 74.98 0 128v256C0 437 42.98 480 96 480zM504.8 238.5l-144.1-136c-6.975-6.578-17.2-8.375-26-4.594c-8.803 3.797-14.51 12.47-14.51 22.05l-.0918 72l-128-.001c-17.69 0-32.02 14.33-32.02 32v64c0 17.67 14.34 32 32.02 32l128 .001l.0918 71.1c0 9.578 5.707 18.25 14.51 22.05c8.803 3.781 19.03 1.984 26-4.594l144.1-136C514.4 264.4 514.4 247.6 504.8 238.5z\"/></svg>\n </a>\n </b-col>\n </b-row>\n </div>\n </b-col>\n </b-row>\n <b-row no-gutters>\n <b-col id=\"content\">\n <router-view></router-view>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nimport {mapActions} from 'vuex'\nexport default {\n name: 'App',\n methods: {\n logout() {\n this.$store.commit('scannerTerminalLogout')\n },\n dismissSuccess() {\n this.$store.commit('success', false)\n },\n ...mapActions(['loadScannerTerminalUser'])\n },\n created() {\n this.loadScannerTerminalUser()\n }\n}\n</script>\n\n<style lang=\"scss\" scoped>\n\n$shadow-color: #52575D19;\n$blue-color: #193E58;\n$orange-color: #F0B52D;\n$text-color: #4D4D4D;\n$element-height: 50px;\n$container-distance: 2rem;\n$default-border-radius: 6px;\n$button-border-radius: 6px;\n$element-border-color: #F5F5F5;\n$row-hover-color: rgba(240, 181, 45, 0.06);\n$label-text-color: #4D4D4D;\n$label-text-size: 16px;\n$label-font-weight: 400;\n$field-border-radius: 4px;\n$field-height: 50px;\n$field-border-thickness: 2px;\n$field-border-color: #EEEEEE;\n$field-text-color: #4D4D4D;\n$field-text-size: 13px;\n\np, h1, h2, h3, h4, div, span {\n color: $text-color;\n}\n\n#app {\n padding: 0;\n}\nbody {\n background-color: #F5F5F5 !important;;\n}\n#content {\n height: auto;\n min-height: 90vh;\n padding: 0rem;\n background-color: #F5F5F5\n}\nul.pagination{\n justify-content: center;\n margin-top:30px\n}\nul.pagination .page-item.active .page-link{\n background-color:$blue-color;\n border-color:$blue-color\n}\nul.pagination .page-link{\n color:#808080\n}\n\n.vertical-align{\n display:flex;\n align-self: center;\n}\n\n.container-distance {\n margin-bottom: $container-distance !important;\n}\n\n.btn.btn-save {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $button-border-radius;\n padding: 5px 40px;\n font-weight: bold\n}\n\n.btn.btn-new {\n background-color: #193E58;\n border-radius: $button-border-radius;\n color: #FFF;\n padding: 15px 20px;\n font-weight: bold\n}\n\n.btn.btn-orange{\n background-color:$orange-color;\n border-radius: $button-border-radius;\n color:#FFF;\n border:0px\n}\n.btn.btn-orange-border{\n background-color:#FFF;\n padding:5px 20px;\n font-size:13px;\n font-weight:bold;\n border:2px solid $orange-color;\n border-radius: $button-border-radius;\n color:#808080\n}\n\n.btn.btn-row-edit {\n background-color: #FFF;\n border-radius: $button-border-radius;\n border: 2px solid #F5F5F5;\n color: #808080;\n padding: 5px 20px;\n font-size: 13px;\n font-weight: bold\n}\n\n.btn.btn-row-edit:hover {\n border-color: $orange-color;\n background-color: $orange-color;\n color: #FFF\n}\n\n.modal-header {\n background-color: $blue-color;\n\n .modal-title, .close {\n color: #FFF\n }\n}\n\n.button-row-included {\n margin-top: 73px\n}\n\n.table th, .table td {\n vertical-align: middle !important;\n}\n\n.col-form-label {\n font-size: $label-text-size;\n color: $label-text-color;\n font-weight: $label-font-weight;\n}\n\ninput.form-control, select.form-control, select.custom-select {\n border-radius: $field-border-radius;\n border: $field-border-thickness solid $field-border-color;\n height: $field-height;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\ntextarea.form-control {\n border: $field-border-thickness solid $field-border-color;\n color: $field-text-color;\n font-size: $field-text-size;\n}\n\n#dropdown-right {\n width: 50px;\n background-color: #fff;\n}\n#dropdown-right .dropdown-toggle {\n background-color: #fff;\n}\n#dropdown-right ul {\n min-width: 36px;\n}\n.lang-flag, .selected-lang {\n border-radius: 50%;\n width: 36px;\n}\n.lang-flag {\n border: 3px solid #fff;\n}\n.selected-lang {\n border: 3px solid #193E58;\n}\n#dropdown-right a {\n padding: 0.25rem 0.9rem;\n}\n\n.content-main-container {\n\n .title-container {\n background-color: $blue-color;\n color: #FFF;\n border-radius: $default-border-radius $default-border-radius 0 0;\n padding: 10.5px 25px;\n font-weight: bold\n }\n\n .content-container {\n background-color: #FFF;\n padding: 25px;\n border-radius: 0 0 $default-border-radius $default-border-radius\n }\n\n}\n\n.card {\n border: none !important;\n\n .card-body {\n padding: 0 !important;\n }\n\n .card-title {\n background-color: $blue-color;\n color: white;\n font-weight: bold;\n padding: 10px;\n font-size: 1rem;\n border-top-right-radius: $default-border-radius;\n border-top-left-radius: $default-border-radius;\n }\n\n .card-text {\n padding: 10px;\n }\n\n}\n\n\ntable.b-table {\n\n thead {\n background-color: $blue-color;\n\n th {\n border-bottom: 0px;\n padding: 10px 0.75rem\n }\n\n tr th:first-of-type {\n padding-left: 25px\n }\n\n tr th:first-child {\n border-top-left-radius: $default-border-radius;\n }\n\n tr th:last-child {\n border-top-right-radius: $default-border-radius;\n }\n\n tr th div {\n color: #FFF\n }\n }\n\n tbody {\n tr {\n background-color: #FFF;\n border-bottom: 1px solid $element-border-color;\n }\n\n tr:hover {\n background-color: $row-hover-color;\n\n .btn.btn-row-edit {\n background-color: $orange-color;\n color: #FFF;\n border-color: $orange-color\n }\n }\n\n tr td:first-of-type {\n padding-left: 25px\n }\n\n tr:last-of-type {\n border-bottom: 0\n }\n\n tr td:first-child {\n border-bottom-left-radius: $default-border-radius;\n }\n\n tr td:last-child {\n border-bottom-right-radius: $default-border-radius;\n }\n }\n\n}\n\n#app-top-bar {\n padding: 5px 30px;\n margin-bottom: $container-distance;\n\n #app-welcome-message {\n font-size: 18px;\n }\n\n #app-top-bar-right-col {\n display: flex;\n justify-content: flex-end;\n\n\n #app-username {\n align-self: center\n }\n\n #app-user-nav a:focus, #app-user-nav li:focus {\n border: 0\n }\n }\n}\n\n.default-container-layout {\n background-color: #FFF !important;\n border-radius: 6px !important;\n box-shadow: 0px 3px 6px $shadow-color !important;\n}\n.nav-wrap {\n background: #193E58;\n padding: 0 $container-distance;\n}\n#nav-wrap {\n background: #193E58;\n\n .nav-item {\n display: block;\n width: 100%;\n border-bottom: 1px solid #567184\n }\n\n .nav-link {\n color: white;\n display: block;\n width: 100%;\n height: 70px;\n line-height: 70px;\n padding: 0 20px\n }\n\n .nav-link img {\n margin-top: -5px;\n margin-right: 15px\n }\n\n .active {\n background: white;\n color: #193E58;\n }\n}\n\n$theme-colors: (\n \"primary\": #F0B52D\n);\n// Bootstrap and its default variables\n@import '../../node_modules/bootstrap/scss/bootstrap';\n// BootstrapVue and its default variables\n@import '../../node_modules/bootstrap-vue/src/index.scss';\n\n* {\n font-family: Roboto, sans-serif;\n}\n\n\n@media only screen and (max-width: 600px) {\n #nav-wrap {\n position: absolute;\n width: 230px;\n height: 100vh\n }\n}\n\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalDefault.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ScannerTerminalDefault.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ScannerTerminalDefault.vue?vue&type=template&id=83f44fbc&scoped=true\"\nimport script from \"./ScannerTerminalDefault.vue?vue&type=script&lang=js\"\nexport * from \"./ScannerTerminalDefault.vue?vue&type=script&lang=js\"\nimport style0 from \"./ScannerTerminalDefault.vue?vue&type=style&index=0&id=83f44fbc&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"83f44fbc\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('b-container',{attrs:{\"fluid\":\"\"}},[_c('b-row',[_c('b-col',{staticClass:\"vh-100\",attrs:{\"align-v\":\"center\"}},[_c('router-view')],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <b-container fluid>\n <b-row>\n <b-col align-v=\"center\" class=\"vh-100\">\n <router-view></router-view>\n </b-col>\n </b-row>\n </b-container>\n</template>\n\n<script>\nexport default {\n name: \"Static\"\n}\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Static.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Static.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Static.vue?vue&type=template&id=18711cb9&scoped=true\"\nimport script from \"./Static.vue?vue&type=script&lang=js\"\nexport * from \"./Static.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"18711cb9\",\n null\n \n)\n\nexport default component.exports","<template>\n <div id=\"app\">\n <shop v-if=\"layout === 'Shop'\"></shop>\n <login v-if=\"layout === 'Login'\"></login>\n <default v-if=\"layout === 'Default'\"></default>\n <BoxOfficeDefault v-if=\"layout === 'BoxOfficeDefault'\"></BoxOfficeDefault>\n <ScannerTerminalDefault v-if=\"layout === 'ScannerTerminalDefault'\"></ScannerTerminalDefault>\n <Static v-if=\"layout === 'Static'\"></Static>\n </div>\n</template>\n\n<script>\nimport Default from '@/layouts/Default'\nimport Shop from '@/layouts/Shop'\nimport Login from '@/layouts/Login'\nimport BoxOfficeDefault from '@/layouts/BoxOfficeDefault'\nimport ScannerTerminalDefault from '@/layouts/ScannerTerminalDefault'\nimport Static from \"@/layouts/Static.vue\";\nimport {mapState} from 'vuex'\n\nexport default {\n components: {\n Shop, Default, Login, BoxOfficeDefault, ScannerTerminalDefault, Static\n },\n name: 'App',\n data() {\n return {\n layouts: {\n Index: 'Shop',\n ViewPointOfSale: 'Shop',\n OrderEnterPersonalDetails: 'Shop',\n OrderAdditionalProducts: 'Shop',\n OrderSelectPaymentMethod: 'Shop',\n OrderSelectTimeslot: 'Shop',\n PayOrder: 'Shop',\n CustomerOrderOverview: 'Shop',\n CustomerOrderPending: 'Shop',\n AssignTickets: 'Shop',\n ClaimTicket: 'Shop',\n Login: 'Login',\n BoxOfficeLogin: 'Login',\n ScannerTerminalLogin: 'Login',\n OrderThankYou: 'Shop',\n OrderStatus: 'Shop',\n NotFound: 'Login',\n TermsConditions: 'Shop',\n TicketChanged: 'Shop',\n UserResetPassword: 'Login',\n Signup: 'Static',\n SignupConfirmation: 'Static',\n TicketLost: 'Static'\n }\n }\n },\n watch: {\n '$route'() {\n this.setLayout()\n }\n },\n computed: {\n ...mapState(['layout'])\n },\n methods: {\n setLayout() {\n let name = this.$route.name\n let layout = this.layouts[name] ? this.layouts[name] : 'Default'\n if(name !== 'BoxOfficeLogin' && this.$route.path.startsWith('/box-office')) {\n this.$store.commit('setLayout', 'BoxOfficeDefault')\n } else if( name !== 'ScannerTerminalLogin' && this.$route.path.startsWith('/scanner-terminal') ){\n this.$store.commit('setLayout', 'ScannerTerminalDefault')\n } else {\n this.$store.commit('setLayout', layout)\n }\n }\n },\n created() {\n if (location.protocol !== 'https:' && location.port !== '8080') {\n location.replace(`https:${location.href.substring(location.protocol.length)}`);\n return\n }\n this.setLayout()\n }\n}\n</script>\n<style>\n.font-weight-bold{\n font-weight:600!important\n}\n\n.SmallDiv{\n width: 16.6666666667%;\n}\n.bigDiv{\n width: 83.333333%;\n}\n@media (max-width:1750px) {\n .SmallDiv{\n width: 20%;\n}\n.bigDiv{\n width: 80%;\n}\n}\n@media (max-width:1550px) {\n .SmallDiv{\n width: 22%;\n}\n.bigDiv{\n width: 78%;\n}\n}\n@media (max-width:1450px) {\n .SmallDiv{\n width: 25%;\n}\n.bigDiv{\n width: 75%;\n}\n}\n@media (max-width:1250px) {\n .SmallDiv{\n width: 30%;\n}\n.bigDiv{\n width: 70%;\n}\n}\n@media (max-width:1150px) {\n .SmallDiv{\n width: 35%;\n}\n.bigDiv{\n width: 65%;\n}\n}\n@media (max-width:992px) {\n .SmallDiv{\n width: 100%;\n}\n.bigDiv{\n width: 100%;\n}\n.content-main-container{\n margin-top: 0!important;\n}\n}\n.b-popover .popover-header{\n display: none!important;\n}\n.vs__selected{\n background: #193e58!important;\n color: white!important;\n}\n.vs__deselect{\n fill:white!important\n}\n.filterTable .table.b-table > thead > tr > [aria-sort] {\n background-position: right calc(2.4rem / 2) center;\n}\n.bs-popover-bottom > .arrow::after{\nborder-bottom-color: #193e58!important;\n}\n.filterTable table.b-table tbody tr{\n font-size: 13px!important;\n}\n@media (max-width:1000px) {\n .email-wrapper \n {\n width: 100%;\n overflow: hidden;\n }\n .email-wrapper > tbody:first-of-type tr:nth-of-type(2) td >table{\n width: 90%;\n margin:auto\n }\n .email-wrapper > tbody:first-of-type tr:nth-of-type(2) td >table table{\n width: 100%;\n margin:auto\n }\n .email-wrapper tbody tr:nth-of-type(2) td table h1{\n font-size: 2rem;\n }\n .email-wrapper tbody tr:nth-of-type(2) td table p{\n font-size:.9rem;\n }\n .email-wrapper tbody tr:nth-of-type(2) td table p table tbody table{\n margin: 0!important;\n width:100%;\n }\n .email-wrapper .button{\n padding: 5px 10px!important;\n }\n .email-wrapper > tbody:first-of-type tr:nth-of-type(2) td >table table:last-of-type td{\n font-size:.8rem;\n }\n\n}\n*, h1, table tr td, p{\n font-family: Roboto, sans-serif!important;\n}\n table tr td,p{\n color: #808080!important;\n}\n.scanner-terminal-tickets-table tbody tr:hover {\n background-color: #ffffff !important;\n}\n</style>\n","import mod from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=f2eb1710\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=f2eb1710&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/vue-loader-v15/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","import Vue from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\nimport { BootstrapVue, IconsPlugin } from 'bootstrap-vue'\nimport VueMoment from 'vue-moment'\nimport VueMeta from 'vue-meta'\nimport i18n from './i18n'\nimport moment from 'moment-timezone'\nimport VueSidebarMenu from 'vue-sidebar-menu'\nimport 'vue-sidebar-menu/dist/vue-sidebar-menu.css'\nimport VueApexCharts from 'vue-apexcharts'\nimport {ColorPicker, ColorPanel} from 'one-colorpicker'\nimport vSelect from 'vue-select'\nimport 'vue-select/dist/vue-select.css';\nimport { VueSpinners } from '@saeris/vue-spinners'\n\nmoment.tz.setDefault('Europe/Amsterdam');\n\nVue.config.productionTip = false\nVue.use(BootstrapVue)\nVue.use(IconsPlugin)\nVue.use(VueMoment)\nVue.use(VueSidebarMenu)\nVue.use(VueApexCharts)\nVue.use(ColorPanel)\nVue.use(ColorPicker)\nVue.use(VueSpinners)\n\nVue.component('pagination', require('laravel-vue-pagination'));\nVue.component('apexchart', VueApexCharts)\nVue.component('v-select', vSelect)\n\n\nVue.filter('currency', function(value){\n return '€ ' + parseFloat(value).toLocaleString('nl-NL', {minimumFractionDigits: 2})\n})\n\nVue.filter('time_format', function(value){\n return moment(value).format('HH:mm')\n})\n\nVue.filter('date_time', function(value){\n return moment(value).format('DD-MM-YYYY HH:mm')\n})\n\nVue.filter('date_written', function(value){\n return moment(value).format('ddd D MMMM YYYY')\n})\n\nVue.filter('date_full', function(value){\n return moment(value).format('dddd D MMMM YYYY HH:mm')\n})\n\nVue.mixin({\n methods: {\n $can(action) {\n if(!this.$store.state.user) {\n return false;\n }\n\n return this.$store.state.user?.permissions.includes(action)\n }\n }\n})\n\nVue.use(VueMeta)\n\nnew Vue({\n render: h => h(App),\n router,\n i18n,\n store\n}).$mount('#app')\n","var map = {\n\t\"./af.json\": 8514,\n\t\"./am.json\": 1627,\n\t\"./ar.json\": 2478,\n\t\"./az.json\": 6054,\n\t\"./be.json\": 7768,\n\t\"./bg.json\": 5818,\n\t\"./bn.json\": 205,\n\t\"./br.json\": 5313,\n\t\"./bs.json\": 5526,\n\t\"./ca.json\": 4029,\n\t\"./cs.json\": 467,\n\t\"./cy.json\": 3669,\n\t\"./da.json\": 1370,\n\t\"./de.json\": 2870,\n\t\"./dv.json\": 5767,\n\t\"./el.json\": 716,\n\t\"./en.json\": 1038,\n\t\"./es.json\": 8789,\n\t\"./et.json\": 6964,\n\t\"./eu.json\": 4999,\n\t\"./fa.json\": 4144,\n\t\"./fi.json\": 872,\n\t\"./fr.json\": 4477,\n\t\"./ga.json\": 4537,\n\t\"./gl.json\": 3898,\n\t\"./ha.json\": 7974,\n\t\"./he.json\": 1994,\n\t\"./hi.json\": 1070,\n\t\"./hr.json\": 311,\n\t\"./hu.json\": 8266,\n\t\"./hy.json\": 8942,\n\t\"./id.json\": 7048,\n\t\"./is.json\": 193,\n\t\"./it.json\": 6536,\n\t\"./ja.json\": 4668,\n\t\"./ka.json\": 7445,\n\t\"./kk.json\": 4243,\n\t\"./km.json\": 4441,\n\t\"./ko.json\": 8975,\n\t\"./ku.json\": 3425,\n\t\"./ky.json\": 7805,\n\t\"./lt.json\": 5305,\n\t\"./lv.json\": 4575,\n\t\"./mk.json\": 6709,\n\t\"./ml.json\": 8100,\n\t\"./mn.json\": 6806,\n\t\"./mr.json\": 8658,\n\t\"./ms.json\": 2637,\n\t\"./mt.json\": 8732,\n\t\"./nb.json\": 21,\n\t\"./nl.json\": 8255,\n\t\"./nn.json\": 729,\n\t\"./no.json\": 4366,\n\t\"./pl.json\": 2565,\n\t\"./ps.json\": 7116,\n\t\"./pt.json\": 653,\n\t\"./ro.json\": 1906,\n\t\"./ru.json\": 7512,\n\t\"./sd.json\": 2382,\n\t\"./sk.json\": 8395,\n\t\"./sl.json\": 9782,\n\t\"./so.json\": 1223,\n\t\"./sq.json\": 4797,\n\t\"./sr.json\": 3680,\n\t\"./sv.json\": 6940,\n\t\"./sw.json\": 4079,\n\t\"./ta.json\": 301,\n\t\"./tg.json\": 2292,\n\t\"./th.json\": 5885,\n\t\"./tr.json\": 9336,\n\t\"./tt.json\": 1841,\n\t\"./ug.json\": 6289,\n\t\"./uk.json\": 6413,\n\t\"./ur.json\": 778,\n\t\"./uz.json\": 7570,\n\t\"./vi.json\": 6440,\n\t\"./zh.json\": 5463\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 1495;","var map = {\n\t\"./af\": 5177,\n\t\"./af.js\": 5177,\n\t\"./ar\": 1509,\n\t\"./ar-dz\": 1488,\n\t\"./ar-dz.js\": 1488,\n\t\"./ar-kw\": 8676,\n\t\"./ar-kw.js\": 8676,\n\t\"./ar-ly\": 2353,\n\t\"./ar-ly.js\": 2353,\n\t\"./ar-ma\": 4496,\n\t\"./ar-ma.js\": 4496,\n\t\"./ar-ps\": 6947,\n\t\"./ar-ps.js\": 6947,\n\t\"./ar-sa\": 2682,\n\t\"./ar-sa.js\": 2682,\n\t\"./ar-tn\": 9756,\n\t\"./ar-tn.js\": 9756,\n\t\"./ar.js\": 1509,\n\t\"./az\": 5533,\n\t\"./az.js\": 5533,\n\t\"./be\": 8959,\n\t\"./be.js\": 8959,\n\t\"./bg\": 7777,\n\t\"./bg.js\": 7777,\n\t\"./bm\": 4903,\n\t\"./bm.js\": 4903,\n\t\"./bn\": 1290,\n\t\"./bn-bd\": 7357,\n\t\"./bn-bd.js\": 7357,\n\t\"./bn.js\": 1290,\n\t\"./bo\": 1545,\n\t\"./bo.js\": 1545,\n\t\"./br\": 1470,\n\t\"./br.js\": 1470,\n\t\"./bs\": 4429,\n\t\"./bs.js\": 4429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 6464,\n\t\"./cs.js\": 6464,\n\t\"./cv\": 3635,\n\t\"./cv.js\": 3635,\n\t\"./cy\": 4226,\n\t\"./cy.js\": 4226,\n\t\"./da\": 3601,\n\t\"./da.js\": 3601,\n\t\"./de\": 7853,\n\t\"./de-at\": 6111,\n\t\"./de-at.js\": 6111,\n\t\"./de-ch\": 4697,\n\t\"./de-ch.js\": 4697,\n\t\"./de.js\": 7853,\n\t\"./dv\": 708,\n\t\"./dv.js\": 708,\n\t\"./el\": 4691,\n\t\"./el.js\": 4691,\n\t\"./en-au\": 3872,\n\t\"./en-au.js\": 3872,\n\t\"./en-ca\": 8298,\n\t\"./en-ca.js\": 8298,\n\t\"./en-gb\": 6195,\n\t\"./en-gb.js\": 6195,\n\t\"./en-ie\": 6584,\n\t\"./en-ie.js\": 6584,\n\t\"./en-il\": 5543,\n\t\"./en-il.js\": 5543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 9402,\n\t\"./en-nz.js\": 9402,\n\t\"./en-sg\": 3004,\n\t\"./en-sg.js\": 3004,\n\t\"./eo\": 2934,\n\t\"./eo.js\": 2934,\n\t\"./es\": 7650,\n\t\"./es-do\": 838,\n\t\"./es-do.js\": 838,\n\t\"./es-mx\": 7730,\n\t\"./es-mx.js\": 7730,\n\t\"./es-us\": 6575,\n\t\"./es-us.js\": 6575,\n\t\"./es.js\": 7650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 527,\n\t\"./fi.js\": 527,\n\t\"./fil\": 5995,\n\t\"./fil.js\": 5995,\n\t\"./fo\": 2477,\n\t\"./fo.js\": 2477,\n\t\"./fr\": 5498,\n\t\"./fr-ca\": 6435,\n\t\"./fr-ca.js\": 6435,\n\t\"./fr-ch\": 7892,\n\t\"./fr-ch.js\": 7892,\n\t\"./fr.js\": 5498,\n\t\"./fy\": 7071,\n\t\"./fy.js\": 7071,\n\t\"./ga\": 1734,\n\t\"./ga.js\": 1734,\n\t\"./gd\": 217,\n\t\"./gd.js\": 217,\n\t\"./gl\": 7329,\n\t\"./gl.js\": 7329,\n\t\"./gom-deva\": 2124,\n\t\"./gom-deva.js\": 2124,\n\t\"./gom-latn\": 3383,\n\t\"./gom-latn.js\": 3383,\n\t\"./gu\": 5050,\n\t\"./gu.js\": 5050,\n\t\"./he\": 1713,\n\t\"./he.js\": 1713,\n\t\"./hi\": 3861,\n\t\"./hi.js\": 3861,\n\t\"./hr\": 6308,\n\t\"./hr.js\": 6308,\n\t\"./hu\": 609,\n\t\"./hu.js\": 609,\n\t\"./hy-am\": 7160,\n\t\"./hy-am.js\": 7160,\n\t\"./id\": 4063,\n\t\"./id.js\": 4063,\n\t\"./is\": 9374,\n\t\"./is.js\": 9374,\n\t\"./it\": 8383,\n\t\"./it-ch\": 1827,\n\t\"./it-ch.js\": 1827,\n\t\"./it.js\": 8383,\n\t\"./ja\": 3827,\n\t\"./ja.js\": 3827,\n\t\"./jv\": 9722,\n\t\"./jv.js\": 9722,\n\t\"./ka\": 1794,\n\t\"./ka.js\": 1794,\n\t\"./kk\": 7088,\n\t\"./kk.js\": 7088,\n\t\"./km\": 6870,\n\t\"./km.js\": 6870,\n\t\"./kn\": 4451,\n\t\"./kn.js\": 4451,\n\t\"./ko\": 3164,\n\t\"./ko.js\": 3164,\n\t\"./ku\": 8174,\n\t\"./ku-kmr\": 6181,\n\t\"./ku-kmr.js\": 6181,\n\t\"./ku.js\": 8174,\n\t\"./ky\": 8474,\n\t\"./ky.js\": 8474,\n\t\"./lb\": 9680,\n\t\"./lb.js\": 9680,\n\t\"./lo\": 5867,\n\t\"./lo.js\": 5867,\n\t\"./lt\": 5766,\n\t\"./lt.js\": 5766,\n\t\"./lv\": 9532,\n\t\"./lv.js\": 9532,\n\t\"./me\": 8076,\n\t\"./me.js\": 8076,\n\t\"./mi\": 1848,\n\t\"./mi.js\": 1848,\n\t\"./mk\": 306,\n\t\"./mk.js\": 306,\n\t\"./ml\": 3739,\n\t\"./ml.js\": 3739,\n\t\"./mn\": 9053,\n\t\"./mn.js\": 9053,\n\t\"./mr\": 6169,\n\t\"./mr.js\": 6169,\n\t\"./ms\": 3386,\n\t\"./ms-my\": 2297,\n\t\"./ms-my.js\": 2297,\n\t\"./ms.js\": 3386,\n\t\"./mt\": 7075,\n\t\"./mt.js\": 7075,\n\t\"./my\": 2264,\n\t\"./my.js\": 2264,\n\t\"./nb\": 2274,\n\t\"./nb.js\": 2274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 2572,\n\t\"./nl-be\": 3784,\n\t\"./nl-be.js\": 3784,\n\t\"./nl.js\": 2572,\n\t\"./nn\": 4566,\n\t\"./nn.js\": 4566,\n\t\"./oc-lnc\": 9330,\n\t\"./oc-lnc.js\": 9330,\n\t\"./pa-in\": 9849,\n\t\"./pa-in.js\": 9849,\n\t\"./pl\": 4418,\n\t\"./pl.js\": 4418,\n\t\"./pt\": 9834,\n\t\"./pt-br\": 8303,\n\t\"./pt-br.js\": 8303,\n\t\"./pt.js\": 9834,\n\t\"./ro\": 4457,\n\t\"./ro.js\": 4457,\n\t\"./ru\": 2271,\n\t\"./ru.js\": 2271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 3478,\n\t\"./se.js\": 3478,\n\t\"./si\": 7538,\n\t\"./si.js\": 7538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 6637,\n\t\"./sl.js\": 6637,\n\t\"./sq\": 6794,\n\t\"./sq.js\": 6794,\n\t\"./sr\": 5719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 5719,\n\t\"./ss\": 3619,\n\t\"./ss.js\": 3619,\n\t\"./sv\": 1011,\n\t\"./sv.js\": 1011,\n\t\"./sw\": 748,\n\t\"./sw.js\": 748,\n\t\"./ta\": 1025,\n\t\"./ta.js\": 1025,\n\t\"./te\": 1885,\n\t\"./te.js\": 1885,\n\t\"./tet\": 8861,\n\t\"./tet.js\": 8861,\n\t\"./tg\": 6571,\n\t\"./tg.js\": 6571,\n\t\"./th\": 5802,\n\t\"./th.js\": 5802,\n\t\"./tk\": 9527,\n\t\"./tk.js\": 9527,\n\t\"./tl-ph\": 9231,\n\t\"./tl-ph.js\": 9231,\n\t\"./tlh\": 1052,\n\t\"./tlh.js\": 1052,\n\t\"./tr\": 5096,\n\t\"./tr.js\": 5096,\n\t\"./tzl\": 9846,\n\t\"./tzl.js\": 9846,\n\t\"./tzm\": 1765,\n\t\"./tzm-latn\": 7711,\n\t\"./tzm-latn.js\": 7711,\n\t\"./tzm.js\": 1765,\n\t\"./ug-cn\": 8414,\n\t\"./ug-cn.js\": 8414,\n\t\"./uk\": 6618,\n\t\"./uk.js\": 6618,\n\t\"./ur\": 158,\n\t\"./ur.js\": 158,\n\t\"./uz\": 7609,\n\t\"./uz-latn\": 2475,\n\t\"./uz-latn.js\": 2475,\n\t\"./uz.js\": 7609,\n\t\"./vi\": 1135,\n\t\"./vi.js\": 1135,\n\t\"./x-pseudo\": 4051,\n\t\"./x-pseudo.js\": 4051,\n\t\"./yo\": 2218,\n\t\"./yo.js\": 2218,\n\t\"./zh-cn\": 2648,\n\t\"./zh-cn.js\": 2648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 1541,\n\t\"./zh-mo.js\": 1541,\n\t\"./zh-tw\": 304,\n\t\"./zh-tw.js\": 304\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 5358;","var map = {\n\t\"./de.png\": 9952,\n\t\"./en.png\": 44,\n\t\"./es.png\": 3785,\n\t\"./eye.png\": 9862,\n\t\"./fr.png\": 9185,\n\t\"./hamburger-white.png\": 3520,\n\t\"./hamburger.png\": 3728,\n\t\"./icon-batches-blue.png\": 6000,\n\t\"./icon-batches.png\": 5337,\n\t\"./icon-campaign-blue.png\": 3658,\n\t\"./icon-campaign.png\": 5627,\n\t\"./icon-dashboard-blue.png\": 8236,\n\t\"./icon-dashboard.png\": 5277,\n\t\"./icon-discount-codes-blue.png\": 4908,\n\t\"./icon-discount-codes.png\": 8957,\n\t\"./icon-events-blue.png\": 7057,\n\t\"./icon-events.png\": 3686,\n\t\"./icon-extension-blue.png\": 8565,\n\t\"./icon-extension.png\": 2626,\n\t\"./icon-layouts-blue.png\": 8879,\n\t\"./icon-layouts.png\": 1812,\n\t\"./icon-logout-blue.png\": 3222,\n\t\"./icon-orders-blue.png\": 8077,\n\t\"./icon-orders.png\": 3770,\n\t\"./icon-reports-blue.png\": 1315,\n\t\"./icon-reports.png\": 8336,\n\t\"./icon-scan-center-blue.png\": 7413,\n\t\"./icon-scan-center.png\": 1474,\n\t\"./icon-settings-blue.png\": 9793,\n\t\"./icon-settings.png\": 118,\n\t\"./nl.png\": 5095,\n\t\"./pt.png\": 5309,\n\t\"./trash.png\": 7495\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 5994;","var map = {\n\t\"./old-paynlsofort-grey.svg\": 7271,\n\t\"./old-paynlsofort.svg\": 7593,\n\t\"./paynlamex.svg\": 7393,\n\t\"./paynlapplepay.svg\": 4238,\n\t\"./paynlbancontact.svg\": 6385,\n\t\"./paynlfestivalcadeau.svg\": 8055,\n\t\"./paynlgiropay-grey.svg\": 1975,\n\t\"./paynlgiropay.svg\": 4345,\n\t\"./paynlgooglepay.svg\": 593,\n\t\"./paynlideal-grey.svg\": 933,\n\t\"./paynlideal.svg\": 3251,\n\t\"./paynlmaestro.svg\": 3395,\n\t\"./paynlpayconic.svg\": 6294,\n\t\"./paynlpaypal.svg\": 785,\n\t\"./paynlsofort-grey.svg\": 3151,\n\t\"./paynlsofort.svg\": 8273,\n\t\"./paynlstc-grey.svg\": 4944,\n\t\"./paynlstc.svg\": 8896,\n\t\"./paynlvisa.svg\": 8971\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 9264;","var map = {\n\t\"./de.json\": 5894,\n\t\"./en.json\": 4174,\n\t\"./es.json\": 6725,\n\t\"./fr.json\": 4605,\n\t\"./nl.json\": 4943,\n\t\"./pt.json\": 7741\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 5432;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkfrontend_fairtix\"] = self[\"webpackChunkfrontend_fairtix\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(3025); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["render","_vm","this","_c","_self","attrs","layout","_e","staticRenderFns","class","whitelabel_layout","user","staticClass","innerWidth","menu","on","onItemClick","slot","require","impersonating","_v","_s","$t","name","$event","logout","languageLabel","scopedSlots","_u","key","fn","language","proxy","changeLanguage","data","window","whitelabel_layout_name","methods","btnToggle","document","getElementById","click","$store","commit","dismissSuccess","lang","mapActions","watch","company","computed","push","title","icon","element","href","$can","params","id","unique_id","mapState","created","loadUser","component","logo","logo_url","toUpperCase","event","$route","pos","status","banner_url","style","starts_at","ends_at","getDateFormat","getDateFormatMobile","venue_id","venue","address","city","zip","country_code","countdown","_l","steps","step","i","route","done","stepperCols","label","phone","email_customer_questions","show_kvk_on_pos","kvk","staticStyle","userApi","constructor","axios","login","email","password","post","me","get","adminUpdate","update","companyId","loginAs","delete","userId","updateLanguage","resetPassword","passwordConfirmation","password_confirmation","whitelabel","error","model","value","callback","$$v","expression","type","indexOf","_k","keyCode","loading","curr_url","location","role","$router","api","then","token","state","signup_agreed_metadata","catch","finally","loadingList","ll","index","first_name","last_name","validateEmail","countries","country","payout_iban","ibanHolder","validatePassword","passwordValidation","length","er","terms","domProps","next","groupBy","collection","iteratee","reduce","result","Object","prototype","hasOwnProperty","call","baseAssignValue","getCookie","nameEQ","ca","cookie","split","c","charAt","substring","setCookie","days","expires","date","Date","setTime","getTime","toUTCString","setLocalStorage","localStorage","setItem","getLocalStorage","getItem","getEnvironment","isLocalhost","includes","validateSlug","test","validateUrl","toLowerCase","match","getOrderStatusPageUrl","orderId","orderSecret","url","object","defineProperty","accumulator","initAccum","arguments","arrayReduce","baseEach","array","iterable","deepClone","obj","JSON","parse","stringify","applyCampaignRule","campaign","price","parseFloat","r","rules","apply","set","sets","field","operation","discount_type","discount_value","toFixed","applyCampaignHideRule","hiderules","randomStr","characters","charactersLength","counter","Math","floor","random","isEdit","code","disabled","concat","valid","finished","t1","setTimeout","t2","t3","signup","iban_holder","int","setInterval","clearInterval","clearTimeout","mapMutations","currentEvents","getEventSoldTickets","percentage","scanned","box_offices","total_tickets","events","company_id","total_sold","total_guest_list","_f","total_revenue","sold_today","toLocaleString","guest_list_today","sold_yesterday","guest_list_yesterday","selectedEvent","closeModal","activeCarts","sold_tickets","tickets","group","ticket","ceil","sold","stock","query","product_id","activeCartInterval","mounted","getDashboardStatistics","timezone","moment","guess","response","map","assign","total_stocks","round","getDashboardCurrentEventStatistics","getEventActiveCarts","getActiveCarts","$bvModal","show","components","VueEllipseProgress","BounceLoader","NormalDashboard","CustomerSupportDashboard","directives","rawName","modifiers","createCompany","$set","domain","contact","vat","companies","item","adding","all","create","errors","console","handler","isUserCompany","showAddPaymentCostsModal","paymentMethodHistory","fee_percentage","fee_fixed_amount","showAddCompanyFeeModal","fees","fee_type","fee","showEditCompanyFeeModal","invoice_prefix","vat_percentage","paynl_merchant_id","paynl_token_code","paynl_api_token","paynl_service_id","email_invoice","paynl_account_type","save","show_calendar","calendar_sold_ratio","order_notification_enabled","order_notification_email","tickets_sold_out_notification_enabled","tickets_sold_out_notification_email","order_thank_you_show_events","showAddUserModal","users","showEditModal","showDeleteModal","impersonate","automatic_invoicing","automatic_invoicing_test_mode","invoice_anti_dating","invoice_vat_shifted","invoice_generate_payout_summary","invoice_include_payout_summary","invoice_generate_detailed_explanation","invoice_include_detailed_explanation","invoice_generate_fairtix_invoice","invoice_include_fairtix_invoice","invoice_set_off_invoices","invoice_language","invoice_payout_frequency","invoice_payout_delay","invoice_max_payment_period","invoice_receive_method","companyPermissions","changePermissionsCheckbox","permission","selected","slug","savePermissions","editUser","addUser","app_login_duration","box_office_user","to_reset_password","ref","allowed_events","searchEvents","userPermissionsShowArchivedEvents","filter","e","ev","events_days","permissions","keys","roles","roleSelected","editPaymentFees","addPaymentMethodFees","payment_methods","newPaymentFee","payment_method","companyFee","addingLoading","saveCompanyFee","companyFees","updateUser","cancel","deleteUser","datePlaceholder","min","timePlaceholder","time","setDefault","props","dateTime","debounceTimeout","loaded","updateValue","optional","isValid","format","$emit","tz","DateTimePicker","working","paymentMethods","selectedUser","payment_method_fees","text","loadCompany","getRoles","admin_only","online","ae","getPermissions","tmpArray","p","isSelected","rp","getSortedPermissions","getPaymentMethodFees","order","forEach","el","tmpObject","tempPermissions","category","sort","a","b","addNewPaymentMetodFees","hide","splice","getAllPaymentMethods","syncCompanyPermissions","find","parseInt","request","updateCompanyFee","addCompanyFee","onLogoChange","header","primary_color","secondary_color","accent_color","description_color","button_color","buttons_color","button_text_color","signLogoUpload","$refs","files","put","upload_url","headers","target_url","updateLayout","getEvents","show_archived","createEvent","fields","showDuplicateModal","display_points_of_sale","copyToClipboard","closePopover","cursor_pointer","orders_count","disabled_danger","showCopiedSpan","originalEventName","duplicateEvent","startDateUpdated","allProductsSelected","changeSelectValue","groups","products","product","scan_operation","sessions_count","deleteEvent","StatusLabel","originalStartDate","orgStartDate","startDate","replace","sanitizeUrlString","textToCopy","createElement","setAttribute","position","left","body","appendChild","select","execCommand","removeChild","bind","productGroups","getGroups","eventPos","spread","responses","productResponse","posResponse","selectedProducts","duplicate","point_of_sale","titleLower","isArchived","isDisabled","eventTypes","event_type_id","templates","ticket_template_id","minimum_age","age_confirmation_checkbox","age","continuous","editingDescription","description","editorData","description_location","description_location_options","option","description_open_status","venuesData","handleVenuesOptionChange","venueObj","showNewVenuePanel","image","image_url","onImageChange","show_image_in_pos","removeProductImage","banner","onBannerChange","bannerError","removeBanner","saving","saveEvent","modules","mod","inner_modules","sub_mods","routeName","completed","hasProducts","hasTimeslots","hasCustomerInformation","hasPointsOfSale","products_count","timeslots_count","points_of_sale_count","initModules","event_module_name_basic","String","list","CountrySelection","EventNav","Editor","plugins","toolbar","menubar","refreshVenuesList","is_description_open","isBefore","getTemplates","getEventTypes","val","undefined","searchEl","venuesdropdownlist","blur","venues","getVenuesNames","cdn","signUpload","path","img","selectedImage","objectURL","URL","createObjectURL","size","onload","width","height","revokeObjectURL","src","deleteUpload","selectedProductsForEdit","showMassUpdateModal","newProduct","hasMultiGroups","groupToggle","productGroup","refInFor","editProduct","saveProduct","inputVisibilitySettings","generateETicket","ticketTemplate","scanColor","productImage","minMaxPerOrder","belongToProduct","salesSets","sendAdditionalTicket","scanTillDateTime","sendConfirmationEmail","limitAmountToMaximumTickets","allowMultipleEvents","persons","group_name","productTypes","handleProductTypeChange","product_type_id","donation_product_id","onSpecificSale","specific_sales_time","is_multi_day_ticket","create_eticket","sale_show_after_expire","sale_starts_at","sale_ends_at","is_cross_sell","calculate_service_fee","service_fee","ticket_fee_incl","vats","validateVat","max_buy","min_buy","scan_till_date_time","isSendAdditionalTicket","additionalTicketsSelectedProducts","pr","sale_sets","confirmation_email","eventsSearch","eventsShowArchived","eventsList","scan_color","removeScanColor","isBelongToProduct","limit_max_amount","message","validations","product_type","t","createProduct","deleteProduct","massProductsFilled","saveMassProduct","massUpdateEnables","massProduct","handleMassProductTypeChange","no_products","selected_product_id","productsDependencies","Number","ticket_fee","getProducts","getProductTypes","loadProductTypeDonation","trim","str","rgbaToHex","rgba","inParts","g","outParts","toString","part","join","no_product_group","validation","validateImage","parents","parent_id","additions","child_id","group_id","keep","dependency_products","products_additions","selectedType","file","Promise","resolve","reject","reader","FileReader","Image","target","onerror","readAsDataURL","groupId","toRemove","payload","ids","bulkUpdate","checkAll","checked","isEmpty","handleDown","months","SELECTED_MONTH","fullname","SELECTED_YEAR","handleUp","weekdays","w","monthStartingDays","prevMonthTotalDays","imgURL","backgroundImage","backgroundColor","imgUrl","textShadow","day","statusColor","ft_campaign_name","monthTotalDays","pointsOfSale","getVenueAddress","default","readMoreId","readMore","calendarData","getFullYear","getMonth","FIRST_YEAR","FIRST_SKIP_DAYS","eventData","loadEvents","getLive","tmpDate","padStart","getDate","event_name","sold_status","ratio","getLang","navigator","isLeapYear","y","month","prevMonthEvents","currentMonthEvents","nextMonthEvents","eventDate","eventDay","eventMonth","eventYear","eventId","getStatus","soldStatus","full","feb","m","nextMonthTotalDays","skipDays","year","nextMonthStartingDays","years","seconds","passedRedirectTimer","gtm_id","gmt_id","isEventDescriptionOpened","posFirstGroupIsDefault","cart","showDependency","prodIndex","discount_price","toggleDescription","openedProducts","isExpanded","toggleExpandDescription","getSaleText","out_of_stock","is_disabled","options","max","updateCart","amounts","subtract","add","PosNumberInput","refreshGroups","log","syncCart","setPosFirstGroupIsDefault","groupToUpdate","productToUpdate","updateGroups","pos_product_groups","posProductGroup","product_group","cross_sell","exists","x","posProduct","setProductStock","expired","findIndex","setCartProducts","pp","$forceUpdate","ppp","ad","current_stock","limit","maxAmount","canSell","isAfter","amount","getProduct","ends","duration","diff","hours","$","minutes","starts","highlight_discount","highlight_style","css","border_color","background_color","querySelector","innerHTML","dataLayer","virtualPagePath","pathname","virtualPageTitle","showDiscountCodeInput","preventDefault","discountCode","claimDiscountcode","calculatedCart","discount","setCartDiscountCode","total","parseCurrency","processingFee","paymentFee","Boolean","discountCodeError","timeslot","eventListener","calculateVatFromEx","calculateVat","excl","discountcode","getByOrder","secret","getByPOS","minimumFractionDigits","warn","productTotal","totalProductCount","campaignDiscount","apply_type","productsTotal","EPSILON","paymentFeeVat","paymentMethod","fee_fixed","feePercentage","setCartTotalWithoutPM","setCartTotal","paymentFeeVatPerc","processingFeeVat","processingFeeVatPerc","discountVat","discountVatPerc","addEventListener","classList","contains","beforeDestroy","removeEventListener","ProductList","GtmPageView","PosCartPlaceOrder","processing","redirectInterval","manual_price","back","updateProducts","redirectAfterCreate","source","utm_campaign","timeslots","opening_hours","getByUrl","findByDomain","customCss","remove","custom_css","newPos","some","pm","open","edit","getPosUrl","btn_save_disabled","posHasProducts","posHasPaymentMethods","posStatusChange","languages","use_all_stock","show_in_overview","checkPosCanSave","psd2_calc_to_customer","show_pos","show_box","validatePaymentInput","has_donation_product","has_donation","showCountdown","terms_conditions_url","deletePointOfSale","is_enabled","enableProduct","pos_stock","_n","handleUnlimitedClicked","sortable","localChecked","downloadQr","generateQR","QRCode","colorDark","colorLight","correctLevel","H","download","VueDraggable","PosProduct","QrCode","newPosProduct","deletes","originalProducts","orgProductGroups","originalPaymentMethods","posDependencies","point_of_sale_id","selected_point_of_sale_id","product_group_id","posPayment","posPaymentMethod","payment_method_id","err_fee_fixed","err_fee_percentage","fullUrl","routeData","pg","openingHoursParsed","spots","interval","cancelCreateOpeningHour","createOpeningHour","daysOfWeek","openingHour","day_of_week","opens_at","closes_at","intervals","dateInfo","dateDisabled","getNewHours","calendarClicked","pickedDate","dayModalTitle","adjust","dayTimeslots","timeslot_id","deleteTimeslot","addTimeslot","openingHours","generatedOpeningHours","promises","dayTimeslot","original","tmp_starts_at","utc","tmp_ends_at","ymd","tm_event_start","tm_event_end","tm_curr_date","context","start","activeYMD","startOf","end","endOf","getGenerated","generated","dayOfWeek","day_text","customerFields","questionTableFields","isTicketEmailAsked","markTicketAsk","ticket_ask","markOrderAsk","order_ask","markOrderMandatory","order_mandatory","markTicketMandatory","ticket_mandatory","questions","specificQuestionsFields","editQuestion","showDeleteQuestionModal","newQuestion","question","saveQuestion","new_answer","question_type","answers","answer","deleteAnswer","addAnswer","mandatory","where_to_show","show_at_specific_prod","createQuestion","deleteQuestion","selectedQuestion","getQuestions","cf","answer_id","customerInformation","getCustomerFields","questionProduct","qProduct","prod","saveCustomerFields","isTicketNamesAsked","firstName","lastName","getDiscountcodes","search","showDiscountModal","createDiscountcode","saveDiscountcode","discountcodes","is_active","editDiscountcode","page_data","deleteDiscountcode","eventProducts","eventProduct","tmpEvent","DiscountcodeForm","page","discountcodesdata","getOrders","selectedEvents","showArchivedEvents","show_expired","show_box_office","removeDiscountcodeFilter","exportSettings","order_type","changeExportType","eventSelected","productsGroups","count","searchProducts","from","to","exportCheckAll","exportFields","makeExport","orders","full_name","created_at","order_products","getOrderProducts","is_cancelled","payment_status","is_refunded","is_paid","order_number","DatePicker","timeout","selected_events","f","getAll","refunded_at","guestList","getProductsByEvent","getBackQuery","isRefunded","pos_payment_method","customer","showEditCustomerModal","addresses","house_nr","dob","showCancelOrderModal","showRefundOrderModal","showResentTicketsModal","showChangeOrderEventModal","claimed_at","reminded_at","invited_at","logs","isScanned","getScanLogs","generateTicket","cancelTicket","specificQuestions","specificQuestion","specificAnswer","payment_logs","notes","addingNote","addNote","showAuditDetails","auditLog","cancelOrder","order_cancel_send_mail","loadOrder","resentTickets","editCustomer","updateCustomer","optin","genders","gender","isSwitchEventModalDisabled","saveSwitchOrderEvent","switchEventLoading","switchEventEvents","switchEventChanged","switchEventSelectedEvent","points_of_sale","setPosProducts","switchEventSelectedPos","switchEventProducts","currentProduct","product_group_name","productsList","toProduct","switchEventSendMails","refundTotal","refundedTotal","refundProducts","selectAll","isSelectAll","calculateRefundTotal","includeFees","$options","filters","currency","totalFees","payment_fee","isPaymentFeesRefunded","includePaymentFees","orderRefundSendMail","posGroup","orderProduct","refunds","refund","order_product_id","j","calculateTotalFees","generate","dispatch","note","sendMail","resentConfirmation","refundModal","details","customer_answers","customer_information","found","audit","datetime","l","succeeded","timestamp","txt","address_id","getLiveEventsWithProducts","event_id","posId","v","orderProductId","switchEvent","event_to","send_mail","order_refund_send_mail","OrderDetailsRefund","setOrderOverviewQuery","scanners","entrances","createScanner","scanner","entrance","showLoginQR","editScanner","qrTitle","closeQRModal","qrCode","saveScanner","entrance_id","QrcodeVue","getScanners","scan_operations","getScanOperations","openScannerTerminal","createScanOperation","scanOperation","scanOperations","getAvailableEvents","handleAddScannerClick","showQR","handleEditScannerClick","handleDeleteScannerClick","outgoing","session","handleAddSessionClick","sessions","formatSessionDate","handleEditSessionClick","handleDeleteSessionClick","handleSaveScannerClick","username","deleteScanner","clearSessionInputs","handleSaveSessionClick","deleteSession","selected_scanner_id","selected_session_id","scannerId","scanOperationSession","scan_operation_id","sessionId","outgoing_enabled","sending","submit","hideTitle","isClaim","isTicketFieldsAsked","orderCustomer","copyOrderCustomer","mandatoryFields","validated","reValidate","company_name","tmp_dob","checkEmail","emailSuggestion","onConfirmationPaste","email_confirmation","localState","$slots","inputId","localValue","onInput","onChange","_t","newValue","calculateState","newState","email_confirmation_error","formatDob","mailcheck","suggested","suggestion","validateDob","validateCity","isMandatory","slice","validate","customerField","level","reset","mandatoryField","deep","MaterialInput","CustomerForm","CustomerInformationForm","order_secret","loadAnswers","customer_information_id","customerValid","customerInfoValid","claim","change","getBySecret","customer_first_name","getAnswersByTicket","getByTicket","getFieldsByTicket","backQuery","loadingDone","customerChanged","url2","isCustomerFilled","processOrder","timeLeft","updateTimer","diffSeconds","expires_at","OrderTimer","customQuestions","cookieCategories","customerInformationValid","tmpCookieCategories","local_information","submitByOrder","posHasCrossSell","mapGetters","scrollIntoView","apiCallOne","getFieldsByOrder","apiCallTwo","timeslotId","selectedOption","timeOptions","spots_sold","makeTimeslotForSelectedOption","makeTimeslotForOrder","payment_retry","cartTotal","selectRow","image_active","getCartPaymentFee","setProcessingFee","Cart","paymentMethodId","selectPaymentMethod","point_of_sale_payment_method_id","pay","self","top","cartTotalWithoutPM","cartProcessingFee","adapter","daysLeft","daysNeeded","pop","continueOrder","addCrossSell","env","containsUnassignedTicketes","ticketsBeingCreated","merged_tickets_url","ticketMergeBeingDone","order_product","link","copied","reminderTicket","getTickets","protocol","host","change_link","middle","substr","getOrder","getByOrderIdAndSecret","assignTickets","assignSelf","invite","invite_email","inviteRequests","show_next_modal","todo","loadTicketForm","ticketIndex","newVal","selectEvent","filter_event","includeArchivedEvents","date_range","filter_box_office","getReportData","paid_orders_count","ticket_count","claimed_tickets_count","free_tickets_count","isEventStart","total_scans","scansOption","scansStartsAt","scansEndsAt","scanLoading","getTicketsScansData","chartOptionsScans","seriesScans","chartOptionsSales","seriesSales","chartOptionsSalesCumulative","seriesSalesCumulative","searchScansPerTypeVisibility","searchScansPerType","scans_per_type_open","productsScan","scans","perc","searchSoldPerTypeVisibility","searchSoldPerType","sold_per_type_open","groupProducts","times_sold","age_avg","chartOptionsAges","seriesAges","ages","chartOptions","series","custom_questions","event_created_dates","options_event","now","xaxis","categories","yaxis","labels","formatter","tooltip","chart","responsive","breakpoint","reportLoopKeys","report","getFilters","scans_by_type","getData","Intl","DateTimeFormat","resolvedOptions","timeZone","refund_amount","getCustomAnswersData","answerData","tmpArr","loopKey","pushLabel","chartRef","updateOptions","updateSeries","sales_per_day","seriesCumulative","seriesCumulativeLabels","end_date","amountCumulative","toLocaleDateString","abs","newDate","setDate","chartsales_per_day","chartsales_cumulative","chartages","getCitiesData","cities","period","ticket_scans","d","hour","week","total_tickets_scanned","campaignName","showCreateRuleModal","showRuleModal","hide_products","rule","saveCampaign","reference","createRule","canUpdateRule","updateRule","discountTypeOptions","addDiscountCondition","con","deleteCondition","deleteRule","DiscountTypeValue","s","campaigns","getCampaigns","createCampaign","deleteCampaign","modal_campaigns","selectCampaign","campaign_link","link_type","selectEventOverview","selectSpecificEvent","posses","selectPos","allEvents","activeCampaign","posUrl","getDayOfWeek","dayOfWeekIndex","getUTCDay","getLiveEventsWithPos","unshift","total_price","items","order_status_page_url","upcoming_events","getEventLink","transactionId","GtmPurchase","getByOrdernumberSecret","getElementsByTagName","dl","async","parentNode","insertBefore","gtm_noscript","gtm_iframe","item_id","item_name","item_category","item_category2","item_category3","quantity","getUpcomingEvents","posLink","createTemplate","template","events_count","originalTemplateName","duplicateTemplate","deleteTemplate","getTemplatesOverview","generating","generatePreview","reachedLimit","background","qr_top","checkQRPosition","qr","qr_width","qr_left","qr_height","addTextBlock","texts","deleteText","content","placeholders","placeholder","saveTemplate","previewTemplate","cm","cmToPx","pageWidth","pageHeight","getTemplate","script","tag","_m","TermsConditionsEN","TermsConditionsDE","TermsConditionsES","TermsConditionsNL","product_stock","in_redis","getStockReport","sessionsList","addSession","handleDeleteClick","removeSession","selectedIndex","selectedItem","removeProduct","getSessionsProducts","sessionProducts","isDuplicate","sessionProduct","scanOperationPrivileges","scanner_id","session_id","tmpScanner","privileges","privelege","BoxOfficeUser","BoxOfficeEvent","boxOffices","boxOffice","BoxOfficePlaceOrder","saveSettings","settings","getSettings","markOrderPaid","HttpClient","defaults","baseURL","interceptors","use","config","store","boxOfficePlaceOrder","loadBoxOfficeUser","overrule_price","selectPayment","showDiscountInput","applyDiscount","discountInpt","removeDiscount","emptyCart","productsAmount","discountError","subtotal","placeOrder","resetSettings","groupsSettings","groupCheckChanged","productCheckChanged","markAsPaid","givenByCustomer","btnOrderEnabled","refresh","groupSettings","productSettings","prodClone","groupCloned","openOrderDetail","resetFilters","showFilterPopover","payment_statuses","date_start","date_end","cmp","evt","box_office","is_expired","sortBy","sortDesc","formatDate","replaceAll","customerSupport","dependencies","isFiltersValid","ScannerTerminalUser","ScannerTerminalScan","scan","stats","loadScannerTerminalUser","currBackgroundColor","scannerTerminalUser","disabledField","scanField","errorMessage","per_page","lastScreenAction","ticketData","logsFields","product_name","is_scanned","checkIn","lastScanResultColor","isScreenActiveInterval","toScan","startScan","go","lastClean","input","setScanResult","setErrorMessage","allowInput","cleanField","loadStats","$nextTick","focus","setBackgroundColor","setFocus","ticket_id","to_scan","onmouseup","clipboardData","destroyed","onmousemove","evenEditMode","rememberEvent","validateCustomerForm","itemsCount","isPersonalized","toDoNext","updateTodo","payment","isDone","moreThanStock","updateNumber","NumberInput","populate","send_order_confirmation","ticketsCustomerData","customerAnswers","statusLive","createCustomerData","expanded","row","todo_next","populate_tickets_customer","firstNameInp","filter_products","toggleSelected","event_all_selected","loadingOrders","loadingRevenue","order_id","getOrdersGroupedByTickets","getRevenue","getSalesPerTickets","getSalesPerTicketsRevenue","getSalesPerTicketsOrders","inputState","showRoleModal","tableFields","owner","createRole","deleteRole","updateRole","root","eyef","cx","getAttribute","cy","clientX","clientY","innerHeight","setProperty","touchHandler","touches","invoices","number","downloadFile","invoice_number","payout_summary_url","generateInvoice","generatePayoutSummary","getInvoices","invoiceNumber","invoice","getFileName","filename","Blob","searchInvoice","clearEvent","selectedCompany","showAddEventFeeModal","retroactive","showEditEventFeeModal","eventFee","eventFees","getCompanies","administration","companiesWithEvents","currentCompany","currentEvent","updateEventFee","createEventFee","openScanEvent","live","secondary","color","info_blocks","titleColor","top_bar","dateColor","stepper","hintColor","doneBackgroundColor","doneColor","cart_sidebar","buttonBackgroundColor","buttonColor","productGroupBackgroundColor","productGroupTextColor","productTitleColor","productSubtextColor","productPriceColor","primary","cardTopColor","cardBottomColor","cardTextColor","loadLayout","defaultValues","getByKey","Array","isArray","paymentMethodList","showEditPaymentFeeModal","values","footerLink","selectedPermissions","loadTemplate","tmpTemplate","uploadDefaultTicketLayout","updateMarketing","createBatch","batch","batches","zip_file_path","getBatches","ticket_name","ticket_price","ticket_vat","tickets_count","generated_by","saveBatch","orgBatch","generateBatch","updateBatch","findBatch","iban_holder_name","signupConfirmation","setUser","setLanguage","automatic_invoice_enabled","setting","period_starts_at","period_ends_at","total_payout","clearing_ref","getInvoicesWithFilters","getAllByCompany","searchInvoiceByCompany","extension","api_key","audience_id","getByCompany","showVenueModal","createVenue","saveVenue","verified","active","editVenue","getVenuesData","deleteVenue","VenueForm","overview","showCompanyLinkModal","createCompanyLink","companyLink","company_master_id","company_sub_id","location_id","saveCompanyLink","companyLinks","editCompanyLink","getCompanyLinksData","deleteCompanyLink","getVenues","getCompaniesName","openDatePicket","locale","recaptchaSiteKey","verifyMethod","process","VUE_APP_RECAPTCHA_SITE_KEY","recaptcha","searchLost","dpicker","es","nl","de","en","VueRecaptcha","Vue","Router","router","mode","routes","EventsOverview","ViewPointOfSale","Login","Signup","SignupConfirmation","Dashboard","Companies","ManageCompany","ManageCompanyLayout","CompanyInvoiceOverview","Events","ManageEvent","EventProducts","EventPointsOfSale","EventMarketing","OrderEnterPersonalDetails","OrderSelectTimeslot","OrderAdditionalProducts","OrderSelectPaymentMethod","CustomerOrderDetails","CustomerOrderPending","AssignTickets","OrderThankYou","OrderStatus","EventTimeslots","EventCustomerInformation","Discountcodes","OrderOverview","OrderDetails","ScanOperationOverview","ScanOperationManage","ScanOperationProductsConfigure","ScanOperationScannersConfigure","ScanOperationSummary","ScannerOverview","ClaimTicket","TicketClaimed","TicketTemplates","ReportsOverview","EditTicketTemplate","CampaignsOverview","CampaignDetails","NotFound","TermsConditions","TicketChanged","StockReport","CustomerSupportOverview","ScannerTerminalLogin","ScannerTerminalEvents","BoxOfficeLogin","BoxOfficeEvents","BoxOfficeEventBoxOffices","BoxOfficeOrderHistory","GuestListOverview","ReportSalesPerTickettype","UserResetPassword","MasterDataOverview","PermissionRoles","AccessDenied","AdministrationOverview","InvoiceOverview","InvoiceDetails","AdministrationEventFeesOverview","DefaultCompanySettings","DefaultCompanyLayout","DefaultCompanyFees","DefaultCompanyPermissions","DefaultCompanyTicketTemplate","AutoInvoiceSettings","VenuesOverview","CompanyLinksOverview","BatchesOverview","BatchDetails","ExtensionsOverview","MailchimpSettings","TicketLost","beforeEach","startsWith","loadLocaleMessages","locales","messages","matched","VueI18n","fallbackLocale","Vuex","startToken","isImpersonating","EMPTY_CART","startCart","startLanguage","i18n","boxOfficeUser","success","getters","hasCrossSell","mutations","setCampaign","removeItem","boxOfficeLogout","scannerTerminalLogout","setBoxOfficeUser","setScannerTerminalUser","bootStrapToaster","BToast","$bvToast","toast","toaster","solid","variant","setEvent","setCartPaymentMethod","setCartCampaignDiscount","setCartTimeslot","clearDiscountCode","clearCart","setCompany","setPos","setCampaignToPos","setOrder","cartProductIds","cartProducts","productId","productIndex","setLayout","setProductTypeDonationId","donationId","actions","getByDomain","boxOfficeApi","scannerTerminalApi","getProductTypeDonation","companyApi","hostname","port","updatePaymentMetodFees","paymentMethodFees","eventApi","getLiveEvents","getLiveEvent","currentEventId","pointsOfSaleApi","productApi","getUngroupedProducts","saveProductSort","timeslotApi","orderApi","campaign_discount","discount_code","discountcodeId","discountcode_id","customerInformationApi","saveDefault","arrCustomerInformation","ticketId","ticketSecret","questionId","discountcodeApi","posID","scanerApi","scanOperationId","ScanOperationApi","ScanOperationSessionApi","scanOperationSessionId","ticketApi","productOrderId","remind","getDefaultTemplate","auditApi","subject","subjectId","reportApi","cdnApi","mailApi","mail","openingHourApi","ScanOperationPrivilegesApi","scan_operation_privilege","CustomerSupportApi","GuestList","PermissionApi","invoiceApi","search_term","responseType","DefaultValuesApi","CampaignApi","rule_id","batchesApi","settingsApi","extensionApi","venuesApi","companyLinksApi","posApi","scannerApi","scanOperationApi","scanOperationSessionApi","customerSupportApi","guestListApi","permissionApi","administrationApi","showModal","showPreferences","selectedCategories","analytics","marketing","acceptSelectedCookies","togglePreferences","gtag","toggleCategory","consentSettings","storedCategories","calculate","startsAt","endsAt","clone","isSame","countdownInterval","loadCampaign","footer","links","FlipCountdown","CookieBanner","CalenderDay","dismissErrors","isPlaceOrder","isOrderHistory","$root","Shop","Default","BoxOfficeDefault","ScannerTerminalDefault","Static","layouts","Index","PayOrder","CustomerOrderOverview","productionTip","BootstrapVue","IconsPlugin","VueMoment","VueSidebarMenu","VueApexCharts","ColorPanel","ColorPicker","VueSpinners","vSelect","mixin","action","VueMeta","h","App","$mount","webpackContext","req","webpackContextResolve","__webpack_require__","o","Error","module","exports","__webpack_module_cache__","moduleId","cachedModule","__webpack_modules__","deferred","O","chunkIds","priority","notFulfilled","Infinity","fulfilled","every","n","getter","__esModule","definition","enumerable","globalThis","Function","prop","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}