Booking Activities

Description

Booking Activities est un outil de réservation complet conçu pour les activités. Il est très simple d’utilisation :

  1. Glissez et déposez vos activités sur votre planning.
  2. Copiez / Collez un code court (shortcode) pour afficher un formulaire de réservation. Ou intégrez-le aux produits WooCommerce.
  3. Sélectionnez un évènement sur ce calendrier et réservez-le.

Essayez cet outil de réservation en live sur le site de démo, ou générez un site web temporaire pour tester l’interface d’administration !

Vidéo faite avec la version 1.1.1. Booking Activities évolue constamment.

Fonctionnalités principales

★ = Fonctionnalité unique que seul Booking Activities possède.

Éditeur

  • WYSIWYG: Construisez vos plannings de manière visuelle
  • Glissez et déposez les évènements directement sur le calendrier
  • Groupez vos évènements pour vendre facilement des packs, des abonnements, des séminaires, ou des évènements s’étendant sur plusieurs jours
  • Créez des évènements répétés (avec la fréquence désirée et des dates faisant exceptions)
  • Aucune limitation sur le nombre de plannings, d’activités, d’évènements et de réservations
  • Système de gestion des permissions : vos gérants gèrent leur propres plannings et réservations uniquement. Ex. : Vous pouvez mettre en place Booking Activities sur une marketplace.

Formulaires de réservation

  • Formulaires entièrement personnalisables dans un éditeur WYSIWYG
  • Codes courts pour afficher des formulaires de réservations ou de simples calendriers
  • ★ Affichez les évènements provenant de plusieurs plannings et activités à la fois
  • Réservation en un clic : sélectionnez simplement le(s) évènement(s) sur le calendrier et cliquez sur « Réserver » !
  • Action personnalisée lorsque vous envoyez le formulaire ou lorsque vous cliquez sur un évènement : faire une réservation, ★ ajouter un produit au panier, rediriger vers une URL
  • Sélectionner et réserver plusieurs évènements à la fois / ★ les ajouter au panier tous en même temps
  • Connexion / Enregistrement transparent : intégré dans le formulaire et traité avec la réservation. Vous pouvez aussi réserver sans compte, ou afficher un formulaire de connexion seul avec un code court.
  • 100% responsive : s’adapte parfaitement sur mobiles, tablettes et ordinateurs.
  • Définissez des champs personnalisés et des métadonnées de réservation grâce au module Advanced Forms

Paiements en ligne avec WooCommerce

  • Les calendriers sont automatiquement intégrés aux pages produits WooCommerce
  • ★ Liez plusieurs plannings et activités à un produit WC
  • Système d’expiration de panier : les réservations dans le panier sont temporaires
  • Validation automatique lorsque le paiement est perçu
  • ★ L’état de la commande WooCommerce et l’état de ses réservations sont intelligemment liés
  • ★ Remboursement automatique par code promo WC ou par la passerelle de paiement (si autorisé)

Gérer les réservations

  • Retrouver toutes vos réservations en un coup d’œil sur un calendrier et dans une liste. Utilisez des filtres dynamiques, le tri et des colonnes personnalisées.
  • Actions sur la réservation : valider, annuler, replanifier, ★ rembourser…
  • ★ Afficher le calendrier des réservations de vos clients et leur liste de réservations avec un code court
  • ★ Vos clients peuvent annuler ou replanifier leurs réservations et demander un remboursement par eux-mêmes
  • Exportez vos réservations en flux CSV et iCal, et synchronisez-les sur des applications de tableur et de calendrier (Ex. : Google Sheet, Google Agenda)

Options de disponibilité

  • Paramétrez la période de réservation : les clients ne peuvent ni réserver trop tôt, ni trop tard
  • Rendez vos évènements privés ou réservables par plusieurs utilisateurs
  • ★ Paramétrez le nombre min et max de réservations autorisées par utilisateur et par évènement
  • Proposez vos activités à certains rôles d’utilisateurs uniquement

Notifications

  • Des e-mails automatiques sont envoyés à la fois aux administrateurs et aux clients lorsqu’une réservation est effectuée, quand leur état change, et lorsqu’elles sont replanifiées.
  • Personnalisez intégralement et configurez toutes vos notifications e-mail
  • Sur les sites multilingues, les e-mails sont envoyés à vos clients dans leur propre langue
  • Envoyez des notifications par activité et des rappels par e-mail, SMS et ★ Push grâce au module Notification Pack

Multilingue

  • Supporte les sites multilingues avec WPML et ★ qTranslate-XT (extension gratuite)
  • ★ Détection et changement automatique de la langue, du format de dates et d’heures, du premier jour de la semaine…
  • Personnalisez la plupart des messages frontend directement depuis les paramètres.
  • Entièrement traduit en Anglais et en Français. Vous pouvez également nous aider à traduire Booking Activities dans votre langue.

