Censure inopérante
2 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
Censure inopérante
Je suis navrée de vous solliciter mais il y a un souci que je ne parviens pas à résoudre :
J'ai beau censurer certains mots et paramétrer leur remplacement automatique, il ne se passe rien, ni dans les posts ni dans les MP.
Ce sont des mots de deux lettres et, pour que ces mots soient pris en considération par le système, il m'a fallu taper un 3e caractère, en l'occurrence une espace.
Serait-ce cette espace qui empêcherait la censure de se faire ?
Mais alors, si tel était le cas, cela signifierait-il que seuls les mots comprenant au moins 3 lettres peuvent être censurés ?
Merci d'avance pour votre aide éventuelle !
J'ai beau censurer certains mots et paramétrer leur remplacement automatique, il ne se passe rien, ni dans les posts ni dans les MP.
Ce sont des mots de deux lettres et, pour que ces mots soient pris en considération par le système, il m'a fallu taper un 3e caractère, en l'occurrence une espace.
Serait-ce cette espace qui empêcherait la censure de se faire ?
Mais alors, si tel était le cas, cela signifierait-il que seuls les mots comprenant au moins 3 lettres peuvent être censurés ?
Merci d'avance pour votre aide éventuelle !
Re: Censure inopérante
Bonsoir,
Les mots censurés doivent effectivement faire plus de deux caractères. Vous pouvez par contre censurer des mots à l'aide du Javascript en suivant ce tutoriel.
Cordialement.
Les mots censurés doivent effectivement faire plus de deux caractères. Vous pouvez par contre censurer des mots à l'aide du Javascript en suivant ce tutoriel.
Cordialement.
Dr. Karlos- Membre actif
-
Messages : 2623
Inscrit(e) le : 03/01/2012
Re: Censure inopérante
Le Javascript semble compliqué à maîtriser, tout de même. Alors quel en est l'intérêt ?
Je pose cette question car j'ai eu beau lire et lire les tutoriaux disponibles à ce sujet, je n'arrive pas à comprendre l'intérêt d'apprendre à maîtriser cela si ça ne fait pas de différence au bout du compte pour la censure.
Or, j'imagine que le Javascript doit avoir des avantages, sinon on n'apprendrait pas à le maitriser. N'est-ce pas ?
Je pose cette question car j'ai eu beau lire et lire les tutoriaux disponibles à ce sujet, je n'arrive pas à comprendre l'intérêt d'apprendre à maîtriser cela si ça ne fait pas de différence au bout du compte pour la censure.
Or, j'imagine que le Javascript doit avoir des avantages, sinon on n'apprendrait pas à le maitriser. N'est-ce pas ?
Re: Censure inopérante
Bonsoir,
Le tutoriel vous apprend à modifier un code afin de censurer des mots à l'aide du Javascript. Wink La censure des mots avec moins de trois caractères n'étant pas faisable, il s'agit de votre seule alternative pour censurer ces mots dans les sujets.
Le code est relativement simple à modifier:
Pour le type de remplacement, vous avez plusieurs choix:
- "text": le script cherchera sur les messages le mot en question. On recherche du texte qu'on remplace par du texte.
- "html": le code HTML des messages sera analysé afin de trouver l'expression recherchée. Une fois trouvée, elle sera remplacée par l'expression désirée.
- autres attributs: le script cherche dans les balises qui ont l'attribut l'expression recherchée et la remplace par le contenu demandé.
Dans votre cas, il s'agit de "text".
Vous remplacez "expression à chercher" par le mot de deux caractères que vous désirez censurer. Vous changez "par quoi on le remplace" par l'expression qui doit prendre la place de ce mot à deux caractères.
Si je veux remplacer le mot "forumactif" sur mon forum par le mot "publicité interdite", mon code ressemblerait à ceci:
Le reste du code n'est pas à modifier.
Cordialement.
Le tutoriel vous apprend à modifier un code afin de censurer des mots à l'aide du Javascript. Wink La censure des mots avec moins de trois caractères n'étant pas faisable, il s'agit de votre seule alternative pour censurer ces mots dans les sujets.
Le code est relativement simple à modifier:
- Code:
var censorship =
[
["type de remplacement",/expression à chercher/,"par quoi on la remplace"],
["type de remplacement",/expression à chercher/,"par quoi on la remplace"],
["type de remplacement",/expression à chercher/,"par quoi on la remplace"],
["type de remplacement",/expression à chercher/,"par quoi on la remplace"]
];
function censorNode(a) {
if(a.nodeType == 3) {
for(var b in censorship) {
if(censorship[b][0] === "text") {
a.nodeValue = a.nodeValue.replace(censorship[b][1], censorship[b][2])
}
}
}else {
if(a.nodeType == 1) {
for(b in censorship) {
a.hasAttribute(censorship[b][0]) && a.setAttribute(censorship[b][0], a.getAttribute(censorship[b][0]).replace(censorship[b][1], censorship[b][2]))
}
}
if(a.hasChildNodes()) {
a = a.childNodes;
for(b = 0;b < a.length;b ) {
censorNode(a[b])
}
}
}
}
$(function() {
$(window).bind("load", function() {
setTimeout(function() {
$("div.postbody div" ($("body#phpbb").length ? ".content div" : $("#ipbwrapper").length ? ".post-entry div:not(.clear)" : $("#pun-foot").length ? ".entry-content div div:not(.clear)" : "")).each(function() {
censorNode(this);
for(var a in censorship) {
censorship[a][0] === "html" && censorship[a][1].test($(this).html()) && $(this).html($(this).html().replace(censorship[a][1], censorship[a][2]))
}
})
}, 600)
})
});
Pour le type de remplacement, vous avez plusieurs choix:
- "text": le script cherchera sur les messages le mot en question. On recherche du texte qu'on remplace par du texte.
- "html": le code HTML des messages sera analysé afin de trouver l'expression recherchée. Une fois trouvée, elle sera remplacée par l'expression désirée.
- autres attributs: le script cherche dans les balises qui ont l'attribut l'expression recherchée et la remplace par le contenu demandé.
Dans votre cas, il s'agit de "text".
Vous remplacez "expression à chercher" par le mot de deux caractères que vous désirez censurer. Vous changez "par quoi on le remplace" par l'expression qui doit prendre la place de ce mot à deux caractères.
Si je veux remplacer le mot "forumactif" sur mon forum par le mot "publicité interdite", mon code ressemblerait à ceci:
- Code:
var censorship =
[
["text",/forumactif/,"publicité interdite"],
];
function censorNode(a) {
if(a.nodeType == 3) {
for(var b in censorship) {
if(censorship[b][0] === "text") {
a.nodeValue = a.nodeValue.replace(censorship[b][1], censorship[b][2])
}
}
}else {
if(a.nodeType == 1) {
for(b in censorship) {
a.hasAttribute(censorship[b][0]) && a.setAttribute(censorship[b][0], a.getAttribute(censorship[b][0]).replace(censorship[b][1], censorship[b][2]))
}
}
if(a.hasChildNodes()) {
a = a.childNodes;
for(b = 0;b < a.length;b ) {
censorNode(a[b])
}
}
}
}
$(function() {
$(window).bind("load", function() {
setTimeout(function() {
$("div.postbody div" ($("body#phpbb").length ? ".content div" : $("#ipbwrapper").length ? ".post-entry div:not(.clear)" : $("#pun-foot").length ? ".entry-content div div:not(.clear)" : "")).each(function() {
censorNode(this);
for(var a in censorship) {
censorship[a][0] === "html" && censorship[a][1].test($(this).html()) && $(this).html($(this).html().replace(censorship[a][1], censorship[a][2]))
}
})
}, 600)
})
});
Le reste du code n'est pas à modifier.
Cordialement.
Dr. Karlos- Membre actif
-
Messages : 2623
Inscrit(e) le : 03/01/2012
Re: Censure inopérante
Merci infiniment pour tout le mal que vous vous êtes donné pour moi.
Ce qui est "relativement simple" pour vous est totalement obscur, de mon côté.
Donc, rien de cela ne me servira car, vraiment, ça m'est incompréhensible, mais je suis touchée par vos efforts qui, je l'espère, serviront à d'autres personnes moins crétines que moi.
Ce qui est "relativement simple" pour vous est totalement obscur, de mon côté.
Donc, rien de cela ne me servira car, vraiment, ça m'est incompréhensible, mais je suis touchée par vos efforts qui, je l'espère, serviront à d'autres personnes moins crétines que moi.
Re: Censure inopérante
Re,
Je peux le faire pour vous en tentant de vous le ré expliquer. Quels mots désirez-vous remplacer? Et quels mots désirez-vous voir à la place de ceux-ci?
Cordialement.
Je peux le faire pour vous en tentant de vous le ré expliquer. Quels mots désirez-vous remplacer? Et quels mots désirez-vous voir à la place de ceux-ci?
Cordialement.
Dr. Karlos- Membre actif
-
Messages : 2623
Inscrit(e) le : 03/01/2012
Re: Censure inopérante
C'est vraiment adorable de votre part, cher Doctor Karlos !
Je vois que vous ne vous découragez pas malgré mon inexpérience qui peut paraître exaspérante.
Je veux bien que vous m'arrangiez cela, alors, si toutefois vous en trouvez le temps.
Dans mon forum, il y a des membres qui refusent de comprendre certains principes inhérents à l'orthographe, notamment à propos des mots ça (pronom démonstratif) et çà (adverbe de lieu qui peut s'employer en interjection).
Malgré mes efforts répétés, certains de ces membres persistent à employer çà alors que, dans 99 % des cas, ils devraient employer ça.
Dans un forum consacré à la culture, à l'expression française et à la typographie, constater ce genre de coquilles récurrentes ne fait pas très sérieux.
Donc, vu que j'en ai un peu marre de passer pour la flicquette de service et pour la grosse méchante, j'aimerais que tous les çà, tous les Cà et tous les Çà soient automatiquement remplacés par des ça et des Ça.
De mon côté, j'avais pensé avoir trouvé la solution par le biais des censures en ajoutant une espace (en typographie, le mot espace est féminin, comme le spécifient d'ailleurs le Petit Robert, le Larousse ainsi que le recueil de Règles de la typographie de l'Imprimerie nationale) après les mots. Une espace comptant pour un caractère, le principe aurait dû fonctionner, mais il se trouve que non, hélas.
Chez XPress et chez Word ça fonctionne vu que même les espaces sont considérées comme des caractères, mais chez ForumActif ce n'est pas le cas.
Quoi qu'il en soit, merci beaucoup pour l'attention que vous portez à mon problème.
Je vois que vous ne vous découragez pas malgré mon inexpérience qui peut paraître exaspérante.
Je veux bien que vous m'arrangiez cela, alors, si toutefois vous en trouvez le temps.
Dans mon forum, il y a des membres qui refusent de comprendre certains principes inhérents à l'orthographe, notamment à propos des mots ça (pronom démonstratif) et çà (adverbe de lieu qui peut s'employer en interjection).
Malgré mes efforts répétés, certains de ces membres persistent à employer çà alors que, dans 99 % des cas, ils devraient employer ça.
Dans un forum consacré à la culture, à l'expression française et à la typographie, constater ce genre de coquilles récurrentes ne fait pas très sérieux.
Donc, vu que j'en ai un peu marre de passer pour la flicquette de service et pour la grosse méchante, j'aimerais que tous les çà, tous les Cà et tous les Çà soient automatiquement remplacés par des ça et des Ça.
De mon côté, j'avais pensé avoir trouvé la solution par le biais des censures en ajoutant une espace (en typographie, le mot espace est féminin, comme le spécifient d'ailleurs le Petit Robert, le Larousse ainsi que le recueil de Règles de la typographie de l'Imprimerie nationale) après les mots. Une espace comptant pour un caractère, le principe aurait dû fonctionner, mais il se trouve que non, hélas.
Chez XPress et chez Word ça fonctionne vu que même les espaces sont considérées comme des caractères, mais chez ForumActif ce n'est pas le cas.
Quoi qu'il en soit, merci beaucoup pour l'attention que vous portez à mon problème.
Re: Censure inopérante
Bonjour,
Les espaces fonctionnement normalement dans la censure. Tentez de remplacer les espaces par nbsp (ajoutez un point-virgule tout de suite après le p) dans la censure des mots.
Si je désire censurer forum actif, j'insère forum actif (j'ajoute un point-virgule après le p).
Néanmoins, voici le code à insérer dans la gestion des codes Javascript (PA | Modules | Gestion des codes Javascript) de votre forum:
La partie qui a été modifiée est celle-ci:
Comme mentionné dans un des précédents messages, les premiers mot s(text) représentent le type de remplacement qu'on désire effectuer.
Les deuxièmes mots (çà, Çà, Cà) représentent le texte qu'on cherche à remplacer.
Les troisièmes mots (ça, Ça) sont les mots qui doivent s'afficher à la place des mots à remplacer (les deuxièmes mots).
On peut donc comprendre dans le code que:
Je veux remplacer çà par ça.
Je veux remplacer Çà par Ça.
Je veux remplacer Cà par Ça.
Cordialement.
Les espaces fonctionnement normalement dans la censure. Tentez de remplacer les espaces par nbsp (ajoutez un point-virgule tout de suite après le p) dans la censure des mots.
Si je désire censurer forum actif, j'insère forum actif (j'ajoute un point-virgule après le p).
Néanmoins, voici le code à insérer dans la gestion des codes Javascript (PA | Modules | Gestion des codes Javascript) de votre forum:
- Code:
var censorship =
[
["text",/çà/,"ça"],
["text",/Çà/,"Ça"],
["text",/Cà/,"Ça"],
];
function censorNode(a) {
if(a.nodeType == 3) {
for(var b in censorship) {
if(censorship[b][0] === "text") {
a.nodeValue = a.nodeValue.replace(censorship[b][1], censorship[b][2])
}
}
}else {
if(a.nodeType == 1) {
for(b in censorship) {
a.hasAttribute(censorship[b][0]) && a.setAttribute(censorship[b][0], a.getAttribute(censorship[b][0]).replace(censorship[b][1], censorship[b][2]))
}
}
if(a.hasChildNodes()) {
a = a.childNodes;
for(b = 0;b < a.length;b++) {
censorNode(a[b])
}
}
}
}
$(function() {
$(window).bind("load", function() {
setTimeout(function() {
$("div.postbody div" + ($("body#phpbb").length ? ".content div" : $("#ipbwrapper").length ? ".post-entry div:not(.clear)" : $("#pun-foot").length ? ".entry-content div div:not(.clear)" : "")).each(function() {
censorNode(this);
for(var a in censorship) {
censorship[a][0] === "html" && censorship[a][1].test($(this).html()) && $(this).html($(this).html().replace(censorship[a][1], censorship[a][2]))
}
})
}, 600)
})
});
La partie qui a été modifiée est celle-ci:
- Code:
[
["text",/çà/,"ça"],
["text",/Çà/,"Ça"],
["text",/Cà/,"Ça"],
];
Comme mentionné dans un des précédents messages, les premiers mot s(text) représentent le type de remplacement qu'on désire effectuer.
Les deuxièmes mots (çà, Çà, Cà) représentent le texte qu'on cherche à remplacer.
Les troisièmes mots (ça, Ça) sont les mots qui doivent s'afficher à la place des mots à remplacer (les deuxièmes mots).
On peut donc comprendre dans le code que:
Je veux remplacer çà par ça.
Je veux remplacer Çà par Ça.
Je veux remplacer Cà par Ça.
Cordialement.
Dr. Karlos- Membre actif
-
Messages : 2623
Inscrit(e) le : 03/01/2012
Re: Censure inopérante
Vos explications paraissent on ne peut plus claires.
Merci infiniment pour tout ce travail que je vous ai donné.
Je viens d'insérer, dans mon forum, votre code tel que vous me l'avez donné.
Je vais attendre quelques jours pour voir ce que ça donne sur le terrain puis je viendrai vous raconter comment ça s'est passé. Promis !
Je vous souhaite une excellente journée.
Merci encore pour votre professionnalisme et votre très sympathique assistance.
Merci infiniment pour tout ce travail que je vous ai donné.
Je viens d'insérer, dans mon forum, votre code tel que vous me l'avez donné.
Je vais attendre quelques jours pour voir ce que ça donne sur le terrain puis je viendrai vous raconter comment ça s'est passé. Promis !
Je vous souhaite une excellente journée.
Merci encore pour votre professionnalisme et votre très sympathique assistance.
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum