diff --git a/content/fasDBDML.php b/content/fasDBDML.php index ca8cf5aef..90f8a8f15 100644 --- a/content/fasDBDML.php +++ b/content/fasDBDML.php @@ -689,6 +689,108 @@ if(!$error) } } } + elseif(isset($_POST['type']) && $_POST['type']=='anwesenheittogglemitarbeiter') + { + if(!$rechte->isBerechtigt('student/anwesenheit')) + { + $return = false; + $errormsg = 'Sie haben keine Berechtigung fuer diese Aktion'; + $data = ''; + $error = true; + } + else + { + if(isset($_POST['lehreinheit_id']) && isset($_POST['datum'])) + { + $lehreinheit_id = $_POST['lehreinheit_id']; + $datum = $_POST['datum']; + + if($_POST['setanwesend']=='false') + { + // Anwesenheit loeschen + $anwesenheit = new anwesenheit(); + if($anwesenheit->getAnwesenheitLehreinheit($lehreinheit_id, $datum)) + { + $return = true; + $errormsg = ""; + foreach($anwesenheit->result as $row) + { + $aw = new anwesenheit(); + if(!$aw->delete($row->anwesenheit_id)) + { + $errormsg.=$aw->errormsg; + $return = false; + } + } + } + else + { + $return = false; + $errormsg = $anwesenheit->errormsg; + } + } + else + { + $error = false; + // Anwesenheit bei allen zugeteilten Studierenden setzen + // Teilnehmer ermitteln + $einheiten = 0; + // Anzahl der Einheiten ermitteln + $qry = "SELECT distinct stunde + FROM + lehre.tbl_stundenplan + WHERE + lehreinheit_id=".$db->db_add_param($lehreinheit_id)." + AND datum=".$db->db_add_param($datum).";"; + if($result = $db->db_query($qry)) + { + $einheiten = $db->db_num_rows($result); + } + else + { + $return = false; + $error = true; + $errormsg = 'Fehler beim Ermitteln der Einheiten'; + } + + if(!$error) + { + $qry = "SELECT distinct uid, vorname, nachname, person_id + FROM + campus.vw_student_lehrveranstaltung + JOIN public.tbl_benutzer USING(uid) + JOIN public.tbl_person USING(person_id) WHERE lehreinheit_id=".$db->db_add_param($lehreinheit_id); + + if($result = $db->db_query($qry)) + { + while($row = $db->db_fetch_object($result)) + { + $anwesenheit = new anwesenheit(); + $anwesenheit->uid = $row->uid; + $anwesenheit->einheiten = $einheiten; + $anwesenheit->lehreinheit_id = $lehreinheit_id; + $anwesenheit->datum = $datum; + $anwesenheit->anwesend = true; + $anwesenheit->anmerkung; + $anwesenheit->save(); + } + $return = true; + } + else + { + $return = false; + $erorrmsg = 'Fehler beim Ermitteln der Studierenden'; + } + } + } + } + else + { + $return = false; + $errormsg = 'Fehlerhafte Parameteruebergabe'; + } + } + } else { $return = false; diff --git a/content/mitarbeiter/mitarbeiteroverlay.js.php b/content/mitarbeiter/mitarbeiteroverlay.js.php index 0b81b05da..15a333dfd 100644 --- a/content/mitarbeiter/mitarbeiteroverlay.js.php +++ b/content/mitarbeiter/mitarbeiteroverlay.js.php @@ -717,6 +717,10 @@ function MitarbeiterAuswahl() if(document.getElementById('mitarbeiter-tab-vertrag')) MitarbeiterVertragLoad(person_id) + // Notizen laden + var mitarbeiternotiz = document.getElementById('mitarbeiter-box-notizen'); + mitarbeiternotiz.LoadNotizTree('','','','',person_id,'','','',''); + // Selektierungsfunktion der Addons aufrufen for(i in addon) { diff --git a/content/mitarbeiter/mitarbeiteroverlay.xul.php b/content/mitarbeiter/mitarbeiteroverlay.xul.php index 1eb568757..b73d0f5b9 100644 --- a/content/mitarbeiter/mitarbeiteroverlay.xul.php +++ b/content/mitarbeiter/mitarbeiteroverlay.xul.php @@ -261,6 +261,7 @@ echo ' + @@ -275,6 +276,9 @@ echo ''; ?>