Le meilleur à l’intérieur

  • API pour les développeurs (actions et filtres PHP, actions JS). Documentation à venir.
  • Utilise l’esthétique et fonctionnel FullCalendar
  • Prend en charge WP Multisite
  • Supporte les outils de confidentialité WP pour exporter et supprimer les données personnelles de vos clients

Voir la liste complète des fonctionnalités ici.

Étendez ces fonctionnalités avec des modules :

  • Resource Availability: Gérez la disponibilité et l’affectation de vos ressources
  • Advanced Forms: Ajoutez tout type de champs (payants) à vos formulaires de réservation
  • Display Pack : Personnalisez vos calendriers ou appliquez un affichage alternatif (datepicker)
  • Price and Credits : Fixez les prix par évènement, des prix dégressifs et des catégories de prix (enfants, adultes, etc.), payez en crédits
  • Notification Pack: Envoyez des notifications par activité et des rappels de réservation par e-mail, SMS et Push
  • Order for Customers: Vous pouvez réserver / commander en le nom de vos clients

Voir la liste complète des modules ici

Cette extension est faite pour… Vous ?

Pour savoir si Booking Activities est fait pour vous, vous devez juste comprendre comment il fonctionne :

  1. Vous placez des évènements sur un calendrier
  2. Vos clients les choisissent et les réservent

Si cela correspond à votre activité, essayez-le !

Ce système de réservation a été spécialement conçu pour remplir les besoins de la plupart des prestataires d’activités :

  • Pour le tourisme, le sport et les loisirs (nautiques, aériens, terrestres, en montagne, à pied ou sur roues, à l’extérieur ou à l’intérieur…)
  • Pour les cours, formations, salons (éducation, musique, dessin, séminaires…)
  • Pour les activités culturelles (musée, théâtre / cinéma, réservation d’évènements…)
  • Pour vous aussi, mais vous ne figurez pas dans la liste ? Dîtes-le nous 🙂

Nous sommes à votre écoute

Vous êtes les développeurs. Vous l’avez toujours été.

Booking Activities a été conçu et développé en collaboration avec des prestataires d’activités.

Maintenant il devient chaque jour meilleur grâce à vous.

Alors n’hésitez pas à nous dire s’il vous manque une fonctionnalité, si vous trouvez un bug ou tout ce qui peut rendre votre système de réservation meilleur !

Prérequis

  • WordPress: 3.6 ou plus
  • PHP: 5.3 ou plus
  • MySQL: 5.7.22 ou plus (ou MariaDB 10.5.4 ou plus)
  • WooCommerce: 3.x ou ultérieure
  • Booking Activities peut être utilisé sans WooCommerce

Captures d’écran

  • Glisser et déposer pour éditer. Cliquer pour réserver. Fonctionne à la fois avec un code court et avec WooCommerce.
  • Éditeur de planning WYSIWYG. Glissez et déposez vos évènements tout simplement. Cliquez sur un évènement pour plus de réglages (disponibilité, répétition...).
  • Créez des évènements qui se répètent chaque jour, semaine ou mois. Vous pouvez ajouter des dates d'exception à la répétition.
  • Grouper vos évènements est simple : sélectionnez simplement plusieurs évènements et cliquez sur « Ajouter un groupe ». Ou bien sélectionnez un groupe existant et modifier-le aussitôt.
  • Créez et personnalisez votre formulaire de réservation. Vous pouvez combiner les évènements et les réglages de plusieurs plannings. Vous pouvez rendre chaque formulaire unique.
  • Utilisez un code court pour afficher un formulaire de réservation (ou un calendrier seul). Vos clients peuvent se connecter ou s'enregistrer au cours de la réservation, ils peuvent également réserver sans compte.
  • Lorsqu'un client clique sur un évènement groupé, le groupe entier est sélectionné. Si l'évènement fait partie de plusieurs groupes, le client doit en choisir un dans une boîte de dialogue.
  • Il y a également une option pour autoriser vos clients à sélectionner plusieurs évènements de leur choix à la fois.
  • Liez facilement un formulaire de réservation à un produit WooCommerce. Vous pouvez définir un calendrier d’évènements différent pour chaque variation.
  • Un formulaire de réservation apparaît automatiquement sur les pages produits WooCommerce désirées.
  • Système d'expiration du panier de WooCommerce : lorsque le temps est écoulé, les réservations sont annulées et le panier vidé. Vous pouvez également le désactiver.
  • Vos réservations sont affichées sur un calendrier, lorsque vous survolez un évènement, et dans une liste que vos pouvez filtrer, trier et personnaliser. Gérer vos réservations : changer d’état (annuler, valider), replanifier, rembourser…
  • Synchronisez vos réservations et affichez-les dans la description des évènements sur votre Google Agenda
  • Les clients aussi disposent de leur liste et calendrier de réservations grâce à un code court. Ils peuvent annuler, replanifier ou demander un remboursement par eux-même (si vous les y autoriser).
  • Vos clients peuvent également gérer leur réservations à partir de leurs commandes WooCommerce.
  • L’état des commandes sont liés à l’état de leurs réservations. Si les réservations sont annulées / réservées / remboursées, la commande le sera aussi (et vice-versa).
  • Les notifications e-mails sont automatiquement envoyées au client ou à l’administrateur lorsqu'ils doivent être informés d’un changement.
  • Créez vos e-mails tels que vous les imaginez grâce à l’éditeur HTML et aux étiquettes spécifiques. Vous pouvez également choisir de désactiver une notification.

FAQ

Je ne suis pas un prestataire d’activité, cet extension peut-elle tout de même répondre à mes besoins ?

Oui bien entendu. Il s’agit essentiellement d’un système de réservation basé sur la planification d’évènements. En d’autres mots, vous construisez votre calendrier d’évènements et autorisez leur réservation. Vous pouvez trouver un autre but à cela.
Pour savoir s’il répond bien à vos besoins, essayez-le, c’est grauit.
Si vous n’en avez pas le temps, vous pouvez juste essayer le site de démo.
Ou lire la description complète des fonctionnalités si vous cherchez quelque chose en particulier.

Créer et remplir votre premier planning

Créer votre premier planning

  1. Allez dans « Booking Activities » / « Éditeur de plannings »
  2. Cliquez sur le gros bouton « + »
  3. Définir un titre
  4. Dans l’onglet « Éditeur », vous pouvez également paramétrer vos heures ouvrées
  5. Cliquez sur le bouton OK de la boîte de dialogue, le planning charge !

Créer votre première activité

  1. Cliquez sur le bouton « + » dans l’encart « Activités »
  2. Paramétrez un titre, une quantité de disponibilités, une couleur et une durée
  3. Cliquez sur le bouton OK de la boîte de dialogue, l’activité est ajoutée à la liste !

Créer votre premier évènement

  1. Glissez une activité à partir de la liste et déposez-la sur le calendrier
  2. Glissez et déposez l’évènement pour le déplacer
  3. Survolez l’évènement et cliquez sur sa roue de réglages pour modifier ses propriétés.

Félicitations ! Vous avez créé votre premier planning d’évènements !

Afficher un formulaire de réservation

Assurez-vous d’avoir au moins un planning, une activité et un évènement à une date future

  1. Allez sur la page Booking Activities / Formulaires de réservation
  2. Sélectionnez le formulaire désiré ou créez-en un nouveau
  3. Cliquez sur la molette de réglage sur le champs « Calendrier » pour définir le(s) planning(s) à afficher (et bien d’autres réglages)
  4. Copiez le code court donné dans l’encart « Comment intégrer ce formulaire » (il ressemble à [bookingactivities_form form=""])
  5. Collez ce code court dans l’article ou la page de votre choix
  6. Allez sur cet article / cette page sur votre site, le formulaire de réservation apparaît !

/!\ Les formulaires de réservation affichés via un code court ne sont pas du tout liés à WooCommerce. Si vous voulez lier un produit WC à un planning, reportez-vous à « Utilisation avec WooCommerce » dans cette FAQ.

Afficher uniquement le calendrier

Assurez-vous d’avoir au moins un planning, une activité et un évènement à une date future

  1. Allez sur la page Booking Activities / Formulaires de réservation
  2. Sélectionnez le formulaire désiré ou créez-en un nouveau
  3. Conservez le champs « Calendrier » et supprimer tous les autres (tels que les champs « Connexion / Inscription », « Quantité » et « Envoyer »)
  4. Copiez le code court donné dans l’encart « Comment intégrer ce formulaire » (il ressemble à [bookingactivities_form form=""])
  5. Collez ce code court dans l’article ou la page de votre choix
  6. Allez sur l’article / la page sur votre site, le calendrier apparaît seul !

Afficher la liste des réservations d’un utilisateur

Assurez-vous que l’utilisateur a des réservations et est connecté, sans quoi rien ne sera affiché

  1. Coller ce code court dans l’article ou la page de votre choix : [bookingactivities_list]
  2. Allez sur cet article / cette page sur votre site, la liste des réservations apparaît !

En fonction des paramètres de BA et des dates des réservations, des actions telles que annuler ou replanifier peuvent apparaître. Essayez-les !

Utilisation avec WooCommerce

