Comment afficher les avis pour un utilisateur commun

Bonjour,

Quelqu’un peut-il m’aider à comprendre comment afficher les avis aux utilisateurs courants également !

Je travaille sur une personnalisation dans un plugin,

En gros, je veux afficher le lien d’avis dans la barre latérale pour l’utilisateur courant ainsi que pour les administrateurs/modérateurs. Donc, pour les administrateurs/modérateurs, je n’ai rien à faire car il s’affiche pour ces utilisateurs. Mais, je veux l’afficher pour l’utilisateur courant et l’utilisateur courant ne devrait voir que les sujets qui sont en attente.

J’ai essayé de regarder dans le code et j’ai trouvé un fichier responsable de l’affichage des avis.
review-index.js et review-index.hbs. Dans le fichier de route, cette ligne récupère les données, je ne sais pas comment modifier la requête pour pouvoir récupérer les sujets avec le statut en attente.

Si quelqu’un peut me guider sur ces deux points :

  1. comment afficher le lien d’avis dans la barre latérale pour l’utilisateur courant ?
  2. comment puis-je modifier la requête afin de ne récupérer que les sujets en attente.

Les utilisateurs réguliers ne peuvent pas utiliser ces liens, n’est-ce pas ?

Je penserais que la première étape serait d’ajouter ces liens au sérialiseur.

1 « J'aime »

Merci pour le message @pfaffman,

Oui, les utilisateurs réguliers ne peuvent pas voir le lien de révision, mais je veux afficher le lien de révision à l’utilisateur normal là où je veux lister les sujets en attente.

Pouvez-vous me montrer un exemple de la façon dont je peux ajouter le lien de révision dans le sérialiseur ?

Recherchez add-to-serializer ici ou sur GitHub - discourse/all-the-plugins

2 « J'aime »

Salut, j’ai essayé de regarder dans add_to_serializer mais le code est en Ruby, que je ne comprends pas très bien. J’ai cependant compris que je devais utiliser quelque chose comme ceci :

add_to_serializer(:site, ...) mais je ne sais pas quelle méthode utiliser dans le deuxième paramètre.

Pouvez-vous me guider sur ce que je dois faire pour afficher le lien d’avis dans la barre latérale ?

Si vous voulez juste afficher le lien, vous pourriez l’ajouter à la barre latérale. Cependant, vous devriez créer un plugin pour que la page fonctionne pour eux car les utilisateurs ordinaires ne sont pas autorisés à voir la page de révision.

1 « J'aime »

Je travaille sur un plugin mais je ne sais pas comment ajouter un lien dans la barre latérale.

J’ai trouvé une solution de contournement pour le moment dans ce blog concernant les liens de révision, je l’ajoute ici pour que tout le monde puisse l’utiliser à l’avenir si nécessaire. Bien que ce ne soit pas ce que je voulais, je suis au moins capable d’ajouter un lien dans la section communauté. Je veux l’afficher dans la section communauté principale juste au-dessus du bouton “plus”.

Quelqu’un peut-il me guider sur la façon dont je peux attribuer la permission à un utilisateur commun pour afficher la page d’examen ?

Lorsque je clique sur le lien d’examen dans le profil de l’utilisateur commun, je reçois une erreur accès refusé dans la réponse de l’API, peut-être parce que l’utilisateur régulier n’a pas accès pour afficher la page d’examen.

C’est la première chose que je vous ai dite. Les utilisateurs ne peuvent pas voir la page de révision car ils ne sont pas modérateurs.
Vous devrez outrepasser les permissions pour ce faire. C’est un changement plus compliqué, surtout si vous êtes intimidé par Ruby.
Je pense que c’est un travail de 1 à 3 heures pour quelqu’un qui a une assez bonne idée de ce qu’il faut faire. Je pense que c’est un travail de 10 à 20 heures pour quelqu’un qui ne connaît pas Ruby ou le développement de Discourse.

2 « J'aime »