39 lines
1.3 KiB
JavaScript
39 lines
1.3 KiB
JavaScript
const fs = require('fs');
|
|
const cheerio = require('cheerio');
|
|
|
|
const file = 'sisvietnamvn/src/main/resources/templates/flex-finish.html';
|
|
const html = fs.readFileSync(file, 'utf8');
|
|
const $ = cheerio.load(html, { decodeEntities: false }, false);
|
|
|
|
$('img').each((i, el) => {
|
|
$(el).removeAttr('srcset');
|
|
$(el).removeAttr('data-srcset');
|
|
$(el).removeAttr('data-src');
|
|
|
|
let src = $(el).attr('src');
|
|
if (src) {
|
|
// Extract the filename from the src
|
|
let filename = src.split('/').pop().split('?')[0];
|
|
|
|
// Handle the base64 gif fallback
|
|
if (src.includes('data:image/gif')) {
|
|
// we have to find the filename from srcset or data-srcset
|
|
let altSrcset = $(el).attr('srcset') || $(el).attr('data-srcset');
|
|
if (altSrcset) {
|
|
let firstUrl = altSrcset.split(' ')[0];
|
|
filename = firstUrl.split('/').pop().split('?')[0];
|
|
} else {
|
|
// Hardcode for UMass Flex Header 1.png because it's lazyloaded
|
|
filename = 'UMass Flex Header 1.png';
|
|
}
|
|
}
|
|
|
|
filename = decodeURIComponent(filename);
|
|
$(el).attr('th:src', `@{/images/umass/${filename}}`);
|
|
$(el).removeAttr('src');
|
|
}
|
|
});
|
|
|
|
fs.writeFileSync(file, $.html());
|
|
console.log('Done fixing images!');
|