diff --git a/cis/private/lehre/notenliste.php b/cis/private/lehre/notenliste.php index 4e1ae2d95..8fd9e823f 100644 --- a/cis/private/lehre/notenliste.php +++ b/cis/private/lehre/notenliste.php @@ -1,47 +1,50 @@ , - * Andreas Oesterreicher - * Rudolf Hangl < rudolf.hangl@technikum-wien.at > - * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > + * Andreas Oesterreicher + * Rudolf Hangl < rudolf.hangl@technikum-wien.at > + * Gerald Simane-Sequens < gerald.simane-sequens@technikum-wien.at > */ /* * Erstellt eine Liste mit den Noten des eingeloggten Studenten * das betreffende Studiensemester kann ausgewaehlt werden */ -require_once('../../../config/cis.config.inc.php'); -require_once('../../../config/global.config.inc.php'); -require_once('../../../include/functions.inc.php'); -require_once('../../../include/studiensemester.class.php'); -require_once('../../../include/datum.class.php'); -require_once('../../../include/note.class.php'); -require_once('../../../include/phrasen.class.php'); -require_once('../../../include/studiengang.class.php'); -require_once('../../../include/lehrveranstaltung.class.php'); -require_once('../../../include/pruefung.class.php'); -require_once('../../../include/benutzerberechtigung.class.php'); +require_once ('../../../config/cis.config.inc.php'); +require_once ('../../../config/global.config.inc.php'); +require_once ('../../../include/functions.inc.php'); +require_once ('../../../include/studiensemester.class.php'); +require_once ('../../../include/datum.class.php'); +require_once ('../../../include/note.class.php'); +require_once ('../../../include/phrasen.class.php'); +require_once ('../../../include/studiengang.class.php'); +require_once ('../../../include/lehrveranstaltung.class.php'); +require_once ('../../../include/pruefung.class.php'); +require_once ('../../../include/benutzerberechtigung.class.php'); +require_once ('../../../include/prestudent.class.php'); $sprache = getSprache(); $p = new phrasen($sprache); -if (!$db = new basis_db()) +if (! $db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); +if (isset($_GET['stsem'])) + $stsem = $_GET['stsem']; +else + $stsem = ''; + echo ' @@ -54,256 +57,343 @@ echo ' - '.$p->t('tools/leistungsbeurteilung').' + ' . $p->t('tools/leistungsbeurteilung') . ' -

'.$p->t('tools/leistungsbeurteilung').'

'; +

' . $p->t('tools/leistungsbeurteilung') . '

