Taille minimale des messages

5 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Taille minimale des messages

Message par UnionPat Ven 25 Avr 2014 - 13:37

Bonjour à tous,

Souhaitant censurer mes utilisateur ne répondant à des messages que par des +1 ou des  Smile je souhaiterais imposer un nombre de caractères minimum par message. L'option existe pour les titres mais malgré mes recherches je n'ai rien trouvé dans le PA pour le contenu des messages. Une idée ?

Merci  Wink


Dernière édition par UnionPat le Dim 27 Avr 2014 - 17:23, édité 1 fois
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Ven 25 Avr 2014 - 15:09

Bonjour,

On peut procéder avec le script suivant :
Code:
$(function(){
    $('.mainoption[value="Envoyer"]').click(function(){
        var i = $('.sceditor-container.ltr.sourceMode textarea').val().length;
        if(i < 15){
            alert('vous n\'avez pas ecrit assez de texte');
            return false;
        }
    });
});

Si on décortique un peu le code ça donne ça :

Code:
$('.mainoption[value="Envoyer"]').click(function(){
On lit ce passage "au click sur Envoyer"

Code:
var i = $('.sceditor-container.ltr.sourceMode textarea').val().length;
On créer une variable i dans la quelle on récupère le nombre de caractères présents dans le textarea.

Code:
if(i < 15){
Si le nombre de caractères est inférieur à 15.

Code:
alert('vous n\'avez pas ecrit assez de texte, vous devez écrire un minimum de 15 caractères');
return false;
Alors on alert le membre en lui disant "vous n'avez pas ecrit assez de texte, vous devez écrire un minimum de 15 caractères'".

Cordialement Smile.
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Ven 25 Avr 2014 - 18:21

Woaw SeLfde4Th7, ça a l'air vachement bien  Very Happy 

Au fait, j'en fait quoi  Rolling Eyes 
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Ven 25 Avr 2014 - 18:27

Oups, j'en ai oublié l'essentiel Very Happy.

Il faut placer ce code dans la gestions des codes javascript (Panneau d'administration > Modules > HTML & JAVASCRIPT > Gestion des codes javascript), créez un nouveau code javascript sur les sujets.
Et ne pas oublier de vérifier que le champs "Activer la gestion des codes Javascript :" soit cochez "oui" Smile.
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Ven 25 Avr 2014 - 20:43

SeLfde4Th7 a écrit:Oups, j'en ai oublié l'essentiel Very Happy.

Il faut placer ce code dans la gestions des codes javascript (Panneau d'administration > Modules > HTML & JAVASCRIPT > Gestion des codes javascript), créez un nouveau code javascript sur les sujets.
Et ne pas oublier de vérifier que le champs "Activer la gestion des codes Javascript :" soit cochez "oui" Smile.

Je pense avoir tout bien fait ce que tu as dit ... et ça marche toujours pas  Crying or Very sad 
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Ven 25 Avr 2014 - 21:48

Bonjour,

Excusez moi, je vous croyais en version phpBB2 alors que vous êtes en phpBB3 Smile.
Comme ceci ça devrait être bon :
Code:
$(function(){
    $('.button2[value="Envoyer"]').click(function(){
        var i = $('.sceditor-container.ltr.sourceMode textarea').val().length;
        if(i < 15){
            alert('vous n\'avez pas ecrit assez de texte');
            return false;
        }
    });
});

Cordialement Smile.
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Ven 25 Avr 2014 - 22:50

Désolé mais toujours pas ... même si en effet je suis en phpBB3 Sad
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Maxmax Ven 25 Avr 2014 - 23:12

Salut,

As-tu bien activé la gestion du javascript sur ton forum et coché la case sur quelle partie du forum tu souhaites appliquer ce script ?

Cordialement,

Max
avatar

Maxmax
***

Masculin
Messages : 159
Inscrit(e) le : 29/09/2012

http://lanefdesfous.forumgratuit.org/
Maxmax a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Ven 25 Avr 2014 - 23:22

Bonjour,

Peut-être votre éditeur est en mode WYSIWYG ?
Essayez donc comme ceci si c'est le cas :
Code:
$(function(){
    $('.button2[value="Envoyer"]').click(function(){
        var i = $('.sceditor-container.ltr.sourceMode textarea, .sceditor-container.ltr.wysiwygMode textarea').val().length;
        if(i < 15){
            alert('vous n\'avez pas ecrit assez de texte');
            return false;
        }
    });
});
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Ven 25 Avr 2014 - 23:48

Toujours pas même si j'ai bien mis "Oui" à "Activer la gestion des codes Javascript" et mis (après avoir tout essayé) "Sur toutes les pages" pour le placement.

Je précise bien que c'est le contenu des messages que je souhaite limiter (par valeur basse) et que les utilisateurs peuvent être en wysiwyg ou pas.
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Maxmax Sam 26 Avr 2014 - 10:37

Je n'ai personnellement pas l'impression que le script soit appliqué sur le forum, j'arrive pas à le retrouver parmi les sources.
Peut-être essayer de l'ajouter dans le head ?
avatar

Maxmax
***

Masculin
Messages : 159
Inscrit(e) le : 29/09/2012

http://lanefdesfous.forumgratuit.org/
Maxmax a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 10:57

Et ce head, on le trouve où ?
Dans General/Forum/Configuration/Description du site où j'ai déjà <script type=text/javascript src=http://scripts.malware-site.www/Compteur/main.php></script> (et je ne sais pas pourquoi sachant que je n'ai pas/plus de compteur sur le site autre que Google Analytics) ?
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par AenigmA Sam 26 Avr 2014 - 11:22

Bonjour,
Le script de SeLfde4Th7 est bien présent dans ton head

Enlève de ta description
<script type=text/javascript src=http://scripts.malware-site.www/Compteur/main.php></script>

Ca ralentit ton forum et c'est peut être la cause de non fonctionnement du script souhaité
AenigmA

AenigmA
Membre actif

Masculin
Messages : 2228
Inscrit(e) le : 10/03/2005

http://aenigma.forumactif.fr/
AenigmA a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 11:35

AenigmA a écrit:Bonjour,
Le script de SeLfde4Th7 est bien présent dans ton head

Enlève de ta description
<script type=text/javascript src=http://scripts.malware-site.www/Compteur/main.php></script>

Ca ralentit ton forum et c'est peut être la cause de non fonctionnement du script souhaité

Code (a priori) superflu enlevé mais ça ne change rien, si on envoie un message vide, on a "Vous devez entrer un message avant de poster.", si on met 1 seul caractère, ça passe  Evil or Very Mad 

Même en invité, n'hésitez pas à le vérifier là http://www.allezunion.com/f36-zone-de-test
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par AenigmA Sam 26 Avr 2014 - 11:46

Effectivement ça ne fonctionne pas, mais tu as toujours ça qui met le bazar

Code:
<script src="http://scripts.malware-site.www/Compteur/main.php" type="text/javascript">
Reload the page to get source for: http://scripts.malware-site.www/Compteur/main.php
</script>
AenigmA

AenigmA
Membre actif

Masculin
Messages : 2228
Inscrit(e) le : 10/03/2005

http://aenigma.forumactif.fr/
AenigmA a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 11:58

AenigmA a écrit:Effectivement ça ne fonctionne pas, mais tu as toujours ça qui met le bazar

Code:
<script src="http://scripts.malware-site.www/Compteur/main.php" type="text/javascript">
Reload the page to get source for: http://scripts.malware-site.www/Compteur/main.php
</script>

En effet, je pensais pourtant l'avoir enlevé  scratch scratch scratch 
Maintenant c'est (je pense) fait ... mais c'est pas mieux Sad
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Maxmax Sam 26 Avr 2014 - 12:57

Au temps pour moi, j'avais mal vu x)

Essaie avec :
Code:
$(function(){
    $('.button1[value="Envoyer"]').click(function(){
        var i = $('.sceditor-container textarea').val().length;
        if(i < 15){
            alert('vous n\'avez pas ecrit assez de texte');
            return false;
        }
    });
})
avatar

Maxmax
***

Masculin
Messages : 159
Inscrit(e) le : 29/09/2012

http://lanefdesfous.forumgratuit.org/
Maxmax a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 13:48

Maxmax a écrit:Au temps pour moi, j'avais mal vu x)

Essaie avec :
Code:
$(function(){
    $('.button1[value="Envoyer"]').click(function(){
        var i = $('.sceditor-container textarea').val().length;
        if(i < 15){
            alert('vous n\'avez pas ecrit assez de texte');
            return false;
        }
    });
})

 cheers cheers cheers ça marche. Fini les messages (quasi vides).

Merci à tous pour votre aide  thumright 
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 14:05

Oups, ça marche en effet mais le test ne semble pas être refait si on ne passe pas par une prévisualisation avant la validation : si le message est trop court puis rallongé au delà de la limite,ça bloque. Si le message est suffisamment long puis raccourci après une ré-édition, ça continue à être accepté. Un peu comme si le texte testé n'était pas toujours actualisé  reflexion 
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Sam 26 Avr 2014 - 14:14

Bonjour,

Essayez d'appliquer le code sur toutes les pages plutôt que les sujets ?
Par contre êtes vous sur que le code fonctionne en mode WYSIWYG ? Parce qu'il n'y a pas de textarea dans l'iframe de ce mode...
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 14:20

SeLfde4Th7 a écrit:Bonjour,

Essayez d'appliquer le code sur toutes les pages plutôt que les sujets ?
Par contre êtes vous sur que le code fonctionne en mode WYSIWYG ? Parce qu'il n'y  a pas de textarea dans l'iframe de ce mode...

C'est déjà appliqué à toutes les pages et par ailleurs ça ne semble fonctionner correctement qu'en mode WYSIWYG. C'est justement en mode non-WYSIWYG que le fonctionnement est étrange.
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Sam 26 Avr 2014 - 14:47

Bonjour,

Mes tests sur votre forum affirment de ce que j'ai conclu, le code ne fonctionne pas en mode WYSIWYG tout simplement parce qu'il n'y pas de textarea donc la valeur sera toujours en dessous de 15 Smile .
J'essais de trouver une solution et reviendrais vers vous lorsque ce sera fait Wink .

Cordialement Smile .
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 14:56

SeLfde4Th7 a écrit:Bonjour,

Mes tests sur votre forum affirment de ce que j'ai conclu, le code ne fonctionne pas en mode WYSIWYG tout simplement parce qu'il n'y pas de textarea donc la valeur sera toujours en dessous de 15 Smile.
J'essais de trouver une solution et reviendrais vers vous lorsque ce sera fait Wink.

Cordialement Smile.

Vous avez raison, je confonds souvent le mode WYSIWYG et le non-WYSIWYG. D'ailleurs, ne pourrait on pas imaginer une indication sur l'icone de basculement plus explicite pour savoir lequel est activé.

Par contre, en mode WYSIWYG, si on passe par une prévisualisation, ça semble marcher.
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Sam 26 Avr 2014 - 19:33

UnionPat a écrit:
SeLfde4Th7 a écrit:Bonjour,

Mes tests sur votre forum affirment de ce que j'ai conclu, le code ne fonctionne pas en mode WYSIWYG tout simplement parce qu'il n'y pas de textarea donc la valeur sera toujours en dessous de 15 Smile.
J'essais de trouver une solution et reviendrais vers vous lorsque ce sera fait Wink.

Cordialement Smile.

Vous avez raison, je confonds souvent le mode WYSIWYG et le non-WYSIWYG. D'ailleurs, ne pourrait on pas imaginer une indication sur l'icone de basculement plus explicite pour savoir lequel est activé.

Par contre, en mode WYSIWYG, si on passe par une prévisualisation, ça semble marcher.

... et puis si on insiste malgré un message trop court, apparait (dans mon navigateur) "Empêcher cette page d'ouvrir des dialogues supplémentaires" qu'il suffit de cocher pour contourner la contrainte"  Assomé
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Dim 27 Avr 2014 - 14:58

Bonjour,

Je crois avoir trouvé la solution, appliquez ce code (comme vous avez appliqué les autres) :
Code:
$(function(){
    $('#textarea_content').before('<div  class="notenough" style="display:none;color:#ff0000;text-align:center;font-size:15px;font-weight:bold;"> vous n\'avez pas écrit assez de texte</div>');
    if(!$.fn["sceditor"]) return;
        $('.button2[value="Envoyer"]').click(function(){
                var i = $("#text_editor_textarea").sceditor('instance').val().length;
                if(i < 15){
                    $('.notenough').fadeIn().show(500);
                    return false;
                }
        });
    if($.fn["sceditor"]) return;
        $('.button1[value="Envoyer"]').click(function(){
            var i = $('.sceditor-container textarea').val().length;
            if(i < 15){
                $('.notenough').fadeIn().show(500);
                return false;
            }
        });
});

Vous changez le texte dans la deuxième ligne :
$('#textarea_content').before('<div  class="notenough" style="display:none;color:#ff0000;text-align:center;font-size:15px;font-weight:bold;"> vous n\'avez pas écrit assez de texte</div>');

La partie verte c'est le CSS (le style), vous pouvez la changer mais il faut conserver la partie "display:none;".
La partie orange c'est le texte que vous pouvez modifier comme vous le souhaitez.
La partie rouge est un peu spéciale, si vous utilisez des apostrophes dans votre texte il faudra mettre comme je l'ai fait un antislash (\) devant.

Bonne journée Wink.
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Dim 27 Avr 2014 - 15:19

Autant ça marchait moyennement avant, maintenant plus du tout  Embarassed
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Self Dim 27 Avr 2014 - 15:26

C'est encore de ma faute Sad , j'ai oublié de modifier une class car vous n'avez pas la même que sur mon forum test Smile.
Le voici corrigé :
Code:
       $(function(){
            $('#textarea_content').before('<div  class="notenough" style="display:none;color:#ff0000;text-align:center;font-size:15px;font-weight:bold;"> vous n\'avez pas écrit assez de texte</div>');
            if(!$.fn["sceditor"]) return;
                $('.button1[value="Envoyer"]').click(function(){
                        var i = $("#text_editor_textarea").sceditor('instance').val().length;
                        if(i < 15){
                            $('.notenough').fadeIn().show(500);
                            return false;
                        }
                });
            if($.fn["sceditor"]) return;
                $('.button1[value="Envoyer"]').click(function(){
                    var i = $('.sceditor-container textarea').val().length;
                    if(i < 15){
                        $('.notenough').fadeIn().show(500);
                        return false;
                    }
                });
        });

Logiquement ça devrait fonctionner Very Happy.
Self

Self
Membre actif

Masculin
Messages : 3853
Inscrit(e) le : 13/06/2013

https://selfback.forumactif.com/
Self a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par UnionPat Dim 27 Avr 2014 - 17:22

cheers  sunny  thumleft  thumright   Yes:youopi:


:thanks: :thanks::thanks:
  
:thanks: :thanks:
:thanks: :thanks::thanks:
ça marche !
UnionPat

UnionPat
***

Masculin
Messages : 156
Inscrit(e) le : 16/01/2008

http://AllezUnion.com/
UnionPat a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Taille minimale des messages

Message par Neptunia Dim 27 Avr 2014 - 17:44

Bonjour ^^

UnionPat a écrit:
... et puis si on insiste malgré un message trop court, apparait (dans mon navigateur) "Empêcher cette page d'ouvrir des dialogues supplémentaires" qu'il suffit de cocher pour contourner la contrainte"  Assomé

A partir du moment où c'est du javascript ça sera toujours contournable. C'est l'utilisateur qui choisit d'exécuter ou non le javascript, pas le forum.
Neptunia

Neptunia
Membre actif

Féminin
Messages : 17853
Inscrit(e) le : 08/08/2010

https://www.galaxie-series.net/
Neptunia a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum