Escluderei però la possibilità di selezionare sia Registro di Metacorso sia Registro di Categoria, quantomeno per rendere le cose più comprensibili agli utenti che devono gestire i corsi.
In pratica non ci sarebbero due opzioni, ma un unico campo "tipo registro" che può avere uno dei tre valori:
- Registro standard: considera solo gli Studenti iscritti al Corso dove si trova il Registro. E' l'unica opzione per i Registri posti nel corso "root".
- Registro di Categoria: considera gli Studenti iscritti a tutti i Corsi della stessa Categoria dei Corso dove si trova il Registro, indipendentemente che questo sia un Metacorso o meno.
- Registro di Metacorso: (selezionabile solo se il Registro si trova in un Metacorso) considera tutti gli Studenti di tutti i Corsi associati al Metacorso dove si trova il Registro.
Per quanto riguarda le ulteriori modifiche, per impegni di lavoro io questa settimana non riuscirò sicuramente a rimettere mano al codice e forse nemmeno la prossima. Vedi tu come procedere.