Assurez-vous d’avoir au moins un formulaire de réservation avec un évènement disponible à une date future
Vous devez également activer WooCommerce et créer un produit

  1. Allez dans « Produits » / Votre produit
  2. Dans l’encart « Données produit », un nouvel onglet « Activité » est apparu
  3. Dans l’onglet « Activité », liez le formulaire de réservation désiré au produit
  4. Allez sur la page de ce produit sur votre site, un formulaire de réservation apparaît !

Pour les Produits Variables, vous devez cocher la case « Activité » et attribuer un planning et une activité pour chaque variation.

Est-ce que cet extension accepte le paiement en ligne des réservations ?

Oui, vous pouvez accepter des paiements pour vos réservations à l’aide de WooCommerce. Booking Activities est parfaitement intégré à WooCommerce :

  • Les formulaires de réservation apparaîtront automatiquement sur les pages produits
  • Un système d’expiration du panier est implémenté pour s’assurer que les réservations situées dans le panier n’y reste pas pour toujours, prenant ainsi la place de quelqu’un d’autre
  • Les réservations sont automatiquement validées lorsque le paiement est perçu, ou annulées dans le cas contraire
  • Si vous changez la quantité ou le statut de la commande, les réservations seront également modifiées, et vice-versa.

Dois-je accepter les paiements pour les réservations ?

Voici une analyse des avantages et des inconvénients :

AVANTAGES :

  • Les clients sont engagés, s’ils réservent, ils viennent.
  • Gain de temps : les clients ont déjà payés.
  • Les clients pleuvent venir sans argent, ils peuvent offrir l’activité à un proche
  • Encaissement, facturation, comptabilité et statistiques automatiques

INCONVÉNIENTS :

  • Peut décourager les clients, en fonction du type d’activité que vous proposez et de votre cible
  • Demande plus de temps aux clients, et implique un processus plus compliqué, un taux d’abandon de panier plus haut
  • Vous aurez bien plus de développement, de démarches administratives et juridiques, et vous aurez plus de dépenses (commission de la banque, maintenance…)

Nous vous recommandons d’accepter les paiements en ligne puisque c’est un excellent moyen d’automatiser la gestion de votre activité et de la faire prospérer.

Les évènements ne sont pas « Réservés » après la soumission du formulaire de réservation, ils sont « En attente », pourquoi ?

Pas d’inquiétude, la réservation est bien enregistrée. Maintenant, c’est à vous qu’il revient de la faire passer à « Réservée » immédiatement, ou lorsque votre client·e se présentera, ou lorsqu’il vous aura payé…
Mais vous pouvez simplement paramétrer le statut de réservation par défaut sur « Réservé » dans les réglages de Booking Activities.
Notez que si vous utilisez WooCommerce et les paiements en ligne, le statut des réservations passe automatiquement sur « Réservé » si le paiement a été effectué, ou sur « Annulé » dans le cas contraire.

Le panier expire mais les évènements sont encore réservés

Un robot nettoie les réservations expirées toutes les heures. Alors attendez simplement une heure.
D’habitude, les utilisateurs sont encore sur votre site lorsque leurs réservations expirent, si c’est le cas, elles sont immédiatement supprimées.
Sinon, elles seront supprimées plus tard, avec les autres dans ce cas.

Mes évènements semblent réservés, mais aucune réservation n’apparaît dans la liste

Les réservations temporaires (tels que les évènements dans le panier) prennent des emplacements actifs mais peuvent ne pas apparaître dans la liste des réservations.
Allez sur la page « Réservations », sous le filtre « États » sélectionnez « Livré », « Réservé », « En attente » et « Dans le panier ».
Ensuite, cliquez simplement sur « Filtrer la liste ». Vous pouvez désormais voir tous les types de réservations actives.

Les réservations annulées disparaissent de la liste, j’ai besoin de les voir !

Aller sur la page « Réservations ». Dans le filtre « État », sélectionnez tous les états disponibles. Cliquez sur « Filtrer la liste » et vous pourrez ensuite voir les réservations inactives (annulées, expirées, supprimées, remboursées, remboursement demandé).

Les notifications e-mails ne sont pas envoyées

Si vous activez l’option « E-mail asynchrone » dans les paramètres de Booking Activities (onglet « Notifications »), les e-mails seront envoyés la prochaine fois que quelqu’un (n’importe qui) charge n’importe quelle page de votre site web.
Il vous suffit donc simplement de rafraîchir ou de visiter n’importe quelle page de votre site web puis de vérifier votre boîte de réception.
Si vous désactivez l’option « E-mail asynchrone », alors le chargement durera jusqu’à ce que l’e-mail soit effectivement envoyé.

Demander du support

Nous répondons dans les 48h. Vous pouvez nous contacter de diverses manières :
– Par e-mail à contact@booking-activities.fr
– Sur le forum du support de WordPress
– Sur le gestionnaire de tickets de Github

