Bug d'une balise personnalisée

2 participants

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

Résolu Bug d'une balise personnalisée

Message par IzumiRK Dim 19 Avr 2020 - 18:16

Détails techniques


Version du forum : phpBB2
Poste occupé : Fondateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Plusieurs utilisateurs
Problème apparu depuis : Avril probablement
Lien du forum : http://indare-division.forumactif.com/

Description du problème

Bonjour,

J'ai créé il y a presque deux ans avec l'aide de membres de ce forum une balise pour cacher du contenu aux membres non-inscrits et à ceux qui ne veulent pas la voir. Elle me sert à masquer tout ce qui pourrait choquer potentiellement les gens (vulgarité, violence, passages explicites, etc) mais aussi à cacher certaines parties de messages aux invités.

Le problème c'est qu'elle a un bug étrange que je n'arrive pas à comprendre. Certains utilisateurs qui font pourtant partie du groupe autorisé à lire ne voient pas ces parties de messages, comme s'ils n'étaient pas inscrits sur le forum ou avaient demandé à être sortis du groupe.

Je ne trouve aucun lien logique entre eux. J'ai pensé aux autres groupes dont ils font partie, mais certains sont dans les mêmes et n'ont pas le problème. Ce n'est pas une question de pseudo non plus (j'ai pensé à un bug lié aux caractères spéciaux ou autres), et ça n'a pas non plus de rapport avec leur ordre d'inscription ou leur numéro de profil. Bref tout ça pour dire que je ne vois pas vraiment d'où ça peut venir, d'autant plus que le code marchait normalement jusque là (ou en tout cas personne ne m'a signalé de problème pour lire les parties de messages réservées aux membres).

Du coup comme je suis toute perdue et que je pense que le problème ne peut venir que de mon code javascript ou d'un potentiel changement dans forumactif qui rendrait le code incompatible d'une manière ou d'une autre (?), je viens vous appeler à l'aide ^^'

Voilà le code javascript :
Code:
$(function(){
  if( _userdata["user_level"] != 0) {
    $(".m18").removeClass("masquer");  // affichage pour admin & modo
    return
  }
 
  var trouver = false;
  if (_userdata["user_id"] < 0) {  // invité
    $(".m18").remove();
  } else {  // membre
    $('body').append('<div class="grp"></div>');
    $('div.grp').load('/g13- form[action^="/g13-"]', function(){
      var nb = $('form[action^="/g13-"] a.gen').length;
      var i = 0;
      $('form[action^="/g13-"] a.gen').each(function(){
        var id = $(this).attr('href').match(/[0-9]{1,}$/);
        if(_userdata["user_id"] == id){
          trouver = true;
        }
        if (nb == ++i) {
          if (trouver) {
            $(".m18").removeClass("masquer");
          } else {
            $(".m18").remove();
          }
          $('.grp').remove();
        }
      });
    });
  }
});

Le groupe associé à la lecture de ces balises est bien le groupe n°13, j'ai vérifié autant dans le panneau d'administration que sur la page des groupes. J'ai demandé aux membres concernés de poster sur ce sujet : http://indare-division.forumactif.com/t2464-test
Je sais pas si ça aidera à trouver une similitude entre eux mais dans le doute je le mets.

Merci d'avance
IzumiRK

IzumiRK
****

Messages : 206
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Bug d'une balise personnalisée

Message par IzumiRK Mar 21 Avr 2020 - 20:52

Je viens faire un petit up ↑
IzumiRK

IzumiRK
****

Messages : 206
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Bug d'une balise personnalisée

Message par Self Sam 25 Avr 2020 - 11:24

Bonjour,

En faisant un tour du côté de votre forum je pense que le lien logique est que vous avez 2 pages à votre groupe, essayez avec ce code :
Code:
$(function(){
   var id = _userdata.user_id, l = _userdata.user_level, g = '/g13-', gp2 = '/g13-?start=50';
   if(l != 0){$('.m18').removeClass('masquer');
   }else if(id == -1){
      $('body').append('<div class="grp" style="display: none;"></div>');
      $.get(g).done(function(data){
         $('.grp').html(data);
         var u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
         if(!u){
            $('.grp').html('');
            $.get(gp2).done(function(data){
               $('.grp').html(data);
               u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
               if(!u){$('.grp').remove(); $('.m18').remove();}
            });
         }else{ $('.m18').removeClass('masquer');}
      });
   }
}, jQuery);
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: Bug d'une balise personnalisée

Message par IzumiRK Lun 27 Avr 2020 - 0:32

Ah, je n'aurais jamais pensé que ça puisse venir du nombre de pages. Merci.

J'ai essayé le code, mais ça rend les balises lisibles à tout le monde, y compris les invités =/
IzumiRK

IzumiRK
****

Messages : 206
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Bug d'une balise personnalisée

Message par Self Lun 27 Avr 2020 - 20:45

Oui il y avait une petite erreur excusez moi, pouvez vous essayer avec ce code ? :
Code:
$(function(){
   var id = _userdata.user_id, l = _userdata.user_level, g = '/g13-', gp2 = '/g13-?start=50';
   if(l != 0){$('.m18').removeClass('masquer');
   }else if(id != -1){
      $('body').append('<div class="grp" style="display: none;"></div>');
      $.get(g).done(function(data){
         $('.grp').html(data);
         var u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
         if(!u){
            $('.grp').html('');
            $.get(gp2).done(function(data){
               $('.grp').html(data);
               u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
               if(!u){$('.grp').remove(); $('.m18').remove();}
            });
         }else{ $('.m18').removeClass('masquer');}
      });
   }
}, jQuery);
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: Bug d'une balise personnalisée

Message par IzumiRK Sam 2 Mai 2020 - 0:21

J'ai essayé aussi ce code et le résultat est le même =/

IzumiRK

IzumiRK
****

Messages : 206
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Bug d'une balise personnalisée

Message par Self Jeu 7 Mai 2020 - 22:11

Bonjour,

Ou j'avais oublié quelques trucs dans le code, désolé... Essayez comme ceci ? :
Code:
$(function(){
     var id = _userdata.user_id, l = _userdata.user_level, g = '/g13-', gp2 = '/g13-?start=50';
     if(l != 0){$('.m18').removeClass('masquer');
     }else if(id != -1){
      $('body').append('<div class="grp" style="display: none;"></div>');
      $.get(g).done(function(data){
         $('.grp').html(data);
         var u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
         if(!u){
            $('.grp').html('');
            $.get(gp2).done(function(data){
               $('.grp').html(data);
               u = $('.grp form[action="'+g+'"]').find('a[href=/u"'+id+'"]');
               if(!u){ $('.m18').remove();
               }else{ $('.m18').removeClass('masquer')}
            });
         }else{ $('.m18').removeClass('masquer');}
        });
     }else{$('.m18').remove();}
     $('.grp').remove();
}, jQuery);
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: Bug d'une balise personnalisée

Message par IzumiRK Jeu 7 Mai 2020 - 23:49

J'ai fait tester aux membres chez qui ça ne marchait pas et c'est bon, le problème semble résolu.

Merci beaucoup ! =D

Simple curiosité qu'est-ce que je dois rajouter si le groupe a un jour une troisième page ?
Code:
gp3 = '/g13-?start=100'
et autre chose ?
IzumiRK

IzumiRK
****

Messages : 206
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK 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