diff --git a/include/moodle19_course.class.php b/include/moodle19_course.class.php index 3d147dab9..d486407f8 100644 --- a/include/moodle19_course.class.php +++ b/include/moodle19_course.class.php @@ -23,6 +23,7 @@ * Moodle 1.9 Kurs Verwaltung */ require_once(dirname(__FILE__).'/basis_db.class.php'); +require_once(dirname(__FILE__).'/moodle.class.php'); if (!function_exists('xu_load_extension')) include_once(dirname(__FILE__)."/xmlrpcutils/utils.php"); @@ -2164,13 +2165,12 @@ class moodle19_course extends basis_db $this->errormsg ="Fehler xmlrpc call - Methode fehlt"; return false; } - - // Aktuellen Moodle Server ermitteln. - if (defined('MOODLE_PATH')) // Eintrag MOODLE_PATH in Vilesci config.inc.php. Hostname herausfiltern - { - $host = parse_url(MOODLE_PATH, PHP_URL_HOST); - $path = parse_url(MOODLE_PATH, PHP_URL_PATH); - } + + $moodle = new moodle(); + $moodlepfad = $moodle->getPfad('1.9'); + + $host = parse_url($moodlepfad, PHP_URL_HOST); + $path = parse_url($moodlepfad, PHP_URL_PATH); $port = ''; $uri = $path."xmlrpc/xmlrpc.php"; diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index 793adc316..60060c7ce 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -72,7 +72,8 @@ $menu=array 'name'=>'Moodle', 'permissions'=>array('admin','lv-plan','support'), 'Kursverwaltung'=>array('name'=>'Kurs entfernen', 'link'=>'moodle/kurs_verwaltung.php', 'target'=>'main'), 'Account'=>array('name'=>'Account', 'link'=>'moodle/account_verwaltung.php', 'target'=>'main'), - 'Zuteilung Verwalten'=>array('name'=>'Zuteilung Verwalten', 'link'=>'moodle/zuteilung_verwaltung.php', 'target'=>'main') + 'Zuteilung Verwalten'=>array('name'=>'Zuteilung Verwalten', 'link'=>'moodle/zuteilung_verwaltung.php', 'target'=>'main'), + 'Account24'=>array('name'=>'Account Moodle 2.4', 'link'=>'moodle/account_verwaltung24.php', 'target'=>'main'), ), @@ -273,4 +274,4 @@ $statistik = new statistik(); $statistik = $statistik->getMenueArray(1); $menu['Auswertung']=array_merge($menu['Auswertung'],$statistik); //var_dump($menu['Auswertung']); -?> \ No newline at end of file +?> diff --git a/vilesci/moodle/account_verwaltung24.php b/vilesci/moodle/account_verwaltung24.php new file mode 100644 index 000000000..a4cf4cb5b --- /dev/null +++ b/vilesci/moodle/account_verwaltung24.php @@ -0,0 +1,152 @@ + + */ +/** + * Dieses Programm listet nach einem Suchbegriff bestehender Benutzer auf. + * Fuer jede UserID wird geprueft ob dieser bereits einen Moodle ID besitzt. + * Bestehende Moodle IDs werden angezeigt, fuer alle anderen wird die Moeglichkeit + * der Neuanlage geboten. + */ +require_once('../../config/vilesci.config.inc.php'); +require_once('../../include/basis_db.class.php'); +require_once('../../include/functions.inc.php'); +require_once('../../include/moodle24_user.class.php'); + +if (!$db = new basis_db()) + die('Fehler bei der Datenbankverbindung'); + +$uid = (isset($_REQUEST['uid'])?trim($_REQUEST['uid']):''); +$mdl_user_id = (isset($_REQUEST['mdl_user_id'])?trim($_REQUEST['mdl_user_id']):''); +$searchstr = (isset($_REQUEST['searchstr'])?trim($_REQUEST['searchstr']):''); +$content=''; +$moodle = new moodle24_user(); + +if($uid!='') +{ + // Check ob User nicht bereits angelegt ist + if (!$moodle->loaduser($uid)) + { + // User ist noch nicht in Moodle angelegt => Neuanlage + if (!$moodle->createUser($uid)) + $content.=$moodle->errormsg; + } +} + +$content.=' +
+ Bitte Suchbegriff eingeben: + + +
+
'; + +if($searchstr!='' && $searchstr!='?' && $searchstr!='*') +{ + // SQL Select-String + $qry = "SELECT + distinct tbl_person.person_id,tbl_person.nachname,tbl_person.vorname, + tbl_person.aktiv,tbl_benutzer.uid + FROM + public.tbl_person + JOIN public.tbl_benutzer USING(person_id) + WHERE + tbl_person.nachname ~* ".$db->db_add_param($searchstr)." OR + tbl_person.vorname ~* ".$db->db_add_param($searchstr)." OR + tbl_benutzer.alias ~* ".$db->db_add_param($searchstr)." OR + tbl_person.nachname || ' ' || tbl_person.vorname = ".$db->db_add_param($searchstr)." OR + tbl_person.vorname || ' ' || tbl_person.nachname = ".$db->db_add_param($searchstr)." OR + tbl_benutzer.uid ~* ".$db->db_add_param($searchstr)." + ORDER BY nachname, vorname;"; + + if($result = $db->db_query($qry)) + { + // Header Top mit Anzahl der gelisteten Kurse + $content.= $db->db_num_rows($result).' Person(en) gefunden'; + + $content.=''; + + // Header Teil Information der Funktion + $content.=''; + $content.=''; + $content.=''; + + // Headerinformation der Tabellenfelder + $content.=''; + $content.=''; + $content.=''; + $content.=''; + $content.=''; + $content.=''; + $content.=''; + + // Alle gefundenen User in einer Schleife anzeigen. + $iTmpCounter=0; + while($row = $db->db_fetch_object($result)) + { + // ZeilenCSS (gerade/ungerade) zur besseren Ansicht + $iTmpCounter++; + if ($iTmpCounter%2) + $showCSS=' style="text-align: left;border: 1px outset #F7F7F7;padding: 1px 5px 1px 5px; background:#FEFFEC" '; + else + $showCSS=' style="text-align: left;border: 1px outset #F7F7F7;padding: 1px 5px 1px 5px; background:#FCFCFC" '; + + // Listenzeile + $content.= ''; + $content.= ''; + $content.= ''; + $content.= ''; + $content.= ''; + + if (!$moodle->loaduser($row->uid)) + $moodle->mdl_user_id=''; + + // Es gibt noch keinen Moodle User - Anlage ermoeglichen + if (!isset($moodle->mdl_user_id) || empty($moodle->mdl_user_id)) + { + $content.= ''; + } + else // Anzeige bestehende Moodle User ID + { + $content.= ''; + } + $content.= ''; + } + $content.= '
Benutzer
 Nachname  Vorname  UserID  Status  MoodleAccount 
'.$db->convert_html_chars($row->nachname).''.$db->convert_html_chars($row->vorname).''.$db->convert_html_chars($row->uid).''.(!empty($row->aktiv) && mb_strtoupper($row->aktiv)!='F' && mb_strtoupper($row->aktiv)!='FALSE' ?'aktiv':'deaktiviert').''; + $content.='
'; + $content.= ''; + $content.= ''; + $content.= 'table_row_insert.png'; + $content.= 'anlegen'; + $content.='
'; + $content.= '
'.((isset($moodle->mdl_user_id) && !empty($moodle->mdl_user_id))?$moodle->mdl_user_id:'').'
'; + } +} +echo ' + + + Moodle 2.4 - Accountverwaltung + + + + +

Moodle 2.4 - Accountverwaltung

+'.$content.' + + '; +?>