diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index e1bcffd84..f8b47cf48 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -1637,6 +1637,77 @@ if(!$error)
}
}
}
+ elseif(isset($_POST['type']) && $_POST['type']=='updateStatusgrund')
+ {
+ //Statusgrund speichern
+ if(!$error)
+ {
+ if(isset($_POST['prestudent_id']))
+ {
+ $rolle = new prestudent();
+ if(!$rolle->load($_POST['prestudent_id']))
+ {
+ $error = true;
+ $errormsg = 'Prestudent wurde nicht gefunden';
+ }
+ else
+ {
+ //Berechtigung pruefen
+ if(!$rechte->isBerechtigt('assistenz',$rolle->studiengang_kz,'suid') &&
+ !$rechte->isBerechtigt('admin',$rolle->studiengang_kz, 'suid'))
+ {
+ $error = true;
+ $errormsg = 'Sie haben keine Schreibrechte fuer diesen Studiengang';
+ }
+ }
+
+ if(!$error)
+ {
+ $error = true;
+ $errormsg = " in updateStatusgrund " . $_POST['statusgrund_id'];
+ }
+
+ $rolle = new prestudent();
+ $rolle->prestudent_id = $_POST['prestudent_id'];
+
+ $rolle->status_kurzbz = $_POST['status_kurzbz'];
+ $rolle->ausbildungssemester_old = $_POST['ausbildungssemester_old'];
+ $rolle->studiensemester_old = $_POST['studiensemester_old'];
+ $rolle->statusgrund_id = $_POST['statusgrund_id'];
+
+
+ $rolle->datum = $_POST['datum'];
+ $rolle->bestaetigtam = $_POST['bestaetigtam'];
+ if($_POST['bestaetigtam']=='')
+ $rolle->bestaetigtvon = null;
+ $rolle->updateamum = date('Y-m-d H:i:s');
+ $rolle->updatevon = $user;
+ $rolle->new = false;
+
+ $rolle->ausbildungssemester = $_POST['ausbildungssemester'];
+ $rolle->studiensemester_kurzbz = $_POST['studiensemester_kurzbz'];
+ $rolle->bewerbung_abgeschicktamum = $_POST['bewerbung_abgeschicktamum'];
+ $rolle->anmerkung_status = $_POST['anmerkung'];
+
+ $rolle->orgform_kurzbz = $_POST['orgform_kurzbz'];
+ $rolle->studienplan_id = $_POST['studienplan_id'];
+ $rolle->rt_stufe = $_POST['rt_stufe'];
+
+ if($rolle->save_rolle())
+ $return = true;
+ else
+ {
+ $return = false;
+ $errormsg = $rolle->errormsg;
+ }
+ }
+ else
+ {
+ $return = false;
+ $errormsg = 'Prestudent_id muss angegeben werden';
+ }
+ }
+ }
elseif(isset($_POST['type']) && $_POST['type']=='rolleVorruecken')
{
$errormsg='';
diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php
index 8be20d32d..dfb2a77c3 100644
--- a/content/student/studentoverlay.js.php
+++ b/content/student/studentoverlay.js.php
@@ -2360,6 +2360,70 @@ function StudentRolleSpeichern(dialog, studiensemester_old, ausbildungssemester_
}
}
+
+ // ****
+ // * Update Statusgrund aus BearbeitenDialog
+ // ****
+ function StudentUpdateStatusgrund(dialog, studiensemester_old, ausbildungssemester_old)
+ {
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ prestudent_id = dialog.getElementById('student-rolle-textbox-prestudent_id').value;
+ if(studiensemester_old=='')
+ status_kurzbz = dialog.getElementById('student-rolle-menulist-status_kurzbz').value;
+ else
+ status_kurzbz = dialog.getElementById('student-rolle-textbox-status_kurzbz').value;
+ studiensemester_kurzbz = dialog.getElementById('student-rolle-menulist-studiensemester').value;
+ ausbildungssemester = dialog.getElementById('student-rolle-menulist-ausbildungssemester').value;
+ datum = dialog.getElementById('student-rolle-datum-datum').value;
+ bestaetigt_datum = dialog.getElementById('student-rolle-datum-bestaetigt_datum').value;
+ orgform_kurzbz = dialog.getElementById('student-rolle-menulist-orgform_kurzbz').value;
+ studienplan_id = dialog.getElementById('student-rolle-menulist-studienplan').value;
+ anmerkung = dialog.getElementById('student-rolle-textbox-anmerkung').value;
+ rt_stufe = dialog.getElementById('student-rolle-menulist-stufe').value;
+ statusgrund_id = dialog.getElementById('student-rolle-menulist-statusgrund').value;
+ bewerbung_abgeschicktamum = dialog.getElementById('student-rolle-datum-bewerbung_abgeschicktamum').value;
+
+
+ var url = 'content/student/studentDBDML.php';
+ var req = new phpRequest(url,'','');
+
+ req.add('type', 'updateStatusgrund')
+
+ req.add('status_kurzbz', status_kurzbz);
+ req.add('prestudent_id', prestudent_id);
+ req.add('studiensemester_kurzbz', studiensemester_kurzbz);
+ req.add('studiensemester_old', studiensemester_old);
+ req.add('ausbildungssemester_old', ausbildungssemester_old);
+ req.add('ausbildungssemester', ausbildungssemester);
+ req.add('datum', ConvertDateToISO(datum));
+ req.add('bestaetigtam', ConvertDateToISO(bestaetigt_datum));
+ req.add('orgform_kurzbz', orgform_kurzbz);
+ req.add('studienplan_id', studienplan_id);
+ req.add('anmerkung', anmerkung);
+ req.add('rt_stufe', rt_stufe);
+ req.add('statusgrund_id', statusgrund_id);
+ req.add('bewerbung_abgeschicktamum', bewerbung_abgeschicktamum);
+
+ var response = req.executePOST();
+
+ var val = new ParseReturnValue(response)
+
+ if (!val.dbdml_return)
+ {
+ if(val.dbdml_errormsg=='')
+ alert(response)
+ else
+ alert(val.dbdml_errormsg)
+ return false;
+ }
+ else
+ {
+ StudentDetailRolleTreeDatasource.Refresh(false);
+ SetStatusBarText('Prestudentstatusgrund wird aktualisiert');
+ return true;
+ }
+ }
+
// ****
// * Anmeldungsdatum fuer den RT wird auf das Aktuelle Datum gesetzt
// ****
diff --git a/content/student/studentrolledialog.js.php b/content/student/studentrolledialog.js.php
index 60c247781..897d09bac 100644
--- a/content/student/studentrolledialog.js.php
+++ b/content/student/studentrolledialog.js.php
@@ -114,6 +114,12 @@ function StudentRolleSpeichern()
window.close();
}
+function StudentUpdateStatusgrund()
+{
+ if(window.opener.StudentUpdateStatusgrund(document, StudentRolleStudiensemester_old, StudentRolleAusbildungssemester_old))
+ window.close();
+}
+
function StudentRolleLoadStatusgrund(status_kurzbz, statusgrund_id)
{
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
diff --git a/content/student/studentrolledialog.xul.php b/content/student/studentrolledialog.xul.php
index 88a357b6a..dc0ab73c5 100644
--- a/content/student/studentrolledialog.xul.php
+++ b/content/student/studentrolledialog.xul.php
@@ -101,7 +101,7 @@ if($prestudent_id!='')
-
+
"/>
@@ -254,7 +254,7 @@ if($prestudent_id!='')