---
title: "Nouveautés de la version 1.4.6"
weight: 300
description: "Toutes les nouveautés et améliorations de la version 1.4.6 d'OnePageBasket."
---

# Nouveautés de la version 1.4.6

La version 1.4.6 d'OnePageBasket apporte la conformité au droit de rétractation européen, des améliorations majeures sur la gestion des tickets et des emails, un système de cache performant (APCu, fichier, memcached) pour accélérer votre boutique, une réorganisation complète de l'administration, la compatibilité Dolibarr 23, ainsi que de nombreuses nouvelles fonctionnalités de contenu. Voici le détail de toutes les nouveautés.

## Droit de rétractation (directive 2011/83/UE)

OnePageBasket est désormais conforme à la directive européenne sur le droit de rétractation des consommateurs.

- **Mentions légales et case d'opt-in** : la mention légale et la case de renonciation au droit de rétractation sont affichées sur le formulaire de panier et sur les formulaires de contrat.
- **Délai de rétractation sur les contrats** : un délai de rétractation paramétrable est désormais géré sur les contrats. Une case "activer maintenant" permet au client d'autoriser l'exécution immédiate du service en renonçant explicitement à son droit de rétractation.
- **Formulaire de rétractation côté client** : si le client n'a pas activé immédiatement son contrat, un formulaire de rétractation est disponible depuis son tableau de bord pendant toute la durée du délai légal.

Pour la mise en place et la configuration, consultez la documentation dédiée au [droit de rétractation](/onepagebasket/retractation).

## Compatibilité Dolibarr 23

OnePageBasket est compatible avec Dolibarr 23 (en plus des versions 18 à 22 déjà supportées). Aucune action particulière n'est nécessaire si vous mettez à jour votre Dolibarr.

## Emails de tickets modernisés

OnePageBasket peut désormais remplacer les emails par défaut de Dolibarr pour les tickets par des emails modernes et stylisés.

- **Nouvelle option** : le réglage `ONEPAGEBASKET_TICKET_REPLACE_CORE_MAILS` permet d'activer les emails OPB en remplacement des emails natifs de Dolibarr.
- **Template HTML moderne** : les emails incluent un en-tête avec le logo de votre société, une couleur d'accent personnalisée, un bouton de suivi du ticket et une signature professionnelle.
- **Notifications automatiques** : des emails sont envoyés automatiquement lors de la création d'un ticket, d'une réponse de l'agent et de la clôture depuis le backoffice.
- **En-têtes de suivi multilingues** : tous les emails OPB sont enrichis d'un identifiant de suivi (trackid) et d'en-têtes multilingues qui facilitent le rattachement automatique des réponses au bon dossier.
- **Sujets de mails nettoyés** : les balises HTML résiduelles sont retirées des sujets de courriels.
- **Copie cachée (BCC)** : tous les emails OPB respectent le paramètre `MAIN_MAIL_AUTOCOPY_TO` pour envoyer une copie cachée à l'adresse de votre choix.
- **Correction** : les retours à la ligne ne s'affichent plus en `\r\n` dans le corps des emails.

Pour configurer les emails de tickets, consultez la page [Portail client](/onepagebasket/portail-client).

## Relance automatique en cas d'échec de paiement

Une nouvelle option `ONEPAGEBASKET_PAYMENT_KO_MAIL_ENABLED` permet d'envoyer automatiquement un email amical au client lorsqu'un paiement en ligne échoue.

- **Email de relance** : le client reçoit un courriel l'invitant à réessayer son paiement, avec un lien direct vers la page de paiement Dolibarr (`getOnlinePaymentUrl()`).
- **Notification admin** : un email est également envoyé à l'administrateur pour suivi.
- **Anti-doublon** : un événement `OPB_PAYMENT_KO` est enregistré dans l'agenda Dolibarr et limite l'envoi à un seul email de relance par commande, évitant ainsi de spammer le client en cas de tentatives répétées.

## Lien public de suivi de ticket

Un nouveau champ **Lien public OPB** apparaît sur la fiche ticket dans le backoffice Dolibarr. Ce champ affiche l'URL de suivi public du ticket avec un bouton de copie dans le presse-papiers.

