From b7d5fef30a4a852444332451aeda7c5c62d5e901 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Wed, 16 Jun 2021 08:03:54 +0200 Subject: [PATCH 01/25] nachrichten wegschicken auch wenn die Sprache nicht gefunden wurde --- application/libraries/VorlageLib.php | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/application/libraries/VorlageLib.php b/application/libraries/VorlageLib.php index 9679dff1c..d8d443a41 100644 --- a/application/libraries/VorlageLib.php +++ b/application/libraries/VorlageLib.php @@ -114,7 +114,7 @@ class VorlageLib if (!hasData($vorlage)) { // Builds where clause - $where = $this->_where($vorlage_kurzbz, $orgform_kurzbz, $sprache); + $where = $this->_where($vorlage_kurzbz); $vorlage = $this->ci->organisationseinheitlib->treeSearch( 'public', @@ -134,20 +134,11 @@ class VorlageLib /** * _where */ - private function _where($vorlage_kurzbz, $orgform_kurzbz, $sprache) + private function _where($vorlage_kurzbz) { // Builds where clause $where = "vorlage_kurzbz = ".$this->ci->VorlageModel->escape($vorlage_kurzbz); - if (is_null($sprache)) - { - $where .= " AND sprache IS NULL"; - } - else - { - $where .= " AND sprache = ".$this->ci->VorlageModel->escape($sprache); - } - $where .= " AND aktiv = true"; return $where; From e6ba6f9beabc74c3b8a3115653b0fbf7a1e48b80 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Fri, 22 Oct 2021 10:44:54 +0200 Subject: [PATCH 02/25] dropdown im fas angepasst --- content/student/studentprojektarbeit.js.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/student/studentprojektarbeit.js.php b/content/student/studentprojektarbeit.js.php index 66f52f15c..c30f7ea1c 100644 --- a/content/student/studentprojektarbeit.js.php +++ b/content/student/studentprojektarbeit.js.php @@ -652,11 +652,11 @@ function StudentProjektarbeitNeu() StudentProjektarbeitResetFields(); StudentProjektarbeitDetailDisableFields(false); StudentProjektbetreuerDisableFields(true); - var stg_kz = document.getElementById('student-detail-menulist-studiengang_kz').value; + var student_uid = document.getElementById('student-detail-textbox-uid').value; //Lehrveranstaltung DropDown laden var LvDropDown = document.getElementById('student-projektarbeit-menulist-lehrveranstaltung'); - url='rdf/lehrveranstaltung.rdf.php?stg_kz='+stg_kz+"&projektarbeit=true&"+gettimestamp(); + url='rdf/lehrveranstaltung.rdf.php?uid='+student_uid+"&projektarbeit=true&"+gettimestamp(); //Alte DS entfernen var oldDatasources = LvDropDown.database.GetDataSources(); From 15ba3602f738fd7a7c6a5fac5f5431b3a51b544b Mon Sep 17 00:00:00 2001 From: ma0048 Date: Mon, 25 Oct 2021 13:22:44 +0200 Subject: [PATCH 03/25] job fixed --- application/models/crm/Prestudent_model.php | 58 +++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/application/models/crm/Prestudent_model.php b/application/models/crm/Prestudent_model.php index 2d8ac4a7e..b4692c864 100644 --- a/application/models/crm/Prestudent_model.php +++ b/application/models/crm/Prestudent_model.php @@ -665,4 +665,62 @@ class Prestudent_model extends DB_Model return $this->execQuery($query, array($prestudent_id)); } + + public function getSchool($semester, $studiengang_typ) + { + if (!$this->udfsExistAndDefined()) + return error('No UDF definition'); + + $query = 'SELECT DISTINCT p.person_id, + ps.prestudent_id, + ps.udf_values, + ( + SELECT ssps.udf_values->>\'udf_schule\' + FROM public.tbl_prestudent ssps + WHERE ssps.person_id = p.person_id AND ssps.udf_values->>\'udf_schule\' IS NOT NULL + LIMIT 1 + ) AS "Schule" + FROM + public.tbl_person p + JOIN public.tbl_prestudent ps USING (person_id) + JOIN public.tbl_prestudentstatus pss USING (prestudent_id) + JOIN public.tbl_studiengang sg ON ps.studiengang_kz = sg.studiengang_kz + WHERE + EXISTS ( + SELECT 1 + FROM public.tbl_prestudentstatus spss + JOIN public.tbl_prestudent sps ON spss.prestudent_id = sps.prestudent_id + JOIN public.tbl_studiengang ssg ON sps.studiengang_kz = ssg.studiengang_kz + WHERE sps.person_id = p.person_id + AND ssg.typ = \'' . $studiengang_typ . '\' + AND spss.studiensemester_kurzbz IN (' . $semester . ') + AND sps.udf_values->>\'udf_schule\' IS NOT NULL + LIMIT 1 + ) + AND sg.typ = \''. $studiengang_typ .'\' + AND pss.studiensemester_kurzbz IN (' . $semester . ') + AND ps.udf_values->>\'udf_schule\' IS NULL + AND \'Abgewiesener\' != ( + SELECT sspss.status_kurzbz + FROM public.tbl_prestudentstatus sspss + WHERE sspss.prestudent_id = ps.prestudent_id + ORDER BY sspss.datum DESC, sspss.insertamum DESC, sspss.ext_id DESC + LIMIT 1 + ) + ORDER BY p.person_id'; + + return $this->execQuery($query); + } + + public function updateSchool($udf, $prestudent) + { + if (!$this->udfsExistAndDefined()) + return error('No UDF definition'); + + $query = 'UPDATE public.tbl_prestudent + SET udf_values = \'' . $udf . '\' + WHERE prestudent_id = ' . $prestudent; + + return $this->execQuery($query); + } } From d269fd003d544222a5bc015501c7a60602a7b393 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Mon, 25 Oct 2021 14:03:30 +0200 Subject: [PATCH 04/25] added new log to logdataname --- application/views/system/infocenter/infocenterData.php | 2 +- .../views/system/infocenter/infocenterFreigegebenData.php | 2 +- .../system/infocenter/infocenterReihungstestAbsolviertData.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/application/views/system/infocenter/infocenterData.php b/application/views/system/infocenter/infocenterData.php index c49a1c6cc..3ee4db220 100644 --- a/application/views/system/infocenter/infocenterData.php +++ b/application/views/system/infocenter/infocenterData.php @@ -6,7 +6,7 @@ $INTERESSENT_STATUS = '\'Interessent\''; $STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\''; $TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\''; - $LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Interessent rejected\''; + $LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Interessent rejected\', \'Attempt to register with existing mailadress\''; $LOGDATA_NAME_PARKED = '\'Parked\''; $LOGDATA_NAME_ONHOLD = '\'Onhold\''; $LOGTYPE_KURZBZ = '\'Processstate\''; diff --git a/application/views/system/infocenter/infocenterFreigegebenData.php b/application/views/system/infocenter/infocenterFreigegebenData.php index 9078c13db..e649fe54a 100644 --- a/application/views/system/infocenter/infocenterFreigegebenData.php +++ b/application/views/system/infocenter/infocenterFreigegebenData.php @@ -5,7 +5,7 @@ $INTERESSENT_STATUS = '\'Interessent\''; $STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\''; $TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\''; - $LOGDATA_NAME = '\'Login with code\', \'Login with user\''; + $LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Attempt to register with existing mailadress\''; $REJECTED_STATUS = '\'Abgewiesener\''; $ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz'); $STATUS_KURZBZ = '\'Wartender\', \'Bewerber\', \'Aufgenommener\', \'Student\''; diff --git a/application/views/system/infocenter/infocenterReihungstestAbsolviertData.php b/application/views/system/infocenter/infocenterReihungstestAbsolviertData.php index 5aa664a97..dbc0124bc 100644 --- a/application/views/system/infocenter/infocenterReihungstestAbsolviertData.php +++ b/application/views/system/infocenter/infocenterReihungstestAbsolviertData.php @@ -5,7 +5,7 @@ $INTERESSENT_STATUS = '\'Interessent\''; $STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\''; $TAETIGKEIT_KURZBZ = '\'bewerbung\', \'kommunikation\''; - $LOGDATA_NAME = '\'Login with code\', \'Login with user\''; + $LOGDATA_NAME = '\'Login with code\', \'Login with user\', \'Attempt to register with existing mailadress\''; $ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz'); $STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\''; $ORG_NAME = '\'InfoCenter\''; From a31d33bcf9dd4b40baf4c69e785e46c174f9d13a Mon Sep 17 00:00:00 2001 From: ma0048 Date: Wed, 27 Oct 2021 17:59:52 +0200 Subject: [PATCH 05/25] in eigenes model --- application/models/crm/Prestudent_model.php | 57 --------------------- 1 file changed, 57 deletions(-) diff --git a/application/models/crm/Prestudent_model.php b/application/models/crm/Prestudent_model.php index b4692c864..5db9a98f1 100644 --- a/application/models/crm/Prestudent_model.php +++ b/application/models/crm/Prestudent_model.php @@ -666,61 +666,4 @@ class Prestudent_model extends DB_Model return $this->execQuery($query, array($prestudent_id)); } - public function getSchool($semester, $studiengang_typ) - { - if (!$this->udfsExistAndDefined()) - return error('No UDF definition'); - - $query = 'SELECT DISTINCT p.person_id, - ps.prestudent_id, - ps.udf_values, - ( - SELECT ssps.udf_values->>\'udf_schule\' - FROM public.tbl_prestudent ssps - WHERE ssps.person_id = p.person_id AND ssps.udf_values->>\'udf_schule\' IS NOT NULL - LIMIT 1 - ) AS "Schule" - FROM - public.tbl_person p - JOIN public.tbl_prestudent ps USING (person_id) - JOIN public.tbl_prestudentstatus pss USING (prestudent_id) - JOIN public.tbl_studiengang sg ON ps.studiengang_kz = sg.studiengang_kz - WHERE - EXISTS ( - SELECT 1 - FROM public.tbl_prestudentstatus spss - JOIN public.tbl_prestudent sps ON spss.prestudent_id = sps.prestudent_id - JOIN public.tbl_studiengang ssg ON sps.studiengang_kz = ssg.studiengang_kz - WHERE sps.person_id = p.person_id - AND ssg.typ = \'' . $studiengang_typ . '\' - AND spss.studiensemester_kurzbz IN (' . $semester . ') - AND sps.udf_values->>\'udf_schule\' IS NOT NULL - LIMIT 1 - ) - AND sg.typ = \''. $studiengang_typ .'\' - AND pss.studiensemester_kurzbz IN (' . $semester . ') - AND ps.udf_values->>\'udf_schule\' IS NULL - AND \'Abgewiesener\' != ( - SELECT sspss.status_kurzbz - FROM public.tbl_prestudentstatus sspss - WHERE sspss.prestudent_id = ps.prestudent_id - ORDER BY sspss.datum DESC, sspss.insertamum DESC, sspss.ext_id DESC - LIMIT 1 - ) - ORDER BY p.person_id'; - - return $this->execQuery($query); - } - - public function updateSchool($udf, $prestudent) - { - if (!$this->udfsExistAndDefined()) - return error('No UDF definition'); - - $query = 'UPDATE public.tbl_prestudent - SET udf_values = \'' . $udf . '\' - WHERE prestudent_id = ' . $prestudent; - - return $this->execQuery($query); - } } From 2a1a068ee2d495fe5060653b6daf3c22d588ee3e Mon Sep 17 00:00:00 2001 From: ma0048 Date: Wed, 3 Nov 2021 10:51:40 +0100 Subject: [PATCH 06/25] datum fuers parken nun auf semesterende + 3 monate --- public/js/infocenter/infocenterDetails.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/public/js/infocenter/infocenterDetails.js b/public/js/infocenter/infocenterDetails.js index 79129f3e2..7a8849f71 100644 --- a/public/js/infocenter/infocenterDetails.js +++ b/public/js/infocenter/infocenterDetails.js @@ -378,6 +378,11 @@ var InfocenterDetails = { if (FHC_AjaxClient.hasData(data)) { var engdate = $.datepicker.parseDate("yy-mm-dd", FHC_AjaxClient.getData(data)[0]); + + if (engdate.getDate() === 31) + engdate.setDate(engdate.getDate() - 1); + engdate.setMonth(engdate.getMonth() + 3); + var gerdate = $.datepicker.formatDate("dd.mm.yy", engdate); $("#postponedate").val(gerdate); } From 15176e7ce6156ad9a56063a0fbfe8960efda4096 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Thu, 11 Nov 2021 15:52:39 +0100 Subject: [PATCH 07/25] eigenen filter fuer abgewiesene studenten hinzugefuegt --- .../system/infocenter/InfoCenter.php | 51 +++++++++++ .../infocenter/infocenterAbgewiesen.php | 50 +++++++++++ .../infocenter/infocenterAbgewiesenData.php | 84 +++++++++++++++++++ .../js/infocenter/infocenterPersonDataset.js | 2 +- system/filtersupdate.php | 23 +++++ 5 files changed, 209 insertions(+), 1 deletion(-) create mode 100644 application/views/system/infocenter/infocenterAbgewiesen.php create mode 100644 application/views/system/infocenter/infocenterAbgewiesenData.php diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php index 9e68c5cb8..6ebc1c220 100644 --- a/application/controllers/system/infocenter/InfoCenter.php +++ b/application/controllers/system/infocenter/InfoCenter.php @@ -20,6 +20,7 @@ class InfoCenter extends Auth_Controller const INDEX_PAGE = 'index'; const FREIGEGEBEN_PAGE = 'freigegeben'; const REIHUNGSTESTABSOLVIERT_PAGE = 'reihungstestAbsolviert'; + const ABGEWIESEN_PAGE = 'abgewiesen'; const SHOW_DETAILS_PAGE = 'showDetails'; const SHOW_ZGV_DETAILS_PAGE = 'showZGVDetails'; const ZGV_UBERPRUEFUNG_PAGE = 'ZGVUeberpruefung'; @@ -107,6 +108,7 @@ class InfoCenter extends Auth_Controller array( 'index' => 'infocenter:r', 'freigegeben' => 'infocenter:r', + 'abgewiesen' => 'infocenter:r', 'reihungstestAbsolviert' => 'infocenter:r', 'showDetails' => 'infocenter:r', 'showZGVDetails' => 'lehre/zgvpruefung:r', @@ -203,6 +205,16 @@ class InfoCenter extends Auth_Controller $this->load->view('system/infocenter/infocenterFreigegeben.php'); } + /** + * Abgewiesen page of the InfoCenter tool + */ + public function abgewiesen() + { + $this->_setNavigationMenu(self::ABGEWIESEN_PAGE); // define the navigation menu for this page + + $this->load->view('system/infocenter/infocenterAbgewiesen.php'); + } + /** * */ @@ -1199,6 +1211,10 @@ class InfoCenter extends Auth_Controller { $this->_setNavigationMenu(self::REIHUNGSTESTABSOLVIERT_PAGE); } + elseif (strpos($navigation_page, self::ABGEWIESEN_PAGE) !== false) + { + $this->_setNavigationMenu(self::ABGEWIESEN_PAGE); + } $this->outputJsonSuccess('success'); } @@ -1422,12 +1438,14 @@ class InfoCenter extends Auth_Controller $freigegebenLink = site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE); $reihungstestAbsolviertLink = site_url(self::INFOCENTER_URI.'/'.self::REIHUNGSTESTABSOLVIERT_PAGE); + $abgewiesenLink = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE); $currentFilterId = $this->input->get(self::FILTER_ID); if (isset($currentFilterId)) { $freigegebenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId; $reihungstestAbsolviertLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId; + $abgewiesenLink .= '?'.self::PREV_FILTER_ID.'='.$currentFilterId; } $this->navigationlib->setSessionMenu( @@ -1466,6 +1484,18 @@ class InfoCenter extends Auth_Controller null, // subscriptLinkValue '', // target 20 // sort + ), + 'abgewiesen' => $this->navigationlib->oneLevel( + 'Abgewiesene Studenten', // description + $abgewiesenLink, // link + null, // children + 'close', // icon + null, // subscriptDescription + false, // expand + null, // subscriptLinkClass + null, // subscriptLinkValue + '', // target + 30 // sort ) ) ); @@ -1491,6 +1521,8 @@ class InfoCenter extends Auth_Controller } if ($origin_page === self::ZGV_UBERPRUEFUNG_PAGE) $link = site_url(self::ZGV_UEBERPRUEFUNG_URI); + if ($origin_page === self::ABGEWIESEN_PAGE) + $link = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE); $prevFilterId = $this->input->get(self::PREV_FILTER_ID); if (isset($prevFilterId)) @@ -1528,6 +1560,7 @@ class InfoCenter extends Auth_Controller $homeLink = site_url(self::INFOCENTER_URI.'/'.self::INDEX_PAGE); $freigegebenLink = site_url(self::INFOCENTER_URI.'/'.self::FREIGEGEBEN_PAGE); $absolviertLink = site_url(self::INFOCENTER_URI.'/'.self::REIHUNGSTESTABSOLVIERT_PAGE); + $abgewiesenLink = site_url(self::INFOCENTER_URI.'/'.self::ABGEWIESEN_PAGE); $prevFilterId = $this->input->get(self::PREV_FILTER_ID); if (isset($prevFilterId)) { @@ -1586,6 +1619,24 @@ class InfoCenter extends Auth_Controller ) ); } + if($page == self::ABGEWIESEN_PAGE) + { + $this->navigationlib->setSessionElementMenu( + 'abgewiesen', + $this->navigationlib->oneLevel( + 'Abgewiesene Studenten', // description + $abgewiesenLink, // link + null, // children + 'close', // icon + null, // subscriptDescription + false, // expand + null, // subscriptLinkClass + null, // subscriptLinkValue + '', // target + 40 // sort + ) + ); + } } /** diff --git a/application/views/system/infocenter/infocenterAbgewiesen.php b/application/views/system/infocenter/infocenterAbgewiesen.php new file mode 100644 index 000000000..22adacea8 --- /dev/null +++ b/application/views/system/infocenter/infocenterAbgewiesen.php @@ -0,0 +1,50 @@ +load->view( + 'templates/FHC-Header', + array( + 'title' => 'Info Center', + 'jquery' => true, + 'jqueryui' => true, + 'jquerycheckboxes' => true, + 'bootstrap' => true, + 'fontawesome' => true, + 'sbadmintemplate' => true, + 'tablesorter' => true, + 'ajaxlib' => true, + 'filterwidget' => true, + 'navigationwidget' => true, + 'dialoglib' => true, + 'phrases' => array( + 'person' => array('vorname', 'nachname'), + 'global' => array('mailAnXversandt'), + 'ui' => array('bitteEintragWaehlen') + ), + 'customCSSs' => array('public/css/sbadmin2/tablesort_bootstrap.css', 'public/css/infocenter/infocenterPersonDataset.css'), + 'customJSs' => array('public/js/bootstrapper.js', 'public/js/infocenter/infocenterPersonDataset.js') + ) + ); +?> + + +
+ + widgetlib->widget('NavigationWidget'); ?> + +
+
+
+
+ +
+
+
+ load->view('system/infocenter/infocenterAbgewiesenData.php'); ?> +
+
+
+
+ + +load->view('templates/FHC-Footer'); ?> diff --git a/application/views/system/infocenter/infocenterAbgewiesenData.php b/application/views/system/infocenter/infocenterAbgewiesenData.php new file mode 100644 index 000000000..a7560432f --- /dev/null +++ b/application/views/system/infocenter/infocenterAbgewiesenData.php @@ -0,0 +1,84 @@ +config->load('infocenter'); + $ABGEWIESENEN_STATUS = '\'Abgewiesener\''; + $STUDIENGANG_TYP = '\''.$this->variablelib->getVar('infocenter_studiensgangtyp').'\''; + $ADDITIONAL_STG = $this->config->item('infocenter_studiengang_kz'); + $STUDIENSEMESTER = '\''.$this->variablelib->getVar('infocenter_studiensemester').'\''; + $LOGDATA_NAME = '\'Message sent\''; + $LOGDATA_VON = '\'online\''; + +$query = ' + SELECT + p.person_id AS "PersonID", + ps.prestudent_id AS "PreStudentID", + p.vorname AS "Vorname", + p.nachname AS "Nachname", + pss.insertamum AS "AbgewiesenAm", + ( + SELECT l.zeitpunkt + FROM system.tbl_log l + WHERE l.person_id = p.person_id + AND '. $LOGDATA_NAME .' = ( + SELECT l.logdata->>\'name\' + FROM system.tbl_log l + WHERE l.person_id = p.person_id + ORDER BY l.log_id DESC + LIMIT 1 + ) + AND '. $LOGDATA_VON .' = ( + SELECT l.insertvon + FROM system.tbl_log l + WHERE l.person_id = p.person_id + ORDER BY l.log_id DESC + LIMIT 1 + ) + AND l.zeitpunkt >= pss.insertamum + ORDER BY l.log_id DESC + LIMIT 1 + ) AS "Nachricht" + FROM + public.tbl_prestudentstatus pss + JOIN public.tbl_prestudent ps USING(prestudent_id) + JOIN public.tbl_person p USING(person_id) + JOIN public.tbl_studiengang sg USING(studiengang_kz) + WHERE pss.status_kurzbz = '. $ABGEWIESENEN_STATUS .' + AND pss.studiensemester_kurzbz = '. $STUDIENSEMESTER .' + AND (sg.typ IN ('. $STUDIENGANG_TYP .') + OR + sg.studiengang_kz IN ('. $ADDITIONAL_STG .') + ) + ORDER BY "AbgewiesenAm" DESC'; + + $filterWidgetArray = array( + 'query' => $query, + 'app' => InfoCenter::APP, + 'datasetName' => 'abgewiesen', + 'filter_id' => $this->input->get('filter_id'), + 'requiredPermissions' => 'infocenter', + 'datasetRepresentation' => 'tablesorter', + 'columnsAliases' => array( + 'PersonID', + 'PreStudentID', + 'Vorname', + 'Nachname', + 'Abgewiesen am', + 'Nachricht' + ), + + 'formatRow' => function($datasetRaw) { + if ($datasetRaw->{'Nachricht'} === null) + { + $datasetRaw->{'Nachricht'} = 'Nein'; + } + else + { + $datasetRaw->{'Nachricht'} = 'Ja'; + } + + return $datasetRaw; + } + ); + + echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray); +?> diff --git a/public/js/infocenter/infocenterPersonDataset.js b/public/js/infocenter/infocenterPersonDataset.js index bdeed1770..06f5465c4 100644 --- a/public/js/infocenter/infocenterPersonDataset.js +++ b/public/js/infocenter/infocenterPersonDataset.js @@ -62,7 +62,7 @@ var InfocenterPersonDataset = { '' + ' ' + infocenter_studiensemester + - ' '; diff --git a/system/filtersupdate.php b/system/filtersupdate.php index 78e2bb227..cf7ac4685 100644 --- a/system/filtersupdate.php +++ b/system/filtersupdate.php @@ -471,6 +471,29 @@ $filters = array( ', 'oe_kurzbz' => null, ), + array( + 'app' => 'infocenter', + 'dataset_name' => 'abgewiesen', + 'filter_kurzbz' => 'InfoCenterAbgewiesenAlle', + 'description' => '{Alle}', + 'sort' => 1, + 'default_filter' => true, + 'filter' => ' + { + "name": "Abgewiesen - Alle", + "columns": [ + {"name": "PersonID"}, + {"name": "PreStudentID"}, + {"name": "Vorname"}, + {"name": "Nachname"}, + {"name": "AbgewiesenAm"}, + {"name": "Nachricht"} + ], + "filters": [] + } + ', + 'oe_kurzbz' => null, + ), array( 'app' => 'budget', 'dataset_name' => 'budgetoverview', From 6f877acd7bdd240fd460e25ce64e619da89d7a98 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Mon, 15 Nov 2021 12:40:53 +0100 Subject: [PATCH 08/25] Mail an Studiengang nur bei "Freigabe an Studiengang" - Button - Bachelor --- application/controllers/system/infocenter/InfoCenter.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php index 9e68c5cb8..b469d2d12 100644 --- a/application/controllers/system/infocenter/InfoCenter.php +++ b/application/controllers/system/infocenter/InfoCenter.php @@ -921,7 +921,8 @@ class InfoCenter extends Auth_Controller $this->_log($person_id, 'freigegeben', $logparams); - $this->_sendFreigabeMail($prestudent_id); + if (is_numeric($statusgrund_id) || $logdata['studiengang_typ'] === 'm') + $this->_sendFreigabeMail($prestudent_id); } } } From 6800c42b907911e6122de86db07f77407dd6fdf1 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Fri, 26 Nov 2021 14:52:39 +0100 Subject: [PATCH 09/25] nachname statt der uid anzeigen --- application/views/system/infocenter/infocenterData.php | 8 ++++++-- .../views/system/infocenter/infocenterFreigegebenData.php | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/application/views/system/infocenter/infocenterData.php b/application/views/system/infocenter/infocenterData.php index c49a1c6cc..83269ccf4 100644 --- a/application/views/system/infocenter/infocenterData.php +++ b/application/views/system/infocenter/infocenterData.php @@ -55,8 +55,10 @@ a.dokument_kurzbz in ('.$AKTE_TYP.') ) AS "AnzahlAkte", ( - SELECT l.insertvon + SELECT CASE WHEN sp.nachname IS NULL THEN l.insertvon ELSE sp.nachname END FROM system.tbl_log l + LEFT JOIN public.tbl_benutzer on l.insertvon = tbl_benutzer.uid + LEFT JOIN public.tbl_person sp on tbl_benutzer.person_id = sp.person_id WHERE l.taetigkeit_kurzbz IN ('.$TAETIGKEIT_KURZBZ.') AND l.logdata->>\'name\' NOT IN ('.$LOGDATA_NAME.') AND l.person_id = p.person_id @@ -271,8 +273,10 @@ LEFT JOIN ( SELECT tpl.person_id, tpl.zeitpunkt, - tpl.uid AS lockuser + sp.nachname AS lockuser FROM system.tbl_person_lock tpl + JOIN public.tbl_benutzer sb USING (uid) + JOIN public.tbl_person sp ON sb.person_id = sp.person_id WHERE tpl.app = '.$APP.' ) pl USING(person_id) LEFT JOIN ( diff --git a/application/views/system/infocenter/infocenterFreigegebenData.php b/application/views/system/infocenter/infocenterFreigegebenData.php index 9078c13db..317e3dbf9 100644 --- a/application/views/system/infocenter/infocenterFreigegebenData.php +++ b/application/views/system/infocenter/infocenterFreigegebenData.php @@ -41,8 +41,10 @@ $query = ' LIMIT 1 ) AS "LastActionType", ( - SELECT l.insertvon + SELECT CASE WHEN sp.nachname IS NULL THEN l.insertvon ELSE sp.nachname END FROM system.tbl_log l + LEFT JOIN public.tbl_benutzer on l.insertvon = tbl_benutzer.uid + LEFT JOIN public.tbl_person sp on tbl_benutzer.person_id = sp.person_id WHERE l.taetigkeit_kurzbz IN('.$TAETIGKEIT_KURZBZ.') AND l.logdata->>\'name\' NOT IN ('.$LOGDATA_NAME.') AND l.person_id = p.person_id @@ -248,8 +250,10 @@ $query = ' LEFT JOIN ( SELECT tpl.person_id, tpl.zeitpunkt, - tpl.uid AS lockuser + sp.nachname AS lockuser FROM system.tbl_person_lock tpl + JOIN public.tbl_benutzer sb USING (uid) + JOIN public.tbl_person sp ON sb.person_id = sp.person_id WHERE tpl.app = '.$APP.' ) pl USING(person_id) WHERE From 5fa605a75ff6804cb9e2a59ee48074feba51eb2d Mon Sep 17 00:00:00 2001 From: KarpAlex Date: Tue, 30 Nov 2021 04:19:43 +0100 Subject: [PATCH 10/25] bpk overview filter: added mitarbeiter column to default filter --- system/filtersupdate.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/system/filtersupdate.php b/system/filtersupdate.php index 78e2bb227..0d3e85c7e 100644 --- a/system/filtersupdate.php +++ b/system/filtersupdate.php @@ -347,7 +347,8 @@ $filters = array( {"name": "vorname"}, {"name": "nachname"}, {"name": "svnr"}, - {"name": "ersatzkennzeichen"} + {"name": "ersatzkennzeichen"}, + {"name": "mitarbeiter"} ], "filters": [] } From 8d1886039a6556ac1eedd3e4aa8d89169ec59ad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 1 Dec 2021 15:00:02 +0100 Subject: [PATCH 11/25] =?UTF-8?q?Projektarbeiten=20DropDown=20angepasst=20?= =?UTF-8?q?damit=20nach=20dem=20Laden=20die=20selben=20LVEinttr=C3=A4ge=20?= =?UTF-8?q?angezeigt=20werden=20wie=20bei=20der=20Neuanlage?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/student/studentprojektarbeit.js.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/student/studentprojektarbeit.js.php b/content/student/studentprojektarbeit.js.php index c30f7ea1c..40af4107d 100644 --- a/content/student/studentprojektarbeit.js.php +++ b/content/student/studentprojektarbeit.js.php @@ -183,7 +183,7 @@ function StudentProjektarbeitTreeLoad(uid) tree.builder.addListener(StudentProjektarbeitTreeListener); StudentProjektarbeitDisableFields(false); - + // Wenn Vertragsdetails angezeigt werden if (projektarbeit_vertragsdetails_anzeigen) { //Reset attributes @@ -398,7 +398,7 @@ function StudentProjektarbeitAuswahl() //Lehrveranstaltung DropDown laden var LvDropDown = document.getElementById('student-projektarbeit-menulist-lehrveranstaltung'); - url='rdf/lehrveranstaltung.rdf.php?stg_kz='+stg_kz+"&projektarbeit=true&withlv="+lehrveranstaltung_id+"&"+gettimestamp(); + url='rdf/lehrveranstaltung.rdf.php?uid='+student_uid+"&projektarbeit=true&withlv="+lehrveranstaltung_id+"&"+gettimestamp(); //Alte DS entfernen var oldDatasources = LvDropDown.database.GetDataSources(); From b4eb2d426a305f618f9978603a62e1bec6d48d86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 1 Dec 2021 17:00:28 +0100 Subject: [PATCH 12/25] Lehrauftragsverwaltung - Anzeige von Nachname und Vorname bei Betreuungen vertauscht --- .../views/lehre/lehrauftrag/approveLehrauftragData.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/application/views/lehre/lehrauftrag/approveLehrauftragData.php b/application/views/lehre/lehrauftrag/approveLehrauftragData.php index 4d8dc36d0..635fd9da9 100644 --- a/application/views/lehre/lehrauftrag/approveLehrauftragData.php +++ b/application/views/lehre/lehrauftrag/approveLehrauftragData.php @@ -187,7 +187,7 @@ FROM (SELECT uid FROM - public.tbl_benutzer JOIN public.tbl_mitarbeiter ma + public.tbl_benutzer JOIN public.tbl_mitarbeiter ma ON tbl_benutzer.uid = ma.mitarbeiter_uid WHERE person_id = tmp_projektbetreuung.person_id @@ -268,7 +268,7 @@ FROM ELSE (oe.organisationseinheittyp_kurzbz || \' \' || oe.bezeichnung) END AS "lv_oe_kurzbz", - (vorname || \' \' || nachname) AS "lektor", + (nachname || \' \' || vorname) AS "lektor", TRUNC(pb.stunden, 1) AS "stunden", TRUNC((pb.stunden * pb.stundensatz), 2) AS "betrag", vertrag_id, From b2d46af0d6f1693dc459eedc05c686b7476dc39e Mon Sep 17 00:00:00 2001 From: ma0048 Date: Wed, 1 Dec 2021 19:31:31 +0100 Subject: [PATCH 13/25] wording und datum angepasst --- application/controllers/system/infocenter/InfoCenter.php | 4 ++-- application/views/system/infocenter/infocenterAbgewiesen.php | 2 +- .../views/system/infocenter/infocenterAbgewiesenData.php | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/application/controllers/system/infocenter/InfoCenter.php b/application/controllers/system/infocenter/InfoCenter.php index 6ebc1c220..69da53963 100644 --- a/application/controllers/system/infocenter/InfoCenter.php +++ b/application/controllers/system/infocenter/InfoCenter.php @@ -1486,7 +1486,7 @@ class InfoCenter extends Auth_Controller 20 // sort ), 'abgewiesen' => $this->navigationlib->oneLevel( - 'Abgewiesene Studenten', // description + 'Abgewiesene', // description $abgewiesenLink, // link null, // children 'close', // icon @@ -1624,7 +1624,7 @@ class InfoCenter extends Auth_Controller $this->navigationlib->setSessionElementMenu( 'abgewiesen', $this->navigationlib->oneLevel( - 'Abgewiesene Studenten', // description + 'Abgewiesene', // description $abgewiesenLink, // link null, // children 'close', // icon diff --git a/application/views/system/infocenter/infocenterAbgewiesen.php b/application/views/system/infocenter/infocenterAbgewiesen.php index 22adacea8..8e946e573 100644 --- a/application/views/system/infocenter/infocenterAbgewiesen.php +++ b/application/views/system/infocenter/infocenterAbgewiesen.php @@ -35,7 +35,7 @@
diff --git a/application/views/system/infocenter/infocenterAbgewiesenData.php b/application/views/system/infocenter/infocenterAbgewiesenData.php index a7560432f..3bf60a9ef 100644 --- a/application/views/system/infocenter/infocenterAbgewiesenData.php +++ b/application/views/system/infocenter/infocenterAbgewiesenData.php @@ -76,6 +76,7 @@ $query = ' $datasetRaw->{'Nachricht'} = 'Ja'; } + $datasetRaw->{'AbgewiesenAm'} = date_format(date_create($datasetRaw->{'AbgewiesenAm'}),'Y-m-d H:i'); return $datasetRaw; } ); From 17dd939044d67dcae75b4d047f8cfb716cf580a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Thu, 2 Dec 2021 15:24:27 +0100 Subject: [PATCH 14/25] Moved to Addon --- system/account_deaktivierung_mail.php | 288 -------------------------- 1 file changed, 288 deletions(-) delete mode 100644 system/account_deaktivierung_mail.php diff --git a/system/account_deaktivierung_mail.php b/system/account_deaktivierung_mail.php deleted file mode 100644 index ede3f1f2f..000000000 --- a/system/account_deaktivierung_mail.php +++ /dev/null @@ -1,288 +0,0 @@ -, - * Andreas Oesterreicher and - * Rudolf Hangl . - */ - -/** - * Dieses Script versendet automatisch Mails an Accounts die Deaktiviert wurden. - * und informiert die Benutzer ueber die Folgen der Deaktivierung - */ - -require_once(dirname(__FILE__).'/../config/vilesci.config.inc.php'); -require_once(dirname(__FILE__).'/../include/basis_db.class.php'); -require_once(dirname(__FILE__).'/../include/mail.class.php'); - -$db = new basis_db(); -$text = ''; -$wochen_zum_entfernen = 1; - -// Alle die vor einer Woche inaktiv gesetzt wurden darueber informieren -$qry = "SELECT uid, - (SELECT mitarbeiter_uid FROM public.tbl_mitarbeiter WHERE mitarbeiter_uid = uid) as mitarbeiter - FROM public.tbl_benutzer - WHERE aktiv = false - AND updateaktivam = CURRENT_DATE - interval '".$wochen_zum_entfernen." week'"; - -if ($result = $db->db_query($qry)) -{ - while ($row = $db->db_fetch_object($result)) - { - if ($row->mitarbeiter != '') - { - // Mitarbeiter - $message = "Dies ist eine automatische Nachricht!\n"; - $message .= "\n"; - $message .= "Wir möchten Sie darauf aufmerksam machen, dass Ihr Benutzerdatensatz deaktiviert wurde. - Durch diese Deaktivierung wurden Sie auch aus allen Email-Verteilern gelöscht. \n\n"; - $message .= "Sollte innerhalb von 12 Monaten nach der Deaktivierung keine neuerliche Aktivierung Ihres - Benutzerdatensatzes erfolgen, dann werden automatisch auch\n"; - $message .= " - Ihr Account, \n"; - $message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n"; - $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n"; - $message .= "\n"; - $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, - sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: "; - $message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n"; - $message .= "\n"; - $message .= "Mit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien \n"; - $message .= "\n"; - $message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen, - können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren."; - } - else - { - // Student - $message = "Dies ist eine automatische Nachricht!\n"; - $message .= "\n"; - $message .= "Wir möchten Sie darauf aufmerksam machen, dass Ihr Benutzerdatensatz deaktiviert wurde. - Durch diese Deaktivierung wurden Sie auch aus allen Email-Verteilern gelöscht.\n"; - $message .= "\n"; - $message .= "Sollte innerhalb von 6 Monaten (für Studierende) bzw. 3 Wochen (für AbbrecherInnen) nach der - Deaktivierung keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, dann werden automatisch auch\n"; - $message .= " - Ihr Account,\n"; - $message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n"; - $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n"; - $message .= "\n"; - $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, - sich umgehend mit Ihrer Studiengangsassistenz in Verbindung zu setzen.\n"; - $message .= "\n"; - $message .= "Mit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien\n"; - $message .= "\n"; - $message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen, - können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n"; - } - - $to = $row->uid.'@'.DOMAIN; - - $mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! '.$row->uid, $message); - if ($mail->send()) - $text .= "Warnung zur Accountloeschung wurde an $row->uid verschickt\n"; - else - $text .= "Fehler beim Senden des Mails an $to: ".$message; - } -} - -// Letzte Warnung vor Accountloeschung verschicken - -// Abbrecher -$qry = "SELECT uid - FROM public.tbl_benutzer - JOIN public.tbl_student ON(uid=student_uid) - WHERE aktiv = false - AND updateaktivam = CURRENT_DATE - interval '".DEL_ABBRECHER_WEEKS." week' - AND get_rolle_prestudent (prestudent_id, NULL) = 'Abbrecher'"; - -if ($result = $db->db_query($qry)) -{ - while ($row = $db->db_fetch_object($result)) - { - $message = "Dies ist eine automatische Nachricht!\n"; - $message .= "\n"; - $message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_ABBRECHER_WEEKS > 1?DEL_ABBRECHER_WEEKS." Wochen ":"einer Woche ")."deaktiviert! - Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, dann werden automatisch auch\n"; - $message .= " - Ihr Account,\n"; - $message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n"; - $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden.\n"; - $message .= "\n"; - $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, sich umgehend mit Ihrer - Studiengangsassistenz in Verbindung zu setzen.\n"; - $message .= "\n"; - $message .= "Mit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien \n"; - $message .= "\n"; - $message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen, - können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n"; - - $to = $row->uid.'@'.DOMAIN; - - $mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message); - if ($mail->send()) - $text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n"; - else - $text .= "Fehler beim Senden des Mails an $to: ".$message; - } -} - -// Abbrecher an Bibliothek melden wenn diese inaktiv gesetzt wurden - -$qry = "SELECT uid, - vorname, - nachname, - titelpre, - titelpost - FROM public.tbl_benutzer - JOIN public.tbl_student ON (uid = student_uid) - JOIN public.tbl_person USING (person_id) - WHERE tbl_benutzer.aktiv = false - AND tbl_benutzer.updateaktivam = (CURRENT_DATE - '1 day'::interval)::date - AND get_rolle_prestudent (prestudent_id, NULL) = 'Abbrecher'"; - -if ($result = $db->db_query($qry)) -{ - if ($db->db_num_rows($result) > 0) - { - $message = "Dies ist eine automatische Nachricht!\n\n"; - $message .= "Die folgenden Studierenden wurden als Abbrecher eingetragen:\n\n"; - - while ($row = $db->db_fetch_object($result)) - { - $message .= trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost).' ( '.$row->uid.'@'.DOMAIN." )\n"; - } - - $message .= "\nMit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien \n"; - $to = 'wienerro@technikum-wien.at, astfaell@technikum-wien.at, olensky@technikum-wien.at'; - - $mail = new mail($to, 'no-reply@'.DOMAIN, 'Abbrecher Information', $message); - if ($mail->send()) - $text .= "Abbrecher Infomail an $to verschickt\n"; - else - $text .= "Fehler beim Senden des Mails an $to: ".$message; - } -} - -// Studenten - -$qry = "SELECT uid - FROM public.tbl_benutzer - JOIN public.tbl_student ON (uid=student_uid) - WHERE aktiv = false - AND updateaktivam = CURRENT_DATE - interval '".DEL_STUDENT_WEEKS." week' - AND get_rolle_prestudent (prestudent_id, NULL) <> 'Abbrecher'"; - -if ($result = $db->db_query($qry)) -{ - while ($row = $db->db_fetch_object($result)) - { - $message = "Dies ist eine automatische Nachricht!\n"; - $message .= "\n"; - $message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_STUDENT_WEEKS > 1?DEL_STUDENT_WEEKS." Wochen ":"einer Woche "). - "deaktiviert! Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, - dann werden automatisch auch\n"; - $message .= " - Ihr Account,\n"; - $message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n"; - $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden\n"; - $message .= "\n"; - $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, - sich umgehend mit Ihrer Studiengangsassistenz in Verbindung zu setzen.\n"; - $message .= "\n"; - $message .= "Mit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien \n"; - $message .= "\n"; - $message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen, - können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n"; - - $to = $row->uid.'@'.DOMAIN; - - $mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message); - if ($mail->send()) - $text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n"; - else - $text .= "Fehler beim Versenden des Abbrecher Infomails an $to !\n"; - } -} - -// Mitarbeiter - -$qry = "SELECT uid - FROM public.tbl_benutzer - JOIN public.tbl_mitarbeiter ON (uid = mitarbeiter_uid) - WHERE aktiv = false - AND updateaktivam = CURRENT_DATE - interval '".DEL_MITARBEITER_WEEKS." week' "; - -if ($result = $db->db_query($qry)) -{ - while ($row = $db->db_fetch_object($result)) - { - $message = "Dies ist eine automatische Nachricht!\n"; - $message .= "\n"; - $message .= "ACHTUNG: Ihr Benutzerdatensatz wurde vor ".(DEL_MITARBEITER_WEEKS > 1?DEL_MITARBEITER_WEEKS." Wochen ":"einer Woche "). - "deaktiviert! Sollte innerhalb der nächsten Tage keine neuerliche Aktivierung Ihres Benutzerdatensatzes erfolgen, - dann werden automatisch auch\n"; - $message .= " - Ihr Account,\n"; - $message .= " - Ihre Mailbox (inkl. aller E-Mails) und\n"; - $message .= " - Ihr Home-Verzeichnis (inkl. aller Dateien) gelöscht werden\n"; - $message .= "\n"; - $message .= "Falls es sich bei der Deaktivierung um einen Irrtum handelt, würden wir Sie bitten, - sich umgehend mit den KollegInnen in der Personalabteilung in Verbindung zu setzen: "; - $message .= "Frau Natalie König, natalie.koenig@technikum-wien.at\n"; - $message .= "\n"; - $message .= "Mit freundlichen Grüßen\n"; - $message .= "\n"; - $message .= "Fachhochschule Technikum Wien\n"; - $message .= "Höchstädtplatz 6\n"; - $message .= "1200 Wien \n"; - $message .= "\n"; - $message .= "Falls Sie weiterhin über Neuigkeiten an der FH Technikum Wien informiert werden wollen, - können Sie unter www.technikum-wien.at/newsletter den kostenlosen Newsletter abonnieren.\n"; - - $to = $row->uid.'@'.DOMAIN; - - $mail = new mail($to, 'no-reply@'.DOMAIN, 'Ihr Datensatz wurde deaktiviert! Letzte Warnung '.$row->uid, $message); - if ($mail->send()) - $text .= "Letzte Warnung zur Accountloeschung wurde an $row->uid verschickt\n"; - else - $text .= "Fehler beim Versenden des Abbrecher Infomails an $to !\n"; - } -} - -echo $text; - -?> - From 419988aaf9c6f96bef1a4aaecd52bf37317fabfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Thu, 2 Dec 2021 16:17:24 +0100 Subject: [PATCH 15/25] =?UTF-8?q?DB-Index=20f=C3=BCr=20campus.tbl=5Fzeitau?= =?UTF-8?q?fzeichnung.uid=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- system/dbupdate_3.3.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index 1d4e990b0..d8f2e16ab 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -5613,6 +5613,20 @@ if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berecht } } +// Add index to campus.tbl_zeitaufzeichnung.uid +if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_tbl_zeitaufzeichnung_uid'")) +{ + if ($db->db_num_rows($result) == 0) + { + $qry = "CREATE INDEX idx_tbl_zeitaufzeichnung_uid ON campus.tbl_zeitaufzeichnung USING btree (uid)"; + + if (! $db->db_query($qry)) + echo 'Indizes: ' . $db->db_last_error() . '
'; + else + echo 'Index fuer campus.tbl_zeitaufzeichnung.uid hinzugefuegt
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; From 61c1399f0106bbaf5ae38e4e350e4d246638d2eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Thu, 2 Dec 2021 16:50:08 +0100 Subject: [PATCH 16/25] Improved Performance of dbupdate --- system/dbupdate_3.3.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index d8f2e16ab..a8820c57d 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -51,7 +51,7 @@ if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants } } -if(!$result = @$db->db_query("SELECT 1 FROM public.vw_msg_vars LIMIT 1")) +if(!$result = @$db->db_query("SELECT 1 FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1")) { // CREATE OR REPLACE VIEW public.vw_msg_vars and grants privileges $qry = ' @@ -2760,7 +2760,7 @@ if($result = @$db->db_query("SELECT is_nullable FROM INFORMATION_SCHEMA.COLUMNS } // Spalte Zugangscode zu vw_msg_vars hinzufügen -if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars LIMIT 1')) +if(!$result = @$db->db_query('SELECT "Zugangscode" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1')) { $qry = ' CREATE OR REPLACE VIEW public.vw_msg_vars AS ( @@ -3827,7 +3827,7 @@ if(!$result = @$db->db_query("SELECT orgform_kurzbz FROM public.tbl_bankverbindu } // iban, bic und weitere Variablen zu vw_msg_vars hinzufügen -if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Alias Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars LIMIT 1')) +if(!$result = @$db->db_query('SELECT "IBAN Studiengang", "BIC Studiengang", "Studiengangskennzahl", "Einstiegssemester", "Einstiegsstudiensemester", "Vorname Studiengangsassistenz", "Nachname Studiengangsassistenz", "Durchwahl Studiengangsassistenz", "Alias Studiengangsassistenz", "Relative Prio" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1')) { $qry = ' CREATE OR REPLACE VIEW public.vw_msg_vars AS ( @@ -4356,7 +4356,7 @@ if (!$result = @$db->db_query("SELECT ba1code_bis FROM bis.tbl_beschaeftigungsar } // Orgform DE und Orform EN zu vw_msg_vars hinzufügen -if(!$result = @$db->db_query('SELECT "Orgform DE", "Orgform EN" FROM public.vw_msg_vars LIMIT 1')) +if(!$result = @$db->db_query('SELECT "Orgform DE", "Orgform EN" FROM public.vw_msg_vars WHERE person_id=-1 LIMIT 1')) { $qry = ' CREATE OR REPLACE VIEW public.vw_msg_vars AS ( From 554a27cc01502a68bb2291cd9ffd1ac188258e3f Mon Sep 17 00:00:00 2001 From: ma0048 Date: Thu, 2 Dec 2021 21:06:56 +0100 Subject: [PATCH 17/25] anzeigefehler fixed dokpruefung --- application/views/system/infocenter/dokpruefung.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/views/system/infocenter/dokpruefung.php b/application/views/system/infocenter/dokpruefung.php index 95e383569..f7446895c 100644 --- a/application/views/system/infocenter/dokpruefung.php +++ b/application/views/system/infocenter/dokpruefung.php @@ -22,7 +22,7 @@ titel) ? $dokument->bezeichnung : $dokument->titel ?> - autocomplete="off"> bezeichnung === $dokument->dokument_bezeichnung ? 'selected' : '') . " value = " . $dokumenttyp->dokument_kurzbz . ">" . $dokumenttyp->bezeichnung . "" From 4923c5fc2d12b0e17b7e70466893e6ad7bc3b717 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Fri, 3 Dec 2021 14:31:04 +0100 Subject: [PATCH 18/25] personen zusammenlegen mit udf --- include/person.class.php | 15 +++- include/prestudent.class.php | 9 ++ vilesci/stammdaten/personen_wartung.php | 108 +++++++++++++++++++++++- 3 files changed, 129 insertions(+), 3 deletions(-) diff --git a/include/person.class.php b/include/person.class.php index a50417db0..e10862ea1 100644 --- a/include/person.class.php +++ b/include/person.class.php @@ -24,6 +24,7 @@ */ require_once(dirname(__FILE__).'/basis_db.class.php'); require_once(dirname(__FILE__).'/datum.class.php'); +require_once(dirname(__FILE__).'/udf.class.php'); class person extends basis_db { @@ -64,6 +65,7 @@ class person extends basis_db public $foto_sperre = false; // boolean public $matr_nr; //varchar(32) public $bpk; //varchar(255) + public $udf_values; //json /** * Konstruktor - Uebergibt die Connection und laedt optional eine Person @@ -84,6 +86,8 @@ class person extends basis_db **/ public function load($personId) { + $udf = new UDF(); + //person_id auf gueltigkeit pruefen if (is_numeric($personId) && $personId != '') { @@ -91,8 +95,11 @@ class person extends basis_db gebdatum, gebort, gebzeit, foto, anmerkung, homepage, svnr, ersatzkennzeichen, familienstand, anzahlkinder, aktiv, insertamum, insertvon, updateamum, updatevon, ext_id, geschlecht, staatsbuergerschaft, geburtsnation, kurzbeschreibung, zugangscode, foto_sperre, - matr_nr, bpk - FROM public.tbl_person + matr_nr, bpk"; + if ($hasUDF = $udf->personHasUDF()) + $qry .= ", udf_values "; + + $qry .= "FROM public.tbl_person WHERE person_id = " . $this->db_add_param($personId, FHC_INTEGER); if (!$this->db_query($qry)) @@ -135,6 +142,10 @@ class person extends basis_db $this->foto_sperre = $this->db_parse_bool($row->foto_sperre); $this->matr_nr = $row->matr_nr; $this->bpk = $row->bpk; + if ($hasUDF) + { + $this->udf_values = $row->udf_values; + } } else { diff --git a/include/prestudent.class.php b/include/prestudent.class.php index ab1e329dd..1d493beb0 100644 --- a/include/prestudent.class.php +++ b/include/prestudent.class.php @@ -26,6 +26,7 @@ require_once(dirname(__FILE__).'/log.class.php'); require_once(dirname(__FILE__).'/phrasen.class.php'); require_once(dirname(__FILE__).'/globals.inc.php'); require_once(dirname(__FILE__).'/sprache.class.php'); +require_once(dirname(__FILE__).'/udf.class.php'); $sprache = getSprache(); $lang = new sprache(); @@ -73,6 +74,7 @@ class prestudent extends person public $priorisierung = null; public $foerderrelevant = null; public $standort_code = null; + public $udf_values = null; public $status_kurzbz; public $studiensemester_kurzbz; @@ -1413,6 +1415,9 @@ class prestudent extends person person_id=".$this->db_add_param($person_id, FHC_INTEGER)." ORDER BY prestudent_id"; + $udf = new UDF(); + $hasUDF = $udf->prestudentHasUDF(); + if($this->db_query($qry)) { while($row = $this->db_fetch_object()) @@ -1455,6 +1460,10 @@ class prestudent extends person $obj->gsstudientyp_kurzbz = $row->gsstudientyp_kurzbz; $obj->aufnahmegruppe_kurzbz = $row->aufnahmegruppe_kurzbz; $obj->priorisierung = $row->priorisierung; + if ($hasUDF) + { + $obj->udf_values = $row->udf_values; + } $this->result[] = $obj; } diff --git a/vilesci/stammdaten/personen_wartung.php b/vilesci/stammdaten/personen_wartung.php index 2c4c4f0fa..2def0bd3c 100644 --- a/vilesci/stammdaten/personen_wartung.php +++ b/vilesci/stammdaten/personen_wartung.php @@ -42,6 +42,7 @@ require_once ('../../include/kontakt.class.php'); require_once ('../../include/dokument.class.php'); require_once ('../../include/reihungstest.class.php'); require_once ('../../include/pruefling.class.php'); +require_once ('../../include/udf.class.php'); if (! $db = new basis_db()) @@ -54,6 +55,7 @@ $rechte->getBerechtigungen($uid); if (! $rechte->isBerechtigt('basis/person', null, 'suid')) die($rechte->errormsg); +$udf = new UDF(); $msg_info = array(); $msg_error = array(); $msg_warning = array(); @@ -283,6 +285,40 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p if ($doppelteReihungstestzuordnung === false) $sql_query_upd1 .= "UPDATE public.tbl_rt_person SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; + + $personUDF = $udf->personHasUDF(); + + if ($personUDF) + { + $udfToKeep = json_decode($personToKeep_obj->udf_values, true); + $udfToDelete = json_decode($personToDelete_obj->udf_values, true); + + $udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep; + $udfToDelete = is_null($udfToDelete) ? array() : $udfToDelete; + + if ($udfToKeep != $udfToDelete) + { + foreach ($udfToDelete as $key => $udf) + { + if (!array_key_exists($key, $udfToKeep)) + { + $udfToKeep[$key] = $udf; + } + elseif ($udfToKeep[$key] !== $udf && !is_null($udf)) + { + if (is_null($udfToKeep[$key])) + $udfToKeep[$key] = $udf; + else + { + $msg_error[] = 'Beide Personen haben unterschiedliche Werte in den UDFs und können nicht zusammengelegt werden.
+ Sie müssen die Datensätze manuell bereinigen, bevor Sie die Personen zusammenlegen können.'; + $error = true; + break; + } + } + } + } + } if ($error == false) { // Wenn bei einer der Personen das Foto gesperrt ist, dann die Sperre uebernehmen @@ -437,6 +473,7 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p $sql_query_upd1 .= "UPDATE system.tbl_filters SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; $sql_query_upd1 .= "UPDATE system.tbl_log SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; $sql_query_upd1 .= "UPDATE system.tbl_person_lock SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; + $sql_query_upd1 .= "UPDATE system.tbl_issue SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; $sql_query_upd1 .= "UPDATE wawi.tbl_betriebsmittelperson SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; $sql_query_upd1 .= "UPDATE wawi.tbl_konto SET person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . " WHERE person_id=" . $db->db_add_param($personToDelete, FHC_INTEGER) . ";"; $sql_query_upd1 .= $alma_query_upd; @@ -456,6 +493,9 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p // BPK erst setzen, wenn nur mehr eine Person vorhanden ist $sql_query_upd1 .= "UPDATE public.tbl_person SET bpk=" . $db->db_add_param($bpk, FHC_STRING) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";"; + if ($personUDF) + $sql_query_upd1 .= "UPDATE public.tbl_person SET udf_values=" . $db->db_add_param(json_encode($udfToKeep)) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";"; + if ($db->db_query($sql_query_upd1)) { $msg_info[] = "Update Query:"; @@ -730,9 +770,10 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p usort($prestudenten->result, "sortPrestudents"); + $prestudentUDF = $udf->prestudentHasUDF(); $prestudentenArray = array(); $kontaktLoeschArray = array(); - foreach ($prestudenten->result AS $row) + foreach ($prestudenten->result AS $key => $row) { $prestudentenArray[] = array( 'prestudent_id' => $row->prestudent_id, @@ -753,6 +794,8 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p 'zgvmanation' => $row->zgvmanation, 'studiengang_typ' => $row->studiengang_typ ); + if ($prestudentUDF) + $prestudentenArray[$key] = array_merge($prestudentenArray[$key], array('udf_values' => $row->udf_values)); } /* @@ -793,6 +836,48 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p $i++; continue; } + + //Wenn die UDF values nicht zusammengeführt werden können, wird mit dem nächsten weitergemacht und eine Warnung ausgegeben + if ($prestudentUDF) + { + $udfError = false; + + $udfToKeep = json_decode($prestudentenArray[$previousKey]['udf_values'], true);; + $udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep; + + $udfToDelete = json_decode($value['udf_values'], true); + $udfToDelete = is_null($udfToDelete) ? array() : $udfToDelete; + + if ($udfToKeep != $udfToDelete) + { + foreach ($udfToDelete as $udfKey => $udf) + { + if (!array_key_exists($udfKey, $udfToKeep)) + { + $udfToKeep[$udfKey] = $udf; + } + elseif ($udfToKeep[$udfKey] !== $udf && !is_null($udf)) + { + if (is_null($udfToKeep[$udfKey])) + $udfToKeep[$udfKey] = $udf; + else + { + + $warningList['udfUnklar'][$i][1] = $prestudentId; + $warningList['udfUnklar'][$i][2] = $value['prestudent_id']; + $i++; + $udfError = true; + break; + } + } + } + } + + $prestudentenArray[$previousKey]['udf_values'] = json_encode($udfToKeep); + if ($udfError) + continue; + + } // Wenn der Status gleich ist, wird auf bestätigt-datum geprüft if ($status_kurzbz == $value['status_kurzbz']) { @@ -894,6 +979,11 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p $zgvmadatum = $value['zgvmadatum']; $zgvmanation = $value['zgvmanation']; $previousKey = $key; + if ($prestudentUDF) + { + $udfToKeep = json_decode($value['udf_values'], true); + $udfToKeep = is_null($udfToKeep) ? array() : $udfToKeep; + } } // Messages in $msg_warning schreiben @@ -934,6 +1024,22 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p } } + $msg_warning[] = $messageOutput; + $messageOutput = ''; + if(isset($warningList['udfUnklar'])) + { + foreach ($warningList['udfUnklar'] as $key => $value) { + + $messageOutput .= '
Bei folgenden PreStudenten sind die UDFs widersprüchlich oder unklar:
'; + + foreach ($value as $presstudentid) + { + $messageOutput .= '    '.$presstudentid.'
'; + } + $messageOutput .= '
'; + } + } + $msg_warning[] = $messageOutput; //Wenn Prüfling auf zu löschenden Prestudenten zeigt und ggf auf bleibenden umhängen. From 376aaadecc3510be1d9f9738cfa7e772722c5a18 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Fri, 3 Dec 2021 15:21:38 +0100 Subject: [PATCH 19/25] bug fixed --- vilesci/stammdaten/personen_wartung.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/vilesci/stammdaten/personen_wartung.php b/vilesci/stammdaten/personen_wartung.php index 2def0bd3c..6e9f1cc21 100644 --- a/vilesci/stammdaten/personen_wartung.php +++ b/vilesci/stammdaten/personen_wartung.php @@ -298,16 +298,16 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p if ($udfToKeep != $udfToDelete) { - foreach ($udfToDelete as $key => $udf) + foreach ($udfToDelete as $key => $udfValue) { if (!array_key_exists($key, $udfToKeep)) { - $udfToKeep[$key] = $udf; + $udfToKeep[$key] = $udfValue; } - elseif ($udfToKeep[$key] !== $udf && !is_null($udf)) + elseif ($udfToKeep[$key] !== $udfValue && !is_null($udfValue)) { if (is_null($udfToKeep[$key])) - $udfToKeep[$key] = $udf; + $udfToKeep[$key] = $udfValue; else { $msg_error[] = 'Beide Personen haben unterschiedliche Werte in den UDFs und können nicht zusammengelegt werden.
@@ -850,16 +850,16 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p if ($udfToKeep != $udfToDelete) { - foreach ($udfToDelete as $udfKey => $udf) + foreach ($udfToDelete as $udfKey => $udfValue) { if (!array_key_exists($udfKey, $udfToKeep)) { - $udfToKeep[$udfKey] = $udf; + $udfToKeep[$udfKey] = $udfValue; } - elseif ($udfToKeep[$udfKey] !== $udf && !is_null($udf)) + elseif ($udfToKeep[$udfKey] !== $udfValue && !is_null($udfValue)) { if (is_null($udfToKeep[$udfKey])) - $udfToKeep[$udfKey] = $udf; + $udfToKeep[$udfKey] = $udfValue; else { From dd8876a375f2f1090943038b2e424bae1548e19e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Mon, 6 Dec 2021 10:16:19 +0100 Subject: [PATCH 20/25] =?UTF-8?q?Automatische=20Pause=20f=C3=BCr=20einzeln?= =?UTF-8?q?e=20typen=20hinzugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/tools/zeitaufzeichnung.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cis/private/tools/zeitaufzeichnung.php b/cis/private/tools/zeitaufzeichnung.php index 6864641c3..1e91aec20 100644 --- a/cis/private/tools/zeitaufzeichnung.php +++ b/cis/private/tools/zeitaufzeichnung.php @@ -660,7 +660,7 @@ echo ' function checkPausenblock() { var sel = $("#aktivitaet").val(); - var activities = ["Admin", "Lehre", "FuE", "Operativ", "Betrieb", "Design"]; + var activities = ["Admin", "Lehre", "FuE", "Operativ", "Betrieb", "Design", "LVEntwicklung", "Weiterbildung", "FuEallg"]; if (activities.includes(sel)) showPausenblock(); else From 684363aaead5e8dddb306498089c4afb7e88db9f Mon Sep 17 00:00:00 2001 From: Manfred Date: Tue, 7 Dec 2021 20:58:47 +0100 Subject: [PATCH 21/25] Anpassungen bpk und Gebustsdatum --- vilesci/bis/lehrgangsmeldung.php | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/vilesci/bis/lehrgangsmeldung.php b/vilesci/bis/lehrgangsmeldung.php index 8649c2a5b..158d7d164 100644 --- a/vilesci/bis/lehrgangsmeldung.php +++ b/vilesci/bis/lehrgangsmeldung.php @@ -311,7 +311,7 @@ if($result = $db->db_query($qry)) //Vergleich der letzten 6 Stellen der SVNR mit Geburtsdatum - ausser bei 01.01. und 01.07. if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107') { - $error_log_hinweis.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht"; + $error_log_hinweis.=(!empty($error_log_hinweis)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$row->gebdatum.") nicht"; } //Vergleich der letzten 6 Stellen des Ersatzkennzeichen mit Geburtsdatum if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat) @@ -390,7 +390,7 @@ if($result = $db->db_query($qry)) } if($row->bpk == '' || $row->bpk == null) { - $error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt"; + $error_log_hinweis .= (!empty($error_log_hinweis) ? ', ' : '') . "bPK fehlt"; } if($row->bpk != '' && $row->bpk != null) @@ -606,7 +606,7 @@ if($result = $db->db_query($qry)) { if($error_log_hinweis != '') { - $v.="Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($laststatus->status_kurzbz): \n"; + $v.="Bei Student (UID, Vorname, Nachname) '".$row->student_uid."', '".$row->nachname."', '".$row->vorname."' ($row->status_kurzbz): \n"; $v.="     ".$error_log_hinweis." (Nicht BIS-Relevant)\n"; $error_log_hinweis = ''; } @@ -649,10 +649,13 @@ if($result = $db->db_query($qry)) $datei.=" ".$row->ersatzkennzeichen.""; } - - $datei.=" - ".$row->bpk." - "; + + if($row->bpk != '' && $row->bpk != null) + { + $datei.=" + ".$row->bpk." + "; + } $datei.=" ".$row->staatsbuergerschaft." From 5edc56a8f2a89143c7562d4f767268beffc1da20 Mon Sep 17 00:00:00 2001 From: Manfred Date: Tue, 7 Dec 2021 20:59:38 +0100 Subject: [PATCH 22/25] =?UTF-8?q?Speichern=20von=20Insertamum=20und=20Upda?= =?UTF-8?q?teamum=20bei=20R=C3=A4umen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/stammdaten/raum_details.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/vilesci/stammdaten/raum_details.php b/vilesci/stammdaten/raum_details.php index 92f71886a..09ff298a5 100644 --- a/vilesci/stammdaten/raum_details.php +++ b/vilesci/stammdaten/raum_details.php @@ -115,9 +115,15 @@ $sg_update->gebteil = $gebteil; $sg_update->oe_kurzbz = $oe_kurzbz; $sg_update->arbeitsplaetze = $arbeitsplaetze; + $sg_update->updateamum = date('Y-m-d H:i:s'); + $sg_update->updatevon = $user; if ($_POST["neu"] == "true") + { + $sg_update->insertamum = date('Y-m-d H:i:s'); + $sg_update->insertvon = $user; $sg_update->new = 1; + } if(!$sg_update->save()) { From 3301aa87ddd7183f6bc5c9ab25e58ff864774186 Mon Sep 17 00:00:00 2001 From: Manfred Date: Tue, 7 Dec 2021 21:00:53 +0100 Subject: [PATCH 23/25] =?UTF-8?q?Export=20f=C3=BCr=20alle=20Bachelor=20und?= =?UTF-8?q?=20Masterstudieng=C3=A4nge.=20BIS-Datum=20als=20GET?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vilesci/bis/studentenmeldung.php | 261 +++++++++++++++++++------------ 1 file changed, 161 insertions(+), 100 deletions(-) diff --git a/vilesci/bis/studentenmeldung.php b/vilesci/bis/studentenmeldung.php index 710e38ead..6d1650f53 100644 --- a/vilesci/bis/studentenmeldung.php +++ b/vilesci/bis/studentenmeldung.php @@ -54,7 +54,6 @@ $error_log_hinweis=''; $error_log1=''; $error_log_all=""; $error_log_io = ''; // error log fuer plausichecks von incomings/outgoings -$stgart=''; $fehler=''; $maxsemester=0; $v=''; @@ -106,6 +105,8 @@ $student_data=array(); $datum_obj = new datum(); //Beginn- und Endedatum des aktuellen Semesters +// Update 07.12.2021 kindlm: scheint nicht verwendet zu werden +/* $qry="SELECT * FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ssem).";"; if($result = $db->db_query($qry)) { @@ -114,7 +115,8 @@ if($result = $db->db_query($qry)) $beginn=$row->start; $ende=$row->ende; } -} +}*/ + //Ermittlung aktuelles und letztes BIS-Meldedatum if(mb_strstr($ssem,"WS")) { @@ -130,6 +132,13 @@ else { die('Ungültiges Studiensemester!'); } + +//Wenn bisdatum als GET-Parameter übergeben wird, dieses Datum nehmen +if (isset($_GET['bisdatum'])) +{ + $bisdatum = $_GET['bisdatum']; +} + //ausgewaehlter Studiengang if(isset($_GET['stg_kz'])) { @@ -178,75 +187,46 @@ $kodex_studstatuscode_array['Unterbrecher']=2; $kodex_studstatuscode_array['Absolvent'] =3; $kodex_studstatuscode_array['Abbrecher'] =4; -//Studiengangsdaten auslesen -$stg_obj = new studiengang(); -if($stg_obj->load($stg_kz)) -{ - $maxsemester=$stg_obj->max_semester; - if($maxsemester==0) - { - echo "Die maximale Semesteranzahl des Studienganges ist nicht angegeben!"; - exit; - } - - $erhalter = sprintf('%03s',$stg_obj->erhalter_kz); - - switch($stg_obj->typ) - { - case 'b': $stgart=1; break; - case 'm': $stgart=2; break; - case 'd': $stgart=3; break; - case 'e': $stgart=4; break; - default: die('

Dieser Studiengangstyp kann nicht gemeldet werden. Typ muss (b, m, d oder e) sein

'); break; - } - - // DoubleDegree Studierende werden per Default aus BB gemeldet. - // Wenn es ein reiner VZ Studiengang ist, dann sollen diese aber als VZ gemeldet werden. - if($stg_obj->orgform_kurzbz=='VZ') - $orgform_code_array['DDP']=$orgform_code_array['VZ']; - - $orgform_code = $orgform_code_array[$stg_obj->orgform_kurzbz]; - $orgform_kurzbz=$stg_obj->orgform_kurzbz; -} -else - die('Fehler:'.$stg_obj->errormsg); - - //Ausgabe aktiver Studenten, die nicht gemeldet werden -$qry_akt=" - SELECT - DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id - FROM - public.tbl_student - JOIN public.tbl_benutzer ON(student_uid=uid) - JOIN public.tbl_person USING (person_id) - JOIN public.tbl_prestudent USING (prestudent_id) - JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id) - WHERE - bismelden=FALSE - AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)." - AND (tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." AND status_kurzbz IN ('Student','Diplomand','Unterbrecher','Praktikant','Outgoing')) - AND tbl_prestudent.prestudent_id NOT IN - ( - SELECT prestudent_id - FROM public.tbl_prestudentstatus - WHERE - tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." - AND (status_kurzbz='Abbrecher' OR status_kurzbz='Absolvent') - ) - ORDER BY student_uid, nachname, vorname - "; -if($result_akt = $db->db_query($qry_akt)) +if ($stg_kz != 'alleBaMa') { - while($row_akt = $db->db_fetch_object($result_akt)) + $qry_akt = " + SELECT + DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id + FROM + public.tbl_student + JOIN public.tbl_benutzer ON(student_uid=uid) + JOIN public.tbl_person USING (person_id) + JOIN public.tbl_prestudent USING (prestudent_id) + JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id) + WHERE + bismelden=FALSE + AND tbl_student.studiengang_kz=".$db->db_add_param($stg_kz)." + AND (tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." AND status_kurzbz IN ('Student','Diplomand','Unterbrecher','Praktikant','Outgoing')) + AND tbl_prestudent.prestudent_id NOT IN + ( + SELECT prestudent_id + FROM public.tbl_prestudentstatus + WHERE + tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem)." + AND (status_kurzbz='Abbrecher' OR status_kurzbz='Absolvent') + ) + ORDER BY student_uid, nachname, vorname + "; + if ($result_akt = $db->db_query($qry_akt)) { - $v.="Person (UID, Vorname, Nachname) '".$row_akt->student_uid."', '".$row_akt->nachname."', '".$row_akt->vorname."' hat Status $row_akt->status_kurzbz, wird aber nicht BIS gemeldet!!!
\n"; - $anzahl_fehler++; + while ($row_akt = $db->db_fetch_object($result_akt)) + { + $v .= "Person (UID, Vorname, Nachname) '".$row_akt->student_uid."', '".$row_akt->nachname."', '".$row_akt->vorname."' hat Status $row_akt->status_kurzbz, wird aber nicht BIS gemeldet!!!
\n"; + $anzahl_fehler++; + } } } +if ($stg_kz != 'alleBaMa') +{ //Incoming ohne I/O Datensatz anzeigen -$qry_in=" + $qry_in = " SELECT DISTINCT ON(student_uid, nachname, vorname) *, public.tbl_person.person_id AS pers_id FROM @@ -261,16 +241,16 @@ $qry_in=" AND (status_kurzbz='Incoming' AND NOT EXISTS (SELECT 1 FROM bis.tbl_bisio WHERE student_uid=tbl_student.student_uid)) ORDER BY student_uid, nachname, vorname "; -if($result_in = $db->db_query($qry_in)) -{ - while($row_in = $db->db_fetch_object($result_in)) + if ($result_in = $db->db_query($qry_in)) { - $v.="Bei Student (UID, Vorname, Nachname) '".$row_in->student_uid."', '".$row_in->nachname."', '".$row_in->vorname."' ($row_in->status_kurzbz): \n"; - $v.="     Es fehlt der I/O-Datensatz\n\n"; - $anzahl_fehler++; + while ($row_in = $db->db_fetch_object($result_in)) + { + $v .= "Bei Student (UID, Vorname, Nachname) '".$row_in->student_uid."', '".$row_in->nachname."', '".$row_in->vorname."' ($row_in->status_kurzbz): \n"; + $v .= "     Es fehlt der I/O-Datensatz\n\n"; + $anzahl_fehler++; + } } } - //Hauptselect // An der FHTW können nur die Incomings ausgelesen werden, wenn die stg_kz 10006 übergeben wird if (CAMPUS_NAME == 'FH Technikum Wien' && $stg_kz==10006) @@ -292,6 +272,34 @@ if (CAMPUS_NAME == 'FH Technikum Wien' && $stg_kz==10006) ORDER BY student_uid, nachname, vorname "; } +// Wenn "alleBaMa" als $stg_kz übergeben wird, wird ein großes XML mit allen Studiengängen geladen +elseif ($stg_kz == 'alleBaMa') +{ + $qry=" + SELECT + DISTINCT ON(tbl_studiengang.typ, tbl_student.studiengang_kz, matrikelnummer, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat + FROM + public.tbl_student + JOIN public.tbl_benutzer ON(student_uid=uid) + JOIN public.tbl_person USING (person_id) + JOIN public.tbl_prestudent USING (prestudent_id) + JOIN public.tbl_prestudentstatus ON(tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id) + JOIN public.tbl_studiengang ON (tbl_studiengang.studiengang_kz=tbl_student.studiengang_kz) + WHERE + bismelden=TRUE + AND tbl_studiengang.typ IN ('b','m') + AND (((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($ssem).") AND (tbl_prestudentstatus.datum<=".$db->db_add_param($bisdatum).") + AND (status_kurzbz='Student' OR status_kurzbz='Outgoing' + OR status_kurzbz='Praktikant' OR status_kurzbz='Diplomand' OR status_kurzbz='Absolvent' + OR status_kurzbz='Abbrecher' OR status_kurzbz='Unterbrecher')) + OR ((tbl_prestudentstatus.studiensemester_kurzbz=".$db->db_add_param($psem).") AND (status_kurzbz='Absolvent' + OR status_kurzbz='Abbrecher') AND tbl_prestudentstatus.datum>".$db->db_add_param($bisprevious).") + OR (status_kurzbz='Incoming' AND student_uid IN (SELECT student_uid FROM bis.tbl_bisio WHERE (tbl_bisio.bis>=".$db->db_add_param($bisprevious).") + OR (tbl_bisio.von<=".$db->db_add_param($bisdatum)." AND (tbl_bisio.bis>=".$db->db_add_param($bisdatum)." OR tbl_bisio.bis IS NULL)) + ))) + ORDER BY tbl_studiengang.typ, tbl_student.studiengang_kz, matrikelnummer, nachname, vorname + "; +} else { $qry=" @@ -321,25 +329,72 @@ else if($result = $db->db_query($qry)) { - $header =" - - ".$erhalter." - ".date("dmY", $datumobj->mktime_fromdate($bisdatum))." - - - ".$stg_kz.""; - - - $datei .= $header; - $dateiNurBewerber .= $header; + $stg_kz_index = ''; while($row = $db->db_fetch_object($result)) { - $datei.= GenerateXMLStudentBlock($row); + if ($row->studiengang_kz != $stg_kz_index) + { + //Studiengangsdaten auslesen + $stg_obj = new studiengang(); + if($stg_obj->load($row->studiengang_kz)) + { + $maxsemester = $stg_obj->max_semester; + if($maxsemester == 0) + { + echo "Die maximale Semesteranzahl des Studienganges ist nicht angegeben!"; + exit; + } + + $erhalter = sprintf('%03s',$stg_obj->erhalter_kz); + + switch($stg_obj->typ) + { + case 'b': $stgart = 1; break; + case 'm': $stgart = 2; break; + case 'd': $stgart = 3; break; + case 'e': $stgart = 4; break; + default: die('

