diff --git a/js/ds.js b/js/ds.js index 8c88c74..d5e69de 100644 --- a/js/ds.js +++ b/js/ds.js @@ -362,17 +362,18 @@ DataSpace.getImagesSrc = function (resource) } /** * @param {string} cssClass + * @param {int} maxWords * * @returns {void} */ -DataSpace.attachReadMore = function (cssClass) +DataSpace.attachReadMore = function (cssClass, maxWords = 100) { const elements = document.querySelectorAll(`.${cssClass}`); for (const element of elements) { let contentElement = element.nextElementSibling; let text = contentElement.textContent; - const isLongText = text.split(' ').length > 100; + const isLongText = text.split(' ').length > maxWords; if (isLongText) { const more = document.createElement('span'); @@ -382,7 +383,7 @@ DataSpace.attachReadMore = function (cssClass) this.parentElement.textContent = text; } - contentElement.textContent = text.split(' ').splice(0, 100).reduce( + contentElement.textContent = text.split(' ').splice(0, maxWords).reduce( (p, v) => `${p} ${v}` ); @@ -392,7 +393,6 @@ DataSpace.attachReadMore = function (cssClass) } } } - /** * @todo The order of elements in the tiles array * in arches-json is the same as that of diff --git a/js/views/report.js b/js/views/report.js index 7efe247..45761d2 100644 --- a/js/views/report.js +++ b/js/views/report.js @@ -21,5 +21,5 @@ document.addEventListener('readystatechange', async () => { // Create report HTML DataSpace.renderReport(report, images); - DataSpace.attachReadMore('read-more'); + DataSpace.attachReadMore('read-more', 80); });