Si vous ne recevez pas de réponse dans les 48h par e-mail, un problème technique est probablement survenu, veuillez essayer à nouveau, ou essayez par un autre intermédiaire.

Avis

25 mars 2024 1 réponse
Correspond au mieux à mes attentes. Réponses très rapides, détaillées et pertinentes : support impeccable !
1 décembre 2023 1 réponse
Y'a quelques petits soucis par-ci par là, mais c'est probablement ce qui se fait de mieux dans le genre 🙂
16 octobre 2023 1 réponse
This does exactly what we needed for a gym booking system. We wanted a simple system to book gym pods out by the hour.
16 août 2023 1 réponse
This plugin does exactly what everyone will need, to let people make bookings in your Woocommerce site.
Lire les 107 avis

Contributeurs/contributrices & développeurs/développeuses

« Booking Activities » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.

Contributeurs

“Booking Activities” a été traduit dans 4 locales. Remerciez l’équipe de traduction pour ses contributions.

Traduisez « Booking Activities » dans votre langue.

Le développement vous intéresse ?

Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.

Journal

1.16.5 – 2024/04/17

  • Fix – PHP error when changing booking group status
  • Fix – PHP warning when cart contains non activity products, or when cart content is null
  • Fix – « Booking form location on product pages » option is now compatible with WP Blocks
  • Tweak – Encapsulate the cart form in a div when « Booking form location on product pages » option is set to « Full width » (non blocks)

1.16.4 – 2024/04/12

  • Fix – « At the earliest » option was based on events ending time instead of their starting time
  • Fix – Change activity text color in calendar editor according to Display Pack add-on settings
  • Fix – Make sure cart item quantity matches booking quantity and prevent checkout otherwise
  • Fix – Incorrect {price_raw} and {price} notification tags value when used with WooCommerce and Booking Activities add-ons
  • Fix – Hide « Select all … items » button when no bookings are selected in backend booking list
  • Dev – Use CSS classes to hide empty weeks when « Trim » option is active, so developers can change their appearance

1.16.3 – 2024/04/05

  • Feature – Filter the booking list by booking (group) ID
  • Fix – Weeks may be hidden even if they have events if « Trim » option is active
  • Fix – « Show only first event of groups » option should be hidden when Group Category = None

1.16.2 – 2024/04/04

  • Feature – Allow administrators to change the booking forms author
  • Feature – Filter the booking form list by ID, title and author
  • Tweak – Display an error message in the booking forms list if the form author is not allowed to manage the displayed calendars
  • Tweak – Hide weeks on Day Grid views if all the days are empty if « Trim » option is active
  • Fix – Notification not sent to administrators when an administrator reschedule a booking
  • Fix – Incorrect booking status displayed in WC notification after completing a failed order
  • Dev – Remove data conversion for updates from versions prior or equal to 1.14.3 (you need to update Booking Activities to 1.15 before updating it to 1.16)

1.16.1 – 2024/03/26

  • Fix – Notifications not sent after changing a booking (even if « Send notifications » option was ON)
  • Fix – Prevent performing any booking action if no bookings are selected
  • Fix – Browser may hang after deleting a lot of bookings (bookings were correctly deleted)
  • Fix – Site setting « Are started groups of events bookable? » was not taken into account (but group category setting was)
  • Fix – Started group events were not grayed out if not bookable
  • Fix – Make « Trim » option compatible with « Show only first event of groups » option
  • Dev – Update some js scripts dependencies

