Le profil d'un membre ne charge pas

2 participants

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

Résolu Le profil d'un membre ne charge pas

Message par Cicérone Dim 9 Jan 2022 - 16:09

Bonjour à tous et à toutes et bonne année ! Like a Star @ heaven

Je viens demander votre aide ici car depuis l'arrivé de notre 42ème membre (il fallait bien que ça tombe sur ce nombre et pas un autre tongue ) impossible d'accéder à son profil, celui-ci ne charge pas et personne ne peut le voir. La page charge et charge encore sans aboutir. Le membre peut accéder à l'édition de son profil mais impossible pour lui aussi de le voir. De même nous avons accès à la modification de son profil via le panneau d'administration et en comparant avec tous les autres membres, rien ne change ou ne sort du lot. Nous lui avons également demandé de supprimer sa signature puis son avatar mais rien ne change encore.

Auriez-vous une idée d'où le soucis pourrait venir ? Il n'y a qu'à ce membre que le soucis arrive... Sad
Merci d'avance à tous !
Cicérone

Cicérone
Nouveau membre

Messages : 13
Inscrit(e) le : 01/11/2021

https://lentrepasse.forumactif.com/
Cicérone a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Le profil d'un membre ne charge pas

Message par Toryudo Dim 9 Jan 2022 - 16:50

Bonjour !
Vous parlez de ce membre sur cette page https://lentrepasse.forumactif.com/u42 ?
En tant qu'invité, la page semble bien se charger en tout cas, est-ce que ça arrive seulement quand on est connecté ? Ou sur un navigateur particulier ?
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1566
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Le profil d'un membre ne charge pas

Message par Cicérone Dim 9 Jan 2022 - 17:31

Oui c'est bien ce membre ! Je me sens bête, je n'ai jamais testé en étant déconnectée et effectivement, ainsi ça fonctionne mais pas en étant connectée. Je suis sous chrome, et j'ai testé sous Edge, les deux ne fonctionnent pas.
Cicérone

Cicérone
Nouveau membre

Messages : 13
Inscrit(e) le : 01/11/2021

https://lentrepasse.forumactif.com/
Cicérone a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Le profil d'un membre ne charge pas

Message par Toryudo Dim 9 Jan 2022 - 18:53

J'ai créé un compte sur le forum pour constater directement le problème, c'est beaucoup plus simple et rapide comme ça.
Le problème vient de ce script :
Code:
if (/^\/u\d+$/.test(document.location.pathname)) {
    var idPage = "1";
    $.get("/h" + idPage + "-", function(data) {
        var $badges = $(data).filter("#badges-profil");
        $(function() {
            var $profilBadges = $("span:contains('Badges obtenus')").closest("tr");
            if ($profilBadges.length > 0) {
                var badgesUser = $profilBadges.find(".field_uneditable").text().split(";");
                if (badgesUser.length > 0) {
                    for (var i = 0, l = badgesUser.length; i < l; i++) {
                        if (badgesUser[i].length > 0) {
                            try {
                                $badges.find("." + badgesUser[i].trim()).addClass("obtenu")
                            } catch (e) {
                                console.log("Système de badge erreur => " + e)
                            }
                        }
                    }
                }
            }
            $(".js-badges-profil").html($badges)
        })
    })
}

Il y a quelque chose qui ne va pas dans la sélection, le code $profilBadges.find(".field_uneditable").text() sélectionne plus d'éléments qu'il ne le faudrait. Pour l'exemple du user 42, nous obtenons cette chaine de caractères :
25/12/2021222150Not Your eXNow you're just somebody I used to knowKarkat Vantas de HomestuckLa plaineChanteureuse / AventurièreAppareil photo vintage + un walkman [Cassettes: Bruits de baleines / Vulgaires machins / l'OST de Final fantasy VI] + un lampion portatif + un kit pour lampion + une pierre à feuYES PLEASE; bienvenue ; recensement ; picotis ; fiche_liens ; habitation ;

On découpe la chaine à chaque caractère ; rencontré, et badgesUser[0] devient donc égal à cette première partie de chaine qui n'est pas un badge. Ça, c'est commun à tous les membres, badgesUser[0] est toujours une chaine de caractère résultant d'une mauvaise sélection. Si c'est ce membre qui fait planter ce script plutôt qu'un autre, ça semble être dû aux caractères spéciaux utilisés dans sa description, parmi [ : / ' ]... je ne saurais pas exactement dire lequel, ou si c'est la combinaison de plusieurs, mais en tout cas, c'est à cause de ça.

Ce qu'on veut sélectionner, nous, c'est juste le .field_uneditable qui contient la liste de badges séparés par des ;. Après vérification dans le code HTML de votre page, il se trouve dans #field_id2. On va donc juste modifier
Code:
var badgesUser = $profilBadges.find(".field_uneditable").text().split(";");
en
Code:
var badgesUser = $profilBadges.find("#field_id2 .field_uneditable").text().split(";");

Ce qui nous permettra d'être plus précis dans la sélection, de ne prendre que la liste des badges et de corriger l'erreur par la même occasion !
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1566
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Le profil d'un membre ne charge pas

Message par Cicérone Mar 11 Jan 2022 - 19:44

Oh mille mercis, je n'avais pas eu le courage de passer en revue les détails de tout les codes utilisés dans le profil et je n'avais pas su comment cibler le problème. J'ai juste à l'instant remplacé ce bout de code et ça marche parfaitement !
Les explications étaient limpides et super, encore merci ! Smile

Pour informations complémentaires, j'ai pioché ce code sur un code existant en libre service de chez Never Utopia !

C'est tout bon et le code fonctionne, le sujet est résolu Mr. Green
Cicérone

Cicérone
Nouveau membre

Messages : 13
Inscrit(e) le : 01/11/2021

https://lentrepasse.forumactif.com/
Cicérone 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