Come mostrare le recensioni per l'utente comune

Ciao,

Qualcuno può aiutarmi a capire come posso mostrare le recensioni anche agli utenti comuni!

Sto lavorando a una personalizzazione in un plugin,

Fondamentalmente, voglio mostrare il link di recensione nella barra laterale anche per gli utenti comuni, oltre che per amministratori/moderatori. Quindi, per amministratori/moderatori non ho bisogno di fare nulla poiché viene già visualizzato per questi utenti. Ma, voglio visualizzarlo per l’utente comune e l’utente comune dovrebbe vedere solo gli argomenti che sono nello stato in sospeso.

Ho provato a guardare nel codice e ho trovato un file responsabile della visualizzazione delle recensioni.
review-index.js e review-index.hbs. Nel file di route, questa riga sta recuperando i dati, non so come modificare la query in modo da poter recuperare gli argomenti con stato in sospeso.

Se qualcuno mi guidasse su queste due cose:

  1. come visualizzare il link di recensione nella barra laterale per l’utente comune?
  2. come posso modificare la query in modo da poter recuperare solo gli argomenti che sono nello stato in sospeso.

Gli utenti normali non possono usare quei link, vero?

Penserei che il primo passo sarebbe aggiungere quei link al serializzatore.

1 Mi Piace

Grazie per il messaggio @pfaffman,

Sì, gli utenti normali non possono vedere il link di revisione ma voglio visualizzare il link di revisione per l’utente normale dove voglio elencare gli argomenti in sospeso.

Puoi mostrarmi un esempio di come posso aggiungere il link di revisione nel serializzatore?

Cerca add-to-serializer qui o in GitHub - discourse/all-the-plugins

2 Mi Piace

Ciao, ho provato a guardare in add_to_serializer ma il codice è in Ruby, che non capisco molto. Ho capito però che devo usare qualcosa del tipo:

add_to_serializer(:site, ...) ma non so quale metodo usare nel secondo parametro.

Puoi guidarmi su cosa dovrei fare per visualizzare il link di recensione nella barra laterale?

Se vuoi solo mostrare il link, potresti aggiungerlo alla barra laterale. Tuttavia, dovresti creare un plug-in affinché la pagina funzioni per loro perché agli utenti normali non è consentito visualizzare la pagina di revisione.

1 Mi Piace

Sto lavorando su un plugin ma non so come aggiungere un link nella barra laterale.

Al momento ho trovato una soluzione temporanea in questo blog sui link di revisione, la aggiungo qui in modo che chiunque possa usarla in futuro quando necessario. Anche se non è quello che volevo, almeno sono in grado di aggiungere un link nella sezione community. Voglio visualizzarlo nella sezione community principale appena sopra il pulsante “altro”.

Qualcuno può guidarmi su come assegnare i permessi a un utente comune per visualizzare la pagina di revisione?

Quando faccio clic sul collegamento di revisione nel profilo utente comune, ricevo un errore di accesso negato nella risposta dell’API, forse perché l’utente normale non ha accesso per visualizzare la pagina di revisione.

Questa è la prima cosa che ti ho detto. Gli utenti non possono vedere la pagina di revisione poiché non sono moderatori.
Dovrai sovrascrivere i permessi per farlo. Questa è una modifica più complicata, specialmente se sei scoraggiato da ruby.
Penso che sia un lavoro di 1-3 ore per qualcuno che ha un’idea abbastanza chiara di cosa fare. Penso che sia un lavoro di 10-20 ore per qualcuno che non conosce ruby o lo sviluppo di discourse.

2 Mi Piace