1.16.0 – 2024/03/21

  • Bookings bulk actions, reschedule scope – See the user-friendly release note
  • Feature – Edit multiple bookings at once: change status, change quantity, reschedule, refund, delete, send notification
  • Feature – Add an option to allow customers to reschedule a booking to a different activity and / or to a different calendar (in Calendar Editor > the activity settings > Availability tab)
  • Feature – Add an option to allow administrators to reschedule a booking to a different activity and / or to a different calendar (in Settings > Cancellation tab)
  • Feature – Add an option to select the activities a booking can be rescheduled to (in Calendar Editor > the activity settings > Availability tab)
  • Feature – Send only one notification for multiple bookings / for WC order (the « Asynchronous notifications » option must be ON in Settings > Notifications tab)
  • Feature – Manually send a notification from the backend booking list (in the Actions column)
  • Feature – Allow customers to manage their bookings without being logged in by using an authentication key in the URL of the page displaying the [bookingactivities_list] shortcode (see {user_auth_key} notification tag)
  • Feature – Add the {user_auth_key} notification tag (to be used as the user_auth_key URL parameter value, e.g.: yoursite/my-booking-list/?user_auth_key={user_auth_key})
  • Tweak – « Customer » booking filter: List the customer emails from booking made without accounts
  • Tweak – « Customer » booking filter: Display the bookings made with and without account by the selected customer (need a page refresh, not working with AJAX)
  • Tweak – You cannot display events from a calendar that the booking form author cannot manage
  • Tweak – Remove « When to load the events? » option, you can use the bookacti_booking_system_default_attributes hook to set auto_load to 0 (after page load (default)) or 1 (on page load (not recommended, support no longer provided))
  • Tweak – Unselect an event by clicking it again (even if multiple events selection is deactivated)
  • Tweak – Export bookings included in groups if the booking list is filtered by event and if export settings are « One row for each booking of the group »
  • Fix – Booking filters may not be correctly applied after reloading the bookings page
  • Fix – Deleting an activity deleted it from all calendars instead of removing it only from the current calendar
  • Fix – Decode HTML entities before displaying WooCommerce price
  • Fix – Incorrect bookings retrieved if booking_group_id_operator filter was set to « OR » and no booking ids where provided
  • Fix – Selected user ID was displayed in user selectbox instead of proper label
  • Fix – English was used instead of site locale in javascript if site locale code had no underscore
  • Fix – (WIP) Support WooCommerce Cart Block: validate cart item quantity and change booking quantity accordingly
  • Fix – (WIP) Support WooCommerce Checkout Block: change booking status after checkout
  • Dev – (WIP) Declare WC Cart and Checkout blocks as NOT supported by Booking Activities and its add-ons for now (use WC Cart and Checkout shortcodes instead)
  • Dev – Functions to update and delete Booking Activities objects metadata now allow multiple object ids
  • Dev – Refactor async notifications scheduling
  • Dev – Lots of hooks and functions have changed, especially regarding booking actions, test and update your custom code consequently
  • Lib – Update FullCalendar to 6.1.11

1.15.20 – 2024/02/09

  • Fix – Improve booking filters sanitizing

1.15.19 – 2024/01/25

  • Feature – Add an option to display only the first event of groups (in booking form > Calendar settings)
  • Tweak – Add notification tags: {booking_payment_status}, {order_status}, {order_payment_status}

1.15.18 – 2024/01/17

  • Tweak – Wait 1 second for the user to complete the quantity input before checking min and max quantity
  • Fix – Error when trying to export form events without ending limit (limit to 5 years by default)

1.15.17 – 2024/01/03

  • Fix – « Add new » buttons were not translated
  • Fix – Compatibility with WC HPOS
  • Dev – Use WC_Product methods instead of WP_Post functions to handle product data (not required for HPOS, but more future-proof)

1.15.16 – 2023/12/13

  • Fix – Prevent forgotten password notification to be sent twice
  • Fix – Filtering bookings by booking group showed bookings from all repeated groups
  • Fix – JS error when loading events of a larger scope (e.g. week to month) if « Load events every » option is too low
  • Fix – Hide WC « order again » button if the order contains bookings
  • Fix – Incorrect iCal formatting in specific server configuration if a multiline text was exported
  • Lib – Update FullCalendar to 6.1.10

1.15.15 – 2023/10/18

  • Tweak – Do not empty booking form if add to cart failed with WooCommerce
  • Tweak – Change booking status icons to one specific icon per status
  • Fix – Display error messages on WC cart page after changing quantity
  • Fix – JS error when opening the grouped event dialog with the Display Pack’s « Waterfall » booking method
  • Dev – Add options and an API to handle price formatting (overriden by WooCommerce)
  • Dev – Remove bookacti_onoffswitch function, use bookacti_display_field instead
  • Dev – Add js hooks when opening booking dialogs
  • Dev – Allow bdi HTML tag in wp_kses_post
  • Dev – Refactor notification {price} tag and add {price_raw} tag
  • Dev – Refactor Total Price field: it is now refreshed via AJAX (PHP) instead of JS to improve compatibility and accuracy
  • Dev – Refactor WC cart item subtotal display
  • Lib – Update FullCalendar to 6.1.9

1.15.14 – 2023/06/08

  • Fix – Bookings from not allowed calendars may be displayed in backend Bookings calendar after changing the filters
  • Fix – Booking forms now use window.location.assign for external redirects, without parameters, to avoid error 405 and error 414
  • Fix – Use window.location.assign instead of window.location.replace when it is useful to keep the URL in browser history
  • Lib – Update FullCalendar to 6.1.8

1.15.13 – 2023/05/23

  • Breaking change – If you have made javascript custom code using Booking Activities’ $.fn.serializeObject function, you must replace it with bookacti_serialize_object( your_form )
  • Tweak – Allow to change notifications title
  • Dev – Replace homemade $.fn.serializeObject with bookacti_serialize_object() to improve compatibility (especially with the « jquery-serialize-object » script provided in WP)
  • Lib – Update FullCalendar to 6.1.7

