Skip to content

Commit

Permalink
Merge pull request #1763 from openzim/treatment-oga-links
Browse files Browse the repository at this point in the history
treatment links with *.oga file
  • Loading branch information
kelson42 authored Feb 1, 2023
2 parents 41d955a + 84f68f1 commit cb81441
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 1 deletion.
4 changes: 3 additions & 1 deletion src/util/rewriteUrls.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ function rewriteUrlNoArticleCheck(articleId: string, mw: MediaWiki, dump: Dump,
lat = parts[4]
lon = parts[5]
} else if (rel === 'mw:MediaLink') {
const shouldScrape = (href.includes('.pdf') && !dump.nopdf) || (href.includes('.ogg') && !dump.nopic && !dump.novid && !dump.nodet)
const shouldScrape = (href.includes('.pdf') && !dump.nopdf) || ((href.includes('.ogg') || href.includes('.oga')) && !dump.nopic && !dump.novid && !dump.nodet)

if (shouldScrape) {
try {
Expand All @@ -110,6 +110,8 @@ function rewriteUrlNoArticleCheck(articleId: string, mw: MediaWiki, dump: Dump,
logger.warn('Error parsing url:', err)
DU.deleteNode(linkNode)
}
} else if (href.includes('.ogg') || href.includes('.oga')) {
linkNode.outerHTML = linkNode.innerHTML
}
return null
}
Expand Down
9 changes: 9 additions & 0 deletions test/unit/urlRewriting.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,9 @@ describe('Styles', () => {
const $resourceLink = makeLink($doc, '//upload.wikimedia.org/wikipedia/commons/c/c6/De-Z%C3%BCrich.ogg', '', 'De-Z%C3%BCrich.ogg', 'Zurich', {
resource: './Media:De-Zürich.ogg',
})
const $ogaResourceLink = makeLink($doc, '//upload.wikimedia.org/wikipedia/commons/7/7e/Fr-Laissez-faire.oga', '', 'Fr-Laissez-faire.oga', 'listen', {
resource: './Media:Fr-Laissez-faire.oga',
})

await rewriteUrl(complexParentArticleId, redisStore, mw, dump, $geo)
// Geo is still a link
Expand Down Expand Up @@ -122,6 +125,12 @@ describe('Styles', () => {
expect($resourceLink.nodeName).toEqual('A')
// resourceLink has been re-written
expect($resourceLink.getAttribute('href')).toEqual('../../I/De-Z%C3%BCrich.ogg')

await rewriteUrl(complexParentArticleId, redisStore, mw, dump, $ogaResourceLink)
// ogaResourceLink is still a link
expect($ogaResourceLink.nodeName).toEqual('A')
// ogaResourceLink has been re-written
expect($ogaResourceLink.getAttribute('href')).toEqual('../../I/Fr-Laissez-faire.oga')
})

test('e2e url rewriting', async () => {
Expand Down

0 comments on commit cb81441

Please sign in to comment.