class="d-inline float-right"
required>
@@ -460,7 +459,7 @@
id="absagebtn_prestudent_id ?>">
+ class="btn btn-default absageBtn" id="absagebtn_prestudent_id ?>">
p->t('ui', 'absagen') ?>
diff --git a/application/views/system/issues/issuesData.php b/application/views/system/issues/issuesData.php
index 50b7c1483..c60b03a74 100644
--- a/application/views/system/issues/issuesData.php
+++ b/application/views/system/issues/issuesData.php
@@ -6,7 +6,6 @@ $ALL_FUNKTIONEN_OE_KURZBZ = "('" . implode("','", array_keys($all_funktionen_oe_
// all oes for which logged user has issues permissions, including permissions for "special" issue funktion
$ALL_OE_KURZBZ_BERECHTIGT = "('" . implode("','", $all_oe_kurzbz_berechtigt) . "')";
$RELEVANT_PRESTUDENT_STATUS = "('Aufgenommener', 'Student', 'Incoming', 'Diplomand', 'Abbrecher', 'Unterbrecher', 'Absolvent')";
-$LANGUAGE_INDEX = getUserLanguage() == 'German' ? '1' : '2';
// get issues for the oes of the logged user or for the persons (students, oe-zuordnung) of the oes
$query = "WITH zustaendigkeiten AS (
@@ -34,73 +33,97 @@ $query = "WITH zustaendigkeiten AS (
FROM system.tbl_fehler_zustaendigkeiten zst
)";
-$query .= "SELECT issue_id, fehlercode AS \"Fehlercode\", iss.fehlercode_extern AS \"Fehlercode extern\", datum AS \"Datum\",
- inhalt AS \"Inhalt\", inhalt_extern AS \"Inhalt extern\", iss.person_id AS \"PersonId\", iss.oe_kurzbz AS \"OE\",
- ftyp.bezeichnung_mehrsprachig[".$LANGUAGE_INDEX."] AS \"Fehlertyp\", stat.bezeichnung_mehrsprachig[".$LANGUAGE_INDEX."] AS \"Fehlerstatus\",
- verarbeitetvon AS \"Verarbeitet von\",verarbeitetamum AS \"Verarbeitet am\", fr.app AS \"Applikation\",
- fr.fehlertyp_kurzbz AS \"Fehlertypcode\", iss.status_kurzbz AS \"Statuscode\",
- pers.vorname AS \"Vorname\", pers.nachname AS \"Nachname\",
- (
- /* show all relevant Studiengänge of person and wether it is an employee*/
- SELECT STRING_AGG(studiengang || ' ' || last_status, ' | ')
- || (CASE WHEN EXISTS (
- SELECT 1 FROM public.tbl_mitarbeiter ma
- JOIN public.tbl_benutzer ben ON ma.mitarbeiter_uid = ben.uid
- WHERE person_id = prestudents.person_id
- AND ben.aktiv
- ) THEN ' | Mitarbeiter' ELSE '' END)
- FROM (
- SELECT DISTINCT person_id, prestudent_id, UPPER(stg.typ || stg.kurzbz) AS studiengang, get_rolle_prestudent(ps.prestudent_id, null) AS last_status
- FROM public.tbl_prestudent ps
- JOIN public.tbl_studiengang stg USING (studiengang_kz)
- WHERE person_id = pers.person_id
- ORDER BY prestudent_id DESC
- ) prestudents
- WHERE last_status IN ('Abgewiesener','Aufgenommener', 'Student', 'Incoming', 'Diplomand', 'Abbrecher', 'Unterbrecher', 'Absolvent')
- GROUP BY person_id
- LIMIT 1;
- ) AS \"Zugehörigkeit\",
- CASE
- WHEN
- EXISTS(SELECT 1
- FROM zustaendigkeiten
- WHERE fehlercode = iss.fehlercode
- AND zustaendig = TRUE) /* If Zuständigkeit is defined for the oe/person, zustaendig. */
- THEN 'Ja'
- WHEN
- EXISTS(SELECT 1
- FROM zustaendigkeiten
- WHERE fehlercode = iss.fehlercode
- AND zustaendig = FALSE) /* If Zuständigkeit is defined for different oe/person, not zustaendig. */
- THEN 'Nein'
- ELSE 'Ja' /* If no Zuständigkeit defined, zustaendig by default. */
- END AS \"Hauptzuständig\",
- (
- SELECT string_agg(vorname || ' ' || nachname, ' | ' ORDER BY vorname, nachname)
- FROM system.tbl_fehler_zustaendigkeiten
- JOIN public.tbl_person USING (person_id)
- WHERE fehlercode = fr.fehlercode
- GROUP BY fehlercode
- ) AS \"Person Zuständigkeiten\",
- (
- SELECT string_agg(organisationseinheittyp_kurzbz || ' ' || oe.bezeichnung || COALESCE(' - ' || fu.beschreibung, ''), ' | ' ORDER BY bezeichnung, oe_kurzbz)
- FROM system.tbl_fehler_zustaendigkeiten
- LEFT JOIN public.tbl_organisationseinheit oe USING (oe_kurzbz)
- LEFT JOIN public.tbl_funktion fu USING (funktion_kurzbz)
- WHERE fehlercode = fr.fehlercode
- GROUP BY fehlercode
- ) AS \"Organisationseinheit Zuständigkeiten\",
- pers.bpk AS \"BPK\",
- pers.matr_nr AS \"Matrikelnummer\"
- FROM system.tbl_issue iss
- JOIN system.tbl_fehler fr USING (fehlercode)
- JOIN system.tbl_fehlertyp ftyp USING (fehlertyp_kurzbz)
- JOIN system.tbl_issue_status stat USING (status_kurzbz)
- LEFT JOIN public.tbl_person pers ON iss.person_id = pers.person_id
- WHERE EXISTS ( /* if oe or person is specified in fehler_zustaendigkeiten */
- SELECT 1 FROM zustaendigkeiten
- WHERE fehlercode = iss.fehlercode
- AND zustaendig = TRUE)";
+$query .= "
+ SELECT
+ issue_id, fehlercode AS \"Fehlercode\", fehler_kurzbz AS \"Fehler Kurzbezeichnung\", iss.fehlercode_extern AS \"Fehlercode extern\", datum AS \"Datum\",
+ inhalt AS \"Inhalt\", inhalt_extern AS \"Inhalt extern\", iss.person_id AS \"PersonId\", iss.oe_kurzbz AS \"OE\",
+ ftyp.bezeichnung_mehrsprachig[".$language_index."] AS \"Fehlertyp\",
+ stat.bezeichnung_mehrsprachig[".$language_index."] AS \"Fehlerstatus\",
+ verarbeitetvon AS \"Verarbeitet von\",verarbeitetamum AS \"Verarbeitet am\", fr.app AS \"Applikation\",
+ fr.fehlertyp_kurzbz AS \"Fehlertypcode\", iss.status_kurzbz AS \"Statuscode\",
+ pers.vorname AS \"Vorname\", pers.nachname AS \"Nachname\",
+ (
+ /* show all relevant Studiengänge of person and wether it is an employee*/
+ SELECT
+ STRING_AGG(studiengang || ' ' || last_status, ' | ')
+ || (CASE WHEN EXISTS (
+ SELECT 1 FROM public.tbl_mitarbeiter ma
+ JOIN public.tbl_benutzer ben ON ma.mitarbeiter_uid = ben.uid
+ WHERE person_id = prestudents.person_id
+ AND ben.aktiv
+ ) THEN ' | Mitarbeiter' ELSE '' END)
+ FROM (
+ SELECT
+ DISTINCT person_id, prestudent_id, UPPER(stg.typ || stg.kurzbz) AS studiengang,
+ get_rolle_prestudent(ps.prestudent_id, null) AS last_status
+ FROM
+ public.tbl_prestudent ps
+ JOIN public.tbl_studiengang stg USING (studiengang_kz)
+ WHERE
+ person_id = pers.person_id
+ ORDER BY
+ prestudent_id DESC
+ ) prestudents
+ WHERE
+ last_status IN ('Abgewiesener','Aufgenommener', 'Student', 'Incoming', 'Diplomand', 'Abbrecher', 'Unterbrecher', 'Absolvent')
+ GROUP BY
+ person_id
+ LIMIT 1;
+ ) AS \"Zugehörigkeit\",
+ CASE
+ WHEN
+ EXISTS(SELECT 1
+ FROM zustaendigkeiten
+ WHERE fehlercode = iss.fehlercode
+ AND zustaendig = TRUE) /* If Zuständigkeit is defined for the oe/person, zustaendig. */
+ THEN 'Ja'
+ WHEN
+ EXISTS(SELECT 1
+ FROM zustaendigkeiten
+ WHERE fehlercode = iss.fehlercode
+ AND zustaendig = FALSE) /* If Zuständigkeit is defined for different oe/person, not zustaendig. */
+ THEN 'Nein'
+ ELSE 'Ja' /* If no Zuständigkeit defined, zustaendig by default. */
+ END AS \"Hauptzuständig\",
+ (
+ SELECT
+ string_agg(vorname || ' ' || nachname, ' | ' ORDER BY vorname, nachname)
+ FROM
+ system.tbl_fehler_zustaendigkeiten
+ JOIN public.tbl_person USING (person_id)
+ WHERE
+ fehlercode = fr.fehlercode
+ GROUP BY
+ fehlercode
+ ) AS \"Person Zuständigkeiten\",
+ (
+ SELECT
+ string_agg(organisationseinheittyp_kurzbz || ' ' || oe.bezeichnung ||
+ COALESCE(' - ' || fu.beschreibung, ''), ' | ' ORDER BY bezeichnung, oe_kurzbz)
+ FROM
+ system.tbl_fehler_zustaendigkeiten
+ LEFT JOIN public.tbl_organisationseinheit oe USING (oe_kurzbz)
+ LEFT JOIN public.tbl_funktion fu USING (funktion_kurzbz)
+ WHERE
+ fehlercode = fr.fehlercode
+ GROUP BY
+ fehlercode
+ ) AS \"Organisationseinheit Zuständigkeiten\",
+ pers.bpk AS \"BPK\",
+ pers.matr_nr AS \"Matrikelnummer\"
+ FROM
+ system.tbl_issue iss
+ JOIN system.tbl_fehler fr USING (fehlercode)
+ JOIN system.tbl_fehlertyp ftyp USING (fehlertyp_kurzbz)
+ JOIN system.tbl_issue_status stat USING (status_kurzbz)
+ LEFT JOIN public.tbl_person pers ON iss.person_id = pers.person_id
+ WHERE
+ fr.app IN ('core', 'dvuh')
+ AND (
+ EXISTS ( /* if oe or person is specified in fehler_zustaendigkeiten */
+ SELECT 1 FROM zustaendigkeiten
+ WHERE fehlercode = iss.fehlercode
+ AND zustaendig = TRUE)";
// show issue if it is assigend to oe of logged in user or to student of oe of logged in user
if (!isEmptyArray($all_oe_kurzbz_berechtigt))
@@ -131,6 +154,7 @@ if (!isEmptyArray($all_oe_kurzbz_berechtigt))
)
)";
}
+$query .= ") ";
$query .= " ORDER BY
CASE
@@ -146,17 +170,18 @@ $query .= " ORDER BY
datum DESC, fehlercode, issue_id DESC";
$filterWidgetArray = array(
- 'query' => $query,
+ 'query' => $query,
'app' => 'core',
'datasetName' => 'issues',
'filter_id' => $this->input->get('filter_id'),
- 'tableUniqueId' => 'issues',
- 'requiredPermissions' => 'system/issues_verwalten',
- 'datasetRepresentation' => 'tablesorter',
+ 'tableUniqueId' => 'issues',
+ 'requiredPermissions' => 'system/issues_verwalten',
+ 'datasetRepresentation' => 'tablesorter',
'checkboxes' => 'issue_id',
- 'columnsAliases' => array(
- 'ID',
+ 'columnsAliases' => array(
+ 'ID',
ucfirst($this->p->t('fehlermonitoring', 'fehlercode')),
+ ucfirst($this->p->t('fehlermonitoring', 'fehlerkurzbz')),
ucfirst($this->p->t('fehlermonitoring', 'fehlercodeExtern')),
ucfirst($this->p->t('global', 'datum')),
ucfirst($this->p->t('fehlermonitoring', 'inhalt')),
@@ -176,10 +201,15 @@ $filterWidgetArray = array(
ucfirst($this->p->t('fehlermonitoring', 'hauptzustaendig')),
ucfirst($this->p->t('fehlermonitoring', 'zustaendigePersonen')),
ucfirst($this->p->t('fehlermonitoring', 'zustaendigeOrganisationseinheiten')),
- 'BPK',
- 'Matrikelnummer'
- ),
- 'formatRow' => function($datasetRaw) {
+ 'BPK',
+ 'Matrikelnummer'
+ ),
+ 'formatRow' => function ($datasetRaw) {
+
+ if ($datasetRaw->{'Fehler Kurzbezeichnung'} == null)
+ {
+ $datasetRaw->{'Fehler Kurzbezeichnung'} = '-';
+ }
if ($datasetRaw->{'Fehlercode extern'} == null)
{
@@ -238,7 +268,7 @@ $filterWidgetArray = array(
return $datasetRaw;
},
- 'markRow' => function($datasetRaw) {
+ 'markRow' => function ($datasetRaw) {
$mark = '';
diff --git a/application/views/system/issues/issuesKonfiguration.php b/application/views/system/issues/issuesKonfiguration.php
new file mode 100644
index 000000000..dbd62a26a
--- /dev/null
+++ b/application/views/system/issues/issuesKonfiguration.php
@@ -0,0 +1,200 @@
+load->view(
+ 'templates/FHC-Header',
+ array(
+ 'title' => 'Fehler Konfiguration',
+ 'jquery3' => true,
+ 'jqueryui1' => true,
+ 'jquerycheckboxes1' => true,
+ 'bootstrap3' => true,
+ 'fontawesome4' => true,
+ 'sbadmintemplate3' => true,
+ 'tablesorter2' => true,
+ 'ajaxlib' => true,
+ 'filterwidget' => true,
+ 'navigationwidget' => true,
+ 'dialoglib' => true,
+ 'phrases' => array(
+ 'ui',
+ 'fehlermonitoring'
+ ),
+ 'customCSSs' => array('public/css/issues/issuesKonfiguration.css', 'public/css/sbadmin2/tablesort_bootstrap.css'),
+ 'customJSs' => array('public/js/issues/issuesKonfiguration.js', 'public/js/bootstrapper.js')
+ )
+);
+?>
+
+
+
+
+ widgetlib->widget('NavigationWidget'); ?>
+
+
+
+
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'konfigurationstyp') ?>
+
+
+
+
+
+ p->t('fehlermonitoring', 'fehlercode') ?>
+
+
+
+
+
+
+
+
+
+
+
+
+ load->view('system/issues/issuesKonfigurationData.php'); ?>
+
+
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'fehlercode')) ?>
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'fehlerkurzbz')) ?>
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'fehlertyp')) ?>
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'fehlertext')) ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'konfigurationstyp')) ?>
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'konfigurationsbeschreibung')) ?>
+
+
+
+
+
+
+
+ p->t('fehlermonitoring', 'konfigurationsdatentyp')) ?>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+load->view('templates/FHC-Footer'); ?>
diff --git a/application/views/system/issues/issuesKonfigurationData.php b/application/views/system/issues/issuesKonfigurationData.php
new file mode 100644
index 000000000..a83dc73ce
--- /dev/null
+++ b/application/views/system/issues/issuesKonfigurationData.php
@@ -0,0 +1,56 @@
+ $query,
+ 'app' => 'core',
+ 'datasetName' => 'fehlerKonfiguration',
+ 'filter_id' => $this->input->get('filter_id'),
+ 'tableUniqueId' => 'issuesKonfiguration',
+ 'requiredPermissions' => 'admin',
+ 'datasetRepresentation' => 'tablesorter',
+ 'additionalColumns' => array('Delete'),
+ 'columnsAliases' => array(
+ ucfirst($this->p->t('fehlermonitoring', 'konfigurationstyp')),
+ ucfirst($this->p->t('fehlermonitoring', 'fehlercode')),
+ ucfirst($this->p->t('fehlermonitoring', 'fehlerkurzbz')),
+ ucfirst($this->p->t('fehlermonitoring', 'konfigurationswert')),
+ 'Application',
+ ucfirst($this->p->t('fehlermonitoring', 'konfigurationsbeschreibung')),
+ ucfirst($this->p->t('fehlermonitoring', 'konfigurationsdatentyp')),
+ ucfirst($this->p->t('fehlermonitoring', 'fehlertext')),
+ ),
+ 'formatRow' => function($datasetRaw) {
+
+ $datasetRaw->{'Delete'} =
+ "
"
+ .ucfirst($this->p->t('ui', 'loeschen'))." ";
+
+ if ($datasetRaw->{'konfigurationsbeschreibung'} == null)
+ {
+ $datasetRaw->{'konfigurationsbeschreibung'} = '-';
+ }
+
+ if ($datasetRaw->{'fehlertext'} == null)
+ {
+ $datasetRaw->{'fehlertext'} = '-';
+ }
+
+ return $datasetRaw;
+ }
+);
+
+echo $this->widgetlib->widget('FilterWidget', $filterWidgetArray);
diff --git a/application/views/system/issues/plausichecks.php b/application/views/system/issues/plausichecks.php
index 4016e64cd..45c272ff4 100644
--- a/application/views/system/issues/plausichecks.php
+++ b/application/views/system/issues/plausichecks.php
@@ -71,9 +71,9 @@ $this->load->view(
Fehler
Alle ';
-
+ $fehlercode):?>
-
+
diff --git a/application/views/system/logs/testVBform.php b/application/views/system/logs/testVBform.php
new file mode 100644
index 000000000..566abb1cb
--- /dev/null
+++ b/application/views/system/logs/testVBform.php
@@ -0,0 +1,16 @@
+ 'Test VBform',
+ 'bootstrap5' => true,
+ 'fontawesome6' => true,
+ 'vue3' => true,
+ 'customJSModules' => array('public/js/apps/vbform/vbform.js')
+ );
+
+ $this->load->view('templates/FHC-Header', $includesArray);
+?>
+
+
+
+load->view('templates/FHC-Footer', $includesArray); ?>
+
diff --git a/application/views/system/messages/FAShtmlWriteTemplate.php b/application/views/system/messages/FAShtmlWriteTemplate.php
new file mode 100644
index 000000000..83f895d14
--- /dev/null
+++ b/application/views/system/messages/FAShtmlWriteTemplate.php
@@ -0,0 +1,197 @@
+load->view(
+ 'templates/FHC-Header',
+ array(
+ 'title' => 'Write a new message or reply using templates',
+ 'jquery3' => true,
+ 'jqueryui1' => true,
+ 'bootstrap3' => true,
+ 'ajaxlib' => true,
+ 'fontawesome4' => true,
+ 'tinymce3' => true,
+ 'sbadmintemplate3' => true,
+ 'dialoglib' => true,
+ 'widgets' => true,
+ 'customCSSs' => array('public/css/sbadmin2/admintemplate_contentonly.css', 'public/css/messaging/message.css'),
+ 'customJSs' => array('public/js/bootstrapper.js', 'public/js/messaging/fasMessageWrite.js')
+ )
+ );
+?>
+
+
+
+
+load->view("templates/FHC-Footer"); ?>
+
diff --git a/application/views/system/messages/ajaxRead.php b/application/views/system/messages/ajaxRead.php
index 2cb88708e..4c1a77deb 100644
--- a/application/views/system/messages/ajaxRead.php
+++ b/application/views/system/messages/ajaxRead.php
@@ -12,7 +12,7 @@
'tabulator4' => true,
'ajaxlib' => true,
'dialoglib' => true,
- 'tinymce4' => true,
+ 'tinymce5' => true,
'phrases' => array('global', 'ui'),
'customCSSs' => array('public/css/sbadmin2/admintemplate_contentonly.css', 'public/css/messaging/message.css'),
'customJSs' => array('public/js/bootstrapper.js', 'public/js/messaging/read.js')
diff --git a/application/views/system/messages/ajaxWrite.php b/application/views/system/messages/ajaxWrite.php
index 3b1582f22..b3a598506 100644
--- a/application/views/system/messages/ajaxWrite.php
+++ b/application/views/system/messages/ajaxWrite.php
@@ -10,7 +10,7 @@
'sbadmintemplate3' => true,
'ajaxlib' => true,
'dialoglib' => true,
- 'tinymce4' => true,
+ 'tinymce5' => true,
'phrases' => array('global', 'ui'),
'customCSSs' => array('public/css/sbadmin2/admintemplate_contentonly.css', 'public/css/messaging/message.css'),
'customJSs' => array('public/js/bootstrapper.js', 'public/js/messaging/write.js')
diff --git a/application/views/system/messages/ajaxWriteReply.php b/application/views/system/messages/ajaxWriteReply.php
index 0a496c93e..08dc188fa 100644
--- a/application/views/system/messages/ajaxWriteReply.php
+++ b/application/views/system/messages/ajaxWriteReply.php
@@ -10,7 +10,7 @@
'sbadmintemplate3' => true,
'ajaxlib' => true,
'dialoglib' => true,
- 'tinymce4' => true,
+ 'tinymce5' => true,
'phrases' => array('global', 'ui'),
'customCSSs' => array('public/css/sbadmin2/admintemplate_contentonly.css', 'public/css/messaging/message.css'),
'customJSs' => array('public/js/bootstrapper.js', 'public/js/messaging/writeReply.js')
diff --git a/application/views/system/messages/htmlWriteReply.php b/application/views/system/messages/htmlWriteReply.php
index 9106d802b..d2150c1fb 100644
--- a/application/views/system/messages/htmlWriteReply.php
+++ b/application/views/system/messages/htmlWriteReply.php
@@ -6,7 +6,7 @@
'jquery3' => true,
'bootstrap3' => true,
'fontawesome4' => true,
- 'tinymce4' => true,
+ 'tinymce5' => true,
'sbadmintemplate3' => true,
'customCSSs' => array('public/css/sbadmin2/admintemplate_contentonly.css', 'public/css/messaging/message.css'),
'customJSs' => array('public/js/bootstrapper.js', 'public/js/messaging/messageWriteReply.js')
diff --git a/application/views/system/messages/htmlWriteTemplate.php b/application/views/system/messages/htmlWriteTemplate.php
index 761e05f96..42a31f374 100644
--- a/application/views/system/messages/htmlWriteTemplate.php
+++ b/application/views/system/messages/htmlWriteTemplate.php
@@ -8,7 +8,7 @@
'bootstrap3' => true,
'ajaxlib' => true,
'fontawesome4' => true,
- 'tinymce4' => true,
+ 'tinymce5' => true,
'sbadmintemplate3' => true,
'dialoglib' => true,
'widgets' => true,
diff --git a/application/views/system/vorlage/templatetextEdit.php b/application/views/system/vorlage/templatetextEdit.php
index 42efc1519..cc2487959 100644
--- a/application/views/system/vorlage/templatetextEdit.php
+++ b/application/views/system/vorlage/templatetextEdit.php
@@ -1,5 +1,5 @@
load->view('templates/header', array('title' => 'VorlageEdit', 'tinymce4' => true, 'jsonforms' => true));
+ $this->load->view('templates/header', array('title' => 'VorlageEdit', 'tinymce5' => true, 'jsonforms' => true));
?>
diff --git a/application/views/templates/FHC-Common.php b/application/views/templates/FHC-Common.php
index dd1d8ae1c..072ff1d7f 100644
--- a/application/views/templates/FHC-Common.php
+++ b/application/views/templates/FHC-Common.php
@@ -23,7 +23,7 @@
$tablesorter2 = isset($tablesorter2) ? $tablesorter2 : false;
$tabulator4 = isset($tabulator4) ? $tabulator4 : false;
$tabulator5 = isset($tabulator5) ? $tabulator5 : false;
- $tinymce4 = isset($tinymce4) ? $tinymce4 : false;
+ $tinymce3 = isset($tinymce3) ? $tinymce3 : false;
$tinymce5 = isset($tinymce5) ? $tinymce5 : false;
$vue3 = isset($vue3) ? $vue3 : false;
$primevue3 = isset($primevue3) ? $primevue3 : false;
@@ -34,6 +34,7 @@
// Internal resources
$ajaxlib = isset($ajaxlib) ? $ajaxlib : false;
$bootstrapper = isset($bootstrapper) ? $bootstrapper : false;
+ $cis = isset($cis) ? $cis : false;
$dialoglib = isset($dialoglib) ? $dialoglib : false;
$filtercomponent = isset($filtercomponent) ? $filtercomponent : false;
$filterwidget = isset($filterwidget) ? $filterwidget : false;
@@ -43,4 +44,3 @@
$tablewidget = isset($tablewidget) ? $tablewidget : false;
$udfs = isset($udfs) ? $udfs : false;
$widgets = isset($widgets) ? $widgets : false;
-
diff --git a/application/views/templates/FHC-Footer.php b/application/views/templates/FHC-Footer.php
index 0c3782fea..3daac26cd 100644
--- a/application/views/templates/FHC-Footer.php
+++ b/application/views/templates/FHC-Footer.php
@@ -60,7 +60,7 @@
if ($bootstrap3 === true) generateJSsInclude('vendor/twbs/bootstrap3/dist/js/bootstrap.min.js');
// Bootstrap 5 JS
- if ($bootstrap5 === true) generateJSsInclude('vendor/twbs/bootstrap5/dist/js/bootstrap.min.js');
+ if ($bootstrap5 === true) generateJSsInclude('vendor/twbs/bootstrap5/dist/js/bootstrap.bundle.min.js');
// Moment JS
if ($momentjs2 === true)
@@ -100,14 +100,14 @@
// Tabulator 5 JS
if ($tabulator5 === true) generateJSsInclude('vendor/olifolkerd/tabulator5/dist/js/tabulator.min.js');
- // Tinymce 4 JS
- if ($tinymce4 === true) generateJSsInclude('vendor/tinymce/tinymce4/tinymce.min.js');
+ // Tinymce 3 JS
+ if ($tinymce3 === true) generateJSsInclude('include/tiny_mce/tiny_mce.js');
// Tinymce 5 JS
if ($tinymce5 === true) generateJSsInclude('vendor/tinymce/tinymce5/tinymce.min.js');
// Vue 3 JS
- if ($vue3 === true)
+ if ($vue3 === true)
{
generateJSsInclude('vendor/vuejs/vuejs3/vue.global.prod.js');
generateJSsInclude('vendor/vuejs/vuerouter4/vue-router.global.js');
@@ -122,6 +122,11 @@
generateJSsInclude('vendor/npm-asset/primevue/column/column.min.js');
generateJSsInclude('vendor/npm-asset/primevue/calendar/calendar.min.js');
generateJSsInclude('vendor/npm-asset/primevue/skeleton/skeleton.min.js');
+ generateJSsInclude('vendor/npm-asset/primevue/timeline/timeline.min.js');
+ generateJSsInclude('vendor/npm-asset/primevue/multiselect/multiselect.min.js');
+ generateJSsInclude('vendor/npm-asset/primevue/autocomplete/autocomplete.min.js');
+ generateJSsInclude('vendor/npm-asset/primevue/overlaypanel/overlaypanel.min.js');
+ generateJSsInclude('vendor/npm-asset/primevue/datatable/datatable.min.js');
}
// --------------------------------------------------------------------------------------------------------
diff --git a/application/views/templates/FHC-Header.php b/application/views/templates/FHC-Header.php
index aa63541c5..ed9fa97b9 100644
--- a/application/views/templates/FHC-Header.php
+++ b/application/views/templates/FHC-Header.php
@@ -77,10 +77,7 @@
}
// Tabulator 5 CSS
- if ($tabulator5 === true) generateCSSsInclude('vendor/olifolkerd/tabulator5/dist/css/tabulator_bootstrap5.min.css');
-
- // Tinymce 4 CSS
- if ($tinymce4 === true) generateCSSsInclude('public/css/TinyMCE4.css');
+ if ($tabulator5 === true) generateCSSsInclude('public/css/Tabulator5.css');
// Tinymce 5 CSS
if ($tinymce5 === true) generateCSSsInclude('public/css/TinyMCE5.css');
@@ -118,6 +115,9 @@
// HTML Widget CSS
if ($widgets === true) generateCSSsInclude('public/css/Widgets.css');
+ // CIS
+ if ($cis === true) generateCSSsInclude('public/css/cis_bs5.css');
+
// Eventually required CSS
generateCSSsInclude($customCSSs); // Eventually required CSS
?>
diff --git a/application/views/templates/header.php b/application/views/templates/header.php
index 637eb3c7a..e75acca4f 100644
--- a/application/views/templates/header.php
+++ b/application/views/templates/header.php
@@ -95,7 +95,7 @@ if($jqueryV1 && $jqueryV2) show_error("Two JQuery versions used: composer and in
-
+
diff --git a/application/views/widgets/tinymce.php b/application/views/widgets/tinymce.php
index 3e2093e55..618cb4836 100644
--- a/application/views/widgets/tinymce.php
+++ b/application/views/widgets/tinymce.php
@@ -5,5 +5,6 @@
plugins: [],
toolbar: ""
});
-
- <=$selector?> name="=$name?>" style="=$style?>">=$text?>=$selector?>>
+
+<=$selector?> name="=$name?>" style="=$style?>">=$text?>=$selector?>>
+
diff --git a/application/widgets/FilterWidget.php b/application/widgets/FilterWidget.php
index 1cef91c15..45bcf7e04 100644
--- a/application/widgets/FilterWidget.php
+++ b/application/widgets/FilterWidget.php
@@ -1,5 +1,22 @@
.
+ */
+
/**
* To filter data using a SQL statement
*/
@@ -59,6 +76,8 @@ class FilterWidget extends Widget
private $_sessionTimeout; // session expiring time
+ private $_encryptedColumns; // contains info about encrypted columns
+
private static $_FilterWidgetInstance; // static property that contains the instance of itself
/**
@@ -195,6 +214,7 @@ class FilterWidget extends Widget
$this->_formatRow = null;
$this->_markRow = null;
$this->_checkboxes = null;
+ $this->_encryptedColumns = null;
$this->_hideOptions = null;
$this->_hideSelectFields = null;
$this->_hideSelectFilters = null;
@@ -252,6 +272,14 @@ class FilterWidget extends Widget
$this->_additionalColumns = $args[FilterWidgetLib::ADDITIONAL_COLUMNS];
}
+ // Parameter is used to define the ecrypted columns
+ if (isset($args[FilterWidgetLib::ENCRYPTED_COLUMNS])
+ && is_array($args[FilterWidgetLib::ENCRYPTED_COLUMNS])
+ && count($args[FilterWidgetLib::ENCRYPTED_COLUMNS]) > 0)
+ {
+ $this->_encryptedColumns = $args[FilterWidgetLib::ENCRYPTED_COLUMNS];
+ }
+
// Parameter is used to add use aliases for the columns fo the dataset
if (isset($args[FilterWidgetLib::COLUMNS_ALIASES])
&& is_array($args[FilterWidgetLib::COLUMNS_ALIASES])
@@ -441,7 +469,7 @@ class FilterWidget extends Widget
);
// Then retrieve dataset from DB
- $dataset = $this->filterwidgetlib->getDataset($datasetQuery);
+ $dataset = $this->filterwidgetlib->getDataset($datasetQuery, $this->_encryptedColumns);
// Save changes into session if data are valid
if (!isError($dataset))
@@ -476,7 +504,7 @@ class FilterWidget extends Widget
$datasetQuery = $this->filterwidgetlib->generateDatasetQuery($this->_query, $parsedFilterJson->filters);
// Then retrieve dataset from DB
- $dataset = $this->filterwidgetlib->getDataset($datasetQuery);
+ $dataset = $this->filterwidgetlib->getDataset($datasetQuery, $this->_encryptedColumns);
// Try to load the name of the filter using the PhrasesLib
$filterName = $this->filterwidgetlib->getFilterName($parsedFilterJson);
@@ -497,6 +525,7 @@ class FilterWidget extends Widget
FilterWidgetLib::SESSION_SELECTED_FIELDS => $this->_getColumnsNames($parsedFilterJson->columns), // all the selected fields
FilterWidgetLib::SESSION_COLUMNS_ALIASES => $this->_columnsAliases, // all the fields aliases
FilterWidgetLib::SESSION_ADDITIONAL_COLUMNS => $this->_additionalColumns, // additional columns
+ FilterWidgetLib::SESSION_ENCRYPTED_COLUMNS => $this->_encryptedColumns, // encrypted columns
FilterWidgetLib::SESSION_CHECKBOXES => $this->_checkboxes, // the name of the field used to build the checkboxes column
FilterWidgetLib::SESSION_FILTERS => $parsedFilterJson->filters, // all the filters used to filter the dataset
FilterWidgetLib::SESSION_METADATA => $this->FiltersModel->getExecutedQueryMetaData(), // the metadata of the dataset
@@ -525,7 +554,7 @@ class FilterWidget extends Widget
private function _setFilterMenu()
{
// Generates the filters structure array
- $filterMenu = $this->filterwidgetlib->generateFilterMenu(
+ $this->filterwidgetlib->generateFilterMenu(
$this->router->directory.$this->router->class.'/'.$this->router->method
);
}
@@ -604,7 +633,7 @@ class FilterWidget extends Widget
{
$columnsNames = array();
- foreach ($columns as $key => $obj)
+ foreach ($columns as $obj)
{
if (isset($obj->name))
{
diff --git a/application/widgets/TableWidget.php b/application/widgets/TableWidget.php
index 5a000601f..e59efce10 100644
--- a/application/widgets/TableWidget.php
+++ b/application/widgets/TableWidget.php
@@ -1,5 +1,22 @@
.
+ */
+
/**
* To display a table that shows data retriev by a SQL statement
*/
@@ -40,6 +57,8 @@ class TableWidget extends Widget
private $_sessionTimeout; // session expiring time
+ private $_encryptedColumns; // contains info about encrypted columns
+
private static $_TableWidgetInstance; // static property that contains the instance of itself
/**
@@ -127,6 +146,7 @@ class TableWidget extends Widget
$this->_datasetRepresentationOptions = null;
$this->_datasetRepFieldsDefs = null;
$this->_sessionTimeout = TableWidgetLib::SESSION_DEFAULT_TIMEOUT;
+ $this->_encryptedColumns = null;
// Retrieved the required permissions parameter if present
if (isset($args[TableWidgetLib::REQUIRED_PERMISSIONS]))
@@ -206,6 +226,14 @@ class TableWidget extends Widget
{
$this->_sessionTimeout = $args[TableWidgetLib::SESSION_TIMEOUT];
}
+
+ // Parameter is used to define the ecrypted columns
+ if (isset($args[TableWidgetLib::ENCRYPTED_COLUMNS])
+ && is_array($args[TableWidgetLib::ENCRYPTED_COLUMNS])
+ && count($args[TableWidgetLib::ENCRYPTED_COLUMNS]) > 0)
+ {
+ $this->_encryptedColumns = $args[TableWidgetLib::ENCRYPTED_COLUMNS];
+ }
}
/**
@@ -288,7 +316,7 @@ class TableWidget extends Widget
$datasetQuery = $this->tablewidgetlib->generateDatasetQuery($this->_query);
// Then retrieve dataset from DB
- $dataset = $this->tablewidgetlib->getDataset($datasetQuery);
+ $dataset = $this->tablewidgetlib->getDataset($datasetQuery, $this->_encryptedColumns);
// Save changes into session if data are valid
if (!isError($dataset))
@@ -310,7 +338,7 @@ class TableWidget extends Widget
$datasetQuery = $this->tablewidgetlib->generateDatasetQuery($this->_query);
// Then retrieve dataset from DB
- $dataset = $this->tablewidgetlib->getDataset($datasetQuery);
+ $dataset = $this->tablewidgetlib->getDataset($datasetQuery, $this->_encryptedColumns);
// Save changes into session if data are valid
if (!isError($dataset))
@@ -324,6 +352,7 @@ class TableWidget extends Widget
TableWidgetLib::SESSION_FIELDS => $this->tablewidgetlib->getExecutedQueryListFields(), // all the fields of the dataset
TableWidgetLib::SESSION_COLUMNS_ALIASES => $this->_columnsAliases, // all the fields aliases
TableWidgetLib::SESSION_ADDITIONAL_COLUMNS => $this->_additionalColumns, // additional columns
+ TableWidgetLib::SESSION_ENCRYPTED_COLUMNS => $this->_encryptedColumns, // encrypted columns
TableWidgetLib::SESSION_CHECKBOXES => $this->_checkboxes, // the name of the field used to build the checkboxes column
TableWidgetLib::SESSION_METADATA => $this->tablewidgetlib->getExecutedQueryMetaData(), // the metadata of the dataset
TableWidgetLib::SESSION_ROW_NUMBER => count($dataset->retval), // the number of loaded rows by this table
@@ -411,24 +440,6 @@ class TableWidget extends Widget
return !isset($class) ? '' : $class;
}
- /**
- * Utility method that retrieves the name of the columns present in a table JSON definition
- */
- private function _getColumnsNames($columns)
- {
- $columnsNames = array();
-
- foreach ($columns as $key => $obj)
- {
- if (isset($obj->name))
- {
- $columnsNames[] = $obj->name;
- }
- }
-
- return $columnsNames;
- }
-
/**
* Loads a view using the given viewName and eventually other parameters
*/
@@ -438,3 +449,4 @@ class TableWidget extends Widget
$ci->load->view($viewName, $parameters);
}
}
+
diff --git a/cis/index.php b/cis/index.php
index 38af9f50d..d490a201a 100644
--- a/cis/index.php
+++ b/cis/index.php
@@ -215,7 +215,13 @@ function loadampel()
-
+ t('menu/sucheOrtDokumentInhalt');
+ else
+ $searchText = $p->t('menu/suchePersonOrtDokumentInhalt');
+ ?>
+
diff --git a/cis/private/lehre/abgabe_lektor.php b/cis/private/lehre/abgabe_lektor.php
index 70f80f7ba..3d20c8a7e 100644
--- a/cis/private/lehre/abgabe_lektor.php
+++ b/cis/private/lehre/abgabe_lektor.php
@@ -61,8 +61,10 @@ $sql_query = "SELECT
FROM
(SELECT tbl_person.vorname, tbl_person.nachname, tbl_studiengang.typ, tbl_studiengang.kurzbz,
tbl_projektarbeit.projekttyp_kurzbz, tbl_projekttyp.bezeichnung, tbl_projektarbeit.titel, tbl_projektarbeit.projektarbeit_id,
- tbl_projektbetreuer.betreuerart_kurzbz, tbl_benutzer.uid, tbl_student.matrikelnr, tbl_lehreinheit.studiensemester_kurzbz
- FROM lehre.tbl_projektarbeit LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id)
+ tbl_projektbetreuer.betreuerart_kurzbz, tbl_betreuerart.beschreibung AS betreuerart_beschreibung, tbl_benutzer.uid, tbl_student.matrikelnr, tbl_lehreinheit.studiensemester_kurzbz
+ FROM lehre.tbl_projektarbeit
+ LEFT JOIN lehre.tbl_projektbetreuer using(projektarbeit_id)
+ LEFT JOIN lehre.tbl_betreuerart using(betreuerart_kurzbz)
LEFT JOIN public.tbl_benutzer on(uid=student_uid)
LEFT JOIN public.tbl_student on(public.tbl_benutzer.uid=public.tbl_student.student_uid)
LEFT JOIN public.tbl_person on(tbl_benutzer.person_id=tbl_person.person_id)
@@ -75,8 +77,7 @@ $sql_query = "SELECT
WHERE public.tbl_benutzer.person_id=lehre.tbl_projektbetreuer.person_id
AND public.tbl_benutzer.uid=".$db->db_add_param($getuid).")
".($showall?'':' AND public.tbl_benutzer.aktiv AND lehre.tbl_projektarbeit.note IS NULL ')."
- AND (betreuerart_kurzbz='Betreuer' OR betreuerart_kurzbz='Begutachter' OR betreuerart_kurzbz='Erstbegutachter'
- OR betreuerart_kurzbz='Zweitbegutachter' OR betreuerart_kurzbz='Erstbetreuer')
+ AND betreuerart_kurzbz IN ('Betreuer', 'Begutachter', 'Erstbegutachter', 'Zweitbegutachter', 'Erstbetreuer', 'Senatsvorsitz', 'Senatsmitglied')
ORDER BY tbl_projektarbeit.projektarbeit_id, betreuerart_kurzbz desc) as xy
ORDER BY nachname";
@@ -112,7 +113,7 @@ else
$htmlstr .= "
".strtoupper($row->typ.$row->kurzbz)." \n";
$htmlstr .= "
".$db->convert_html_chars($row->studiensemester_kurzbz)." \n";
$htmlstr .= "
".$db->convert_html_chars($row->titel)." \n";
- $htmlstr .= "
".$db->convert_html_chars($row->betreuerart_kurzbz)." \n";
+ $htmlstr .= "
".($row->betreuerart_beschreibung == null ? $db->convert_html_chars($row->betreuerart_kurzbz) : $db->convert_html_chars($row->betreuerart_beschreibung))." \n";
$htmlstr .= " \n";
$i++;
}
@@ -127,11 +128,11 @@ echo '
'.$p->t('abgabetool/abgabetool').'
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-';
-
- echo '
'.$p->t('abgabetool/ueberschrift');
- if(trim($uid)!='')
- echo " ($uid $vorname $nachname)
";
- echo '';
- echo $htmlstr;
- echo '
-