feature(Studium LvModal): checks whether the lv has stundenplan entries and disables menu option if not/ checks the lvevaluierung information and adds it to the lvmodal information

This commit is contained in:
SimonGschnell
2025-05-07 11:03:12 +02:00
parent b5d3bf3f1e
commit 7d095b4998
6 changed files with 93 additions and 11 deletions
@@ -17,6 +17,9 @@
*/
if (! defined('BASEPATH')) exit('No direct script access allowed');
use CI3_Events as Events;
class Studium extends FHCAPI_Controller
{
@@ -29,6 +32,7 @@ class Studium extends FHCAPI_Controller
'getStudienAllSemester'=> self::PERM_LOGGED,
'getStudiengaengeForStudienSemester'=> self::PERM_LOGGED,
'getStudienplaeneBySemester'=> self::PERM_LOGGED,
'getLvEvaluierungInfo'=> self::PERM_LOGGED,
]);
$this->load->model('crm/Student_model', 'StudentModel');
@@ -173,6 +177,14 @@ class Studium extends FHCAPI_Controller
$this->terminateWithSuccess($result);
}
public function getLvEvaluierungInfo($studiensemester_kurzbz, $lehrveranstaltung_id){
$result = [];
Events::trigger('lvEvaluierungsInfo', function & () use (&$result) {
return $result;
},$lehrveranstaltung_id, $studiensemester_kurzbz);
$this->terminateWithSuccess($result);
}
public function getStudiengaengeForStudienSemester($studiensemester){
$studiengaenge = $this->computeStudiengaenge($studiensemester);
$this->terminateWithSuccess($studiengaenge);
@@ -259,6 +271,8 @@ class Studium extends FHCAPI_Controller
},$lektoren);
return $lektoren;
}
}
@@ -36,6 +36,7 @@ class Stundenplan extends FHCAPI_Controller
'StundenplanEvents' => self::PERM_LOGGED,
'getLehreinheitStudiensemester' => self::PERM_LOGGED,
'studiensemesterDateInterval' => self::PERM_LOGGED,
'getLvStundenplanForStudiensemester' => self::PERM_LOGGED,
]);
$this->load->library('LogLib');
@@ -85,11 +86,6 @@ class Stundenplan extends FHCAPI_Controller
{
$stundenplan_events = array();
}
else
{
$stundenplan_events = $this->getDataOrTerminateWithError($stundenplan_events);
}
// fetching moodle events
$moodle_start_date = new DateTime($start_date);
$moodle_start_date = $moodle_start_date->getTimestamp();
@@ -154,6 +150,19 @@ class Stundenplan extends FHCAPI_Controller
$studiensemester =current($this->getDataOrTerminateWithError($studiensemester));
$this->terminateWithSuccess($studiensemester);
}
public function getLvStundenplanForStudiensemester($studiensemester,$lvid){
$this->load->library('StundenplanLib');
$this->load->model('organisation/Studiensemester_model','StudiensemesterModel');
$studiensemester_result = $this->StudiensemesterModel->loadWhere(["studiensemester_kurzbz"=>$studiensemester]);
$studiensemester_result = current($this->getDataOrTerminateWithError($studiensemester_result));
$timespan_start = new DateTime($studiensemester_result->start);
$timespan_ende = new DateTime($studiensemester_result->ende);
$stundenplan = $this->stundenplanlib->getStundenplan(date_format($timespan_start, 'Y-m-d'),date_format($timespan_ende, 'Y-m-d'), $lvid);
$this->terminateWithSuccess($stundenplan);
}
/**