'; - -if(isset($_GET['stsem'])) - $stsem = $_GET['stsem']; -else - $stsem = ''; - $user = get_uid(); -if(isset($_GET['uid'])) +if (isset($_GET['uid'])) { // Administratoren duerfen die UID als Parameter uebergeben um die Notenliste // von anderen Personen anzuzeigen - + $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); - if($rechte->isBerechtigt('admin')) - { + if ($rechte->isBerechtigt('admin')) + { $user = $_GET['uid']; - $getParam = "&uid=" . $user; - } - else - $getParam = ""; + $getParam = "&uid=" . $user; + } + else + $getParam = ""; } else - $getParam=''; + $getParam = ''; $datum_obj = new datum(); $error = ''; - -if(!check_student($user)) +if (! check_student($user)) { $error .= $p->t('tools/mussAlsStudentEingeloggtSein'); } else { - $qry = "SELECT vw_student.vorname, vw_student.nachname, tbl_studiengang.studiengang_kz + $qry = "SELECT vw_student.vorname, vw_student.nachname, vw_student.prestudent_id, tbl_studiengang.studiengang_kz FROM public.tbl_studiengang JOIN campus.vw_student USING (studiengang_kz) - WHERE campus.vw_student.uid = ".$db->db_add_param($user).";"; + WHERE campus.vw_student.uid = " . $db->db_add_param($user) . ";"; - if (!$result=$db->db_query($qry)) + if (! $result = $db->db_query($qry)) die($p->t('tools/studentWurdeNichtGefunden')); else { - $row=$db->db_fetch_object($result); + $row = $db->db_fetch_object($result); - $vorname= $row->vorname; + $vorname = $row->vorname; $nachname = $row->nachname; + $prestudent_id = $row->prestudent_id; $stg_obj = new studiengang(); $stg_obj->load($row->studiengang_kz); $stg_name = $stg_obj->bezeichnung_arr[$sprache]; } - - $notenarr=array(); + + $notenarr = array(); $note = new note(); $note->getAll(); - foreach($note->result as $row) - $notenarr[$row->note]=$row->bezeichnung; - - //Aktuelles Studiensemester ermitteln + foreach ($note->result as $row) + { + $notenarr[$row->note]['bezeichnung'] = $row->bezeichnung; + $notenarr[$row->note]['notenwert'] = $row->notenwert; + } + + // Aktuelles Studiensemester ermitteln $stsem_obj = new studiensemester(); - if($stsem=='') + if ($stsem == '') $stsem = $stsem_obj->getaktorNext(); - $stsem_obj->getAll(); - + // Erstes und letztes Studiensemester mit Studenten-Status ermitteln + $prestudent = new prestudent(); + $prestudent->getFirstStatus($prestudent_id, 'Student'); + $firstStudiensemester = $prestudent->studiensemester_kurzbz; + $prestudent->getLastStatus($prestudent_id, null, 'Student'); + $lastStudiensemester = $prestudent->studiensemester_kurzbz; + + $stsem_obj->getStudiensemesterBetween($firstStudiensemester, $lastStudiensemester); echo "
"; - echo "".$p->t('global/name').": $vorname $nachname
"; - echo "".$p->t('global/studiengang').": $stg_name
"; - echo "".$p->t('global/studiensemester')." "; + echo ""; foreach ($stsem_obj->studiensemester as $semrow) { - if($stsem == $semrow->studiensemester_kurzbz) - echo ""; + if ($stsem == $semrow->studiensemester_kurzbz) + echo ""; else - echo ""; + echo ""; } echo "
"; - - //echo "Datum: ".date('d.m.Y')."
"; + + // echo "Datum: ".date('d.m.Y')."
"; echo "
"; - - //Lehrveranstaltungen und Noten holen - if($stsem != "alle") - { - $sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." - AND (tbl_lvgesamtnote.studiensemester_kurzbz = ".$db->db_add_param($stsem)." OR tbl_lvgesamtnote.studiensemester_kurzbz is null) "; - } - else - $sqlFilter = ""; - - $qry = "SELECT + + // Lehrveranstaltungen und Noten holen + if ($stsem != "alle") + { + $sqlFilter = " AND tbl_zeugnisnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " + AND (tbl_lvgesamtnote.studiensemester_kurzbz = " . $db->db_add_param($stsem) . " OR tbl_lvgesamtnote.studiensemester_kurzbz is null) "; + } + else + $sqlFilter = ""; + + $qry = "SELECT tbl_lehrveranstaltung.lehrveranstaltung_id, tbl_zeugnisnote.note, tbl_zeugnisnote.punkte, tbl_lvgesamtnote.note as lvnote, tbl_lvgesamtnote.punkte as lvpunkte, tbl_zeugnisnote.benotungsdatum, tbl_lvgesamtnote.freigabedatum, - tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum + tbl_lvgesamtnote.benotungsdatum as lvbenotungsdatum, + tbl_zeugnisnote.studiensemester_kurzbz AS studiensemester_zeugnis, tbl_lvgesamtnote.studiensemester_kurzbz AS studiensemester_lvnote, + tbl_lehrveranstaltung.zeugnis, tbl_lehrveranstaltung.ects FROM lehre.tbl_lehrveranstaltung, lehre.tbl_zeugnisnote LEFT OUTER JOIN campus.tbl_lvgesamtnote USING (lehrveranstaltung_id, student_uid, studiensemester_kurzbz) WHERE - tbl_zeugnisnote.student_uid = ".$db->db_add_param($user) - .$sqlFilter." + tbl_zeugnisnote.student_uid = " . $db->db_add_param($user) . $sqlFilter . " AND tbl_lehrveranstaltung.lehrveranstaltung_id = tbl_zeugnisnote.lehrveranstaltung_id ORDER BY bezeichnung"; - - if($result=$db->db_query($qry)) + + if ($result = $db->db_query($qry)) { - //Tabelle anzeigen - $tbl= " - - - - "; - if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) - $tbl.=""; - - $tbl.=" "; - if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) - $tbl.=""; - - $tbl.=" - - - - - "; - $i=0; + // Tabelle anzeigen + $tbl = "
".$p->t('global/lehrveranstaltung')."".$p->t('benotungstool/lvNote')."".$p->t('benotungstool/punkte')."".$p->t('benotungstool/zeugnisnote')."".$p->t('benotungstool/punkte')."".$p->t('tools/benotungsdatumDerZeugnisnote')."".$p->t('benotungstool/pruefung')."
"; + $tblHead = " + + "; + if ($stsem == "alle") + $tblHead .= ""; + + $tblHead .= ""; + if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) + $tblHead .= ""; + + $tblHead .= " "; + if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) + $tblHead .= ""; + + $tblHead .= " + + + + "; + $tblBody = ""; + $i = 0; $legende = false; - while($row=$db->db_fetch_object($result)) + $notenSummenArray = array(); + while ($row = $db->db_fetch_object($result)) { $lv_obj = new lehrveranstaltung(); $lv_obj->load($row->lehrveranstaltung_id); - $i++; - $tbl.= ""; - $tbl.= ""; + if ($stsem == "alle") + $tblBody .= ""; - + $tblBody .= ""; + // LV Gesamtnote Punkte - if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) + if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) { - $lvpunkte = ($row->lvpunkte!=''?(float)$row->lvpunkte:''); - $tbl.=""; + $lvpunkte = ($row->lvpunkte != '' ? (float) $row->lvpunkte : ''); + $tblBody .= ""; } - + if ($row->note != $row->lvnote && $row->lvnote != NULL) { $markier = " style='background-color: #FFD999;'"; - $legende=true; + $legende = true; } else $markier = ""; - $tbl .= ""; - - if(defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) + $tblBody .= ""; + + if (defined('CIS_GESAMTNOTE_PUNKTE') && CIS_GESAMTNOTE_PUNKTE) { - $punkte = ($row->punkte!=''?((float)$row->punkte):''); - $tbl.=""; + $punkte = ($row->punkte != '' ? ((float) $row->punkte) : ''); + $tblBody .= ""; } - - $tbl .= ''; - + + $tblBody .= ''; + $pruefung = new pruefung(); - $pruefung->getPruefungen($user, null,$row->lehrveranstaltung_id,$stsem); - - if(count($pruefung->result)>0) + $pruefung->getPruefungen($user, null, $row->lehrveranstaltung_id, $stsem); + + if (count($pruefung->result) > 0) { - $tbl.=''; + $tblBody .= ''; } else - $tbl.=''; - - $tbl .= ""; + $tblBody .= ''; + + $tblBody .= ""; + } + // Durchschnitt und gewichteten Durchschnitt berechnen + $notenSumme = 0; + $notenSummeGewichtet = 0; + $ectsSumme = 0; + $anzahlLv = 0; + foreach ($notenSummenArray AS $key => $value) + { + if ($value['notenwert'] != '') + { + $anzahlLv++; + $notenSumme += $value['notenwert']; + $ectsSumme += $value['ects']; + $notenSummeGewichtet += $value['notenwert'] * $value['ects']; + } } - - $tbl.= "
" . $p->t('global/lehrveranstaltung') . "" . $p->t('global/studiensemester') . "" . $p->t('benotungstool/lvNote') . "" . $p->t('benotungstool/punkte') . "" . $p->t('benotungstool/zeugnisnote') . "" . $p->t('benotungstool/punkte') . "" . $p->t('tools/benotungsdatumDerZeugnisnote') . "" . $p->t('benotungstool/pruefung') . "
".$lv_obj->bezeichnung_arr[$sprache].($lv_obj->lehrform_kurzbz!="" && $lv_obj->lehrform_kurzbz!=" - "?" (".$lv_obj->lehrform_kurzbz.")":"").""; + $i ++; + $tblBody .= "
" . $lv_obj->bezeichnung_arr[$sprache] . ($lv_obj->lehrform_kurzbz != "" && $lv_obj->lehrform_kurzbz != " - " ? " (" . $lv_obj->lehrform_kurzbz . ")" : "") . "" . ($row->studiensemester_zeugnis != '' ? $row->studiensemester_zeugnis : $row->studiensemester_lvnote) . ""; - //Nur freigegebene Noten anzeigen - if($row->freigabedatum>=$row->lvbenotungsdatum) + $tblBody .= ""; + + // Nur freigegebene Noten anzeigen + if ($row->freigabedatum >= $row->lvbenotungsdatum) { - if(isset($notenarr[$row->lvnote])) - $tbl.=$notenarr[$row->lvnote]; + if (isset($notenarr[$row->lvnote])) + $tblBody .= $notenarr[$row->lvnote]['bezeichnung']; else - $tbl.=$row->lvnote; + $tblBody .= $row->lvnote; + + // Nur Noten, die aufs Zeugnis gedruckt werden für Durchschnittsberechnung addieren + if ($row->zeugnis == true) + { + $notenSummenArray[$row->lehrveranstaltung_id]['notenwert'] = (isset($notenarr[$row->note]['notenwert']) ? $notenarr[$row->note]['notenwert'] : ''); + $notenSummenArray[$row->lehrveranstaltung_id]['ects'] = $row->ects; + } } - - $tbl.= "".$lvpunkte."" . $lvpunkte . ""; + $tblBody .= ""; - if(isset($notenarr[$row->note])) - $tbl.=$notenarr[$row->note]; + if (isset($notenarr[$row->note])) + $tblBody .= $notenarr[$row->note]['bezeichnung']; else - $tbl.=$row->note; + $tblBody .= $row->note; - $tbl .= "".$punkte."" . $punkte . "'.$datum_obj->formatDatum($row->benotungsdatum,'d.m.Y').'' . $datum_obj->formatDatum($row->benotungsdatum, 'Y-m-d') . ''; - foreach($pruefung->result as $row) + $tblBody .= ''; + foreach ($pruefung->result as $row) { - if(isset($notenarr[$row->note])) - $note=$notenarr[$row->note]; + if (isset($notenarr[$row->note])) + $note = $notenarr[$row->note]['bezeichnung']; else - $note=$row->note; - - if($row->punkte!='') - $punkte = ' ('.(float)$row->punkte.')'; - else - $punkte=''; - - $tbl.= $row->pruefungstyp_beschreibung.' '.$datum_obj->formatDatum($row->datum,'d.m.Y').' '.$note.$punkte.'
'; + $note = $row->note; + if ($row->punkte != '') + $punkte = ' (' . (float) $row->punkte . ')'; + else + $punkte = ''; + + $tblBody .= $row->pruefungstyp_beschreibung . ' ' . $datum_obj->formatDatum($row->datum, 'd.m.Y') . ' ' . $note . $punkte . '
'; } - $tbl.='
"; + $tblBody .= ""; + $tblFoot = ""; - if($legende) - $tbl.= "
".$p->t('tools/hinweistextMarkierung')."
"; - if($i==0) + if ($anzahlLv != 0) + $notenDurchschnitt = round($notenSumme / $anzahlLv, 2); + else + $notenDurchschnitt = 0; + + if ($ectsSumme != 0) + $notenDurchschnittGewichtet = round($notenSummeGewichtet / $ectsSumme, 2); + else + $notenDurchschnittGewichtet = 0; + + $tblFoot .= ''; + $tblFoot .= '' . $p->t("tools/notendurchschnittDerZeugnisnote") . ''; + $tblFoot .= ''.$notenDurchschnitt.''; + $tblFoot .= ''; + $tblFoot .= ""; + + $tblFoot .= ''; + $tblFoot .= '' . $p->t("tools/gewichteterNotendurchschnittDerZeugnisnote") . ''; + $tblFoot .= ''.$notenDurchschnittGewichtet.''; + $tblFoot .= ''; + + $tblFoot .= ""; + + $tblFoot .= ""; + + $tbl .= $tblHead.$tblFoot.$tblBody; + + $tbl .= ""; + $tbl .= ""; + if ($legende) + { + $tbl .= ""; + } + $tbl .= "
*" . $p->t('tools/legendeNotendurchschnitt') . "
**" . $p->t('tools/legendeGewichteterNotendurchschnitt') . "
" . $p->t('tools/hinweistextMarkierung') . "
"; + if ($i == 0) echo $p->t('tools/nochKeineBeurteilungEingetragen'); else + { + $tbl .= "


