Buongiorno, abbiamo scritto un programma in php per creare nuovi utenti e iscriverli alle cohort.
Le tabelle e le relazioni che abbiamo considerato sono le seguente:
mdl_user elenco utenti serve il campo id
mdl_cohort elenco cohort serve il campo id
mdl_course elenco corsi serve il campo id
mdl_cohort_members associazione tra ID cohort (cohortid) preso da mdl_cohort e user ID (userid) preso da mdl_user. Associa l'utente alle cohort a cui è iscritto
mdl_enrol assegna alle cohort i corsi utilizzando come tipo di enrol=cohort, id del corso courseid=id.mdl_course e customint1=id.mdl_cohort. Si devono prendere tutti gli id che hanno customint1=id.mdl_cohort
mdl_user_enrolments iscrive gli utenti ai corsi. Una riga per ogni iscrizione di un utente al corso
associando allo userid=id.mdl_user l'indice enrolid=id.mdl_enrol. Per iscriverlo a tutti i corsi della cohort si devono prendere tutti gli id che hanno customint1=id.mdl_cohort nella tabella mdl_enrol.
Il problema è che quando gli utenti vengono inseriti dal programma php i corsi non vengono tracciati. Togliendo, dall'interfaccia moodle, l'utente dalla cohort e rimettendolo il tracciamento funziona correttamente.
Grazie
Silvia