- Vos agents peuvent facilement partager le lien de suivi avec les clients, sans avoir à le construire manuellement.
- Les clients peuvent mettre à jour les champs complémentaires (extrafields) du ticket directement depuis l'interface publique.

## Améliorations sur les tickets

- **Coller depuis le presse-papier** : il est désormais possible de coller une image ou un fichier directement depuis le presse-papier (Ctrl+V) lors de la création ou de la réponse à un ticket. Une boîte de dialogue demande un nom et une description avant l'envoi, pour une meilleure traçabilité des pièces jointes.
- **Vignettes** : les pièces jointes images des tickets sont maintenant affichées sous forme de vignettes cliquables.
- **Pages publiques conditionnées** : les routes liées aux tickets ne sont actives que si le module Ticket de Dolibarr est effectivement activé, évitant les erreurs sur les installations qui n'utilisent pas ce module.

## Cache de données

Un nouveau système de cache multi-pilotes réduit considérablement le nombre de requêtes en base de données sur la boutique publique.

- **Trois pilotes** : APCu (prioritaire si disponible), memcached et cache fichier en secours, compatible avec l'opcache PHP. Vous pouvez choisir le pilote le plus adapté à votre hébergement.
- **TTL configurable par famille** : vous pouvez ajuster la durée de mise en cache pour les dictionnaires, les produits, les images et les contrats indépendamment.
- **Mécanisme anti-stampede** : lorsque le cache expire, un seul processus reconstruit les données pendant que les autres continuent à servir les données périmées, évitant ainsi les pics de charge.
- **Compteurs de génération** : l'invalidation des caches de catégories et de produits est instantanée (en O(1)), sans parcours de fichiers coûteux.
- **Invalidation automatique par triggers** : toute modification de produit, catégorie ou contrat dans Dolibarr invalide automatiquement le cache concerné.
- **Interface d'administration** : dans l'onglet Avancé, vous pouvez activer ou désactiver le cache, configurer les TTL par famille, vider le cache manuellement et consulter le taux de succès (hit ratio).
- **Tâche cron** : un script de purge automatique s'exécute toutes les 6 heures pour nettoyer les fichiers expirés et limiter la taille du répertoire de cache.

Pour configurer le cache, rendez-vous dans l'onglet Avancé de la [configuration](/onepagebasket/configuration).

## Réorganisation de l'administration

Les pages d'administration ont été entièrement réorganisées en onglets thématiques pour faciliter la navigation :

