From 36239bf7917c3c4411eedee90a08be5918c4938b Mon Sep 17 00:00:00 2001
From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de>
Date: Thu, 2 Nov 2023 10:48:19 +0000
Subject: [PATCH] use persistent datafield order stored in the config, fixes
 #3380

Closes #3380

Merge request studip/studip!2300
---
 lib/extern/modules/ExternModuleTemplateLecturedetails.class.php | 2 +-
 lib/extern/modules/ExternModuleTemplateLectures.class.php       | 2 +-
 lib/extern/modules/ExternModuleTemplatePersBrowse.class.php     | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/extern/modules/ExternModuleTemplateLecturedetails.class.php b/lib/extern/modules/ExternModuleTemplateLecturedetails.class.php
index bef48b1218d..3b7d9ab825a 100644
--- a/lib/extern/modules/ExternModuleTemplateLecturedetails.class.php
+++ b/lib/extern/modules/ExternModuleTemplateLecturedetails.class.php
@@ -401,7 +401,7 @@ class ExternModuleTemplateLecturedetails extends ExternModule {
             $content['LECTUREDETAILS']['STUDIP-DATA'] = $this->getStudipData();
 
             // generic data fields
-            if ($generic_datafields = $this->config->getValue('Main', 'genericdatafields')) {
+            if ($generic_datafields = $this->config->getValue('TemplateLectureData', 'genericdatafields')) {
                 $localEntries = DataFieldEntry::getDataFieldEntries($this->seminar_id, 'sem');
                 $k = 1;
                 foreach ($generic_datafields as $datafield) {
diff --git a/lib/extern/modules/ExternModuleTemplateLectures.class.php b/lib/extern/modules/ExternModuleTemplateLectures.class.php
index dc7ed295ce0..00277ad48fc 100644
--- a/lib/extern/modules/ExternModuleTemplateLectures.class.php
+++ b/lib/extern/modules/ExternModuleTemplateLectures.class.php
@@ -432,7 +432,7 @@ class ExternSemBrowseTemplate extends SemBrowse {
             }
 
             // generic datafields
-            $generic_datafields = $this->module->config->getValue("Main", "genericdatafields");
+            $generic_datafields = $this->module->config->getValue("TemplateGeneric", "genericdatafields");
 
             $content['__GLOBAL__']['LECTURES-COUNT'] = count($sem_data);
             $group_by_name = $this->module->config->getValue("Main", "aliasesgrouping");
diff --git a/lib/extern/modules/ExternModuleTemplatePersBrowse.class.php b/lib/extern/modules/ExternModuleTemplatePersBrowse.class.php
index 0161bd7da9a..9e87647e66f 100644
--- a/lib/extern/modules/ExternModuleTemplatePersBrowse.class.php
+++ b/lib/extern/modules/ExternModuleTemplatePersBrowse.class.php
@@ -348,6 +348,8 @@ class ExternModuleTemplatePersBrowse extends ExternModule {
             $content['PERSONS']['PERSON'][$j]['PERSON-NO'] = $j + 1;
 
             // generic data fields
+            $generic_datafields = $this->config->getValue('TemplateListPersons', 'genericdatafields');
+
             if (is_array($generic_datafields)) {
                 $localEntries = DataFieldEntry::getDataFieldEntries($row['user_id'], 'user');
                 $k = 1;
-- 
GitLab