The first (and half of the second) April release includes new features and internal improvements. We list the most important new features briefly:

  • For all nerds: Our UI projects are now based on Angular 9 (including IVY!!)
  • It is now much easier to define placeholders in templates We have added new placeholders and now you can also search for them (finally!)
  • The satisfaction smart action now saves the values correctly
  • Amounts are now formatted correctly (EUR is formatted differently than CHF) We now comply with international standards.
  • The confusing username in the profile has been removed. In future, please log in with your e-mail address only.
  • There is now a new and more modern booking page for dates including an admin mode. Partners can now cancel appointments at any time.
  • It is now possible to rebook appointments. Customers can postpone the appointment a maximum of once, partners can postpone the appointments at any time via admin link. Many thanks, Globesailing for the financing!
  • Now it is possible to define up to 100 discounts at one go.
  • Our booking widget now checks all connected calendars for the calculation of free dates.
    It is now possible to connect several calendars. We now synchronise the appointments to all external calendars if they have activated the synchronisation function. Thank you Globesailing for financing!
  • If SMS cannot be sent, then we will now try this up to 5 times, it is possible that the SMS provider is not available.
  • It is now possible to define the payment status of an appointment as a placeholder in appointment titles.
  • It is now possible to define a special e-mail address for appointment cancellations. Thanks Lifestyle for the financing!


TABLE OF CONTENTS


Calenso Dashboard

  • BRAIN-3967: Add smart-widget to comming-soon features
  • BRAIN-3989: Searching for placeholders does not work
  • BRAIN-3996: Ability to define email address for cancellations
  • BRAIN-4013: Delay setting_ids are wrong
  • BRAIN-4014: Show defined setting values in the smart-action popups (all)
  • BRAIN-4021: CHF should be dynamic based on currency value of partner (all statistics)
  • BRAIN-4022: Reseller Dashboard link in navigation should only be visible when partner is a Reseller
  • BRAIN-4023: Add helper text to one toggle in booking widget setting
  • BRAIN-4031: Remove username from profile
  • BRAIN-4032: Change customer link in appointment page to new booking site
  • BRAIN-4039: Validation for fields in profile is wrong
  • BRAIN-3291: Upgrade calio-dashboard to Angular 9
  • BRAIN-3473: Change shortcodes templates
  • BRAIN-3674: New customers are not available in customer select-list in bryntum scheduler (localstorage update?)
  • BRAIN-3710: If no payment settings are enabled it shows a white screen. Please add a message that user has to enable stripe or bexio in settings.
  • BRAIN-3740: Implement bulk create of coupons
  • BRAIN-3742: Final event registration page - use place as location, if null, use street, zip and city as fallback.
  • BRAIN-3790: Custom input component breaks on Safari
  • BRAIN-3797: Invite leads: show buttons under each other on mobile
  • BRAIN-3820: Create appointment rebooking component (dialog)
  • BRAIN-3820: Test failed: Create appointment rebooking component (dialog)
  • BRAIN-3840: Ability to define multiple external calendars as default calendars (synching)
  • BRAIN-3844: If coupon has "duration_in_month" defined, it should not be possible to redeem coupon with yearly payment interval
  • BRAIN-3855: Timestamp in notification popup should be translated
  • BRAIN-3882: Cannot create resource "save" is disabled
  • BRAIN-3888: Bexio link in setup is wrong
  • BRAIN-3891: Non-standard button is used in rebooking
  • BRAIN-3892: Resource services is marked as mandatory field, but it isn't
  • BRAIN-3895: Price is not properly handled on appointment page
  • BRAIN-3908: Customer detail view breaks when customer note content is empty
  • BRAIN-3909: Change default values for create availability
  • BRAIN-3911: Mouseover on profile image should indicate that its clickable
  • BRAIN-3912: Typo in reseller program iframe integration code
  • BRAIN-3915: If cancellation is no longer possible, rebooking should also be blocked
  • BRAIN-3918: Globally implement correct currency formatting in Calio
  • BRAIN-3920: Appointment booking page does not support multi-lang services
  • BRAIN-3921: Cancel button does not have the same height as other buttons
  • BRAIN-3922: Start and end time in appointment booking page is wrong
  • BRAIN-3924: Show original appointment booking if appointment was rebooked before (and disable rebooking)
  • BRAIN-3925: Test failed: Button on reseller on iPad is not looking good
  • BRAIN-3929: Add helper text for sms sender name changes
  • BRAIN-3929: Only show supported widget languages on booking page
  • BRAIN-3930: Coupons don't work if only bexio is enabled
  • BRAIN-3935: Add support for partner admin link in appointment-booking-page
  • BRAIN-3937: Show IDs on store/resource/appointement_service edit dialog
  • BRAIN-3938: Appointment cancellation is not confirmed first
  • BRAIN-3939: Send edit mode to backend
  • BRAIN-3940: Appointment booking page ignore courtesy form
  • BRAIN-3941: If appointment was rebooked, show reason
  • BRAIN-3942: If user clicks on "rebook" button, it is not disabled (it is possible to click button multiple times)
  • BRAIN-3962: Link users to supportsite that describes how to preselect fields in booking widget
  • BRAIN-3945: Rebooking does not work on real mobile device
  • BRAIN-3946: ICS download on real mobile device does not work (downloads json)
  • BRAIN-3948: Setting to enable/disable appointment rebookings
  • BRAIN-3949: After cancelling the appointment, the view should be updated (appointment should be gone)
  • BRAIN-3950: Wrong german string is shown if appointment was not found
  • BRAIN-3960: Add new attribute to absences to control if absence is all day absence or not