- **Paramètres** : activation de la boutique, utilisateur par défaut, pays, options techniques (réécriture d'URL, captcha, debug).
- **Apparence** : thème, logo, favicon, pied de page, carrousel, langues.
- **Catalogue** : articles, catégories, gestion de stock, badges de version.
- **Ventes** : panier, remises, fournisseur de paiement.
- **Livraison** : configuration de la livraison.
- **Portail client** : authentification, documents, compte client, contrats, tickets, association.
- **Contenu** : FAQ, badges de confiance, newsletter, avis, galerie UGC, alertes.
- **Pages web** : gestion des pages statiques (création, modification, suppression).
- **Galerie UGC** : gestion de la galerie de contenu utilisateur.
- **Services** : prépayé, leasing, rendez-vous.
- **Tickets** : configuration des tickets (visible si le module Ticket de Dolibarr est activé).
- **Avancé** : cache de données, webhooks, traductions, champs complémentaires.
- **À propos** : informations sur le module.

Consultez la page [Configuration](/onepagebasket/configuration) pour le détail de chaque onglet.

## Nouvelles fonctionnalités de contenu

### FAQ

Une section questions/réponses en accordéon est désormais disponible sur votre boutique. Le schéma JSON-LD est automatiquement généré pour améliorer votre référencement sur Google (rich snippets FAQ). Consultez la documentation de la [FAQ](/onepagebasket/faq).

### Badges de confiance

Ajoutez des éléments visuels de réassurance sur votre boutique : paiement sécurisé, livraison rapide, garanties, etc. Ces badges renforcent la confiance de vos visiteurs et peuvent être personnalisés depuis l'administration. Consultez la documentation des [badges de confiance](/onepagebasket/badges-confiance).

### Newsletter

Un formulaire d'inscription à la newsletter est intégré à votre boutique. Il inclut une protection anti-spam et un mécanisme de désinscription sécurisé par signature HMAC. Consultez la documentation de la [newsletter](/onepagebasket/newsletter).

### Formulaire de contact

Vous pouvez insérer un formulaire de contact dans n'importe quelle page statique grâce au shortcode `[contactform]`. Le formulaire inclut un champ honeypot anti-spam et une limitation de fréquence d'envoi (3 messages par heure). Consultez la documentation des [pages web](/onepagebasket/pages).

### Contrats par catégorie de produit

Les modèles de contrats peuvent désormais être rattachés à une ou plusieurs catégories de produits via le champ `shop_categories` de la configuration avancée du contrat. Cela permet d'afficher le bon modèle de contrat aux clients en fonction des produits concernés, sans avoir à le proposer pour l'ensemble du catalogue.

### Pages web statiques

Un éditeur WYSIWYG permet de créer des pages statiques multilingues. Le SEO est pris en charge automatiquement : URL canonique, balises hreflang, Open Graph et intégration au sitemap. Consultez la documentation des [pages web](/onepagebasket/pages).

### Galerie photos clients

Vos clients peuvent soumettre des photos depuis l'interface publique. Un système de modération vous permet de valider les soumissions avant publication, et des quotas par client évitent les abus. Consultez la documentation de la [galerie](/onepagebasket/galerie).

## Améliorations techniques

- **FontAwesome local** : les icônes FontAwesome sont désormais servies depuis les fichiers du module, supprimant toute dépendance à un CDN externe.
- **Migration vers BladeOne** : le moteur de templates Blade a été migré vers BladeOne pour réduire le nombre de dépendances Composer.
- **Nettoyage PHPStan** : remplacement de `GETPOST` par `GETPOSTINT` là où c'est approprié, corrections de types et amélioration de la qualité du code statique.
- **Renforcement des contrôles de droits d'accès** : tous les contrôleurs et points d'entrée publics ont fait l'objet d'une revue, avec des contrôles d'accès renforcés et une validation plus stricte des structures de données reçues.
- **Protection contre les double-soumissions** : les formulaires sensibles (commande, devis, contact, ticket) sont protégés par un attribut `data-submit-once` qui désactive le bouton après le premier clic, évitant les commandes en double sur les connexions lentes.
- **Logs unifiés** : tous les appels `dol_syslog` du module sont préfixés `OPB`, ce qui facilite le filtrage et la lecture des journaux Dolibarr (`grep OPB dolibarr.log`).
- **Documentation utilisateur** : un ensemble de pages de documentation utilisateur en français est désormais disponible dans le répertoire `docs/users/` du module.

## Corrections de bugs

- Correction des retours à la ligne affichés littéralement en `\r\n` dans les emails de tickets.
- Correction d'erreurs 500 sur diverses pages causées par des variables non définies ou des index de tableau manquants.
- Correction des règles de TVA appliquées sur les lignes de contrat et les factures récurrentes.
- Correction du flux de création d'un contrat vers une facture récurrente.
- Correction d'une initialisation manquante de `socid` dans certains contextes.
- Bascule automatique vers la page d'accueil quand la boutique est désactivée, au lieu d'afficher un message d'erreur de routage.
- Le cache de données est désormais écrit dans le répertoire `dir_output` officiel de Dolibarr (compatible multientité).
- Suppression d'une route orpheline et nettoyage d'URLs internes.

## Mise à jour

Pour mettre à jour vers la version 1.4.6 :

1. Remplacez les fichiers du module par ceux de la nouvelle version (via le gestionnaire de modules Dolibarr ou manuellement dans le répertoire `htdocs/custom/onepagebasket/`).
2. Désactivez puis réactivez le module dans la page **Accueil > Configuration > Modules** de Dolibarr afin d'appliquer les éventuelles modifications de base de données.
3. Videz le cache de données si vous l'aviez activé (onglet Avancé de la configuration).