1.15.12 – 2023/05/04

  • Tweak – Add French translation for select2, more translation files can be added in wp-content/languages/select2
  • Tweak – Display existing options immediatly in select2 using AJAX
  • Fix – Display select2 loading during AJAX search
  • Fix – JS error when setting invalid date format in « Go to » date input
  • Fix – Remove max height limitation to group categories and groups of events in calendar editor
  • Fix – Add a delay when sorting activities, groups and categories to avoid undesired drags in calendar editor
  • Fix – Hide WC Payments Google Pay / Apple Pay buttons on « Activity » product pages (it is too early for Booking Activities)
  • Dev – Add not_in__status and not_in__payment_status filters to bookacti_get_bookings()
  • Lib – Update FullCalendar to 6.1.6

1.15.11 – 2023/04/14

  • Feature – Compatible with the new Resource Availability add-on!
  • Tweak – Allow to purchase a booking from checkout page after an order failed if the cart item is not removed
  • Fix – All activities were displayed if the booking form was configured to display only activities that are restricted to a user role, and if the user was not logged in or doesn’t have this role
  • Fix – Cells that should be empty in iCal booking lists may be filled with the column name
  • Fix – Display the « Send when order is… » option in all admin status changes notifications settings
  • Fix – New booking notifications not sent with WC if the order doesn’t need any payment
  • Fix – Temp fix to a WooCommerce issue – Display WC notices after failing to restore a cart item (on cart page up to 10 seconds after the error occured)
  • Fix – In bookings filters, when the selectbox is resized, the input goes below the others
  • Fix – In the reschedule dialog, the quantity displayed in the event list is always 1
  • Fix – Event title not translated in a WC notice (booking already purchased notice)
  • Fix – Error message not displayed after closing reschedule dialog once on frontend
  • Fix – When filtering bookings in the backend, abort the running AJAX request before starting a new one
  • Dev – Add js hook to change the select2 data when initialized
  • Dev – Add hooks to validate a change of cart item quantity
  • Dev – Add bookacti_wc_after_add_to_cart_validation hook
  • Dev – Add parameters in booking system data to allow plugins to flag the events and groups of events as unavailable
  • Lib – Update FullCalendar to 6.1.5

