Supprimer tous les messages d'un membre... sur ModernBB
4 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
Supprimer tous les messages d'un membre... sur ModernBB
Détails techniques
Version du forum : ModernBBPoste occupé : Fondateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Moi uniquement
Lien du forum :
Description du problème
Bonjour,J'ai un compte fondateur dont j'aimerais supprimer tous les messages d'un coup.
J'ai voulu suivre cette petite astuce :
https://forum.forumactif.com/t348385-supprimer-les-messages-d-un-membre#2971702
Problème : mon forum est en ModernBB et le code ne propose pas cette solution. J'ai tapé "4" à tout hasard, et ça ne donne rien.
Quelqu'un aurait-il une idée ?
Merci d'avance !
Dernière édition par Nebetbastet le Mer 26 Sep 2018 - 11:38, édité 1 fois
Re: Supprimer tous les messages d'un membre... sur ModernBB
Bonjour @Nebetbastet,
Lorsque l'astuce a été rédigée en mars 2013, les versions ModernBB et AwesomeBB n’existaient pas encore.
Le concepteur du script a été contacté afin que celui-ci soit mis à jour prochainement
Cordialement.
Lorsque l'astuce a été rédigée en mars 2013, les versions ModernBB et AwesomeBB n’existaient pas encore.
Le concepteur du script a été contacté afin que celui-ci soit mis à jour prochainement
Cordialement.
Re: Supprimer tous les messages d'un membre... sur ModernBB
Merci !
J'attends alors que le script soit à jour !
J'attends alors que le script soit à jour !
Re: Supprimer tous les messages d'un membre... sur ModernBB
Bonsoir @Nebetbastet,Nebetbastet a écrit:Merci !
J'attends alors que le script soit à jour !
Le tutoriel a été mis à jour
Cordialement.
Re: Supprimer tous les messages d'un membre... sur ModernBB
Merci beaucoup Chacha.
Petit problème, ça ne semble pas marché. Quand j'appuie sur le bouton "supprimer tous les messages", rien ne se passe...
Petit problème, ça ne semble pas marché. Quand j'appuie sur le bouton "supprimer tous les messages", rien ne se passe...
Re: Supprimer tous les messages d'un membre... sur ModernBB
Bonjour @Nebetbastet
Sur ModernBB en essayant, j'ai ce résultat à la première suppression: https://i.imgur.com/EH2rzkp.png
Et en réessayant après que le message se soit bien supprimé, j'ai ce message: https://i.imgur.com/JYRmq5W.png
@*Splash* sur IE Edge 17 ça fonctionne également pour moi.
Cordialement.
Sur ModernBB en essayant, j'ai ce résultat à la première suppression: https://i.imgur.com/EH2rzkp.png
Et en réessayant après que le message se soit bien supprimé, j'ai ce message: https://i.imgur.com/JYRmq5W.png
@*Splash* sur IE Edge 17 ça fonctionne également pour moi.
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Supprimer tous les messages d'un membre... sur ModernBB
Je ne suis pas certain de comprendre...
Ce code ne fonctionne pas sur un forum en version Edge, je ne parlais pas du navigateur de Windaube
Re: Supprimer tous les messages d'un membre... sur ModernBB
Je n'ai aucune idée de ce qu'est la version "Edge" mais si c'est une modification de template ça pourrait être normal que ça ne fonctionne pas.
Le script fait une recherche de message et recherche dans la structure de la page de résultat les messages du membre à supprimer, ça recherche les 5 structures suivantes pour les templates par défaut des 6 versions:
#bye .hello h2 > a signifie:
Avec une template modifiée à ce niveau, il faut remplacer dans le script ceci:
Par ceci:
et modifier:
en conséquence de la modification de template.
Le script fait une recherche de message et recherche dans la structure de la page de résultat les messages du membre à supprimer, ça recherche les 5 structures suivantes pour les templates par défaut des 6 versions:
- #page-body span.postdetails b a
- #main-content .search .postbody h2.h3 a
- #main-content .posthead h2 a
- #main-content .postbody-head h3 a
- #wrap .page-header ~ .block .block-content > h2 > a
#bye .hello h2 > a signifie:
- un tag <a/>
- se trouvant directement dan un tag <h2/>
- qui lui-même a un ancètre <tag* class="hello"/>
- qui lui-même a un ancètre <tag* id="bye" />
Avec une template modifiée à ce niveau, il faut remplacer dans le script ceci:
- Code:
<script src="//js01.fra.co/22000.js"></script>
Par ceci:
- Code:
<script>
var SELECTEUR_VERS_LIEN = '#main h2.h3 > a';
var num_deleted_prev=0;var num_deleted_cur=0;if(window["_userdata"])_userdata.notifications=0;function killall(c,a,b){c=c.replace(/(^\s*|\s*$)/g,"");a=a||0;b=b||9E15;$.get("/spa/"+encodeURIComponent(c),function(d){var i=0;d=$(SELECTEUR_VERS_LIEN,d).filter(function(){return/^\/t[1-9][0-9]*(p[1-9][0-9]*)?-[^#]*#[1-9][0-9]*$/.test($(this).attr("href"))}).each(function(){if(b===9E15){if(!confirm('Supprimer '+($('h1:first',d).text().match(/[0-9]+/)||["???"])[0]+' messages de '+c))return b=0,!1}var a=+$(this).attr("href").substr($(this).attr("href").indexOf("#")+1);if(a>b){return b=0,!1}i++;b=a;var x=b;setTimeout(function(){$.post("/post","p="+x+"&mode=delete&confirm=1");num_deleted_cur++;document.title=num_deleted_prev+" ("+num_deleted_cur+"?/"+d+")"},1000*i)}).length;if(b!=0){num_deleted_prev+=num_deleted_cur;num_deleted_cur=0;document.title=num_deleted_prev+" ("+num_deleted_cur+"/"+d+")"}else{document.title=num_deleted_prev+" (erreur "+num_deleted_cur+"?)"}a+=d;b?0==d?0==a?alert("Aucun message \u00e0 supprimer"):alert(a+" message"+(1<a?"s":"")+" de "+c+" supprim\u00e9"+(1<a?"s":"")):setTimeout(function(){killall(c,a,b)},2000+d*1000):alert("Un message n'a pas pu \u00eatre supprim\u00e9")})};
</script>
et modifier:
- Code:
var SELECTEUR_VERS_LIEN = '#main h2.h3 > a';
en conséquence de la modification de template.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Supprimer tous les messages d'un membre... sur ModernBB
Effectivement Je n'avais pas lu assez attentivement le tuto ! Désolée....*Splash* a écrit:Hi,
Je viens de faire l'essaie avec un forum en ModernBB, la suppression de message fonctionne sans souci
Es-tu certain d'avoir cocher OUI pour "Utiliser le haut et bas de page" ?
J'ai coché la case... mais j'ai encore un problème. La case pour entrer le pseudo n'apparaît pas
Voici ce que j'obtiens :
Merci d'avance de votre aide
Re: Supprimer tous les messages d'un membre... sur ModernBB
Merci de ta réponse
Surtout que j'imagine qu'il faut agir sur plusieurs templates, et savoir qui fait quoi et quel code agit sur quoi là je suis facilement dépassé
C'est effectivement une version basée sur la modification de nombreux templates. Et sur ce domaine je ne suis pas serein pour me lancer dans des modifications de templates déjà modifiésEa a écrit:Je n'ai aucune idée de ce qu'est la version "Edge" mais si c'est une modification de template ça pourrait être normal que ça ne fonctionne pas.
Surtout que j'imagine qu'il faut agir sur plusieurs templates, et savoir qui fait quoi et quel code agit sur quoi là je suis facilement dépassé
Re: Supprimer tous les messages d'un membre... sur ModernBB
Sans doute que l'affichage blanc sur blanc n'aide pas, chez moi j'ai ça :Nebetbastet a écrit:Effectivement Je n'avais pas lu assez attentivement le tuto ! Désolée....*Splash* a écrit:Hi,
Je viens de faire l'essaie avec un forum en ModernBB, la suppression de message fonctionne sans souci
Es-tu certain d'avoir cocher OUI pour "Utiliser le haut et bas de page" ?
J'ai coché la case... mais j'ai encore un problème. La case pour entrer le pseudo n'apparaît pas
Voici ce que j'obtiens :
Merci d'avance de votre aide
La case doit être présente mais non visible
Juste avant supprimer tu dois trouver la zone où renseigner le pseudo, as-tu essayé d'inscrire quelque chose ?
Re: Supprimer tous les messages d'un membre... sur ModernBB
Ah super, c'était bien ça ! (je l'avais cherchée, cette case, mais plutôt au-dessus qu'à gauche).*Splash* a écrit:
La case doit être présente mais non visible
Juste avant supprimer tu dois trouver la zone où renseigner le pseudo, as-tu essayé d'inscrire quelque chose ?
Ca semble marcher, sauf que sur les 7 000 et quelques posts, il en a vu que 385 (il est en train de les effacer)
Re: Supprimer tous les messages d'un membre... sur ModernBB
[quote="Nebetbastet"]
Ea te répondra certainement
Il est possible que ce code n'agisse que sur des messages laissés par des membres aux permissions de membres et que les autres messages de ce membre fondateur sont dans des forums avec un accès spécial*Splash* a écrit:
Ca semble marcher, sauf que sur les 7 000 et quelques posts, il en a vu que 385 (il est en train de les effacer)
Ea te répondra certainement
Re: Supprimer tous les messages d'un membre... sur ModernBB
En fait, il a dit qu'il en a détecté 385, mais là je vois qu'il en a déjà supprimé plus de 1000. Ca a l'air de fonctionner !*Splash* a écrit:Nebetbastet a écrit:Il est possible que ce code n'agisse que sur des messages laissés par des membres aux permissions de membres et que les autres messages de ce membre fondateur sont dans des forums avec un accès spécial*Splash* a écrit:
Ca semble marcher, sauf que sur les 7 000 et quelques posts, il en a vu que 385 (il est en train de les effacer)
Ea te répondra certainement
Merci pour votre aide
Re: Supprimer tous les messages d'un membre... sur ModernBB
*Splash* a écrit:Merci de ta réponseC'est effectivement une version basée sur la modification de nombreux templates. Et sur ce domaine je ne suis pas serein pour me lancer dans des modifications de templates déjà modifiésEa a écrit:Je n'ai aucune idée de ce qu'est la version "Edge" mais si c'est une modification de template ça pourrait être normal que ça ne fonctionne pas.
Surtout que j'imagine qu'il faut agir sur plusieurs templates, et savoir qui fait quoi et quel code agit sur quoi là je suis facilement dépassé
Ok, j'ai trouvé le code modifié pour la template et si c'est bien ça:
https://github.com/SethClydesdale/forumactif-edge/blob/master/templates/general/search_results_posts.html#L3-L6
Alors dans le code plus haut:
- Code:
var SELECTEUR_VERS_LIEN = '#main h2.h3 > a';
peut être remplacé par:
- Code:
var SELECTEUR_VERS_LIEN = '.search.post .title h2.h3 > a';
La case doit être présente mais non visible
J'ai ajouté un bord rouge dans le tutoriel.
Ca semble marcher, sauf que sur les 7 000 et quelques posts, il en a vu que 385 (il est en train de les effacer)
Il y a une limitation mise à maximum 1 message supprimé par seconde afin de ne pas être bloqué à cause de trop d'activité (c'était nécessaire à une époque, je ne sais pas si c'est encore nécessaire maintenant).
Le fonctionnement du script est, par exemple si il y a 15 messages par page:
- chercher les 15 derniers messages du membre
- supprimer ces 15 derniers messages
- chercher les 15 derniers messages du membre
- supprimer les 15 derniers messages:
- si le script voit un message qu'il aurait déjà du supprimer => se termine et affiche "Un message n'a pas pu être supprimé"
- chercher les 15 derniers messages du membre: si il n'y a aucun résultat => set termine et affiche "14 messages supprimés
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Supprimer tous les messages d'un membre... sur ModernBB
Ea a écrit:Merci Ea c'est bien ça*Splash* a écrit:
Ok, j'ai trouvé le code modifié pour la template et si c'est bien ça:
https://github.com/SethClydesdale/forumactif-edge/blob/master/templates/general/search_results_posts.html#L3-L6
Le code à inscrire pour la version Edge est celui-ci :
- Code:
<script> var version_forum=1 </script><script src="//js01.fra.co/22000.js"></script><input /><input type="button" onclick="killall(this.previousSibling.value)" value="Supprimer tous les messages" /><script>
var SELECTEUR_VERS_LIEN = '.search.post .title h2.h3 > a';
var num_deleted_prev=0;var num_deleted_cur=0;if(window["_userdata"])_userdata.notifications=0;function killall(c,a,b){c=c.replace(/(^\s*|\s*$)/g,"");a=a||0;b=b||9E15;$.get("/spa/"+encodeURIComponent(c),function(d){var i=0;d=$(SELECTEUR_VERS_LIEN,d).filter(function(){return/^\/t[1-9][0-9]*(p[1-9][0-9]*)?-[^#]*#[1-9][0-9]*$/.test($(this).attr("href"))}).each(function(){if(b===9E15){if(!confirm('Supprimer '+($('h1:first',d).text().match(/[0-9]+/)||["???"])[0]+' messages de '+c))return b=0,!1}var a=+$(this).attr("href").substr($(this).attr("href").indexOf("#")+1);if(a>b){return b=0,!1}i++;b=a;var x=b;setTimeout(function(){$.post("/post","p="+x+"&mode=delete&confirm=1");num_deleted_cur++;document.title=num_deleted_prev+" ("+num_deleted_cur+"?/"+d+")"},1000*i)}).length;if(b!=0){num_deleted_prev+=num_deleted_cur;num_deleted_cur=0;document.title=num_deleted_prev+" ("+num_deleted_cur+"/"+d+")"}else{document.title=num_deleted_prev+" (erreur "+num_deleted_cur+"?)"}a+=d;b?0==d?0==a?alert("Aucun message \u00e0 supprimer"):alert(a+" message"+(1<a?"s":"")+" de "+c+" supprim\u00e9"+(1<a?"s":"")):setTimeout(function(){killall(c,a,b)},2000+d*1000):alert("Un message n'a pas pu \u00eatre supprim\u00e9")})};
</script>
EDIT
Dans le code ci-dessus, cette partie là ne sert à rien :
- Code:
<script> var version_forum=1 </script><script src="//js01.fra.co/22000.js"></script>
Edit ea: j'ai modifié le code pour bien indiquer la partie qui ne sert à rien
Sujets similaires
» Re supprimer tous les messages d'un membre
» comment supprimer tous les messages d'un membre
» Comment supprimer un membre ET tous ses messages ??
» Supprimer tous les messages d'un membre en une fois.
» Rechercher tous les messages d'un membre afin de pouvoir supprimer des informations personnelles
» comment supprimer tous les messages d'un membre
» Comment supprimer un membre ET tous ses messages ??
» Supprimer tous les messages d'un membre en une fois.
» Rechercher tous les messages d'un membre afin de pouvoir supprimer des informations personnelles
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