"; echo $tbl; + } } else { diff --git a/include/studiensemester.class.php b/include/studiensemester.class.php index e87f0c5f3..358aa3170 100644 --- a/include/studiensemester.class.php +++ b/include/studiensemester.class.php @@ -1020,72 +1020,134 @@ class studiensemester extends basis_db $this->errormsg = 'Fehler beim Ermitteln des Studiensemesters'; return false; } - } - - /** + } + + /** * Gibt das Wintersemester eines Studienjahres zurück (zb WS2017) + * * @param $studienjahr_kurzbz * @return boolean true, wenn ein Studiensemester gefunden wurde, sonst false */ - public function getWSFromStudienjahr($studienjahr_kurzbz) - { - $qry = " - SELECT studiensemester_kurzbz - FROM tbl_studiensemester - WHERE studienjahr_kurzbz LIKE " . $this->db_add_param($studienjahr_kurzbz) . " - AND studiensemester_kurzbz LIKE 'WS%';"; - - if ($result = $this->db_query($qry)) - { - if($row = $this->db_fetch_object()) + public function getWSFromStudienjahr($studienjahr_kurzbz) + { + $qry = " + SELECT studiensemester_kurzbz + FROM tbl_studiensemester + WHERE studienjahr_kurzbz LIKE " . $this->db_add_param($studienjahr_kurzbz) . " + AND studiensemester_kurzbz LIKE 'WS%';"; + + if ($result = $this->db_query($qry)) + { + if ($row = $this->db_fetch_object()) { - $this->result = $row->studiensemester_kurzbz; - return true; - } - else - { - $this->errormsg = 'Es wurde kein Wintersemester in diesem Studienjahr gefunden'; - return false; - } - } - else - { - $this->errormsg = 'Fehler beim Laden der Daten'; - return false; - } - } - - /** + $this->result = $row->studiensemester_kurzbz; + return true; + } + else + { + $this->errormsg = 'Es wurde kein Wintersemester in diesem Studienjahr gefunden'; + return false; + } + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + + /** * Gibt das Sommersemester eines Studienjahres zurück (zb SS2018) + * * @param $studienjahr_kurzbz * @return boolean true, wenn ein Studiensemester gefunden wurde, sonst false */ - public function getSSFromStudienjahr($studienjahr_kurzbz) - { - $qry = " - SELECT studiensemester_kurzbz - FROM tbl_studiensemester - WHERE studienjahr_kurzbz LIKE " . $this->db_add_param($studienjahr_kurzbz) . " - AND studiensemester_kurzbz LIKE 'SS%';"; - - if ($result = $this->db_query($qry)) - { - if($row = $this->db_fetch_object()) + public function getSSFromStudienjahr($studienjahr_kurzbz) + { + $qry = " + SELECT studiensemester_kurzbz + FROM tbl_studiensemester + WHERE studienjahr_kurzbz LIKE " . $this->db_add_param($studienjahr_kurzbz) . " + AND studiensemester_kurzbz LIKE 'SS%';"; + + if ($result = $this->db_query($qry)) + { + if ($row = $this->db_fetch_object()) { - $this->result = $row->studiensemester_kurzbz; - return true; - } - else - { - $this->errormsg = 'Es wurde kein Sommersemester in diesem Studienjahr gefunden'; - return false; - } - } - else - { - $this->errormsg = 'Fehler beim Laden der Daten'; - return false; - } - } + $this->result = $row->studiensemester_kurzbz; + return true; + } + else + { + $this->errormsg = 'Es wurde kein Sommersemester in diesem Studienjahr gefunden'; + return false; + } + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } + } + + /** + * Gibt die Studiensemester zwischen $studiensemesterStart und $studiensemesterEnde zurück + * Wenn $inklusive true ist (default), werden auch $studiensemesterStart und $studiensemesterEnde selbst zurückgegeben + * + * @param string $studiensemesterStart + * @param string $studiensemesterEnde + * @param boolean $inklusive Default true. + * @return boolean true, wenn ein Studiensemester gefunden wurde, sonst false + */ + public function getStudiensemesterBetween($studiensemesterStart, $studiensemesterEnde, $inklusive = true) + { + if ($studiensemesterStart == '' || $studiensemesterStart == '') + { + $this->errormsg = 'Es muss ein Wert bei $studiensemesterStart und bei $studiensemesterEnde vorhanden sein'; + return false; + } + if ($inklusive = true) + $equalSign = '='; + else + $equalSign = ''; + $qry = " + SELECT * + FROM PUBLIC.tbl_studiensemester + WHERE start >" . $equalSign . " ( + SELECT start + FROM PUBLIC.tbl_studiensemester + WHERE studiensemester_kurzbz = " . $this->db_add_param($studiensemesterStart) . " + ) + AND ende <" . $equalSign . " ( + SELECT ende + FROM PUBLIC.tbl_studiensemester + WHERE studiensemester_kurzbz = " . $this->db_add_param($studiensemesterEnde) . " + ) + ORDER BY start DESC;"; + + if($this->db_query($qry)) + { + while($row = $this->db_fetch_object()) + { + $stsem_obj = new studiensemester(); + + $stsem_obj->studiensemester_kurzbz = $row->studiensemester_kurzbz; + $stsem_obj->start = $row->start; + $stsem_obj->ende = $row->ende; + $stsem_obj->bezeichnung = $row->bezeichnung; + $stsem_obj->studienjahr_kurzbz = $row->studienjahr_kurzbz; + $stsem_obj->beschreibung = $row->beschreibung; + $stsem_obj->onlinebewerbung = $row->onlinebewerbung; + + $this->studiensemester[] = $stsem_obj; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Studiensemester'; + return false; + } + } } ?> \ No newline at end of file diff --git a/locale/en-US/tools.php b/locale/en-US/tools.php index 177851def..95b5a6ae4 100644 --- a/locale/en-US/tools.php +++ b/locale/en-US/tools.php @@ -25,10 +25,10 @@ $this->phrasen['tools/nochKeineBeurteilungEingetragen']='No grade has been enter $this->phrasen['tools/fehlerBeimAuslesenDerNoten']='Error reading the grades.'; $this->phrasen['tools/benotungsdatumDerZeugnisnote']='Date of grading'; $this->phrasen['tools/hinweistextMarkierung']='The marking indicates those entries where the grade for the course is different from the grade on the report card.The grade on the report card is the valid one.
Should these details not be correct please contact the Administrative Assistant responsible.'; -$this->phrasen['tools/notendurchschnittDerZeugnisnote']='Average of final grade*'; -$this->phrasen['tools/gewichteterNotendurchschnittDerZeugnisnote']='Weighted** average of final grade*'; -$this->phrasen['tools/legendeGewichteterNotendurchschnitt']='The weighted average grade is calculated using the grade of the course, multiplied with its ECTS, divided by the sum of all ECTS'; -$this->phrasen['tools/legendeNotendurchschnitt']='Please note that extracurricular courses (eg elective courses) may distort the calculated average grade'; +$this->phrasen['tools/notendurchschnittDerZeugnisnote']='Average grade on the certificate*'; +$this->phrasen['tools/gewichteterNotendurchschnittDerZeugnisnote']='Weighted** grade point average on the certificate*'; +$this->phrasen['tools/legendeGewichteterNotendurchschnitt']='he weighted grade point average is calculated from the grade of the course multiplied by their ECTS divided by the sum of all ECTS'; +$this->phrasen['tools/legendeNotendurchschnitt']='Please note that extracurricular courses (eg electives) may distort the calculated grade point average'; //Zahlungen $this->phrasen['tools/zahlungen']='Payments';