@stamhoofd/models 2.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/assets/Metropolis-Black.woff2 +0 -0
- package/dist/src/assets/Metropolis-BlackItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-Bold.woff2 +0 -0
- package/dist/src/assets/Metropolis-BoldItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-ExtraBold.woff2 +0 -0
- package/dist/src/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-ExtraLight.woff2 +0 -0
- package/dist/src/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-Light.woff2 +0 -0
- package/dist/src/assets/Metropolis-LightItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-Medium.woff2 +0 -0
- package/dist/src/assets/Metropolis-MediumItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-Regular.woff2 +0 -0
- package/dist/src/assets/Metropolis-RegularItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-SemiBold.woff2 +0 -0
- package/dist/src/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
- package/dist/src/assets/Metropolis-Thin.woff2 +0 -0
- package/dist/src/assets/Metropolis-ThinItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Black.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-BlackItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Bold.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-BoldItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-ExtraBold.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-ExtraLight.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Light.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-LightItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Medium.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-MediumItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Regular.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-RegularItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-SemiBold.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-Thin.woff2 +0 -0
- package/dist/src/assets/assets/Metropolis-ThinItalic.woff2 +0 -0
- package/dist/src/assets/assets/logo.png +0 -0
- package/dist/src/assets/logo.png +0 -0
- package/dist/src/factories/AddressFactory.d.ts +10 -0
- package/dist/src/factories/AddressFactory.d.ts.map +1 -0
- package/dist/src/factories/AddressFactory.js +42 -0
- package/dist/src/factories/AddressFactory.js.map +1 -0
- package/dist/src/factories/EmergencyContactFactory.d.ts +9 -0
- package/dist/src/factories/EmergencyContactFactory.d.ts.map +1 -0
- package/dist/src/factories/EmergencyContactFactory.js +42 -0
- package/dist/src/factories/EmergencyContactFactory.js.map +1 -0
- package/dist/src/factories/GroupFactory.d.ts +19 -0
- package/dist/src/factories/GroupFactory.d.ts.map +1 -0
- package/dist/src/factories/GroupFactory.js +52 -0
- package/dist/src/factories/GroupFactory.js.map +1 -0
- package/dist/src/factories/MemberFactory.d.ts +16 -0
- package/dist/src/factories/MemberFactory.d.ts.map +1 -0
- package/dist/src/factories/MemberFactory.js +98 -0
- package/dist/src/factories/MemberFactory.js.map +1 -0
- package/dist/src/factories/OrganizationFactory.d.ts +16 -0
- package/dist/src/factories/OrganizationFactory.d.ts.map +1 -0
- package/dist/src/factories/OrganizationFactory.js +40 -0
- package/dist/src/factories/OrganizationFactory.js.map +1 -0
- package/dist/src/factories/ParentFactory.d.ts +10 -0
- package/dist/src/factories/ParentFactory.d.ts.map +1 -0
- package/dist/src/factories/ParentFactory.js +44 -0
- package/dist/src/factories/ParentFactory.js.map +1 -0
- package/dist/src/factories/RecordFactory.d.ts +10 -0
- package/dist/src/factories/RecordFactory.d.ts.map +1 -0
- package/dist/src/factories/RecordFactory.js +14 -0
- package/dist/src/factories/RecordFactory.js.map +1 -0
- package/dist/src/factories/RegisterCodeFactory.d.ts +18 -0
- package/dist/src/factories/RegisterCodeFactory.d.ts.map +1 -0
- package/dist/src/factories/RegisterCodeFactory.js +19 -0
- package/dist/src/factories/RegisterCodeFactory.js.map +1 -0
- package/dist/src/factories/RegistrationFactory.d.ts +14 -0
- package/dist/src/factories/RegistrationFactory.d.ts.map +1 -0
- package/dist/src/factories/RegistrationFactory.js +26 -0
- package/dist/src/factories/RegistrationFactory.js.map +1 -0
- package/dist/src/factories/UserFactory.d.ts +21 -0
- package/dist/src/factories/UserFactory.d.ts.map +1 -0
- package/dist/src/factories/UserFactory.js +41 -0
- package/dist/src/factories/UserFactory.js.map +1 -0
- package/dist/src/factories/WebshopFactory.d.ts +16 -0
- package/dist/src/factories/WebshopFactory.d.ts.map +1 -0
- package/dist/src/factories/WebshopFactory.js +35 -0
- package/dist/src/factories/WebshopFactory.js.map +1 -0
- package/dist/src/helpers/DNSValidator.d.ts +6 -0
- package/dist/src/helpers/DNSValidator.d.ts.map +1 -0
- package/dist/src/helpers/DNSValidator.js +144 -0
- package/dist/src/helpers/DNSValidator.js.map +1 -0
- package/dist/src/helpers/EmailBuilder.d.ts +22 -0
- package/dist/src/helpers/EmailBuilder.d.ts.map +1 -0
- package/dist/src/helpers/EmailBuilder.js +100 -0
- package/dist/src/helpers/EmailBuilder.js.map +1 -0
- package/dist/src/helpers/GroupBuilder.d.ts +9 -0
- package/dist/src/helpers/GroupBuilder.d.ts.map +1 -0
- package/dist/src/helpers/GroupBuilder.js +382 -0
- package/dist/src/helpers/GroupBuilder.js.map +1 -0
- package/dist/src/helpers/Handlebars.d.ts +2 -0
- package/dist/src/helpers/Handlebars.d.ts.map +1 -0
- package/dist/src/helpers/Handlebars.js +192 -0
- package/dist/src/helpers/Handlebars.js.map +1 -0
- package/dist/src/helpers/InvoiceBuilder.d.ts +29 -0
- package/dist/src/helpers/InvoiceBuilder.d.ts.map +1 -0
- package/dist/src/helpers/InvoiceBuilder.js +406 -0
- package/dist/src/helpers/InvoiceBuilder.js.map +1 -0
- package/dist/src/helpers/InvoiceBuilder.test.d.ts +2 -0
- package/dist/src/helpers/InvoiceBuilder.test.d.ts.map +1 -0
- package/dist/src/helpers/InvoiceBuilder.test.js +52 -0
- package/dist/src/helpers/InvoiceBuilder.test.js.map +1 -0
- package/dist/src/helpers/RateLimiter.d.ts +27 -0
- package/dist/src/helpers/RateLimiter.d.ts.map +1 -0
- package/dist/src/helpers/RateLimiter.js +57 -0
- package/dist/src/helpers/RateLimiter.js.map +1 -0
- package/dist/src/helpers/WebshopCounter.d.ts +6 -0
- package/dist/src/helpers/WebshopCounter.d.ts.map +1 -0
- package/dist/src/helpers/WebshopCounter.js +36 -0
- package/dist/src/helpers/WebshopCounter.js.map +1 -0
- package/dist/src/helpers/WebshopCounter.test.d.ts +2 -0
- package/dist/src/helpers/WebshopCounter.test.d.ts.map +1 -0
- package/dist/src/helpers/WebshopCounter.test.js +17 -0
- package/dist/src/helpers/WebshopCounter.test.js.map +1 -0
- package/dist/src/index.d.ts +18 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +23 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/migrations/1593773929-create-initial-tables.sql +634 -0
- package/dist/src/migrations/1605261999-gemeenten-tmp.sql +2820 -0
- package/dist/src/migrations/1605262045-import-postcodes.d.ts +16 -0
- package/dist/src/migrations/1605262045-import-postcodes.d.ts.map +1 -0
- package/dist/src/migrations/1605262045-import-postcodes.js +116 -0
- package/dist/src/migrations/1605262045-import-postcodes.js.map +1 -0
- package/dist/src/migrations/1605262046-import-postcodes-nl.d.ts +4 -0
- package/dist/src/migrations/1605262046-import-postcodes-nl.d.ts.map +1 -0
- package/dist/src/migrations/1605262046-import-postcodes-nl.js +83 -0
- package/dist/src/migrations/1605262046-import-postcodes-nl.js.map +1 -0
- package/dist/src/migrations/1605279038-drop-gemeenten-tmp.sql +1 -0
- package/dist/src/migrations/1648392491-default-templates.sql +9 -0
- package/dist/src/migrations/1651245707-default-templates-reminders.sql +6 -0
- package/dist/src/migrations/1708607340-tickets-deleted-at.sql +1 -0
- package/dist/src/migrations/1710459176-register-code-invoices.sql +3 -0
- package/dist/src/migrations/1712158247-discount-codes.sql +17 -0
- package/dist/src/migrations/1713178665-drop-invites.sql +1 -0
- package/dist/src/migrations/1713178666-drop-keychain.sql +1 -0
- package/dist/src/migrations/1713178667-drop-challenges.sql +1 -0
- package/dist/src/migrations/1713178668-drop-user-keys.sql +7 -0
- package/dist/src/migrations/1713178669-drop-organization-key.sql +2 -0
- package/dist/src/migrations/data/postcodes/nl/Drenthe +291 -0
- package/dist/src/migrations/data/postcodes/nl/Flevoland +107 -0
- package/dist/src/migrations/data/postcodes/nl/Friesland +518 -0
- package/dist/src/migrations/data/postcodes/nl/Gelderland +601 -0
- package/dist/src/migrations/data/postcodes/nl/Groningen +279 -0
- package/dist/src/migrations/data/postcodes/nl/Limburg +324 -0
- package/dist/src/migrations/data/postcodes/nl/Noord-Brabant +620 -0
- package/dist/src/migrations/data/postcodes/nl/Noord-Holland +566 -0
- package/dist/src/migrations/data/postcodes/nl/Overrijsel +344 -0
- package/dist/src/migrations/data/postcodes/nl/Utrecht +278 -0
- package/dist/src/migrations/data/postcodes/nl/Zeeland +179 -0
- package/dist/src/migrations/data/postcodes/nl/Zuid-Holland +662 -0
- package/dist/src/models/BalanceItem.d.ts +57 -0
- package/dist/src/models/BalanceItem.d.ts.map +1 -0
- package/dist/src/models/BalanceItem.js +346 -0
- package/dist/src/models/BalanceItem.js.map +1 -0
- package/dist/src/models/BalanceItemPayment.d.ts +31 -0
- package/dist/src/models/BalanceItemPayment.d.ts.map +1 -0
- package/dist/src/models/BalanceItemPayment.js +101 -0
- package/dist/src/models/BalanceItemPayment.js.map +1 -0
- package/dist/src/models/BuckarooPayment.d.ts +8 -0
- package/dist/src/models/BuckarooPayment.d.ts.map +1 -0
- package/dist/src/models/BuckarooPayment.js +24 -0
- package/dist/src/models/BuckarooPayment.js.map +1 -0
- package/dist/src/models/Document.d.ts +44 -0
- package/dist/src/models/Document.d.ts.map +1 -0
- package/dist/src/models/Document.js +194 -0
- package/dist/src/models/Document.js.map +1 -0
- package/dist/src/models/DocumentTemplate.d.ts +45 -0
- package/dist/src/models/DocumentTemplate.d.ts.map +1 -0
- package/dist/src/models/DocumentTemplate.js +533 -0
- package/dist/src/models/DocumentTemplate.js.map +1 -0
- package/dist/src/models/EmailTemplate.d.ts +22 -0
- package/dist/src/models/EmailTemplate.d.ts.map +1 -0
- package/dist/src/models/EmailTemplate.js +70 -0
- package/dist/src/models/EmailTemplate.js.map +1 -0
- package/dist/src/models/EmailVerificationCode.d.ts +60 -0
- package/dist/src/models/EmailVerificationCode.d.ts.map +1 -0
- package/dist/src/models/EmailVerificationCode.js +307 -0
- package/dist/src/models/EmailVerificationCode.js.map +1 -0
- package/dist/src/models/Group.d.ts +36 -0
- package/dist/src/models/Group.d.ts.map +1 -0
- package/dist/src/models/Group.js +231 -0
- package/dist/src/models/Group.js.map +1 -0
- package/dist/src/models/Image.d.ts +12 -0
- package/dist/src/models/Image.d.ts.map +1 -0
- package/dist/src/models/Image.js +137 -0
- package/dist/src/models/Image.js.map +1 -0
- package/dist/src/models/Member.d.ts +66 -0
- package/dist/src/models/Member.d.ts.map +1 -0
- package/dist/src/models/Member.js +309 -0
- package/dist/src/models/Member.js.map +1 -0
- package/dist/src/models/MemberResponsibilityRecord.d.ts +11 -0
- package/dist/src/models/MemberResponsibilityRecord.d.ts.map +1 -0
- package/dist/src/models/MemberResponsibilityRecord.js +47 -0
- package/dist/src/models/MemberResponsibilityRecord.js.map +1 -0
- package/dist/src/models/MolliePayment.d.ts +8 -0
- package/dist/src/models/MolliePayment.d.ts.map +1 -0
- package/dist/src/models/MolliePayment.js +24 -0
- package/dist/src/models/MolliePayment.js.map +1 -0
- package/dist/src/models/MollieToken.d.ts +45 -0
- package/dist/src/models/MollieToken.d.ts.map +1 -0
- package/dist/src/models/MollieToken.js +333 -0
- package/dist/src/models/MollieToken.js.map +1 -0
- package/dist/src/models/OneTimeToken.d.ts +38 -0
- package/dist/src/models/OneTimeToken.d.ts.map +1 -0
- package/dist/src/models/OneTimeToken.js +126 -0
- package/dist/src/models/OneTimeToken.js.map +1 -0
- package/dist/src/models/Order.d.ts +99 -0
- package/dist/src/models/Order.d.ts.map +1 -0
- package/dist/src/models/Order.js +912 -0
- package/dist/src/models/Order.js.map +1 -0
- package/dist/src/models/Organization.d.ts +119 -0
- package/dist/src/models/Organization.d.ts.map +1 -0
- package/dist/src/models/Organization.js +900 -0
- package/dist/src/models/Organization.js.map +1 -0
- package/dist/src/models/OrganizationRegistrationPeriod.d.ts +14 -0
- package/dist/src/models/OrganizationRegistrationPeriod.d.ts.map +1 -0
- package/dist/src/models/OrganizationRegistrationPeriod.js +62 -0
- package/dist/src/models/OrganizationRegistrationPeriod.js.map +1 -0
- package/dist/src/models/PasswordToken.d.ts +29 -0
- package/dist/src/models/PasswordToken.d.ts.map +1 -0
- package/dist/src/models/PasswordToken.js +118 -0
- package/dist/src/models/PasswordToken.js.map +1 -0
- package/dist/src/models/PayconiqPayment.d.ts +18 -0
- package/dist/src/models/PayconiqPayment.d.ts.map +1 -0
- package/dist/src/models/PayconiqPayment.js +216 -0
- package/dist/src/models/PayconiqPayment.js.map +1 -0
- package/dist/src/models/Payment.d.ts +62 -0
- package/dist/src/models/Payment.d.ts.map +1 -0
- package/dist/src/models/Payment.js +199 -0
- package/dist/src/models/Payment.js.map +1 -0
- package/dist/src/models/Platform.d.ts +15 -0
- package/dist/src/models/Platform.d.ts.map +1 -0
- package/dist/src/models/Platform.js +77 -0
- package/dist/src/models/Platform.js.map +1 -0
- package/dist/src/models/RegisterCode.d.ts +27 -0
- package/dist/src/models/RegisterCode.d.ts.map +1 -0
- package/dist/src/models/RegisterCode.js +162 -0
- package/dist/src/models/RegisterCode.js.map +1 -0
- package/dist/src/models/Registration.d.ts +47 -0
- package/dist/src/models/Registration.d.ts.map +1 -0
- package/dist/src/models/Registration.js +369 -0
- package/dist/src/models/Registration.js.map +1 -0
- package/dist/src/models/RegistrationPeriod.d.ts +15 -0
- package/dist/src/models/RegistrationPeriod.d.ts.map +1 -0
- package/dist/src/models/RegistrationPeriod.js +64 -0
- package/dist/src/models/RegistrationPeriod.js.map +1 -0
- package/dist/src/models/STCredit.d.ts +20 -0
- package/dist/src/models/STCredit.d.ts.map +1 -0
- package/dist/src/models/STCredit.js +129 -0
- package/dist/src/models/STCredit.js.map +1 -0
- package/dist/src/models/STInvoice.d.ts +51 -0
- package/dist/src/models/STInvoice.d.ts.map +1 -0
- package/dist/src/models/STInvoice.js +453 -0
- package/dist/src/models/STInvoice.js.map +1 -0
- package/dist/src/models/STPackage.d.ts +36 -0
- package/dist/src/models/STPackage.d.ts.map +1 -0
- package/dist/src/models/STPackage.js +300 -0
- package/dist/src/models/STPackage.js.map +1 -0
- package/dist/src/models/STPendingInvoice.d.ts +45 -0
- package/dist/src/models/STPendingInvoice.d.ts.map +1 -0
- package/dist/src/models/STPendingInvoice.js +284 -0
- package/dist/src/models/STPendingInvoice.js.map +1 -0
- package/dist/src/models/StripeAccount.d.ts +17 -0
- package/dist/src/models/StripeAccount.d.ts.map +1 -0
- package/dist/src/models/StripeAccount.js +81 -0
- package/dist/src/models/StripeAccount.js.map +1 -0
- package/dist/src/models/StripeCheckoutSession.d.ts +9 -0
- package/dist/src/models/StripeCheckoutSession.d.ts.map +1 -0
- package/dist/src/models/StripeCheckoutSession.js +31 -0
- package/dist/src/models/StripeCheckoutSession.js.map +1 -0
- package/dist/src/models/StripePaymentIntent.d.ts +9 -0
- package/dist/src/models/StripePaymentIntent.d.ts.map +1 -0
- package/dist/src/models/StripePaymentIntent.js +31 -0
- package/dist/src/models/StripePaymentIntent.js.map +1 -0
- package/dist/src/models/Ticket.d.ts +61 -0
- package/dist/src/models/Ticket.d.ts.map +1 -0
- package/dist/src/models/Ticket.js +143 -0
- package/dist/src/models/Ticket.js.map +1 -0
- package/dist/src/models/Token.d.ts +49 -0
- package/dist/src/models/Token.d.ts.map +1 -0
- package/dist/src/models/Token.js +218 -0
- package/dist/src/models/Token.js.map +1 -0
- package/dist/src/models/Token.test.d.ts +2 -0
- package/dist/src/models/Token.test.d.ts.map +1 -0
- package/dist/src/models/Token.test.js +60 -0
- package/dist/src/models/Token.test.js.map +1 -0
- package/dist/src/models/UsedRegisterCode.d.ts +22 -0
- package/dist/src/models/UsedRegisterCode.d.ts.map +1 -0
- package/dist/src/models/UsedRegisterCode.js +158 -0
- package/dist/src/models/UsedRegisterCode.js.map +1 -0
- package/dist/src/models/User.d.ts +55 -0
- package/dist/src/models/User.d.ts.map +1 -0
- package/dist/src/models/User.js +314 -0
- package/dist/src/models/User.js.map +1 -0
- package/dist/src/models/UserPermissions.d.ts +15 -0
- package/dist/src/models/UserPermissions.d.ts.map +1 -0
- package/dist/src/models/UserPermissions.js +57 -0
- package/dist/src/models/UserPermissions.js.map +1 -0
- package/dist/src/models/Webshop.d.ts +44 -0
- package/dist/src/models/Webshop.d.ts.map +1 -0
- package/dist/src/models/Webshop.js +184 -0
- package/dist/src/models/Webshop.js.map +1 -0
- package/dist/src/models/WebshopDiscountCode.d.ts +18 -0
- package/dist/src/models/WebshopDiscountCode.d.ts.map +1 -0
- package/dist/src/models/WebshopDiscountCode.js +88 -0
- package/dist/src/models/WebshopDiscountCode.js.map +1 -0
- package/dist/src/models/addresses/City.d.ts +14 -0
- package/dist/src/models/addresses/City.d.ts.map +1 -0
- package/dist/src/models/addresses/City.js +37 -0
- package/dist/src/models/addresses/City.js.map +1 -0
- package/dist/src/models/addresses/PostalCode.d.ts +20 -0
- package/dist/src/models/addresses/PostalCode.d.ts.map +1 -0
- package/dist/src/models/addresses/PostalCode.js +138 -0
- package/dist/src/models/addresses/PostalCode.js.map +1 -0
- package/dist/src/models/addresses/PostalCode.test.d.ts +2 -0
- package/dist/src/models/addresses/PostalCode.test.d.ts.map +1 -0
- package/dist/src/models/addresses/PostalCode.test.js +98 -0
- package/dist/src/models/addresses/PostalCode.test.js.map +1 -0
- package/dist/src/models/addresses/Province.d.ts +9 -0
- package/dist/src/models/addresses/Province.d.ts.map +1 -0
- package/dist/src/models/addresses/Province.js +24 -0
- package/dist/src/models/addresses/Province.js.map +1 -0
- package/dist/src/models/addresses/Street.d.ts +10 -0
- package/dist/src/models/addresses/Street.d.ts.map +1 -0
- package/dist/src/models/addresses/Street.js +26 -0
- package/dist/src/models/addresses/Street.js.map +1 -0
- package/dist/src/models/index.d.ts +37 -0
- package/dist/src/models/index.d.ts.map +1 -0
- package/dist/src/models/index.js +53 -0
- package/dist/src/models/index.js.map +1 -0
- package/dist/src/structures/OrganizationServerMetaData.d.ts +43 -0
- package/dist/src/structures/OrganizationServerMetaData.d.ts.map +1 -0
- package/dist/src/structures/OrganizationServerMetaData.js +128 -0
- package/dist/src/structures/OrganizationServerMetaData.js.map +1 -0
- package/dist/tests/jest.global.setup.d.ts +3 -0
- package/dist/tests/jest.global.setup.d.ts.map +1 -0
- package/dist/tests/jest.global.setup.js +20 -0
- package/dist/tests/jest.global.setup.js.map +1 -0
- package/dist/tests/jest.setup.d.ts +2 -0
- package/dist/tests/jest.setup.d.ts.map +1 -0
- package/dist/tests/jest.setup.js +15 -0
- package/dist/tests/jest.setup.js.map +1 -0
- package/package.json +30 -0
- package/src/assets/Metropolis-Black.woff2 +0 -0
- package/src/assets/Metropolis-BlackItalic.woff2 +0 -0
- package/src/assets/Metropolis-Bold.woff2 +0 -0
- package/src/assets/Metropolis-BoldItalic.woff2 +0 -0
- package/src/assets/Metropolis-ExtraBold.woff2 +0 -0
- package/src/assets/Metropolis-ExtraBoldItalic.woff2 +0 -0
- package/src/assets/Metropolis-ExtraLight.woff2 +0 -0
- package/src/assets/Metropolis-ExtraLightItalic.woff2 +0 -0
- package/src/assets/Metropolis-Light.woff2 +0 -0
- package/src/assets/Metropolis-LightItalic.woff2 +0 -0
- package/src/assets/Metropolis-Medium.woff2 +0 -0
- package/src/assets/Metropolis-MediumItalic.woff2 +0 -0
- package/src/assets/Metropolis-Regular.woff2 +0 -0
- package/src/assets/Metropolis-RegularItalic.woff2 +0 -0
- package/src/assets/Metropolis-SemiBold.woff2 +0 -0
- package/src/assets/Metropolis-SemiBoldItalic.woff2 +0 -0
- package/src/assets/Metropolis-Thin.woff2 +0 -0
- package/src/assets/Metropolis-ThinItalic.woff2 +0 -0
- package/src/assets/logo.png +0 -0
- package/src/factories/AddressFactory.ts +42 -0
- package/src/factories/EmergencyContactFactory.ts +43 -0
- package/src/factories/GroupFactory.ts +66 -0
- package/src/factories/MemberFactory.ts +122 -0
- package/src/factories/OrganizationFactory.ts +45 -0
- package/src/factories/ParentFactory.ts +49 -0
- package/src/factories/RecordFactory.ts +12 -0
- package/src/factories/RegisterCodeFactory.ts +25 -0
- package/src/factories/RegistrationFactory.ts +32 -0
- package/src/factories/UserFactory.ts +66 -0
- package/src/factories/WebshopFactory.ts +43 -0
- package/src/helpers/DNSValidator.ts +153 -0
- package/src/helpers/EmailBuilder.ts +127 -0
- package/src/helpers/GroupBuilder.ts +438 -0
- package/src/helpers/Handlebars.ts +203 -0
- package/src/helpers/InvoiceBuilder.test.ts +57 -0
- package/src/helpers/InvoiceBuilder.ts +501 -0
- package/src/helpers/RateLimiter.ts +75 -0
- package/src/helpers/WebshopCounter.test.ts +16 -0
- package/src/helpers/WebshopCounter.ts +36 -0
- package/src/index.ts +21 -0
- package/src/migrations/1593773929-create-initial-tables.sql +634 -0
- package/src/migrations/1605261999-gemeenten-tmp.sql +2820 -0
- package/src/migrations/1605262045-import-postcodes.ts +132 -0
- package/src/migrations/1605262046-import-postcodes-nl.ts +97 -0
- package/src/migrations/1605279038-drop-gemeenten-tmp.sql +1 -0
- package/src/migrations/1648392491-default-templates.sql +9 -0
- package/src/migrations/1651245707-default-templates-reminders.sql +6 -0
- package/src/migrations/1708607340-tickets-deleted-at.sql +1 -0
- package/src/migrations/1710459176-register-code-invoices.sql +3 -0
- package/src/migrations/1712158247-discount-codes.sql +17 -0
- package/src/migrations/1713178665-drop-invites.sql +1 -0
- package/src/migrations/1713178666-drop-keychain.sql +1 -0
- package/src/migrations/1713178667-drop-challenges.sql +1 -0
- package/src/migrations/1713178668-drop-user-keys.sql +7 -0
- package/src/migrations/1713178669-drop-organization-key.sql +2 -0
- package/src/migrations/1714985451-user-nullable-organization-id.sql +2 -0
- package/src/migrations/1714985452-email-verification-code-nullable-organization-id.sql +2 -0
- package/src/migrations/1714985453-user-organization-permissions.sql +2 -0
- package/src/migrations/1714985454-user-organization-permissions.sql +2 -0
- package/src/migrations/1715079362-platform.sql +6 -0
- package/src/migrations/1715181649-registrations-organization-id.sql +2 -0
- package/src/migrations/1715181650-registrations-organization-id-fill.sql +1 -0
- package/src/migrations/1715181651-registrations-organization-id-drop-null.sql +2 -0
- package/src/migrations/1716117067-members-nullable-organization-id.sql +2 -0
- package/src/migrations/1719567581-registration-periods.sql +13 -0
- package/src/migrations/1719567582-organization-registration-periods.sql +13 -0
- package/src/migrations/1719567881-organization-periodId.sql +2 -0
- package/src/migrations/1719567882-groups-periodId.sql +2 -0
- package/src/migrations/1719567883-platform-periodId.sql +2 -0
- package/src/migrations/1719568079-default-period.sql +2 -0
- package/src/migrations/1719568080-set-default-period-platform.sql +1 -0
- package/src/migrations/1719568081-set-default-period-organizations.sql +1 -0
- package/src/migrations/1719568082-set-default-period-groups.sql +1 -0
- package/src/migrations/1719580828-registrations-periodId.sql +2 -0
- package/src/migrations/1719580829-set-default-period-registrations.sql +1 -0
- package/src/migrations/data/postcodes/nl/Drenthe +291 -0
- package/src/migrations/data/postcodes/nl/Flevoland +107 -0
- package/src/migrations/data/postcodes/nl/Friesland +518 -0
- package/src/migrations/data/postcodes/nl/Gelderland +601 -0
- package/src/migrations/data/postcodes/nl/Groningen +279 -0
- package/src/migrations/data/postcodes/nl/Limburg +324 -0
- package/src/migrations/data/postcodes/nl/Noord-Brabant +620 -0
- package/src/migrations/data/postcodes/nl/Noord-Holland +566 -0
- package/src/migrations/data/postcodes/nl/Overrijsel +344 -0
- package/src/migrations/data/postcodes/nl/Utrecht +278 -0
- package/src/migrations/data/postcodes/nl/Zeeland +179 -0
- package/src/migrations/data/postcodes/nl/Zuid-Holland +662 -0
- package/src/models/BalanceItem.ts +392 -0
- package/src/models/BalanceItemPayment.ts +106 -0
- package/src/models/BuckarooPayment.ts +19 -0
- package/src/models/Document.ts +203 -0
- package/src/models/DocumentTemplate.ts +583 -0
- package/src/models/EmailTemplate.ts +64 -0
- package/src/models/EmailVerificationCode.ts +352 -0
- package/src/models/Group.ts +293 -0
- package/src/models/Image.ts +147 -0
- package/src/models/Member.ts +386 -0
- package/src/models/MemberResponsibilityRecord.ts +39 -0
- package/src/models/MolliePayment.ts +19 -0
- package/src/models/MollieToken.ts +369 -0
- package/src/models/OneTimeToken.ts +131 -0
- package/src/models/Order.ts +1030 -0
- package/src/models/Organization.ts +1085 -0
- package/src/models/OrganizationRegistrationPeriod.ts +54 -0
- package/src/models/PasswordToken.ts +139 -0
- package/src/models/PayconiqPayment.ts +241 -0
- package/src/models/Payment.ts +216 -0
- package/src/models/Platform.ts +76 -0
- package/src/models/RegisterCode.ts +164 -0
- package/src/models/Registration.ts +405 -0
- package/src/models/RegistrationPeriod.ts +55 -0
- package/src/models/STCredit.ts +134 -0
- package/src/models/STInvoice.ts +507 -0
- package/src/models/STPackage.ts +324 -0
- package/src/models/STPendingInvoice.ts +308 -0
- package/src/models/StripeAccount.ts +71 -0
- package/src/models/StripeCheckoutSession.ts +22 -0
- package/src/models/StripePaymentIntent.ts +22 -0
- package/src/models/Ticket.ts +145 -0
- package/src/models/Token.test.ts +69 -0
- package/src/models/Token.ts +269 -0
- package/src/models/UsedRegisterCode.ts +166 -0
- package/src/models/User.ts +445 -0
- package/src/models/UserPermissions.ts +54 -0
- package/src/models/Webshop.ts +206 -0
- package/src/models/WebshopDiscountCode.ts +81 -0
- package/src/models/addresses/City.ts +31 -0
- package/src/models/addresses/PostalCode.test.ts +117 -0
- package/src/models/addresses/PostalCode.ts +164 -0
- package/src/models/addresses/Province.ts +20 -0
- package/src/models/addresses/Street.ts +25 -0
- package/src/models/index.ts +49 -0
- package/src/structures/OrganizationServerMetaData.ts +117 -0
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Migration } from '@simonbackx/simple-database';
|
|
2
|
+
import { Model } from '@simonbackx/simple-database';
|
|
3
|
+
import { City } from '../models/addresses/City';
|
|
4
|
+
export declare class Gemeente extends Model {
|
|
5
|
+
static table: string;
|
|
6
|
+
id: string;
|
|
7
|
+
postcode: string;
|
|
8
|
+
gemeente: string;
|
|
9
|
+
postcode_hoofdgemeente: string;
|
|
10
|
+
hoofdgemeente: string;
|
|
11
|
+
provincie: string;
|
|
12
|
+
city: City;
|
|
13
|
+
}
|
|
14
|
+
declare const _default: Migration;
|
|
15
|
+
export default _default;
|
|
16
|
+
//# sourceMappingURL=1605262045-import-postcodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1605262045-import-postcodes.d.ts","sourceRoot":"","sources":["../../../src/migrations/1605262045-import-postcodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAS,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAI3D,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAKhD,qBAAa,QAAS,SAAQ,KAAK;IAC/B,MAAM,CAAC,KAAK,SAAc;IAO1B,EAAE,EAAG,MAAM,CAAC;IAGZ,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,sBAAsB,EAAE,MAAM,CAAC;IAG/B,aAAa,EAAE,MAAM,CAAC;IAGtB,SAAS,EAAE,MAAM,CAAC;IAGlB,IAAI,EAAG,IAAI,CAAC;CACf;;AAeD,wBA6EG"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Gemeente = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const simple_database_1 = require("@simonbackx/simple-database");
|
|
6
|
+
const simple_database_2 = require("@simonbackx/simple-database");
|
|
7
|
+
const utility_1 = require("@stamhoofd/utility");
|
|
8
|
+
const uuid_1 = require("uuid");
|
|
9
|
+
const structures_1 = require("@stamhoofd/structures");
|
|
10
|
+
const City_1 = require("../models/addresses/City");
|
|
11
|
+
const PostalCode_1 = require("../models/addresses/PostalCode");
|
|
12
|
+
const Province_1 = require("../models/addresses/Province");
|
|
13
|
+
class Gemeente extends simple_database_2.Model {
|
|
14
|
+
}
|
|
15
|
+
exports.Gemeente = Gemeente;
|
|
16
|
+
Gemeente.table = "gemeenten";
|
|
17
|
+
tslib_1.__decorate([
|
|
18
|
+
(0, simple_database_2.column)({
|
|
19
|
+
primary: true, type: "string", beforeSave(value) {
|
|
20
|
+
return value !== null && value !== void 0 ? value : (0, uuid_1.v4)();
|
|
21
|
+
}
|
|
22
|
+
})
|
|
23
|
+
], Gemeente.prototype, "id", void 0);
|
|
24
|
+
tslib_1.__decorate([
|
|
25
|
+
(0, simple_database_2.column)({ type: "string" })
|
|
26
|
+
], Gemeente.prototype, "postcode", void 0);
|
|
27
|
+
tslib_1.__decorate([
|
|
28
|
+
(0, simple_database_2.column)({ type: "string" })
|
|
29
|
+
], Gemeente.prototype, "gemeente", void 0);
|
|
30
|
+
tslib_1.__decorate([
|
|
31
|
+
(0, simple_database_2.column)({ type: "string" })
|
|
32
|
+
], Gemeente.prototype, "postcode_hoofdgemeente", void 0);
|
|
33
|
+
tslib_1.__decorate([
|
|
34
|
+
(0, simple_database_2.column)({ type: "string" })
|
|
35
|
+
], Gemeente.prototype, "hoofdgemeente", void 0);
|
|
36
|
+
tslib_1.__decorate([
|
|
37
|
+
(0, simple_database_2.column)({ type: "string" })
|
|
38
|
+
], Gemeente.prototype, "provincie", void 0);
|
|
39
|
+
async function getProvince(name, provinces) {
|
|
40
|
+
const p = provinces.find(p => utility_1.StringCompare.typoCount(p.name, name) < 2 && p.country == structures_1.Country.Belgium);
|
|
41
|
+
if (p) {
|
|
42
|
+
return p;
|
|
43
|
+
}
|
|
44
|
+
const province = new Province_1.Province();
|
|
45
|
+
province.country = structures_1.Country.Belgium;
|
|
46
|
+
province.name = name.trim();
|
|
47
|
+
await province.save();
|
|
48
|
+
provinces.push(province);
|
|
49
|
+
return province;
|
|
50
|
+
}
|
|
51
|
+
exports.default = new simple_database_1.Migration(async () => {
|
|
52
|
+
if (STAMHOOFD.environment == "test") {
|
|
53
|
+
console.log("skipped in tests");
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
// Loop all gemeenten
|
|
57
|
+
const provinces = await Province_1.Province.all();
|
|
58
|
+
const gemeenten = await Gemeente.all();
|
|
59
|
+
const cities = [];
|
|
60
|
+
for (const gemeente of gemeenten) {
|
|
61
|
+
const province = await getProvince(gemeente.provincie, provinces);
|
|
62
|
+
// Some cities have the same name
|
|
63
|
+
const found = cities.find(c => c.name.trim() == gemeente.gemeente.trim() && c.provinceId == province.id);
|
|
64
|
+
if (!found) {
|
|
65
|
+
// Create the city
|
|
66
|
+
const city = new City_1.City();
|
|
67
|
+
city.name = gemeente.gemeente.trim();
|
|
68
|
+
city.country = structures_1.Country.Belgium;
|
|
69
|
+
city.provinceId = province.id;
|
|
70
|
+
await city.save();
|
|
71
|
+
// Also add postal code already
|
|
72
|
+
const postalCode = new PostalCode_1.PostalCode();
|
|
73
|
+
postalCode.postalCode = gemeente.postcode;
|
|
74
|
+
postalCode.cityId = city.id;
|
|
75
|
+
postalCode.country = structures_1.Country.Belgium;
|
|
76
|
+
await postalCode.save();
|
|
77
|
+
gemeente.city = city;
|
|
78
|
+
cities.push(city);
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
gemeente.city = found;
|
|
82
|
+
// Also add postal code already
|
|
83
|
+
const postalCode = new PostalCode_1.PostalCode();
|
|
84
|
+
postalCode.postalCode = gemeente.postcode;
|
|
85
|
+
postalCode.cityId = found.id;
|
|
86
|
+
postalCode.country = structures_1.Country.Belgium;
|
|
87
|
+
await postalCode.save();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
for (const gemeente of gemeenten) {
|
|
91
|
+
if (gemeente.gemeente.trim() == gemeente.hoofdgemeente.trim()) {
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
const hoofd = cities.find(c => c.name.trim() == gemeente.hoofdgemeente.trim() && c.provinceId == gemeente.city.provinceId);
|
|
95
|
+
if (!hoofd) {
|
|
96
|
+
// Create the city
|
|
97
|
+
const city = new City_1.City();
|
|
98
|
+
city.name = gemeente.hoofdgemeente.trim();
|
|
99
|
+
city.country = structures_1.Country.Belgium;
|
|
100
|
+
const province = await getProvince(gemeente.provincie, provinces);
|
|
101
|
+
city.provinceId = province.id;
|
|
102
|
+
await city.save();
|
|
103
|
+
cities.push(city);
|
|
104
|
+
// do not create a postal code here, these don't have one
|
|
105
|
+
console.log("Assigning " + gemeente.gemeente + " to " + city.name);
|
|
106
|
+
gemeente.city.parentCityId = city.id;
|
|
107
|
+
await gemeente.city.save();
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
console.log("Assigning " + gemeente.gemeente + " to " + hoofd.name);
|
|
111
|
+
gemeente.city.parentCityId = hoofd.id;
|
|
112
|
+
await gemeente.city.save();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
//# sourceMappingURL=1605262045-import-postcodes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1605262045-import-postcodes.js","sourceRoot":"","sources":["../../../src/migrations/1605262045-import-postcodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1605262046-import-postcodes-nl.d.ts","sourceRoot":"","sources":["../../../src/migrations/1605262046-import-postcodes-nl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;;AAuCxD,wBAuDG"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
const simple_database_1 = require("@simonbackx/simple-database");
|
|
5
|
+
const utility_1 = require("@stamhoofd/utility");
|
|
6
|
+
const fs_1 = tslib_1.__importDefault(require("fs"));
|
|
7
|
+
const readline_1 = tslib_1.__importDefault(require("readline"));
|
|
8
|
+
const structures_1 = require("@stamhoofd/structures");
|
|
9
|
+
const City_1 = require("../models/addresses/City");
|
|
10
|
+
const PostalCode_1 = require("../models/addresses/PostalCode");
|
|
11
|
+
const Province_1 = require("../models/addresses/Province");
|
|
12
|
+
async function getProvince(name, provinces) {
|
|
13
|
+
const p = provinces.find(p => utility_1.StringCompare.typoCount(p.name, name) == 0 && p.country == structures_1.Country.Netherlands);
|
|
14
|
+
if (p) {
|
|
15
|
+
return p;
|
|
16
|
+
}
|
|
17
|
+
const province = new Province_1.Province();
|
|
18
|
+
province.country = structures_1.Country.Netherlands;
|
|
19
|
+
province.name = name;
|
|
20
|
+
await province.save();
|
|
21
|
+
provinces.push(province);
|
|
22
|
+
return province;
|
|
23
|
+
}
|
|
24
|
+
async function getCity(name, provinceId, cities) {
|
|
25
|
+
const p = cities.find(p => utility_1.StringCompare.typoCount(p.name, name) == 0 && p.country == structures_1.Country.Netherlands);
|
|
26
|
+
if (p) {
|
|
27
|
+
return p;
|
|
28
|
+
}
|
|
29
|
+
const city = new City_1.City();
|
|
30
|
+
city.name = name;
|
|
31
|
+
city.country = structures_1.Country.Netherlands;
|
|
32
|
+
city.provinceId = provinceId;
|
|
33
|
+
await city.save();
|
|
34
|
+
cities.push(city);
|
|
35
|
+
return city;
|
|
36
|
+
}
|
|
37
|
+
exports.default = new simple_database_1.Migration(async () => {
|
|
38
|
+
if (STAMHOOFD.environment == "test") {
|
|
39
|
+
console.log("skipped in tests");
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
// We start by looping all provinces in the files
|
|
43
|
+
const folder = __dirname + "/data/postcodes/nl";
|
|
44
|
+
const provinces = (await fs_1.default.promises.readdir(folder, { withFileTypes: true }))
|
|
45
|
+
.filter((dirent) => !dirent.isDirectory())
|
|
46
|
+
.map((dirent) => {
|
|
47
|
+
return { path: folder + "/" + dirent.name, name: dirent.name };
|
|
48
|
+
});
|
|
49
|
+
const allProvinces = await Province_1.Province.where({ country: structures_1.Country.Netherlands });
|
|
50
|
+
for (const p of provinces) {
|
|
51
|
+
console.log(p.name);
|
|
52
|
+
const province = await getProvince(p.name.trim(), allProvinces);
|
|
53
|
+
//const cities = await fs.readFile(p.path, { encoding: "utf-8" });
|
|
54
|
+
const lineReader = readline_1.default.createInterface({
|
|
55
|
+
input: fs_1.default.createReadStream(p.path, { encoding: "utf-8" })
|
|
56
|
+
});
|
|
57
|
+
const cities = [];
|
|
58
|
+
for await (const line of lineReader) {
|
|
59
|
+
const splitted = line.split("\t");
|
|
60
|
+
if (splitted.length != 3) {
|
|
61
|
+
console.error(`Failed to parse line: ${line}`);
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
const postcode = splitted[0].trim();
|
|
65
|
+
const gemeente = splitted[1].trim();
|
|
66
|
+
const plaats = splitted[2].trim();
|
|
67
|
+
// Check plaats and gemeente
|
|
68
|
+
const city = await getCity(plaats, province.id, cities);
|
|
69
|
+
const city2 = await getCity(gemeente, province.id, cities); // might be the same as city
|
|
70
|
+
if (city2.id != city.id && city.parentCityId === null) {
|
|
71
|
+
city.parentCityId = city2.id;
|
|
72
|
+
await city.save();
|
|
73
|
+
}
|
|
74
|
+
// Also add postal code already
|
|
75
|
+
const postalCode = new PostalCode_1.PostalCode();
|
|
76
|
+
postalCode.postalCode = postcode;
|
|
77
|
+
postalCode.cityId = city.id;
|
|
78
|
+
postalCode.country = structures_1.Country.Netherlands;
|
|
79
|
+
await postalCode.save();
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
//# sourceMappingURL=1605262046-import-postcodes-nl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1605262046-import-postcodes-nl.js","sourceRoot":"","sources":["../../../src/migrations/1605262046-import-postcodes-nl.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
DROP TABLE `gemeenten`;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
INSERT INTO `email_templates` (`id`, `subject`, `groupId`, `webshopId`, `organizationId`, `type`, `text`, `html`, `json`, `updatedAt`, `createdAt`) VALUES
|
|
2
|
+
('0bc230e7-f254-4a9f-9213-60c27a8c61b0', '[{{webshopName}}] Bestelling {{nr}}', NULL, NULL, NULL, 'OrderConfirmationPOS', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Hou er rekening mee dat je deze bestelling ter plaatse nog moet betalen. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\nMet vriendelijke groeten,{{organizationName}}\nOverzicht\n{{orderDetailsTable}}\n\n{{orderTable}}\nTe betalen {{orderPrice}}\nBouw ook een webshop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling bekijken\n \n \n \n \n\n\nGebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Bestelling {{nr}}</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. <strong>Hou er rekening mee dat je deze bestelling ter plaatse nog moet betalen.</strong> Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Te betalen {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Bouw ook een webshop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/webshops\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling bekijken</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><br><em>Gebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". \", \"type\": \"text\"}, {\"text\": \"Hou er rekening mee dat je deze bestelling ter plaatse nog moet betalen.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Te betalen \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bouw ook een webshop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/webshops\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling bekijken\", \"type\": \"text\"}]}, {\"type\": \"descriptiveText\", \"content\": [{\"type\": \"hardBreak\"}, {\"text\": \"Gebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:17:50', '2022-03-27 14:17:50'),
|
|
3
|
+
('0d9bb8d3-0615-4d3c-8a3d-ebb4413bafa4', '[{{webshopName}}] Jouw tickets (bestelling {{nr}})', NULL, NULL, NULL, 'TicketsConfirmation', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw tickets downloaden via de onderstaande knop.\n\n\n \n \n \n \n Download tickets\n \n \n \n \n\n\nJe kan jouw bestelling hieronder nog eens nakijken.\nMet vriendelijke groeten,{{organizationName}}Overzicht\nOPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\n{{orderDetailsTable}}\n\n{{orderTable}}\nTotaal {{orderPrice}}\nOrganiseer ook een ticketverkoop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling nakijken\n \n \n \n \n\n\nVia de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Jouw tickets (bestelling {{nr}})</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw tickets downloaden via de onderstaande knop.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Download tickets</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Je kan jouw bestelling hieronder nog eens nakijken.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><strong>OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.</strong></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Totaal {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Organiseer ook een ticketverkoop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/ticketverkoop\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling nakijken</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><em>Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". Je kan jouw tickets downloaden via de onderstaande knop.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Download tickets\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Je kan jouw bestelling hieronder nog eens nakijken.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Totaal \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Organiseer ook een ticketverkoop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/ticketverkoop\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling nakijken\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"descriptiveText\", \"content\": [{\"text\": \"Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:23:25', '2022-03-27 14:23:25'),
|
|
4
|
+
('73ca3f42-341a-49d6-95e8-d53f76f48b08', '[{{webshopName}}] Betaling ontvangen (bestelling {{nr}})', NULL, NULL, NULL, 'OrderReceivedTransfer', 'Dag {{firstName}},\nWe hebben jouw bestelling (bestelnummer {{nr}}) in onze administratie gemarkeerd als betaald. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\nMet vriendelijke groeten,{{organizationName}}\nOverzicht\n{{orderDetailsTable}}\n{{orderTable}}\nTotaal {{orderPrice}} (betaald)\nBouw ook een webshop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling openen\n \n \n \n \n\n\nKlik op de bovenstaande knop om de bestelling te openen in jouw browser.\n', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Betaling ontvangen (bestelling {{nr}})</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">We hebben jouw bestelling (bestelnummer {{nr}}) in onze administratie gemarkeerd als betaald. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Totaal {{orderPrice}} (betaald)</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Bouw ook een webshop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/webshops\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling openen</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><em>Klik op de bovenstaande knop om de bestelling te openen in jouw browser.</em></p><p style=\"margin: 0px; padding: 0px;\"><br></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"We hebben jouw bestelling (bestelnummer \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \") in onze administratie gemarkeerd als betaald. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Totaal \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}, {\"text\": \" (betaald)\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bouw ook een webshop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/webshops\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling openen\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"descriptiveText\", \"content\": [{\"text\": \"Klik op de bovenstaande knop om de bestelling te openen in jouw browser.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}, {\"type\": \"paragraph\"}]}, \"version\": 160}', '2022-03-27 14:18:10', '2022-03-27 14:18:10'),
|
|
5
|
+
('7b5c1448-f792-44d0-8e41-87dd95a11aa3', '[{{webshopName}}] Bestelling {{nr}}', NULL, NULL, NULL, 'OrderConfirmationTransfer', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan de betaalinstructies en bestelling hieronder nog eens nakijken, of via de knop onderaan. \nMet vriendelijke groeten,{{organizationName}}\nBetaalinstructies\nVergeet zeker niet om de mededeling \'{{transferDescription}} \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.\n{{paymentTable}}\n\nOverzicht\n{{orderDetailsTable}}\n\n{{orderTable}}\nTe betalen {{orderPrice}}\nBouw ook een webshop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Betaalinstructies\n \n \n \n \n\n\nGebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Bestelling {{nr}}</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan de betaalinstructies en bestelling hieronder nog eens nakijken, of via de knop onderaan. </p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Betaalinstructies</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Vergeet zeker niet om de mededeling \'{{transferDescription}} \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"paymentTable\">{{paymentTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Te betalen {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Bouw ook een webshop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/webshops\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Betaalinstructies</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><br><em>Gebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". Je kan de betaalinstructies en bestelling hieronder nog eens nakijken, of via de knop onderaan. \", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Betaalinstructies\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Vergeet zeker niet om de mededeling \'\", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"transferDescription\"}}, {\"text\": \" \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"paymentTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Te betalen \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bouw ook een webshop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/webshops\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Betaalinstructies\", \"type\": \"text\"}]}, {\"type\": \"descriptiveText\", \"content\": [{\"type\": \"hardBreak\"}, {\"text\": \"Gebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:20:50', '2022-03-27 14:20:50'),
|
|
6
|
+
('9d3b9411-a47a-4a61-b870-e6744d3a7931', '[{{webshopName}}] Jouw tickets zijn beschikbaar (bestelling {{nr}})', NULL, NULL, NULL, 'TicketsReceivedTransfer', 'Dag {{firstName}},\nWe hebben de betaling van bestelling {{nr}} ontvangen. Jouw tickets kan je nu downloaden via de onderstaande knop.\n\n\n \n \n \n \n Download tickets\n \n \n \n \n\n\nMet vriendelijke groeten,{{organizationName}}Overzicht\nOPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\n{{orderDetailsTable}}\n\n{{orderTable}}\nTotaal {{orderPrice}}\nOrganiseer ook een ticketverkoop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling nakijken\n \n \n \n \n\n\nVia de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Jouw tickets zijn beschikbaar (bestelling {{nr}})</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">We hebben de betaling van bestelling {{nr}} ontvangen. Jouw tickets kan je nu downloaden via de onderstaande knop.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Download tickets</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><strong>OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.</strong></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Totaal {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Organiseer ook een ticketverkoop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/ticketverkoop\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling nakijken</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><em>Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"We hebben de betaling van bestelling \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \" ontvangen. Jouw tickets kan je nu downloaden via de onderstaande knop.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Download tickets\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Totaal \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Organiseer ook een ticketverkoop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/ticketverkoop\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling nakijken\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"descriptiveText\", \"content\": [{\"text\": \"Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:23:14', '2022-03-27 14:23:14'),
|
|
7
|
+
('c40ff104-b7c6-400f-8242-0e6af4e561f9', '[{{webshopName}}] Jouw tickets (bestelling {{nr}})', NULL, NULL, NULL, 'TicketsConfirmationPOS', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw tickets downloaden via de onderstaande knop.\nVergeet niet dat je de tickets ter plaatse nog moet betalen.\n\n\n \n \n \n \n Download tickets\n \n \n \n \n\n\nMet vriendelijke groeten,{{organizationName}}Overzicht\nOPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\n{{orderDetailsTable}}\n\n{{orderTable}}\nTotaal {{orderPrice}}\nOrganiseer ook een ticketverkoop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling nakijken\n \n \n \n \n\n\nVia de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Jouw tickets (bestelling {{nr}})</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw tickets downloaden via de onderstaande knop.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><strong>Vergeet niet dat je de tickets ter plaatse nog moet betalen.</strong></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Download tickets</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><strong>OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.</strong></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Totaal {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Organiseer ook een ticketverkoop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/ticketverkoop\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling nakijken</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p style=\"margin: 0px; padding: 0px;\"><br></p><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><em>Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". Je kan jouw tickets downloaden via de onderstaande knop.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Vergeet niet dat je de tickets ter plaatse nog moet betalen.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Download tickets\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"OPGELET: Deze e-mail is geen geldig ticket! Download daarvoor de tickets via de knop bovenaan.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Totaal \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Organiseer ook een ticketverkoop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/ticketverkoop\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling nakijken\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"descriptiveText\", \"content\": [{\"text\": \"Via de bovenstaande knop kan je de gegevens van jouw bestelling nakijken en jouw tickets downloaden.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:23:11', '2022-03-27 14:23:11'),
|
|
8
|
+
('c8b363e0-0150-4e24-a9e2-0984dcbe6d32', '[{{webshopName}}] Bestelling {{nr}}', NULL, NULL, NULL, 'TicketsConfirmationTransfer', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Zodra we jouw overschrijving ontvangen, krijg je jouw tickets via e-mail. Je kan de betaalinstructies en bestelling nakijken via de knop onderaan deze e-mail. \nMet vriendelijke groeten,{{organizationName}}\nBetaalinstructies\nVergeet zeker niet om de mededeling \'{{transferDescription}} \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.\n{{paymentTable}}\n\nOverzicht\nOPGELET: Deze e-mail is geen geldig ticket! Die ontvang je pas na betaling van jouw bestelling.\n{{orderDetailsTable}}\n\n{{orderTable}}\nTe betalen {{orderPrice}}\nOrganiseer ook een ticketverkoop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Betaalinstructies\n \n \n \n \n\n\nGebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Bestelling {{nr}}</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. <strong>Zodra we jouw overschrijving ontvangen, krijg je jouw tickets via e-mail.</strong> Je kan de betaalinstructies en bestelling nakijken via de knop onderaan deze e-mail. </p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Betaalinstructies</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Vergeet zeker niet om de mededeling \'{{transferDescription}} \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"paymentTable\">{{paymentTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><strong>OPGELET: Deze e-mail is geen geldig ticket! Die ontvang je pas na betaling van jouw bestelling.</strong></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Te betalen {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Organiseer ook een ticketverkoop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/ticketverkoop\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Betaalinstructies</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><br><em>Gebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". \", \"type\": \"text\"}, {\"text\": \"Zodra we jouw overschrijving ontvangen, krijg je jouw tickets via e-mail.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \" Je kan de betaalinstructies en bestelling nakijken via de knop onderaan deze e-mail. \", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Betaalinstructies\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Vergeet zeker niet om de mededeling \'\", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"transferDescription\"}}, {\"text\": \" \' te vermelden in jouw overschrijving, als je die nog niet zou hebben uitgevoerd.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"paymentTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"OPGELET: Deze e-mail is geen geldig ticket! Die ontvang je pas na betaling van jouw bestelling.\", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Te betalen \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Organiseer ook een ticketverkoop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/ticketverkoop\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Betaalinstructies\", \"type\": \"text\"}]}, {\"type\": \"descriptiveText\", \"content\": [{\"type\": \"hardBreak\"}, {\"text\": \"Gebruik de bovenstaande knop om de betaalinstructies van jouw bestelling na te kijken.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:23:21', '2022-03-27 14:23:21'),
|
|
9
|
+
('dad3a474-ebc0-4533-9f4b-6cee9df4b0f2', '[{{webshopName}}] Bestelling {{nr}}', NULL, NULL, NULL, 'OrderConfirmationOnline', 'Dag {{firstName}},\nBedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\nMet vriendelijke groeten,{{organizationName}}\nOverzicht\n{{orderDetailsTable}}\n\n{{orderTable}}\nTotaal {{orderPrice}}\nBouw ook een webshop voor jouw vereniging via Stamhoofd\n\n \n \n \n \n Bestelling openen\n \n \n \n \n\n\nGebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.', '<!DOCTYPE html>\n<html>\n\n<head>\n<meta charset=\"utf-8\" />\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n<meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\" />\n<title>[{{webshopName}}] Bestelling {{nr}}</title>\n<style type=\"text/css\">body {\n color: #000716;\n color: var(--color-dark, #000716);\n font-family: -apple-system-body, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n font-size: 12pt;\n line-height: 1.4;\n}\n\np {\n margin: 0;\n padding: 0;\n line-height: 1.4;\n}\n\np.description {\n color: var(--color-gray-4, #5e5e5e);\n}\n\nstrong {\n font-weight: bold;\n}\n\nem {\n font-style: italic;\n}\n\nh1 {\n font-size: 30px;\n font-weight: bold;\n line-height: 1.2;\n margin: 0;\n padding: 0;\n}\n@media (max-width: 350px) {\n h1 {\n font-size: 24px;\n }\n}\n\nh2 {\n font-size: 20px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh3 {\n font-size: 16px;\n line-height: 1.2;\n font-weight: bold;\n margin: 0;\n padding: 0;\n}\n\nh4 {\n line-height: 1.2;\n font-weight: 500;\n margin: 0;\n padding: 0;\n}\n\nol, ul {\n list-style-position: outside;\n padding-left: 30px;\n}\n\nhr {\n height: 1px;\n background: var(--color-border, var(--color-gray-2, #dcdcdc));\n border-radius: 1px;\n padding: 0;\n margin: 20px 0;\n outline: none;\n border: 0;\n}\n\n.button {\n touch-action: inherit;\n -webkit-user-select: auto;\n -moz-user-select: auto;\n -ms-user-select: auto;\n user-select: auto;\n cursor: pointer;\n display: inline-block !important;\n line-height: 42px;\n font-size: 16px;\n font-weight: bold;\n}\n.button:active {\n transform: none;\n}\n\nimg {\n max-width: 100%;\n height: auto;\n}\n\na, a:link, a:visited, a:active, a:hover {\n text-decoration: underline;\n color: blue;\n}\n\n.email-data-table {\n width: 100%;\n border-collapse: collapse;\n}\n.email-data-table th, .email-data-table td {\n text-align: left;\n padding: 10px 10px 10px 0;\n border-bottom: 1px solid var(--color-border, var(--color-gray-2, #dcdcdc));\n vertical-align: middle;\n}\n.email-data-table th:last-child, .email-data-table td:last-child {\n text-align: right;\n padding-right: 0;\n}\n.email-data-table thead {\n font-weight: bold;\n}\n.email-data-table thead th {\n font-size: 10pt;\n}\n.email-data-table h4 + p {\n padding-top: 3px;\n opacity: 0.8;\n font-size: 11pt;\n} hr {height: 2px;background: #e7e7e7; border-radius: 1px; padding: 0; margin: 20px 0; outline: none; border: 0;} .button.primary { margin: 0; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0 27px; line-height: 42px; background: {{primaryColor}}; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: 0.2s transform, 0.2s opacity; } .button.primary:active { transform: scale(0.95, 0.95); } .button { color: #5e5e5e; } </style>\n</head>\n\n<body>\n<p style=\"margin: 0px; padding: 0px;\">Dag {{firstName}},</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is {{nr}}. Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.</p><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\">Met vriendelijke groeten,</p><p style=\"margin: 0px; padding: 0px;\">{{organizationName}}</p><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><h2 style=\"margin: 0px; padding: 0px;\">Overzicht</h2><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderDetailsTable\">{{orderDetailsTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><p style=\"margin: 0px; padding: 0px;\"><br></p><div data-type=\"smartVariableBlock\" data-id=\"orderTable\">{{orderTable}}</div><p style=\"margin: 0px; padding: 0px;\"><br></p><h3 style=\"margin: 0px; padding: 0px;\">Totaal {{orderPrice}}</h3><p style=\"margin: 0px; padding: 0px;\"><br></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><p style=\"margin: 0px; padding: 0px;\"><strong>Bouw ook een webshop voor jouw vereniging via </strong><a target=\"_blank\" rel=\"noopener noreferrer nofollow\" href=\"https://www.stamhoofd.be/webshops\"><strong>Stamhoofd</strong></a></p><hr style=\"height: 2px; background-color: rgb(231, 231, 231); border-radius: 1px; padding: 0px; margin: 20px 0px; outline: none; border: 0px;\"><div data-type=\"smartButton\" data-id=\"orderUrl\"><table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody><tr>\n <td>\n <table cellspacing=\"0\" cellpadding=\"0\">\n <tbody><tr>\n <td style=\"border-radius: 7px;\" bgcolor=\"{{primaryColor}}\">\n <a class=\"button primary\" href=\"{{orderUrl}}\" target=\"\" style=\"margin: 0px; text-decoration: none; font-size: 16px; font-weight: bold; color: white; padding: 0px 27px; line-height: 42px; text-align: center; border-radius: 7px; touch-action: manipulation; display: inline-block; transition: transform 0.2s ease 0s, opacity 0.2s ease 0s;\">Bestelling openen</a>\n </td>\n </tr>\n </tbody></table>\n </td>\n</tr>\n</tbody></table></div><p class=\"description\" style=\"color: rgb(94, 94, 94);\"><br><em>Gebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.</em></p>\n</body>\n\n</html>', '{\"value\": {\"type\": \"doc\", \"content\": [{\"type\": \"paragraph\", \"content\": [{\"text\": \"Dag \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"firstName\"}}, {\"text\": \",\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bedankt voor jouw bestelling! We hebben deze goed ontvangen. Jouw bestelnummer is \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"nr\"}}, {\"text\": \". Je kan jouw bestelling hieronder nog eens nakijken, of via de knop onderaan.\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Met vriendelijke groeten,\", \"type\": \"text\"}]}, {\"type\": \"paragraph\", \"content\": [{\"type\": \"smartVariable\", \"attrs\": {\"id\": \"organizationName\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 2}, \"content\": [{\"text\": \"Overzicht\", \"type\": \"text\"}]}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderDetailsTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"paragraph\"}, {\"type\": \"smartVariableBlock\", \"attrs\": {\"id\": \"orderTable\"}}, {\"type\": \"paragraph\"}, {\"type\": \"heading\", \"attrs\": {\"level\": 3}, \"content\": [{\"text\": \"Totaal \", \"type\": \"text\"}, {\"type\": \"smartVariable\", \"attrs\": {\"id\": \"orderPrice\"}}]}, {\"type\": \"paragraph\"}, {\"type\": \"horizontalRule\"}, {\"type\": \"paragraph\", \"content\": [{\"text\": \"Bouw ook een webshop voor jouw vereniging via \", \"type\": \"text\", \"marks\": [{\"type\": \"bold\"}]}, {\"text\": \"Stamhoofd\", \"type\": \"text\", \"marks\": [{\"type\": \"link\", \"attrs\": {\"href\": \"https://www.stamhoofd.be/webshops\", \"target\": \"_blank\"}}, {\"type\": \"bold\"}]}]}, {\"type\": \"horizontalRule\"}, {\"type\": \"smartButton\", \"attrs\": {\"id\": \"orderUrl\"}, \"content\": [{\"text\": \"Bestelling openen\", \"type\": \"text\"}]}, {\"type\": \"descriptiveText\", \"content\": [{\"type\": \"hardBreak\"}, {\"text\": \"Gebruik de bovenstaande knop om de gegevens van jouw bestelling na te kijken.\", \"type\": \"text\", \"marks\": [{\"type\": \"italic\"}]}]}]}, \"version\": 160}', '2022-03-27 14:17:42', '2022-03-27 14:17:42');
|