Pagina iniziale personalizzata per i gruppi

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