diff --git a/content/functions.js.php b/content/functions.js.php index 76a3ab3a3..f236f8972 100644 --- a/content/functions.js.php +++ b/content/functions.js.php @@ -72,6 +72,7 @@ function gettimestamp() // * // * obj.dbdml_return ... Returnwert des Scripts // * obj.dbdml_errormsg ... Errormessage +// * obj.dbdml_warning ... Warnhinweis // * obj.dbdml_data ... zusaetzliche Daten vom Script. zB ID des angelegten Datansatzes // **** function ParseReturnValue(response) @@ -93,6 +94,7 @@ function ParseReturnValue(response) this.dbdml_return = false; this.dbdml_errormsg = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#errormsg" )); this.dbdml_data = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#data" )); + this.dbdml_warning = getTargetHelper(dsource, subject, rdfService.GetResource( predicateNS + "#warning" )); //debug('data:'+this.dbdml_data+' errormsg:'+this.dbdml_errormsg+' return:'+this.dbdml_return ); } diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php index dc6d4397e..3edd901e9 100644 --- a/content/student/studentDBDML.php +++ b/content/student/studentDBDML.php @@ -63,6 +63,7 @@ $db = new basis_db(); $return = false; $errormsg = 'unknown'; +$warning = ''; $data = ''; $error = false; @@ -391,6 +392,34 @@ if(!$error) if(!$error) { + if($prestudent->reihungstest_id=='' && $_POST['reihungstest_id']!='') + { + $stg = new studiengang($prestudent->studiengang_kz); + $datum_obj = new datum(); + //Hinweis anzeigen, falls diese Person bereits in einem anderen Studiengang (des gleichen typs (b,m,d) + //einen RT absolviert hat bzw angemeldet ist + $qry = "SELECT tbl_studiengang.kurzbzlang, tbl_reihungstest.datum + FROM + public.tbl_prestudent + JOIN public.tbl_studiengang USING(studiengang_kz) + LEFT JOIN public.tbl_reihungstest USING(reihungstest_id) + WHERE + person_id='".addslashes($prestudent->person_id)."' + AND reihungstest_id is not null + AND tbl_studiengang.typ='".$stg->typ."'"; + + if($result = $db->db_query($qry)) + { + if($db->db_num_rows($result)>0) + { + $warning.= "Hinweis: Diese Person hat bereits Reihungstestzuordnungen in anderen Studiengängen:\n\n"; + while($row = $db->db_fetch_object($result)) + { + $warning.= $row->kurzbzlang.' am '.$datum_obj->formatDatum($row->datum,'d.m.Y')."\n"; + } + } + } + } $prestudent->prestudent_id = $_POST['prestudent_id']; $prestudent->aufmerksamdurch_kurzbz = $_POST['aufmerksamdurch_kurzbz']; $prestudent->person_id = $_POST['person_id']; @@ -3070,6 +3099,7 @@ echo ' '.($return?'true':'false').' + diff --git a/content/student/studentoverlay.js.php b/content/student/studentoverlay.js.php index c761eb931..4ba159eb7 100644 --- a/content/student/studentoverlay.js.php +++ b/content/student/studentoverlay.js.php @@ -1462,6 +1462,9 @@ function StudentPrestudentSave() } else { + if(val.dbdml_warning!='') + alert(val.dbdml_warning+"\n\nDaten wurden gespeichert"); + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); StudentSelectID=document.getElementById('student-prestudent-textbox-prestudent_id').value;