Moodle: Profilfeld-basierende Zuweisung globaler Gruppen verschluckt sich

Hallo zusammen,

wie in diesem Post beschrieben, verwenden wir in unserem BelWü-Moodle das Plugin „Profilfeld-basierende Zuweisung globaler Gruppen“ um automatisch Klassengruppen anzulegen. Das funktioniert(e) so weit auch wunderbar.

Nun ist es bereits zum zweiten Mal vorgekommen, dass Schüler:innen durch dieses Plugin aus Gruppen entfernt werden, obwohl sie noch in der entsprechenden Klasse sind. Ändere ich nur eine Kleinigkeit an einem der Filter und speichere die Filterliste erneut ab, werden alle Klassengruppen wieder richtig befüllt.

Hat dieses Phänomen noch jemand beobachtet und gibt es dafür eine Lösung?

Viele Grüße
Christoph

Hallo zusammen,

leider ist dieses Problem bei unserem BelWü-Moodle im Zusammenspiel mit der LMN7 erneut wiederholt aufgetreten. Betrifft das denn sonst keinen hier? Die Kombination scheint ja nicht so selten zu sein.

Viele Grüße
Christoph

Hallo Christoph,

stimmt denn zum Zeitpunkt des Entfernens das Profilfeld noch oder ist das auch falsch? Besteht die Möglichkeit, dass die SuS den Inhalt des Profilfeldes ändern oder ist es gesperrt? Wird es bei jedem Login aktualisiert oder nur beim Anlegen?

Viele Grüße
Sven

Hallo Sven,

der Inhalt des Profilfeldes sollte stimmen. Das Feld kann nicht von den Schüler:innen bearbeitet werden und wird bei jedem Login aktualisiert.

Immer, wenn ich bei betroffenen Schüler:innen das Profilfeld überprüfe, stimmt der Inhalt. Der Cronjob hat in der Zwischenzeit auch schon etliche Male gewerkelt, die Schüler:innen jedoch nicht wieder der globalen Gruppe hinzugefügt, obwohl der Inhalt des Profilfeldes in Ordnung ist.

Erst nachdem ich einen der Filter leicht abändere, läuft der Cronjob wieder wie gewohnt durch und fügt die fehlenden Schüler:innen den Gruppen hinzu. Das ist ja das Seltsame.

Spätestens nach einigen Tagen fliegen aber wieder Schüler:innen aus den Globalen Gruppen und das Spiel beginnt von vorne.

Viele Grüße
Christoph

Hallo Christoph,

das Plugin lauscht auf Events wie „User wurde verändert“ oder „User login“ und gleicht dann alles ab. Insofern wäre es interessant, ob im Fehlerfall beim Login alles wieder repariert wird.

Der Cronjob wird nur aktiv, wenn die Regeln auf der Einstellungsseite geändert wurden. Das passt zu Deiner Beobachtung. Es gibt leider keinen Cronjob, der eine Art Komplettinventur macht - wäre vielleicht mal ein Feature Request.

Wenn ich das richtig sehe, kann man den Cronjob relativ einfach entsprechend umbauen: Es müsste reichen, in der Datei classes/task/update_cohorts.php ganz unten die if-Anweisung zu deaktivieren. Wäre natürlich nur ein Workaround bis zum nächsten Update.

Beste Grüße

Jörg