mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-25 00:24:35 +00:00
Gradelist
- added additional Informations for courses - only display courses where the person is assigned to - added SWS Sum - Improved Multilanguage support
This commit is contained in:
@@ -28,6 +28,7 @@ class Gradelist extends Auth_Controller
|
||||
$this->load->model('education/zeugnisnote_model', 'ZeugnisnoteModel');
|
||||
$this->load->model('education/lehrveranstaltung_model', 'LehrveranstaltungModel');
|
||||
$this->load->model('codex/note_model', 'NoteModel');
|
||||
$this->load->model('education/lehrveranstaltung_model', 'LehrveranstaltungModel');
|
||||
|
||||
$this->loadPhrases(
|
||||
array(
|
||||
@@ -163,6 +164,14 @@ class Gradelist extends Auth_Controller
|
||||
'studienplan_bezeichnung' => $stpl_bezeichnung,
|
||||
);
|
||||
}
|
||||
$result_zuordnung = $this->LehrveranstaltungModel->getLvsByStudent($uid, $row_status->studiensemester_kurzbz);
|
||||
if(isSuccess($result_zuordnung) && hasData($result_zuordnung))
|
||||
{
|
||||
$this->setZuordnung(
|
||||
$result_zuordnung,
|
||||
$courses['semester'][$row_status->studiensemester_kurzbz]['lvs']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// Load Grades and add to studyplan
|
||||
@@ -186,6 +195,7 @@ class Gradelist extends Auth_Controller
|
||||
if (!isset($row_noten->found))
|
||||
{
|
||||
$result_lv = $this->LehrveranstaltungModel->load($row_noten->lehrveranstaltung_id);
|
||||
$result_stg = $this->StudiengangModel->load($result_lv->retval[0]->studiengang_kz);
|
||||
$courses['semester'][$row_noten->studiensemester_kurzbz]['lvs_nonstpl'][] = array(
|
||||
'lehrveranstaltung_id' => $row_noten->lehrveranstaltung_id,
|
||||
'lehrtyp_kurzbz' => $result_lv->retval[0]->lehrtyp_kurzbz,
|
||||
@@ -194,13 +204,20 @@ class Gradelist extends Auth_Controller
|
||||
'sws' => $result_lv->retval[0]->sws,
|
||||
'zeugnis' => $result_lv->retval[0]->zeugnis,
|
||||
'bezeichnung' => $result_lv->retval[0]->bezeichnung,
|
||||
'kurzbz' => $result_lv->retval[0]->kurzbz,
|
||||
'ects' => $result_lv->retval[0]->ects,
|
||||
'semester' => $result_lv->retval[0]->semester,
|
||||
'note' => $row_noten->note,
|
||||
'datum' => $row_noten->benotungsdatum
|
||||
'datum' => $row_noten->benotungsdatum,
|
||||
'zugeordnet' => true,
|
||||
'studiengang_kurzbz' => $result_stg->retval[0]->kurzbzlang
|
||||
);
|
||||
if(!isset($courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl']))
|
||||
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl'] = 0;
|
||||
if(!isset($courses['semester'][$row_noten->studiensemester_kurzbz]['data']['swssumme_nonstpl']))
|
||||
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['swssumme_nonstpl'] = 0;
|
||||
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['ectssumme_nonstpl'] += $result_lv->retval[0]->ects;
|
||||
$courses['semester'][$row_noten->studiensemester_kurzbz]['data']['swssumme_nonstpl'] += $result_lv->retval[0]->sws;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,6 +227,8 @@ class Gradelist extends Auth_Controller
|
||||
$num_grades_overall = 0;
|
||||
$sum_ects_overall = 0;
|
||||
$sum_ects_positiv_overall = 0;
|
||||
$sum_sws_overall = 0;
|
||||
$sum_sws_positiv_overall = 0;
|
||||
|
||||
// Calculate Sum and Average
|
||||
foreach ($courses['semester'] as $stsem => $row_lvs)
|
||||
@@ -219,6 +238,8 @@ class Gradelist extends Auth_Controller
|
||||
$num_grades = 0;
|
||||
$sum_ects = 0;
|
||||
$sum_ects_positiv = 0;
|
||||
$sum_sws = 0;
|
||||
$sum_sws_positiv = 0;
|
||||
$sum_grades = 0;
|
||||
$notendurchschnitt = 0;
|
||||
$sum_gradeweighted = 0;
|
||||
@@ -235,8 +256,12 @@ class Gradelist extends Auth_Controller
|
||||
$sum_gradeweighted += $row['ects'] * $this->_grades[$row['note']]['notenwert'];
|
||||
}
|
||||
$sum_ects += $row['ects'];
|
||||
$sum_sws += $row['sws'];
|
||||
if ($this->_grades[$row['note']]['positiv'])
|
||||
{
|
||||
$sum_ects_positiv += $row['ects'];
|
||||
$sum_sws_positiv += $row['sws'];
|
||||
}
|
||||
}
|
||||
if ($num_grades > 0)
|
||||
$notendurchschnitt = $sum_grades / $num_grades;
|
||||
@@ -254,11 +279,15 @@ class Gradelist extends Auth_Controller
|
||||
$sum_ectsweighted_overall += $sum_ectsweighted;
|
||||
$sum_ects_overall += $sum_ects;
|
||||
$sum_ects_positiv_overall += $sum_ects_positiv;
|
||||
$sum_sws_overall += $sum_sws;
|
||||
$sum_sws_positiv_overall += $sum_sws_positiv;
|
||||
|
||||
$courses['semester'][$stsem]['data']['notendurchschnitt'] = number_format($notendurchschnitt, 2);
|
||||
$courses['semester'][$stsem]['data']['notendurchschnittgewichtet'] = number_format($notendurchschnittgewichtet, 2);
|
||||
$courses['semester'][$stsem]['data']['ectssumme'] = number_format($sum_ects,2);
|
||||
$courses['semester'][$stsem]['data']['ectssumme_positiv'] = number_formaT($sum_ects_positiv,2);
|
||||
$courses['semester'][$stsem]['data']['ectssumme_positiv'] = number_format($sum_ects_positiv,2);
|
||||
$courses['semester'][$stsem]['data']['swssumme'] = number_format($sum_sws,2);
|
||||
$courses['semester'][$stsem]['data']['swssumme_positiv'] = number_format($sum_sws_positiv,2);
|
||||
}
|
||||
|
||||
if ($num_grades_overall > 0)
|
||||
@@ -275,7 +304,9 @@ class Gradelist extends Auth_Controller
|
||||
'notendurchschnitt' => number_format($notendurchschnitt, 2),
|
||||
'notendurchschnittgewichtet' => number_format($notendurchschnittgewichtet, 2),
|
||||
'ectssumme' => $sum_ects_overall,
|
||||
'ectssumme_positiv' => $sum_ects_positiv_overall
|
||||
'ectssumme_positiv' => $sum_ects_positiv_overall,
|
||||
'swssumme' => $sum_sws_overall,
|
||||
'swssumme_positiv' => $sum_sws_positiv_overall
|
||||
);
|
||||
return $courses;
|
||||
}
|
||||
@@ -306,6 +337,37 @@ class Gradelist extends Auth_Controller
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks if the Student is Assigned to this course and marks the course
|
||||
* @param $zuordnung reference to array of all assigned courses.
|
||||
* @param $courses reference to array of all courses.
|
||||
* @param $studiensemester_kurzbz Studiensemester of the Course and Grades
|
||||
*/
|
||||
private function setZuordnung(&$zuordnung, &$courses)
|
||||
{
|
||||
$subtree_zugeordnet = false;
|
||||
foreach ($courses as $key => $value)
|
||||
{
|
||||
foreach ($zuordnung->retval as $zuordnungkey => $row_zuordnung)
|
||||
{
|
||||
if ($row_zuordnung->lehrveranstaltung_id == $value['lehrveranstaltung_id'])
|
||||
{
|
||||
$courses[$key]['zugeordnet'] = true;
|
||||
$subtree_zugeordnet = true;
|
||||
}
|
||||
if (isset($value['childs']))
|
||||
{
|
||||
if ($this->setZuordnung($zuordnung, $courses[$key]['childs']) === true)
|
||||
{
|
||||
$courses[$key]['zugeordnet'] = true;
|
||||
$subtree_zugeordnet = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $subtree_zugeordnet;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reads all the Courses recursivly and Returns an Array with the Grades and ECTS
|
||||
* @param $courses array of courses
|
||||
@@ -320,7 +382,8 @@ class Gradelist extends Auth_Controller
|
||||
{
|
||||
$grades[] = array(
|
||||
'note' => $row['note'],
|
||||
'ects' => $row['ects']
|
||||
'ects' => $row['ects'],
|
||||
'sws' => $row['sws']
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user