problème a la soumission de contenu côté front-end par un visiteur avec tinyMCE

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] problème a la soumission de contenu côté front-end par un visiteur avec tinyMCE

    Bonjour

    A noter que je ne rencontre pas ces problèmes côté administrateurs. Souhaitant réaliser un site collaboratif, je suis entrain de faire différents tests sur la soumission de contenu par des visiteurs.

    J'ai reproduis le problème en copiant/collant un texte dans un éditeur simple (gedit/Linux). Il reste les caractères vu sur les images. je fais le copier/coller dans l'éditeur.

    Je m'aperçois de 2 problèmes

    1/ perte de la mise en page
    Il semble que les <br > ou autres éléments soient supprimés

    2/ des caractères spéciaux
    moins important car je n'arrive pas à le reproduire sur plusieurs sites mais c'est embêtant. Il y a de plus en plus d'icones sous forme de police de caractères (voir les images). Peut-être? il me semble que cela bloque l'enregistrement

    Cliquez sur l'image pour l'afficher en taille normale  Nom : Capture d’écran du 2022-10-13 09-30-25.png  Affichages : 0  Taille : 91,0 Ko  ID : 2044158

    Cliquez sur l'image pour l'afficher en taille normale  Nom : Capture d’écran du 2022-10-13 09-30-59.png  Affichages : 0  Taille : 146,7 Ko  ID : 2044159

    Rendu des icones (refusés par l'éditeur du forum) :
    ????

    ????

    tinyMCE
    Je pense que cela vient du paramétrage tinyMCE pour le public. Je mets en image le paramétrage pour avoir des conseils pour avoir la meilleure prise en compte des copier/coller de visiteurs tout en gardant la sécurité et en éliminant les balises des traitement de texte !

    Cliquez sur l'image pour l'afficher en taille normale  Nom : clibre-tinyMCE.png  Affichages : 0  Taille : 57,1 Ko  ID : 2044157
    Fichiers joints
    Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

  • #2
    Re
    1/ je me concentre sur la mise en page.
    J'ai fais énormément d'essai en touchant à plusieurs paramètres :
    Nouvelle ligne : paragraphe & nouvelle ligne
    Utiliser les filtres de texte de Joomla l'activant et le désactivant
    Éléments prohibés
    Éléments autorisés: ajout de br, ...

    Au début il y avait un seul <p> puis après plus aucune balise. Si je passe par l'admin, j'ai bien une balise <p> puis plusieurs <br> pour les retours à la ligne

    Rien n'y fait. Je commence à me demander s'il ne s'agit pas 'un bug aussi car il ne me semble pas avoir eu ce genre de problème avant.



    Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

    Commentaire


    • #3
      Bonjour
      Toujours sur ce big problème prise de tête
      J'ai peut-être un début de compréhension mais sans solution que j'ai reproduis sur plusieurs sites
      .
      Si je passe dans la Configuration globale > filtre de texte
      – Invité => aucun filtre
      Les balises html ne sont plus supprimés
      Le problème c'est que j'ai défini dans la configuration de tinyMCE pour public/enregistré

      Utiliser les filtres de texte de Joomla = Désactivé

      Celà fait pourtant longtemps que je fais cela car il me semble d'avoir vu un jour le dev de akeeba recommandé ce choix!

      Si on part sur le choix préférable de gérer cela par tinyMCE ?
      cela voudrait-il dire que c'est un bug (tinyMCE / joomal 4.2.3) ?
      Si quelqu'un pouvait confirmer ?



      Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

      Commentaire


      • #4
        Bonjour Hervé,

        Je pense que tu te complique la vie pour rien. Par défaut (donc sans toucher à aucun des paramètres), tinymce est réglé en paragraphe. C'est à dire que l'appui du bouton "entrée" va généré les balises <p> et </p>. Cependant les sauts de ligne sont possibles simplement en appuyant simultanément avec la touche [shift] (ou [maj] selon les claviers) et [entrée] pour les générer donc des <BR/>

        Je viens d'afficher les délimitations avec l'éditeur tinymce, ( il faut activer avec l'icône affichant les blocs entouré en rouge dans l'exemple ci-dessous)
        et on voit bien la différence entre mes deux sauts de ligne (donc [shift] + [entrée] ) et le nouveau paragraphe.



        C'est bien dans la css que l'on définit l'interlignage et l'espacement entre deux paragraphes.

        une fois enregistré, l'article conserve bien les <br /> visible en cliquant sur le bouton "desactiver/activer l'édtieur"




        En fait, cette logique se retrouve également dans les traitements de texte et autre.
        C'est ce que j'indique dans mes tutoriels destinés aux rédacteurs afin de leur rappeler les bases de l'édition.

        Pour ce qui est des icônes sous forme de police, tout dépend comment c'est configuré et comment ils sont appelés dans ton contenu.
        Je n'ai aucun problème à insérer des emoticones, des icônes de font-awesome ou des symboles vectorielles que j'aurai dessiné spécifiquement et redéfini sous forme de fontes. N'oublie pas que tu peux accessoirement utiliser des codes (comme avec l'extension UP) ou des champs personnalisés avec un icon picker comme celui de simplifyourweb (gratuit et également en français).



        Dernière édition par daneel à 17/10/2022, 12h56
        Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

        Commentaire


        • #5
          Bonjour Yann
          En fait je n'ai pas de soucis particulier quand je faisais mes saisie de tests connecté en super-admin.

          Mon problème c'est quand j'ai reproduis un copier/coller avec une mise en page que quelqu'un avait publié en mode invité pour faire ce site collaboratif
          Mon objectif étant ls admins/validateurs valident juste la soumission. On ne retouche pas le contenu et si les personnes ont mis des icônes (notamment de liste) et qu'ils sautent, tant pis.
          Juste qu'en l'état actuel des paramétrages, une fois soumis, j'ai TOUT le contenu sans aucune mise en page , ce qui n'est pas possible en utilisation.

          Je pense avoir identifié le problème en modifiant le paramétrage de joomla, mais comme mentionné, sauf erreur de compréhension de ma part, je préférerai utiliser tinyMCE pour gérer ce qui est autorisé/interdit et les balises acceptés lors d'une soumission d'article joomla comme visiteur.

          J'ai passé pas mal de temps à modifier le paramétrage configuration joomla/tinyMCE mais en général, je laisse leur paramètre par défaut.
          Juste que je sélectionne dans tout mes sites, tinyMCE que je n’utilises pas la configuration de joomla.

          A priori je n'ai pas eu ce problème sur ancienne version du site avec joomla 3!



          Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

          Commentaire


          • #6
            Re
            Ok je crois avoir compris. Le mode visiteur sous joomla 3 devait être à liste noire par défaut. Il me semble qu'en passant à joomla 4, il y avait un avertissement que le mode "aucun HTML" soit maintenant le paramètre par défaut! ?

            En mettant "liste noire par défaut" pour le visiteur (seul), tout refonctionne ... comme avant
            Je lis aussi dans l'aide sur la page configuration joomla 4> Filtres de texte
            Veuillez noter que ces paramètres fonctionnent quel que soit l'éditeur que vous utilisez
            Même si vous utilisez un éditeur WYSIWYG, les paramètres de filtrage permettent de supprimer les balises et les attributs supplémentaires avant d'enregistrer les contenus dans la base de données.
            Je m'étais fais influencé par un post (de mémoire du dev d'akeeba) qui recommandait d'utiliser tinyMCE pour définir les exclusions/autorisations pour la sécurité (mais peut-être que cela datait de joomla 3!?) et la formulation dans tinyMCE > Utiliser les filtres de texte de Joomla = désactivé

            Si j'ai bien compris, je dois mettre pour sécurisée la saisie d'un visiteur, tout en lui permettant une mise en forme basique:

            mon paramètre général dans joomla > Configuration globale > filtre de texte
            invité= liste interdite par défaut

            paramètre dans tinyMCE :

            filtres de texte de Joomla = désactivé
            Nouvelle ligne= paragraphe
            Elements prohibés: script,applet
            daneel aime ceci.
            Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

            Commentaire


            • #7
              Bonjour @daneel Est-ce que je dois interpréter ton "j'aime ça" comme mon paramétrage repose sur un raisonnement correct ? car j'ai encore un petit doute.
              Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

              Commentaire


              • #8
                Correct.

                Quand on utilise un notepad++ ou un editeur de texte similaire, il n'y a aucun effet et les sauts de ligne ne sont pas pris en compte dans la rédaction... C'est toujours CR (Carriage Return) et LF (Line Feed) qui seront définis (visible dans notepad++). Donc à moins que la source contient bien des sauts de ligne reconnus, le texte sera composé uniquement de paragraphe.

                Pour tout te dire, le saut de ligne fait partie de ce que je considère comme l'étape de mise en forme. Au départ, c'est l'utilisation de tinymce et ses fonctions de base puis on entre rapidement dans la pratique.

                je désactive le versioning et j'utilise l'autosave (plugin qui a été adapté sous J4 sur la suggestion de Marc). Cela me permet d'éviter de créer une programmation dans le planificateur pour nettoyer toutes les versions ou de me soucier de sauvegarder en cours. En préférence, je conseille d'écrire directement dans l'éditeur du site ou d'utiliser notepad++ (également comme étape intermédiaire pour filtrer le contenu de word).

                Dans Tinymce, on sauvegarde une première fois puis on effectue la mise en forme. C'est là que l'on créé les sauts de ligne mais également les balises titres, les énumérations (et autres listes) et l'enrichissement du contenu ( image, tableau, contenu dynamique graphique, intégration de twitter et autres) pouvant être inséré de diverses façons, y compris avec des shortcodes comme ceux de l'extension UP ou de champs personnalisés...

                Je n'oublie pas si c'est nécessaire l'insertion du lire la suite, des précisions sur les liens (interne, externe) et d'une table des matières si elle n'est pas générée automatiquement.

                Bref, tout cela pour te dire que la mise en forme d'un texte sur le web s'accompagne généralement de quelques éléments que tu ne peux pas forcément retranscrire sur un logiciel traitement ou editeur de texte habituel car c'est bien plus pratique de le faire depuis tinymce et de vérifier directement. La mise en forme est aussi apprécié pour sublimer le contenu.

                En soumission en front, je limite volontairement car les rédacteurs n'ont pas à faire la mise en forme, on va privilégier les champs personnalisés pour des mises en page complexe. De mon point de vue, l'interface front doit être bien souvent assez simple tant du point de vue sécurité que de l'usage face à un public qui n'a pas forcément les compétences ou qui seront libre de faire n'importe quoi au risque d'avoir plus de travail.



                A noter que par rapport à ton message initial, il faut que tu fasse attention à ta CSP (politique de sécurité), des appels aux librairies comme font-awesome et à la css pour éviter des blocages de mises en forme. La console et les outils du navigateur aide généralement à trouver la cause. Les règles pouvant être appliqués dans le htaccess, avec le plugin natif http headers ou des solutions comme cloudflare.
                Dernière édition par daneel à 20/10/2022, 19h12
                Joomla User Group (JUG) Lille : https://www.facebook.com/groups/JUGLille/

                Commentaire


                • #9
                  Bonsoir

                  Après je précise que je me prends le plus la tête pour la soumission côté front-end car je ne peux pas faire des tutos. les gens font des copies (je leur mentionne juste de passer par un éditeur basique mais pas word avant de faire un copier/coller).
                  Ensuite je limite aux balises strict minimal qui couvre 90% des demandes (cf image de mon 1er post)
                  Voilà avec cela j'ai eu 2 premières soumissions. Cela m'a permis de m'apercevoir que le membre qui s'est connecté ne pouvait plus faire la mise en forme sommaire.

                  Il a fallut que j'ajuste tous les droits ACL des filtres de texte de la configuration générale de joomla à
                  tous => "liste interdite par défaut" SAUF
                  Public => "Pas de HTML"
                  Super Utilisateur => "aucun filtre"
                  Ok je crois que l'on as fait le tour de la question

                  Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%...mouvoir-joomla

                  Commentaire

                  Annonce

                  Réduire
                  Aucune annonce pour le moment.

                  Partenaire de l'association

                  Réduire

                  Hébergeur Web PlanetHoster
                  Travaille ...
                  X