BreezingForms pour Joomla! 4 Installation ou mise à jour…

Crosstec a mis à disposition sa version de BreezingForms pour Joomla! 4.

Si son installation sur une nouvelle configuration ne pose pas de problème, il n'en va pas de même pour une mise à jour depuis une version précédente.

Mais alors que faire ?

BreezingForms, dans sa version 1.9.1 Build 942 et + a été retravaillé pour correspondre à la structure de Joomla! 4 et PHP8. C'est une excellente nouvelle cependant, après une mise à jour de BF d'une version pour Joomla! 3 vers Joomla! 4, il y a de grandes chances pour que vos formulaires retournent des erreurs et ne fonctionnent pas comme attendu. Voyons pourquoi et que faire pour remettre les pendules à l'heure.

Le problème

Lors d'une mise à jour, BreezingForms ne remplace pas les "Scripts" et "Pièces" de sa librairie (ou bibliothèque). Il s'ensuit que votre nouvelle installation est bien conforme à PHP8 mais pas cette librairie qui date encore et toujours de Joomla 3 et PHP7.x…

La résolution

Il va falloir remplacer ces scripts et pièces par les nouveaux compatibles PHP8…

Commencez par vous rendre dans l'administration de votre Joomla! et depuis le menu Composants, sélectionnez BreezingForms → Scripts.

Sélectionnez alors tous les scripts présents et supprimez-les. Veillez à ce qu'il n'en reste aucun !

Sélectionnez ensuite dans le menu BreezingForms l'onglet Pièces et faites de même, supprimez toutes les pièces.

Rendez-vous ensuite dans le menu Configuration de BreezingForms, cliquez le lien Installez le package.

Sélectionnez le package nommé stdlib.english puis cliquez l'option Désinstaller des packages.

Si vous avez installé la version francisée de la librairie, nommée stdlib.french, il faudra la désinstaller également

Réinstallation de la nouvelle librairie

La nouvelle librairie peut être trouvée en décompressant l'archive d'installation de BreezingForms. Vous pouvez également la télécharger ci-dessous sous forme de fichier compressé.

Vous devez être enregistré et connecté pour accéder aux téléchargements.

Une fois ce fichier téléchargé, dézippez-le, toujours sur la page d'installation des packages, cliquez le bouton de recherche de fichier et sélectionnez votre librairie juste décompressée sur votre disque dur, puis validez par Installer le package. Ce dernier doit maintenant apparaître dans la liste des packages installés.

Afin de mettre votre (vos) formulaire(s) à jour, il reste à les éditer puis reparamétrer vos scripts de validation de champs (ils auront été remis par défaut suite à la suppression des anciens scripts) et terminer par enregistrer et tester.

Votre installation devrait à présent être bien à jour et fonctionnelle.

5 commentaires

  • Bonjour

     

    Merci pour le tuto, qui m'effraie un peu.  Quand tu parles de "il reste à les éditer puis reparamétrer vos scripts de validation", c'est du genre FF::ff_validemail_repeat qu'il faut remettre ?   Donc, il faut se souvenir dans chaque formulaire où il y a des scripts de validation ou y-a-t-il une autre méthode. Travail fastidieux en vue, si c'est le cas.   Et autre question en relation, contenbuilder est toujours bien obligatoire pour visualiser les données entrées dans les différents formulaires mais celui-ci n'est toujours pas porté sous joomla 4.

    Edité le lundi 16 janvier 2023 10:38 par Eddy.
    • Bonjour Michel.

      La suite d'actions que vous mentionnez ne peut être faite comme ça, les scripts ayant une ID, dans la base de données, c'est cette ID qui est mentionnée. L'installation des nouveaux scripts leur donnera une ID différente que la précédente. Il faudra sans aucun doute remettre les validations en place.

      Concernant Content Builder, il est "indispensable" pour visionner les entrées de formulaire sur le fronrend, dans le backend, vous avez la possibilité d'afficher toutes les entrées.

      Une option alternative est l'enregistrement des données sur une feuille de calcul Google Sheets si vous avez une licence.

        J'attire votre attention sur le fait qu'actuellement, il vous faut la version Pro de BreezingForms pour passer en J4, la version free est toujours en cours d'adaptation et devrait voir prochainement le jour.

      Bonne semaine

      Edité le lundi 16 janvier 2023 10:46 par Eddy.
  • On ne peut pas exporter les formulaires, désinstaller les scripts, réinstaller les nouveaux scripts, réimporter les formulaires  (les validations seraient toujours là ?)

    Edité le lundi 16 janvier 2023 10:38 par Eddy.
  • Une future mise à jour de breezingform pourrait-elle actualiser les scripts  de façon automatique sans devoir re-écrire les scripts de validation  ? C'est du domaine du possible ou techniquement impossible ?
    Je me vois mal devoir modifier tous mes formulaires et leurs scripts de validation après la mise à jour.
    Merci
    Edité le lundi 16 janvier 2023 16:03 par MicMor.
    • Bonjour Michel.

      Dans le script d'installation de BreezingForms, les scripts et pièces ont une ID MAIS dans votre base de données, cette ID est non valable, la table est de type AUTO-INCREMENT. C'est-à- dire que, même si la table est vide avant l'insertion des nouveaux scripts, la première ID suivra la dernière qui s'y trouvait et BF ne retrouverait donc pas le script qui correspond à son champ.

      Ceci n'est que ma déduction !

      D'autant que, même si une manipulation dans la BDD à l'aide de "TRUNCATE" réinitialiserait l'indexation de la table et en perdrait ses données enregistrées, il faudrait s'assurer que les nouveaux scripts aient la même ID que les précédents. Alors, et sans certitude, cela pourrait fonctionner.

      Je crains que la méthode le contrôle et de réattribution des scripts de validation soit la plus facile et rapide. La faute n'est pas au développeur, mais à l'évolution de PHP.

      Croyez-moi, je ne comprends pas très bien non plus pourquoi il faut remplacer la librairie, car j'ai comparé une ancienne librairie et la nouvelle et je n'y trouve pas de grandes différences, seul un script semble avoir eu une modification, cependant, j'ai dû moi aussi remplacer cette librairie comme mentionné par Markus Bopp lui-même ici.

      Il sera intéressant de demander à Crosstec la raison de ce remplacement, je m'en charge…

      Bonne journée.

      Edité le mardi 17 janvier 2023 08:59 par Eddy.

FAIRE UN DON

paypal btn

Via PayPal ou Stripe

PLUGIN UP DE LOMART

Universal Plugin : UP

De très nombreuses actions pour vos articles en un unique plugin.
up lomart