@@ -10159,6 +10159,10 @@ public static function exportCourseSessionReport(int $sessionId, string $courseC
10159
10159
}
10160
10160
10161
10161
$ config = api_get_configuration_value ('session_course_excel_export ' );
10162
+ if (empty ($ config )) {
10163
+ die ('Configuration not set. ' );
10164
+ }
10165
+
10162
10166
$ sessionFields = $ config ['session_fields ' ] ?? [];
10163
10167
$ userFieldsBefore = $ config ['user_fields_before ' ] ?? [];
10164
10168
$ userFieldsAfter = $ config ['user_fields_after ' ] ?? [];
@@ -10168,14 +10172,8 @@ public static function exportCourseSessionReport(int $sessionId, string $courseC
10168
10172
$ header1 [] = get_lang ('StartDate ' );
10169
10173
$ header1 [] = get_lang ('EndDate ' );
10170
10174
10171
- $ extraField = new ExtraFieldModel ('session ' );
10172
- $ extraDefs = $ extraField ->get_all ();
10173
- $ extraDefsByVariable = array_column ($ extraDefs , null , 'variable ' );
10174
-
10175
- foreach ($ sessionFields as $ field ) {
10176
- if (isset ($ extraDefsByVariable [$ field ])) {
10177
- $ header1 [] = $ extraDefsByVariable [$ field ]['display_text ' ] ?? $ field ;
10178
- }
10175
+ foreach ($ sessionFields as $ entry ) {
10176
+ $ header1 [] = $ entry ['header ' ] ?? '' ;
10179
10177
}
10180
10178
10181
10179
// 2. SESSION DATA
@@ -10187,24 +10185,27 @@ public static function exportCourseSessionReport(int $sessionId, string $courseC
10187
10185
$ sessionExtra = $ extraValuesObj ->getAllValuesByItem ($ sessionId );
10188
10186
$ sessionExtraMap = array_column ($ sessionExtra , 'value ' , 'variable ' );
10189
10187
10190
- foreach ($ sessionFields as $ field ) {
10191
- $ value = $ sessionExtraMap [$ field ] ?? '' ;
10188
+ foreach ($ sessionFields as $ entry ) {
10189
+ if (!empty ($ entry ['field ' ])) {
10190
+ $ value = $ sessionExtraMap [$ entry ['field ' ]] ?? '' ;
10191
+ } else {
10192
+ $ value = '' ;
10193
+ }
10192
10194
$ row2 [] = $ value ;
10193
10195
}
10194
10196
10195
10197
// 3. USER HEADER
10196
- $ header3 = ['' ];
10197
- $ extraFieldUser = new ExtraFieldModel ('user ' );
10198
- $ extraDefsUser = $ extraFieldUser ->get_all ();
10199
- $ extraDefsByVariableUser = array_column ($ extraDefsUser , null , 'variable ' );
10198
+ $ header3 = ['' ];
10200
10199
10201
- foreach ($ userFieldsBefore as $ field ) {
10202
- $ header3 [] = $ extraDefsByVariableUser [ $ field ][ ' display_text ' ] ?? $ field ;
10200
+ foreach ($ userFieldsBefore as $ entry ) {
10201
+ $ header3 [] = $ entry [ ' header ' ] ?? '' ;
10203
10202
}
10203
+
10204
10204
$ header3 [] = get_lang ('FirstName ' );
10205
10205
$ header3 [] = get_lang ('LastName ' );
10206
- foreach ($ userFieldsAfter as $ field ) {
10207
- $ header3 [] = $ extraDefsByVariableUser [$ field ]['display_text ' ] ?? $ field ;
10206
+
10207
+ foreach ($ userFieldsAfter as $ entry ) {
10208
+ $ header3 [] = $ entry ['header ' ] ?? '' ;
10208
10209
}
10209
10210
10210
10211
// 4. USERS WITH CERTIFICATE
@@ -10239,16 +10240,24 @@ public static function exportCourseSessionReport(int $sessionId, string $courseC
10239
10240
$ userExtra = $ userExtraObj ->getAllValuesByItem ($ userId );
10240
10241
$ userExtraMap = array_column ($ userExtra , 'value ' , 'variable ' );
10241
10242
10242
- foreach ($ userFieldsBefore as $ field ) {
10243
- $ value = $ userExtraMap [$ field ] ?? '' ;
10243
+ foreach ($ userFieldsBefore as $ entry ) {
10244
+ if (!empty ($ entry ['field ' ])) {
10245
+ $ value = $ userExtraMap [$ entry ['field ' ]] ?? '' ;
10246
+ } else {
10247
+ $ value = '' ;
10248
+ }
10244
10249
$ row [] = $ value ;
10245
10250
}
10246
10251
10247
10252
$ row [] = $ userInfo ['firstname ' ];
10248
10253
$ row [] = $ userInfo ['lastname ' ];
10249
10254
10250
- foreach ($ userFieldsAfter as $ field ) {
10251
- $ value = $ userExtraMap [$ field ] ?? '' ;
10255
+ foreach ($ userFieldsAfter as $ entry ) {
10256
+ if (!empty ($ entry ['field ' ])) {
10257
+ $ value = $ userExtraMap [$ entry ['field ' ]] ?? '' ;
10258
+ } else {
10259
+ $ value = '' ;
10260
+ }
10252
10261
$ row [] = $ value ;
10253
10262
}
10254
10263
0 commit comments