diff --git a/application/controllers/system/issues/Plausichecks.php b/application/controllers/system/issues/Plausichecks.php
index ad57d432f..53ff8afe8 100644
--- a/application/controllers/system/issues/Plausichecks.php
+++ b/application/controllers/system/issues/Plausichecks.php
@@ -55,7 +55,21 @@ class Plausichecks extends Auth_Controller
// get the data returned by Plausicheck
foreach ($fehlerKurzbz as $fehler_kurzbz)
{
- $allIssues[$fehler_kurzbz] = array();
+ // get Text and fehlercode of the Fehler
+ $this->FehlerModel->addSelect('fehlercode, fehlertext, fehlertyp_kurzbz');
+ $fehlerRes = $this->FehlerModel->loadWhere(array('fehler_kurzbz' => $fehler_kurzbz));
+
+ if (isError($fehlerRes)) $this->terminateWithJsonError(getError($fehlerRes));
+
+ // do not check error if no data
+ if (!hasData($fehlerRes)) continue;
+
+ // get the error data
+ $fehler = getData($fehlerRes)[0];
+
+ // initialize issue array
+ $allIssues[$fehler_kurzbz] = array('fehlercode' => $fehler->fehlercode, 'data' => array());
+
// get library name for producing issue
$libName = $fehlerLibMappings[$fehler_kurzbz];
@@ -82,16 +96,10 @@ class Plausichecks extends Auth_Controller
$oe_kurzbz = isset($plausiData['oe_kurzbz']) ? $plausiData['oe_kurzbz'] : null;
$fehlertext_params = isset($plausiData['fehlertext_params']) ? $plausiData['fehlertext_params'] : null;
- // get Text of the Fehler
- $this->FehlerModel->addSelect('fehlertext, fehlertyp_kurzbz');
- $fehlerRes = $this->FehlerModel->loadWhere(array('fehler_kurzbz' => $fehler_kurzbz));
-
- if (isError($fehlerRes)) $this->outputJsonError(getError($fehlerRes));
-
// optionally replace fehler parameters in text, output the fehlertext
- if (hasData($fehlerRes))
+ if (!isEmptyString($fehler->fehlertext))
{
- $fehler = getData($fehlerRes)[0];
+ $fehlercode = $fehler->fehlercode;
$fehlerText = $fehler->fehlertext;
$fehlerTyp = $fehler->fehlertyp_kurzbz;
@@ -110,7 +118,7 @@ class Plausichecks extends Auth_Controller
$issueObj = new StdClass();
$issueObj->fehlertext = $fehlerText;
$issueObj->type = $fehlerTyp;
- $allIssues[$fehler_kurzbz][] = $issueObj;
+ $allIssues[$fehler_kurzbz]['data'][] = $issueObj;
}
else // if no issue text found, use generic text
{
@@ -120,7 +128,6 @@ class Plausichecks extends Auth_Controller
// add generic parameters to issue text
if (isset($person_id)) $fehlerText .= "; person_id: $person_id";
if (isset($oe_kurzbz)) $fehlerText .= "; oe_kurzbz: $oe_kurzbz";
- $issueTexts[$fehler_kurzbz][] = $fehlerText;
}
}
}
@@ -152,11 +159,36 @@ class Plausichecks extends Auth_Controller
$fehlerKurzbz = $this->plausicheckdefinitionlib->getFehlerKurzbz();
+ $db = new DB_Model();
+
+ // get fehlercodes for fehler_kurzbz
+ $fehlerRes = $db->execReadOnlyQuery(
+ 'SELECT
+ fehler_kurzbz, fehlercode
+ FROM
+ system.tbl_fehler
+ WHERE
+ fehler_kurzbz IN ?',
+ array($fehlerKurzbz)
+ );
+
+ if (isError($fehlerRes)) show_error(getError($fehlerRes));
+
+ $fehlerKurzbzCodeMappings = array();
+ if (hasData($fehlerRes))
+ {
+ $fehler = getData($fehlerRes);
+ foreach ($fehler as $fe)
+ {
+ $fehlerKurzbzCodeMappings[$fe->fehler_kurzbz] = $fe->fehlercode;
+ }
+ }
+
return array(
'semester' => hasData($studiensemesterRes) ? getData($studiensemesterRes) : array(),
'currsemester' => hasData($currSemRes) ? getData($currSemRes) : array(),
'studiengaenge' => hasData($studiengaengeRes) ? getData($studiengaengeRes) : array(),
- 'fehler' => $fehlerKurzbz
+ 'fehlerKurzbzCodeMappings' => $fehlerKurzbzCodeMappings
);
}
}
diff --git a/application/views/system/issues/issuesKonfigurationData.php b/application/views/system/issues/issuesKonfigurationData.php
index fa4e1e49d..a83dc73ce 100644
--- a/application/views/system/issues/issuesKonfigurationData.php
+++ b/application/views/system/issues/issuesKonfigurationData.php
@@ -25,7 +25,7 @@ $filterWidgetArray = array(
ucfirst($this->p->t('fehlermonitoring', 'fehlercode')),
ucfirst($this->p->t('fehlermonitoring', 'fehlerkurzbz')),
ucfirst($this->p->t('fehlermonitoring', 'konfigurationswert')),
- 'application',
+ 'Application',
ucfirst($this->p->t('fehlermonitoring', 'konfigurationsbeschreibung')),
ucfirst($this->p->t('fehlermonitoring', 'konfigurationsdatentyp')),
ucfirst($this->p->t('fehlermonitoring', 'fehlertext')),
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(
diff --git a/public/js/issues/plausichecks.js b/public/js/issues/plausichecks.js
index 24b204ea3..cf55cf463 100644
--- a/public/js/issues/plausichecks.js
+++ b/public/js/issues/plausichecks.js
@@ -24,8 +24,8 @@ var Plausichecks = {
for (let fehler_kurzbz in issueData)
{
- messageStr += "
Prüfe " + fehler_kurzbz + "...";
- let issues = issueData[fehler_kurzbz];
+ let issues = issueData[fehler_kurzbz]['data'];
+ messageStr += "
Prüfe " + fehler_kurzbz + " ("+issueData[fehler_kurzbz]['fehlercode']+")...";
if (issues.length == 0) {
messageStr += "
Keine Issues für " + fehler_kurzbz + "";