This commit is contained in:
Andreas Österreicher
2008-01-15 08:23:13 +00:00
parent 71c0140004
commit 8530504482
3 changed files with 121 additions and 16 deletions
+23 -4
View File
@@ -585,16 +585,28 @@ var verbandtreeDDObserver=
//Ziel holen
col = tree.columns ? tree.columns["gruppe"] : "gruppe";
gruppe_kurzbz=tree.view.getCellText(row.value,col);
col = tree.columns ? tree.columns["stg_kz"] : "stg_kz";
stg_kz=tree.view.getCellText(row.value,col);
col = tree.columns ? tree.columns["sem"] : "sem";
sem=tree.view.getCellText(row.value,col);
col = tree.columns ? tree.columns["ver"] : "ver";
ver=tree.view.getCellText(row.value,col);
col = tree.columns ? tree.columns["grp"] : "grp";
grp=tree.view.getCellText(row.value,col);
}
else
return false;
if(gruppe_kurzbz=='')
if(gruppe_kurzbz=='' && sem=='')
{
alert('Zuteilung derzeit nur zu Spezialgruppen moeglich');
alert('Zuteilung ist nur zu Spezial- oder Lehrverbandsgruppen moeglich');
return false;
}
uid=dropdata.data;
var req = new phpRequest('student/studentDBDML.php','','');
@@ -603,6 +615,10 @@ var verbandtreeDDObserver=
req.add('uid', uid);
req.add('gruppe_kurzbz', gruppe_kurzbz);
req.add('stg_kz', stg_kz);
req.add('semester', sem);
req.add('verband', ver);
req.add('gruppe', grp);
var response = req.executePOST();
@@ -610,7 +626,10 @@ var verbandtreeDDObserver=
if (!val.dbdml_return)
{
alert(val.dbdml_errormsg)
if(val.dbdml_errormsg=='')
alert(response);
else
alert(val.dbdml_errormsg)
}
else
{
+94 -12
View File
@@ -948,22 +948,104 @@ if(!$error)
{
if($uid!='')
{
if(!$benutzergruppe->load($uid, $_POST['gruppe_kurzbz']))
if($_POST['gruppe_kurzbz']!='')
{
$benutzergruppe->uid = $uid;
$benutzergruppe->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
$benutzergruppe->studiensemester_kurzbz = $semester_aktuell;
$benutzergruppe->insertamum = date('Y-m-d H:i:s');
$benutzergruppe->insertvon = $user;
$benutzergruppe->new = true;
if(!$benutzergruppe->save())
//Zuteilung zu einer Spezialgruppe
if(!$benutzergruppe->load($uid, $_POST['gruppe_kurzbz']))
{
$errormsg .= "$uid konnte nicht hinzugefuegt werden\n";
$benutzergruppe->uid = $uid;
$benutzergruppe->gruppe_kurzbz = $_POST['gruppe_kurzbz'];
$benutzergruppe->studiensemester_kurzbz = $semester_aktuell;
$benutzergruppe->insertamum = date('Y-m-d H:i:s');
$benutzergruppe->insertvon = $user;
$benutzergruppe->new = true;
if(!$benutzergruppe->save())
{
$errormsg .= "$uid konnte nicht hinzugefuegt werden\n";
}
}
else
$errormsg .= "Der Student $uid ist bereits in dieser Gruppe\n";
}
else
{
//Zuteilung zu einer Lehrverbandsgruppe
$error = false;
$stsem = new studiensemester($conn, null, true);
$stsem_kurzbz = $stsem->getaktorNext();
//Schauen ob die Lehrverbandsgruppe existiert
$lehrverband = new lehrverband($conn, true);
if(!$lehrverband->exists($_POST['stg_kz'],$_POST['semester'],$_POST['verband'], $_POST['gruppe']))
{
$errormsg .= 'Die angegebene Lehrverbandsgruppe existiert nicht!';
$return = false;
$error = true;
}
//Wenn das ausgewaehlte Semester das aktuelle ist, dann wird auch in der
//Tabelle Student der Stg/Semester/Verband/Gruppe geaendert.
//Sonst nur in der Tabelle Studentlehrverband
if($semester_aktuell == $stsem_kurzbz)
{
//Eintrag in der Tabelle Student aendern
$student = new student($conn, true);
if(!$student->load($uid))
{
$errormsg .= 'Fehler beim Laden des Studenten';
$error = true;
$return = false;
}
$student->studiengang_kz = $_POST['stg_kz'];
$student->semester = $_POST['semester'];
$student->verband = ($_POST['verband']==''?' ':$_POST['verband']);
$student->gruppe = ($_POST['gruppe']==''?' ':$_POST['gruppe']);
$student->new=false;
if(!$student->save())
{
$errormsg .= 'Fehler beim Speichern des Studenteneintrages';
$return = false;
$error = true;
}
}
if(!$error)
{
//Eintrag in der Tabelle Studentlehrverband aendern
$student_lvb = new student($conn, null, true);
if($student_lvb->studentlehrverband_exists($uid, $semester_aktuell))
$student_lvb->new = false;
else
$student_lvb->new = true;
$student_lvb->uid = $uid;
$student_lvb->studiensemester_kurzbz = $semester_aktuell;
$student_lvb->studiengang_kz = $_POST['stg_kz'];
$student_lvb->semester = $_POST['semester'];
$student_lvb->verband = ($_POST['verband']==''?' ':$_POST['verband']);
$student_lvb->gruppe = ($_POST['gruppe']==''?' ':$_POST['gruppe']);
$student_lvb->updateamum = date('Y-m-d H:i:s');
$student_lvb->updatevon = $user;
if($student_lvb->save_studentlehrverband())
{
$return = true;
$error=false;
}
else
{
$error = true;
$errormsg .= $student_lvb->errormsg;
$return = false;
}
}
}
else
$errormsg .= "Der Student $uid ist bereits in dieser Gruppe\n";
}
}
if($errormsg=='')
+4
View File
@@ -30,6 +30,10 @@ echo '<?xul-overlay href="'.APP_ROOT.'content/lvplanung/stpl-semester-overlay.xu
enableColumnDrag="true"
ondraggesture="nsDragAndDrop.startDrag(event,lvbgrpDDObserver);"
datasources="../rdf/lehrverbandsgruppe.rdf.php?prestudent=false" ref="http://www.technikum-wien.at/lehrverbandsgruppe/alle-verbaende"
ondragdrop="nsDragAndDrop.drop(event,verbandtreeDDObserver)"
ondragover="nsDragAndDrop.dragOver(event,verbandtreeDDObserver)"
ondragenter="nsDragAndDrop.dragEnter(event,verbandtreeDDObserver)"
ondragexit="nsDragAndDrop.dragExit(event,verbandtreeDDObserver)"
>
<treecols>
<treecol id="bez" label="Bezeichnung" flex="15" primary="true" />