adding base64 image if the question is an image

This commit is contained in:
mrfry 2022-11-23 21:48:17 +01:00
parent 45dba61fff
commit 49824b8d0c

View file

@ -46,7 +46,7 @@
// : Script header {{{
// ==UserScript==
// @name Moodle/Elearning/KMOOC test help
// @version 2.1.3.10
// @version 2.1.3.11
// @description Online Moodle/Elearning/KMOOC test help
// @author MrFry
// @match https://elearning.uni-obuda.hu/*
@ -260,6 +260,10 @@
if (img.title) {
promises.push({ type: 'txt', val: img.title, node: elem })
} else {
const originalBase64 = img.src.startsWith('data:image/')
? img.src
: null
promises.push(
new Promise((resolve) => {
digestMessage(getBase64Image(img)).then((res) => {
@ -267,6 +271,7 @@
type: 'img',
val: res,
node: img,
base64: originalBase64,
})
})
})
@ -310,7 +315,11 @@
if (element.type === 'img') {
// FIXME: include check needed?
if (!acc.includes(element.val)) {
acc.push({ val: element.val, node: element.node })
acc.push({
val: element.val,
node: element.node,
base64: element.base64,
})
}
}
return acc
@ -713,7 +722,7 @@
...possibleAnswerArray,
])
const data = getDataFromTest(
node,
question,
images,
getLegacyImageID(imageNodes)
)
@ -739,7 +748,7 @@
})
}
function getDataFromTest(_node, hashedImages, legacyImages) {
function getDataFromTest(questions, hashedImages, legacyImages) {
if (hashedImages.length > 0) {
return {
type: 'image',
@ -747,6 +756,11 @@
return x.val
}),
images: legacyImages,
base64: questions
.map((x) => {
return x.base64
})
.filter((x) => !!x),
}
} else {
return {