Nos, első lépésben ellenőrízni kell, hogy a hitelesítés mi alapján történik. Ehhez adminisztrátorként be kell menni az Adminisztrációs felületre és ott a Felhasználó szakasz alatt a Hitelesítést kell választani. A helyes beállítás a "Csak kézzel létrehozott felhasználói azonosítól". Ha nem ez lenne beállítva, a művelet (feltöltés) erejéig át kell állítani.
A további eljárásnak a lényege az lesz, hogy úgy teszünk, mintha új felhasználókat rendelnénk (töltenénk fel) az oldalhoz, akár így van ez, akár nem.
Ha a csoportba való feltöltés során valóban feltöltünk új felhasználókat is, a művelet előtt be kell állítani, hogy mely mezőket szeretnénk zárolni a felhasználói rekorban. Például ne változtathassa meg a nevét, mert általában név szerint keresünk (Én egyszer rég kerestem X Y-ont, de sehogysem akaródzott megtalálni, majd pár nap múlva megláttam a képét, s kiderült, hogy Tapsi Hapsi-nak nevezte át magát. ) Aztán célszerű – a későbbiekben a beiratkozások miatt kitölteni az Azonosítószám nevű mezőt (ez szintén egyedi azonosító) – zárolni, nehogy megváltoztassa, mert az sok bajt okozhat.
Ha belőttem a zárolásokat (Figyelem: ezt hitelesítési tipusonként külön-külön kell elfátszani!), jöhet a CSV összeállítása. A következő mezők kellenek:
- username;
- password;
- lasztname;
- firstname;
- email;
- course1, course2, .. course5;
- group1, group2 .. group5.
Ahol a course1-től 5-ig alatt azoknak a kurzusoknak a rövid nevét adjuk meg, amikre be szeretnénk iratni a tanulókat. A group1-től 5-ig alatt azoknak a csoportoknak a neve szerepeljen – !kurzusonként –, amelyekbe be akarom sorolni a tanulókat. Azért csak öt, mert csak öt ismétlődésre van megírva a kód. Jobban mondva a tömb ami tárolja az infókat csak öt kurzust képes kezelni.
No, de azért szeretjük a szabad forráskódot mert máris módosíthatjuk.
A bátrak a következő állományt módosítsák:
http://host/moodle/admin/uploaduser.php
Nekem már csak 1,6-os forrás van kéznél, abban a 109. sorban kezdődik a móka (a kuezusok felsorolása.) Nos, kinek mennyi kurzusra van szüksége, annyival toldja meg a sort.
Fihyelem!: A kurzusból és csoprtból ugyanannyinak kell lenni. (már nem emlékszem, hogy 1.5.x-ben létezik-e a type mező, de ha igen, azt is szinkronba kell hozni)
Íme a forrás:
// make arrays of valid fields for error checking
$required = array("username" => 1,
"password" => !$createpassword,
"firstname" => 1,
"lastname" => 1,
"email" => 1);
$optionalDefaults = array("institution" => 1,
"department" => 1,
"city" => 1,
"country" => 1,
"lang" => 1,
"auth" => 1,
"timezone" => 1);
$optional = array("idnumber" => 1,
"icq" => 1,
"phone1" => 1,
"phone2" => 1,
"address" => 1,
"url" => 1,
"description" => 1,
"mailformat" => 1,
"maildisplay" => 1,
"htmleditor" => 1,
"autosubscribe" => 1,
"idnumber" => 1,
"icq" => 1,
"course1" => 1,
"course2" => 1,
"course3" => 1,
"course4" => 1,
"course5" => 1,
"group1" => 1,
"group2" => 1,
"group3" => 1,
"group4" => 1,
"group5" => 1,
"type1" => 1,
"type2" => 1,
"type3" => 1,
"type4" => 1,
"type5" => 1,
"password" => $createpassword,
"oldusername" => $allowrenames);
Aztán ugyanezt el kell játszani a beirató eljárás megfelelő soraival is (kb. a 196. sor tájékán)
Ismét egy forrás:
$user->confirmed = 1;
$user->timemodified = time();
$linenum++;
$username = $user->username;
$addcourse[0] = $user->course1;
$addcourse[1] = $user->course2;
$addcourse[2] = $user->course3;
$addcourse[3] = $user->course4;
$addcourse[4] = $user->course5;
$addgroup[0] = $user->group1;
$addgroup[1] = $user->group2;
$addgroup[2] = $user->group3;
$addgroup[3] = $user->group4;
$addgroup[4] = $user->group5;
$addtype[0] = $user->type1;
$addtype[1] = $user->type2;
$addtype[2] = $user->type3;
$addtype[3] = $user->type4;
$addtype[4] = $user->type5;
No és a következő jellegű sorokban is javítani kelll az 5-öt...
for ($i=0; $i<5; $i++) {
Vissza az eredeti témához! Kész a feltöltendő CSV állomány. Létrehoztam minden kurzust, benne minden csoportot. Jöjjön a feltöltés!
A nyitó oldalon az Adminisztrációs blokkban válasszuk a Felehasználó menüpontot, majd a Felhasználók feltöltése menüpontot. Ott az űrlap segítségével feltöltjül a CSV állományt.
Ha a feltöltendő felhasználók már benn vannak a rendszerben, mindenkire kapunk egy hibaüzenetet, hogy már létezik, nem hajlandó létrehozmi, majd kurzusonként egy nyugtázást – hogy az xy kurzusra beíratta. Ha sok embert töltünk így fel érdemes a nyugtázó oldalról egy másolatot (mentést) Ikészíteni, hogy utólag is át lehessen nézni a listát, nem tartalmaz-e olyan hibaüzenetet, amely elkerülte a figyelmünket.
Azt hiszem kész....