Aggiungi il nome utente OP nelle classi CSS del corpo

Ciao,
Qualcuno può aiutarmi ad aggiungere il nome utente dell’OP come classe CSS <body>?
Devo scrivere alcuni stili e ho bisogno di attributi diversi per alcuni nomi utente.

Alcuni utenti ci hanno chiesto di eliminare l’argomento dal loro profilo, ma non hanno insistito per cancellarlo completamente. Per questo motivo abbiamo creato un utente anonimo per cambiare la proprietà degli argomenti richiesti.

Ora dobbiamo apportare modifiche agli elementi della pagina se l’OP è anonimo, incluso nascondere le citazioni, i menzioni e altro.

<script type="text/discourse-plugin" version="0.8">
    api.onPageChange((url, title) => {
        if (/^\/t\/.*$/.test(url)) {
            const opUser = API.????? <--------------------------- Come ottenere l'oggetto utente OP
            if (opUser && opUser.id === 1234) {
                document.querySelector("body").classList.add("anon");
            }
        } else {
            document.querySelector("body").classList.remove("anon");
        }
    });
</script>

C’è un modo per ottenere le informazioni sui topic tramite l’API JavaScript?

api.getCurrentUser()

La chiamata al metodo api.getCurrentUser() restituisce l’utente connesso. Sto cercando un metodo per ottenere le informazioni sull’argomento (incluso il proprietario dell’argomento).

Oh scusa, ho letto male. :confused:

Prego, penso che sia più complicato che fare una semplice domanda :+1: :sweat_smile:

Per risolvere il mio problema, ho trovato la seguente soluzione leggendo questa pagina:

https://github.com/discourse/discourse/blob/master/app/assets/javascripts/discourse/app/lib/plugin-api.js#L1138-L1140

<script type="text/discourse-plugin" version="0.8">
    const specialTopicUserId = 1000;
    api.decorateTopicTitle((topicModel, node, topicTitleType) => {
        if (topicModel && topicModel.user_id === specialTopicUserId) {
            $("#topic").addClass("anon");
        }
    });
</script>