From 5255e6166df3c040c538397ca8a6095c281660fd Mon Sep 17 00:00:00 2001 From: alex Date: Fri, 6 Sep 2019 15:49:47 +0200 Subject: [PATCH 1/3] crm/Prestudent_model, education/Lehrveransaltung_mode, person/Person_model: models are loaded in constructor to avoid multiple load --- application/models/crm/Prestudent_model.php | 6 ++---- application/models/education/Lehrveranstaltung_model.php | 8 +++----- application/models/person/Person_model.php | 6 +++--- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/application/models/crm/Prestudent_model.php b/application/models/crm/Prestudent_model.php index ffc6afb0e..32673d10d 100644 --- a/application/models/crm/Prestudent_model.php +++ b/application/models/crm/Prestudent_model.php @@ -10,6 +10,8 @@ class Prestudent_model extends DB_Model parent::__construct(); $this->dbTable = 'public.tbl_prestudent'; $this->pk = 'prestudent_id'; + + $this->load->model('crm/prestudentstatus_model', 'PrestudentstatusModel'); } /** @@ -208,7 +210,6 @@ class Prestudent_model extends DB_Model return error('prestudent could not be loaded'); //Prestudentstatus - $this->load->model('crm/prestudentstatus_model', 'PrestudentstatusModel'); $lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id); if ($lastStatus->error) @@ -310,8 +311,6 @@ class Prestudent_model extends DB_Model if (!hasData($prestudents)) return $bewerbungen; - $this->load->model('crm/prestudentstatus_model', 'PrestudentstatusModel'); - foreach ($prestudents->retval as $prestudent) { $lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent->prestudent_id, $studiensemester_kurzbz); @@ -424,7 +423,6 @@ class Prestudent_model extends DB_Model if (!hasData($prestudent)) return false; - $this->load->model('prestudentstatus_model', 'PrestudentstatusModel'); $lastStatus = $this->PrestudentstatusModel->getLastStatus($prestudent_id, null, 'Interessent'); if (!hasData($lastStatus)) diff --git a/application/models/education/Lehrveranstaltung_model.php b/application/models/education/Lehrveranstaltung_model.php index 1685ddf81..1235769ac 100644 --- a/application/models/education/Lehrveranstaltung_model.php +++ b/application/models/education/Lehrveranstaltung_model.php @@ -10,6 +10,9 @@ class Lehrveranstaltung_model extends DB_Model parent::__construct(); $this->dbTable = 'lehre.tbl_lehrveranstaltung'; $this->pk = 'lehrveranstaltung_id'; + + $this->load->model('organisation/studiengang_model', 'StudiengangModel'); + $this->load->model('organisation/studiensemester_model', 'StudiensemesterModel'); } /** @@ -22,8 +25,6 @@ class Lehrveranstaltung_model extends DB_Model */ public function getLehrveranstaltungGroupNames($studiensemester_kurzbz, $ausbildungssemester = null, $studiengang_kz = null, $lehrveranstaltung_ids = null) { - $this->load->model('organisation/studiengang_model', 'StudiengangModel'); - $studiengang_kz_arr = array(); $ausbildungssemester_arr = array(); $lehrveranstaltung_id_arr = array(); @@ -59,7 +60,6 @@ class Lehrveranstaltung_model extends DB_Model } else { - $this->load->model('organisation/studiensemester_model', 'StudiensemesterModel'); foreach ($studiengang_kz_arr as $studiengang_kz_item) { $result = $this->StudiensemesterModel->getAusbildungssemesterByStudiensemesterAndStudiengang($studiensemester_kurzbz, $studiengang_kz_item); @@ -214,8 +214,6 @@ class Lehrveranstaltung_model extends DB_Model */ public function getLvsWithIncomingPlaces($studiensemester_kurzbz) { - $this->load->model('organisation/Studiensemester_model', 'StudiensemesterModel'); - $studsemres = $this->StudiensemesterModel->load($studiensemester_kurzbz); if (!hasData($studsemres)) diff --git a/application/models/person/Person_model.php b/application/models/person/Person_model.php index b689f4fcb..1291427b6 100644 --- a/application/models/person/Person_model.php +++ b/application/models/person/Person_model.php @@ -10,6 +10,9 @@ class Person_model extends DB_Model parent::__construct(); $this->dbTable = 'public.tbl_person'; $this->pk = 'person_id'; + + $this->load->model('person/kontakt_model', 'KontaktModel'); + $this->load->model('person/adresse_model', 'AdresseModel'); } /** @@ -162,9 +165,6 @@ class Person_model extends DB_Model if(count($person->retval) < 1) return success(null); - $this->load->model('person/kontakt_model', 'KontaktModel'); - $this->load->model('person/adresse_model', 'AdresseModel'); - $this->KontaktModel->addDistinct(); $this->KontaktModel->addSelect('kontakttyp, anmerkung, kontakt, zustellung'); $this->KontaktModel->addOrder('kontakttyp'); From 66b605de458a33d9ee4d1d6fd47eac9e0cb427cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Mon, 9 Sep 2019 14:20:07 +0200 Subject: [PATCH 2/3] =?UTF-8?q?Berechtigung=20f=C3=BCr=20das=20L=C3=B6sche?= =?UTF-8?q?n=20von=20Reservierungen=20korrigiert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lvplan/stpl_reserve_list.php | 28 ++++++++++++------------ include/wochenplan.class.php | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/cis/private/lvplan/stpl_reserve_list.php b/cis/private/lvplan/stpl_reserve_list.php index 82f70b612..5e6e1fa85 100644 --- a/cis/private/lvplan/stpl_reserve_list.php +++ b/cis/private/lvplan/stpl_reserve_list.php @@ -23,15 +23,15 @@ require_once('../../../config/cis.config.inc.php'); require_once('../../../include/functions.inc.php'); require_once('../../../include/datum.class.php'); require_once('../../../include/benutzerberechtigung.class.php'); -require_once('../../../include/phrasen.class.php'); -require_once('../../../include/reservierung.class.php'); +require_once('../../../include/phrasen.class.php'); +require_once('../../../include/reservierung.class.php'); if (!$db = new basis_db()) die($p->t('global/fehlerBeimOeffnenDerDatenbankverbindung')); - -$sprache = getSprache(); -$p=new phrasen($sprache); - + +$sprache = getSprache(); +$p=new phrasen($sprache); + $uid = get_uid(); if (isset($_GET['id'])) @@ -67,7 +67,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) $reservierung = new reservierung(); if($reservierung->load($id)) { - if(($reservierung->uid==$uid || $reservierung->insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) + if(($reservierung->uid==$uid || $reservierung->insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) { if($reservierung->delete($id)) echo ''.$p->t('lvplan/reservierungWurdeGeloescht').'
'; @@ -79,17 +79,17 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo ''.$p->t('global/keineBerechtigung').'
'; } } - else + else echo ''.$p->t('global/fehleraufgetreten').'!
'; } //Aktuelle Reservierungen abfragen. $datum = time(); $datum = date("Y-m-d",$datum); - + //EIGENE - $sql_query="SELECT * FROM campus.vw_reservierung - WHERE datum>=".$db->db_add_param($datum)." + $sql_query="SELECT * FROM campus.vw_reservierung + WHERE datum>=".$db->db_add_param($datum)." AND (uid=".$db->db_add_param($uid)." OR insertvon=".$db->db_add_param($uid).") ORDER BY datum, titel, ort_kurzbz, stunde"; @@ -97,7 +97,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) die($db->db_last_error()); $num_rows_res=$db->db_num_rows($erg_res); - + if ($num_rows_res>0) { echo $p->t('lvplan/eigeneReservierungen').':
'; @@ -135,7 +135,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo ''.$db->convert_html_chars($pers_uid).''; echo ''.$db->convert_html_chars($beschreibung).' '; $z=$i-1; - if (($pers_uid==$uid || $insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung', null, 'suid')) + if (($pers_uid==$uid || $insertvon==$uid) && $rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo 'Delete'; echo ''; } @@ -145,7 +145,7 @@ if(!$rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid')) echo '

'; flush(); - + ?> diff --git a/include/wochenplan.class.php b/include/wochenplan.class.php index 9af13b8ab..d2ef43101 100644 --- a/include/wochenplan.class.php +++ b/include/wochenplan.class.php @@ -702,7 +702,7 @@ class wochenplan extends basis_db $datum=$datum_mon=$this->datum; $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user_uid); - $reservberechtigt = $rechte->isBerechtigt('lehre/reservierung', null, 'suid'); + $reservberechtigt = $rechte->isBerechtigt('lehre/reservierung:begrenzt', null, 'suid'); for ($i=1; $i<=TAGE_PRO_WOCHE; $i++) { From b3caf988fdefa78af205dd7ebf2ef4e959b62b76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Mon, 9 Sep 2019 15:00:49 +0200 Subject: [PATCH 3/3] EMail an Studierende Link im CIS zeigt nur noch Spezialgruppen an die nicht leer sind --- include/tw/cis_menu_lv.inc.php | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/include/tw/cis_menu_lv.inc.php b/include/tw/cis_menu_lv.inc.php index e7936b5a7..3a4a8f13b 100644 --- a/include/tw/cis_menu_lv.inc.php +++ b/include/tw/cis_menu_lv.inc.php @@ -411,12 +411,17 @@ function checkZeilenUmbruch() { if($row->gruppe_kurzbz!='') { - if(!$db->db_parse_bool($row->mailgrp)) + $bngrp = new benutzergruppe(); + $bngrp->load_uids($row->gruppe_kurzbz, $angezeigtes_stsem); + if(isset($bngrp->uids) && count($bngrp->uids) > 0) { - $nomail=$row->gruppe_kurzbz.' '; + if(!$db->db_parse_bool($row->mailgrp)) + { + $nomail=$row->gruppe_kurzbz.' '; + } + else + $mailto.=mb_strtolower($row->gruppe_kurzbz.'@'.DOMAIN.$variable->variable->emailadressentrennzeichen); } - else - $mailto.=mb_strtolower($row->gruppe_kurzbz.'@'.DOMAIN.$variable->variable->emailadressentrennzeichen); } else $mailto.=mb_strtolower($row->stg_typ.$row->stg_kurzbz.$row->semester.trim($row->verband).trim($row->gruppe).'@'.DOMAIN.$variable->variable->emailadressentrennzeichen);