Dieser Studiengangstyp kann nicht gemeldet werden. Typ muss (b, m, d oder e) sein

'); break; + } + + // DoubleDegree Studierende werden per Default aus BB gemeldet. + // Wenn es ein reiner VZ Studiengang ist, dann sollen diese aber als VZ gemeldet werden. + if($stg_obj->orgform_kurzbz == 'VZ') + $orgform_code_array['DDP'] = $orgform_code_array['VZ']; + + $orgform_code = $orgform_code_array[$stg_obj->orgform_kurzbz]; + $orgform_kurzbz = $stg_obj->orgform_kurzbz; + } + else + die('Fehler:'.$stg_obj->errormsg); + + // Header am Beginn rausschreiben + if ($stg_kz_index == '') + { + $header = " + + ".$erhalter." + ".date("dmY", $datumobj->mktime_fromdate($bisdatum))." + "; + + $datei .= $header; + $dateiNurBewerber .= $header; + } + if ($stg_kz_index != '' && $row->studiengang_kz != $stg_kz_index) + { + $datei .= " +
"; + } + $stg_kz_index = $row->studiengang_kz; + $datei .= " + + ".$row->studiengang_kz.""; + } + $datei .= GenerateXMLStudentBlock($row); } //Bewerberblock bei Ausserordentlichen nicht anzeigen - if($stg_kz!=('9'.$erhalter)) + /*if($stg_kz!=('9'.$erhalter)) { $stg_obj = new studiengang(); @@ -360,7 +415,7 @@ if($result = $db->db_query($qry)) $datei.=$bewerberBlock; $dateiNurBewerber.=$bewerberBlock; } - } + }*/ } $footer=" @@ -421,6 +476,7 @@ if ($rechte->isBerechtigt('admin')) { echo '
'; echo 'Studiengang: '; echo '
'; } -$studiengang = new studiengang($stg_kz); -$typ = new studiengang($stg_kz); -$typ->getStudiengangTyp($studiengang->typ); -echo "

BIS - Studentendaten werden überprüft! Studiengang: ".$db->convert_html_chars($stg_kz)." - ".$typ->bezeichnung." ".$studiengang->bezeichnung."

\n"; +if ($stg_kz != 'alleBaMa') +{ + $studiengang = new studiengang($stg_kz); + $typ = new studiengang($stg_kz); + $typ->getStudiengangTyp($studiengang->typ); + echo "

BIS - Studentendaten werden überprüft. Studiengang: ".$db->convert_html_chars($stg_kz)." - ".$typ->bezeichnung." ".$studiengang->bezeichnung."

\n"; +} +else +{ + echo "

BIS - Studentendaten aller Bachelor- und Master-Studiengänge werden überprüft.

\n"; +} echo "

Nicht plausible BIS-Daten (für Meldung ".$db->convert_html_chars($ssem)."):


"; echo nl2br($v."\n\n"); @@ -821,7 +884,7 @@ function GenerateXMLStudentBlock($row) } if($row->svnr!='' && $row->svnr!=null && substr($row->svnr,4,6)!=$row->vdat && substr($row->vdat,0,4)!='0101' && substr($row->vdat,0,4)!='0107') { - $error_log_hinweis.=(!empty($error_log)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$datum_obj->formatDatum($row->gebdatum,'d.m.Y').") nicht"; + $error_log_hinweis.=(!empty($error_log_hinweis)?', ':'')."SVNR ('".$row->svnr."') enthält Geburtsdatum (".$datum_obj->formatDatum($row->gebdatum,'d.m.Y').") nicht"; } if($row->ersatzkennzeichen!='' && $row->ersatzkennzeichen!=null && substr($row->ersatzkennzeichen,4,6)!=$row->vdat) { @@ -853,7 +916,7 @@ function GenerateXMLStudentBlock($row) } if($row->bpk == '' || $row->bpk == null) { - $error_log .= (!empty($error_log) ? ', ' : '') . "bPK fehlt"; + $error_log_hinweis .= (!empty($error_log_hinweis) ? ', ' : '') . "bPK fehlt"; } if($row->bpk != '' && $row->bpk != null) { @@ -996,8 +1059,7 @@ function GenerateXMLStudentBlock($row) { if ($db->db_num_rows($resultAbbrecher) == 0) { - $error_log .= (!empty($error_log) ? ', ' : '')."Der Student ist Abbrecher vor der ersten BIS-Meldung. Bitte im FAS das Hakerl bei \"Bismelden\" im Reiter \"Prestudent\" entfernen"; - + //$error_log .= (!empty($error_log) ? ', ' : '')."Der Student ist Abbrecher vor der ersten BIS-Meldung. Bitte im FAS das Hakerl bei \"Bismelden\" im Reiter \"Prestudent\" entfernen"; } } } @@ -1322,9 +1384,11 @@ function GenerateXMLStudentBlock($row) " . $row->ersatzkennzeichen . ""; } - $datei .= " - " . $row->bpk . " - "; + if($row->bpk != '' && $row->bpk != null) + { + $datei.=" + ".$row->bpk.""; + } $datei .= " " . $row->staatsbuergerschaft . " @@ -1333,14 +1397,11 @@ function GenerateXMLStudentBlock($row) " . $nation . ""; - if (!$ausserordentlich && !$incoming) - { - $datei .= " + $datei .= " " . $zustell_plz . " " . $zustell_gemeinde . " " . $zustell_strasse . " " . $zustell_nation . ""; - } if ($co_name != '') { From d033803f47c9ab386cb28f86bee52ab1112fc318 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Thu, 9 Dec 2021 11:09:06 +0100 Subject: [PATCH 24/25] Sortierung an BIS Vergleich angepasst --- vilesci/bis/studentenmeldung.php | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/vilesci/bis/studentenmeldung.php b/vilesci/bis/studentenmeldung.php index 76ee1aecc..3842f7074 100644 --- a/vilesci/bis/studentenmeldung.php +++ b/vilesci/bis/studentenmeldung.php @@ -277,7 +277,7 @@ elseif ($stg_kz == 'alleBaMa') { $qry=" SELECT - DISTINCT ON(tbl_studiengang.typ, tbl_student.studiengang_kz, matrikelnummer, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat + DISTINCT ON(tbl_student.studiengang_kz, matrikelnr, nachname, vorname) *, public.tbl_person.person_id AS pers_id, to_char(gebdatum, 'ddmmyy') AS vdat FROM public.tbl_student JOIN public.tbl_benutzer ON(student_uid=uid) @@ -297,7 +297,7 @@ elseif ($stg_kz == 'alleBaMa') OR (status_kurzbz='Incoming' AND student_uid IN (SELECT student_uid FROM bis.tbl_bisio WHERE (tbl_bisio.bis>=".$db->db_add_param($bisprevious).") OR (tbl_bisio.von<=".$db->db_add_param($bisdatum)." AND (tbl_bisio.bis>=".$db->db_add_param($bisdatum)." OR tbl_bisio.bis IS NULL)) ))) - ORDER BY tbl_studiengang.typ, tbl_student.studiengang_kz, matrikelnummer, nachname, vorname + ORDER BY tbl_student.studiengang_kz, matrikelnr, nachname, vorname "; } else @@ -448,26 +448,26 @@ echo ' { $("#t1").tablesorter( { - sortList: [[6,1],[5,1],[4,1],[2,0],[3,0]], + sortList: [[6,1],[5,1],[4,1],[2,0],[3,0]], widgets: ["zebra", "filter", "stickyHeaders"], - widgetOptions : { filter_functions: - { - // Add select menu to this column + widgetOptions : { filter_functions: + { + // Add select menu to this column 4 : { - "Abbrecher" : function(e, n, f, i, $r, c, data) { return /Abbrecher/.test(e); }, + "Abbrecher" : function(e, n, f, i, $r, c, data) { return /Abbrecher/.test(e); }, "Absolvent" : function(e, n, f, i, $r, c, data) { return /Absolvent/.test(e); }, "Diplomand" : function(e, n, f, i, $r, c, data) { return /Diplomand/.test(e); }, "Incoming" : function(e, n, f, i, $r, c, data) { return /Incoming/.test(e); }, "Student" : function(e, n, f, i, $r, c, data) { return /Student/.test(e); }, - "Unterbrecher" : function(e, n, f, i, $r, c, data) { return /Unterbrecher/.test(e); }, + "Unterbrecher" : function(e, n, f, i, $r, c, data) { return /Unterbrecher/.test(e); }, } - } - } + } + } }); $("#t2").tablesorter( { - sortList: [[0,0],[1,0]], - widgets: ["zebra", "filter", "stickyHeaders"] + sortList: [[0,0],[1,0]], + widgets: ["zebra", "filter", "stickyHeaders"] }); }); From c3588b4eb49610da1a1b8c7099eb15290c27f1b2 Mon Sep 17 00:00:00 2001 From: ma0048 Date: Thu, 9 Dec 2021 20:27:08 +0100 Subject: [PATCH 25/25] studeingang hinzugefuegt bei der uebersicht --- .../views/system/infocenter/infocenterAbgewiesenData.php | 2 ++ system/filtersupdate.php | 1 + 2 files changed, 3 insertions(+) diff --git a/application/views/system/infocenter/infocenterAbgewiesenData.php b/application/views/system/infocenter/infocenterAbgewiesenData.php index 3bf60a9ef..dbe0540be 100644 --- a/application/views/system/infocenter/infocenterAbgewiesenData.php +++ b/application/views/system/infocenter/infocenterAbgewiesenData.php @@ -14,6 +14,7 @@ $query = ' ps.prestudent_id AS "PreStudentID", p.vorname AS "Vorname", p.nachname AS "Nachname", + sg.kurzbzlang as "Studiengang", pss.insertamum AS "AbgewiesenAm", ( SELECT l.zeitpunkt @@ -62,6 +63,7 @@ $query = ' 'PreStudentID', 'Vorname', 'Nachname', + 'Studiengang', 'Abgewiesen am', 'Nachricht' ), diff --git a/system/filtersupdate.php b/system/filtersupdate.php index cf7ac4685..249a66fab 100644 --- a/system/filtersupdate.php +++ b/system/filtersupdate.php @@ -486,6 +486,7 @@ $filters = array( {"name": "PreStudentID"}, {"name": "Vorname"}, {"name": "Nachname"}, + {"name": "Studiengang"}, {"name": "AbgewiesenAm"}, {"name": "Nachricht"} ],