Personnaliser les couleurs des mentions

Inspiré par ce sujet, et les couleurs personnalisées des rôles Discord, j’ai écrit ce code très simple qui ajoute un data-mention aux mentions de groupes et d’utilisateurs, de cette façon pour pouvoir placer différentes couleurs (Et pas une “couleur générale”) via CSS :smile:

Le code est pour le moment en JQuery mais je le passerai à Vanilla JavaScript à un moment donné :sweat_smile:


Pour l’appliquer il suffit de coller le code dans le head de votre thème ou composant :

<script type="text/discourse-plugin" version="0.9">
$(document).ajaxSuccess(() =>{
  $('a.mention').each(function() {
    $(this).attr('data-mention', $(this).text().replace('@', ''));  
   });
  $('a.mention-group').each(function() {
   $(this).attr('data-mention', $(this).text().replace('@', ''));  
   });
});
</script>

Après cela vous pourrez appliquer le style que vous voulez via CSS :partying_face:

Par exemple :

a.mention[data-mention="Alexander"] {
  color: #4527a0 !important;
}

CapturaMentionUser


Dans ce cas c’était pour un nom d’utilisateur spécifique, cependant cela fonctionne aussi pour les groupes en utilisant a.mention-group[data-mention="nom-du-groupe"]


Je vais voir pour en faire un composant de thème qui pourra être personnalisé depuis ses “paramètres” sans modifier le CSS :thinking:

10 « J'aime »

Je le partage juste. Je pense que cela correspond bien à ce sujet. Surtout ceci

4 « J'aime »

Est-il possible d’introduire des ajustements pour qu’il colore les mentions de tous les membres du groupe défini ?

+1

Je cherche un moyen d’identifier quels utilisateurs ne sont pas dans un groupe (ou sont dans un groupe) dans un sujet qui contient une liste de mentions d’utilisateurs.