mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-15 19:19:28 +00:00
771 lines
37 KiB
PHP
771 lines
37 KiB
PHP
<?php
|
|
//@version $Id: kurs_verwaltung.php 2799 2009-07-16 11:56:39Z simane $
|
|
/* Copyright (C) 2008 Technikum-Wien
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as
|
|
* published by the Free Software Foundation; either version 2 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
|
*
|
|
* Authors: Christian Paminger < christian.paminger@technikum-wien.at >
|
|
* Andreas Oesterreicher < andreas.oesterreicher@technikum-wien.at >
|
|
* Rudolf Hangl < rudolf.hangl@technikum-wien.at >
|
|
* Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at >
|
|
*/
|
|
/*
|
|
* Dieses Programm listet nach Selektinskreterien alle Moodelkurse zu einem Studiengang oder Lehreinheit auf.
|
|
* Jede MoodleID kann invididuell zu einem Studiengang oder Lehreinheit zugeteilt werden.
|
|
*/
|
|
header('Content-Type: text/html;charset=UTF-8');
|
|
// Ohne einer Moodlekurs ID hier beenden
|
|
$mdl_course_id=(isset($_REQUEST['mdl_course_id'])?trim($_REQUEST['mdl_course_id']):'');
|
|
$entfernen=(isset($_REQUEST['entfernen'])?trim($_REQUEST['entfernen']):'');
|
|
if (empty($mdl_course_id) && !$entfernen)
|
|
exit();
|
|
|
|
// ***********************************************************************************************
|
|
// Include Dateien
|
|
// ***********************************************************************************************
|
|
require_once('../../config/vilesci.config.inc.php');
|
|
include_once('../../include/basis_db.class.php');
|
|
if (!$db = new basis_db())
|
|
die('Fehler beim Oeffnen der Datenbankverbindung');
|
|
|
|
// ---------------- Standart Include Dateien einbinden
|
|
require_once('../../include/functions.inc.php');
|
|
require_once('../../include/globals.inc.php');
|
|
require_once('../../include/studiengang.class.php');
|
|
require_once('../../include/studiensemester.class.php');
|
|
require_once('../../include/lehrveranstaltung.class.php');
|
|
require_once('../../include/lehreinheit.class.php');
|
|
require_once('../../include/lehreinheitgruppe.class.php');
|
|
require_once('../../include/lehreinheitmitarbeiter.class.php');
|
|
include_once('../../include/moodle_course.class.php');
|
|
|
|
// ***********************************************************************************************
|
|
// Datenbankverbindungen zu Moodle und Vilesci und Classen
|
|
// ***********************************************************************************************
|
|
if (!$objMoodle = new moodle_course())
|
|
die('Fehler beim Oeffnen der Moodleverbindung');
|
|
|
|
$entfernen=(isset($_REQUEST['entfernen'])?trim($_REQUEST['entfernen']):'');
|
|
if (!empty($entfernen))
|
|
{
|
|
$lehrveranstaltung_id=(isset($_REQUEST['lehrveranstaltung_id']) && !empty($_REQUEST['lehrveranstaltung_id'])?trim($_REQUEST['lehrveranstaltung_id']):null);
|
|
$lehreinheit_id=(isset($_REQUEST['lehreinheit_id']) && !empty($_REQUEST['lehreinheit_id'])?$_REQUEST['lehreinheit_id']:null);
|
|
if(!$objMoodle->delete_vilesci($mdl_course_id,$lehrveranstaltung_id,$lehreinheit_id))
|
|
{
|
|
exit('Eintrag wurde in Lehre nicht gelöscht! '.$objMoodle->errormsg);
|
|
}
|
|
exit('Eintrag in Lehre gelöscht! '.$objMoodle->errormsg);
|
|
}
|
|
|
|
|
|
if (!$le_obj = new lehreinheit())
|
|
die('Fehler beim Oeffnen der Lehreinheit');
|
|
|
|
if (!$legrp_obj = new lehreinheitgruppe())
|
|
die('Fehler beim Oeffnen der Lehreinheitgruppe');
|
|
|
|
if (!$lv_obj = new lehrveranstaltung())
|
|
die('Fehler beim Oeffnen der Lehrveranstaltung');
|
|
|
|
if (!$stg_obj = new studiengang())
|
|
die('Fehler beim Oeffnen der Studiengänge');
|
|
|
|
if (!$stsem = new studiensemester())
|
|
die('Fehler beim Oeffnen der Studiensemester');
|
|
|
|
|
|
// @$studiensemester_kurzbz Studiensemester xxJJJJ - xx fuer SS Sommer oder WW Winter
|
|
if (!$stsem_aktuell = $stsem->getakt())
|
|
$stsem_aktuell = $stsem->getaktorNext();
|
|
|
|
|
|
|
|
// ***********************************************************************************************
|
|
|
|
// Variable Initialisieren
|
|
|
|
// ***********************************************************************************************
|
|
#var_dump($_REQUEST);
|
|
|
|
// AusgabeStream
|
|
|
|
$content='';
|
|
$errormsg=array();
|
|
|
|
// ***********************************************************************************************
|
|
// POST oder GET Parameter einlesen
|
|
// ***********************************************************************************************
|
|
// @$mdl_course_id Moodle - ID suche
|
|
$mdl_course_id=(isset($_REQUEST['mdl_course_id'])?trim($_REQUEST['mdl_course_id']):'');
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Pruefen vor dem Datenlesen ob die Verarbeitung bereits erfolgen muss
|
|
$bNeuAufbau=(isset($_REQUEST['aendern'])?trim($_REQUEST['aendern']):false);
|
|
if ($mdl_course_id && $bNeuAufbau)
|
|
{
|
|
$bWartung=(isset($_REQUEST['aenderung'])?trim($_REQUEST['aenderung']):false);
|
|
$bKopieren=(isset($_REQUEST['kopieren'])?trim($_REQUEST['kopieren']):false);
|
|
if ($bWartung || $bKopieren)
|
|
moodlekurswartung($mdl_course_id,$errormsg );
|
|
}
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Check Moodle
|
|
$mdl_course_stat='';
|
|
if(!$objMoodle->getAllMoodleVariant($mdl_course_id,'','','','','',false,false,false))
|
|
{
|
|
die('Moodle-Kurs '.$objMoodle->mdl_course_id.' wurde in Lehre nicht gefunden! '.$objMoodle->errormsg);
|
|
}
|
|
// es wurden Vilescidaten gefunden
|
|
if(isset($objMoodle->result) && isset($objMoodle->result[0]))
|
|
{
|
|
$new=false;
|
|
$mdl_course_stat='*';
|
|
$moodle_id=$objMoodle->result[0]->moodle_id;
|
|
$studiengang_kz=$objMoodle->result[0]->lehrveranstaltung_studiengang_kz;
|
|
$studiensemester_kurzbz=$objMoodle->result[0]->studiensemester_kurzbz;
|
|
$semester=$objMoodle->result[0]->lehrveranstaltung_semester;
|
|
#moodle_lehrveranstaltung_id
|
|
|
|
$lehrveranstaltung_id=$objMoodle->result[0]->lehrveranstaltung_id;
|
|
$lehreinheit_id=$objMoodle->result[0]->lehreinheit_id;
|
|
$gruppen=$objMoodle->result[0]->gruppen;
|
|
$bezeichnung=$objMoodle->result[0]->mdl_fullname;
|
|
$kurzbezeichnung=$objMoodle->result[0]->mdl_shortname;
|
|
$lehrveranstaltung_id_moodle=$objMoodle->result[0]->moodle_lehrveranstaltung_id;
|
|
}
|
|
// es wurden Moodledaten gefunden
|
|
else if ($objMoodle->load($mdl_course_id))
|
|
{
|
|
$objMoodle->result=array();
|
|
$objMoodle->result[0]= new stdClass();
|
|
$objMoodle->result[0]->fullname=$objMoodle->mdl_fullname;
|
|
$objMoodle->result[0]->shortname=$objMoodle->mdl_shortname;
|
|
|
|
$new=true;
|
|
$mdl_course_stat='+';
|
|
$errormsg[]='Neuzuteilung zu Moodlekurs '.$objMoodle->mdl_course_id.' möglich';
|
|
$moodle_id='?';
|
|
$studiengang_kz=227;
|
|
$studiensemester_kurzbz=$stsem_aktuell;
|
|
$semester=1;
|
|
$lehrveranstaltung_id='';
|
|
$lehreinheit_id='';
|
|
$gruppen=false;
|
|
$bezeichnung=$objMoodle->result[0]->fullname;
|
|
$kurzbezeichnung=$objMoodle->result[0]->shortname;
|
|
$lehrveranstaltung_id_moodle=false;
|
|
}
|
|
else
|
|
{
|
|
die('Moodle-Kurs '.$objMoodle->mdl_course_id.' wurde nicht gefunden! '.$objMoodle->errormsg);
|
|
}
|
|
|
|
|
|
// ***********************************************************************************************
|
|
// Restliche POST oder GET Parameter der Dateneingabe einlesen
|
|
// ***********************************************************************************************
|
|
// @bDebug Anzeige der xml-rfc Daten moegliche Stufen sind 0,1,2,3
|
|
$bDebug= (isset($_REQUEST['debug'])?$_REQUEST['debug']:0);
|
|
|
|
$aendern_studiensemester_kurzbz=(isset($_REQUEST['aendern_studiensemester_kurzbz'])?trim($_REQUEST['aendern_studiensemester_kurzbz']):$studiensemester_kurzbz);
|
|
$aendern_studiengang_kz=(isset($_REQUEST['aendern_studiengang_kz'])?trim($_REQUEST['aendern_studiengang_kz']):$studiengang_kz);
|
|
$aendern_semester=(isset($_REQUEST['aendern_semester'])?trim($_REQUEST['aendern_semester']):$semester);
|
|
|
|
$sel_lehrveranstaltung_id=(isset($_REQUEST['sel_lehrveranstaltung_id'])?trim($_REQUEST['sel_lehrveranstaltung_id']):$lehrveranstaltung_id);
|
|
$aendern_lehrveranstaltung_id=(isset($_REQUEST['aendern_lehrveranstaltung_id']) && !empty($_REQUEST['aendern_lehrveranstaltung_id'])?trim($_REQUEST['aendern_lehrveranstaltung_id']):$sel_lehrveranstaltung_id);
|
|
|
|
$aendern_lehreinheit_id=(isset($_REQUEST['aendern_lehreinheit_id'])?$_REQUEST['aendern_lehreinheit_id']:(isset($_REQUEST['aendern_studiensemester_kurzbz'])?'':$lehreinheit_id));
|
|
|
|
|
|
$aendern_bezeichnung=(isset($_REQUEST['aendern_bezeichnung'])?trim($_REQUEST['aendern_bezeichnung']):$bezeichnung);
|
|
$aendern_kurzbezeichnung=(isset($_REQUEST['aendern_kurzbezeichnung'])?trim($_REQUEST['aendern_kurzbezeichnung']):$kurzbezeichnung);
|
|
$aendern_gruppen=(isset($_REQUEST['aendern_gruppen']) && !empty($_REQUEST['aendern_gruppen'])?true:(isset($_REQUEST['aendern_gruppen'])?1:$gruppen));
|
|
|
|
// ***********************************************************************************************
|
|
// HTML Auswahlfelder (Teil 1)
|
|
// ***********************************************************************************************
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Fuer bestehende Vilescidaten wird eine Detailinformation angezeigt
|
|
if (!$new )
|
|
{
|
|
// Header
|
|
$content.='<h2>Moodle Kurs '.$objMoodle->result[0]->mdl_course_id.($aendern_lehrveranstaltung_id?' zur Lehrveranstaltung ':' zu Lehreinheiten ').' - '.$objMoodle->result[0]->mdl_fullname .' - '.$objMoodle->result[0]->mdl_shortname.'</h2>';
|
|
}
|
|
else
|
|
{
|
|
$content.='<h2>Moodle Kurs Neuzuteilung '.$mdl_course_id.' - '.$objMoodle->result[0]->fullname.' - '.$objMoodle->result[0]->shortname.'</h2>';
|
|
}
|
|
// ***********************************************************************************************
|
|
// HTML Listenanzeige (Teil 2) Aenderungsdaten
|
|
// ***********************************************************************************************
|
|
// FormName erzeugen
|
|
$cFormName='workMoodleCurse'.$mdl_course_id;
|
|
$content.='
|
|
<form accept-charset="UTF-8" name="'.$cFormName.'" method="POST" target="_self" action="'.$_SERVER['PHP_SELF'].'" >
|
|
<table class="liste">
|
|
<tr><td> </td></tr>
|
|
<tr>
|
|
<td> Studiensemester </td>
|
|
<td> Studiengang </td>
|
|
<td> Semster </td>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>';
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Studiensemester public.tbl_studiensemester_kurzbz
|
|
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.aendern_bezeichnung.value=\'\';document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked=false;uncheckLE();generateLEText();document.'.$cFormName.'.submit();" name="aendern_studiensemester_kurzbz">';
|
|
if ($stsem->getAll())
|
|
{
|
|
foreach ($stsem->studiensemester as $row)
|
|
{
|
|
$content.='<option value="'.$row->studiensemester_kurzbz.'" '.(("$aendern_studiensemester_kurzbz"=="$row->studiensemester_kurzbz")?' selected="selected" ':'').'> '.$row->studiensemester_kurzbz.' </option>';
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$errormsg[]='Studiensemester wurden nicht gefunden! '.$stsem->errormsg;
|
|
}
|
|
$content.='</select></td>';
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Studiengang public.tbl_studiengang_kz
|
|
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.aendern_bezeichnung.value=\'\';document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked=false;uncheckLE();generateLEText();document.'.$cFormName.'.submit();" name="aendern_studiengang_kz">';
|
|
$aendern_studiengang_name='';
|
|
if ($stg_obj->getAll('typ, kurzbz',true))
|
|
{
|
|
$max_semester=0;
|
|
$arrStudiengang='';
|
|
foreach ($stg_obj->result as $row)
|
|
{
|
|
if (empty($aendern_studiengang_kz) )
|
|
{
|
|
$aendern_studiengang_kz=$row->studiengang_kz;
|
|
$aendern_semester=1;
|
|
}
|
|
|
|
if ($aendern_studiengang_kz==$row->studiengang_kz)
|
|
{
|
|
$aendern_studiengang_name=$row->kuerzel;
|
|
$arrStudiengang=$row;
|
|
$max_semester=$row->max_semester;
|
|
}
|
|
$content.='<option title="'.$row->kuerzel.'" value="'.$row->studiengang_kz.'" '.(("$aendern_studiengang_kz"=="$row->studiengang_kz")?' selected="selected" ':'').'> '.$row->kuerzel.' </option>';
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$content.='<option value="" > '.$stg_obj->errormsg.' </option>';
|
|
$errormsg[]='Studiengang wurde nicht gefunden! '.$stg_obj->errormsg;
|
|
}
|
|
$content.='</select></td>';
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Semster public.tbl_studiengang_kz - max Semester des Selektierten Studiengangs
|
|
$content.='<td valign="top"><select onchange="document.'.$cFormName.'.aendern_bezeichnung.value=\'\';document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked=false;uncheckLE();generateLEText();document.'.$cFormName.'.submit();" name="aendern_semester">';
|
|
if ($aendern_studiengang_kz!='')
|
|
{
|
|
for($i=0;$i<=$max_semester;$i++)
|
|
{
|
|
$content.='<option value="'.($i).'" '.("$aendern_semester"=="$i"?' selected="selected" ':'').'> '.($i).' </option>';
|
|
}
|
|
}
|
|
$content.='</select></td>';
|
|
$content.='<td valign="top">';
|
|
|
|
$content.='<table><tr>';
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Lehrveranstaltungen
|
|
$content.='<th valign="top"> Lehrveranstaltung </th>';
|
|
$content.='<td><select onchange="document.'.$cFormName.'.aendern_bezeichnung.value=\'\';document.'.$cFormName.'.aendern_lehrveranstaltung_id.value=this.value;document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked=false;uncheckLE();generateLEText();document.'.$cFormName.'.submit();" name="sel_lehrveranstaltung_id">';
|
|
$lv_bez='';
|
|
$lv_kurz_bez='';
|
|
$lv_obj->lehrveranstaltungen=array();
|
|
if ($lv_obj->load_lva_le($aendern_studiengang_kz,$aendern_studiensemester_kurzbz, $aendern_semester,null,null,null,'bezeichnung'))
|
|
{
|
|
foreach ($lv_obj->lehrveranstaltungen as $row)
|
|
{
|
|
|
|
if (empty($sel_lehrveranstaltung_id))
|
|
$sel_lehrveranstaltung_id=$row->lehrveranstaltung_id;
|
|
|
|
if ("$sel_lehrveranstaltung_id"=="$row->lehrveranstaltung_id")
|
|
{
|
|
$lv_kurz_bez=trim($row->kurzbz);
|
|
if (!$aendern_bezeichnung)
|
|
$aendern_bezeichnung=$row->bezeichnung;
|
|
}
|
|
|
|
$content.='<option value="'.$row->lehrveranstaltung_id.'" '.("$sel_lehrveranstaltung_id"=="$row->lehrveranstaltung_id"?' selected="selected" ':'').'> '.CutString($row->bezeichnung, 35).' '.($row->kurzbz?CutString($row->kurzbz,7).', ':'').' '.$row->lehrveranstaltung_id.($row->lehrform_kurzbz?CutString(', '.$row->lehrform_kurzbz,5):'').'</option>';
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$content.='<option value="" > '.$stg_obj->errormsg.' </option>';
|
|
$errormsg[]='Lehrveranstaltung wurde nicht gefunden! '.$lv_obj->errormsg;
|
|
}
|
|
$content.='</select></td>';
|
|
|
|
$aendern_lehrveranstaltung_id=(isset($_REQUEST['aendern_lehrveranstaltung_id']) && !empty($_REQUEST['aendern_lehrveranstaltung_id'])?trim($_REQUEST['aendern_lehrveranstaltung_id']):$sel_lehrveranstaltung_id);
|
|
|
|
$bChecked=((!isset($_REQUEST['aendern_lehrveranstaltung_id']) && isset($objMoodle->result[0]->moodle_lehrveranstaltung_id) && $objMoodle->result[0]->moodle_lehrveranstaltung_id) || (isset($_REQUEST['aendern_lehrveranstaltung_id']) && $aendern_lehrveranstaltung_id)?true:false);
|
|
|
|
$content.='<th '.($bChecked?' class="error" ':'').' valign="top" title="'.$lv_kurz_bez.'" valign="top"><input onchange="if(this.checked) {uncheckLE();};generateLEText();" name="aendern_lehrveranstaltung_id" value="'.$aendern_lehrveranstaltung_id.'" type="Checkbox" '.($bChecked?' checked="checked" ':'').'> Moodle Kurs für gesamte LV</th>';
|
|
$content.='</tr>';
|
|
|
|
|
|
|
|
//---------------------------------------------------------------------------
|
|
// Lehreinheit
|
|
$content.='<tr>';
|
|
$content.='<th valign="top"> Lehreinheiten </th>';
|
|
$content.='<td valign="top"><table>';
|
|
|
|
# $content.='<tr><th>Moodlekurs zu LV '.$aendern_studiensemester_kurzbz.'/'.$aendern_lehrveranstaltung_id.' </th></tr>';
|
|
|
|
$le_obj->lehreinheiten=array();
|
|
$le_obj->load_lehreinheiten($sel_lehrveranstaltung_id, $aendern_studiensemester_kurzbz);
|
|
|
|
if (!is_array($le_obj->lehreinheiten) || count($le_obj->lehreinheiten)<1)
|
|
{
|
|
$content.='<tr>';
|
|
$content.='<td valign="top" class="error">Achtung ! Es gibt keine Lehreinheit für '.$aendern_studiensemester_kurzbz.'-'.$aendern_bezeichnung.' '.$lv_kurz_bez.'</td>';
|
|
$content.='</tr>';
|
|
}
|
|
else
|
|
{
|
|
foreach ($le_obj->lehreinheiten as $row)
|
|
{
|
|
//Gruppen laden
|
|
$gruppen = '';
|
|
if (!$legrp_obj = new lehreinheitgruppe())
|
|
die('Fehler beim Oeffnen der Lehreinheitgruppe');
|
|
|
|
if ($legrp_obj->getLehreinheitgruppe($row->lehreinheit_id))
|
|
{
|
|
foreach ($legrp_obj->lehreinheitgruppe as $grp)
|
|
{
|
|
if($grp->gruppe_kurzbz=='')
|
|
$gruppen.=' '.$grp->semester.$grp->verband.$grp->gruppe;
|
|
else
|
|
$gruppen.=' '.$grp->gruppe_kurzbz;
|
|
}
|
|
}
|
|
|
|
//Lektoren laden
|
|
$lektoren='';
|
|
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter();
|
|
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
|
|
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
|
|
{
|
|
$lektoren.= ($lektoren?',':'').' '.$ma->mitarbeiter_uid;
|
|
}
|
|
|
|
$le_gefunden=false;
|
|
# $bChecked=((!isset($_REQUEST['aendern_lehrveranstaltung_id']) && isset($objMoodle->result[0]->moodle_lehrveranstaltung_id) && $objMoodle->result[0]->moodle_lehrveranstaltung_id) || (isset($_REQUEST['aendern_lehrveranstaltung_id']) && $aendern_lehrveranstaltung_id)?false:true);
|
|
if (isset($_REQUEST['aendern_lehrveranstaltung_id']) && !$aendern_lehrveranstaltung_id && isset($aendern_lehreinheit_id) && is_array($aendern_lehreinheit_id))
|
|
{
|
|
reset($aendern_lehreinheit_id);
|
|
for ($ii=0;$ii<count($aendern_lehreinheit_id);$ii++)
|
|
{
|
|
if (isset($aendern_lehreinheit_id[$ii]) && $aendern_lehreinheit_id[$ii]==$row->lehreinheit_id)
|
|
$le_gefunden=true;
|
|
}
|
|
}
|
|
else if ($new || (isset($_REQUEST['aendern_lehrveranstaltung_id']) && $aendern_lehrveranstaltung_id) )
|
|
{
|
|
$le_gefunden=false;
|
|
}
|
|
else
|
|
{
|
|
reset($objMoodle->result);
|
|
for ($ii=0;$ii<count($objMoodle->result);$ii++)
|
|
{
|
|
if ($objMoodle->result[$ii]->moodle_lehreinheit_id==$row->lehreinheit_id)
|
|
$le_gefunden=true;
|
|
}
|
|
}
|
|
|
|
$content.='<tr '.($le_gefunden?' class="error" ':' ').' >';
|
|
// LE Text
|
|
$content.='<td>'.$row->lehrform_kurzbz.' </td><td>'.$gruppen.' </td><td>'.$row->lehreinheit_id.' </td>';
|
|
// LE Checkbox
|
|
$content.='<td><input '.($le_gefunden?' checked="checked" ':' ').' onchange="if(this.checked) {document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked=false;};generateLEText();" id="aendern_lehreinheit_id[]" name="aendern_lehreinheit_id[]" value="'.$row->lehreinheit_id.'" type="Checkbox"> '.$lektoren.'</td>';
|
|
$content.='</tr>';
|
|
}
|
|
}
|
|
$bGefundenLehreinheit=(count($le_obj->lehreinheiten)?true:false);
|
|
|
|
$content.='<tr><td> </td></tr></table></td>';
|
|
$content.='</tr>';
|
|
$content.='</table></td></tr>';
|
|
//---------------------------------------------------------------------------
|
|
|
|
//---------------------------------------------------------------------------
|
|
// ---- Submitknopf
|
|
$content.='<tr><td colspan="4"><table>
|
|
<tr>
|
|
|
|
<th align="left">Moodle :
|
|
<br />Kursbez.: <input name="aendern_bezeichnung" maxlength="254" size="60" type="Text" value="'. $aendern_bezeichnung.'">
|
|
<br />Kurzbez.: <input name="aendern_kurzbezeichnung" maxlength="254" size="60" type="Text" value="'. $aendern_kurzbezeichnung.'">
|
|
</th>
|
|
<td> </td>
|
|
<th>Gruppen übernehmen: <input type="checkbox" value="1" name="aendern_gruppen" '.($aendern_gruppen?' checked="checked" ':'').' ><br /></th>
|
|
<th>
|
|
<input style="display:none" type="text" name="mdl_course_id" value="'.$mdl_course_id.'">
|
|
<input style="display:none" type="text" name="aendern" value="aendern" />
|
|
<input style="display:none" type="text" name="debug" value="'.$bDebug.'" />
|
|
|
|
|
|
<input style="padding: 2px 20px 2px 20px;" name="aenderung" type="submit" value="neu zuteilen">
|
|
<input style="padding: 2px 20px 2px 20px;" name="kopieren" type="submit" value="hinzufügen">
|
|
</th>';
|
|
if (!$new )
|
|
{
|
|
// Header
|
|
$content.='<td><table border="0">';
|
|
$content.='<tr id="aktuell_on" onclick="this.className=\'ausblenden\';document.getElementById(\'aktuell\').className=\'einblenden\';document.getElementById(\'aktuell_off\').className=\'einblenden\';" class="einblenden"><td><img height="15" src="../../skin/images/bullet_arrow_right.png" border="0" title="Detailansicht" alt="bullet_arrow_down.png" /></td><td><b>anzeigen</b> aktuelle '.($objMoodle->result[0]->moodle_lehrveranstaltung_id?' Lehrveranstaltung ':' Lehreinheiten').'</td></tr>';
|
|
$content.='<tr id="aktuell_off" onclick="this.className=\'ausblenden\';document.getElementById(\'aktuell\').className=\'ausblenden\';document.getElementById(\'aktuell_on\').className=\'einblenden\';" class="ausblenden"><td><img height="15" src="../../skin/images/bullet_arrow_down.png" border="0" title="Detailansicht" alt="bullet_arrow_down.png" /></td><td><b>ausblenden</b> ktuelle '.($objMoodle->result[0]->moodle_lehrveranstaltung_id?' Lehrveranstaltung ':' Lehreinheiten').'</td></tr>';
|
|
$content.='</table></td>';
|
|
}
|
|
|
|
$content.='</tr></table></td>';
|
|
$content.='</tr></table>
|
|
</form>
|
|
<hr>';
|
|
//---------------------------------------------------------------------------
|
|
// Fuer bestehende Vilescidaten wird eine Detailinformation angezeigt
|
|
if (!$new )
|
|
{
|
|
$content.='<table border="0" id="aktuell" class="ausblenden" >';
|
|
//---------------------------------------------------------------------------
|
|
// @studiengang_kz Studiengang
|
|
if ($studiengang_kz)
|
|
{
|
|
if ($stg_obj->load($studiengang_kz))
|
|
{
|
|
$content.='<tr>';
|
|
$content.='<th>Studiengang</th>
|
|
<td rowspan="5"> </td>
|
|
<td>
|
|
<table class="liste" summary="Studiengang">
|
|
<tr>
|
|
<td>'.(isset($objMoodle->result[0]) && isset($objMoodle->result[0]->studiensemester_kurzbz)?$objMoodle->result[0]->studiensemester_kurzbz:'').' </td>
|
|
<td>'.$stg_obj->kuerzel.' </td>
|
|
<td>'.$stg_obj->bezeichnung.' </td>
|
|
<td>('.$stg_obj->kurzbzlang.') </td>
|
|
<td>ID '.$studiengang_kz.' </td>
|
|
</tr>
|
|
</table>
|
|
</td>';
|
|
$content.='</tr>';
|
|
}
|
|
else
|
|
{
|
|
$errormsg[]='Studieng '.$studiengang_kz.' wurden nicht gefunden! '.$stg_obj->errormsg;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$content.='<tr><td>-</td></tr>';
|
|
}
|
|
$content.='<tr>';
|
|
$content.='<th valign="top">Lehrveranstaltung</th>
|
|
<td valign="top">'.(isset($objMoodle->result[0]) && isset($objMoodle->result[0]->lehrveranstaltung_bezeichnung)?$objMoodle->result[0]->lehrveranstaltung_bezeichnung.' Kurzbz: '.$objMoodle->result[0]->lehrveranstaltung_kurzbz.' , Lehrform Kurzbz:'.($objMoodle->result[0]->lehrveranstaltung_lehrform_kurzbz?$objMoodle->result[0]->lehrveranstaltung_lehrform_kurzbz:' - ').', ID '.$objMoodle->result[0]->lehrveranstaltung_id.' ':' - ').'</td>
|
|
<td valign="top" '.($objMoodle->result[0]->moodle_lehrveranstaltung_id?' class="error" ':'').'><input disabled name="lehrveranstaltung_id" value="'.$objMoodle->result[0]->lehrveranstaltung_id.'" type="Checkbox" '.($objMoodle->result[0]->moodle_lehrveranstaltung_id?' checked="checked" ':'').'> </td>
|
|
';
|
|
$content.='<th valign="top">Lehreinheiten</th>';
|
|
$content.='<td><table>';
|
|
|
|
$le_obj->lehreinheiten=array(); // Init
|
|
$le_obj->load_lehreinheiten($lehrveranstaltung_id, $studiensemester_kurzbz);
|
|
foreach ($le_obj->lehreinheiten as $row)
|
|
{
|
|
//Gruppen laden
|
|
$gruppen = '';
|
|
if (!$legrp_obj = new lehreinheitgruppe())
|
|
die('Fehler beim Oeffnen der Lehreinheitgruppe');
|
|
if ($legrp_obj->getLehreinheitgruppe($row->lehreinheit_id))
|
|
{
|
|
foreach ($legrp_obj->lehreinheitgruppe as $grp)
|
|
{
|
|
if($grp->gruppe_kurzbz=='')
|
|
$gruppen.=' '.$grp->semester.$grp->verband.$grp->gruppe;
|
|
else
|
|
$gruppen.=' '.$grp->gruppe_kurzbz;
|
|
}
|
|
|
|
}
|
|
//Lektoren laden
|
|
$lektoren='';
|
|
$lehreinheitmitarbeiter = new lehreinheitmitarbeiter();
|
|
$lehreinheitmitarbeiter->getLehreinheitmitarbeiter($row->lehreinheit_id);
|
|
foreach ($lehreinheitmitarbeiter->lehreinheitmitarbeiter as $ma)
|
|
{
|
|
$lektoren.= ($lektoren?',':'').' '.$ma->mitarbeiter_uid;
|
|
}
|
|
$le_gefunden=false;
|
|
reset($objMoodle->result);
|
|
for ($ii=0;$ii<count($objMoodle->result);$ii++)
|
|
{
|
|
if ($objMoodle->result[$ii]->moodle_lehreinheit_id==$row->lehreinheit_id)
|
|
$le_gefunden=true;
|
|
}
|
|
$content.='<tr '.($le_gefunden?' class="error" ':' ').'>';
|
|
$content.='<td>'.$row->lehrform_kurzbz.' </td><td>'.$gruppen.' </td><td>ID '.$row->lehreinheit_id.' </td>';
|
|
$content.='<td valign="top"><input '.($le_gefunden?' checked="checked" ':'').' id="lehreinheit_id" disabled name="lehreinheit_id[]" value="'.$row->lehreinheit_id.'" type="Checkbox" > '.$lektoren.'</td>';
|
|
$content.='</tr>';
|
|
}
|
|
$content.='</table></td>';
|
|
$content.='</tr>';
|
|
$content.='</table>';
|
|
}
|
|
|
|
// ***********************************************************************************************
|
|
// HTML Header und Foot zum Content (Ausgabestring) hinzufuegen, und wartung
|
|
// ***********************************************************************************************
|
|
$content='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<title>Moodle - Kurszuteilungverwalten</title>
|
|
<base target="main">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
|
|
|
<script type="text/javascript" language="JavaScript">
|
|
<!-- Begin
|
|
function generateLEText()
|
|
{
|
|
document.'.$cFormName.'.aendern_kurzbezeichnung.value=document.'.$cFormName.'.aendern_studiensemester_kurzbz.value+"-'.(isset($aendern_studiengang_name)?$aendern_studiengang_name:'???').'-"+document.'.$cFormName.'.aendern_semester.value+"'.($lv_kurz_bez?'-'.$lv_kurz_bez:'').'";
|
|
if ("'.($bGefundenLehreinheit?'X':'').'"=="" || document.'.$cFormName.'.aendern_lehrveranstaltung_id.checked==true)
|
|
{
|
|
return;
|
|
}
|
|
|
|
var bez="";
|
|
document.'.$cFormName.'.aendern_kurzbezeichnung.bez;
|
|
|
|
var no;
|
|
var m=document.'.$cFormName.';
|
|
if (no=m.elements["aendern_lehreinheit_id[]"].length)
|
|
{
|
|
for(i=0;i<no;i++)
|
|
{
|
|
if (m.elements["aendern_lehreinheit_id[]"][i].checked==true)
|
|
{
|
|
if (bez!="")
|
|
{
|
|
bez=bez+"/";
|
|
}
|
|
bez=bez+m.elements["aendern_lehreinheit_id[]"][i].value;
|
|
}
|
|
}
|
|
}
|
|
if (bez!="")
|
|
{
|
|
document.'.$cFormName.'.aendern_kurzbezeichnung.value=document.'.$cFormName.'.aendern_studiensemester_kurzbz.value+"-'.(isset($aendern_studiengang_name)?$aendern_studiengang_name:'???').'-"+document.'.$cFormName.'.aendern_semester.value+"-"+bez;
|
|
}
|
|
|
|
}
|
|
|
|
function uncheckLE()
|
|
{
|
|
'.($bGefundenLehreinheit?'':' return; '). '
|
|
|
|
var no;
|
|
var m=document.'.$cFormName.';
|
|
if (no=m.elements["aendern_lehreinheit_id[]"].length)
|
|
{
|
|
for(i=0;i<no;i++)
|
|
{
|
|
m.elements["aendern_lehreinheit_id[]"][i].checked=false;
|
|
}
|
|
}
|
|
}
|
|
|
|
//-->
|
|
</script>
|
|
</head>
|
|
<body class="background_main">
|
|
<!-- MoodleKurs Content Start -->
|
|
'.$content.'<p class="error">'.implode('<br>',$errormsg).'</p>
|
|
<br />
|
|
</body>
|
|
</html>';
|
|
echo $content;
|
|
exit;
|
|
|
|
// ***********************************************************************************************
|
|
// Submit - Datenverarbeiten
|
|
// ***********************************************************************************************
|
|
function moodlekurswartung($mdl_course_id,&$errormsg)
|
|
{
|
|
if (!$user=get_uid())
|
|
{
|
|
$errormsg[]='Sie sind nicht angemeldet. Es wurde keine Benutzer UID gefunden !';
|
|
return false;
|
|
}
|
|
|
|
|
|
|
|
if (!$objMoodle = new moodle_course())
|
|
die('Fehler beim Oeffnen der Moodleverbindung');
|
|
|
|
if (!$le_obj = new lehreinheit())
|
|
die('Fehler beim Oeffnen der Lehreinheit');
|
|
|
|
if (!$legrp_obj = new lehreinheitgruppe())
|
|
die('Fehler beim Oeffnen der Lehreinheitgruppe');
|
|
|
|
if (!$lv_obj = new lehrveranstaltung())
|
|
die('Fehler beim Oeffnen der Lehrveranstaltung');
|
|
|
|
if (!$stg_obj = new studiengang())
|
|
die('Fehler beim Oeffnen der Studiengänge');
|
|
|
|
if (!$stsem = new studiensemester())
|
|
die('Fehler beim Oeffnen der Studiensemester');
|
|
|
|
$bWartung=(isset($_REQUEST['aenderung']) && !empty($_REQUEST['aenderung'])?true:false);
|
|
$bKopieren=(isset($_REQUEST['kopieren']) && !empty($_REQUEST['kopieren'])?true:false);
|
|
$aendern_studiensemester_kurzbz=(isset($_REQUEST['aendern_studiensemester_kurzbz'])?trim($_REQUEST['aendern_studiensemester_kurzbz']):'');
|
|
$aendern_studiengang_kz=(isset($_REQUEST['aendern_studiengang_kz'])?trim($_REQUEST['aendern_studiengang_kz']):'');
|
|
$aendern_semester=(isset($_REQUEST['aendern_semester'])?trim($_REQUEST['aendern_semester']):'');
|
|
|
|
$sel_lehrveranstaltung_id=(isset($_REQUEST['sel_lehrveranstaltung_id'])?trim($_REQUEST['sel_lehrveranstaltung_id']):$lehrveranstaltung_id);
|
|
$aendern_lehrveranstaltung_id=(isset($_REQUEST['aendern_lehrveranstaltung_id']) && !empty($_REQUEST['aendern_lehrveranstaltung_id'])?trim($_REQUEST['aendern_lehrveranstaltung_id']):$sel_lehrveranstaltung_id);
|
|
|
|
$aendern_lehreinheit_id=(isset($_REQUEST['aendern_lehreinheit_id'])?$_REQUEST['aendern_lehreinheit_id']:(isset($_REQUEST['aendern_studiensemester_kurzbz'])?'':''));
|
|
|
|
$aendern_bezeichnung=(isset($_REQUEST['aendern_bezeichnung'])?trim($_REQUEST['aendern_bezeichnung']):'');
|
|
$aendern_kurzbezeichnung=(isset($_REQUEST['aendern_kurzbezeichnung'])?trim($_REQUEST['aendern_kurzbezeichnung']):'');
|
|
$aendern_gruppen=(isset($_REQUEST['aendern_gruppen']) && !empty($_REQUEST['aendern_gruppen'])?true:(isset($_REQUEST['aendern_gruppen'])?1:0));
|
|
|
|
|
|
// Original Moodlekurs lesen
|
|
if(!$objMoodle->getAllMoodleVariant($mdl_course_id,'','','','','',false,false,false))
|
|
{
|
|
die('Moodle-Kurs '.$objMoodle->mdl_course_id.' wurde in Lehre nicht gefunden! '.$objMoodle->errormsg);
|
|
}
|
|
// Kurs wurde gefunden
|
|
if(isset($objMoodle->result) && isset($objMoodle->result[0]))
|
|
{
|
|
$new_lehre_moodle_kurs=false;
|
|
$objMoodle->new=false;
|
|
}
|
|
// Es gibt im Moodle den Kurs
|
|
else if ($objMoodle->load($mdl_course_id) && !$bKopieren)
|
|
{
|
|
$new_lehre_moodle_kurs=true;
|
|
$objMoodle->new=true; // Datensatz anlegen
|
|
}
|
|
else
|
|
{
|
|
die('Moodle-Kurs '.$mdl_course_id.' wurde nicht gefunden! '.$objMoodle->errormsg);
|
|
}
|
|
|
|
|
|
if ($bKopieren)
|
|
{
|
|
if ($new_lehre_moodle_kurs)
|
|
{
|
|
die('nur bestehende Moodle-Kurse können kopiert werden ');
|
|
}
|
|
$objMoodle->new=true; // Datensatz anlegen
|
|
}
|
|
|
|
#echo $aendern_lehrveranstaltung_id;
|
|
#var_dump($aendern_lehreinheit_id);
|
|
|
|
// Lehreinheiten
|
|
if ((!is_array($aendern_lehreinheit_id) && !empty($aendern_lehreinheit_id))
|
|
|| (is_array($aendern_lehreinheit_id) && count($aendern_lehreinheit_id)>0) )
|
|
{
|
|
$objMoodle->lehrveranstaltung_id=null;
|
|
$objMoodle->lehreinheit_id=$aendern_lehreinheit_id;
|
|
}
|
|
// Lehrveranstaltung
|
|
else if ($aendern_lehrveranstaltung_id)
|
|
{
|
|
$objMoodle->lehrveranstaltung_id=$aendern_lehrveranstaltung_id;
|
|
$objMoodle->lehreinheit_id=null;
|
|
}
|
|
else
|
|
{
|
|
$errormsg[]='LV oder LE wurde nicht ausgewählt!';
|
|
return false;
|
|
}
|
|
|
|
$objMoodle->mdl_course_id=$mdl_course_id;
|
|
$objMoodle->studiensemester_kurzbz=$aendern_studiensemester_kurzbz;
|
|
|
|
// Kurztext des Moodlekurses neu ermitteln
|
|
$objMoodle->mdl_fullname=$aendern_bezeichnung;
|
|
$objMoodle->mdl_shortname=$aendern_kurzbezeichnung;
|
|
$objMoodle->insertamum=(!$new_lehre_moodle_kurs && isset($objMoodle->result[0]->insertamum)?$objMoodle->result[0]->insertamum:date('Y-m-d H:i:s'));
|
|
$objMoodle->insertvon=(!$new_lehre_moodle_kurs && isset($objMoodle->result[0]->insertvon)?$objMoodle->result[0]->insertvon:$user);
|
|
$objMoodle->gruppen=($aendern_gruppen?1:0);
|
|
|
|
|
|
if (!$objMoodle->update_vilesci())
|
|
{
|
|
$errormsg[]='Fehler Vilesci Moodle-Kurs '.$mdl_course_id.' '.$objMoodle->result[0]->mdl_fullname.' zugeordnet '.$objMoodle->errormsg;
|
|
return false;
|
|
}
|
|
|
|
$errormsg[]='Vilesci Moodle-Kurs '.$mdl_course_id.' '.$aendern_bezeichnung.' '.$aendern_kurzbezeichnung.($objMoodle->new?' angelegt ':' geaendert ').$objMoodle->errormsg;
|
|
if ($bKopieren || $new_lehre_moodle_kurs)
|
|
return true;
|
|
|
|
// Moodle aenderungen nur bei Wechsel der LV
|
|
|
|
|
|
|
|
if ( (($aendern_lehrveranstaltung_id && isset($objMoodle->result[0]->lehrveranstaltung_id) && $objMoodle->result[0]->lehrveranstaltung_id!=$aendern_lehrveranstaltung_id)
|
|
|| ( $aendern_bezeichnung!=$objMoodle->result[0]->mdl_fullname || $aendern_kurzbezeichnung!=$objMoodle->result[0]->mdl_shortname )))
|
|
{
|
|
if (is_array($objMoodle->lehreinheit_id))
|
|
$objMoodle->lehreinheit_id=$objMoodle->lehreinheit_id[0];
|
|
|
|
if (!$objMoodle->update_moodle())
|
|
{
|
|
$errormsg[]='Fehler Moodle-Kurs aendern '.$mdl_course_id.' '.$aendern_bezeichnung.' '.$aendern_kurzbezeichnung.' '.$objMoodle->errormsg;
|
|
return false;
|
|
}
|
|
$errormsg[]='Moodle-Kurs '.$mdl_course_id.' geaendert auf '.$aendern_bezeichnung.' '.$aendern_kurzbezeichnung.' '.$objMoodle->errormsg;
|
|
}
|
|
return true;
|
|
}
|
|
// ***********************************************************************************************
|
|
// String auf Laenge abschneiden
|
|
// ***********************************************************************************************
|
|
function CutString($strVal, $limit)
|
|
{
|
|
if(strlen($strVal) > $limit+3)
|
|
{
|
|
return substr($strVal, 0, $limit) . "...";
|
|
}
|
|
else
|
|
{
|
|
return $strVal;
|
|
}
|
|
}
|
|
|
|
?>
|