diff --git a/stable.user.js b/stable.user.js index c4f017d..76e614a 100755 --- a/stable.user.js +++ b/stable.user.js @@ -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 {