API

  • BRAIN-3802: Calio UI "Partners Landing Page Logo" is not used on booking page (only via my.calenso)
  • BRAIN-3965: Conference url placeholder cannot be set in reminder template
  • BRAIN-3970: Finalize RIZ templates
  • BRAIN-4002: Smartaction mails are not triggered
  • BRAIN-4015: If stripe or bexio are removed, remove online-payment settings
  • BRAIN-4034: Implement password reset workflow in API
  • BRAIN-3474: RIZ AG: More configurations for email templates
  • BRAIN-3683: All day absences are not stored as all_day
  • BRAIN-3716: Bexio tax-id problem when creating appointment
  • BRAIN-3793: Implement bulk create of coupons
  • BRAIN-3808: Default partner "Setup" new partner accounts with healthApp Partnership Id
  • BRAIN-3812: Globesailling (paid): Sync appointment to all external calendars, add admin-cancellation link to ICS file and email, implement ability to admin cancel appointment/event, rebooking of appointments.
  • BRAIN-3816: Upgrade not possible
  • BRAIN-3861: Migrate Bitly to Cuttly
  • BRAIN-3905: healthApp Partner not visible in superadmin reseller dashboard
  • BRAIN-3907: Prepare Calenso for HealthApp Partnership
  • BRAIN-3838: Implement new API for appointment rebooking
  • BRAIN-3926: Send sms in queue
  • BRAIN-3947: Setting to enable/disable appointment rebookings
  • BRAIN-3958: Deleting external calendar fails
  • BRAIN-3972: After migration of external event ids, cancellations do not delete events from external calendars
  • BRAIN-3923: Bexio settings and invoice creation should also support excluding_taxes
  • BRAIN-3986: It is not visible in external event if service was paid
  • BRAIN-3995: Add support for custom email address for cancellations


Booking Widget

  • BRAIN-3292: Upgrade widget to Angular 9
  • BRAIN-3743: // crashes coupon validation
  • BRAIN-3772: Improve event time proposals in widget
  • BRAIN-3795: The final error page alert does not use the whole width (like yellow alert)
  • BRAIN-3897: Final booking screen does not use proper courtesy_form from partner in subtitles
  • BRAIN-3919: Globally implement correct currency formatting in Widget
  • BRAIN-3932: .collapse CSS does override default bootstrap css on websites (-> please use custom class)