aboutsummaryrefslogtreecommitdiff
path: root/lib/models/Modul.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/models/Modul.php')
-rw-r--r--lib/models/Modul.php138
1 files changed, 94 insertions, 44 deletions
diff --git a/lib/models/Modul.php b/lib/models/Modul.php
index 80e2753..ddd0367 100644
--- a/lib/models/Modul.php
+++ b/lib/models/Modul.php
@@ -150,7 +150,8 @@ class Modul extends ModuleManagementModelTreeItem
*/
public static function getEnriched($modul_id)
{
- $modul = parent::getEnrichedByQuery('
+ $modul = parent::getEnrichedByQuery(
+ '
SELECT mvv_modul.*, mvv_modul_deskriptor.bezeichnung AS bezeichnung,
COUNT(DISTINCT(mvv_modulteil.modulteil_id)) AS count_modulteile
FROM mvv_modul
@@ -187,12 +188,21 @@ class Modul extends ModuleManagementModelTreeItem
* to filter the result set.
* @return SimpleORMapCollection A collection of module objects.
*/
- public static function getAllEnriched($sortby = 'chdate', $order = 'ASC',
- $row_count = null, $offset = null, $filter = null)
- {
- $sortby = self::createSortStatement($sortby, $order, 'bezeichnung,chdate',
- words('bezeichnung count_modulteile chdate'));
- return parent::getEnrichedByQuery('
+ public static function getAllEnriched(
+ $sortby = 'chdate',
+ $order = 'ASC',
+ $row_count = null,
+ $offset = null,
+ $filter = null
+ ) {
+ $sortby = self::createSortStatement(
+ $sortby,
+ $order,
+ 'bezeichnung,chdate',
+ words('bezeichnung count_modulteile chdate')
+ );
+ return parent::getEnrichedByQuery(
+ '
SELECT mvv_modul.*, mvv_modul_deskriptor.bezeichnung AS bezeichnung,
COUNT(DISTINCT(mvv_modulteil.modulteil_id)) AS count_modulteile
FROM mvv_modul
@@ -263,7 +273,8 @@ class Modul extends ModuleManagementModelTreeItem
public function getChildren()
{
$_SESSION['MVV/Lvgruppe/trail_parent_id'] = $this->getId();
- return Lvgruppe::getEnrichedByQuery('
+ return Lvgruppe::getEnrichedByQuery(
+ '
SELECT ml.*
FROM mvv_lvgruppe ml
LEFT JOIN mvv_lvgruppe_modulteil USING (lvgruppe_id)
@@ -289,7 +300,8 @@ class Modul extends ModuleManagementModelTreeItem
return StgteilabschnittModul::findBySQL('modul_id = ?', [$this->id]);
}
- public function getDisplayName($options = self::DISPLAY_DEFAULT) {
+ public function getDisplayName($options = self::DISPLAY_DEFAULT)
+ {
$options = ($options !== self::DISPLAY_DEFAULT)
? $options : self::DISPLAY_CODE;
$with_code = $options & self::DISPLAY_CODE;
@@ -320,11 +332,16 @@ class Modul extends ModuleManagementModelTreeItem
if ($end_sem || $start_sem) {
if ($end_sem) {
if ($start_sem->name == $end_sem->name) {
- $ret .= sprintf(_('gültig im %s'),
- $start_sem->name);
+ $ret .= sprintf(
+ _('gültig im %s'),
+ $start_sem->name
+ );
} else {
- $ret .= sprintf(_('gültig %s bis %s'),
- $start_sem->name, $end_sem->name);
+ $ret .= sprintf(
+ _('gültig %s bis %s'),
+ $start_sem->name,
+ $end_sem->name
+ );
}
} else {
$ret .= sprintf(_('gültig ab %s'), $start_sem->name);
@@ -368,7 +385,8 @@ class Modul extends ModuleManagementModelTreeItem
* @param bool If true returns always a new descriptor
* @return object The Deskriptor.
*/
- public function getDeskriptor($language = null, $force_new = false) {
+ public function getDeskriptor($language = null, $force_new = false)
+ {
if (!isset($GLOBALS['MVV_MODUL_DESKRIPTOR']['SPRACHE']['values'][$language])) {
$language = $this->default_language;
}
@@ -391,7 +409,8 @@ class Modul extends ModuleManagementModelTreeItem
* @param string $institut_id The id of the institute to assign.
* @return boolean True if institute was successfully assigned.
*/
- public function assignResponsibleInstitute($institut_id) {
+ public function assignResponsibleInstitute($institut_id)
+ {
$institute = Fachbereich::find($institut_id);
if (!$institute) {
@@ -420,7 +439,8 @@ class Modul extends ModuleManagementModelTreeItem
*
* @param array $institut_ids Array of institute ids.
*/
- public function assignInstitutes($institut_ids) {
+ public function assignInstitutes($institut_ids)
+ {
$institutes = [];
foreach ($institut_ids as $pos => $institut_id) {
$modul_inst = new ModulInst();
@@ -456,7 +476,8 @@ class Modul extends ModuleManagementModelTreeItem
}
$this->languages = SimpleORMapCollection::createFromArray(
- $assigned_languages);
+ $assigned_languages
+ );
}
public function getResponsibleInstitutes()
@@ -550,7 +571,8 @@ class Modul extends ModuleManagementModelTreeItem
public static function findBySearchTerm($term, $filter = null)
{
$term = '%' . $term . '%';
- return parent::getEnrichedByQuery("
+ return parent::getEnrichedByQuery(
+ "
SELECT mvv_modul.*,
CONCAT(mvv_modul_deskriptor.bezeichnung, ' (', code, ')') AS name
FROM mvv_modul
@@ -564,7 +586,7 @@ class Modul extends ModuleManagementModelTreeItem
WHERE (code LIKE :term OR mvv_modul_deskriptor.bezeichnung LIKE :term) "
. self::getFilterSql($filter) . "
ORDER BY name",
- [':term' => $term]
+ [':term' => $term]
);
}
@@ -578,7 +600,8 @@ class Modul extends ModuleManagementModelTreeItem
*/
public static function findByStgteilAbschnitt($abschnitt_id, $filter)
{
- return parent::getEnrichedByQuery('
+ return parent::getEnrichedByQuery(
+ '
SELECT mvv_modul.* FROM mvv_modul
LEFT JOIN mvv_stgteilabschnitt_modul USING(modul_id)
LEFT JOIN semester_data start_sem
@@ -608,12 +631,21 @@ class Modul extends ModuleManagementModelTreeItem
* @param int $offset
* @return array Array of Module.
*/
- public static function findByInstitut($sortby = 'chdate', $order = 'ASC',
- $filter = [], $row_count = null, $offset = null)
- {
- $sortby = self::createSortStatement($sortby, $order, 'chdate',
- ['count_modulteile', 'bezeichnung']);
- return parent::getEnrichedByQuery('
+ public static function findByInstitut(
+ $sortby = 'chdate',
+ $order = 'ASC',
+ $filter = [],
+ $row_count = null,
+ $offset = null
+ ) {
+ $sortby = self::createSortStatement(
+ $sortby,
+ $order,
+ 'chdate',
+ ['count_modulteile', 'bezeichnung']
+ );
+ return parent::getEnrichedByQuery(
+ '
SELECT mvv_modul.*, mvv_modul_deskriptor.bezeichnung,
COUNT(DISTINCT(mvv_modulteil.modulteil_id)) AS count_modulteile
FROM mvv_modul
@@ -645,7 +677,8 @@ class Modul extends ModuleManagementModelTreeItem
*/
public static function findByLvgruppe($lvgruppe_id)
{
- return parent::getEnrichedByQuery('
+ return parent::getEnrichedByQuery(
+ '
SELECT mm.*
FROM mvv_modul mm
LEFT JOIN mvv_modulteil mmt USING(modul_id)
@@ -663,11 +696,16 @@ class Modul extends ModuleManagementModelTreeItem
* @param array $modul_ids Ids of modules.
* @return object a SimpleORMapColection of institutes.
*/
- public static function getAssignedInstitutes($sortby = 'name',
- $order = 'ASC', $modul_ids = [])
- {
- return self::getAllAssignedInstitutes($sortby, $order,
- ['mvv_modul.modul_id' => $modul_ids]);
+ public static function getAssignedInstitutes(
+ $sortby = 'name',
+ $order = 'ASC',
+ $modul_ids = []
+ ) {
+ return self::getAllAssignedInstitutes(
+ $sortby,
+ $order,
+ ['mvv_modul.modul_id' => $modul_ids]
+ );
}
/**
@@ -679,12 +717,21 @@ class Modul extends ModuleManagementModelTreeItem
* @param array $filter Array of filter.
* @return array Array of found Fachbereiche.
*/
- public static function getAllAssignedInstitutes($sortby = 'name',
- $order = 'ASC', $filter = null, $row_count = null, $offset = null)
- {
- $sortby = Fachbereich::createSortStatement($sortby, $order, 'name',
- ['count_objects']);
- return Fachbereich::getEnrichedByQuery('
+ public static function getAllAssignedInstitutes(
+ $sortby = 'name',
+ $order = 'ASC',
+ $filter = null,
+ $row_count = null,
+ $offset = null
+ ) {
+ $sortby = Fachbereich::createSortStatement(
+ $sortby,
+ $order,
+ 'name',
+ ['count_objects']
+ );
+ return Fachbereich::getEnrichedByQuery(
+ '
SELECT Institute.*,
Institute.Name as `name`,
Institute.Institut_id AS institut_id,
@@ -699,7 +746,7 @@ class Modul extends ModuleManagementModelTreeItem
ON (mvv_modul.end = end_sem.semester_id)
'.Fachbereich::getFilterSql($filter, true).'
GROUP BY institut_id ORDER BY ' . $sortby,
- [],
+ [],
$row_count,
$offset
);
@@ -761,7 +808,8 @@ class Modul extends ModuleManagementModelTreeItem
if ($filter_sql == '') {
return [];
}
- $stmt = DBManager::get()->prepare('
+ $stmt = DBManager::get()->prepare(
+ '
SELECT DISTINCT mvv_modul.modul_id
FROM mvv_modul
LEFT JOIN mvv_modulteil
@@ -868,7 +916,7 @@ class Modul extends ModuleManagementModelTreeItem
$ret['start'] = true;
$messages[] = _('Ungültiges Semester.');
$rejected = true;
- } else if ($this->end) {
+ } elseif ($this->end) {
$end_sem = Semester::find($this->end);
if ($end_sem) {
if ($start_sem->beginn > $end_sem->beginn) {
@@ -882,7 +930,7 @@ class Modul extends ModuleManagementModelTreeItem
$rejected = true;
}
}
- } else {
+ } else {
$ret['start'] = true;
$messages[] = _('Bitte ein Startsemester angeben.');
$rejected = true;
@@ -897,8 +945,10 @@ class Modul extends ModuleManagementModelTreeItem
$existing = $this->findBySql('code = ' . DBManager::get()->quote($this->code));
if (sizeof($existing)) {
$ret['code'] = true;
- $messages[] = sprintf(_('Es existiert bereits ein Modul mit dem Code "%s"!'),
- $this->code);
+ $messages[] = sprintf(
+ _('Es existiert bereits ein Modul mit dem Code "%s"!'),
+ $this->code
+ );
$rejected = true;
}
}