@@ -62,7 +62,7 @@ async function getFolderMetadata(data, xmlDoc, zip, procssedFiles) {
62
62
} ;
63
63
if ( orgNode . nodeType === 1 ) {
64
64
const title = orgNode . getElementsByTagName ( 'title' ) ;
65
- org . title = title [ 0 ] . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
65
+ org . title = title [ 0 ] . textContent . trim ( ) ;
66
66
const files = orgNode . getElementsByTagName ( 'item' ) ;
67
67
const immediateChildNodes = [ ] ;
68
68
const childNodes = Object . values ( orgNode . children ) ;
@@ -74,7 +74,7 @@ async function getFolderMetadata(data, xmlDoc, zip, procssedFiles) {
74
74
await Promise . all (
75
75
immediateChildNodes . map ( async ( fileNode , k ) => {
76
76
const file = { } ;
77
- file . title = title [ 1 + k ] . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
77
+ file . title = title [ 1 + k ] . textContent . trim ( ) ;
78
78
file . identifierref = fileNode . getAttribute ( 'identifierref' ) ;
79
79
file . resourceHref = xmlDoc
80
80
. querySelectorAll ( `[identifier=${ file . identifierref } ]` ) [ 0 ]
@@ -149,41 +149,37 @@ async function getManifestMetadata(manifestFile, zip, procssedFiles) {
149
149
if ( xmlDoc . getElementsByTagName ( 'lomes:title' ) . length ) {
150
150
metadata . title = xmlDoc
151
151
. getElementsByTagName ( 'lomes:title' ) [ 0 ]
152
- . children [ 0 ] . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
152
+ . children [ 0 ] . textContent . trim ( ) ;
153
153
}
154
154
if (
155
155
xmlDoc . getElementsByTagName ( 'lomes:idiom' ) . length &&
156
- xmlDoc
157
- . getElementsByTagName ( 'lomes:idiom' ) [ 0 ]
158
- . textContent . replace ( / { 2 } | \r \n | \n | \r / gm, '' ) !== 'und'
156
+ LanguagesMap . has ( xmlDoc . getElementsByTagName ( 'lomes:idiom' ) [ 0 ] . textContent . trim ( ) ) &&
157
+ xmlDoc . getElementsByTagName ( 'lomes:idiom' ) [ 0 ] . textContent . trim ( ) !== 'und'
159
158
) {
160
159
metadata . language = xmlDoc
161
160
. getElementsByTagName ( 'lomes:idiom' ) [ 0 ]
162
- . children [ 0 ] . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
161
+ . children [ 0 ] . textContent . trim ( ) ;
163
162
}
164
163
if ( xmlDoc . getElementsByTagName ( 'lomes:description' ) . length ) {
165
164
metadata . description = xmlDoc
166
165
. getElementsByTagName ( 'lomes:description' ) [ 0 ]
167
- . children [ 0 ] . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
166
+ . children [ 0 ] . textContent . trim ( ) ;
168
167
}
169
168
} else {
170
169
if ( xmlDoc . getElementsByTagName ( 'imsmd:title' ) . length ) {
171
- metadata . title = xmlDoc
172
- . getElementsByTagName ( 'imsmd:title' ) [ 0 ]
173
- . textContent . replace ( / { 2 } | \r \n | \n | \r / gm, '' ) ;
170
+ metadata . title = xmlDoc . getElementsByTagName ( 'imsmd:title' ) [ 0 ] . textContent . trim ( ) ;
174
171
}
175
172
if (
176
173
xmlDoc . getElementsByTagName ( 'imsmd:language' ) . length &&
177
- xmlDoc . getElementsByTagName ( 'imsmd:language' ) [ 0 ] . textContent !== 'und'
174
+ LanguagesMap . has ( xmlDoc . getElementsByTagName ( 'imsmd:language' ) [ 0 ] . textContent . trim ( ) ) &&
175
+ xmlDoc . getElementsByTagName ( 'imsmd:language' ) [ 0 ] . textContent . trim ( ) !== 'und'
178
176
) {
179
- metadata . language = xmlDoc
180
- . getElementsByTagName ( 'imsmd:language' ) [ 0 ]
181
- . textContent . replace ( / { 2 } | \r \n | \n | \r / gm, '' ) ;
177
+ metadata . language = xmlDoc . getElementsByTagName ( 'imsmd:language' ) [ 0 ] . textContent . trim ( ) ;
182
178
}
183
179
if ( xmlDoc . getElementsByTagName ( 'imsmd:description' ) . length ) {
184
180
metadata . description = xmlDoc
185
181
. getElementsByTagName ( 'imsmd:description' ) [ 0 ]
186
- . textContent . replace ( / { 2 } | \r \n | \n | \r / gm , '' ) ;
182
+ . textContent . trim ( ) ;
187
183
}
188
184
}
189
185
return metadata ;
@@ -204,9 +200,7 @@ export async function extractIMSMetadata(fileInput) {
204
200
}
205
201
} )
206
202
. then ( async manifestFile => {
207
- return await getManifestMetadata ( manifestFile , zip , procssedFiles ) . then ( metadata => {
208
- return metadata ;
209
- } ) ;
203
+ return await getManifestMetadata ( manifestFile , zip , procssedFiles )
210
204
} ) ;
211
205
}
212
206
0 commit comments