diff --git a/cis/private/profile/anwesenheit.php b/cis/private/profile/anwesenheit.php index 21bdd676c..69f359cdf 100644 --- a/cis/private/profile/anwesenheit.php +++ b/cis/private/profile/anwesenheit.php @@ -72,7 +72,7 @@ if(!$semester || !array_key_exists($semester, $alle_semester)) $semester = key($alle_semester); } -$student->get_lv($uid, $semester); +//$student->get_lv($uid, $semester); ?> @@ -100,25 +100,24 @@ $student->get_lv($uid, $semester); '; - if($student->result) + $anwesenheit = new anwesenheit(); + $anwesenheit->loadAnwesenheitStudiensemester($semester, $uid); + if($anwesenheit->result) { - foreach($student->result as $lv) + foreach($anwesenheit->result as $aw) { - - $stunden_gesamt = $stundenplan->getStunden($lv->lehreinheit_id); - - if(!$stunden_gesamt) + if(!$aw->gesamtstunden) continue; - $fehlstunden = $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id); - $le_erledigt = $fehlstunden + $anwesenheit->getAnwesenheit($uid, $lv->lehreinheit_id, true); - $anwesenheit_relativ = ($stunden_gesamt - $fehlstunden) / $stunden_gesamt * 100; + $fehlstunden = $aw->nichtanwesend; + $le_erledigt = $aw->erfassteanwesenheit; + $anwesenheit_relativ = $aw->prozent; echo '
- '.$db->convert_html_chars($lv->bezeichnung).' ('.$lv->lehrform_kurzbz.') + '.$db->convert_html_chars($aw->bezeichnung).'
@@ -126,7 +125,7 @@ $student->get_lv($uid, $semester);
'.round($anwesenheit_relativ, 1).'% - '.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$stunden_gesamt.']'; + '.$p->t('anwesenheitsliste/leAbgeschlossen').' ['.$le_erledigt.'/'.$aw->gesamtstunden.']'; if($fehlstunden) { @@ -134,8 +133,9 @@ $student->get_lv($uid, $semester); >>
'; - $abwesend_termine = $anwesenheit->getAbwesendTermine($uid, $lv->lehreinheit_id); - foreach($abwesend_termine as $termin) + $anwesenheit_termine = new anwesenheit(); + $anwesenheit_termine->getAnwesenheitLehrveranstaltung($uid, $aw->lehrveranstaltung_id, $semester, false); + foreach($anwesenheit_termine->result as $termin) { echo ' diff --git a/cis/private/profile/anwesenheit_lektor.php b/cis/private/profile/anwesenheit_lektor.php index 42caf2545..72e884a8c 100644 --- a/cis/private/profile/anwesenheit_lektor.php +++ b/cis/private/profile/anwesenheit_lektor.php @@ -173,7 +173,7 @@ if($lehreinheit_id)
'.$p->t('global/datum').''.$p->t('anwesenheitsliste/fehlstunden').'
'.$datum_obj->formatDatum($termin->datum,'d.m.Y').'
'; - $abwesend_termine = $anwesenheit->getAbwesendTermine($student->uid, $le->lehreinheit_id); + $abwesend_termine = $anwesenheit->getAbwesendTermine($student->uid, $lehreinheit_id); foreach($abwesend_termine as $termin) { diff --git a/content/anwesenheit.js.php b/content/anwesenheit.js.php new file mode 100644 index 000000000..1ae9d62d7 --- /dev/null +++ b/content/anwesenheit.js.php @@ -0,0 +1,56 @@ + + */ +require_once('../config/vilesci.config.inc.php'); +?> +// ********** FUNKTIONEN ********** // +var anwesenheitStudentUID=''; + +// **** +// * Laedt die Trees +// **** +function loadanwesenheit(student_uid,lehrveranstaltung_id) +{ + netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); + + anwesenheitStudentUID=student_uid; + + //anwesenheit laden + url = "rdf/anwesenheit.rdf.php?ts="+gettimestamp(); + + if(student_uid!='') + url=url+"&student_uid="+student_uid; + if(lehrveranstaltung_id!='') + url=url+"&lehrveranstaltung_id="+lehrveranstaltung_id; + + var treeanwesenheit=document.getElementById('anwesenheit-tree'); + + //Alte DS entfernen + var oldDatasources = treeanwesenheit.database.GetDataSources(); + while(oldDatasources.hasMoreElements()) + { + treeanwesenheit.database.RemoveDataSource(oldDatasources.getNext()); + } + + var rdfService = Components.classes["@mozilla.org/rdf/rdf-service;1"].getService(Components.interfaces.nsIRDFService); + var TerminTreeDatasource = rdfService.GetDataSource(url); + TerminTreeDatasource.QueryInterface(Components.interfaces.nsIRDFRemoteDataSource); + treeanwesenheit.database.AddDataSource(TerminTreeDatasource); + +} diff --git a/content/anwesenheit.xul.php b/content/anwesenheit.xul.php new file mode 100644 index 000000000..7fc6f177e --- /dev/null +++ b/content/anwesenheit.xul.php @@ -0,0 +1,107 @@ + + */ +header("Cache-Control: no-cache"); +header("Cache-Control: post-check=0, pre-check=0",false); +header("Expires Mon, 26 Jul 1997 05:00:00 GMT"); +header("Pragma: no-cache"); +header("Content-type: application/vnd.mozilla.xul+xml"); + +require_once('../config/vilesci.config.inc.php'); + +echo ''."\n"; + +echo ''; +echo ''; + +$student_uid = filter_input(INPUT_GET,'student_uid'); +$lehrveranstaltung_id= filter_input(INPUT_GET,'lehrveranstaltung_id'); + +?> + + + +
'.$p->t('global/datum').''.$p->t('anwesenheitsliste/fehlstunden').'