Pagina iniziale personalizzata per i gruppi

[citazione=“Moin, post:82, topic:199623”]
quelle impostazioni non sono più referenziate nel codice ma fanno ancora parte di settings.yml.
[/citazione]

Ah! Scusa. Mi è sfuggito.

Hmm. Sì. Mi chiedo perché ho rimosso il supporto per quelle. Penso che forse ora puoi cambiarle nel core?

Vedrò se è nel core e, in tal caso, rimuoverò quelle impostazioni.

O forse è successo qualcosa nel core che ha interrotto quelle modifiche. Vedrò cosa posso capire. . . .

3 Mi Piace

Non sono ancora sicuro del motivo per cui ho eliminato il supporto per le homepage predefinite e anonime prima. Le ho rimesse a posto.

Ora, se esiste una custom_default_homepage, questa viene utilizzata a meno che non ci sia una corrispondenza di gruppo. Se c’è una anon_page e l’utente è anonimo, viene utilizzata quella.

Non sono riuscito a capire come o quando impostare la pagina mobile (è per utenti anonimi? tutti gli utenti? sovrascrive la pagina predefinita? la mappa dei gruppi?), quindi l’ho eliminata. Se stai usando quella pagina mobile, dimmi cosa pensi che dovrebbe sovrascrivere (penso forse di impostarla come pagina predefinita se sono su mobile, ma se c’è una pagina di gruppo, allora usa quella? Ancora non è chiaro cosa fare per anonimo vs. connesso - immagino che forse ci debbano essere versioni mobili per tutte?).

Ecco il codice:

      let url = null;

      if (settings.custom_default_homepage) {
        url = settings.custom_default_homepage.replace(/^\/+/g, "");
      }

      if (user) {
        if (user.primary_group_name 						&& settings.group_page_map) {
          let groupMap = settings.group_page_map.replace(",", ":").split("|");
          const mapEntry = groupMap.find((value) =>
            RegExp(user.primary_group_name).test(value)
          );
          if (mapEntry) {
            url = mapEntry.split(":")[1].replace(/^\/+/g, "");
          }
        }
      } else if (settings.anon_page) {
        url = settings.anon_page.replace(/^\/+/g, "");
      }

E poi cambia la homepage solo se url ha un valore.

8 Mi Piace

Questo componente del tema è inteso a reindirizzare chiunque nel gruppo alla homepage al momento del login o usando i link? L’ho installato, e il logo reindirizza alla pagina selezionata ma al momento del login l’utente viene comunque reindirizzato alla pagina predefinita /latest. Se questo gestisce quel reindirizzamento al login, devo avere ancora qualcosa impostato in modo errato.

Il mio obiettivo è che tutti gli utenti siano inclusi in un gruppo predefinito e che tutti vengano reindirizzati a una pagina alternativa al momento del login.

Deve essere il loro gruppo Primario affinché questo TC si attivi. Questo è un comportamento previsto, in modo che non ci siano conflitti quando un utente è membro di più di un gruppo con un reindirizzamento.

2 Mi Piace

Il trust level 0 è considerato un gruppo valido? Sarebbe questa l’impostazione corretta per la Group Page Map? trust_level_0:/discourse-ai/ai-bot/conversations. Questa è l’impostazione attuale che ho impostato.

No, i gruppi di livello di fiducia non possono essere usati in quanto non possono essere resi Primari. Potresti aggirare il problema usando il plugin dei gruppi dinamici per creare un gruppo specchio, se questo è vitale per te.

3 Mi Piace

Hai provato a impostare la homepage personalizzata per tutti sulla pagina del tuo bot AI e poi a impostare la homepage per gli utenti anonimi su

1 Mi Piace

Ah. OK. Penso che una versione diversa di questo mi sia arrivata nella notifica via email. Mi piace di più questa risposta. :slight_smile:

2 Mi Piace

Lo immaginavo! Usi ancora le notifiche via email?? È un po’ da dinosauro, Jay!

2 Mi Piace