1.15.10 – 2023/03/08

  • Fix – Booking status was displayed as Pending in paid and complete WC order notification (#186)
  • Fix – Do not cancel booking of a « Pending payment » order if they were already paid in another order
  • Fix – Error messages no longer displayed after closing the reschedule dialog once
  • Dev – Add hooks to change the filters used to retrieve events and their number of bookings in a booking system
  • Dev – Wrap SUM sql queries that can be modified by plugins to ensure that joining additional tables will not skew the result

1.15.9 – 2023/03/01

  • Fix – Translatable strings may not be registered in the default WPML language
  • Dev – Add backward compatibility with MariaDB 10.3

1.15.8 – 2023/02/24

  • Breaking change – Requires MySQL 5.7.22 or later, or MariaDB 10.5.4 or later
  • Fix – « No events » message not displayed if no availability dates were set
  • Fix – Notifications text area was not full width
  • Fix – The hook bookacti_booking_deleted may not be triggered after booking group deletion
  • Fix – When moving an event backward from calendar editor, its bookings and grouped events were moved at an incorrect date
  • Fix – Events may appear twice on variable WC products pages if the booking form « Opening » date is past
  • Fix – When adding a product to cart from a booking form shortcode, field validation error messages were incorrectly displayed
  • Dev – Flag when the WC order is new to avoid sending the same notifications twice
  • Dev – Move the onkeypress attributes from the HTML elements to a js file
  • Dev – Rename data-unit attributes to data-duration-unit
  • Dev – bookacti_get_booking_groups now retrieves the grouped booking ids
  • Lib – Update FullCalendar to 6.1.4

1.15.7 – 2023/01/30

  • Tweak – Grouped bookings are now listed in asc order in WC order items and notifications
  • Tweak – Add margins to event bookings tooltip on small screens
  • Fix – Improve tooltip triggering on touch devices
  • Fix – Booking forms shortcode not displayed in booking forms table
  • Fix – Error messages were not removed in frontend dialogs
  • Fix – Cannot change booking group quantity in WooCommerce cart or order
  • Dev – Generate a random id on displayed fields without id

1.15.6 – 2023/01/09

  • Fix – Error when switching booking group status to refunded from the backend
  • Fix – Calendar navigated to incorrect date when loaded with a picked events
  • Fix – Bound products were not correctly displayed in calendar settings in form editor
  • Fix – Booking calendar settings dialog was emptied after closed
  • Fix – Needed to refresh page to take into account the columns to display in the booking calendar tooltip
  • Fix – Activities were not filtered according to selected calendars in bookings filters
  • Lib – Update FullCalendar to 6.0.2 (Support for IE 11 has been dropped)
  • Lib – Remove Moment JS files and use the files included in WP instead
  • Dev – Compare datetimes directly instead of using mySQL UNIX_TIMESTAMP and CONVERT_TZ functions
  • Dev – Calendar dates are no longer restricted between 1970-01-01 and 2037-12-31
  • Dev – Allow half-bounded intervals when retrieving events and groups
  • Dev – Refactor bookacti_validate_booking_form function and hook (rename to bookacti_validate_picked_events and new parameters)
  • Dev – Refactor bookacti_validate_booking_form_picked_event hook (rename to bookacti_validate_picked_event and new parameters)
  • Dev – bookacti_allow_multiple_bookings hook parameters have changed
  • Dev – Add form fields checks and hooks before and after rescheduling a booking (standardize process, like booking form and WC add to cart)
  • Dev – Add form fields checks, and do not process bookacti_validate_picked_events twice while adding a WC product to cart from a calendar
  • Dev – Standardize the status change functions code between groups and single bookings

1.15.5 – 2022/11/24

  • Tweak – Remove useless checkbox column in list tables and standardize CSS
  • Tweak – Support YITH WooCommerce Quick View (load booking system in popup)
  • Fix – Activity unit name was not displayed
  • Fix – Activity unit name was not displayed in the correct order in RTL languages
  • Fix – Incorrect display of ID column in backend list table on mobile
  • Fix – WC order status may be Completed unexpectedly in some cases involving non-booking products
  • Fix – Invalid group ID error may appear in groups of events dialog in calendar editor
  • Fix – Group categories « All » option was not selected in form editor calendar settings dialog
  • Fix – Possible undesired scroll when closing group selection dialog after navigating the calendar
  • Fix – JS error when deleting a group of events with no events, a group category with no groups, and the last calendar
  • Dev – Standardize dialogs JS and CSS
  • Dev – No longer generate id in html fields (with random number) if not provided
  • Dev – Change LONGTEXT to TEXT or MEDIUMTEXT db column definition, and remove useless numeric type attributes
  • Dev – Add bookacti_reset_password_notification_callback hook and send WC Reset Password email instead of WP’s (#169)
  • Dev – Reset error notices automatically when the dialog is closed (standardize code)
  • Dev – Functions triggered on WC product pages only can now be triggered on any page having the « woocommerce » class
  • Dev – Standardize the use of nonces (input name = nonce)

1.15.4 – 2022/10/06

  • Tweak – Enable the « Today » button even if today’s view is not accessible
  • Tweak – Use select2 library for options using selectboxes with multiple values
  • Tweak – If the refunded WC order items quantity is not set, try to compute it from the refunded amount
  • Fix – Bookings were not refunded when a WC order was totally refunded but whithout selecting the WC order items to refund
  • Fix – The displayed booking date didn’t take the timezone into account
  • Fix – The current day highlighted on the calendars didn’t take the timezone into account
  • Dev – Use WP default strings for Add New, Publish, Update, Edit, Trash, Delete, Retore
  • Dev – API to make select2 multiple select sortable
  • Dev – Add indexes to relevent database columns to improve performance on large databases
  • Dev – Use full version of Select2

1.15.3 – 2022/09/13

  • Tweak – Improve display of calendar toolbar when the calendar is narrow
  • Fix – Possible JS error with Cache / Optimization plugins

1.15.2 – 2022/09/08

  • Tweak – Change the minimum time to display event on next day in DayGrid view (nextDayThreshold) to the value of Day Begin option (slotMinTime)
  • Fix – Notification Pack custom notifications not sent with WC if default notifications were configured not to be sent with WC
  • Fix – Remove unused code about Bootstrap tooltip that may cause js error
  • Dev – Change js and css minification processor to Google Closure Compiler (replace all .min files)

1.15.1 – 2022/09/02

  • Fix – JS error when duplicating event (needed to refresh page) (#160)
  • Fix – Permissions to calendars didn’t work (#162)
  • Fix – JS error if Calendar localization was set to Based on more WP settings (Site Language, Time Format, Week Starts On)
  • Fix – Cannot open event settings or select event to group in calendar editor on touch devices

1.15.0 – 2022/08/31

1.14.0 – 2022/06/08

1.13.0 – 2022/03/01

1.12.0 – 2021/08/23

1.11.0 – 2021/05/05

1.10.0 – 2021/03/12

1.9.0 – 2021/01/27

1.8.0 – 2020/05/12

1.7.0 – 2019/03/01

1.6.0 – 2018/11/29

1.5.0 – 2018/05/05

1.4.0 – 2018/02/24

1.3.0 – 2018/01/28

1.2.0 – 2017/10/12

1.1.0 – 2017/07/16

1.0.0 – 2017/03/25

See changelog for all versions