From bef73811e4fd750dd6e592d767f743ef9a100a9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Fri, 5 Dec 2014 07:52:02 +0000 Subject: [PATCH] =?UTF-8?q?Seite=20zum=20Anlegen=20von=20mehreren=20Usern?= =?UTF-8?q?=20im=20Moodle=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/tw/vilesci_menu_main.inc.php | 1 + vilesci/moodle/account_masscreate24.php | 84 +++++++++++++++++++++++++ vilesci/moodle/account_verwaltung24.php | 12 +++- 3 files changed, 96 insertions(+), 1 deletion(-) create mode 100644 vilesci/moodle/account_masscreate24.php diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index 5670e6a5e..5e3984fa6 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -86,6 +86,7 @@ $menu=array 'Kursverwaltung24'=>array('name'=>'Kurs entfernen 2.4', 'link'=>'moodle/kurs_verwaltung24.php', 'target'=>'main'), 'Rollenzuteilung24'=>array('name'=>'Rollenzuteilung 2.4', 'link'=>'moodle/rollenzuteilung24.php', 'target'=>'main'), 'UserSync24'=>array('name'=>'User Sync 2.4', 'link'=>'moodle/user_sync24.php', 'target'=>'main'), + 'UserMassCreate'=>array('name'=>'User Massenanlage', 'link'=>'moodle/account_masscreate24.php', 'target'=>'main'), ), diff --git a/vilesci/moodle/account_masscreate24.php b/vilesci/moodle/account_masscreate24.php new file mode 100644 index 000000000..95393b137 --- /dev/null +++ b/vilesci/moodle/account_masscreate24.php @@ -0,0 +1,84 @@ + + */ +/** + * Script um mehrere User auf einmal im Moodle anzulegen + * Die UID der User die angelegt werden sollen, werden in einem Textfeld uebergeben + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/basis_db.class.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/moodle24_user.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); + +$user = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('basis/moodle')) + die('Sie haben keine Berechtigung für diese Seite'); + +if (!$db = new basis_db()) + die('Fehler bei der Datenbankverbindung'); + +$userliste = (isset($_POST['userliste'])?trim($_POST['userliste']):''); +$messages=''; + +if($userliste!='') +{ + $moodle = new moodle24_user(); + + $uids = explode("\n",$userliste); + foreach($uids as $uid) + { + $uid=trim($uid); + // Check ob User nicht bereits angelegt ist + if (!$moodle->loaduser($uid)) + { + // User ist noch nicht in Moodle angelegt => Neuanlage + if (!$moodle->createUser($uid)) + $messages.=$moodle->errormsg.'X'.$uid.'X'; + else + $messages.='
User '.$uid.' angelegt'; + } + else + $messages.='
User '.$uid.' bereits vorhanden'; + } +} +echo ' + + + Moodle 2.4 - Accountverwaltung + + + + +

Moodle - User anlegen

+
+ Bitte geben sie die UIDs der Personen die im Moodle angelegt werden sollen ein (ein User pro Zeile):
+ + +
'; +echo $messages; +echo ' + + '; +?> diff --git a/vilesci/moodle/account_verwaltung24.php b/vilesci/moodle/account_verwaltung24.php index a4cf4cb5b..db116686c 100644 --- a/vilesci/moodle/account_verwaltung24.php +++ b/vilesci/moodle/account_verwaltung24.php @@ -23,10 +23,20 @@ * Bestehende Moodle IDs werden angezeigt, fuer alle anderen wird die Moeglichkeit * der Neuanlage geboten. */ -require_once('../../config/vilesci.config.inc.php'); +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/functions.inc.php'); require_once('../../include/basis_db.class.php'); require_once('../../include/functions.inc.php'); require_once('../../include/moodle24_user.class.php'); +require_once('../../include/benutzerberechtigung.class.php'); + +$user = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('basis/moodle')) + die('Sie haben keine Berechtigung für diese Seite'); if (!$db = new basis_db()) die('Fehler bei der Datenbankverbindung');