Con “everyone”, intendevo “global”, non il pseudo gruppo. Modificherò il mio post in modo che non sia fuorviante.

2 Mi Piace

Sono molto vecchio. E inoltre, sono connesso a meta per non più di 10 ore al giorno e non voglio perdermi nulla!

5 Mi Piace

Innanzitutto, grazie a tutti per il vostro intervento e aiuto! È molto apprezzato!

Questo mi lascia perplesso.

Ho installato questo plugin senza problemi e ho impostato trust_level_0 nelle impostazioni con “rendi questo gruppo primario”. Tutti i membri del sito sono stati aggiunti al gruppo. Tutti gli utenti mostrano ora questo come gruppo primario.

Nelle impostazioni del componente Homepage personalizzata per gruppi, ecco cosa ho impostato.

Accedendo alla pagina, gli utenti nel gruppo primario Community-Core atterrano ancora su /latest. Se cambio la Pagina Anonima in qualcosa di diverso da /latest al momento dell’accesso, gli utenti verranno mostrati qualunque pagina sia mostrata in quel campo, quindi questa è la reindirizzamento che si sta verificando.

Sto usando il tema Canvas Screen e sono passato al predefinito per testare con lo stesso risultato.

Ho anche disabilitato tutti i componenti del tema e i plugin per vedere se questo aiutava, senza successo.

Sto pensando che o mi manca qualcosa che potrebbe essere evidente ad altri, o potrebbe esserci un problema con il componente.

Hai guardato nell’ispettore e visto il gruppo primario nel tag body?

Jay, non sono sicuro di quale ispettore sia questo?

Gli utenti vengono visualizzati nel gruppo e hanno lo stesso indicatore sui loro profili come il mio in questa immagine.

Quando fai clic con il pulsante destro del mouse sul tuo sito e selezioni “Ispeziona” puoi vedere ciò che pfaffman sta chiedendo.
Ad esempio, vedo questo nella mia pagina di amministrazione utente (/admin/users/{user_id}/{username})


E poiché questo è il mio account, quando faccio clic con il pulsante destro del mouse e seleziono “Ispeziona” vedo

Lì puoi vedere “testgroup” nel <body>

Questo è ciò che intendevo, ma ora ricordo/vedo che il componente ottiene il gruppo primario dal modello utente, non dal CSS.

Quindi, forse trova un utente nel percorso utente dell’amministratore e aggiungi .json all’URL. Quindi controlla qual è il loro gruppo primario e cerca (nel browser) primary_group: true e verifica che il nome corrisponda esattamente al caso che hai utilizzato nella configurazione del tema.

2 Mi Piace

Ciao a tutti,

Grazie per il chiarimento. Ho seguito queste istruzioni e ho utilizzato l’URL .json per confermare il nome esatto del gruppo.

Il nome del gruppo principale è infatti Community-Core, con le lettere maiuscole e il trattino, che è esattamente ciò che ho inserito nelle impostazioni del componente del tema.

Purtroppo, non funziona ancora. Il reindirizzamento della pagina Anon è ancora attivo. Quindi, il problema deve essere qualcos’altro.

Altri possono confermare che funziona per loro?

Avete altre idee su cosa potrei controllare?

No. Se sta andando alla pagina anonima e non alla “homepage predefinita personalizzata”, allora non sta trovando l’utente quando dovrebbe.

      const user = api.getCurrentUser();

Non so come possa succedere se l’utente è, di fatto, loggato.

Ah, hai provato a ricaricare la pagina?

1 Mi Piace

Grazie Jay, ho provato a ricaricare. Ho provato numerosi aggiustamenti agli URL e simili. Carica decisamente la pagina Anon. Se lo cambio, va a quella pagina e mostra anche /latest nell’URL del browser.

Ho cercato e presumo che non ci sia un altro modo per reindirizzare semplicemente. Era più facile con i siti PHP. Sono ancora un principiante con Discourse.

questo è uno scenario di casi limite molto strano e rientra nel territorio del far fare a Discourse qualcosa per cui non è progettato.