Non classé apparaissant sur mobile

J’ai un site où l’option « autoriser les sujets non catégorisés » est désactivée, pourtant la catégorie « non catégorisé » apparaît pour un utilisateur déconnecté (ou connecté en tant qu’administrateur) sur mobile Android. Je viens de procéder à une reconstruction. Les composants du thème n’expliquent pas ce phénomène. Le problème persiste en mode sans échec. Seules des extensions officielles sont installées.

Je ne constate pas ce problème sur ordinateur de bureau.

https://www.druidforum.org/

1 « J'aime »

Avez-vous vidé tous les sujets de la catégorie non classée ?

3 « J'aime »

Ouais ! C’est juste le sujet « À propos », rien d’autre. Je n’arrive pas vraiment à comprendre comment c’est même possible avec les spécifications que je suppose être en place. Et c’est uniquement sur mobile, pas sur ordinateur.

2 « J'aime »

Pouvons-nous reproduire ce problème @tshenry ? Cela semble concerner uniquement le mobile ?

3 « J'aime »

Je ne pense pas que nous attendions que le sujet « À propos » reste dans la catégorie Non classé lorsqu’il est désactivé. L’avertissement dans la description du paramètre du site « autoriser les sujets non classés » indique (mise en évidence ajoutée) :

AVERTISSEMENT : S’il y a quelques sujets non classés, vous devez les reclasser avant de désactiver cette option.

Pouvez-vous essayer de déplacer le sujet « À propos » vers une catégorie active ? Cela a semblé fonctionner sur mon site de test.

2 « J'aime »

Ah. D’accord. Ça a réglé le problème.

C’est assez déroutant, car il est normalement interdit de supprimer un sujet « À propos » (mais je suppose que ce n’est pas vraiment un sujet à propos car ce n’est pas vraiment une catégorie). Mais je l’ai fait, et maintenant « Non classé » n’apparaît plus. Et j’ai dû le faire depuis mon téléphone, car je n’aurais pas pu le trouver autrement.

« Non classé » est très déroutant car ce N’EST PAS une catégorie. Je pense vraiment qu’il devrait être désactivé par défaut.

1 « J'aime »

Non, car je ne crois pas à l’imposition d’une classification artificielle « Animal, Végétal, Minéral » à chaque instance dans le monde dès le départ. Désolé.

Tenez compte de l’avertissement présent là pour une raison :

AVERTISSEMENT : S’il existe quelque sujet non catégorisé, vous devez les recatégoriser avant de désactiver cette option.

Cela étant dit, pouvons-nous normaliser ce comportement @zogstrip afin qu’il soit cohérent entre mobile et bureau ?

Oui. Je comprends cet argument et j’étais autrefois d’accord, mais je pense qu’une catégorie par défaut aurait plus de sens qu’une absence de catégorie. Cependant, j’essaierai de ne plus le suggérer, sauf peut-être un jour si nous nous retrouvons dans le même espace avec :beer:.

@nbianca, peux-tu ajouter à ta liste d’investigation la raison pour laquelle la catégorie « non classé » s’affichait sur mobile alors qu’elle ne s’affichait pas sur bureau ?

4 « J'aime »

Sur ordinateur, nous affichons les catégories et les sujets séparément, tandis que sur mobile, nous les affichons combinés. En gardant cela à l’esprit, c’est cette ligne qui provoque le bug :

c.displayable_topics.blank? est toujours vrai sur ordinateur car nous chargeons les sujets séparément, donc displayable_topics est toujours vide. Sur mobile, il n’est vrai que s’il n’y a vraiment aucun sujet dans cette catégorie.

Nous avons deux solutions ici :

  • afficher « non catégorisé » s’il y a au moins un sujet, quelle que soit la valeur du paramètre « autoriser les sujets non catégorisés »

  • masquer « non catégorisé » même s’il y a un sujet, si « autoriser les sujets non catégorisés » est désactivé

La deuxième solution est plus simple à mettre en œuvre car elle signifie simplement que nous supprimons la deuxième partie de la condition.

6 « J'aime »

Je pense que cacher les sujets non classés est (étrangement) moins déroutant que de ne pas les cacher lorsque l’on active ce paramètre. Je pense que si vous désactivez la catégorie non classée, vous remarquerez immédiatement que tous ces sujets ont disparu, mais si rien ne se produit lorsque vous désactivez cette catégorie, cela semble être un dysfonctionnement.

2 « J'aime »

Choisissons la solution la plus simple car nous sommes proches d’une version ici et je ne veux rien faire de trop risqué.

2 « J'aime »

Mon vote ici est « éliminer autant de code spécial non catégorisé que possible ». Plus nous en avons, plus les choses deviennent confuses.

Je voterais donc pour :

afficher les éléments non catégorisés s’il existe au moins un sujet, quelle que soit la valeur du paramètre « autoriser les sujets non catégorisés »

À condition que l’implémentation supprime le code magique spécial de Discourse et que nous ayons moins de cas particuliers à gérer.

En résumé, choisissez la solution qui supprime le plus de code de Discourse.

1 « J'aime »

J’ai soumis une correction pour le bug dans le premier message :

J’ai opté pour la première solution car c’est celle qui supprime du code de Discourse. L’autre ajoutait en réalité du code pour déterminer s’il existe au moins un sujet dans la catégorie non catégorisée.

J’ai également passé en revue toutes les utilisations de category.uncategorized? et j’ai repéré quelques endroits qui pourraient ne pas être nécessaires si nous rendions la catégorie « Non catégorisée » moins spéciale et plus comme une catégorie ordinaire :

Ce sont des éléments qui n’interfèrent pas avec d’autres fonctionnalités, ce qui rend les modifications moins risquées, mais elles restent néanmoins complexes.

6 « J'aime »